GET /api/v1/member-tasks/{memberTaskId}/deliverables
Returns every deliverable of a task, archived ones included: archiving erases
nothing, and this list shows it. At most one of them is active.
| Role in the organization | This endpoint |
|---|---|
OWNER | Allowed |
ADMIN | Allowed |
MEMBER | Allowed — reading is open to every member of the school |
| Requirement | Rule for this endpoint |
|---|---|
| Business role | None |
| Resource scope | Task of the school attached to the API key |
| Participation | None |
| Resource state | None |
| Parameter | Type | Required | Description |
|---|---|---|---|
memberTaskId | UUID | yes | Task visible from the key's school |
| Header | Required | Description |
|---|---|---|
x-api-key | yes | API key created for this school |
X-Correlation-Id | no | Caller correlation id, returned or generated |
curl "$COHORTE_API_BASE_URL/api/v1/member-tasks/$TASK_ID/deliverables" \
-H "x-api-key: $COHORTE_API_KEY"200 OK — the list, possibly empty. A task that is unknown or belongs to
another school also returns an empty list.400 Bad Request — memberTaskId is not a UUID.401 Unauthorized — the key is missing, invalid, or no longer attached to a member.403 Forbidden — the bearer is not a member of this school.Each element of data[] has the fields of
Get a deliverable.
{
"success": true,
"data": [
{
"id": "e5b2a7c1-0000-4000-8000-000000000000",
"memberTaskId": "c3f1d2a4-0000-4000-8000-000000000000",
"title": "Landing page URL",
"expectations": null,
"criteria": null,
"acceptedFormats": [{"kind": "link", "mimeTypes": []}],
"expectedReviewerRole": "coach",
"status": "active",
"archivedAt": null,
"archiveReason": null,
"createdAt": "2026-09-24T08:00:00.000Z",
"updatedAt": "2026-09-24T08:00:00.000Z"
}
],
"correlationId": "b0e7f1c2-1d3a-4a52-9f77-52a4b7c3d1e0"
}