Authentication

How to authenticate with the planni Public API using API keys.

Base URL

All API requests use the following base URL:

https://api.planni.de/v1

API Keys

Every request must include an X-Api-Key header with a valid API key.

curl -H "X-Api-Key: your-api-key" https://api.planni.de/v1/contacts

API keys are created in the planni admin under Settings > Integrations.

Scopes

Each API key can be assigned one or more scopes to restrict access:

ScopeDescription
contacts:readRead contacts
contacts:writeCreate and update contacts
orders:readRead orders
events:readRead event registrations
webhooks:manageManage webhook subscriptions

An API key with no scopes has full access (backward compatibility).

Pagination

List endpoints support pagination with limit and offset query parameters:

ParameterTypeDefaultDescription
limitinteger25Max items to return (min 1)
offsetinteger0Items to skip
curl -H "X-Api-Key: your-api-key" \
  "https://api.planni.de/v1/contacts?limit=10&offset=20"

Error Handling

The API returns standard HTTP status codes.

Error Responses

{
  "error": "Unauthorized",
  "message": "Missing or invalid API key"
}

Status Codes

StatusMeaning
400Bad request (missing/invalid parameters)
401Missing or invalid API key
403Insufficient scope for this endpoint
404Resource not found
500Internal server error

Rate Limiting

There are currently no rate limits enforced. This may change in future versions.

On this page