curl --request POST \
--url https://api.lamarge.trade/v1/orders/{id}/signatures \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"signatures": [
{
"kind": "<string>",
"signature": "<string>",
"fill_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
]
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
signatures: [
{
kind: '<string>',
signature: '<string>',
fill_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
}
]
})
};
fetch('https://api.lamarge.trade/v1/orders/{id}/signatures', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.lamarge.trade/v1/orders/{id}/signatures"
payload = { "signatures": [
{
"kind": "<string>",
"signature": "<string>",
"fill_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "<string>",
"venue": "<string>",
"receive_venue": "<string>",
"owner_address": "<string>",
"state": "preparing",
"error": "<string>",
"amount": "<string>",
"escrow_available": "<string>",
"quotable": "<string>",
"filled": "<string>",
"received": "<string>",
"last_sequence": 123,
"quote_set": {
"sequence": 123,
"expires_at": "2023-11-07T05:31:56Z",
"quotes": [
{
"venue": "<string>",
"chain_id": 123,
"token": "<string>",
"recipient": "<string>",
"supply": "<string>",
"receive": "<string>",
"min_fill": "<string>"
}
],
"signature": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"valid_until": "2023-11-07T05:31:56Z",
"quote_size": "<string>",
"identity_generation": "<string>",
"active": true
},
"margin_move": {
"venue": "<string>",
"amount": "<string>",
"venue_ref": "<string>",
"state": "queued",
"error": "<string>",
"at": "2023-11-07T05:31:56Z"
},
"transactions": [
{
"kind": "permit",
"chain_id": 123,
"hash": "<string>",
"status": "pending",
"error": "<string>",
"at": "2023-11-07T05:31:56Z"
}
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"client_order_id": "<string>",
"quote_identity_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"quote_signer": "<string>"
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}Submit order signatures
Takes exactly the requested signatures from their expected signers, within one hour of preparation. A margin withdrawal is queued with the accepted signatures and sent at most once. A replay of accepted signatures returns the current order.
curl --request POST \
--url https://api.lamarge.trade/v1/orders/{id}/signatures \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"signatures": [
{
"kind": "<string>",
"signature": "<string>",
"fill_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
]
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
signatures: [
{
kind: '<string>',
signature: '<string>',
fill_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
}
]
})
};
fetch('https://api.lamarge.trade/v1/orders/{id}/signatures', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.lamarge.trade/v1/orders/{id}/signatures"
payload = { "signatures": [
{
"kind": "<string>",
"signature": "<string>",
"fill_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "<string>",
"venue": "<string>",
"receive_venue": "<string>",
"owner_address": "<string>",
"state": "preparing",
"error": "<string>",
"amount": "<string>",
"escrow_available": "<string>",
"quotable": "<string>",
"filled": "<string>",
"received": "<string>",
"last_sequence": 123,
"quote_set": {
"sequence": 123,
"expires_at": "2023-11-07T05:31:56Z",
"quotes": [
{
"venue": "<string>",
"chain_id": 123,
"token": "<string>",
"recipient": "<string>",
"supply": "<string>",
"receive": "<string>",
"min_fill": "<string>"
}
],
"signature": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"valid_until": "2023-11-07T05:31:56Z",
"quote_size": "<string>",
"identity_generation": "<string>",
"active": true
},
"margin_move": {
"venue": "<string>",
"amount": "<string>",
"venue_ref": "<string>",
"state": "queued",
"error": "<string>",
"at": "2023-11-07T05:31:56Z"
},
"transactions": [
{
"kind": "permit",
"chain_id": 123,
"hash": "<string>",
"status": "pending",
"error": "<string>",
"at": "2023-11-07T05:31:56Z"
}
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"client_order_id": "<string>",
"quote_identity_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"quote_signer": "<string>"
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"retryable": true
}
}Authorizations
Master session from POST /v1/auth/verify. Revocable; expires after seven days by default. Required for financial operations.
Path Parameters
^0x[0-9a-fA-F]{64}$Body
Exactly one per requested (kind, fill_id); extra or duplicate items are refused.
Show child attributes
Show child attributes
Response
The order, moving or funding.
The escrow's offerId.
^0x[0-9a-fA-F]{64}$Supply venue.
Venue the maker receives on.
The maker's linked address on venue, owner of the escrow offer.
^0x[0-9a-fA-F]{40}$preparing, moving, funding, live, closing, closed, failed Why the order failed or its last close reverted.
Decimal base units of the venue's token, at most 2^256 − 1. With 6 decimals, "1000000" is 1 token.
^[0-9]{1,78}$Unlocked balance in the escrow.
^[0-9]{1,78}$Remaining admission budget capped by unlocked escrow. Check quote_set.active, valid_until and state too.
^[0-9]{1,78}$Taken by settled fills, in venue base units.
^[0-9]{1,78}$Settled maker receipts, in receive_venue base units.
^[0-9]{1,78}$Highest stored quote sequence; 0 without one.
Null before the first accepted quote or after cleanup. Check active and valid_until; lease expiry deactivates a retained set.
Show child attributes
Show child attributes
A move out of the venue margin, relayed as a withdrawal.
Show child attributes
Show child attributes
Relayed transactions, oldest first: permit, fund, close.
Show child attributes
Show child attributes
RFC 3339 UTC; snapshots and history may keep fractional seconds.
RFC 3339 UTC; snapshots and history may keep fractional seconds.
Persist before the first attempt. Unique per user and resource type; reuse with other parameters returns 409 STATE_CONFLICT. When omitted, the server assigns a UUID and a lost response cannot be recovered by id.
1 - 64^[A-Za-z0-9_.:-]+$Responses are lowercase.
^0x[0-9a-fA-F]{40}$