---
title: "Initiate Authorization"
method: POST
path: "/v1/auth/authorize"
tags: ["Authorization"]
---

# Initiate Authorization

`POST /v1/auth/authorize`

Starts the authorization process for given authorization requirements

## Request body

- SchemasAuthorizationInitiationRequest
  - `auth_requirement` AuthAuthorizationRequirement, required
    - `id` string — one of ID or ProviderID must be set
    - `oauth2` AuthOAuth2AuthorizationRequirement
      - `scopes` string[]
    - `provider_id` string — one of ID or ProviderID must be set
    - `provider_type` string
  - `next_uri` string — Optional: if provided, the user will be redirected to this URI after authorization
  - `user_id` string, required

## Response `200`

OK

- AuthAuthorizationResponse
  - `context` AuthAuthorizationContext
    - `token` string
    - `user_info` object
  - `id` string
  - `provider_id` string
  - `scopes` string[]
  - `status` 'not_started' | 'pending' | 'completed' | 'failed'
  - `url` string
  - `user_id` string

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `415` — Unsupported Media Type
- `500` — Internal Server Error

## Changes

- **2025-10-30** `f59a2fe653b8` — 1 warning
  - deleted the `header` request parameter `Authorization`

[Change history](https://skmtc.dev/arcadeai/apis/arcade-api/changes/v1/auth/authorize/post.md)

---

[API](https://skmtc.dev/arcadeai/apis/arcade-api.md) · [All operations](https://skmtc.dev/arcadeai/apis/arcade-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/arcadeai/arcade-api/revisions/a509111298b2/schema)
