API Reference v3.0
- auth.v1
- API Reference
- ledger.v1
- ledger.v2
- GETShow server information
- GETRead in memory metrics
- GETList ledgers
- GETGet a ledger
- POSTCreate a ledger
- PUTUpdate ledger metadata
- DELDelete ledger metadata by key
- GETGet information about a ledger
- POSTBulk request
- GETList accounts from a ledger
- HEADCount the accounts from a ledger
- GETGet account by its address
- POSTAdd metadata to an account
- DELDelete metadata by key
- GETGet statistics from a ledger
- GETList transactions from a ledger
- POSTCreate a new transaction to a ledger
- HEADCount the transactions from a ledger
- GETGet transaction from a ledger by its ID
- POSTSet the metadata of a transaction by its ID
- DELDelete metadata by key
- POSTRevert a ledger transaction by its ID
- GETGet the aggregated balances from selected accounts
- GETGet list of volumes with balances for (account/asset)
- GETList the logs from a ledger
- POSTPost apiledgerv2 logsimport
- POSTExport logs
- GET
- payments.v1
- payments.v3
- search.v1
- webhooks.v1
- wallets.v1
- orchestration.v1
- orchestration.v2
- reconciliation.v1
ledger.v2
Create a new transaction to a ledger
POST
/
api
/
ledger
/
v2
/
{ledger}
/
transactions
Copy
Ask AI
curl --request POST \
--url http://localhost:55001/api/ledger/v2/{ledger}/transactions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"timestamp": "2023-11-07T05:31:56Z",
"postings": [
{
"amount": 100,
"asset": "COIN",
"destination": "users:002",
"source": "users:001"
}
],
"script": {
"plain": "vars {\naccount $user\n}\nsend [COIN 10] (\n\tsource = @world\n\tdestination = $user\n)\n",
"vars": {
"user": "users:042"
}
},
"reference": "ref:001",
"metadata": {
"admin": "true"
}
}'
Copy
Ask AI
{
"data": {
"insertedAt": "2023-11-07T05:31:56Z",
"timestamp": "2023-11-07T05:31:56Z",
"postings": [
{
"amount": 100,
"asset": "COIN",
"destination": "users:002",
"source": "users:001"
}
],
"reference": "ref:001",
"metadata": {
"admin": "true"
},
"id": 1,
"reverted": true,
"revertedAt": "2023-11-07T05:31:56Z",
"preCommitVolumes": {
"orders:1": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
},
"orders:2": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
}
},
"postCommitVolumes": {
"orders:1": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
},
"orders:2": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
}
},
"preCommitEffectiveVolumes": {
"orders:1": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
},
"orders:2": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
}
},
"postCommitEffectiveVolumes": {
"orders:1": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
},
"orders:2": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
}
}
}
}
Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Headers
Use an idempotency key
Path Parameters
Name of the ledger.
Example:
"ledger001"
Query Parameters
Set the dryRun mode. dry run mode doesn't add the logs to the database or publish a message to the message broker.
Example:
true
Disable balance checks when passing postings
Example:
true
Body
application/json
The request body must contain at least one of the following objects:
postings
: suitable for simple transactionsscript
: enabling more complex transactions with Numscript
The body is of type object
.
Response
200
application/json
OK
The response is of type object
.
Copy
Ask AI
curl --request POST \
--url http://localhost:55001/api/ledger/v2/{ledger}/transactions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"timestamp": "2023-11-07T05:31:56Z",
"postings": [
{
"amount": 100,
"asset": "COIN",
"destination": "users:002",
"source": "users:001"
}
],
"script": {
"plain": "vars {\naccount $user\n}\nsend [COIN 10] (\n\tsource = @world\n\tdestination = $user\n)\n",
"vars": {
"user": "users:042"
}
},
"reference": "ref:001",
"metadata": {
"admin": "true"
}
}'
Copy
Ask AI
{
"data": {
"insertedAt": "2023-11-07T05:31:56Z",
"timestamp": "2023-11-07T05:31:56Z",
"postings": [
{
"amount": 100,
"asset": "COIN",
"destination": "users:002",
"source": "users:001"
}
],
"reference": "ref:001",
"metadata": {
"admin": "true"
},
"id": 1,
"reverted": true,
"revertedAt": "2023-11-07T05:31:56Z",
"preCommitVolumes": {
"orders:1": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
},
"orders:2": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
}
},
"postCommitVolumes": {
"orders:1": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
},
"orders:2": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
}
},
"preCommitEffectiveVolumes": {
"orders:1": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
},
"orders:2": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
}
},
"postCommitEffectiveVolumes": {
"orders:1": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
},
"orders:2": {
"USD": {
"input": 100,
"output": 10,
"balance": 90
}
}
}
}
}
Assistant
Responses are generated using AI and may contain mistakes.