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

# Update a form

> Endpoint to update a Form.

The following example is for a 2026 TD1, but the response fields will differ depending on the specific Form instance requested.



## OpenAPI

````yaml /spec/openapi.json put /forms/{form}
openapi: 3.0.0
info:
  title: Nmbr API
  description: API to interact with Nmbr Payroll
  version: 1.0.0
servers:
  - url: https://sandbox.nmbr.co/services/payroll
security:
  - CompanyToken: []
tags:
  - name: Accounting Codes
  - name: Accounting Code Rules
  - name: Adjustments
  - name: Allowances
  - name: Allowance Line Items
  - name: Allowance Types
  - name: Async Tasks
  - name: Bank Accounts
  - name: Business Entities
  - name: Business Entity Verifications
  - name: Business Entity ROE Authorizations
  - name: Business Presets
  - name: Calculations
  - name: Companies
  - name: Contractors
  - name: Deductions
  - name: Deduction Line Items
  - name: Deduction Types
  - name: Earnings
  - name: Earning Line Items
  - name: Earning Types
  - name: Effective Tax Properties
  - name: Employees
  - name: Employee Benefits
  - name: Employee Benefit Line Items
  - name: Employee Benefit Types
  - name: Employer Benefits
  - name: Employer Benefit Line Items
  - name: Employer Benefit Types
  - name: Employer Statutory Withholding Line Items
  - name: Employer Statutory Withholding Types
  - name: Forms
  - name: Form Batches
  - name: Form Types
  - name: Holidays
  - name: Integrations
  - name: Journal Entries
  - name: Overtime Rates
  - name: Partners
  - name: Pay Rates
  - name: Pay Schedules
  - name: Pay Splits
  - name: Pay Stubs
  - name: Payments
  - name: Payrolls
  - name: Reimbursements
  - name: Reimbursement Line Items
  - name: Reimbursement Types
  - name: Remittance Accounts
  - name: Remittance Account Enrollments
  - name: Reports
  - name: Statutory Withholding Line Items
  - name: Statutory Withholding Types
  - name: Tags
  - name: Tag Groups
  - name: Tax Properties
  - name: Tax Property Templates
  - name: Tokens
  - name: Usage Records
  - name: Usage Summaries
  - name: Vacation Pay
  - name: Vacation Pay Settings
  - name: Webhooks
  - name: Work Assignments
paths:
  /forms/{form}:
    put:
      tags:
        - Forms
      summary: Update a form
      description: >-
        Endpoint to update a Form.


        The following example is for a 2026 TD1, but the response fields will
        differ depending on the specific Form instance requested.
      operationId: forms-update
      parameters:
        - name: form
          in: path
          schema:
            type: string
          required: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                form_batch_id:
                  type: string
                note:
                  type: string
                  description: An optional note for this form.
                  nullable: true
                  maxLength: 65000
                line_1_basic_personal_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_2_infirm_children_caregiver_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_3_age_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_4_pension_income_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_5_tuition:
                  type: number
                  format: decimal
                  minimum: 0
                line_6_disability_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_7_spouse_or_common_law_partner_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_8_eligible_dependent_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_9_infirm_dependent_caregiver_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_10_dependent_caregiver_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_11_spouse_or_common_law_transfer_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_12_dependent_transfer_amount:
                  type: number
                  format: decimal
                  minimum: 0
                line_13_total_claim_amount:
                  type: number
                  format: decimal
                  minimum: 0
                more_than_one_employer_or_payer:
                  type: boolean
                total_income_less_than_total_claim_amount:
                  type: boolean
                ninety_percent_world_income_taxable_income:
                  type: boolean
                prescribed_zone_deduction:
                  type: number
                  format: decimal
                  minimum: 0
                additional_tax_deduction:
                  type: number
                  format: decimal
                  minimum: 0
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: The unique identifier of the object in Nmbr.
                    readOnly: true
                  object:
                    type: string
                    description: The type of the object in Nmbr (`"form"`).
                    readOnly: true
                  data:
                    $ref: '#/components/schemas/Form'
              example:
                id: <id>
                object: form
                data:
                  owner:
                    id: <id>
                    object: work_assignment
                    links:
                      self: /work_assignments/<id>
                  form_batch: null
                  stage: original
                  note: null
                  type: td1
                  effective_date: '2026-01-01'
                  version_year: '2026'
                  version_month: january
                  validation_error_count: 0
                  is_editable: true
                  line_1_basic_personal_amount: null
                  line_2_infirm_children_caregiver_amount: null
                  line_3_age_amount: null
                  line_4_pension_income_amount: null
                  line_5_tuition: null
                  line_6_disability_amount: null
                  line_7_spouse_or_common_law_partner_amount: null
                  line_8_eligible_dependent_amount: null
                  line_9_infirm_dependent_caregiver_amount: null
                  line_10_dependent_caregiver_amount: null
                  line_11_spouse_or_common_law_transfer_amount: null
                  line_12_dependent_transfer_amount: null
                  line_13_total_claim_amount: null
                  more_than_one_employer_or_payer: null
                  total_income_less_than_total_claim_amount: null
                  ninety_percent_world_income_taxable_income: null
                  prescribed_zone_deduction: null
                  additional_tax_deduction: null
                  created_at: '2026-01-01T00:00:00.000000Z'
                  updated_at: '2026-01-01T00:00:00.000000Z'
                links:
                  self: /forms/<id>
components:
  schemas:
    Form:
      type: object
      title: Form
      properties:
        owner:
          type: object
          description: >-
            The owner of this form. Can be a Work Assignment, Employee, or
            Contractor.
          properties:
            id:
              type: string
              description: The unique identifier of the object in Nmbr.
              readOnly: true
            object:
              type: string
              description: The type of the object in Nmbr (`"work_assignment"`).
              readOnly: true
        form_batch:
          description: The Form Batch this form belongs to, if any.
        stage:
          type: string
          description: >-
            The lifecycle stage of this form: original, amendment, or
            cancellation.
          enum:
            - amendment
            - cancellation
            - original
        note:
          type: string
          description: An optional note for this form.
          nullable: true
        type:
          type: string
          description: The type of form (e.g. T4, ROE, RL-1).
          maxLength: 255
          enum:
            - rl1
            - roe
            - t4
            - t4a
            - td1
            - td1ab
            - td1bc
            - td1mb
            - td1nb
            - td1nl
            - td1ns
            - td1nt
            - td1nu
            - td1on
            - td1pe
            - td1sk
            - td1x
            - td1yt
            - tp_1015_3_v
            - tp_1015_r_13_v
        effective_date:
          type: string
          description: >-
            The effective date used to determine the form variant (e.g. the T4
            tax year).
          format: date
        version_year:
          type: string
          description: >-
            The form variant's version year. New versions are typically released
            in January. Note: the version year may differ from the tax year. For
            example, income earned in the 2025 tax year is typically reported on
            a 2026 version of the T4.
          nullable: true
        version_month:
          type: string
          description: >-
            The month component of the form variant, for forms with monthly
            variants. `null` for annual forms.
          nullable: true
        validation_error_count:
          type: number
          description: >-
            The number of validation errors currently present in the form's
            fields.
          nullable: true
          format: decimal
        is_editable:
          type: boolean
          description: |-
            Whether the form can be edited.

            Whether the form can currently be modified.
        line_1_basic_personal_amount: {}
        line_2_infirm_children_caregiver_amount: {}
        line_3_age_amount: {}
        line_4_pension_income_amount: {}
        line_5_tuition: {}
        line_6_disability_amount: {}
        line_7_spouse_or_common_law_partner_amount: {}
        line_8_eligible_dependent_amount: {}
        line_9_infirm_dependent_caregiver_amount: {}
        line_10_dependent_caregiver_amount: {}
        line_11_spouse_or_common_law_transfer_amount: {}
        line_12_dependent_transfer_amount: {}
        line_13_total_claim_amount: {}
        more_than_one_employer_or_payer: {}
        total_income_less_than_total_claim_amount: {}
        ninety_percent_world_income_taxable_income: {}
        prescribed_zone_deduction: {}
        additional_tax_deduction: {}
        created_at:
          type: string
          description: The date and time the object was created in Nmbr.
          readOnly: true
          format: dateTime
        updated_at:
          type: string
          description: The date and time the object was last updated in Nmbr.
          readOnly: true
          format: dateTime
  securitySchemes:
    CompanyToken:
      type: http
      scheme: bearer

````