---
title: "Verify SIWE signature"
method: POST
path: "/v1/auth/siwe/verify"
tags: ["Auth"]
---

# Verify SIWE signature

`POST /v1/auth/siwe/verify`

Verify a Sign-In with Ethereum (SIWE) message and signature. Returns a JWT token on success.

## Request body

- object
  - `message` string, required
  - `signature` string, required

## Response `200`

Authentication successful

- SiweVerifyResponse
  - `token` string, required
  - `address` string, required

## Other responses

- `400` — Invalid request body
- `401` — Invalid signature
- `429` — Rate limit exceeded. Includes Retry-After header with seconds until reset.
- `500` — Internal server error
- `503` — Swap service unavailable
- `504` — Swap service timed out

---

[API](https://skmtc.net/shapeshift/apis/shapeshift-public-api.md) · [All operations](https://skmtc.net/shapeshift/apis/shapeshift-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/shapeshift/shapeshift-public-api/revisions/6ffb6a8fd74a/schema)
