---
title: "GET /v1/portfolios/{portfolioSlug}/journal-entries/{journalEntryId}"
method: GET
path: "/v1/portfolios/{portfolioSlug}/journal-entries/{journalEntryId}"
tags: ["Portfolios"]
---

# GET /v1/portfolios/{portfolioSlug}/journal-entries/{journalEntryId}

`GET /v1/portfolios/{portfolioSlug}/journal-entries/{journalEntryId}`

## Request

- Base URL: `https://api.tokenbooks.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.tokenbooks.io/v1/portfolios/{portfolioSlug}/journal-entries/{journalEntryId}`
- Auth: API key in header `x-api-key`

## Path parameters

- `journalEntryId` string, required
- `portfolioSlug` string, required

## Response `200`

- JournalEntryResponseDto
  - `id` string, required: Journal entry ID
  - `timestamp` string, required: Entry timestamp (ISO 8601)
  - `status` string, required: Journal entry status
  - `memo` string, nullable, required: User memo
  - `systemNotes` string, nullable, required: System-generated notes
  - `isAdjustment` boolean, required: Whether this is an adjustment entry
  - `portfolioTransactionId` string, nullable, required: Originating portfolio transaction ID, if any
  - `operationType` string, nullable, required: Operation type of the originating transaction
  - `subType` string, nullable, required: Operation sub-type of the originating transaction
  - `adjustmentJournalImportProvenance` object, nullable: Adjustment-import provenance with immutable file and source-row facts and the uploader's current display name, or null for a non-imported journal
    - `importRef` string, required
    - `sourceFile` object, required
      - `name` string, required
      - `uploadedAt` string, date-time, required
      - `uploader` object, required
        - `name` string, required
    - `sourceRows` object[], required
      - `appliedResolutions` object, required
        - `schemaVersion` 1, required
        - `values` object, required
      - `entryId` string, required
      - `journalLineNumber` integer, required
      - `locator` union, required
        - object
          - `format` 'csv', required: Source file format.
          - `lineNumber` integer, required: 1-based line number in the CSV file.
        - object
          - `format` 'xlsx', required: Source file format.
          - `rowNumber` integer, required: 1-based row number within the sheet.
          - `sheetName` string, required: Worksheet the row belongs to.
      - `normalizedValues` union, required
        - object
          - `schemaVersion` 1, required
          - `values` object, required
        - object
          - `schemaVersion` 2, required
          - `values` object, required
      - `sourceRowHash` string, required
  - `lines` object[], required: Debit/credit lines, ordered by line number
    - `lineNumber` integer, required: Line ordinal within the entry
    - `entryType` string, required: DR (debit) or CR (credit)
    - `accountName` string, nullable, required: Ledger account name
    - `accountNumber` string, nullable, required: Chart-of-accounts number
    - `accountType` string, nullable: Ledger account type
    - `accountSubType` string, nullable: Ledger account sub-type
    - `accountNormalBalanceType` string, nullable: Ledger account normal balance side
    - `fiatAmount` string, required: Fiat amount (decimal string)
    - `assetId` string, nullable, required: Asset ID when the line is asset-denominated
    - `assetSymbol` string, nullable, required: Asset symbol
    - `assetAmount` string, nullable, required: Asset quantity (decimal string)
    - `memo` string, nullable, required: Line memo
    - `responsibilityCenterAssignments` object[], required: Typed responsibility-center assignments, one per dimension, ordered by type sort order
      - `responsibilityCenterTypeId` string, required: Responsibility-center type ID used by edit commands
      - `responsibilityCenterId` string, required: Responsibility-center ID used by edit commands
      - `value` string, required: Filter-options-compatible public value for this assignment
      - `responsibilityCenterType` object, required: The dimension this assignment classifies the line under
        - `key` string, required: Stable type slug (e.g. primary, goal)
        - `name` string, required: Responsibility-center type name
        - `kind` 'COST' | 'REVENUE' | 'PROFIT' | 'INVESTMENT', required: Managerial taxonomy of the type
      - `responsibilityCenterName` string, required: Assigned responsibility-center name
      - `responsibilityCenterCode` string, nullable, required: Stable code of the center within its type, if any
      - `percentageBps` integer, required: Allocation in basis points (10000 = 100%)
    - `counterpartyName` string, nullable, required: Counterparty name
    - `lot` object, nullable, required: Cost-basis lot lineage when the line realizes gains/losses
      - `id` string, required: Lot identifier (e.g. BTC_001)
      - `entryId` string, required: Unique lot ledger entry ID
      - `entryKind` string, required: Lot entry kind (ADD, DSP, CUT, MVE, RES, REL)
      - `lotMethod` string, required: Lot accounting method (FIFO, LIFO, HIFO, ACB)
    - `transfer` object, nullable, required: Wallet transfer lineage when the line maps to an on-chain transfer
      - `txIndex` integer, nullable, required: Transfer index within the tx
      - `chainId` string, nullable, required: Chain ID of the transfer
      - `txHash` string, nullable, required: On-chain transaction hash

---

[API](https://skmtc.dev/tokenbooks/apis/tokenbooks-public-api.md) · [All operations](https://skmtc.dev/tokenbooks/apis/tokenbooks-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tokenbooks/apis/tokenbooks-public-api/revisions/180622e6255e?raw)
