Create lists
POST /api/v1/lists: request fields and declared response contract.
POST/api/v1/lists
| Permission | list.manage |
|---|---|
| Workspace scope | required |
| Scope target | workspace |
Request body
| Field | Type | Required | Nullable | Default |
|---|---|---|---|---|
| name | string | required | non-null | — |
| description | string | optional | nullable | null |
| target | unknown | required | non-null | — |
| memberRefs | array | optional | non-null | [] |
| isRanked | boolean | optional | non-null | true |
Response
201
| Field | Type | Required | Nullable | Default |
|---|---|---|---|---|
| data | object | required | non-null | — |
| data.id | string | required | non-null | — |
| data.companyId | string | required | non-null | — |
| data.name | string | required | non-null | — |
| data.description | string | optional | nullable | — |
| data.createdAt | string | optional | nullable | — |
| data.target | unknown | optional | non-null | — |
Declared failures
| LIST_CREATE_FAILED | 500 — not retryable |
|---|
Readback
Read the result back with:
- lists.get
Request example
Schematic only. Replace placeholders with real values and include all required nested fields.
POST /api/v1/lists HTTP/1.1
Authorization: Bearer <token>
x-merulan-workspace-id: <workspace-id>
Content-Type: application/json
{
"name": "<name>",
"target": "<target>"
}