Skip to content
FreeTicketDocs
Esc
↑↓navigate↵open⌘Jpreview

Exchange the access code for a buyer session

Public endpoint (no auth): credential bootstrap for the Device Authorization Grant (RFC 8628).

POST/customer/auth/verify
Request body
requiredapplication/json
emailstring<email>required
matches ^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
codestringrequired
min length 6 · max length 6
Responses
200

OK

dataCustomerAuthVerifyResultrequired
Show properties
session_tokenstringrequired

Usable as-is as the X-Customer-Session header on /api/v1/customer/*.

expires_inintegerrequired

Session lifetime, in seconds.

min -9007199254740991 · max 9007199254740991
401

Operation error.

errorobjectrequired
Show properties
codestringrequired
messagestringrequired
retryablebooleanrequired
detailsany
403

Insufficient role or resource not accessible.

errorobjectrequired
Show properties
codestringrequired
messagestringrequired
retryablebooleanrequired
detailsany
404

Resource does not exist or is out of scope.

errorobjectrequired
Show properties
codestringrequired
messagestringrequired
retryablebooleanrequired
detailsany
422

Operation error.

errorobjectrequired
Show properties
codestringrequired
messagestringrequired
retryablebooleanrequired
detailsany
429

Too many requests: rate limit exceeded.

errorobjectrequired
Show properties
codestringrequired
messagestringrequired
retryablebooleanrequired
detailsany
Try it
Server
Bodyapplication/json
Request
curl -X POST 'https://admin.appfreeticket.com/api/v1/customer/auth/verify' \
  -H 'Content-Type: application/json' \
  -d '{
  "email": "user@example.com",
  "code": "string"
}'
Response
{
  "data": {
    "session_token": "string",
    "expires_in": -9007199254740991
  }
}