---
title: "Get Paperwork Templates"
method: POST
path: "/paperwork/templates"
---

# Get Paperwork Templates

`POST /paperwork/templates`

## Request body

- GetPaperworkTemplatesRequest
  - `paperwork_type` 'W4' | 'I9' | 'W9' | 'CustomPaperwork' — Type of paperwork form.
  - `worker_type` 'Employee' | 'Contractor' | 'All' — Type of worker the form is applicable to.
  - `jurisdictions` JurisdictionFilter — Filter for jurisdictions where the form is applicable.
    - `type` 'all' | 'exclude' | 'include' — Type of jurisdiction filter.
    - `jurisdictions` string[] — List of jurisdictions to include or exclude.
  - `jurisdiction_type` 'WorkLocation' | 'Residency' | 'All' — Type of jurisdiction for the form.
  - `effective_date` string, date — Effective date for template retrieval.
  - `archive_date` string, date — Archive date for template retrieval.
  - `companyID` string, required — Unique identifier for Zeal company

## Response `200`

Successful response

- GetPaperworkTemplatesResponse
  - `templates` Template[]
    - `templateID` string — Unique identifier for the template.
    - `companyID` string — Unique identifier for Zeal company
    - `form_name` string — Name of the paperwork form.
    - `description` string — Description of the paperwork form.
    - `paperwork_type` 'W4' | 'I9' | 'W9' | 'CustomPaperwork' — Type of paperwork form.
    - `worker_type` 'Employee' | 'Contractor' | 'All' — Type of worker the form is applicable to.
    - `jurisdictions_filter` JurisdictionFilter — Filter for jurisdictions where the form is applicable.
      - `type` 'all' | 'exclude' | 'include' — Type of jurisdiction filter.
      - `jurisdictions` string[] — List of jurisdictions to include or exclude.
    - `jurisdiction_type` 'WorkLocation' | 'Residency' | 'All' — Type of jurisdiction for the form.
    - `effective_date` string, date — Date from which the template is effective.
    - `archive_date` string, date — Date when the template will be archived.
    - `form_fields` FormField[] — Array of form fields in the template.
      - `field_name` string — Internal field name.
      - `label` string — Label displayed for the field.
      - `error_text` string — Error message when field validation fails.
      - `type` string — Data type of the field.
      - `zeal_autofill` boolean — Whether the field should be autofilled by Zeal.
      - `required` boolean — Whether the field is required.
      - `options` object[] — List of options for select fields.
        - `label` string
        - `value` string
      - `constraint` object — Validation constraints for the field.
        - `min` number — Minimum value constraint.
        - `max` number — Maximum value constraint.
      - `description` string — Description of the field.
      - `x` integer — X-coordinate for field position on form.
      - `y` integer — Y-coordinate for field position on form.
      - `width` integer — Width of the field on the form.
      - `height` integer — Height of the field on the form.
    - `urls` string[] — List of URLs associated with the template.
    - `status` 'Draft' | 'Live' | 'Archived' — Current status of the template.

## Other responses

- `400` — Bad Request

---

[API](https://skmtc.net/zeal/apis/zeal-api.md) · [All operations](https://skmtc.net/zeal/apis/zeal-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zeal/zeal-api/versions/01346dceb27d/schema)
