TaadDocs
Help CenterAPIPolicies

To dos

List to-dos

GET
/v1/todos

The to-dos the key reaches, newest first. With updated_after, oldest change first, for a sync that never misses one.

Authorization

apiKey
AuthorizationBearer <token>

Authorization: Bearer taad_… (or taadtest_… for the sandbox). Never in a URL, never in a web page.

In: header

Query Parameters

limit?integer
Range1 <= value <= 100
Default20
cursor?string
Lengthlength <= 500
recording_id?string
Match^rec_[0-9A-HJKMNP-TV-Z]{26}$
done?string

Value in

  • "true"
  • "false"
due_before?string
Match^\d{4}-\d{2}-\d{2}$
updated_after?string
Match^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}(:\d{2}(\.\d+)?)?(Z|[+-]\d{2}:?\d{2}))?$

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/todos"
{  "object": "list",  "data": [    {      "id": "string",      "object": "todo",      "workspace_id": "string",      "title": "string",      "description": "string",      "due": "string",      "priority": "low",      "done": true,      "completed_at": "string",      "subtasks": [        {          "title": "string",          "done": true        }      ],      "who": "string",      "recording_id": "string",      "created_at": "string",      "updated_at": "string"    }  ],  "has_more": true,  "next_cursor": "string"}

Add a to-do

POST
/v1/todos

Added at the bottom of the list, in the workspace the key reaches. Link it to a recording with recording_id.

Authorization

apiKey
AuthorizationBearer <token>

Authorization: Bearer taad_… (or taadtest_… for the sandbox). Never in a URL, never in a web page.

In: header

Header Parameters

Idempotency-Key?string

Any unique string (a UUID). Sending the same request again with the same key answers the first answer, and a paid call is never charged twice. Kept 24 hours.

Lengthlength <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/todos" \  -H "Content-Type: application/json" \  -d '{    "title": "string"  }'
{  "id": "string",  "object": "todo",  "workspace_id": "string",  "title": "string",  "description": "string",  "due": "string",  "priority": "low",  "done": true,  "completed_at": "string",  "subtasks": [    {      "title": "string",      "done": true    }  ],  "who": "string",  "recording_id": "string",  "created_at": "string",  "updated_at": "string"}

Get a to-do

GET
/v1/todos/{id}

Authorization

apiKey
AuthorizationBearer <token>

Authorization: Bearer taad_… (or taadtest_… for the sandbox). Never in a URL, never in a web page.

In: header

Path Parameters

id*string
Lengthlength <= 64

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/todos/string"
{  "id": "string",  "object": "todo",  "workspace_id": "string",  "title": "string",  "description": "string",  "due": "string",  "priority": "low",  "done": true,  "completed_at": "string",  "subtasks": [    {      "title": "string",      "done": true    }  ],  "who": "string",  "recording_id": "string",  "created_at": "string",  "updated_at": "string"}

Update a to-do

PATCH
/v1/todos/{id}

Only the fields sent change. done: true marks it done now.

Authorization

apiKey
AuthorizationBearer <token>

Authorization: Bearer taad_… (or taadtest_… for the sandbox). Never in a URL, never in a web page.

In: header

Path Parameters

id*string
Lengthlength <= 64

Header Parameters

Idempotency-Key?string

Any unique string (a UUID). Sending the same request again with the same key answers the first answer, and a paid call is never charged twice. Kept 24 hours.

Lengthlength <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/v1/todos/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "string",  "object": "todo",  "workspace_id": "string",  "title": "string",  "description": "string",  "due": "string",  "priority": "low",  "done": true,  "completed_at": "string",  "subtasks": [    {      "title": "string",      "done": true    }  ],  "who": "string",  "recording_id": "string",  "created_at": "string",  "updated_at": "string"}

Delete a to-do

DELETE
/v1/todos/{id}

Authorization

apiKey
AuthorizationBearer <token>

Authorization: Bearer taad_… (or taadtest_… for the sandbox). Never in a URL, never in a web page.

In: header

Path Parameters

id*string
Lengthlength <= 64

Header Parameters

Idempotency-Key?string

Any unique string (a UUID). Sending the same request again with the same key answers the first answer, and a paid call is never charged twice. Kept 24 hours.

Lengthlength <= 255

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X DELETE "https://example.com/v1/todos/string"
{  "id": "string",  "object": "todo",  "deleted": true}