Everything Taka does, generate, schedule, publish, brand, analytics, behind a scoped API key. Plain REST, or a native MCP server your AI assistant already knows how to use.
1. Mint a key. In the app, open Business → API & MCP, pick the scopes the task needs, and copy the key. It is shown once; Taka keeps only a hash.
2. Say hello. The account endpoint returns your business, plan, credits, and connected channels.
3. Ship something. Create a draft, generate it with AI, then schedule or publish it. Long work comes back as a job you poll.
curl https://api.taka.ai/v1/public/account \
-H "Authorization: Bearer taka_live_..."curl -X POST https://api.taka.ai/v1/public/posts \
-H "Authorization: Bearer taka_live_..." \
-H "Content-Type: application/json" \
-H "Idempotency-Key: first-post-1" \
-d '{"platform": "instagram", "idea": "Weekend special: fresh croissants"}'
# then generate it (draws 1 credit, returns a job to poll)
curl -X POST https://api.taka.ai/v1/public/posts/POST_ID/generate \
-H "Authorization: Bearer taka_live_..."Taka speaks MCP natively: 36 tools, guided prompts like plan_my_week, and live resources, all over the same key with the same scopes.
Claude Code: one command, shown on the right.
Claude Desktop, Cursor, anything else: paste the config block into your client's MCP settings. Then just ask: “plan my social week and schedule the drafts for my review.”
claude mcp add --transport http taka https://api.taka.ai/mcp \
--header "Authorization: Bearer taka_live_..."{
"mcpServers": {
"taka": {
"type": "http",
"url": "https://api.taka.ai/mcp",
"headers": { "Authorization": "Bearer taka_live_..." }
}
}
}A post is one piece of content with a variant per platform (Instagram, LinkedIn, TikTok, and friends). Edit the primary and the other variants re-derive; edit a specific variant and it pins. Published content is immutable, create a new post instead.
Generation, revision, and async publishing return 202 with a job id. Poll GET /v1/public/jobs/{id} every 10-30 seconds. Statics land in 1-3 minutes, reels can take 20. Stuck jobs fail themselves with code "timeout", so polling never hangs.
Send an Idempotency-Key header on writes. The same key replays the original response for 24 hours instead of double-charging credits or double-publishing. Same key with a different body returns 409 IDEMPOTENCY_CONFLICT.
Keys carry only what you grant: account:read, content:read, content:write, generate, publish, brand:read, brand:write, analytics:read. Write implies read on the same resource; generate and publish are never implied. Scheduling requires publish, because outside review mode a schedule ships the post at its slot.
Revision results tell you what actually happened: revisionApplied false means the quality floor kept the old version, noVisibleChange means the same words came back, imageryReverted means the photo stayed. Building an agent? Narrate from these, never from intentions.
Per key, per hour: 600 general requests, 60 AI generations, 20 outward writes (publish, approve, schedule). Errors use a stable envelope, {"error": {"code", "message", "requestId"}}, with machine codes like INSUFFICIENT_CREDITS and CHANNEL_NOT_CONNECTED.
Every endpoint, browsable. Generated from the code on each deploy, so it is never stale.
The machine-readable contract. Point your codegen at it.
The whole surface in plain text, written for AI agents. The fastest way to teach a model Taka.
A ready-made skill for Claude Code, Cursor, and other agents. One install, full instructions.
Two things need a browser and stay in the app: connecting a social channel (OAuth) and billing. Everything else, your code can do.