Check the status of an authorization session. This endpoint uses POST instead of GET because it requires client credentials in the request body for platform authentication.
Poll this endpoint every 2-3 seconds until the status is completed or expired.
Request
| Header | Required | Description |
|---|
Authorization | Yes | Bearer token with your API key: Bearer YOUR_API_KEY |
Content-Type | Yes | Must be application/json |
Path Parameters
The session ID returned when creating the authorization session.
Body Parameters
The platform’s client ID.
The platform’s client secret.
Response
Pending
{
"status": "pending",
"expires_at": "2025-01-11T12:35:00Z"
}
Completed
When the business owner approves, the response includes the delegation token:
{
"status": "completed",
"expires_at": "2025-01-11T12:35:00Z",
"access_token": "uip_at_abc123xyz789..."
}
Expired
{
"status": "expired",
"expires_at": "2025-01-11T12:35:00Z"
}
Current authorization session status: pending, completed, or expired
ISO 8601 timestamp when the session expires.
Delegation token with uip_at_ prefix (only present when completed). Use this as a Bearer token to make API calls on behalf of the business.
Example Request
curl -X POST "https://api.uip.digital/v1/authorize/sess_auth_1a2b3c4d/status" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"client_id": "platform_abc123",
"client_secret": "secret_xyz789"
}'
Why POST? Unlike other status endpoints, this uses POST because platform credentials must be verified on every status check for security.
Webhook alternative: In addition to polling, UIP sends an authorize.completed webhook when the business owner approves. See Webhooks for details.
Errors
Possible error codes for this endpoint:
auth/missing-api-key - No API key provided
auth/invalid-api-key - Invalid API key
request/invalid-payload - Missing client credentials
resource/not-found - Authorization session not found
rate-limit/exceeded - Rate limit exceeded (100/min for authorize)
internal/server-error - Failed to retrieve session status
Use your UIP API key as a bearer token
The session_id returned when creating the authorization session
The platform's client ID.
The platform's client secret.
Authorization session status
Authorization session status
Available options:
pending,
completed,
expired
ISO 8601 timestamp when the session expires
Delegation token with uip_at_ prefix (only present when completed)