---
title: "Exchange magic link token for session"
method: POST
path: "/api/auth/magic-link/exchange"
tags: ["Magic Link Plugin"]
---

# Exchange magic link token for session

`POST /api/auth/magic-link/exchange`

Exchanges a verified magic link token for an authenticated user session.

## Request body

- MagicLinkExchangeRequest
  - `token` string, required

## Response `200`

OK

- MagicLinkExchangeResponse
  - `session` Session, required
    - `created_at` string, date-time
    - `expires_at` string, date-time
    - `id` string
    - `ip_address` string, nullable
    - `token` string
    - `updated_at` string, date-time
    - `user_agent` string, nullable
    - `user_id` string
  - `user` User, required
    - `created_at` string, date-time
    - `email` string
    - `email_verified` boolean
    - `id` string
    - `image` string, nullable
    - `metadata` object, nullable
    - `name` string
    - `updated_at` string, date-time

## Changes

- **2026-07-08** `dd8e22232383` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/authula/apis/authula-api/changes/api/auth/magic-link/exchange/post.md)

---

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