Skip to main content
POST
Intra Account Transfer

Authorizations

KALSHI-ACCESS-KEY
string
header
required

Your API key ID

KALSHI-ACCESS-SIGNATURE
string
header
required

Base64 signature of the pre-sign text (timestamp + method + path) made with the API key's algorithm - RSA-PSS with SHA-256 for RSA keys, Ed25519 for Ed25519 keys

KALSHI-ACCESS-TIMESTAMP
string
header
required

Request timestamp in milliseconds

Body

application/json
source
enum<string>
required

The source exchange instance

Available options:
event_contract,
margined
destination
enum<string>
required

The destination exchange instance

Available options:
event_contract,
margined
amount
integer<int64>
required

The amount to transfer in centicents

client_transfer_id
string<uuid>

Client ID for duplicate prevention. Reuse only for identical requests. Scoped to the user and both exchange instances and shards. Accepted transfers cannot be repeated with the same ID on the same route. Only supported for primary accounts. Transfers involving numbered subaccounts reject this field. If omitted, each request creates a new transfer.

source_exchange_shard
integer
default:0

Source exchange shard index (default 0)

Required range: 0 <= x <= 100
destination_exchange_shard
integer
default:0

Destination exchange shard index (default 0)

Required range: 0 <= x <= 100
source_subaccount
integer
default:0

Source subaccount number (default 0 for the primary account). Only supported for event contract to event contract transfers.

destination_subaccount
integer
default:0

Destination subaccount number (default 0 for the primary account). Only supported for event contract to event contract transfers.

Response

Transfer request accepted. The transfer is processed asynchronously.

transfer_id
string
required

The ID of the transfer that was created