---
title: "Changes to Get PurchaseOrder record"
method: GET
path: "/public/v2/purchase-orders/{record_number}/"
---

# Changes to Get PurchaseOrder record

`GET /public/v2/purchase-orders/{record_number}/`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 12 of 37 revisions.

- **2026-10-09** `78a095dc747f`: 3 info
- **2026-10-06** `f8de2ceea61d`: 6 info
- **2026-10-01** `8f0a589ca348`: 8 breaking, 8 info
- **2026-09-29** `4b2d6ee0dff6`: 7 info
- **2026-09-26** `9f0ddd3870e6`: 3 info
- **2026-09-22** `16adf1baac76`: 6 info
- **2026-09-18** `5bd4dbaf2e9c`: 6 info
- **2026-09-01** `d09369419a42`: 2 info
- **2026-08-28** `48edcb3acb74`: 2 warning, 3 info
- **2026-08-22** `dcb8297898a2`: 1 breaking, 9 info
- **2026-08-05** `525a590a98f8`: 2 info
- **2026-07-31** `506e6073d191`: 1 breaking, 4 info

## Changes

- **2026-10-09** `78a095dc747f`: 3 info
  - added the optional property `expense_billed_total` to the response with the `200` status
  - added the optional property `expense_due_total` to the response with the `200` status
  - added the optional property `expenses` to the response with the `200` status
- **2026-10-06** `f8de2ceea61d`: 6 info
  - added the optional property `created_by/anyOf[subschema #1: AuditActorSchemaOut]/agent_id` to the response with the `200` status
  - added the optional property `created_by/anyOf[subschema #1: AuditActorSchemaOut]/agent_name` to the response with the `200` status
  - added the optional property `created_by/anyOf[subschema #1: AuditActorSchemaOut]/via` to the response with the `200` status
  - added the optional property `updated_by/anyOf[subschema #1: AuditActorSchemaOut]/agent_id` to the response with the `200` status
  - added the optional property `updated_by/anyOf[subschema #1: AuditActorSchemaOut]/agent_name` to the response with the `200` status
  - added the optional property `updated_by/anyOf[subschema #1: AuditActorSchemaOut]/via` to the response with the `200` status
- **2026-10-01** `8f0a589ca348`: 8 breaking, 8 info
  - the response property `ship_from_address/anyOf[subschema #1: AddressSchemaOut]/country` became optional for the status `200`
  - the response property `ship_from_address/anyOf[subschema #1: AddressSchemaOut]/second_line` became optional for the status `200`
  - the response property `ship_from_address/anyOf[subschema #1: AddressSchemaOut]/state` became optional for the status `200`
  - the response property `ship_to_address/anyOf[subschema #1: AddressSchemaOut]/country` became optional for the status `200`
  - the response property `ship_to_address/anyOf[subschema #1: AddressSchemaOut]/second_line` became optional for the status `200`
  - the response property `ship_to_address/anyOf[subschema #1: AddressSchemaOut]/state` became optional for the status `200`
  - the `ship_from_address/anyOf[subschema #1: AddressSchemaOut]/country` response's property type changed from `string` to no type for status `200`
  - the `ship_to_address/anyOf[subschema #1: AddressSchemaOut]/country` response's property type changed from `string` to no type for status `200`
  - added `#/components/schemas/SystemCountries, subschema #1` to the `ship_from_address/anyOf[subschema #1: AddressSchemaOut]/country` response property `anyOf` list for the response status `200`
  - added `#/components/schemas/SystemCountries, subschema #1` to the `ship_to_address/anyOf[subschema #1: AddressSchemaOut]/country` response property `anyOf` list for the response status `200`
  - the `country` response's property default value `` was added for the status `200`
  - the `country` response's property default value `` was added for the status `200`
  - the `second_line` response's property default value `` was added for the status `200`
  - the `second_line` response's property default value `` was added for the status `200`
  - the `state` response's property default value `` was added for the status `200`
  - the `state` response's property default value `` was added for the status `200`
- **2026-09-29** `4b2d6ee0dff6`: 7 info
  - added the optional property `error_code` to the response with the `400` status
  - added the optional property `error_code` to the response with the `404` status
  - added the optional property `error_code` to the response with the `500` status
  - added the optional property `error_reason` to the response with the `400` status
  - added the optional property `error_reason` to the response with the `404` status
  - added the optional property `error_reason` to the response with the `500` status
  - added the optional property `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/valid_to` to the response with the `200` status
- **2026-09-26** `9f0ddd3870e6`: 3 info
  - added the new optional `query` request parameter `code`
  - added the optional property `code` to the response with the `200` status
  - added the optional property `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/rate_description` to the response with the `200` status
- **2026-09-22** `16adf1baac76`: 6 info
  - added the optional property `items/items/billable_customer_id` to the response with the `200` status
  - added the optional property `items/items/billable_customer_name` to the response with the `200` status
  - added the optional property `items/items/billable_markup_pct` to the response with the `200` status
  - added the optional property `items/items/billable_project_id` to the response with the `200` status
  - added the optional property `items/items/billable_project_name` to the response with the `200` status
  - added the optional property `items/items/is_billable` to the response with the `200` status
- **2026-09-18** `5bd4dbaf2e9c`: 6 info
  - added the optional property `expected_location_id` to the response with the `200` status
  - added the optional property `expected_location_name` to the response with the `200` status
  - added the optional property `items/items/expected_location_id` to the response with the `200` status
  - added the optional property `items/items/expected_location_name` to the response with the `200` status
  - added the optional property `ship_from_address` to the response with the `200` status
  - added the optional property `ship_to_address` to the response with the `200` status
- **2026-09-01** `d09369419a42`: 2 info
  - added the new optional `query` request parameter `lifecycle_status`
  - added the required property `lifecycle_status` to the response with the `200` status
- **2026-08-28** `48edcb3acb74`: 2 warning, 3 info
  - removed the optional property `has_more_lines` from the response with the `200` status
  - removed the optional property `lines_count` from the response with the `200` status
  - api operation id `get_PurchaseOrderV2_record` removed and replaced with `get_PurchaseOrder_record`
  - the response property `items` became required for the status `200`
  - the `items` response's property default value `` was removed for the status `200`
- **2026-08-22** `dcb8297898a2`: 1 breaking, 9 info
  - the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response's property type changed from `string` to no type for status `200`
  - added `#/components/schemas/GstComponentType, #/components/schemas/TaxFamily` to the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response property `anyOf` list for the response status `200`
  - removed the `CESS` enum value from the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response property for the response status `200`
  - removed the `CGST` enum value from the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response property for the response status `200`
  - removed the `GST` enum value from the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response property for the response status `200`
  - removed the `HST` enum value from the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response property for the response status `200`
  - removed the `IGST` enum value from the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response property for the response status `200`
  - removed the `PST` enum value from the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response property for the response status `200`
  - removed the `QST` enum value from the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response property for the response status `200`
  - removed the `SGST` enum value from the `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_components/items/component_type` response property for the response status `200`
- **2026-08-05** `525a590a98f8`: 2 info
  - added the new optional `query` request parameter `approval_status_scope`
  - added the optional property `items/items/tax/anyOf[subschema #1: ItemTaxDataOut]/tax_metadata` to the response with the `200` status
- **2026-07-31** `506e6073d191`: 1 breaking, 4 info
  - the response property `items` became optional for the status `200`
  - api operation id `get_PurchaseOrder_record` removed and replaced with `get_PurchaseOrderV2_record`
  - added the optional property `has_more_lines` to the response with the `200` status
  - added the optional property `lines_count` to the response with the `200` status
  - the `items` response's property default value `` was added for the status `200`

---

[Operation](https://skmtc.dev/dualentry/apis/dualentry-public-api/docs/public/v2/purchase-orders/:record_number/get.md) · [API](https://skmtc.dev/dualentry/apis/dualentry-public-api.md) · [Page](https://skmtc.dev/dualentry/apis/dualentry-public-api/changes/public/v2/purchase-orders/:record_number/get)
