Kanka is a worldbuilding and RPG campaign management tool. The Kanka REST API lets you read and modify the campaign data that your Kanka user can access.
All accounts have free API access. The API is intended for integrations such as personal scripts, campaign backups, Discord bots, custom dashboards, VTT integrations, and tools that synchronize campaign data with another service.
API requests act as the authenticated Kanka user. A token does not bypass campaign membership, roles, visibility settings, or entity permissions.
| Capability | Availability |
|---|---|
| Read campaigns and campaign entries | Yes, subject to the user's access |
| Create, update, and delete campaign entries | Yes, when the user has the required permission |
| Synchronize campaign data with another tool | Yes |
| Build a personal script or bot | Yes, using a personal access token |
| Build an application for multiple Kanka users | Use OAuth only if your application has an approved OAuth flow |
| Read private campaigns or entries the user cannot access | No |
The authenticated API primarily manages campaign data. It is not a general account-management API and does not provide documented endpoints for passwords, billing, or subscription management.
The API operates on live Kanka data. There is no dry-run mode. Use a disposable campaign when testing write or delete requests. Deleted entities and posts can be recovered only for eligible premium campaigns; see Recovery.
For a script or integration that runs for your own account, create a personal access token. For an application that needs to be authorized by other Kanka users, see OAuth applications and confirm that your OAuth flow is supported before building against it.
Tokens are bearer credentials. Store them like passwords, never commit them to source control, and never place them in a URL or browser-side code.
Kanka revolves around core entities. Characters, locations, items, and custom campaign categories are represented as entities. An entity can also have related resources such as posts, properties, reminders, tags, and connections.
The API mostly follows REST principles. Resource-specific variations, request fields, and permissions are described on each reference page.
Start with the Setup and quickstart, then read Requests and responses before using the endpoint reference.
Next up: Setup