Browse Topics

Taskade Developer Docs

Welcome to the Taskade developer docs. Taskade turns a plain-English description of your business into a real, running app. Taskade Genesis builds the app, and the workspace underneath keeps working as its database, its agent team, and its automation engine. Taskade calls that foundation Workspace DNA: memory, intelligence, and execution. These docs show you how to reach all of it from your own code. The fastest first win is a personal access token and your first API call, which takes about two minutes.

        YOUR CODE / YOUR AGENT / YOUR AI CLIENT
                        │
     ┌──────────────────┼──────────────────┬─────────────────┐
     │                  │                  │                 │
  REST v1           Action v2         MCP servers        Webhooks
  resource-shaped   verb-shaped       tool-calling       events out
  49 paths          61 paths          hosted + local     6 event types
     │                  │                  │                 │
     └──────────────────┴────────┬─────────┴─────────────────┘
                                 │
                        ┌────────▼────────┐
                        │  WORKSPACE DNA  │
                        │                 │
                        │  Memory         │  projects, tasks, media, long-term memory
                        │  Intelligence   │  agents, knowledge, 15+ frontier models
                        │  Execution      │  automations, bundles, published apps
                        └─────────────────┘

The two layers

Think of a Taskade account the way a hosting control panel thinks about a server. There is a root layer, the workspace where members, folders, and billing live. And there is an app layer, the projects, agents, and published Taskade Genesis apps that run inside it. Every API surface below addresses one layer or the other, and most confusion dissolves once you know which one you are holding.

Workspace layer (root) App layer (per app)
What lives here Workspaces, folders (subspaces), members, tokens Projects, tasks, agents, media, published apps
Human entry point taskade.com/create your app's own URL, or Preview App while building
REST API GET /workspaces, GET /workspaces/{id}/folders GET /projects/{id}/tasks, POST /projects
Action API listSpaces, listFolders createTask, promptAgent, exportBundle
Portable unit a whole workspace bundle a single app bundle (Bundles)

From zero to programmatic

The whole journey, human or agent:

  1. Sign up — a free account can use the entire public API.
  2. Describe your app — Taskade Genesis builds it; Preview App shows it running against your real workspace data while you iterate.
  3. Publish — the app gets a live URL; the workspace underneath keeps being the database, the agent roster, and the automation engine.
  4. Create a token — then everything the UI just did is addressable from code, an MCP client, or a webhook pointing back at you.

Pick a surface

You want to… Use Shape
Read and write tasks, projects, assignees, dates, custom fields REST API GET /projects/{id}/tasks — resource paths, standard verbs
Prompt agents, manage knowledge, import/export bundles, register webhooks Action API POST /promptAgent — one verb per action, built for tool-calling
Let Claude, Cursor or VS Code operate a workspace directly MCP Streamable HTTP, OAuth 2.0 + PKCE
Receive events when work changes Webhooks Signed POST to your endpoint
Ship a whole app as one portable artifact Bundles & App Kits Export/import a workspace or Genesis app

Authenticate once

Every surface takes the same header. Create a personal access token at taskade.com/settings/api. The token is shown once, never expires, and you can hold five at a time.

Bash
curl "https://www.taskade.com/api/v1/me/projects" \
  -H "Authorization: Bearer tskdp_your_token_here"


The public API is not plan-gated. A Free account can mint a token and call every v1 and v2 endpoint. Two things on this surface do depend on plan: outbound webhooks need Pro or above, and MCP needs any paid plan.

How a request travels

Rate limits at a glance

Requests are rate limited to keep the service fast for everyone. Exact ceilings are not published and can change without notice, so read your budget from the response instead: every response carries x-rate-limit-limit, x-rate-limit-remaining, and x-rate-limit-reset (seconds until the window reopens). If you receive a 429, wait out x-rate-limit-reset and retry with exponential backoff. There is no Retry-After header, and retrying before the window reopens will fail again.

Two habits keep most integrations well clear of 429: batch writes where an operation accepts arrays, and prefer webhooks over tight polling loops.

Live endpoints

These pages are the crawlable reference; the running service also speaks for itself. The Swagger consoles are interactive try-it-now UIs generated by the same server that validates every request, and the raw specs behind them are what regenerate this reference.

Endpoint What it is
api/documentation/v1 Interactive Swagger console for the REST API
api/documentation/v2 Interactive Swagger console for the Action API
api/documentation/v1/json · v2/json The machine-readable OpenAPI documents
https://www.taskade.com/mcp The hosted MCP endpoint — paste it into Claude, Cursor, or VS Code as a remote MCP server and OAuth discovery does the rest. (A bare browser GET returns 401 by design: it speaks MCP, not HTML — see MCP.)