---
title: "Verify email magic link"
method: GET
path: "/api/v1/me/emails/verify/{token}"
tags: ["Emails"]
---

# Verify email magic link

`GET /api/v1/me/emails/verify/{token}`

## Request

- Base URL: `https://api.proof.holdings`
- URL: `https://api.proof.holdings/api/v1/me/emails/verify/{token}`
- Auth: none declared

Verify email via magic link. No authentication required — token in URL is the auth.

## Path parameters

- `token` string, required: Magic link or callback token

## Other responses

- `302`: Redirects to dashboard after verification
- `400`: Invalid or expired token
- `409`: The address already signs in to another account. A link never combines accounts (a mail scanner can open it with nobody present). The page says what would work: when the other account is empty, enter the code from the same email where the address is being added; otherwise the same refusal the code step would give, naming which account to sign in with.

---

[API](https://skmtc.dev/proof/apis/proof-holdings-api.md) · [All operations](https://skmtc.dev/proof/apis/proof-holdings-api/llms.txt) · [OpenAPI document](https://skmtc.dev/proof/apis/proof-holdings-api/revisions/b15f506de696?raw)
