Docs menu
Getting started

Authentication

Every request carries a scoped API key. Keys are minted in the app and carry only what you grant, so an agent or script can hold exactly the power its task needs and nothing more.

API keys

In the app, open Business → API & MCP, pick the scopes, and copy the key. Keys look like taka_live_... and are shown once at creation.

authorization
curl https://api.taka.ai/v1/public/account \
  -H "Authorization: Bearer taka_live_..."

The same key and the same scopes drive both the REST API and the MCP server. REST also accepts X-API-Key: taka_live_... if a proxy eats your Authorization header; MCP reads Authorization only.

Scopes

account:readBusiness, plan, credits, connected channels.
content:readPosts, variants, jobs.
content:writeCreate and edit drafts. Implies content:read.
generateAI generation and revision. Draws credits. Never implied.
publishPublish, approve, and schedule. Never implied; a schedule ships the post at its slot.
brand:readThe brand kit.
brand:writeEdit the brand kit. Implies brand:read.
analytics:readPerformance data.
  • Write implies read on the same resource.
  • generate and publish are never implied, they must be granted explicitly.
  • Scheduling requires publish, because outside review mode a schedule ships the post when its slot arrives.
Least power
A read-only key (account:read + content:read + analytics:read) can report all day and ship nothing. Start there, widen when the task earns it.

How keys are stored

Taka keeps only a hash of the key. If a key leaks, revoke it in the app and mint a new one; there is nothing to “view again” server-side.

Key management itself (create, list, rotate, revoke) is owner and admin territory and needs an app session. A key cannot mint keys, on purpose.