المهام

يمثل كائن المهمة مجموعة مهام ويحتوي على الأفكار.

كائن المهمة

{
  "id": "b3f0255d-6dc9-4c4e-b932-7186d7268a66",
  "createdAt": "2025-03-07T13:22:11.878Z",
  "updatedAt": "2025-03-07T13:22:11.957Z",
  "title": "My mission",
  "question": "How might we improve the coffee?",
  "details": null,
  "friendlyId": 1,
  "archived": false,
  "canEdit": true,
  "canCreate": true,
  "stats": {
    "ideas": {
      "total": 1,
      "days7": 1
    }
  },
  "defaultPhase": {
    "name": "Comment",
    "kind": "GROW"
  },
  "section": {
    "title": "General"
  },
  "cover": {
    "url": {
      "thumbnail": "https://uploads.staging.ideanote.dev/static/gradients/1024x256/gradient869.jpg"
    }
  }
}

الحقول

الحقل

النوع

الوصف

المعرّف

string

المعرّف الفريد للمهمة.

createdAt

ISODate

تاريخ إنشاء المهمة.

updatedAt

ISODate

تاريخ آخر تحديث للمهمة.

العنوان

string

عنوان المهمة

السؤال

string

سؤال المهمة

التفاصيل

string

تفاصيل المهمة

friendlyId

string

المعرّف المقروء بشريًا للمهمة

مؤرشف

boolean

يشير إلى ما إذا كانت هذه المهمة مؤرشفة

canEdit

boolean

يشير إلى ما إذا كان بإمكان المستخدم المخوّل تعديل هذه المهمة

canCreate

boolean

يشير إلى ما إذا كان بإمكان المستخدم المخوّل إنشاء أفكار في المهمة

stats.ideas.total

number

إجمالي عدد الأفكار في المهمة

stats.ideas.days7

number

إجمالي عدد الأفكار التي أُنشئت ضمن المهمة خلال آخر 7 يومًا

defaultPhase

المرحلة

المرحلة الافتراضية للأفكار في المهمة

القسم

Section

القسم الذي وُضعت فيه المهمة

الغلاف

الوسائط

صورة غلاف المهمة

سرد المهام

curl -X GET "https://api.ideanote.io/v1/missions?fields=id,title,question,details,stats.ideas.total,cover.url.thumbnail" \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer <API Token>"
const result = await fetch("https://api.ideanote.io/v1/missions?fields=id,title,question,details,stats.ideas.total,cover.url.thumbnail", {
  method: "GET",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer <API Token>",
  }
});

const missions = await result.json();
يعرض الأمر أعلاه بيانات JSON منظمة على النحو التالي:
[
  {
    "details": null,
    "stats": {
      "ideas": {
        "total": 1
      }
    },
    "cover": {
      "url": {
        "thumbnail": "https://uploads.ideanote.dev/static/gradients/1024x256/gradient869.jpg"
      }
    }
  },
  {
    "details": null,
    "stats": {
      "ideas": {
        "total": 2
      }
    },
    "cover": {
      "url": {
        "thumbnail": "https://uploads.ideanote.dev/static/gradients/1024x256/gradient673.jpg"
      }
    }
  }
]

تعرض نقطة النهاية هذه المهام.

HTTP طلب

GET /v1/missions

الحصول على مهمة

curl -X GET "https://api.ideanote.io/v1/missions/b3f0255d-6dc9-4c4e-b932-7186d7268a66?fields=id,title,question,details,stats.ideas.total,cover.url.thumbnail" \
     -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?fields=id,title,question,details,stats.ideas.total,cover.url.thumbnail", {
  method: "GET",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer <API Token>",
  }
});

const mission = await result.json();
يعرض الأمر أعلاه بيانات JSON منظمة على النحو التالي:
{
  "details": null,
  "stats": {
    "ideas": {
      "total": 1
    }
  },
  "cover": {
    "url": {
      "thumbnail": "https://uploads.ideanote.dev/static/gradients/1024x256/gradient869.jpg"
    }
  }
}

تسترجع نقطة النهاية هذه مهمة محددة.

HTTP طلب

GET /v1/missions/:mission_id

معلمات الاستعلام

المَعلمة

الوصف

mission_id

معرّف المهمة المطلوب استرجاعها

إنشاء مهمة

curl -X POST "https://api.ideanote.io/v1/missions?fields=id,title,question,details,stats.ideas.total,cover.url.thumbnail" \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer <API Token>" \
     -d '{"question":"How do we improve the coffee?"}'
const result = await fetch("https://api.ideanote.io/v1/missions?fields=id,title,question,details,stats.ideas.total,cover.url.thumbnail", {
  method: "POST",
  body: {
    "question": "How do we improve the coffee?"
  },
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer <API Token>",
  }
});

const missions = await result.json();
يعرض الأمر أعلاه بيانات JSON منظمة على النحو التالي:
{
  "title": null,
  "details": null,
  "stats": {
    "ideas": {
      "total": 0
    }
  },
  "cover": null
}

تنشئ نقطة النهاية هذه مهمة جديدة.

HTTP طلب

POST /v1/missions

تحديث مهمة

curl -X PUT "https://api.ideanote.io/v1/missions/b3f0255d-6dc9-4c4e-b932-7186d7268a66?fields=id,title,question,details,stats.ideas.total,cover.url.thumbnail" \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer <API Token>" \
     -d '{"question":"How do we improve the cantina?"}'
const result = await fetch("https://api.ideanote.io/v1/missions/b3f0255d-6dc9-4c4e-b932-7186d7268a66?fields=id,title,question,details,stats.ideas.total,cover.url.thumbnail", {
  method: "PUT",
  body: {
    "question": "How do we improve the cantina?"
  },
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer <API Token>",
  }
});

const mission = await result.json();
يعرض الأمر أعلاه بيانات JSON منظمة على النحو التالي:
{
  "details": null,
  "stats": {
    "ideas": {
      "total": 1
    }
  },
  "cover": {
    "url": {
      "thumbnail": "https://uploads.ideanote.dev/static/gradients/1024x256/gradient869.jpg"
    }
  }
}

تحدّث نقطة النهاية هذه مهمة محددة.

HTTP طلب

PUT /v1/missions/:mission_id

معلمات الاستعلام

المَعلمة

الوصف

mission_id

معرّف المهمة المطلوب تحديثها

حذف المهمة

curl -X DELETE "https://api.ideanote.io/v1/missions/b3f0255d-6dc9-4c4e-b932-7186d7268a66" \
     -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", {
  method: "DELETE",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer <API Token>",
  }
});

تحذف نقطة النهاية هذه مهمة محددة.

HTTP طلب

DELETE /v1/missions/:mission_id

معلمات الاستعلام

المعلمة

الوصف

mission_id

معرّف المهمة المراد حذفها