---
title: "POST /protocol/transfers"
method: POST
path: "/protocol/transfers"
---

# POST /protocol/transfers

`POST /protocol/transfers`

## Request

- Base URL: `https://api.relay.link`
- URL: `https://api.relay.link/protocol/transfers`
- Auth: none declared

## Request body

- object
  - `requestId` string, uuid, required
  - `asset` object, required
    - `chainId` integer, required
    - `currency` string, required
  - `owner` object, required
    - `chainId` integer, required
    - `address` string, required
    - `signature` string
  - `amount` string, required
  - `recipient` string, required
  - `expiration` integer

## Response `200`

Default Response

- object
  - `execution` object, required
    - `chainId` integer, required
    - `oracleAddress` string, required
    - `idempotencyKey` string, required
  - `status` 'awaiting_signature' | 'pending' | 'executed' | 'failed', required
  - `txHash` string, nullable, required
  - `signing` object
    - `message` string, required
    - `expiration` integer, required

## Other responses

- `400`: Default Response
- `503`: Default Response

## Changes

- **2026-10-20** `8142d30f7d9c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/relay/apis/cross-chain-solver/changes/protocol/transfers/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/85900d75d524?raw)
