Skip to main content
POST
Create an Instrument Account

Headers

Content-Type
string

The type of media of the resource. Recommended value is application/json.

X-Request-Id
string<uuid>

A unique identifier used to trace and track each request.

Authorization
string

Bearer JWT token for authentication. Required when PLUGIN_AUTH_ENABLED=true (enforced in multi-tenant deployments). Optional in default OSS single-tenant mode. Format: Bearer <token>

X-Idempotency
string

A unique key that ensures transaction idempotency. If not provided, the system automatically generates a SHA-256 hash based on the request body. Keys are scoped per organization and ledger.

Always validate the X-Idempotency-Replayed response header to distinguish new transactions from cached replays.

See Retries and idempotency for best practices.

X-TTL
integer

The time-to-live for the idempotency key, defined in seconds. Defaults to 300 seconds (5 minutes) if not provided. Only the TTL from the first request is used; changing it on retries has no effect.

See Retries and idempotency for details.

Path Parameters

organization_id
string<uuid>
required

The unique identifier of the Organization associated with the Ledger.

holder_id
string
required

Holder ID (UUID)

Body

application/json
accountId
string<uuid> | null
required
Example:

"00000000-0000-0000-0000-000000000000"

createdAt
string<date-time>
required
Example:

"2025-01-01T00:00:00Z"

deletedAt
string<date-time> | null
required
Example:

"2025-01-01T00:00:00Z"

holderId
string<uuid>
required
Example:

"00000000-0000-0000-0000-000000000000"

ledgerId
string<uuid> | null
required
Example:

"00000000-0000-0000-0000-000000000000"

updatedAt
string<date-time>
required
Example:

"2025-01-01T00:00:00Z"

bankingDetails
object
document
string
Maximum string length: 100
Example:

"91315026015"

id
string<uuid>
Example:

"00000000-0000-0000-0000-000000000000"

metadata
object
regulatoryFields
object
type
string
Maximum string length: 100
Example:

"NATURAL_PERSON"

Response

OK

accountId
string<uuid> | null
required
Example:

"00000000-0000-0000-0000-000000000000"

createdAt
string<date-time>
required
Example:

"2025-01-01T00:00:00Z"

deletedAt
string<date-time> | null
required
Example:

"2025-01-01T00:00:00Z"

holderId
string<uuid>
required
Example:

"00000000-0000-0000-0000-000000000000"

ledgerId
string<uuid> | null
required
Example:

"00000000-0000-0000-0000-000000000000"

updatedAt
string<date-time>
required
Example:

"2025-01-01T00:00:00Z"

bankingDetails
object
document
string
Maximum string length: 100
Example:

"91315026015"

id
string<uuid>
Example:

"00000000-0000-0000-0000-000000000000"

metadata
object
regulatoryFields
object
type
string
Maximum string length: 100
Example:

"NATURAL_PERSON"