---
title: "POST /access-tokens"
method: POST
path: "/access-tokens"
---

# POST /access-tokens

`POST /access-tokens`

## Request

- Base URL: `https://api.relay.link`
- URL: `https://api.relay.link/access-tokens`
- Auth: none declared. Required headers: `x-api-key`
- TypeScript: <https://skmtc.dev/relay/apis/cross-chain-solver/docs/access-tokens/post.ts> (a function with typed inputs; its response is checked against the schema)

Exchange a tier 2+ backend API key for a 15-minute public API session JWT.

## Headers

- `x-api-key` string, required

## Request body

- object

## Response `200`

Default Response

- object
  - `token` string, required
  - `tokenType` 'Bearer', required
  - `expiresAt` string, date-time, required
  - `scope` 'public-api', required

## Other responses

- `400`: Default Response
- `401`: Default Response
- `403`: Default Response
- `429`: Default Response
- `500`: Default Response

## Changes

- **2026-10-21** `98d2da61c2c6`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/relay/apis/cross-chain-solver/changes/access-tokens/post.md)

---

[API](https://skmtc.dev/relay/apis/cross-chain-solver.md) - [All operations](https://skmtc.dev/relay/apis/cross-chain-solver/llms.txt) - [OpenAPI document](https://skmtc.dev/relay/apis/cross-chain-solver/revisions/ed331d1e4073?raw)
