Skip to main content
PARIXDocs

tb

Command reference for parix tb.

parix tb runs TigerBeetle operations against a Parix database.

parix tb --help

Each command sends a request to:

POST /api/v1/databases/{databaseId}/tb/{operation}

Read operations require db:read. Create operations require db:write.

Commands

CommandAPI operationPurpose
create-accountscreate_accountsCreate TigerBeetle accounts.
create-transferscreate_transfersCreate TigerBeetle transfers.
lookup-accountslookup_accountsLookup accounts by ID.
lookup-transferslookup_transfersLookup transfers by ID.
get-account-transfersget_account_transfersGet transfers for one account.
get-account-balancesget_account_balancesGet balances for one account.
query-accountsquery_accountsQuery accounts.
query-transfersquery_transfersQuery transfers.

Shared options

Most parix tb subcommands accept:

OptionDescription
-b, --base-url <url>Parix base URL.
--jsonPrint raw JSON.
--payload <json>Raw JSON payload override.
--file <path>Read JSON payload from a file.
-h, --helpDisplay command help.

Payload resolution order:

  1. --file
  2. --payload
  3. command flags

When using command flags, required values are validated by the CLI. When using --payload or --file, send the exact JSON payload expected by the Parix TigerBeetle API.

create-accounts

parix tb create-accounts [options] <database-id>

Options:

OptionDescription
--id <id>Account ID. Defaults to a generated ID.
--ledger <ledger>Ledger ID. Required unless using --payload or --file.
--code <code>Account code. Required unless using --payload or --file.
--flag <flag>Account flag name or bitfield value. Repeatable.
--user-data-128 <value>user_data_128.
--user-data-64 <value>user_data_64.
--user-data-32 <value>user_data_32.

Examples:

parix tb create-accounts db_123 --id 1000 --ledger 1 --code 1
parix tb create-accounts db_123 --payload '[{"id":"1000","ledger":"1","code":"1","flags":"0"}]'

create-transfers

parix tb create-transfers [options] <database-id>

Options:

OptionDescription
--id <id>Transfer ID. Defaults to a generated ID.
--from <id>Debit account ID. Required unless using --payload or --file.
--to <id>Credit account ID. Required unless using --payload or --file.
--amount <amount>Transfer amount. Required unless using --payload or --file.
--ledger <ledger>Ledger ID. Required unless using --payload or --file.
--code <code>Transfer code. Required unless using --payload or --file.
--flag <flag>Transfer flag name or bitfield value. Repeatable.
--pending-id <id>Pending transfer ID.
--timeout <ms>Timeout value.

Examples:

parix tb create-transfers db_123 --id 2000 --from 1000 --to 1001 --amount 1 --ledger 1 --code 1
parix tb create-transfers db_123 --file ./transfer.json

lookup commands

parix tb lookup-accounts [options] <database-id>
parix tb lookup-transfers [options] <database-id>

Options:

OptionDescription
--id <id>ID to lookup. Repeatable.
--ids <ids>Comma-separated IDs to lookup.

Examples:

parix tb lookup-accounts db_123 --id 1000 --id 1001
parix tb lookup-transfers db_123 --ids 2000,2001

At least one --id or --ids value is required unless you use --payload or --file.

account filter commands

parix tb get-account-transfers [options] <database-id>
parix tb get-account-balances [options] <database-id>

Options:

OptionDescription
--account-id <id>Account ID. Required unless using --payload or --file.
--limit <limit>Maximum row count. Defaults to 100.
--flag <flag>Filter flag name or bitfield value. Repeatable.
--timestamp-min <value>Minimum timestamp.
--timestamp-max <value>Maximum timestamp.
--user-data-128 <value>user_data_128.
--user-data-64 <value>user_data_64.
--user-data-32 <value>user_data_32.
--code <code>Filter code.

Examples:

parix tb get-account-transfers db_123 --account-id 1000 --limit 10 --flag debits
parix tb get-account-balances db_123 --account-id 1000 --limit 10 --flag credits

query commands

parix tb query-accounts [options] <database-id>
parix tb query-transfers [options] <database-id>

Options:

OptionDescription
--limit <limit>Maximum row count. Defaults to 100.
--flag <flag>Query flag name or bitfield value. Repeatable.
--ledger <ledger>Filter ledger.
--code <code>Filter code.
--timestamp-min <value>Minimum timestamp.
--timestamp-max <value>Maximum timestamp.
--user-data-128 <value>user_data_128.
--user-data-64 <value>user_data_64.
--user-data-32 <value>user_data_32.

Examples:

parix tb query-accounts db_123 --limit 10
parix tb query-transfers db_123 --ledger 1 --limit 10 --json

Flags

--flag accepts either a non-negative integer bitfield or one of the supported flag names:

linked
debits_must_not_exceed_credits
credits_must_not_exceed_debits
history
imported
closed
pending
post_pending_transfer
void_pending_transfer
balancing_debit
balancing_credit
closing_debit
closing_credit
debits
credits
reversed

Repeat --flag to combine flags:

parix tb query-transfers db_123 --flag debits --flag reversed

Output

Without --json, the CLI prints execution metadata, the TigerBeetle documentation URL returned by the API, and the response payload. With --json, it prints the full raw API response.