API ReferenceHTTP APIExchange Operations
Exchange: Close
Build transactions to close positions.
Alpha Version
The Ostium Builder Service is in Alpha. API endpoints, specifications, and builder URLs may change without notice. Use with caution in production environments.
POST /v1/exchange/close
Builds unsigned transactions to close existing positions.
Headers
| Header | Required | Description |
|---|---|---|
X-Trader-Address | Yes | Trader wallet address. |
X-API-Key | No | Delegated mode (delegate wallet must be verified). |
Content-Type | Yes | application/json or text/plain (JSON string). |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
closes | CloseItem[] | Yes | One or more close actions. |
sp | number | No | Slippage percentage (0-100). Default 0.25. |
CloseItem
| Field | Type | Required | Description |
|---|---|---|---|
a | number | Yes | Pair index. |
t | number | Yes | Trade index. |
p | string | Yes | Current market price (numeric string > 0). |
r | number | Yes | Close percentage (1-100). Decimals allowed. |
Constraints
closesmust contain at least one item.rmust be between 1 and 100.- Delegated mode supports one close per request.
Response Body (unsigned)
| Field | Type | Required | Description |
|---|---|---|---|
transactions | UnsignedTransaction[] | Yes | One or more unsigned transactions. |
Response Body (delegated)
| Field | Type | Required | Description |
|---|---|---|---|
txHash | string | Yes | Transaction hash of the delegated action. |
smartAccountAddress | string | Yes | Smart account used for delegation. |
Example Request
curl -X POST https://builder.ostiscan.xyz/v1/exchange/close \
-H "Content-Type: application/json" \
-H "X-Trader-Address: 0xYourWallet" \
-d '{"closes":[{"a":0,"t":0,"p":"43000","r":50}],"sp":0.25}'Response (200, unsigned)
{
"transactions": [
{ "to": "0x...", "data": "0x...", "value": "0", "from": "0xYourWallet" }
]
}Response (200, delegated)
{
"txHash": "0x...",
"smartAccountAddress": "0x..."
}Errors
See /docs/errors.