---
title: "Book information"
method: GET
path: "/v1/book/info"
tags: ["Book Queries"]
---

# Book information

`GET /v1/book/info`

## Request

- Base URL: `https://api.ocrolus.com`
- URL: `https://api.ocrolus.com/v1/book/info`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://auth.ocrolus.com/oauth/token`

This API retrieves the details of a <<glossary:Book>>, including uploaded <<glossary:Document>>s, bank account information, and transaction periods.

## Query parameters

- `book_uuid` string, uuid
- `pk` string

## Response `200`

Success

- object
  - `status` integer: A numerical code that indicates the status of the request.
  - `response` object: An object received from the server that potentially contains data.
    - `name` string: Name of the <<glossary:Book>> from which information is retrieved.
    - `created` string: A timestamp of when the <<glossary:Book>> was created.
    - `created_ts` string: The timestamp at which <<glossary:Book>> was created.
    - `pk` integer: Unique primary key for the <<glossary:Book>>.
    - `owner_email` string: Name of the owner who has created the <<glossary:Book>>.
    - `is_public` boolean: Indicates if all users in your organization can see and upload document into this <<glossary:Book>>.
    - `book_uuid` string: Universally unique identifier (UUID) for the <<glossary:Book>>.
    - `id` integer: Unique identifier for the <<glossary:Book>>.
    - `xid` string, nullable: A free form field that can be used to associate a Book with some identity outside of Ocrolus.
    - `book_type` string: Determines what type of processing the Book will go through. Possible values: DEFAULT, INSTANT_ML, WIDGET.
    - `is_shared_or_public_book` boolean: Indicates if this <<glossary:Book>> is a public <<glossary:Book>> and can be shared with other users.
    - `docs` object[]: An array of all the document uploaded to the <<glossary:Book>>.
      - `pk` integer: Unique identifier (primary key) for the document.
      - `status` string: Processing status of the document.
      - `name` string: Name of the document.
      - `pages` integer: The total number of pages present in the document.
      - `md5` string, nullable: A cryptographic hash function used to secure the file by producing a fixed-length alphanumeric string as its output. It is commonly used to verify the integrity of a file by comparing the hash value of the original file with the hash value of the downloaded or received file.
      - `image_group_pk` integer, nullable: Unique identifier (primary key) for the image group associated with the document. Image group is a collection of images that consists of one or more images.
      - `mixed_uploaded_doc_pk` integer, nullable: Unique identifier (primary key) for the uploaded Mixed Document. A Mixed Document is a single or multipage PDF that contains more than one doc type.
      - `document_class` string: Document class indicating the processing type of the document.
      - `rejection_reason` string, nullable: Rejection reason if the document was rejected. Present only when the document's `status` is `REJECTED`.
      - `rejection_reason_description` string, nullable: Detailed description of the rejection reason. Present only when the document's `status` is `REJECTED`.
    - `mixed_docs` object[]: An array of all the Mixed Documents uploaded to the <<glossary:Book>>. A Mixed Document is a single or multipage PDF that contains more than one doc type. This array is optional and is only returned when the <<glossary:Book>> has Mixed Documents uploaded to it.
      - `pk` integer: Unique identifier (primary key) for the Mixed Document.
      - `status` string: Processing status of the Mixed Document.
      - `name` string: Name of the Mixed Document.
      - `pages` integer: The total number of pages present in the Mixed Document.
      - `md5` string, nullable: A cryptographic hash function used to secure the file by producing a fixed-length alphanumeric string as its output. It is commonly used to verify the integrity of a file by comparing the hash value of the original file with the hash value of the downloaded or received file.
      - `image_group_pk` integer, nullable: Unique identifier (primary key) for the image group associated with the Mixed Document. Image group is a collection of images that consists of one or more images.
      - `rejection_reason` string, nullable: An optional attribute that briefly explains why a Document was rejected. Present only when the mixed document's `status` is `REJECTED`.
      - `document_class` string: The processing type of the Document.
    - `bank_accounts` object: An object containing all bank accounts present in the <<glossary:Book>>, keyed by bank account PK.
      - `{bank_account_pk}` object: A bank account object keyed by its primary key.
        - `pk` integer: Primary key of the bank account.
        - `id` integer: ID of the bank account (same as pk).
        - `book_pk` integer: Primary key of the <<glossary:Book>> this bank account belongs to.
        - `name` string: Name of the bank account.
        - `bank_name` string: Name of the financial institution as extracted from the statement. Empty string if not yet linked to a recognized bank.
        - `activity_info` object: Coverage summary for this account, showing date ranges with and without transactional data.
          - `active` object[]: Statement periods that have at least one detected transaction.
            - `start` object: Start of the date range.
              - …
            - `end` object: End of the date range.
              - …
          - `missing` object[]: Periods within the account's date range that have no detected transactions.
            - `start` object: Start of the date range.
              - …
            - `end` object: End of the date range.
              - …
        - `account_type` string, nullable: Type of the account.
        - `account_holder` string: Name(s) of the account holder(s) as extracted from the statement. Multiple holders are newline-separated within a single string.
        - `account_number` string: Account number as extracted from the statement. Empty string when unavailable.
        - `holder_zip` string, nullable: Postal code of the account holder's address.
        - `holder_country` string, nullable: Country of the account holder's address.
        - `holder_state` string, nullable: State of the account holder's address.
        - `holder_city` string, nullable: City of the account holder's address.
        - `holder_address_1` string, nullable: First address line of the account holder's address.
        - `holder_address_2` string, nullable: Second address line of the account holder's address.
        - `account_category` string, nullable: Category label for the account, if set.
        - `member_id` string, nullable: Credit union member ID, if applicable.
        - `account_source` 'STANDARD_STATEMENT' | 'TRANSACTION_SUMMARY' | 'CREDIT_UNION' | 'VOA_PLAID' | 'VOA_BLEND' | 'VOA_FINICITY' | 'VOA_ACCOUNTCHEK' | 'VOA_OTHERS' | 'OTHERS', nullable: Source of the bank account data.
        - `periods` object[]: Statement periods covered by this bank account.
          - `pk` integer: Primary key of the statement period.
          - `uuid` string: UUID of the statement period.
          - `bank_account_pk` integer: Primary key of the bank account this period belongs to.
          - `begin_date` string: Start date of the statement period, in MM/DD/YYYY format.
          - `end_date` string: End date of the statement period, in MM/DD/YYYY format.
          - `begin_balance` string, nullable: Opening balance as a numeric string. null if the beginning balance could not be determined.
          - `end_balance` string, nullable: Closing balance as a numeric string. null if the ending balance could not be determined.
          - `primary_recon_error_reason` string, nullable: Primary reason for any reconciliation discrepancy in this period. Possible values include Potential Fraud, Incomplete Information, and Unreconciled Period.
          - `secondary_recon_error_reason` string, nullable: Secondary reason for a reconciliation discrepancy, if applicable. Possible values include Incomplete Transaction Data, Invalid Date(s), Photoshopped Data, Missing Period Data, Missing Page(s), Invalid Amount(s) Or Balance(s), and Reconciliation Error Reason Is Not Identified.
          - `absolute_recon_error` string: Absolute value of the reconciliation error as a numeric string.
          - `uploaded_doc_pk` integer, nullable: Primary key of the document from which this period was extracted.
        - `account_holders` string[]: Account holder names as a list (one per entry).
        - `wire_routing_number` string: Wire transfer routing number of the bank. This is an optional field and may not be present for all bank accounts.
        - `direct_dep_routing_number` string: Direct-deposit (ACH) routing number of the bank. This is an optional field and may not be present for all bank accounts.
    - `custom_filters` object: Custom filters applied to fine-tune results for this <<glossary:Book>>, keyed by filter PK.
      - `{filter_pk}` object: A custom filter object keyed by its primary key.
        - `pk` integer: Primary key of the custom filter.
        - `id` integer: ID of the custom filter (same as pk).
        - `created_ts` string: ISO timestamp when the filter was created.
        - `filter_name` string: Name of the filter.
        - `description` string, nullable: Description of the filter.
        - `filter_json` object: The filter's match criteria.
        - `org_info_pk` integer, nullable: Primary key of the organization this filter belongs to, if organization-scoped.
        - `account_pk` integer, nullable: Primary key of the account this filter belongs to, if account-scoped.
        - `book_pk` integer, nullable: Primary key of the Book this filter is scoped to, if Book-scoped.
        - `is_public` boolean: Whether the filter is visible to other users in the organization.
        - `is_hidden` boolean: Whether the filter is hidden from normal listings. Always false in this response.
        - `is_default` boolean: Whether this filter is applied by default.
    - `status_tags` object: An object containing the Status Tags associated with this <<glossary:Book>>, keyed by tag PK.
      - `{tag_pk}` object: A Status Tag object keyed by its primary key.
        - `pk` integer: The unique identifier (primary key) for the Status Tag.
        - `id` integer: The unique identifier for the Status Tag (same as pk).
        - `created_ts` string: The timestamp at which the Status Tag was created.
        - `tag_name` string: The name assigned to the Status Tag.
        - `color` string: Background color assigned to the Status Tag, as a hex code or color name.
        - `text_color` string, nullable: Text color assigned to the Status Tag, as a hex code. null if not set.
        - `is_status_tag` boolean: Indicates whether this tag is a Status Tag. Always true in this response.
        - `is_hidden` boolean: Determines if the Status Tag is hidden from normal listings. Always false in this response.
        - `org_info_pk` integer, nullable: The unique identifier (primary key) for the organization this Status Tag belongs to.
        - `config_name` string, nullable: The name of the configuration associated with this Status Tag, if any.
    - `book_class` 'COMPLETE' | 'INSTANT' | 'INSTANT_CLASSIFY_ONLY' | 'INSTANT_CLASSIFY_ISO_CAPTURE', nullable: Book class indicating the processing type of the Book.
  - `message` string: A textual description that indicates details about this response's status.

## Other responses

- `400`: Client Errors
- `500`: Internal server error

---

[API](https://skmtc.dev/ocrolus/apis/book-queries.md) - [All operations](https://skmtc.dev/ocrolus/apis/book-queries/llms.txt) - [OpenAPI document](https://skmtc.dev/ocrolus/apis/book-queries/revisions/cbe5b52f5b26?raw)
