Bundles & App Kits
Export and import complete Taskade Genesis apps and workspaces as portable bundles using the Action API v2.
What Are Bundles?
A bundle is a portable snapshot of a workspace's building blocks — projects, agents, automations, templates, media, and Genesis app source — packaged so you can move it between workspaces, accounts, and environments. Bundles power app sharing, backups, and the community App Kits.
Bundles come in two flavors:
JSON (SpaceBundleData)
application/json
No (media items are skipped)
Programmatic export/import, diffing, version control
ZIP / .tsk
binary archive
Yes (media files included)
Full-fidelity transfer, backups, distribution
What's Included in a Bundle
Projects
Tasks, custom fields, views, and structure
Templates
Reusable project/task templates
AI Agents
System prompts, tone, and knowledge configuration
Automations
Triggers, actions, and full flow logic
Genesis apps
App source files (apps/{id}/…)
Media
Uploaded files and assets (ZIP/.tsk only)
API Reference
Export a Bundle (JSON) — v1
Export a space (subspace / app) as a JSON bundle (SpaceBundleData v1). Returns all agents, automations, projects, templates, and apps. Media items are excluded — use the ZIP export or download media separately via the media endpoints.
The space (subspace / app) ID to export.
Exported workspace bundle
Exported workspace bundle
Error description
GET /api/v1/bundles/{spaceId}/export HTTP/1.1
Host: www.taskade.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"ok": true,
"item": {
"version": "1",
"items": {}
}
}Export a Bundle (ZIP / .tsk) — v1
Export a space (subspace / app) as a ZIP bundle containing all agents, automations, projects, templates, apps, and media files. The ZIP includes a manifest.json, individual item files in type directories, and media files downloaded from storage.
The space (subspace / app) ID to export.
Export format: "zip" (default) or "tsk" (.tsk app kit).
zipPossible values: Error description
Error description
GET /api/v1/bundles/{spaceId}/export/zip HTTP/1.1
Host: www.taskade.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Error description
{
"ok": false,
"message": "text",
"code": "text",
"statusMessage": "text"
}A successful response streams the file's binary content; errors return the standard JSON error object.
Import a Bundle (JSON) — v1
Import a JSON bundle (agents, automations, projects, templates, apps) into a workspace. The bundle is validated against the SpaceBundleData v1 schema and all items are installed into the target workspace. Media items are not supported — use the ZIP import or upload media separately via the media endpoints after import.
The target workspace ID to import the bundle into.
Successful bundle import
Successful bundle import
Error description
POST /api/v1/bundles/{workspaceId}/import HTTP/1.1
Host: www.taskade.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 119
{
"bundleData": {
"version": "1",
"items": {
"ANY_ADDITIONAL_PROPERTY": {
"type": "text",
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}
}
}{
"ok": true,
"item": {
"id": "abc123DEF456",
"projectCount": 1,
"flowCount": 1,
"agentCount": 1,
"templateCount": 1,
"mediaCount": 1,
"appCount": 1
}
}Import a Bundle (ZIP / .tsk) — v1
Import a ZIP/.tsk bundle (exported from the export/zip endpoint) into a workspace. All items are installed into the target workspace. The ZIP must contain valid bundle data (either bundle.json or directory structure). Media files in the ZIP are re-uploaded to storage automatically. Send the file as the raw request body with Content-Type: application/zip, application/octet-stream, or application/x-tsk.
The target workspace ID to import the bundle into.
Successful ZIP bundle import
Successful ZIP bundle import
Error description
POST /api/v1/bundles/{workspaceId}/import/zip HTTP/1.1
Host: www.taskade.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"ok": true,
"item": {
"id": "abc123DEF456",
"projectCount": 1,
"flowCount": 1,
"agentCount": 1,
"templateCount": 1,
"mediaCount": 1,
"appCount": 1
}
}Export a bundle (JSON) — Action API v2
POST /api/v2/exportBundle — returns the full SpaceBundleData object (no binary media).
Response:
Import a bundle (JSON)
POST /api/v2/importBundle — installs a SpaceBundleData object into a target workspace.
Response reports what was created:
Export / import as ZIP (.tsk)
For full-fidelity transfer including media, use the binary endpoints:
The SpaceBundleData Schema
The JSON bundle is a flat map of items keyed by id:
The .tsk Format
A .tsk file is a ZIP archive with a manifest and type-based directories:
Two manifest format versions exist: 1.0 stored apps as a single JSON blob; 1.1 (current export) spreads app source as a real directory tree. Import accepts both.
Plan Limits
Imports are checked per item type against your plan:
Agents
1
Varies by plan
Genesis apps
3
Unlimited
Automations (flows)
— (paid only)
Enabled
The public ZIP import is limited to 50 MB per archive. Bundle operations are rate-limited to protect large transfers.
Use Cases
Share apps across workspaces — export from one workspace, import into another.
Back up before big changes — snapshot a workspace and restore later.
Distribute through the community — publish a
.tskso others import a working app in seconds.Template creation — build once, export, and reimport for fresh copies.
Next Steps
Action API v2 Reference — the full v2 operation set
Authentication — get your API token
MCP Connectors — connect your imported apps to external services
Last updated
Was this helpful?