Contractors

contractorOps.taxForms.export

Download the T4A and T4A-NR worksheet for a calendarYear with full tax numbers, to type into the CRA's web forms, with a reason. Only an administrator in the dashboard can; the download is audited with the year and the number of slips, never the numbers. Not available to API keys or MCP clients.

POST/api/v1/accounting/contractorOps.taxForms.export

Permissions

accounting:readaccounting:writeaccounting:admin

Who can call it

admin

Retries

Idempotency key required

MCP

Not offered over MCP: Slip details with full tax numbers.

Fields

  • calendarYearintegerRequired

    A calendar year, such as 2026.

    2000 to 2100

  • reasonstringRequired

    A short note saying why, kept in the record's history.

    5–500 characters

  • idempotencyKeystringRequired

    Any unique text you generate once per intended change, so a retried request only happens once. Send it as the Idempotency-Key header instead if you prefer; if you send both they must match.

    8–200 characters

Example

curl https://app.getoatmilk.com/api/v1/accounting/contractorOps.taxForms.export \
  -H "Authorization: Bearer $OATMILK_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "calendarYear": 2026,
  "reason": "Synthetic example from the docs"
}'
Response
{
  "data": { … }
}

Try it

Try it

Checks your input with this action’s real schema and answers like the API, with synthetic data. No key needed, and nothing changes.

POST/api/v1/accounting/contractorOps.taxForms.export
curl https://app.getoatmilk.com/api/v1/accounting/contractorOps.taxForms.export \
  -H "Authorization: Bearer $OATMILK_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "calendarYear": 2026,
  "reason": "Synthetic example from the docs"
}'

More in Contractors.