Create a Journal

A journal can be JNLC (move cash) or JNLS (move shares), dictated by entry_type. Generally, journal requests are subject to approval and starts from the pending status. The status changes are propagated through the Event API. Under certain conditions agreed for the partner, such journal transactions that meet the criteria are executed right away.

Idempotency: When the Idempotency-Key header is supplied, this endpoint is idempotent. Multiple requests with the same key and identical request body will create only one journal. A subsequent request returns the previously created journal with the same response (no duplicate is created). If the same key is used with a different request body, the API returns 422 Unprocessable Entity.

Recommended for production: Always supply Idempotency-Key when creating journals. This allows safe retries on timeouts, network errors, or 5xx responses without risking duplicate journals. Use a client-generated unique value (e.g. UUID).

Body Params
uuid
required
length ≥ 1

The account_id you wish to journal to

uuid
required
length ≥ 1

The account_id you wish to journal from

string
enum
required

This enum represents the various kinds of Journal alpaca supports.

Current values are:

  • JNLC

    Journal Cash between accounts

  • JNLS

    Journal Securities between accounts

Allowed:
string

Required if entry_type = JNLC

string

Required if entry_type = JNLS

string

Required if entry_type = JNLS

string
length ≤ 1024

Max 1024 characters. Can include fixtures for amounts that are above the transaction limit

string
length ≤ 255

Max 255 characters. See more details about Travel Rule in our main documentation.

string
length ≤ 255

Max 255 characters. See more details about Travel Rule in our main documentation.

string
length ≤ 255

Max 255 characters. See more details about Travel Rule in our main documentation.

string
length ≤ 255

Max 255 characters. See more details about Travel Rule in our main documentation.

date-time

RFC 3339 format. See more details about Travel Rule in our main documentation.

string
Headers
string

Unique key for idempotent create. When supplied, duplicate requests (same key and body) return the original journal instead of creating a new one. Use a client-generated value (e.g. UUID) per logical journal. Strongly recommended for production to prevent duplicate journals on retries.

Responses

Language
Credentials
Basic
base64
:
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json