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

# Get a Wage & Income transcript

> GET /transcripts/wage-and-income/{id}

Returns one Wage & Income transcript: one page of its information returns in `forms`, and a `summary` of the whole year.
See the [Transcripts overview](https://docs.taxrock.com/api-reference/transcripts/overview.md).


## OpenAPI

````yaml api-reference/openapi-direct.json GET /transcripts/wage-and-income/{id}
openapi: 3.1.0
info:
  title: TaxRock API (direct access)
  version: 1.0.0
  description: >-
    The TaxRock API with direct access: a credential issued for a TaxRock
    organization reads that organization's data. See Getting started.
servers:
  - url: https://api-demo.taxrock.com
    description: Sandbox
security:
  - bearerAuth: []
paths:
  /transcripts/wage-and-income/{id}:
    get:
      tags:
        - Transcripts
      summary: Get a Wage & Income transcript
      description: >-
        Returns one Wage & Income transcript: one page of its information
        returns (`forms`) and a `summary` of the whole year.
      operationId: getWageAndIncomeTranscript
      parameters:
        - name: id
          in: path
          required: true
          description: >-
            The transcript's `id`, from the taxpayer's list of Wage & Income
            transcripts.
          schema:
            type: string
            format: uuid
        - name: page
          in: query
          required: false
          description: The page number, from 1.
          schema:
            type: integer
            minimum: 1
            default: 1
        - name: pageSize
          in: query
          required: false
          description: Forms per page.
          schema:
            type: integer
            minimum: 1
            maximum: 1000
            default: 250
      responses:
        '200':
          description: The transcript with one page of its forms.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WageAndIncomeTranscript'
              example:
                id: 00000000-0000-4000-8000-000000000001
                taxpayerId: 00000000-0000-4000-8000-0000000000a2
                form:
                  name: ALL FORMS
                  taxYear: 2023
                  taxPeriod: 12
                  taxPeriodName: Annual
                createdAt: '2024-02-08T11:20:44Z'
                updatedAt: '2026-09-25T15:12:40Z'
                requestedDataNotFound: false
                summary:
                  groups:
                    - group: Earned
                      amount: 63514
                      lineCount: 1
                      classifications:
                        - classification: Wages
                          amount: 63514
                          lineCount: 1
                    - group: Investment
                      amount: 21
                      lineCount: 1
                      classifications:
                        - classification: Interest
                          amount: 21
                          lineCount: 1
                    - group: Withholding
                      amount: 3857
                      lineCount: 1
                      classifications:
                        - classification: FederalTaxWithheld
                          amount: 3857
                          lineCount: 1
                  forms:
                    - formName: 1099-DA
                      count: 1
                    - formName: 1099-INT
                      count: 1
                    - formName: W-2
                      count: 1
                forms:
                  - formName: 1099-DA
                    filer:
                      title: Filer
                      tin: '000000000'
                      name: EXAMPLE EXCHANGE
                      name2: null
                      addr1: 1 EXAMPLE ST
                      addr2: EXAMPLETOWN, XX 00000
                    taxpayer:
                      title: Recipient
                      tin: '000000000'
                      name: TAYLOR EXAMPLE
                      name2: null
                      addr1: 1 EXAMPLE ST
                      addr2: EXAMPLETOWN, XX 00000
                    lineItems:
                      - label: Number of Units
                        rawValue: '1234.5678'
                        type: Decimal
                        value: '1234.5678'
                        figureClassification: NoApplicableClassification
                  - formName: 1099-INT
                    filer:
                      title: Payer
                      tin: '000000000'
                      name: EXAMPLE BANK
                      name2: null
                      addr1: 1 EXAMPLE ST
                      addr2: EXAMPLETOWN, XX 00000
                    taxpayer:
                      title: Recipient
                      tin: '000000000'
                      name: TAYLOR EXAMPLE
                      name2: null
                      addr1: 1 EXAMPLE ST
                      addr2: EXAMPLETOWN, XX 00000
                    lineItems:
                      - label: Account Number
                        rawValue: 0000-0000-0000
                        type: String
                        value: 0000-0000-0000
                        figureClassification: NoApplicableClassification
                      - label: Interest
                        rawValue: $21.00
                        type: Currency
                        value: 21
                        figureClassification: Interest
                  - formName: W-2
                    filer:
                      title: Employer
                      tin: '000000000'
                      name: EXAMPLE EMPLOYER INC
                      name2: null
                      addr1: 1 EXAMPLE ST
                      addr2: EXAMPLETOWN, XX 00000
                    taxpayer:
                      title: Employee
                      tin: '000000000'
                      name: TAYLOR EXAMPLE
                      name2: null
                      addr1: 1 EXAMPLE ST
                      addr2: EXAMPLETOWN, XX 00000
                    lineItems:
                      - label: Wages, Tips and Other Compensation
                        rawValue: $63,514.00
                        type: Currency
                        value: 63514
                        figureClassification: Wages
                      - label: Federal Income Tax Withheld
                        rawValue: $3,857.00
                        type: Currency
                        value: 3857
                        figureClassification: FederalTaxWithheld
                page: 1
                pageSize: 250
                totalCount: 3
                hasNextPage: false
        '400':
          description: >-
            The `id` is not a valid UUID, or `page` or `pageSize` is not an
            integer. `error` is `invalid_request`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                invalidRequest:
                  summary: Malformed value
                  value:
                    error: invalid_request
                    message: The value 'abc' is not valid.
        '401':
          description: Missing or invalid access token. Get a new token.
        '403':
          description: >-
            `error` is `forbidden` when the credential is not set up for direct
            access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              examples:
                forbidden:
                  summary: Credential not set up for direct access
                  value:
                    error: forbidden
                    message: This client is not authorized for direct access.
        '404':
          description: >-
            The transcript does not exist or is outside the credential's
            organization. `error` is `not_found`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
              example:
                error: not_found
                message: Transcript not found.
components:
  schemas:
    WageAndIncomeTranscript:
      type: object
      description: One Wage & Income transcript with one page of its forms.
      required:
        - id
        - taxpayerId
        - form
        - createdAt
        - updatedAt
        - requestedDataNotFound
        - summary
        - forms
        - page
        - pageSize
        - totalCount
        - hasNextPage
      properties:
        id:
          type: string
          format: uuid
          description: The transcript's id.
        taxpayerId:
          type: string
          format: uuid
          description: The taxpayer's id.
        form:
          $ref: '#/components/schemas/TranscriptForm'
        createdAt:
          type: string
          format: date-time
          description: When TaxRock created this transcript record, in UTC.
        updatedAt:
          type: string
          format: date-time
          description: When TaxRock last updated this transcript record, in UTC.
        requestedDataNotFound:
          type: boolean
          description: True when the transcript holds no data for the year.
        summary:
          $ref: '#/components/schemas/WageAndIncomeSummary'
        forms:
          type: array
          items:
            $ref: '#/components/schemas/WageAndIncomeForm'
          description: The page's forms.
        page:
          type: integer
          description: The page number.
        pageSize:
          type: integer
          description: The page size.
        totalCount:
          type: integer
          description: Forms in the whole transcript.
        hasNextPage:
          type: boolean
          description: Whether another page follows.
    ApiError:
      type: object
      required:
        - error
        - message
      properties:
        error:
          type: string
          description: Machine-readable error code, e.g. `invalid_request` or `forbidden`.
        message:
          type: string
          description: Human-readable explanation.
    NotFoundError:
      type: object
      description: The 404 body of the transcript endpoints.
      required:
        - error
        - message
      properties:
        error:
          type: string
          enum:
            - not_found
          description: The error code.
        message:
          type: string
          description: Human-readable explanation.
    TranscriptForm:
      type: object
      description: The form, year and period a transcript covers.
      required:
        - name
        - taxYear
        - taxPeriod
        - taxPeriodName
      properties:
        name:
          type: string
          description: The form name in upper case, e.g. `1040`, `941` or `ALL FORMS`.
        taxYear:
          type: integer
          description: The tax year.
        taxPeriod:
          type: integer
          description: >-
            The period's last month: 12 for an annual form, or 3, 6, 9 or 12 for
            a quarterly one.
        taxPeriodName:
          type: string
          description: '`Annual`, or `Q1` to `Q4`.'
    WageAndIncomeSummary:
      type: object
      description: Totals for the whole transcript, the same on every page.
      required:
        - groups
        - forms
      properties:
        groups:
          type: array
          items:
            $ref: '#/components/schemas/FigureGroupTotal'
          description: Totals by group.
        forms:
          type: array
          items:
            $ref: '#/components/schemas/FormCount'
          description: Form counts by form name.
    WageAndIncomeForm:
      type: object
      description: One information return on a Wage & Income transcript.
      required:
        - formName
        - filer
        - taxpayer
        - lineItems
      properties:
        formName:
          type: string
          description: The information return type, e.g. `W-2` or `1099-B`.
        filer:
          allOf:
            - $ref: '#/components/schemas/Party'
          description: Who filed the form, e.g. the employer on a W-2.
        taxpayer:
          allOf:
            - $ref: '#/components/schemas/Party'
          description: Who the form is about, e.g. the employee on a W-2.
        lineItems:
          type: array
          items:
            $ref: '#/components/schemas/WageAndIncomeLineItem'
          description: The form's lines.
    FigureGroupTotal:
      type: object
      required:
        - group
        - amount
        - lineCount
        - classifications
      properties:
        group:
          $ref: '#/components/schemas/FigureClassificationGroup'
        amount:
          type: number
          description: The group's total.
        lineCount:
          type: integer
        classifications:
          type: array
          items:
            $ref: '#/components/schemas/FigureClassificationTotal'
    FormCount:
      type: object
      required:
        - formName
        - count
      properties:
        formName:
          type: string
          description: An information return type, e.g. `W-2`.
        count:
          type: integer
          description: How many forms of that type the transcript holds.
    Party:
      type: object
      description: A party printed on a Wage & Income form.
      required:
        - title
        - tin
        - name
        - name2
        - addr1
        - addr2
      properties:
        title:
          type: string
          description: The party's role as printed, e.g. `Employer` or `Payer`.
        tin:
          type: string
          description: The party's TIN.
        name:
          type:
            - string
            - 'null'
        name2:
          type:
            - string
            - 'null'
          description: A second name line.
        addr1:
          type:
            - string
            - 'null'
        addr2:
          type:
            - string
            - 'null'
    WageAndIncomeLineItem:
      type: object
      description: One line of a Wage & Income form.
      required:
        - label
        - rawValue
        - type
        - value
        - figureClassification
      properties:
        label:
          type: string
          description: The line's label as printed.
        rawValue:
          type: string
          description: The value as printed.
        type:
          $ref: '#/components/schemas/LineItemType'
        value:
          type:
            - number
            - string
            - 'null'
          description: >-
            The value: a number for `Currency`, `Percent` and `Int`, otherwise a
            string.
        figureClassification:
          $ref: '#/components/schemas/FigureClassification'
    FigureClassificationGroup:
      type: string
      enum:
        - None
        - OtherIncome
        - Earned
        - Investment
        - CapitalTransactions
        - RetirementAndBenefits
        - Withholding
        - NonIncome
      description: >-
        A summary group. Each group's `classifications` lists the
        classifications it totals.
    FigureClassificationTotal:
      type: object
      required:
        - classification
        - amount
        - lineCount
      properties:
        classification:
          $ref: '#/components/schemas/FigureClassification'
        amount:
          type: number
          description: The sum of the classification's `Currency` values.
        lineCount:
          type: integer
    LineItemType:
      type: string
      enum:
        - Currency
        - Date
        - Percent
        - Int
        - Decimal
        - String
      description: |-
        The kind of value a line holds:

        - `Currency`: an amount in dollars.
        - `Date`: a date, `YYYY-MM-DD`.
        - `Percent`: a percentage, e.g. `25` for 25 percent.
        - `Int`: a whole number.
        - `Decimal`: a decimal number, e.g. `"1234.5678"`.
        - `String`: text.
    FigureClassification:
      type: string
      enum:
        - NotClassified
        - NoApplicableClassification
        - OtherIncome
        - Wages
        - SelfEmploymentReceipts
        - GamblingWinnings
        - Interest
        - TaxExemptInterest
        - Dividends
        - RentsAndRoyalties
        - PartnershipAndSCorporationIncome
        - CapitalTransactionProceeds
        - CapitalTransactionBasis
        - WashSaleLossDisallowed
        - Section1256NetGain
        - RealEstateProceeds
        - RetirementDistributions
        - RetirementGrossDistribution
        - RetirementTaxableAmountNotDetermined
        - RetirementDistributionCode
        - SocialSecurity
        - UnemploymentCompensation
        - StateTaxRefund
        - EducationDistributions
        - HsaDistributions
        - CancellationOfDebt
        - FederalTaxWithheld
        - MortgageInterestPaid
        - RetirementContributions
        - AccountFairMarketValue
      description: >-
        The amount a Wage & Income line reports:


        - `NotClassified`: A line with no classification.

        - `NoApplicableClassification`: None of these, such as an identifier or
        a date.

        - `OtherIncome`: Taxable income no other value fits.

        - `SelfEmploymentReceipts`: Gross receipts of a trade or business.

        - `PartnershipAndSCorporationIncome`: K-1 income other than interest and
        dividends.

        - `CapitalTransactionProceeds`: Proceeds from sales of securities or
        digital assets.

        - `CapitalTransactionBasis`: Cost or basis of those sales.

        - `RetirementDistributions`: The taxable amount of a retirement
        distribution.

        - `RetirementGrossDistribution`: The gross amount of a retirement
        distribution.

        - `RetirementTaxableAmountNotDetermined`: Taxable amount not determined.

        - `MortgageInterestPaid`: Mortgage interest received from the borrower.

        - `RetirementContributions`: IRA, SEP or SIMPLE contributions, rollovers
        and conversions.

        - `AccountFairMarketValue`: Fair market value of a retirement, HSA or
        MSA account.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        The access token from the client credentials grant, sent as a Bearer
        credential.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.