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

# Return blank and unflattened PDF by id

> Return blank and unflattened PDF for requested form id.



## OpenAPI

````yaml /spf/api-reference/payroll-forms-api.yaml get /getPdf/{formId}
openapi: 3.0.1
info:
  title: SPF Api
  contact:
    name: Symmetry Software
    url: https://www.symmetry.com
    email: support@symmetry.com
  license:
    name: Symmetry Software/Subscription & Service Agreement
    url: http://www.symmetry.com/software-subscription-license
  version: 1.94.0
  x-release-name:
    value: 2026.7.1
  x-endpoint-versions:
    fill_pdf_post_version: 1.95.0
    forms_version: 1.95.0
    form_questions_version: 1.95.0
    docs_version: 1.93.0
    guided_flows_version: 1.95.0
    flow_questions_version: 1.95.0
    getPdf_version: 1.95.0
    ste_mapping_version: 1.1.0
    fill_pdf_get_version: 1.95.0
    /v2/forms_version: 1.95.0
    form_ids_version: 1.95.0
    form_catalog_version: 1.87.0
servers:
  - url: https://api.symmetry.com/spf
    description: prod2
security: []
tags:
  - name: Forms
    description: Determine all applicable forms and retrieve information for each
  - name: Questions
    description: Retrieve form and guide flow questions
  - name: PDF and Tax Parameters
    description: Retrieve pdf and tax parameter schemas and generate filled documents
  - name: Documentation
    description: Retrieve OpenApi configuration yaml and use it to generate a client api
  - name: Postman
    description: Resources for Postman
  - name: STE Mapping
    description: Retrieve SPF-to-STE tax parameter mappings
paths:
  /getPdf/{formId}:
    get:
      tags:
        - PDF and Tax Parameters
      summary: Return blank and unflattened PDF by id
      description: Return blank and unflattened PDF for requested form id.
      operationId: getPdf
      parameters:
        - name: formId
          in: path
          required: true
          schema:
            $ref: '#/components/schemas/WithholdingForm'
        - name: formVersion
          in: query
          required: false
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/pdf:
              schema:
                type: string
                format: binary
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              example:
                path: uri=/spf/getPdf/AL102
                status: Not Found
                statusCode: 404
                timestamp: '2020-01-01 12:00:00'
                errors:
                  - message: >-
                      Withholding form AL102 does not exist,expected values:
                      [W4101,W4101SP,W6101,W8101,AL101,AL101SP,AL103,AR101,AR102,AR103,AR104,AR105,AZ101,AZ102,AZ103,AZ107,CA101,CA101SP,CO102,CT101,CT102,DC101,DC102,DE101,DE103,GA101,HI101,HI103,IA101,IA101SP,IA102,ID101,ID102,IL101,IL102,IN101,IN102,IN104,KS101,KS102,KY101,LA101,LA102,MA101,MA102,MD101,MD102,ME101,ME102,MI101,MI110,MI111,MI112,MI113,MI114,MI115,MI116,MI117,MI118,MI119,MI120,MI121,MI122,MI123,MI124,MI125,MI126,MI127,MI128,MI129,MI130,MI131,MI132,MN102,MN103,MO101,MO102,MO103,MS101,MT101,NC101,NC102,NC103,ND101,ND104,ND105,NE101,NE103,NJ101,NJ102,NM101,NM102,NY101,NY102,NY103,NY105,NY106,NY107,NY108,OH101,OK101,OK102,OR101,PA103,PA112,PA113,PA114,PR101,PR101SP,RI101,SC101,UT101,VA101,VA102,VT101,WI101,WI102,WI103,WI107,WV101,WV102,WV103]
                    rejectedValue: AL102
                errorCount: 1
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ApiError'
        '404':
          description: ''
          content: {}
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ApiError'
      security:
        - jwtToken: []
components:
  schemas:
    WithholdingForm:
      type: string
      description: >-
        Form IDs - Use the /getAllFormIds endpoint to get all withholding form
        IDs available
    ApiError:
      type: object
      properties:
        path:
          type: string
        status:
          type: string
        statusCode:
          type: integer
          format: int32
        timestamp:
          type: string
          format: date-time
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ValidationError'
        errorCount:
          type: integer
          format: int32
    ValidationError:
      type: object
      properties:
        field:
          type: string
        message:
          type: string
        rejectedValue:
          type: string
  securitySchemes:
    jwtToken:
      type: http
      scheme: bearer
      bearerFormat: JWT

````