Skip to main content

Authorization and Permissions

Permission checks are enforced per endpoint after API key authentication.

Available Permissions​

PermissionCovers
membership_types:readList and view membership types and pricing
events:readList and view organisation events
event_registrations:readList and view event registrations and attendees
event_orders:readList and view event orders and payment state
donations:readList and view donations and donor details
donation_subscriptions:readList and view recurring donation subscriptions
donation_campaigns:readList and view fundraising campaigns
webhooks:readView subscriptions, catalogue and delivery history
webhooks:writeCreate, update and delete subscriptions, send tests and replay deliveries
memberships:readList and view memberships and billing state
scans:readList and view scan events
members:readList and view members
members:writeCreate and update members
passes:readList and view issued pass instances
passes:issueIssue passes and event tickets
passes:revokeRevoke issued passes
passes:reinstateReinstate revoked passes
passes:update_expiryUpdate or remove pass expiry dates
passes:send_emailSend pass delivery emails
pass_templates:readList and view pass templates

Endpoint Mapping​

Endpoint groupRequired permission
GET /membership-types, GET /membership-types/{id}membership_types:read
GET /events, GET /event-records/{id}events:read
GET /event-registrations, GET /event-registrations/{id}event_registrations:read
GET /event-orders, GET /event-orders/{id}event_orders:read
GET /donations, GET /donations/{id}donations:read
GET /donation-subscriptions, GET /donation-subscriptions/{id}donation_subscriptions:read
GET /donation-campaigns, GET /donation-campaigns/{id}donation_campaigns:read
Webhook subscription, catalogue and delivery history GET endpointswebhooks:read
Webhook subscription POST, PUT and DELETE endpoints, tests and replaywebhooks:write
GET /memberships, GET /memberships/{id}memberships:read
GET /scans, GET /scans/{id}scans:read
GET /members, GET /members/{id}members:read
POST /members, PUT /members/{id}members:write
GET /passes, GET /passes/{id}passes:read
POST /passes/issuepasses:issue
POST /passes/{id}/revokepasses:revoke
POST /passes/{id}/reinstatepasses:reinstate
PUT /passes/{id}/expirypasses:update_expiry
POST /passes/{id}/send-emailpasses:send_email
GET /pass-templates, GET /pass-templates/{id}pass_templates:read

If a key does not include the required permission, the API returns HTTP 403.

Existing API keys keep their current permissions. Enable the new scopes through API-key creation or editing under Integrations. Read and write webhook scopes are independent; grant both when an integration must provision endpoints and inspect results. Public webhook endpoints require organisation webhook access as well as public API access. All records are scoped to the key’s organisation.