403 Forbidden
Not allowed
- Code
forbidden- Status
403Forbidden- Type
https://errors.clavian.io/forbidden
What it means
The caller is signed in, but its role does not give it the permission this action needs at this scope: the Platform, an organisation or a venue.
What to do
Do not retry, because the answer changes only when the role does. Say the action is not allowed, and hide it where the client reads the caller’s permissions from GET /v1/me/access.
Example
The API answers with status 403 and this body, as application/problem+json. A detail may be added, saying what went wrong this time; it is for people, and changes.
{
"type": "https://errors.clavian.io/forbidden",
"title": "Not allowed",
"status": 403,
"code": "forbidden",
"requestId": "req_01k5znw4hmfay8vvr14d2pf2db"
}
Endpoints that return it
74 endpoints in the OpenAPI document name it among their answers.
All 74 endpoints
GET /v1/files/{fileId}Fetch a private file through its signed URLGET /v1/hq/auditThe platform audit logPOST /v1/hq/audit/exportExport the platform audit log as CSVGET /v1/hq/brandRead the brand configuration, as HQ edits itPUT /v1/hq/brandChange the brand values HQ setsGET /v1/hq/organizationsEvery organisation on the Platform, newest firstPOST /v1/hq/organizationsCreate an organisation, and invite its ownerGET /v1/hq/organizations/{organizationId}Read one organisation’s recordPOST /v1/hq/organizations/{organizationId}/owner-invitationsInvite an owner to an organisation that has noneGET /v1/hq/organizations/{organizationId}/settingsRead one organisation’s settings, as HQPUT /v1/hq/organizations/{organizationId}/settingsSet, lock or unlock an organisation’s settings, as HQPATCH /v1/hq/organizations/{organizationId}/venues/{venueId}/listingSet a venue’s discovery flagsGET /v1/hq/playersSearch every player on the PlatformGET /v1/hq/players/{playerId}One player’s platform recordPOST /v1/hq/players/{playerId}/banBan a person from the PlatformPOST /v1/hq/players/{playerId}/unbanLift a person’s platform banGET /v1/hq/settingsRead the platform defaults and locksPUT /v1/hq/settingsChange platform defaults and locksGET /v1/hq/venuesEvery venue on the PlatformGET /v1/organizations/{organizationId}/auditThe organisation’s audit logPOST /v1/organizations/{organizationId}/audit/exportExport the organisation’s audit log as CSVPOST /v1/organizations/{organizationId}/filesStart an uploadGET /v1/organizations/{organizationId}/files/{fileId}Read a filePOST /v1/organizations/{organizationId}/files/{fileId}/completeFinish an uploadGET /v1/organizations/{organizationId}/invitationsInvitations sent, newest firstPOST /v1/organizations/{organizationId}/invitationsInvite someone to the staff, by phone or by emailDELETE /v1/organizations/{organizationId}/invitations/{invitationId}Withdraw an invitationGET /v1/organizations/{organizationId}/membersThe organisation’s staffPOST /v1/organizations/{organizationId}/members/shared-deviceTurn this device into a shared counter deviceGET /v1/organizations/{organizationId}/members/{memberId}One member of the staffDELETE /v1/organizations/{organizationId}/members/{memberId}Take someone off the staffDELETE /v1/organizations/{organizationId}/members/{memberId}/pinReset a member’s staff PIN at a venuePUT /v1/organizations/{organizationId}/members/{memberId}/roleGive a member a different rolePUT /v1/organizations/{organizationId}/members/{memberId}/statusSuspend a member, or reinstate onePUT /v1/organizations/{organizationId}/members/{memberId}/venuesChange which venues a member works atGET /v1/organizations/{organizationId}/playersSearch the organisation’s playersGET /v1/organizations/{organizationId}/players/{playerId}One player, as this organisation sees themPATCH /v1/organizations/{organizationId}/players/{playerId}Add, edit or remove notes and tagsPOST /v1/organizations/{organizationId}/players/{playerId}/banBan a player from every venue of the organisationGET /v1/organizations/{organizationId}/players/{playerId}/bansA player’s bans in this organisation, reasons includedGET /v1/organizations/{organizationId}/players/{playerId}/id-checksA player’s ID checks at this organisationPOST /v1/organizations/{organizationId}/players/{playerId}/id-checksRecord a staff document ID checkGET /v1/organizations/{organizationId}/players/{playerId}/id-checks/{idCheckId}/photoView an ID check’s photoGET /v1/organizations/{organizationId}/players/{playerId}/ordersThe player’s orders hereGET /v1/organizations/{organizationId}/players/{playerId}/passesThe player’s passes hereGET /v1/organizations/{organizationId}/players/{playerId}/pointsThe points the player earned hereGET /v1/organizations/{organizationId}/players/{playerId}/sessionsThe player’s sessions herePOST /v1/organizations/{organizationId}/players/{playerId}/unbanLift a player’s organisation banGET /v1/organizations/{organizationId}/players/{playerId}/walletThe player’s wallet statement hereGET /v1/organizations/{organizationId}/rolesEvery role: the built-in ones and the custom onesPOST /v1/organizations/{organizationId}/rolesMake a custom roleGET /v1/organizations/{organizationId}/roles/{role}One role: its permissions and its limitsPUT /v1/organizations/{organizationId}/roles/{role}Change a custom role’s permissionsDELETE /v1/organizations/{organizationId}/roles/{role}Delete a custom rolePUT /v1/organizations/{organizationId}/roles/{role}/limitsSet the limits a role carriesGET /v1/organizations/{organizationId}/settingsRead the organisation’s settings screenPUT /v1/organizations/{organizationId}/settingsChange the organisation’s settingsGET /v1/organizations/{organizationId}/venuesList the organisation's venuesPOST /v1/organizations/{organizationId}/venuesCreate a venueGET /v1/organizations/{organizationId}/venues/{venueId}Read a venuePATCH /v1/organizations/{organizationId}/venues/{venueId}Edit a venuePOST /v1/organizations/{organizationId}/venues/{venueId}/archiveClose a venue for goodGET /v1/organizations/{organizationId}/venues/{venueId}/floor-planRead one floor’s planPUT /v1/organizations/{organizationId}/venues/{venueId}/floor-planSave one floor’s planPOST /v1/organizations/{organizationId}/venues/{venueId}/players/{playerId}/banBan a player from one venuePOST /v1/organizations/{organizationId}/venues/{venueId}/players/{playerId}/unbanLift a player’s ban at one venueGET /v1/organizations/{organizationId}/venues/{venueId}/settingsRead a venue’s settings screenPUT /v1/organizations/{organizationId}/venues/{venueId}/settingsChange a venue’s settingsGET /v1/organizations/{organizationId}/venues/{venueId}/station-classesList a venue's station classesPOST /v1/organizations/{organizationId}/venues/{venueId}/station-classesCreate a station classPATCH /v1/organizations/{organizationId}/venues/{venueId}/station-classes/{classId}Edit a station classGET /v1/organizations/{organizationId}/venues/{venueId}/zonesList a venue's zonesPOST /v1/organizations/{organizationId}/venues/{venueId}/zonesCreate a zonePATCH /v1/organizations/{organizationId}/venues/{venueId}/zones/{zoneId}Rename or recolour a zone