---
title: "Import Plaid Asset Report"
method: POST
path: "/v1/book/import/plaid/asset"
tags: ["File Uploads"]
---

# Import Plaid Asset Report

`POST /v1/book/import/plaid/asset`

Import an Asset Report directly from Plaid and construct a <<glossary:Document>> from it.

---


With fully automated workflows in mind, Ocrolus and [Plaid](https://plaid.com) offer the ability to directly import the Asset Report of any customer who has provided Bank Account details via Plaid - without you having to explicitly download and handle the JSON report.

To achieve this, Plaid will ask you to [share an Audit Copy](https://plaid.com/docs/#4-share-an-audit-copy) of the Asset Report directly with Ocrolus.

Next, Ocrolus will use the provided `audit_copy_token` to extract the associated Audit Report from Plaid. This _must_ be a production token, as Ocrolus does not support sandbox tokens.

Then, Ocrolus will import the Audit Report into the specified <<glossary:Book>>. 
> 📘 
> Creating an Audit Copy Token
> - You can create an **Audit Copy Token** with Plaid using our auditor_id of `ocrolus`. Use this value when invoking the `createAuditCopy` function on the Plaid client object.

> 🚧 
> Due to masking of account numbers in Plaid data, we are unable to reconcile bank accounts across Plaid data and PDF bank statements. Mixing such uploads within the same book may result in duplicate bank accounts, periods and transactions.

## Request body

- object
  - `pk` integer, required — The <<glossary:PK>> of the <<glossary:Book>> that the constructed <<glossary:Document>> will be saved to.
  - `audit_copy_token` string, required — Asset Report copy token provided by Plaid.
  - `form_type` string — The code identifying the type of <<glossary:Document>> that you're uploading.
  - `doc_name` string — The name of the <<glossary:Document>> that will be created from the imported data. Defaults to `audit_copy_token` if not given.

## Response `200`

Success

- union
  - object
    - `status` integer — A numerical code that indicates the status of the request.
    - `message` string — A textual description that indicates details about this response's status.
    - `response` object — An object received from the server that potentially contains data.
      - `uploaded_docs` object[]
        - `created_ts` string — A timestamp of when the <<glossary:Document>> was created.
        - `name` string — The name of the created <<glossary:Document>>.
        - `checksum` string — An alphanumerical value used to determine the authenticity of the data.
        - `pk` integer — The unique primary key of the <<glossary:Document>>.
        - `uuid` integer — The unique identifier of the <<glossary:Document>>.
  - object
    - `status` integer — A numerical code that indicates the status of the request.
    - `message` string — A textual description that indicates details about this response's status.
    - `response` object — An object received from the server that potentially contains data.
      - `status` integer — A numerical code that indicates the status of the request.
      - `message` string — A textual description that indicates details about this response's status.

## Other responses

- `400` — Client Errors

---

[API](https://skmtc.net/ocrolus/apis/user-management.md) · [All operations](https://skmtc.net/ocrolus/apis/user-management/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ocrolus/user-management/versions/3571ef602d13/schema)
