> ## Documentation Index
> Fetch the complete documentation index at: https://docs.truv.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieve document

> The endpoint returns a document.



## OpenAPI

````yaml GET /v1/links/{link_id}/documents/{doc_id}/
openapi: 3.0.1
info:
  title: Truv API
  description: Truv API Documentation
  termsOfService: https://www.truv.com/legal/terms-of-use
  contact:
    email: support@truv.com
  version: v1
servers:
  - url: https://prod.truv.com
security:
  - ClientID: []
    AccessKey: []
tags:
  - name: Users
  - name: Bridge Token
  - name: Companies and Data Providers
  - name: Key Management
  - name: Account Links
  - name: Data Refresh
  - name: Customization Templates
  - name: Webhooks
  - name: Orders
  - name: Tasks
  - name: VOIE Reports
  - name: VOA Reports
  - name: Income Insights Reports
  - name: DDS Reports
  - name: Employment
  - name: Identity
  - name: Shifts
  - name: Pay Statements
  - name: Tax Documents
  - name: Parsed Documents
  - name: Reports
  - name: Uploaded Documents
  - name: Bank Accounts
  - name: Bank Statements
  - name: Deposit Switch Reports
  - name: Insurance Reports
  - name: Income Report
  - name: Scoring Attributes
  - name: Accounts
  - name: Transactions
  - name: Recurring Transactions
  - name: Document Collections
paths:
  /v1/links/{link_id}/documents/{doc_id}/:
    parameters:
      - name: link_id
        in: path
        description: Link ID
        required: true
        schema:
          type: string
        example: 24d7e80942ce4ad58a93f70ce4115f5c
      - name: doc_id
        in: path
        description: Document ID
        required: true
        schema:
          type: string
        example: 09e9bda2414c42bcb4dab5240b9013b6
    get:
      tags:
        - Uploaded Documents
      summary: Retrieve document
      description: The endpoint returns a document.
      operationId: retrieve-document
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Document'
        '401':
          description: HTTP 401 Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error401'
        '403':
          description: HTTP 403 Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error403'
components:
  schemas:
    Document:
      required:
        - filename
      type: object
      properties:
        id:
          title: id
          description: Document ID
          type: string
          readOnly: true
          example: 24d7e80942ce4ad58a93f70ce4115f5c
        type:
          title: type
          description: >
            Document type.


            `OTHER` documents are captured only: end users can upload arbitrary
            files that Truv does not parse into structured data. These documents
            are not parsed, but you can still collect them through the Uploaded
            Documents API. `OTHER` is only returned when the `other` document
            type is enabled in the document upload settings of your
            customization template.
          type: string
          enum:
            - PAYSTUB
            - W2
            - F1099
            - F1040
            - VOLUNTEER_LETTER
            - INSURANCE_HOME_POLICY
            - INSURANCE_AUTO_POLICY
            - OTHER
          readOnly: true
          example: W2
        subtype:
          title: subtype
          description: Document subtype
          type: string
          example: F1099_DIV
          enum:
            - F1099_DIV
            - F1099_G
            - F1099_INT
            - F1099_MISC
            - F1099_NEC
            - F1099_R
            - F_SSA1099
            - null
          readOnly: true
          nullable: true
        file:
          title: file
          description: Document file link. The file could be absent or partially uploaded.
          type: string
          format: uri
          readOnly: true
          example: https://cdn.truv.com/doc_upload/most.recent.paystub.pdf
        filename:
          title: filename
          description: Document file name
          type: string
          readOnly: true
          example: most.recent.paystub.pdf
        mimetype:
          title: mimetype
          description: Document mimetype
          type: string
          readOnly: true
          example: application/pdf
        created_at:
          title: created_at
          description: Date when a document was uploaded
          type: string
          format: date-time
          readOnly: true
        updated_at:
          title: updated_at
          description: Date when a document was updated
          type: string
          format: date-time
          readOnly: true
    Error401:
      description: ''
      type: object
      properties:
        error:
          description: ''
          type: object
          properties:
            code:
              description: ''
              type: string
              example: authentication_failed
            message:
              description: ''
              type: string
              example: No such token
    Error403:
      description: ''
      type: object
      properties:
        error:
          description: ''
          type: object
          properties:
            code:
              description: ''
              type: string
              example: not_authenticated
            message:
              description: ''
              type: string
              example: Authentication credentials were not provided.
  securitySchemes:
    ClientID:
      type: apiKey
      description: Client ID
      name: X-Access-Client-Id
      in: header
    AccessKey:
      type: apiKey
      description: Client Access Key
      name: X-Access-Secret
      in: header

````