{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/alpaca/json-schema/alpaca-create-journal-request-schema.json",
  "title": "CreateJournalRequest",
  "description": "Journals API allows you to move cash or securities from one account to another.\n\nThis model represents the fields you can specify when creating a Journal\n\nFixture Rules\n\n- No Fixtures\n  - anything below limit is executed immediately\n  - anything above limit is pending until executed at EOD,\n- With Fixtures\n  - any status = rejected will be rejected EOD\n  - any status = pending will be pending forever",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/alpaca-journals-api-openapi.yml#/components/schemas/CreateJournalRequest",
  "type": "object",
  "properties": {
    "to_account": {
      "type": "string",
      "minLength": 1,
      "format": "uuid",
      "description": "The account_id you wish to journal to"
    },
    "from_account": {
      "type": "string",
      "minLength": 1,
      "format": "uuid",
      "description": "The account_id you wish to journal from"
    },
    "entry_type": {
      "$ref": "#/$defs/JournalEntryType"
    },
    "amount": {
      "type": "string",
      "description": "Required if `entry_type` = `JNLC`"
    },
    "symbol": {
      "type": "string",
      "description": "Required if `entry_type` = `JNLS`"
    },
    "qty": {
      "type": "string",
      "description": "Required if `entry_type` = `JNLS`"
    },
    "description": {
      "type": "string",
      "description": "Max 1024 characters. Can include fixtures for amounts that are above the transaction limit",
      "maxLength": 1024
    },
    "transmitter_name": {
      "type": "string",
      "maxLength": 255,
      "description": "Max 255 characters. See more details about [Travel Rule](https://alpaca.markets/docs/broker/integration/funding/#travel-rule) in our main documentation."
    },
    "transmitter_account_number": {
      "type": "string",
      "maxLength": 255,
      "description": "Max 255 characters. See more details about [Travel Rule](https://alpaca.markets/docs/broker/integration/funding/#travel-rule) in our main documentation."
    },
    "transmitter_address": {
      "type": "string",
      "maxLength": 255,
      "description": "Max 255 characters. See more details about [Travel Rule](https://alpaca.markets/docs/broker/integration/funding/#travel-rule) in our main documentation."
    },
    "transmitter_financial_institution": {
      "type": "string",
      "maxLength": 255,
      "description": "Max 255 characters. See more details about [Travel Rule](https://alpaca.markets/docs/broker/integration/funding/#travel-rule) in our main documentation."
    },
    "transmitter_timestamp": {
      "type": "string",
      "description": "RFC 3339 format. See more details about [Travel Rule](https://alpaca.markets/docs/broker/integration/funding/#travel-rule) in our main documentation.",
      "format": "date-time"
    }
  },
  "required": [
    "to_account",
    "from_account",
    "entry_type"
  ],
  "$defs": {
    "JournalEntryType": {
      "type": "string",
      "title": "",
      "description": "This enum represents the various kinds of Journal alpaca supports.\n\nCurrent values are:\n\n- **JNLC**\n\n  Journal Cash between accounts\n\n- **JNLS**\n\n  Journal Securities between accounts",
      "enum": [
        "JNLC",
        "JNLS"
      ]
    }
  }
}