Skip to main content
GET
List Tasks

Authorizations

Authorization
string
header
required

API key from Settings > Developer > REST API

Headers

Moda-Version
enum<string>
default:2026-05-01

Calendar-dated API version pin. New integrations should pin 2026-05-01 to opt into the newest response shapes. For back-compat the server also accepts requests with no header and resolves them to the current default (today: 2026-04-12); that default advances on each sunset date. Any unsupported value returns 400 unsupported_version.

Available options:
2026-04-12,
2026-05-01
Example:

"2026-05-01"

Query Parameters

cursor
string | null

Opaque pagination cursor. Pass the next_cursor from the previous response. Omit on the first request.

limit
integer
default:20

Max tasks per page. Defaults to 20, caps at 100.

Required range: 1 <= x <= 100
canvas_id
string | null

Prefixed cvs_ wire ID (Crockford base32 body) — the canonical, recommended form. For back-compat, a bare UUID string is also accepted in both path parameters and JSON request bodies (older integrations that stored raw UUIDs keep working). Both are permanent, supported inputs.

Pattern: ^cvs_[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$
Example:

"cvs_01HT9WK8N3M2J4A5Z6P7Q8R9TV"

status
string | null

Response

Successful Response

Cursor-paginated tasks list response (ENG-2377).

total is the true count of tasks visible to the key's owner under the current filters; returned / has_more are derived server-side.

data
Task · object[]
required

Tasks in this page, newest first.

next_cursor
string | null

Opaque cursor to pass as ?cursor= on the next request. null means you've reached the end of the collection.

returned
integer
default:0

Number of items in this page (always len(data); derived server-side).

has_more
boolean
default:false

true when more items exist beyond this page — keep requesting with next_cursor until this is false. Never trust len(data) < limit alone.

limit
integer | null

The effective page-size limit this response was computed with.

total
integer | null

True total number of items in the collection (after filters), when the endpoint can count cheaply. null on log/search lanes — use has_more there.