---
title: "Create Off-ramp Verification Email Challenge"
method: POST
path: "/off-ramp/verification/email-challenge"
tags: ["off-ramp"]
---

# Create Off-ramp Verification Email Challenge

`POST /off-ramp/verification/email-challenge`

## Request

- Base URL: `https://api.coinvoyage.io/v3`
- URL: `https://api.coinvoyage.io/v3/off-ramp/verification/email-challenge`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/coinvoyage/apis/coinvoyage-api-v3/docs/off-ramp/verification/email-challenge/post.ts> (a function with typed inputs; its response is checked against the schema)

Internal credentials only. The plaintext code is intended for trusted server-to-server email delivery and must not be exposed to a browser.

## Headers

- `Authorization-Signature` string, required

## Request body

- KYCEmailChallengeRequest
  - `email` string, required

## Response `201`

Email challenge created

- KYCEmailChallengeResponse
  - `challenge_id` string, required
  - `code` string, required
  - `expires_in_seconds` integer, required

## Other responses

- `401`: Unauthorized
- `403`: Internal credential required
- `422`: Invalid or reserved email address
- `429`: Challenge issuance rate limited
- `503`: Email verification unavailable

## Changes

- **2026-09-26** `b82377b55a17`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/coinvoyage/apis/coinvoyage-api-v3/changes/off-ramp/verification/email-challenge/post.md)

---

[API](https://skmtc.dev/coinvoyage/apis/coinvoyage-api-v3.md) - [All operations](https://skmtc.dev/coinvoyage/apis/coinvoyage-api-v3/llms.txt) - [OpenAPI document](https://skmtc.dev/coinvoyage/apis/coinvoyage-api-v3/revisions/3535f46f4c27?raw)
