403 Forbidden
Second factor required
- Code
second_factor_required- Status
403Forbidden- Type
https://errors.clavian.io/second-factor-required
What it means
The caller’s role needs a second factor, and this session was signed in without one.
What to do
Ask for the second factor, or for enrolling one if the person has none yet, then repeat the request from the session that has it.
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/second-factor-required",
"title": "Second factor required",
"status": 403,
"code": "second_factor_required",
"requestId": "req_01k5znw4hmfay8vvr14d2pf2db"
}
Endpoints that return it
74 endpoints in the OpenAPI document name it among their answers.
All 74 endpoints
GET /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 PlatformPOST /v1/invitations/acceptJoin the staff with an invitation linkGET /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 staffGET /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 zonePOST /v1/realtime/tokenA realtime token for the socket: as a member of an organisation, or as the player