Skip to main content
An Account Kit is a reusable policy template. Instead of configuring every tenant user individually, you define a kit once and assign users to it. A kit controls two things:
  • Primitives — which capabilities are enabled, split into Identity (verification, formation, email, domains) and Tools (cards, social, vault, logs).
  • Third-party connections — which apps a user may connect, plus per-tool filters and white-label auth.
See the full model in Architecture → Account Kits.

CLI First

Tools

ToolTypeDescription
account_kits_listCoreList all kits in the workspace
account_kits_createCoreCreate a policy template
account_kits_getCoreFetch a single kit
account_kits_updateCoreEdit primitives, connections, or governance
account_kits_deleteManagementDelete a kit (users must be reassigned first)
account_kits_assign_userManagementAssign a tenant user to a kit

Creating a Kit

Response:

Connection modes

ModeBehavior
openNo filter — every third-party app available (the default).
allowlistOnly the listed toolkits can be connected.
blocklistEvery app except the listed ones.
Per-tool filters (tools.<app>.enable / .disable) and white-label custom_auth_configs are optional.
Discovering app slugs: browse the full third-party app catalog with GET /v1/toolkits (?search=). The dashboard’s Account Kit editor uses this endpoint to power a searchable allow/block picker.

Governance — require approval

Each gated primitive accepts requiresApproval, and connections accept requiresApproval / approvalToolkits. When on, the agent’s sensitive action is frozen for a human to approve before it runs.
Cards, domains, verification, formation, and connecting services default to requiring approval for agent calls; set requiresApproval: false to opt out. Calls on the account’s own default agent profile execute without approval.

Error Handling

ErrorCauseRecovery
invalid_inputMalformed mode/toolkits, or unknown app slugUse a valid mode and slugs from GET /v1/toolkits
duplicate_recordA kit with this name already existsPick a different name
forbiddenTrying to delete a kit with users still assignedReassign those users first
not_foundkit_id doesn’t exist in this workspaceUse GET /v1/account-kits

Typical Workflow