الأفكار
كائن الفكرة
{
"id": "c469e730-043d-4bda-a3a0-5e029f56c027",
"createdAt": "2025-03-07T13:22:12.110Z",
"updatedAt": "2025-03-07T13:22:12.110Z",
"friendlyId": 1,
"aiAssisted": false,
"canEdit": true,
"keywords": [],
"anonymity": null,
"isLiked": false,
"fields": [
{
"kind": "SHORT_TEXT",
"title": "Title",
"value": "Great Idea"
},
{
"kind": "LONG_TEXT",
"title": "Description",
"value": "This is a great idea"
}
],
"stats": {
"likes": {
"total": 0
}
},
"mission": {
"title": "My mission"
},
"owner": {
"email": "test@test.com",
"firstName": "Test"
},
"status": {
"title": "On Track",
"kind": "ACTIVE"
},
"phase": {
"name": "Comment"
}
}الحقول
الحقل | النوع | الوصف |
|---|---|---|
المعرّف |
| المعرّف الفريد للفكرة. |
createdAt |
| تاريخ إنشاء الفكرة. |
updatedAt |
| تاريخ آخر تحديث للفكرة. |
friendlyId |
| معرّف الفكرة المقروء للبشر |
aiAssisted |
| يشير إلى ما إذا كانت هذه الفكرة قد أُنشئت باستخدام الذكاء الاصطناعي |
canEdit |
| يشير إلى ما إذا كان لدى المستخدم إذن تعديل الفكرة |
الكلمات المفتاحية |
| الكلمات المفتاحية المستخرجة من محتوى الفكرة |
إخفاء الهوية |
| درجة إخفاء الهوية في هذه الفكرة |
isLiked |
| يشير إلى ما إذا كان المستخدم المفوّض قد أعجب بهذه الفكرة |
fields.kind |
| نوع حقل الفكرة المعبأ |
fields.title |
| عنوان حقل الفكرة المعبأ |
fields.value |
| قيمة حقل الفكرة المعبأ |
stats.likes.total |
| إجمالي عدد الإعجابات بالفكرة |
المهمة | المهمة التي أُنشئت فيها هذه الفكرة | |
المالك | المستخدم الذي أنشأ هذه الفكرة | |
الحالة | حالة الفكرة | |
المرحلة | المرحلة الحالية للفكرة |
عرض الأفكار
curl -X GET "https://api.ideanote.io/v1/ideas?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API Token>"const result = await fetch("https://api.ideanote.io/v1/ideas?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer <API Token>",
}
});
const ideas = await result.json();يعرض الأمر أعلاه بيانات JSON منظمة على النحو التالي:
[
{
"friendlyId": 2,
"keywords": [],
"status": {},
"phase": {},
"fields": [
{},
{}
],
"owner": {}
},
{
"friendlyId": 1,
"keywords": [],
"status": {},
"phase": {},
"fields": [
{},
{}
],
"owner": {}
}
]تعرض نقطة النهاية هذه الأفكار.
HTTP طلب
GET /v1/ideas
عرض الأفكار في مهمة
curl -X GET "https://api.ideanote.io/v1/missions/b3f0255d-6dc9-4c4e-b932-7186d7268a66/ideas?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API Token>"const result = await fetch("https://api.ideanote.io/v1/missions/b3f0255d-6dc9-4c4e-b932-7186d7268a66/ideas?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer <API Token>",
}
});
const idea = await result.json();يعرض الأمر أعلاه بيانات JSON منظمة على النحو التالي:
[]تعرض نقطة النهاية هذه الأفكار.
HTTP طلب
GET /v1/missions/:mission_id/ideas
معلمات الاستعلام
المعلمة | الوصف |
|---|---|
mission_id | معرّف المهمة التي تريد عرض أفكارها |
الحصول على فكرة
curl -X GET "https://api.ideanote.io/v1/ideas/c469e730-043d-4bda-a3a0-5e029f56c027?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API Token>"const result = await fetch("https://api.ideanote.io/v1/ideas/c469e730-043d-4bda-a3a0-5e029f56c027?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer <API Token>",
}
});
const idea = await result.json();يعرض الأمر أعلاه بيانات JSON منظمة على النحو التالي:
{
"friendlyId": 1,
"keywords": [],
"status": {},
"phase": {},
"fields": [
{},
{}
],
"owner": {}
}تسترجع نقطة النهاية هذه فكرة محددة.
HTTP طلب
GET /v1/ideas/:idea_id
معلمات الاستعلام
المعلمة | الوصف |
|---|---|
idea_id | معرّف الفكرة المراد استرجاعها |
إنشاء فكرة
curl -X POST "https://api.ideanote.io/v1/ideas?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API Token>" \
-d '{"mission":"b3f0255d-6dc9-4c4e-b932-7186d7268a66","Title":"My idea","Description":"This is my idea","Days to Implement":28}'const result = await fetch("https://api.ideanote.io/v1/ideas?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}", {
method: "POST",
body: {
"mission": "b3f0255d-6dc9-4c4e-b932-7186d7268a66",
"Title": "My idea",
"Description": "This is my idea",
"Days to Implement": 28
},
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer <API Token>",
}
});
const ideas = await result.json();يعرض الأمر أعلاه بيانات JSON منظمة على النحو التالي:
{
"friendlyId": 3,
"keywords": [],
"status": {},
"phase": {},
"fields": [
{},
{},
{
"value": 28
}
],
"owner": {}
}تنشئ نقطة النهاية هذه فكرة جديدة.
HTTP طلب
POST /v1/ideas
تحديث الفكرة
curl -X PUT "https://api.ideanote.io/v1/ideas/c469e730-043d-4bda-a3a0-5e029f56c027?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API Token>" \
-d '{"status":"c52d8af2-2727-4c76-8a8f-1814e488324e"}'const result = await fetch("https://api.ideanote.io/v1/ideas/c469e730-043d-4bda-a3a0-5e029f56c027?fields=id,friendlyId,keywords,status.title,phase.name,fields.{kind,title,value},owner.{firstName}", {
method: "PUT",
body: {
"status": "c52d8af2-2727-4c76-8a8f-1814e488324e"
},
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer <API Token>",
}
});
const idea = await result.json();يعيد الأمر أعلاه بيانات JSON منظّمة على النحو التالي:
{
"friendlyId": 1,
"keywords": [
null,
null,
null,
null
],
"status": {},
"phase": {},
"fields": [
{},
{}
],
"owner": {}
}تُحدّث نقطة النهاية هذه فكرة محددة.
HTTP طلب
PUT /v1/ideas/:idea_id
معلمات الاستعلام
المعلمة | الوصف |
|---|---|
idea_id | معرّف الفكرة المراد تحديثها |
حذف الفكرة
curl -X DELETE "https://api.ideanote.io/v1/idea/c469e730-043d-4bda-a3a0-5e029f56c027" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API Token>"const result = await fetch("https://api.ideanote.io/v1/idea/c469e730-043d-4bda-a3a0-5e029f56c027", {
method: "DELETE",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer <API Token>",
}
});
تحذف نقطة النهاية هذه فكرة محددة.
HTTP طلب
DELETE /v1/idea/:idea_id
مَعلمات الاستعلام
المعلمة | الوصف |
|---|---|
idea_id | معرّف الفكرة المراد حذفها |