Missions
L’objet mission représente une collecte de missions et contient des idées.
L’objet mission
{
"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"
}
}
}Champs
Champ | Type | Description |
|---|---|---|
identifiant |
| L’identifiant unique de la mission. |
createdAt |
| La date de création de la mission. |
updatedAt |
| La date de la dernière mise à jour de la mission. |
titre |
| Le titre de la mission |
question |
| La question de la mission |
détails |
| Les détails de la mission |
friendlyId |
| L’identifiant lisible de la mission |
archivée |
| Indique si cette mission est archivée |
canEdit |
| Indique si l’utilisateur autorisé peut modifier cette mission |
canCreate |
| Indique si l’utilisateur autorisé peut créer des idées dans la mission |
stats.ideas.total |
| Le nombre total d’idées dans la mission |
stats.ideas.days7 |
| Le nombre total d’idées créées dans la mission au cours des 7 derniers jours |
defaultPhase | La phase par défaut des idées dans la mission | |
section |
| La section dans laquelle la mission a été placée |
couverture | L’image de couverture de la mission |
Lister les missions
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();La commande ci-dessus renvoie un JSON structuré comme suit :
[
{
"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"
}
}
}
]Ce point de terminaison répertorie les missions.
Requête HTTP
GET /v1/missions
Obtenir une mission
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();La commande ci-dessus renvoie un JSON structuré comme suit :
{
"details": null,
"stats": {
"ideas": {
"total": 1
}
},
"cover": {
"url": {
"thumbnail": "https://uploads.ideanote.dev/static/gradients/1024x256/gradient869.jpg"
}
}
}Ce point de terminaison récupère une mission spécifique.
Requête HTTP
GET /v1/missions/:mission_id
Paramètres de requête
Paramètre | Description |
|---|---|
mission_id | L’ID de la mission à récupérer |
Créer une mission
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();La commande ci-dessus renvoie un JSON structuré comme suit :
{
"title": null,
"details": null,
"stats": {
"ideas": {
"total": 0
}
},
"cover": null
}Ce point de terminaison crée une nouvelle mission.
Requête HTTP
POST /v1/missions
Mettre à jour une mission
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();La commande ci-dessus renvoie un JSON structuré comme suit :
{
"details": null,
"stats": {
"ideas": {
"total": 1
}
},
"cover": {
"url": {
"thumbnail": "https://uploads.ideanote.dev/static/gradients/1024x256/gradient869.jpg"
}
}
}Ce point de terminaison met à jour une mission spécifique.
Requête HTTP
PUT /v1/missions/:mission_id
Paramètres de requête
Paramètre | Description |
|---|---|
mission_id | L’ID de la mission à mettre à jour |
Supprimer la mission
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>",
}
});
Ce point de terminaison supprime une mission spécifique.
Requête HTTP
DELETE /v1/missions/:mission_id
Paramètres de requête
Paramètre | Description |
|---|---|
mission_id | L’ID de la mission à supprimer |