Getting Started

Developer Platform

8 min readStart hereView as Markdown

Use Taskade APIs to integrate your app. You can also build automations or connect AI tools.

Page type: Concept. Read it to learn what this is and when to use it.

Many teams first build visually with Taskade Genesis. They then extend the app with the API.

Before you start

  • A Taskade account with a verified email address. Taskade does not create a token for an unverified account.
  • curl in a terminal, or any HTTP client.
  • Basic Taskade concepts: workspaces, projects, and tasks. If you are new to Taskade, start with Learn Taskade.

Integration surface at a glance

Choose a surface

I want to... Use
Write tasks, manage assignees/dates/fields (full CRUD) REST API v1. The Action API v2 writes the same data. It has no call that reads one task, or its assignees, date, note, or field value.
Prompt agents, register signed webhooks Action API v2
Manage agents, export/import bundles Either version
Hit endpoints from any language REST API v1 + Action API v2
Expose Taskade projects, tasks, and agents to Claude Desktop, Cursor, or other MCP clients Hosted Taskade MCP or Workspace MCP
Call another MCP server's tools from an automation MCP Client connector
Edit Taskade Genesis app source code from your IDE Hosted MCP (Taskade Genesis apps)
Receive real-time events in your app Webhooks
Add a public AI agent to your website Agent Embeds
Understand long-term memory Long-Term Memory
Build agents that run without a prompt Autonomous Agents
Build automations without code Automations Engine
Browse community apps and templates taskade.com/apps

Get a token

Use a personal access token for scripts, both APIs, the local MCP server, and hosted MCP callers that set their own headers. Interactive clients can connect to hosted MCP with OAuth 2.0.

  1. Go to taskade.com/settings/api.
  2. Go to Personal access tokens and click Create token.
  3. Give the token a descriptive name.
  4. Copy the token. Taskade does not show it again.
  5. Save the token in your terminal:
Bash
export TASKADE_TOKEN="tskdp_your_token_here"


Treat your API token like a password. Never commit it to version control or share it publicly.

Base URLs

Taskade ships two public HTTP APIs. Both APIs use the same token:

API Base URL Style Use it for
REST API v1 https://www.taskade.com/api/v1 RESTful (GET/POST/PUT/DELETE) Full task CRUD, assignees, dates, notes, fields
Action API v2 https://www.taskade.com/api/v2 Action / RPC (POST /{operation}), with REST-style exceptions for media, bundle downloads, and webhook registration Prompting agents, agent lifecycle, bundles, signed webhooks, task CRUD


Live OpenAPI specs (source of truth) come from the running API:

The /docs/rest/* and /docs/actions/* catalogs come from committed OpenAPI snapshots.

The Getting Started, Guides, and MCP pages contain hand-written examples and patterns.

For an exact field or status code, use the generated catalog and its source spec.

Make your first call

Each API lists the projects that your account can open. Send the same token to both.

Bash
# REST API v1
curl -s https://www.taskade.com/api/v1/me/projects \
  -H "Authorization: Bearer $TASKADE_TOKEN"

# Action API v2: every operation is a POST with a JSON body
curl -s -X POST https://www.taskade.com/api/v2/listMyProjects \
  -H "Authorization: Bearer $TASKADE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'

Both calls return ok: true and an items array. Each item carries the project id and name:

Json
{
  "ok": true,
  "items": [
    { "id": "Pj8sK2nV4wQx6ZbE", "name": "API quickstart" }
  ]
}

The v1 item can also carry icon and completed.

Errors

Both APIs return the same JSON error envelope. The HTTP status matches the code. For example, POST /api/v2/webhooks on a Free plan returns 402:

Json
{
  "ok": false,
  "message": "Webhooks require a Pro plan or higher.",
  "code": "PAYMENT_REQUIRED",
  "statusMessage": "Payment Required"
}

Branch on ok and code. Do not parse message.

Some PAYMENT_REQUIRED errors also carry a featureId field. It names the plan entitlement that the request needs. For example, a bundle export on a plan without export returns featureId: "space.bundle.export".

What you see Cause Fix
"code": "UNAUTHORIZED" with "message": "Unauthorized" The token is missing, wrong, or revoked Send Authorization: Bearer $TASKADE_TOKEN. Make sure that the variable is set in the same terminal.
"code": "FST_ERR_VALIDATION" The request body or a parameter does not match the schema Read message. It names each field that failed, then the reason.
"code": "PAYMENT_REQUIRED" The plan does not include this operation Upgrade the plan, or read featureId to see which entitlement is missing.
"code": "FORBIDDEN" Your account cannot do this in the workspace Use an account with the correct role in that workspace.
"code": "NOT_FOUND" The ID is wrong, or your account cannot see the item Check the ID and your workspace access.
"code": "TOO_MANY_REQUESTS" You hit a rate limit Wait for the number of seconds in the Retry-After header, then send the request again.

Developer resources

Resource Description
REST Endpoint Catalog Generated from the committed v1 OpenAPI spec - exact methods, parameters, and response schemas
Actions Endpoint Catalog Generated from the committed v2 OpenAPI spec - exact operation bodies and response schemas
REST API Guide Hand-written REST concepts, examples, and usage patterns
Action API Guide Hand-written action/RPC concepts, examples, and usage patterns
Authentication Guide Personal access tokens and OAuth 2.0 (PKCE), including both hosted MCP options
Workspace MCP Run @taskade/mcp-server to connect Claude Desktop, Cursor, and Claude Code (source)
Workspace MCP - Advanced Multi-client setup, troubleshooting, security
Hosted Taskade MCP Connect to https://www.taskade.com/mcp with OAuth or a Personal Access Token. Create and manage projects, edit tasks, manage and prompt agents, and edit Taskade Genesis app source
MCP Client connector Outbound MCP through an automation. Point the connector at a remote MCP server. Agents do not call MCP servers directly (which MCP?)
Integration Kit (GitHub) Open-source Zapier and n8n actions & triggers built on the public API - contribute or self-host
Webhooks Trigger automations from external events and call any API
Agent Embeds Add a public AI agent with an iframe or configurable widget
Bundles & App Kits Import or export full Taskade Genesis apps as portable .tsk bundles
Long-Term Memory Memory-as-Projects architecture - editable, queryable, API-addressable
Autonomous Agents Automations, orchestration, cross-agent invocation patterns
TypeScript SDK (Preview) Generated client for v2. It is not yet on public npm, so use the REST API
Contact support Help from the Taskade team

What you can build

  • Custom dashboards that pull data from Taskade workspaces and projects
  • CI/CD integrations that create tasks or update statuses on deploy
  • AI assistants that manage tasks and agents through the MCP Server
  • Internal tools that connect Taskade to your company's systems
  • Automation bots that react to events and keep projects in sync

Next steps