Download OpenAPI specification:
Canary7 Warehouse Management System (WMS) REST API.
Origin Header: All requests must include an Origin header containing your tenant's URL. This is used for multi-tenant request isolation. Example: Origin: https://your-tenant.example.com
All endpoints require a Bearer token obtained from the login endpoint, except login itself.
Timestamps are Unix epoch integers unless otherwise noted. Date strings use ISO 8601 format (YYYY-MM-DD). DateTime strings use ISO 8601 format (YYYY-MM-DDTHH:MM or YYYY-MM-DD HH:MM:SS).
Authenticates a user and returns a JWT bearer token along with the user object.
| expand | string Default: "roles" Relations to expand in the response (e.g. roles). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
User credentials.
| email required | string <email> |
| password required | string |
| token required | string |
| default_company_id required | integer |
| default_warehouse_id required | integer |
| id | integer |
object (company) A company/tenant in the WMS. | |
object (warehouseListResponse) Warehouse record. |
{- "password": "your_password"
}{- "id": 0,
- "token": "string",
- "default_company_id": 0,
- "default_warehouse_id": 0,
- "defaultCompany": {
- "id": 0,
- "company_code": "string",
- "description": "string"
}, - "defaultWarehouse": {
- "id": 0,
- "warehouse_code": "string",
- "description": "string",
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "address_id": 0
}
}Returns a paginated list of companies accessible to the authenticated user.
| company_code | string Filter by company code. |
| per-page | integer Default: 100 Number of results per page. |
| page | integer Default: 1 Page number. |
| expand | string Relations to expand. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| company_code | string |
| description | string |
[- {
- "id": 0,
- "company_code": "string",
- "description": "string"
}
]Returns a paginated list of company-to-integration mappings.
| expand | string Relations to expand (e.g. company, integration). |
| per-page | integer Default: 10 Number of results per page (required). |
| page | integer Default: 1 Page number (required). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| company_id | integer |
| application_id | string |
| created_at | string <date-time> |
| integration_id | string |
| status | integer 1 = Active, 0 = Inactive |
| _id | string MongoDB ObjectId |
| sync_time | string |
{- "company_id": 0,
- "application_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "integration_id": "string",
- "status": 0,
- "_id": "string",
- "sync_time": "string"
}Returns a list of country reference data.
| name | string Filter by country name. |
| expand | string Relations to expand. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id required | integer |
| country_code required | string |
| name | string |
[- {
- "id": 0,
- "name": "string",
- "country_code": "string"
}
]Returns a paginated list of items (SKUs).
| item_code | string Filter by item code. |
| company_id | integer Filter by company ID. |
| status | integer Filter by status (1 = Active, 0 = Inactive). |
| expand | string Relations to expand. |
| per-page | integer Default: 100 Number of results per page. |
| page | integer Default: 1 Page number. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| item_code | string Unique item code within the company. |
| description | string |
| long_description | string |
| company_id | integer |
| status | integer 1 = Active, 0 = Inactive |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| base_unit_of_measure | integer |
| enable_batch | boolean Whether batch/lot tracking is enabled for this item. |
| min_stock_level | integer |
| max_stock_level | integer |
| source_code | string |
| verfication_not_available | boolean |
| abc_category | string ABC classification (e.g. A, B, C). |
| item_category_1 | integer |
| item_tracking | boolean |
| item_tracking_id | integer |
| item_group_id | integer |
| release_date | string <date> |
| company_integration_id | string |
| commodity_code | string |
| customs_description | string |
| country_manufacture | string |
{- "id": 0,
- "item_code": "string",
- "description": "string",
- "long_description": "string",
- "company_id": 0,
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "base_unit_of_measure": 0,
- "enable_batch": true,
- "min_stock_level": 0,
- "max_stock_level": 0,
- "source_code": "string",
- "verfication_not_available": true,
- "abc_category": "string",
- "item_category_1": 0,
- "item_tracking": true,
- "item_tracking_id": 0,
- "item_group_id": 0,
- "release_date": "2019-08-24",
- "company_integration_id": "string",
- "commodity_code": "string",
- "customs_description": "string",
- "country_manufacture": "string"
}Returns a single item record by its database ID.
| id required | integer Item ID. |
| expand | string Relations to expand. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| item_code | string Unique item code within the company. |
| description | string |
| long_description | string |
| company_id | integer |
| status | integer 1 = Active, 0 = Inactive |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| base_unit_of_measure | integer |
| enable_batch | boolean Whether batch/lot tracking is enabled for this item. |
| min_stock_level | integer |
| max_stock_level | integer |
| source_code | string |
| verfication_not_available | boolean |
| abc_category | string ABC classification (e.g. A, B, C). |
| item_category_1 | integer |
| item_tracking | boolean |
| item_tracking_id | integer |
| item_group_id | integer |
| release_date | string <date> |
| company_integration_id | string |
| commodity_code | string |
| customs_description | string |
| country_manufacture | string |
{- "id": 0,
- "item_code": "string",
- "description": "string",
- "long_description": "string",
- "company_id": 0,
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "base_unit_of_measure": 0,
- "enable_batch": true,
- "min_stock_level": 0,
- "max_stock_level": 0,
- "source_code": "string",
- "verfication_not_available": true,
- "abc_category": "string",
- "item_category_1": 0,
- "item_tracking": true,
- "item_tracking_id": 0,
- "item_group_id": 0,
- "release_date": "2019-08-24",
- "company_integration_id": "string",
- "commodity_code": "string",
- "customs_description": "string",
- "country_manufacture": "string"
}Creates a new item (SKU) in the system.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Item object.
| item_code required | string |
| description required | string |
| company_id required | integer |
| long_description | string |
| status | integer 1 = Active, 0 = Inactive |
| item_group_id | integer |
| enable_batch | boolean |
| min_stock_level | integer |
| max_stock_level | integer |
| source_code | string |
| verfication_not_available | boolean |
| abc_category | string |
| item_category_1 | integer |
| release_date | string <date> |
| commodity_code | string |
| customs_description | string |
| country_manufacture | string |
| id | integer |
| item_code | string |
| description | string |
| long_description | string |
| company_id | integer |
| status | integer |
| item_group_id | integer |
| enable_batch | boolean |
| min_stock_level | integer |
| max_stock_level | integer |
| source_code | string |
| verfication_not_available | boolean |
| abc_category | string |
| item_category_1 | integer |
| commodity_code | string |
| customs_description | string |
| country_manufacture | string |
| release_date | string <date> |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
{- "item_code": "AC10737",
- "description": "Germs Are Not For Sharing Book",
- "long_description": "Full description here",
- "company_id": 28,
- "status": 1,
- "item_group_id": 1,
- "enable_batch": false,
- "min_stock_level": 3,
- "max_stock_level": 6,
- "source_code": "Macmillan",
- "verfication_not_available": false,
- "abc_category": "A",
- "item_category_1": 1,
- "release_date": "2023-10-10",
- "commodity_code": "A1",
- "customs_description": "Test A1",
- "country_manufacture": "England"
}{- "id": 50,
- "item_code": "AC10737",
- "description": "Germs Are Not For Sharing Book",
- "company_id": 28,
- "status": 1,
- "created_at": 1536147450,
- "updated_at": 1551883927,
- "created_by": 9,
- "updated_by": 27
}Updates an existing item by its database ID.
| id required | integer Item ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Fields to update.
| item_code required | string |
| description required | string |
| company_id required | integer |
| long_description | string |
| status | integer 1 = Active, 0 = Inactive |
| item_group_id | integer |
| enable_batch | boolean |
| min_stock_level | integer |
| max_stock_level | integer |
| source_code | string |
| verfication_not_available | boolean |
| abc_category | string |
| item_category_1 | integer |
| release_date | string <date> |
| commodity_code | string |
| customs_description | string |
| country_manufacture | string |
| id | integer |
| item_code | string |
| description | string |
| long_description | string |
| company_id | integer |
| status | integer |
| item_group_id | integer |
| enable_batch | boolean |
| min_stock_level | integer |
| max_stock_level | integer |
| source_code | string |
| verfication_not_available | boolean |
| abc_category | string |
| item_category_1 | integer |
| commodity_code | string |
| customs_description | string |
| country_manufacture | string |
| release_date | string <date> |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
{- "description": "Updated item description",
- "status": 1,
- "commodity_code": "A2",
- "customs_description": "Test A2",
- "country_manufacture": "USA"
}{- "id": 0,
- "item_code": "string",
- "description": "string",
- "long_description": "string",
- "company_id": 0,
- "status": 0,
- "item_group_id": 0,
- "enable_batch": true,
- "min_stock_level": 0,
- "max_stock_level": 0,
- "source_code": "string",
- "verfication_not_available": true,
- "abc_category": "string",
- "item_category_1": 0,
- "commodity_code": "string",
- "customs_description": "string",
- "country_manufacture": "string",
- "release_date": "2019-08-24",
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}Updates an item identified by item_code and company_id. Useful for ERP integrations that reference items by code rather than internal ID.
| item_code required | string Item code. |
| company_id required | integer Company ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Fields to update.
| item_code required | string |
| description required | string |
| company_id required | integer |
| long_description | string |
| status | integer 1 = Active, 0 = Inactive |
| item_group_id | integer |
| enable_batch | boolean |
| min_stock_level | integer |
| max_stock_level | integer |
| source_code | string |
| verfication_not_available | boolean |
| abc_category | string |
| item_category_1 | integer |
| release_date | string <date> |
| commodity_code | string |
| customs_description | string |
| country_manufacture | string |
| id | integer |
| item_code | string |
| description | string |
| long_description | string |
| company_id | integer |
| status | integer |
| item_group_id | integer |
| enable_batch | boolean |
| min_stock_level | integer |
| max_stock_level | integer |
| source_code | string |
| verfication_not_available | boolean |
| abc_category | string |
| item_category_1 | integer |
| commodity_code | string |
| customs_description | string |
| country_manufacture | string |
| release_date | string <date> |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
{- "description": "Updated item description",
- "status": 1,
- "release_date": "2023-03-30"
}{- "id": 0,
- "item_code": "string",
- "description": "string",
- "long_description": "string",
- "company_id": 0,
- "status": 0,
- "item_group_id": 0,
- "enable_batch": true,
- "min_stock_level": 0,
- "max_stock_level": 0,
- "source_code": "string",
- "verfication_not_available": true,
- "abc_category": "string",
- "item_category_1": 0,
- "commodity_code": "string",
- "customs_description": "string",
- "country_manufacture": "string",
- "release_date": "2019-08-24",
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}Returns the global unit-of-measure master list (code/name → id). Used to resolve a UOM code such as EACH or CA to the numeric preferred_uom_id on a shipment line.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string UOM code/name used as the reference match field (e.g. EACH, CA). |
| description | string or null |
| status | integer 1 = Active, 0 = Inactive |
| created_at | integer or null |
| updated_at | integer or null |
| created_by | integer or null |
| updated_by | integer or null |
[- {
- "id": 0,
- "name": "string",
- "description": "string",
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}
]Returns configured unit of measure conversions for items.
| item_id | integer Filter by item ID. |
| unit_of_measure_id | integer Filter by unit of measure ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| item_id | integer |
| unit_of_measure_id | integer |
| factor | number <double> Conversion factor relative to the base unit. |
{- "id": 1,
- "item_id": 1,
- "unit_of_measure_id": 1,
- "factor": 1
}Adds a unit of measure conversion record for an item.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Item UOM object.
| item_id required | integer |
| unit_of_measure_id required | integer |
| factor required | number <double> |
| id | integer |
| factor | number <double> |
| item_id | integer |
| unit_of_measure_id | integer |
{- "factor": 1,
- "item_id": 3082,
- "unit_of_measure_id": 7
}{- "id": 3060,
- "factor": 1,
- "item_id": 3082,
- "unit_of_measure_id": 7
}Returns barcode/reference codes associated with item units of measure.
| item_unit_of_measure_id | integer Filter by item UOM ID. |
| reference | string Filter by reference value (e.g. barcode). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| reference | string Barcode or reference value (e.g. EAN, UPC). |
| item_unit_of_measure_id | integer |
| is_default | integer 1 if this is the default reference for the UOM. |
{- "id": 1,
- "reference": "reference name",
- "item_unit_of_measure_id": 123,
- "is_default": 0
}Creates a barcode or reference code for an item unit of measure.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
UOM reference object.
| item_unit_of_measure_id required | integer |
| reference required | string |
| id | integer |
| item_unit_of_measure_id | integer |
| reference | string |
{- "reference": "reference_insert",
- "item_unit_of_measure_id": 3058,
- "reference_type_id": 1
}{- "id": 156,
- "reference": "reference_insert",
- "item_unit_of_measure_id": 3058
}Returns available shipment type classifications.
| per-page | integer Default: 10 Number of results per page. |
| page | integer Default: 1 Page number. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
{- "id": 0,
- "name": "string",
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}Returns a paginated list of outbound shipment headers.
| per-page | integer Default: 10 Number of results per page. |
| page | integer Default: 1 Page number. |
| expand | string Relations to expand (e.g. trailingStatus, leadingStatus, carrier, items, itemsIds, company, trackingUrl, consolidationLocation, stagingLocation, address.country, shipment_load, shipment_status, location, shipmentDetails.shipment_detail_assembly_explosion). |
| shipment_number | string Filter by shipment number. |
| trailing_status | string Filter by trailing status ID. |
| leading_status | string Filter by leading status ID. |
| updated_start_date | string <date-time> Example: updated_start_date=2024-01-01T00:00 Filter by last updated date (from). Format: YYYY-MM-DDTHH:MM. |
| updated_end_date | string <date-time> Example: updated_end_date=2024-12-31T23:59 Filter by last updated date (to). Format: YYYY-MM-DDTHH:MM. |
| shipment_sub_status_id | integer Sub-status filter (1 = Dispatched, 2 = Cancelled). |
| address_id | integer Filter by address ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| warehouse_id | integer |
| company_id | integer |
| shipment_number | string Unique identifier for the shipment order. |
| customer_code | string |
| customer_order_reference | string Third-party customer order number. |
| planned_dispatch_date | string <date> |
| carrier_id | integer |
| carrier_service_id | integer |
| tracking_number | string |
| leading_status_id | number Leading status id (can be fractional, e.g. 7.5). |
| trailing_status_id | number Trailing status id (can be fractional, e.g. 7.5). |
| shipment_load_id | integer |
| address_id | integer |
object (shipmentAddressResponse) Ship-to address for a shipment (the header's | |
| consignment_id | integer |
| shipment_detail_child_id_count | integer |
| shipment_detail_qty_sum | integer |
| max_item_category | integer |
| min_item_category | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| company_integration_id | integer |
| entry_number | integer |
| consolidation_dock_id | integer |
| stagging_dock_id | integer |
| automatic_carrier_assignment | boolean |
| wave_rejected | boolean |
| reject_reason | string |
| out_bound_status_flow_id | integer |
| routing_code | string |
| carrier_zone_id | integer |
| currency_id | integer |
| custom_field_1 | string |
| custom_field_2 | string |
| event_status_id | integer |
| grouping | string |
| hold_comment | string |
| hold_reason_code | string |
| last_event_datetime | integer |
| last_event_id | integer |
| longest_side | number |
| max_item_weight | number |
| min_item_weight | number |
| on_hold | integer |
| order_number | string |
| ship_to_eori_number | string |
| ship_to_ioss_number | string |
| ship_to_vat_number | string |
| shipment_type_id | integer |
| soft_allocation_status | integer 1=unallocated, 2=partial, 3=fully allocated |
| soft_allocation_updated_at | integer |
| terms_of_sale | string |
| total_cost | number |
| total_details | integer |
| total_net_volume | integer |
| total_net_weight | integer |
| total_quantity | integer |
| total_sale_value | number |
| shipment_sub_status_id | integer |
| no_of_containers | integer |
| container_type | string Container packaging summary (e.g. "SE", "Multiple"). |
| shipping_cost | number <double> |
| pre_consigned | integer |
| department_number | string |
| department_name | string |
| sort_code | string |
| destination_number | string |
| last_hold_create_timestamp | integer |
| last_hold_release_timestamp | integer |
| has_file | integer |
Array of objects (shipmentDetailsResponse) Detail (line item) records for this shipment. Present when the load view is fetched with expand=shipmentHeaders.shipmentDetails. One 945 detail loop entry per line in 'detail' carton mode. | |
Array of objects (shipmentContainerResponse) Physical container/carton records for this shipment. Present when the load view is fetched with expand=shipmentHeaders.shipmentContainers. Drives 'container' / 'hl' carton modes (one carton per container). |
{- "id": 0,
- "warehouse_id": 0,
- "company_id": 0,
- "shipment_number": "string",
- "customer_code": "string",
- "customer_order_reference": "string",
- "planned_dispatch_date": "2019-08-24",
- "carrier_id": 0,
- "carrier_service_id": 0,
- "tracking_number": "string",
- "leading_status_id": 0,
- "trailing_status_id": 0,
- "shipment_load_id": 0,
- "address_id": 0,
- "address": {
- "id": 0,
- "ship_to_name": "string",
- "ship_to_address1": "string",
- "ship_to_address2": "string",
- "ship_to_address3": "string",
- "ship_to_city": "string",
- "ship_to_state": "string",
- "ship_to_postcode": "string",
- "ship_to_country_id": 0,
- "ship_to_country_state_id": 0,
- "ship_to_attention_to": "string",
- "ship_to_phone_num": "string",
- "ship_to_email_address": "string",
- "ship_to_instructions": "string",
- "ship_to_kind": "string",
- "code": "string",
- "country": {
- "id": 0,
- "name": "string",
- "country_code": "string"
}
}, - "consignment_id": 0,
- "shipment_detail_child_id_count": 0,
- "shipment_detail_qty_sum": 0,
- "max_item_category": 0,
- "min_item_category": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "company_integration_id": 0,
- "entry_number": 0,
- "consolidation_dock_id": 0,
- "stagging_dock_id": 0,
- "automatic_carrier_assignment": true,
- "wave_rejected": true,
- "reject_reason": "string",
- "out_bound_status_flow_id": 0,
- "routing_code": "string",
- "carrier_zone_id": 0,
- "currency_id": 0,
- "custom_field_1": "string",
- "custom_field_2": "string",
- "event_status_id": 0,
- "grouping": "string",
- "hold_comment": "string",
- "hold_reason_code": "string",
- "last_event_datetime": 0,
- "last_event_id": 0,
- "longest_side": 0,
- "max_item_weight": 0,
- "min_item_weight": 0,
- "on_hold": 0,
- "order_number": "string",
- "ship_to_eori_number": "string",
- "ship_to_ioss_number": "string",
- "ship_to_vat_number": "string",
- "shipment_type_id": 0,
- "soft_allocation_status": 0,
- "soft_allocation_updated_at": 0,
- "terms_of_sale": "string",
- "total_cost": 0,
- "total_details": 0,
- "total_net_volume": 0,
- "total_net_weight": 0,
- "total_quantity": 0,
- "total_sale_value": 0,
- "shipment_sub_status_id": 0,
- "no_of_containers": 0,
- "container_type": "string",
- "shipping_cost": 0.1,
- "pre_consigned": 0,
- "department_number": "string",
- "department_name": "string",
- "sort_code": "string",
- "destination_number": "string",
- "last_hold_create_timestamp": 0,
- "last_hold_release_timestamp": 0,
- "has_file": 0,
- "shipmentDetails": [
- {
- "id": 0,
- "shipment_header_id": 0,
- "item_id": 0,
- "quantity": 0,
- "original_qty": 0,
- "erp_order_line_number": 0,
- "allocation_rule_id": 0,
- "open_quantity": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "line_item_id": "string",
- "batch_number": "string",
- "item_list_price": "string",
- "original_batch_number": "string",
- "each_price": 0.1,
- "shipment_detail_assembly_explosion_id": 0,
- "soft_allocated_qty": 0,
- "soft_allocation_status": 0,
- "net_weight": 0,
- "release_date": "string",
- "line_number": 0,
- "order_number": "string",
- "allocation_reference": "string",
- "customer_item_reference": "string",
- "grouping": "string",
- "automatic_allocation_rule_master": 0,
- "preferred_uom_id": 0,
- "custom_field_1": "string"
}
], - "shipmentContainers": [
- {
- "id": 0,
- "container_no": "string",
- "shipment_header_id": 0,
- "consignment_id": 0,
- "parent_id": 0,
- "container_type_id": 0,
- "status_id": 0,
- "consolidation_dock_id": 0,
- "staging_dock_id": 0,
- "job_id": 0,
- "job_instruction_id": 0,
- "weight": 0.1,
- "length": 0,
- "width": 0,
- "height": 0,
- "packing_effort": 0,
- "to_container": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}
]
}Returns a single shipment header by its database ID.
| id required | integer Shipment header ID. |
| expand | string Relations to expand (e.g. trailingStatus, leadingStatus, carrier, items, address.country). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| warehouse_id | integer |
| company_id | integer |
| shipment_number | string Unique identifier for the shipment order. |
| customer_code | string |
| customer_order_reference | string Third-party customer order number. |
| planned_dispatch_date | string <date> |
| carrier_id | integer |
| carrier_service_id | integer |
| tracking_number | string |
| leading_status_id | number Leading status id (can be fractional, e.g. 7.5). |
| trailing_status_id | number Trailing status id (can be fractional, e.g. 7.5). |
| shipment_load_id | integer |
| address_id | integer |
object (shipmentAddressResponse) Ship-to address for a shipment (the header's | |
| consignment_id | integer |
| shipment_detail_child_id_count | integer |
| shipment_detail_qty_sum | integer |
| max_item_category | integer |
| min_item_category | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| company_integration_id | integer |
| entry_number | integer |
| consolidation_dock_id | integer |
| stagging_dock_id | integer |
| automatic_carrier_assignment | boolean |
| wave_rejected | boolean |
| reject_reason | string |
| out_bound_status_flow_id | integer |
| routing_code | string |
| carrier_zone_id | integer |
| currency_id | integer |
| custom_field_1 | string |
| custom_field_2 | string |
| event_status_id | integer |
| grouping | string |
| hold_comment | string |
| hold_reason_code | string |
| last_event_datetime | integer |
| last_event_id | integer |
| longest_side | number |
| max_item_weight | number |
| min_item_weight | number |
| on_hold | integer |
| order_number | string |
| ship_to_eori_number | string |
| ship_to_ioss_number | string |
| ship_to_vat_number | string |
| shipment_type_id | integer |
| soft_allocation_status | integer 1=unallocated, 2=partial, 3=fully allocated |
| soft_allocation_updated_at | integer |
| terms_of_sale | string |
| total_cost | number |
| total_details | integer |
| total_net_volume | integer |
| total_net_weight | integer |
| total_quantity | integer |
| total_sale_value | number |
| shipment_sub_status_id | integer |
| no_of_containers | integer |
| container_type | string Container packaging summary (e.g. "SE", "Multiple"). |
| shipping_cost | number <double> |
| pre_consigned | integer |
| department_number | string |
| department_name | string |
| sort_code | string |
| destination_number | string |
| last_hold_create_timestamp | integer |
| last_hold_release_timestamp | integer |
| has_file | integer |
Array of objects (shipmentDetailsResponse) Detail (line item) records for this shipment. Present when the load view is fetched with expand=shipmentHeaders.shipmentDetails. One 945 detail loop entry per line in 'detail' carton mode. | |
Array of objects (shipmentContainerResponse) Physical container/carton records for this shipment. Present when the load view is fetched with expand=shipmentHeaders.shipmentContainers. Drives 'container' / 'hl' carton modes (one carton per container). |
{- "id": 0,
- "warehouse_id": 0,
- "company_id": 0,
- "shipment_number": "string",
- "customer_code": "string",
- "customer_order_reference": "string",
- "planned_dispatch_date": "2019-08-24",
- "carrier_id": 0,
- "carrier_service_id": 0,
- "tracking_number": "string",
- "leading_status_id": 0,
- "trailing_status_id": 0,
- "shipment_load_id": 0,
- "address_id": 0,
- "address": {
- "id": 0,
- "ship_to_name": "string",
- "ship_to_address1": "string",
- "ship_to_address2": "string",
- "ship_to_address3": "string",
- "ship_to_city": "string",
- "ship_to_state": "string",
- "ship_to_postcode": "string",
- "ship_to_country_id": 0,
- "ship_to_country_state_id": 0,
- "ship_to_attention_to": "string",
- "ship_to_phone_num": "string",
- "ship_to_email_address": "string",
- "ship_to_instructions": "string",
- "ship_to_kind": "string",
- "code": "string",
- "country": {
- "id": 0,
- "name": "string",
- "country_code": "string"
}
}, - "consignment_id": 0,
- "shipment_detail_child_id_count": 0,
- "shipment_detail_qty_sum": 0,
- "max_item_category": 0,
- "min_item_category": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "company_integration_id": 0,
- "entry_number": 0,
- "consolidation_dock_id": 0,
- "stagging_dock_id": 0,
- "automatic_carrier_assignment": true,
- "wave_rejected": true,
- "reject_reason": "string",
- "out_bound_status_flow_id": 0,
- "routing_code": "string",
- "carrier_zone_id": 0,
- "currency_id": 0,
- "custom_field_1": "string",
- "custom_field_2": "string",
- "event_status_id": 0,
- "grouping": "string",
- "hold_comment": "string",
- "hold_reason_code": "string",
- "last_event_datetime": 0,
- "last_event_id": 0,
- "longest_side": 0,
- "max_item_weight": 0,
- "min_item_weight": 0,
- "on_hold": 0,
- "order_number": "string",
- "ship_to_eori_number": "string",
- "ship_to_ioss_number": "string",
- "ship_to_vat_number": "string",
- "shipment_type_id": 0,
- "soft_allocation_status": 0,
- "soft_allocation_updated_at": 0,
- "terms_of_sale": "string",
- "total_cost": 0,
- "total_details": 0,
- "total_net_volume": 0,
- "total_net_weight": 0,
- "total_quantity": 0,
- "total_sale_value": 0,
- "shipment_sub_status_id": 0,
- "no_of_containers": 0,
- "container_type": "string",
- "shipping_cost": 0.1,
- "pre_consigned": 0,
- "department_number": "string",
- "department_name": "string",
- "sort_code": "string",
- "destination_number": "string",
- "last_hold_create_timestamp": 0,
- "last_hold_release_timestamp": 0,
- "has_file": 0,
- "shipmentDetails": [
- {
- "id": 0,
- "shipment_header_id": 0,
- "item_id": 0,
- "quantity": 0,
- "original_qty": 0,
- "erp_order_line_number": 0,
- "allocation_rule_id": 0,
- "open_quantity": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "line_item_id": "string",
- "batch_number": "string",
- "item_list_price": "string",
- "original_batch_number": "string",
- "each_price": 0.1,
- "shipment_detail_assembly_explosion_id": 0,
- "soft_allocated_qty": 0,
- "soft_allocation_status": 0,
- "net_weight": 0,
- "release_date": "string",
- "line_number": 0,
- "order_number": "string",
- "allocation_reference": "string",
- "customer_item_reference": "string",
- "grouping": "string",
- "automatic_allocation_rule_master": 0,
- "preferred_uom_id": 0,
- "custom_field_1": "string"
}
], - "shipmentContainers": [
- {
- "id": 0,
- "container_no": "string",
- "shipment_header_id": 0,
- "consignment_id": 0,
- "parent_id": 0,
- "container_type_id": 0,
- "status_id": 0,
- "consolidation_dock_id": 0,
- "staging_dock_id": 0,
- "job_id": 0,
- "job_instruction_id": 0,
- "weight": 0.1,
- "length": 0,
- "width": 0,
- "height": 0,
- "packing_effort": 0,
- "to_container": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}
]
}Creates a new outbound shipment header, optionally with line items and consignment pieces.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Shipment object.
| automatic_carrier_assignment required | any Value: 1 |
| id | integer |
| address_id | integer |
| automatic_carrier_assignment | boolean |
| carrier_id | integer |
| carrier_service_id | integer |
| company_id | integer |
| consignment_id | integer |
| created_at | integer Unix timestamp |
| created_by | integer |
| customer_code | string |
| customer_order_reference | string |
| leading_status_id | integer |
| planned_dispatch_date | string <date> |
| shipment_load_id | integer |
| shipment_number | string |
| tracking_number | string |
| trailing_status_id | integer |
| updated_at | integer Unix timestamp |
| updated_by | integer |
| warehouse_id | integer |
| routing_code | string |
{- "automatic_carrier_assignment": 0,
- "carrier_id": 2,
- "carrier_service_id": 2,
- "company_id": 41,
- "customer_code": "CUST001",
- "customer_order_reference": "ORD-REF-123",
- "planned_dispatch_date": "2024-10-08",
- "shipment_load_id": 123,
- "shipment_number": "SHIP_001",
- "tracking_number": "123456789",
- "warehouse_id": 3,
- "routing_code": "DPD",
- "shipment_address_id": 1064,
- "details": [
- {
- "allocation_rule_id": 2,
- "automatic_allocation_rule_master": 0,
- "batch_number": "",
- "erp_order_line_number": 1,
- "item_id": 18,
- "quantity": 6,
- "each_price": 9.99
}
], - "pieces": [
- {
- "weight": 5,
- "length": 30,
- "width": 20,
- "height": 15,
- "carrier_piece_number": "PKG-001"
}
]
}{- "id": 0,
- "address_id": 0,
- "automatic_carrier_assignment": true,
- "carrier_id": 0,
- "carrier_service_id": 0,
- "company_id": 0,
- "consignment_id": 0,
- "created_at": 0,
- "created_by": 0,
- "customer_code": "string",
- "customer_order_reference": "string",
- "leading_status_id": 0,
- "planned_dispatch_date": "2019-08-24",
- "shipment_load_id": 0,
- "shipment_number": "string",
- "tracking_number": "string",
- "trailing_status_id": 0,
- "updated_at": 0,
- "updated_by": 0,
- "warehouse_id": 0,
- "routing_code": "string"
}Updates an existing shipment header. The shipment must not be in a closed or dispatched state.
| id required | integer Shipment header ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Fields to update.
| automatic_carrier_assignment required | any Value: 1 |
| id | integer |
| address_id | integer |
| automatic_carrier_assignment | boolean |
| carrier_id | integer |
| carrier_service_id | integer |
| company_id | integer |
| consignment_id | integer |
| created_at | integer Unix timestamp |
| created_by | integer |
| customer_code | string |
| customer_order_reference | string |
| leading_status_id | integer |
| planned_dispatch_date | string <date> |
| shipment_load_id | integer |
| shipment_number | string |
| tracking_number | string |
| trailing_status_id | integer |
| updated_at | integer Unix timestamp |
| updated_by | integer |
| warehouse_id | integer |
| routing_code | string |
{ }{- "id": 0,
- "address_id": 0,
- "automatic_carrier_assignment": true,
- "carrier_id": 0,
- "carrier_service_id": 0,
- "company_id": 0,
- "consignment_id": 0,
- "created_at": 0,
- "created_by": 0,
- "customer_code": "string",
- "customer_order_reference": "string",
- "leading_status_id": 0,
- "planned_dispatch_date": "2019-08-24",
- "shipment_load_id": 0,
- "shipment_number": "string",
- "tracking_number": "string",
- "trailing_status_id": 0,
- "updated_at": 0,
- "updated_by": 0,
- "warehouse_id": 0,
- "routing_code": "string"
}Returns a list of shipment detail (line item) records.
| expand | string Relations to expand (e.g. trailingStatus, leadingStatus, item, shipment_header.company, allocation_rule). |
| start_status | integer Filter by start status ID. |
| end_status | integer Filter by end status ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| shipment_header_id | integer |
| item_id | integer |
| quantity | integer |
| original_qty | integer |
| erp_order_line_number | integer |
| allocation_rule_id | integer |
| open_quantity | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| line_item_id | string ERP/host line reference; returned as a string (may be non-numeric). |
| batch_number | string |
| item_list_price | string List price as returned by WMS (string; may be empty). |
| original_batch_number | string |
| each_price | number <double> |
| shipment_detail_assembly_explosion_id | integer |
| soft_allocated_qty | integer |
| soft_allocation_status | integer 0=unallocated, 1=fully allocated |
| net_weight | number |
| release_date | string |
| line_number | integer |
| order_number | string |
| allocation_reference | string |
| customer_item_reference | string |
| grouping | string |
| automatic_allocation_rule_master | integer |
| preferred_uom_id | integer |
| custom_field_1 | string |
{- "id": 0,
- "shipment_header_id": 0,
- "item_id": 0,
- "quantity": 0,
- "original_qty": 0,
- "erp_order_line_number": 0,
- "allocation_rule_id": 0,
- "open_quantity": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "line_item_id": "string",
- "batch_number": "string",
- "item_list_price": "string",
- "original_batch_number": "string",
- "each_price": 0.1,
- "shipment_detail_assembly_explosion_id": 0,
- "soft_allocated_qty": 0,
- "soft_allocation_status": 0,
- "net_weight": 0,
- "release_date": "string",
- "line_number": 0,
- "order_number": "string",
- "allocation_reference": "string",
- "customer_item_reference": "string",
- "grouping": "string",
- "automatic_allocation_rule_master": 0,
- "preferred_uom_id": 0,
- "custom_field_1": "string"
}Deletes a shipment header by ID. Only shipments in early statuses (e.g. in-pool) can be deleted.
| id required | integer Shipment header ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
{- "status": 204
}Sets on_hold = 1 on one or more shipment headers. Accepts either a single object or an array of objects. Returns the updated shipment header(s).
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id required | integer Shipment header ID. |
| hold_comment | string |
| hold_reason | string |
| id | integer |
| address_id | integer |
| automatic_carrier_assignment | boolean |
| carrier_id | integer |
| carrier_service_id | integer |
| company_id | integer |
| consignment_id | integer |
| created_at | integer Unix timestamp |
| created_by | integer |
| customer_code | string |
| customer_order_reference | string |
| leading_status_id | integer |
| planned_dispatch_date | string <date> |
| shipment_load_id | integer |
| shipment_number | string |
| tracking_number | string |
| trailing_status_id | integer |
| updated_at | integer Unix timestamp |
| updated_by | integer |
| warehouse_id | integer |
| routing_code | string |
[ ][ ]Clears on_hold, hold_comment, and hold_reason_code on one or more shipment headers. Accepts either a single object or an array of objects. Returns lists of successfully released and failed shipment numbers.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id required | integer Shipment header ID. |
| success | Array of strings Shipment numbers successfully released from hold. |
| failed | Array of strings Shipment numbers that could not be released. |
[ ]{- "success": [
- "string"
], - "failed": [
- "string"
]
}Returns a paginated list of shipment loads (trailers/trucks grouping shipments for dispatch).
| per-page | integer Default: 10 Number of results per page. |
| page | integer Default: 1 Page number. |
| expand | string Relations to expand (e.g. carrier, leadingStatus, trailingStatus, leadingStatusDescription, trailingStatusDescription, shipment_status). |
| load_no | string Filter by load number. |
| trailer_number | string Filter by trailer number. |
| condition_id | integer Filter by load status (1 = Open, 2 = In-progress, 3 = Closed). |
| updated_start_date | string <date-time> Example: updated_start_date=2024-01-01T00:00 Filter by last updated date (from). Format: YYYY-MM-DDTHH:MM. |
| updated_end_date | string <date-time> Example: updated_end_date=2024-12-31T23:59 Filter by last updated date (to). Format: YYYY-MM-DDTHH:MM. |
| carrier_id | integer Filter by carrier ID. |
| close | integer Close check filter (0 = Not checked, 1 = Checked). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| condition_id | integer Load status — 1=Open, 2=In-progress, 3=Closed |
| load_no | string |
| trailer_number | string |
| bill_of_lading | string |
| carrier_id | integer |
| warehouse_id | integer |
| type | integer |
| print_name | string |
| load_preference_id | integer |
| container_loaded_count | integer |
| progressive_number | integer |
| shipment_id | integer |
| on_hold | integer |
| hold_reason_id | integer |
| last_hold_create_timestamp | integer |
| last_hold_release_timestamp | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
Array of objects (shipmentHeaderListingResponse) The shipments grouped by this load. Present when fetched with expand=shipmentHeaders (as the mapper does for shipment-load/view). The mapper emits one 945 per entry. |
{- "id": 0,
- "condition_id": 0,
- "load_no": "string",
- "trailer_number": "string",
- "bill_of_lading": "string",
- "carrier_id": 0,
- "warehouse_id": 0,
- "type": 0,
- "print_name": "string",
- "load_preference_id": 0,
- "container_loaded_count": 0,
- "progressive_number": 0,
- "shipment_id": 0,
- "on_hold": 0,
- "hold_reason_id": 0,
- "last_hold_create_timestamp": 0,
- "last_hold_release_timestamp": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "shipmentHeaders": [
- {
- "id": 0,
- "warehouse_id": 0,
- "company_id": 0,
- "shipment_number": "string",
- "customer_code": "string",
- "customer_order_reference": "string",
- "planned_dispatch_date": "2019-08-24",
- "carrier_id": 0,
- "carrier_service_id": 0,
- "tracking_number": "string",
- "leading_status_id": 0,
- "trailing_status_id": 0,
- "shipment_load_id": 0,
- "address_id": 0,
- "address": {
- "id": 0,
- "ship_to_name": "string",
- "ship_to_address1": "string",
- "ship_to_address2": "string",
- "ship_to_address3": "string",
- "ship_to_city": "string",
- "ship_to_state": "string",
- "ship_to_postcode": "string",
- "ship_to_country_id": 0,
- "ship_to_country_state_id": 0,
- "ship_to_attention_to": "string",
- "ship_to_phone_num": "string",
- "ship_to_email_address": "string",
- "ship_to_instructions": "string",
- "ship_to_kind": "string",
- "code": "string",
- "country": {
- "id": 0,
- "name": "string",
- "country_code": "string"
}
}, - "consignment_id": 0,
- "shipment_detail_child_id_count": 0,
- "shipment_detail_qty_sum": 0,
- "max_item_category": 0,
- "min_item_category": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "company_integration_id": 0,
- "entry_number": 0,
- "consolidation_dock_id": 0,
- "stagging_dock_id": 0,
- "automatic_carrier_assignment": true,
- "wave_rejected": true,
- "reject_reason": "string",
- "out_bound_status_flow_id": 0,
- "routing_code": "string",
- "carrier_zone_id": 0,
- "currency_id": 0,
- "custom_field_1": "string",
- "custom_field_2": "string",
- "event_status_id": 0,
- "grouping": "string",
- "hold_comment": "string",
- "hold_reason_code": "string",
- "last_event_datetime": 0,
- "last_event_id": 0,
- "longest_side": 0,
- "max_item_weight": 0,
- "min_item_weight": 0,
- "on_hold": 0,
- "order_number": "string",
- "ship_to_eori_number": "string",
- "ship_to_ioss_number": "string",
- "ship_to_vat_number": "string",
- "shipment_type_id": 0,
- "soft_allocation_status": 0,
- "soft_allocation_updated_at": 0,
- "terms_of_sale": "string",
- "total_cost": 0,
- "total_details": 0,
- "total_net_volume": 0,
- "total_net_weight": 0,
- "total_quantity": 0,
- "total_sale_value": 0,
- "shipment_sub_status_id": 0,
- "no_of_containers": 0,
- "container_type": "string",
- "shipping_cost": 0.1,
- "pre_consigned": 0,
- "department_number": "string",
- "department_name": "string",
- "sort_code": "string",
- "destination_number": "string",
- "last_hold_create_timestamp": 0,
- "last_hold_release_timestamp": 0,
- "has_file": 0,
- "shipmentDetails": [
- {
- "id": 0,
- "shipment_header_id": 0,
- "item_id": 0,
- "quantity": 0,
- "original_qty": 0,
- "erp_order_line_number": 0,
- "allocation_rule_id": 0,
- "open_quantity": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "line_item_id": "string",
- "batch_number": "string",
- "item_list_price": "string",
- "original_batch_number": "string",
- "each_price": 0.1,
- "shipment_detail_assembly_explosion_id": 0,
- "soft_allocated_qty": 0,
- "soft_allocation_status": 0,
- "net_weight": 0,
- "release_date": "string",
- "line_number": 0,
- "order_number": "string",
- "allocation_reference": "string",
- "customer_item_reference": "string",
- "grouping": "string",
- "automatic_allocation_rule_master": 0,
- "preferred_uom_id": 0,
- "custom_field_1": "string"
}
], - "shipmentContainers": [
- {
- "id": 0,
- "container_no": "string",
- "shipment_header_id": 0,
- "consignment_id": 0,
- "parent_id": 0,
- "container_type_id": 0,
- "status_id": 0,
- "consolidation_dock_id": 0,
- "staging_dock_id": 0,
- "job_id": 0,
- "job_instruction_id": 0,
- "weight": 0.1,
- "length": 0,
- "width": 0,
- "height": 0,
- "packing_effort": 0,
- "to_container": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}
]
}
]
}Returns a single shipment load by its database ID. The edi-event-mapper fetches this with expand=shipmentHeaders,shipmentHeaders.shipmentDetails,shipmentHeaders.shipmentContainers to build the outbound 945 (one 945 per shipment header).
| id required | integer Shipment load database ID. |
| expand | string Relations to expand (shipmentHeaders, shipmentHeaders.shipmentDetails, shipmentHeaders.shipmentContainers). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| condition_id | integer Load status — 1=Open, 2=In-progress, 3=Closed |
| load_no | string |
| trailer_number | string |
| bill_of_lading | string |
| carrier_id | integer |
| warehouse_id | integer |
| type | integer |
| print_name | string |
| load_preference_id | integer |
| container_loaded_count | integer |
| progressive_number | integer |
| shipment_id | integer |
| on_hold | integer |
| hold_reason_id | integer |
| last_hold_create_timestamp | integer |
| last_hold_release_timestamp | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
Array of objects (shipmentHeaderListingResponse) The shipments grouped by this load. Present when fetched with expand=shipmentHeaders (as the mapper does for shipment-load/view). The mapper emits one 945 per entry. |
{- "id": 0,
- "condition_id": 0,
- "load_no": "string",
- "trailer_number": "string",
- "bill_of_lading": "string",
- "carrier_id": 0,
- "warehouse_id": 0,
- "type": 0,
- "print_name": "string",
- "load_preference_id": 0,
- "container_loaded_count": 0,
- "progressive_number": 0,
- "shipment_id": 0,
- "on_hold": 0,
- "hold_reason_id": 0,
- "last_hold_create_timestamp": 0,
- "last_hold_release_timestamp": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "shipmentHeaders": [
- {
- "id": 0,
- "warehouse_id": 0,
- "company_id": 0,
- "shipment_number": "string",
- "customer_code": "string",
- "customer_order_reference": "string",
- "planned_dispatch_date": "2019-08-24",
- "carrier_id": 0,
- "carrier_service_id": 0,
- "tracking_number": "string",
- "leading_status_id": 0,
- "trailing_status_id": 0,
- "shipment_load_id": 0,
- "address_id": 0,
- "address": {
- "id": 0,
- "ship_to_name": "string",
- "ship_to_address1": "string",
- "ship_to_address2": "string",
- "ship_to_address3": "string",
- "ship_to_city": "string",
- "ship_to_state": "string",
- "ship_to_postcode": "string",
- "ship_to_country_id": 0,
- "ship_to_country_state_id": 0,
- "ship_to_attention_to": "string",
- "ship_to_phone_num": "string",
- "ship_to_email_address": "string",
- "ship_to_instructions": "string",
- "ship_to_kind": "string",
- "code": "string",
- "country": {
- "id": 0,
- "name": "string",
- "country_code": "string"
}
}, - "consignment_id": 0,
- "shipment_detail_child_id_count": 0,
- "shipment_detail_qty_sum": 0,
- "max_item_category": 0,
- "min_item_category": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "company_integration_id": 0,
- "entry_number": 0,
- "consolidation_dock_id": 0,
- "stagging_dock_id": 0,
- "automatic_carrier_assignment": true,
- "wave_rejected": true,
- "reject_reason": "string",
- "out_bound_status_flow_id": 0,
- "routing_code": "string",
- "carrier_zone_id": 0,
- "currency_id": 0,
- "custom_field_1": "string",
- "custom_field_2": "string",
- "event_status_id": 0,
- "grouping": "string",
- "hold_comment": "string",
- "hold_reason_code": "string",
- "last_event_datetime": 0,
- "last_event_id": 0,
- "longest_side": 0,
- "max_item_weight": 0,
- "min_item_weight": 0,
- "on_hold": 0,
- "order_number": "string",
- "ship_to_eori_number": "string",
- "ship_to_ioss_number": "string",
- "ship_to_vat_number": "string",
- "shipment_type_id": 0,
- "soft_allocation_status": 0,
- "soft_allocation_updated_at": 0,
- "terms_of_sale": "string",
- "total_cost": 0,
- "total_details": 0,
- "total_net_volume": 0,
- "total_net_weight": 0,
- "total_quantity": 0,
- "total_sale_value": 0,
- "shipment_sub_status_id": 0,
- "no_of_containers": 0,
- "container_type": "string",
- "shipping_cost": 0.1,
- "pre_consigned": 0,
- "department_number": "string",
- "department_name": "string",
- "sort_code": "string",
- "destination_number": "string",
- "last_hold_create_timestamp": 0,
- "last_hold_release_timestamp": 0,
- "has_file": 0,
- "shipmentDetails": [
- {
- "id": 0,
- "shipment_header_id": 0,
- "item_id": 0,
- "quantity": 0,
- "original_qty": 0,
- "erp_order_line_number": 0,
- "allocation_rule_id": 0,
- "open_quantity": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "line_item_id": "string",
- "batch_number": "string",
- "item_list_price": "string",
- "original_batch_number": "string",
- "each_price": 0.1,
- "shipment_detail_assembly_explosion_id": 0,
- "soft_allocated_qty": 0,
- "soft_allocation_status": 0,
- "net_weight": 0,
- "release_date": "string",
- "line_number": 0,
- "order_number": "string",
- "allocation_reference": "string",
- "customer_item_reference": "string",
- "grouping": "string",
- "automatic_allocation_rule_master": 0,
- "preferred_uom_id": 0,
- "custom_field_1": "string"
}
], - "shipmentContainers": [
- {
- "id": 0,
- "container_no": "string",
- "shipment_header_id": 0,
- "consignment_id": 0,
- "parent_id": 0,
- "container_type_id": 0,
- "status_id": 0,
- "consolidation_dock_id": 0,
- "staging_dock_id": 0,
- "job_id": 0,
- "job_instruction_id": 0,
- "weight": 0.1,
- "length": 0,
- "width": 0,
- "height": 0,
- "packing_effort": 0,
- "to_container": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}
]
}
]
}Adds a line item to an existing shipment header.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Shipment detail object.
| shipment_header_id required | integer |
| item_id required | integer |
| quantity required | integer |
| erp_order_line_number required | integer |
| allocation_rule_id | integer |
| each_price | number <double> |
| automatic_allocation_rule_master | boolean |
| id | integer |
| shipment_header_id | integer |
| item_id | integer |
| quantity | integer |
| original_qty | integer |
| erp_order_line_number | integer |
| allocation_rule_id | integer |
| open_quantity | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| line_item_id | string ERP/host line reference; returned as a string (may be non-numeric). |
| batch_number | string |
| item_list_price | string List price as returned by WMS (string; may be empty). |
| original_batch_number | string |
| each_price | number <double> |
| shipment_detail_assembly_explosion_id | integer |
| soft_allocated_qty | integer |
| soft_allocation_status | integer 0=unallocated, 1=fully allocated |
| net_weight | number |
| release_date | string |
| line_number | integer |
| order_number | string |
| allocation_reference | string |
| customer_item_reference | string |
| grouping | string |
| automatic_allocation_rule_master | integer |
| preferred_uom_id | integer |
| custom_field_1 | string |
{- "shipment_header_id": 1,
- "item_id": 1,
- "quantity": 1,
- "erp_order_line_number": 1,
- "allocation_rule_id": 1,
- "each_price": 1.1,
- "automatic_allocation_rule_master": 1
}{- "id": 0,
- "shipment_header_id": 0,
- "item_id": 0,
- "quantity": 0,
- "original_qty": 0,
- "erp_order_line_number": 0,
- "allocation_rule_id": 0,
- "open_quantity": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "line_item_id": "string",
- "batch_number": "string",
- "item_list_price": "string",
- "original_batch_number": "string",
- "each_price": 0.1,
- "shipment_detail_assembly_explosion_id": 0,
- "soft_allocated_qty": 0,
- "soft_allocation_status": 0,
- "net_weight": 0,
- "release_date": "string",
- "line_number": 0,
- "order_number": "string",
- "allocation_reference": "string",
- "customer_item_reference": "string",
- "grouping": "string",
- "automatic_allocation_rule_master": 0,
- "preferred_uom_id": 0,
- "custom_field_1": "string"
}Returns a list of configured carriers.
| name | string Filter by carrier name. |
| expand | string Relations to expand. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string |
| carrier_class_id | string |
| status | integer 1 = Active, 0 = Inactive |
| additional_label | boolean or null |
| tracking_url | string or null |
| print_custom_carrier_label | boolean or null |
| rule | boolean |
[- {
- "id": 0,
- "name": "string",
- "carrier_class_id": "string",
- "status": 0,
- "additional_label": true,
- "tracking_url": "string",
- "print_custom_carrier_label": true,
- "rule": true
}
]Returns a list of carrier services. Filter by carrier_id to scope to a specific carrier.
| name | string Filter by carrier service name. |
| carrier_id | integer Filter by carrier ID. |
| expand | string Relations to expand. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| carrier_id | integer |
| name | string |
| code | string |
| carrier_specific_field_1 | string or null |
| carrier_specific_field_2 | string or null |
| status | integer 1 = Active, 0 = Inactive |
[- {
- "id": 0,
- "carrier_id": 0,
- "name": "string",
- "code": "string",
- "carrier_specific_field_1": "string",
- "carrier_specific_field_2": "string",
- "status": 0
}
]Returns a list of available external integration definitions.
| per-page | integer Default: 1000 Number of results per page (required). |
| page | integer Default: 1 Page number (required). |
| expand | string Relations to expand. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| _id | string MongoDB ObjectId |
| created_at | string <date-time> |
| name | string |
| __v | integer MongoDB document version. |
| apis | Array of strings API keys or endpoints exposed by this integration. |
{- "_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "name": "string",
- "__v": 0,
- "apis": [
- "string"
]
}Returns aggregated inventory quantities per item per location. Useful for stock-level reporting.
| item_code | string Filter by item code. |
| location_code | string Filter by location code. |
| company_id | integer Filter by company ID. |
| warehouse_id | integer Filter by warehouse ID. |
| license_plate_no | string Filter by license plate number. |
| show_active | boolean When false, includes zero-quantity records. |
| expand | string Relations to expand. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| item_code | string |
| description | string |
| item_id | integer |
| item_unit_of_measure_id | integer |
| location_id | integer |
| inventory_status | string e.g. available, held, quarantine |
| on_hand_quantity | integer |
| allocated_quantity | integer |
| in_transit_quantity | integer |
| free_stock | integer on_hand_quantity minus allocated_quantity |
| warehouse_id | integer |
| unit_of_measure_name | string |
| unallocated_quantity | integer |
| company_integration_id | integer |
{- "item_code": "string",
- "description": "string",
- "item_id": 0,
- "item_unit_of_measure_id": 0,
- "location_id": 0,
- "inventory_status": "string",
- "on_hand_quantity": 0,
- "allocated_quantity": 0,
- "in_transit_quantity": 0,
- "free_stock": 0,
- "warehouse_id": 0,
- "unit_of_measure_name": "string",
- "unallocated_quantity": 0,
- "company_integration_id": 0
}Returns available inventory adjustment type definitions.
| expand | string Relations to expand. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string |
| description | string |
| adjustment_class | integer Classification identifier for the adjustment type. |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| status | integer 1 = Active, 0 = Inactive |
{- "id": 0,
- "name": "string",
- "description": "string",
- "adjustment_class": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "status": 0
}Performs an inventory adjustment. Supports four modes controlled by adjustment_type_id:
location_to_id.user_id and location_to_id.| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Inventory adjustment object.
| adjustment_type_id required | integer |
| item_id required | integer |
| item_unit_of_measure_id required | integer |
| location_from_id required | integer Source location ID. |
| quantity required | integer |
| comment | string |
| inventory_status | string Inventory status (e.g. available, held, quarantine). |
| location_to_id | integer Destination location ID. Required for Transfer (type 2) and Transfer With User (type 4). |
| reason_code | string |
| user_id | integer Required for Transfer With User (type 4). |
| license_plate_no | string License plate number. Required for Transfer With User (type 4). |
| id | integer |
| created_at | integer Unix timestamp |
| created_by | integer |
| inventory_status | string |
| item_id | integer |
| item_unit_of_measure_id | integer |
| location_id | integer |
| on_hand_quantity | integer |
| status | integer |
| updated_at | integer Unix timestamp |
| updated_by | integer |
{- "adjustment_type_id": 1,
- "comment": "Write-off damaged stock",
- "inventory_status": "available",
- "item_id": 3112,
- "item_unit_of_measure_id": 3090,
- "location_from_id": 8,
- "quantity": 550,
- "reason_code": "AD-55"
}{- "id": 1808,
- "created_at": 1637574485,
- "created_by": 9,
- "inventory_status": "available",
- "item_id": 3112,
- "item_unit_of_measure_id": 3090,
- "location_id": 8,
- "on_hand_quantity": 0,
- "status": 1,
- "updated_at": 1637574485,
- "updated_by": 9
}Returns a paginated list of individual inventory records.
| expand | string Relations to expand (e.g. item, item.company, batch, users, item_unit_of_measure.unit_of_measure, location.location_type, warehouse, onHandUnits, inTransitUnits, allocatedUnits, suspendedUnits, uomWithFactor). |
| location_code | string Filter by location code. |
| company_id | integer Filter by company ID. |
| warehouse_id | integer Filter by warehouse ID. |
| license_plate_no | string Filter by license plate number. |
| item_code | string Filter by item code. |
| description | string Filter by item description (partial match). |
| reference | string Filter by item reference/barcode. |
| item_group_id | integer Filter by item group ID. |
| batch_no | string Filter by batch number. |
| inventory_status | string Filter by inventory status (e.g. available, held, quarantine). |
| per-page | integer Default: 10 Number of results per page. |
| page | integer Default: 1 Page number. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| _id | string MongoDB ObjectId |
| allocatedUnits | integer |
| allocated_quantity | integer |
| batch | string |
| created_at | integer Unix timestamp |
| inTransitUnits | integer |
| in_transit_quantity | integer |
| inventory_status | string e.g. available, held, quarantine |
| location_code | string |
| item_id | integer |
| item_unit_of_measure_id | integer |
| on_hand_quantity | integer |
| suspended_quantity | integer |
| unit_of_measure | string |
| is_with_user | integer 1 if inventory is currently assigned to a user (e.g. in a picking job). |
| last_cycle_count_date | string <date-time> |
| license_plate_no | string |
| location_id | integer |
| onHandUnits | integer |
| suspendedUnits | integer |
| uomWithFactor | boolean |
| updated_at | integer Unix timestamp |
{- "_id": "string",
- "allocatedUnits": 0,
- "allocated_quantity": 0,
- "batch": "string",
- "created_at": 0,
- "inTransitUnits": 0,
- "in_transit_quantity": 0,
- "inventory_status": "string",
- "location_code": "string",
- "item_id": 0,
- "item_unit_of_measure_id": 0,
- "on_hand_quantity": 0,
- "suspended_quantity": 0,
- "unit_of_measure": "string",
- "is_with_user": 0,
- "last_cycle_count_date": "2019-08-24T14:15:22Z",
- "license_plate_no": "string",
- "location_id": 0,
- "onHandUnits": 0,
- "suspendedUnits": 0,
- "uomWithFactor": true,
- "updated_at": 0
}Returns a paginated audit trail of all inventory movements and adjustments.
| start_date | string <date-time> Example: start_date=2024-01-01 00:00:00 Filter by transaction date (from). Format: YYYY-MM-DD HH:MM:SS. |
| end_date | string <date-time> Filter by transaction date (to). |
| location_code | string Filter by location code. |
| company_code | string Filter by company code. |
| warehouse_code | string Filter by warehouse code. |
| license_plate_no | string Filter by license plate number. |
| item_code | string Filter by item code. |
| inventory_id | integer Filter by inventory record ID. |
| transaction_type | string Example: transaction_type=Adjustment Filter by transaction type (e.g. Adjustment, Transfer, Receipt, Shipment). |
| reference | string Filter by reference number. |
| username | string Filter by username. |
| batch_no | string Filter by batch number. |
| per-page | integer Default: 10 Number of results per page. |
| page | integer Default: 1 Page number. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| inventory_id | integer |
| created_at | integer Unix timestamp |
| reason_code | string |
| comment | string |
| _id | string MongoDB ObjectId |
| transaction_time | string <date-time> |
| item_code | string |
| company_code | string |
| location_code | string |
| warehouse_code | string |
| status | string |
| batch_no | string |
| license_plate_no | string |
| transaction_type | string e.g. Adjustment, Transfer, Receipt, Shipment |
| direction | string IN or OUT |
| quantity | integer |
| username | string |
| on_hand_quantity | integer |
| allocated_quantity | integer |
| in_transit_quantity | integer |
| suspended_quantity | integer |
| on_hand_quantity_before | integer |
| allocated_quantity_before | integer |
| in_transit_quantity_before | integer |
| suspended_quantity_before | integer |
| unit_of_measure | string |
| factor | number <double> |
| reference | string |
| application_id | string |
| __v | integer |
{- "inventory_id": 0,
- "created_at": 0,
- "reason_code": "string",
- "comment": "string",
- "_id": "string",
- "transaction_time": "2019-08-24T14:15:22Z",
- "item_code": "string",
- "company_code": "string",
- "location_code": "string",
- "warehouse_code": "string",
- "status": "string",
- "batch_no": "string",
- "license_plate_no": "string",
- "transaction_type": "string",
- "direction": "string",
- "quantity": 0,
- "username": "string",
- "on_hand_quantity": 0,
- "allocated_quantity": 0,
- "in_transit_quantity": 0,
- "suspended_quantity": 0,
- "on_hand_quantity_before": 0,
- "allocated_quantity_before": 0,
- "in_transit_quantity_before": 0,
- "suspended_quantity_before": 0,
- "unit_of_measure": "string",
- "factor": 0.1,
- "reference": "string",
- "application_id": "string",
- "__v": 0
}Returns a list of all warehouses accessible to the authenticated user.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| warehouse_code | string |
| description | string |
| status | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| address_id | integer |
[- {
- "id": 0,
- "warehouse_code": "string",
- "description": "string",
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "address_id": 0
}
]Returns a single warehouse record.
| id required | integer Warehouse ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| warehouse_code | string |
| description | string |
| status | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| address_id | integer |
{- "id": 0,
- "warehouse_code": "string",
- "description": "string",
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "address_id": 0
}Returns a list of delivery addresses.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| ship_to_address1 | string |
| ship_to_address2 | string |
| ship_to_address3 | string |
| ship_to_attention_to | string |
| ship_to_city | string |
| ship_to_country_id | integer |
| ship_to_email_address | string |
| ship_to_instructions | string |
| ship_to_kind | string e.g. Company, Individual |
| ship_to_name | string |
| ship_to_phone_num | string |
| ship_to_postcode | string |
| ship_to_state | string |
{- "id": 0,
- "ship_to_address1": "string",
- "ship_to_address2": "string",
- "ship_to_address3": "string",
- "ship_to_attention_to": "string",
- "ship_to_city": "string",
- "ship_to_country_id": 0,
- "ship_to_email_address": "string",
- "ship_to_instructions": "string",
- "ship_to_kind": "string",
- "ship_to_name": "string",
- "ship_to_phone_num": "string",
- "ship_to_postcode": "string",
- "ship_to_state": "string"
}Returns a single delivery address record.
| id required | integer Address ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| ship_to_address1 | string |
| ship_to_address2 | string |
| ship_to_address3 | string |
| ship_to_attention_to | string |
| ship_to_city | string |
| ship_to_country_id | integer |
| ship_to_email_address | string |
| ship_to_instructions | string |
| ship_to_kind | string e.g. Company, Individual |
| ship_to_name | string |
| ship_to_phone_num | string |
| ship_to_postcode | string |
| ship_to_state | string |
{- "id": 0,
- "ship_to_address1": "string",
- "ship_to_address2": "string",
- "ship_to_address3": "string",
- "ship_to_attention_to": "string",
- "ship_to_city": "string",
- "ship_to_country_id": 0,
- "ship_to_email_address": "string",
- "ship_to_instructions": "string",
- "ship_to_kind": "string",
- "ship_to_name": "string",
- "ship_to_phone_num": "string",
- "ship_to_postcode": "string",
- "ship_to_state": "string"
}Creates a new delivery address record.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Address object.
| ship_to_country_id required | integer |
| ship_to_address1 | string |
| ship_to_address2 | string |
| ship_to_address3 | string |
| ship_to_attention_to | string |
| ship_to_city | string |
| ship_to_email_address | string <email> |
| ship_to_instructions | string |
| ship_to_kind | string e.g. Company, Individual |
| ship_to_name | string |
| ship_to_phone_num | string Pattern: /^[+][(]{0,1}[0-9]{1,4}[)]{0,1}[-\s.0-9]$/ |
| ship_to_postcode | string |
| ship_to_state | string |
| id | integer |
| ship_to_address1 | string |
| ship_to_address2 | string |
| ship_to_address3 | string |
| ship_to_attention_to | string |
| ship_to_city | string |
| ship_to_country_id | integer |
| ship_to_email_address | string |
| ship_to_instructions | string |
| ship_to_kind | string |
| ship_to_name | string |
| ship_to_phone_num | string |
| ship_to_postcode | string |
| ship_to_state | string |
{- "ship_to_address1": "239 DRUM ROAD",
- "ship_to_address2": "COOKSTOWN",
- "ship_to_attention_to": "Thomas Edison",
- "ship_to_city": "COOKSTOWN",
- "ship_to_country_id": 235,
- "ship_to_instructions": "Leave at reception.",
- "ship_to_kind": "Company",
- "ship_to_name": "Thomas Wright",
- "ship_to_phone_num": "01234567890",
- "ship_to_postcode": "BT80 9HP",
- "ship_to_state": "County Tyrone"
}{- "id": 0,
- "ship_to_address1": "string",
- "ship_to_address2": "string",
- "ship_to_address3": "string",
- "ship_to_attention_to": "string",
- "ship_to_city": "string",
- "ship_to_country_id": 0,
- "ship_to_email_address": "string",
- "ship_to_instructions": "string",
- "ship_to_kind": "string",
- "ship_to_name": "string",
- "ship_to_phone_num": "string",
- "ship_to_postcode": "string",
- "ship_to_state": "string"
}Returns a list of inventory allocation rules used during pick job creation.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string |
| status | integer 1 = Active, 0 = Inactive |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| sequence | integer |
{- "id": 0,
- "name": "string",
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "sequence": 0
}Returns a list of put-away locating rules used during receipt processing.
| expand | string Relations to expand (e.g. allocationRule, locationSelection, location_selection, allocation_rule). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string |
| special_rule | integer |
| status | integer 1 = Active, 0 = Inactive |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| sequence | integer |
{- "id": 0,
- "name": "string",
- "special_rule": 0,
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "sequence": 0
}Returns location class definitions (e.g. Bulk, Pick Face, Staging, Receiving Dock).
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string |
| description | string |
| status | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| system_created | boolean |
{- "id": 0,
- "name": "string",
- "description": "string",
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "system_created": true
}Returns location type definitions including physical dimensions and weight limits.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string |
| length | number <double> |
| width | number <double> |
| height | number <double> |
| max_weight | number <double> |
| status | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
{- "id": 0,
- "name": "string",
- "length": 0.1,
- "width": 0.1,
- "height": 0.1,
- "max_weight": 0.1,
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}Returns a paginated list of warehouse locations.
| expand | string Relations to expand. |
| per-page | integer Default: 10 Number of results per page. |
| page | integer Default: 1 Page number. |
| location_class_id | integer Filter by location class ID. |
| location_type_id | integer Filter by location type ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| location_code | string |
| description | string |
| warehouse_id | integer |
| status | boolean |
| allow_multiple_items | boolean |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| enable_license_plate | integer |
| location_type_id | integer |
| location_class_id | integer |
| allocation_zone_id | integer |
| work_zone_id | integer |
| locating_zone_id | integer |
| template_field_1 | string |
| template_field_2 | string |
| template_field_3 | string |
| template_field_4 | string |
| template_field_5 | string |
| template_field_6 | string |
| location_template_id | integer |
| check_digit | string |
| p_n_d_entry | integer |
| p_n_d_exit | integer |
| machine_id | integer |
| position_id | integer |
| pick_sequence | integer |
{- "id": 0,
- "location_code": "string",
- "description": "string",
- "warehouse_id": 0,
- "status": true,
- "allow_multiple_items": true,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "enable_license_plate": 0,
- "location_type_id": 0,
- "location_class_id": 0,
- "allocation_zone_id": 0,
- "work_zone_id": 0,
- "locating_zone_id": 0,
- "template_field_1": "string",
- "template_field_2": "string",
- "template_field_3": "string",
- "template_field_4": "string",
- "template_field_5": "string",
- "template_field_6": "string",
- "location_template_id": 0,
- "check_digit": "string",
- "p_n_d_entry": 0,
- "p_n_d_exit": 0,
- "machine_id": 0,
- "position_id": 0,
- "pick_sequence": 0
}Returns a paginated list of inbound receipt headers.
| updated_start_date | string <date-time> Example: updated_start_date=2024-01-01T00:00 Filter by last updated date (from). Format: YYYY-MM-DDTHH:MM. |
| updated_end_date | string <date-time> Filter by last updated date (to). |
| start_date | string <date> Filter by expected receipt date (from). Format: YYYY-MM-DD. |
| end_date | string <date> Filter by expected receipt date (to). |
| per-page | integer Default: 10 Number of results per page. |
| page | integer Default: 1 Page number. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| receipt_type_id | integer |
| receipt_date | string <date> |
| company_id | integer |
| warehouse_id | integer |
| source_id | string Vendor/supplier identifier. |
| source_address | string |
| source_city | string |
| source_state | string |
| source_zipcode | string |
| source_country_id | integer |
| leading_status | integer |
| trailing_status | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| receipt_num | string Unique receipt reference number. |
| order_number | string |
| start_date | string <date> |
| end_date | string <date> |
| company_integration_id | string |
object Expanded leading status details. | |
object Expanded trailing status details. |
{- "id": 0,
- "receipt_type_id": 0,
- "receipt_date": "2019-08-24",
- "company_id": 0,
- "warehouse_id": 0,
- "source_id": "string",
- "source_address": "string",
- "source_city": "string",
- "source_state": "string",
- "source_zipcode": "string",
- "source_country_id": 0,
- "leading_status": 0,
- "trailing_status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "receipt_num": "string",
- "order_number": "string",
- "start_date": "2019-08-24",
- "end_date": "2019-08-24",
- "company_integration_id": "string",
- "leadingStatus": {
- "type": "string",
- "value": "string",
- "description": "string"
}, - "trailingStatus": {
- "type": "string",
- "value": "string",
- "description": "string"
}
}Updates a receipt header. Only headers in editable statuses can be modified.
| id required | integer Receipt header ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Fields to update.
| id | integer |
| receipt_type_id | integer |
| receipt_date | string <date> |
| company_id | integer |
| warehouse_id | integer |
| source_id | string |
| source_address | string |
| source_city | string |
| source_state | string |
| source_zipcode | string |
| source_country_id | integer |
| order_number | string |
| id | integer |
| receipt_type_id | integer |
| receipt_date | string <date> |
| company_id | integer |
| warehouse_id | integer |
| source_id | string Vendor/supplier identifier. |
| source_address | string |
| source_city | string |
| source_state | string |
| source_zipcode | string |
| source_country_id | integer |
| leading_status | integer |
| trailing_status | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| receipt_num | string Unique receipt reference number. |
| order_number | string |
| start_date | string <date> |
| end_date | string <date> |
| company_integration_id | string |
object Expanded leading status details. | |
object Expanded trailing status details. |
{- "receipt_type_id": 1,
- "receipt_date": "2023-08-17",
- "company_id": 60,
- "warehouse_id": 1,
- "source_id": "VENDOR-001",
- "source_address": "123 Supplier Street",
- "source_city": "London",
- "source_state": "England",
- "source_zipcode": "EC1A 1BB",
- "source_country_id": 236,
- "order_number": "PO-2024-001"
}{- "id": 0,
- "receipt_type_id": 0,
- "receipt_date": "2019-08-24",
- "company_id": 0,
- "warehouse_id": 0,
- "source_id": "string",
- "source_address": "string",
- "source_city": "string",
- "source_state": "string",
- "source_zipcode": "string",
- "source_country_id": 0,
- "leading_status": 0,
- "trailing_status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "receipt_num": "string",
- "order_number": "string",
- "start_date": "2019-08-24",
- "end_date": "2019-08-24",
- "company_integration_id": "string",
- "leadingStatus": {
- "type": "string",
- "value": "string",
- "description": "string"
}, - "trailingStatus": {
- "type": "string",
- "value": "string",
- "description": "string"
}
}Returns a list of receipt detail (line item) records.
| updated_start_date | string <date-time> Filter by last updated date (from). Format: YYYY-MM-DDTHH:MM. |
| updated_end_date | string <date-time> Filter by last updated date (to). |
| per-page | integer Default: 10 Number of results per page. |
| page | integer Default: 1 Page number. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| receipt_header_id | integer |
| item_id | integer |
| quantity | integer |
| erp_order_line_number | integer |
| order_line_number | string |
| receipt_date | string <date> |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| open_quantity | integer |
| locating_rule_id | integer |
| line_item_id | integer |
| custom_field_1 | string |
| custom_field_2 | string |
{- "id": 0,
- "receipt_header_id": 0,
- "item_id": 0,
- "quantity": 0,
- "erp_order_line_number": 0,
- "order_line_number": "string",
- "receipt_date": "2019-08-24",
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "open_quantity": 0,
- "locating_rule_id": 0,
- "line_item_id": 0,
- "custom_field_1": "string",
- "custom_field_2": "string"
}Updates one or more receipt detail lines. Accepts a single object or an array for bulk updates.
| id | integer Receipt detail ID (used for single-record updates). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Receipt detail object or array of objects for bulk update.
| id | integer |
| receipt_header_id | integer |
| item_id | integer |
| quantity | integer |
| erp_order_line_number | integer |
| order_line_number | string |
| receipt_date | string <date> |
| open_quantity | integer |
| locating_rule_id | integer |
| line_item_id | integer |
| custom_field_1 | string |
| custom_field_2 | string |
| expected_batch_no | string |
| presale | integer 1 if this is a pre-sale allocation. |
| automatic_locating_assignment | integer Set to 1 to auto-assign the locating rule. |
| id | integer |
| receipt_header_id | integer |
| item_id | integer |
| quantity | integer |
| erp_order_line_number | integer |
| order_line_number | string |
| receipt_date | string <date> |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| open_quantity | integer |
| locating_rule_id | integer |
| line_item_id | integer |
| custom_field_1 | string |
| custom_field_2 | string |
[- {
- "id": 284,
- "receipt_header_id": 587,
- "item_id": 8872,
- "quantity": 11,
- "erp_order_line_number": 1,
- "receipt_date": "2025-03-12",
- "open_quantity": 1,
- "locating_rule_id": 2
}, - {
- "id": 285,
- "receipt_header_id": 587,
- "item_id": 8874,
- "quantity": 11,
- "erp_order_line_number": 2,
- "receipt_date": "2025-03-12",
- "open_quantity": 1,
- "locating_rule_id": 2
}
]{- "id": 0,
- "receipt_header_id": 0,
- "item_id": 0,
- "quantity": 0,
- "erp_order_line_number": 0,
- "order_line_number": "string",
- "receipt_date": "2019-08-24",
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "open_quantity": 0,
- "locating_rule_id": 0,
- "line_item_id": 0,
- "custom_field_1": "string",
- "custom_field_2": "string"
}Returns receipt container records (physical units/pallets received).
| updated_start_date | string <date-time> Filter by last updated date (from). |
| updated_end_date | string <date-time> Filter by last updated date (to). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| receipt_detail_id | integer |
| receipt_header_id | integer |
| item_id | integer |
| quantity | integer |
| batch_id | integer |
| license_plate_no | string |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
| status_id | integer |
| to_location_id | integer |
| license_plate_assignment_method | integer |
| receiving_profile_id | integer |
| item_unit_of_measure_id | integer |
| job_id | integer |
| container_type_id | integer |
| receiving_dock_id | integer |
| job_instruction_id | integer |
object |
{- "id": 0,
- "receipt_detail_id": 0,
- "receipt_header_id": 0,
- "item_id": 0,
- "quantity": 0,
- "batch_id": 0,
- "license_plate_no": "string",
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "status_id": 0,
- "to_location_id": 0,
- "license_plate_assignment_method": 0,
- "receiving_profile_id": 0,
- "item_unit_of_measure_id": 0,
- "job_id": 0,
- "container_type_id": 0,
- "receiving_dock_id": 0,
- "job_instruction_id": 0,
- "status": {
- "type": "string",
- "value": "string",
- "description": "string"
}
}Creates a new inbound receipt header, optionally with expected line items.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Receipt object.
| company_id required | integer |
| warehouse_id required | integer |
| receipt_type_id required | integer |
| receipt_date | string <date> |
| receipt_num | string Unique receipt number. Auto-generated if omitted. |
| order_number | string |
| source_address | string |
| source_city | string |
| source_country_id | integer |
| source_id | string |
| source_state | string |
| source_zipcode | string |
Array of objects or objects Expected line items on this receipt. |
| id | integer |
| company_id | integer |
| receipt_date | string <date> |
| receipt_type_id | integer |
| receipt_num | string |
| order_number | string |
| source_address | string |
| source_city | string |
| source_country_id | integer |
| source_id | string |
| source_state | string |
| source_zipcode | string |
| warehouse_id | integer |
| leading_status | integer |
| trailing_status | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
object | |
object |
{- "company_id": 42,
- "receipt_date": "2024-06-09",
- "receipt_type_id": 1,
- "receipt_num": "PO-2024-001",
- "order_number": "12345",
- "source_address": "123 Supplier Road",
- "source_city": "Manchester",
- "source_country_id": 236,
- "source_id": "VENDOR-001",
- "source_state": "England",
- "source_zipcode": "M1 1AE",
- "warehouse_id": 3,
- "details": [
- {
- "erp_order_line_number": 1,
- "item_id": 18,
- "locating_rule_id": 2,
- "quantity": 6,
- "receipt_date": "2024-06-09",
- "automatic_locating_assignment": 0
}
]
}{- "id": 0,
- "company_id": 0,
- "receipt_date": "2019-08-24",
- "receipt_type_id": 0,
- "receipt_num": "string",
- "order_number": "string",
- "source_address": "string",
- "source_city": "string",
- "source_country_id": 0,
- "source_id": "string",
- "source_state": "string",
- "source_zipcode": "string",
- "warehouse_id": 0,
- "leading_status": 0,
- "trailing_status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0,
- "leadingStatus": {
- "type": "string",
- "value": 0,
- "description": "string"
}, - "trailingStatus": {
- "type": "string",
- "value": 0,
- "description": "string"
}
}Deletes a receipt header by ID. Only receipts that have not yet been started can be deleted.
| id required | integer Receipt header ID. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| status | integer |
{- "status": 202
}Returns available receipt type classifications (e.g. Purchase Order, Return).
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
{- "id": 0,
- "name": "string",
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}Closes (dispatches) one or more shipments. Moves shipments to Closed status and triggers consignment completion.
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Array of shipments to close.
| shipment_number required | string |
| company_id required | integer |
| total_container | integer Total number of parcels/containers for this shipment. |
| failed | string Comma-separated list of shipment numbers that failed to close. |
| success | string Comma-separated list of shipment numbers successfully closed. |
[- {
- "shipment_number": "SHIP_001",
- "total_container": 2,
- "company_id": 41
}
]{- "failed": "string",
- "success": "string"
}Returns a paginated audit trail of system process events (e.g. wave creation, job assignment, receipt processing).
| start_date | string <date-time> Example: start_date=2024-01-01 00:00:00 Filter by activity date (from). Format: YYYY-MM-DD HH:MM:SS. |
| end_date | string <date-time> Filter by activity date (to). |
| company_id | integer Filter by company ID. |
| reference | string Filter by reference (e.g. shipment number, receipt number). |
| process | string Filter by process name (e.g. SHIPMENT, RECEIPT, WAVE). |
| action | string Filter by action (e.g. CREATE, UPDATE, DELETE). |
| per-page | integer Default: 10 Number of results per page. |
| page | integer Default: 1 Page number. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| process | string Process name (e.g. SHIPMENT, RECEIPT, WAVE). |
| action | string Action performed (e.g. CREATE, UPDATE, DELETE). |
| message | string |
| company_id | integer |
| identifier_1 | string |
| identifier_2 | string |
| identifier_3 | string |
| identifier_4 | string |
| data | Array of objects Additional structured data associated with the log entry. |
| activity_date_time | string <date-time> |
| created_at | string <date-time> |
| updated_at | string <date-time> |
| application_id | string |
| reference | string |
| wave_id | integer |
| reason | string |
{- "process": "string",
- "action": "string",
- "message": "string",
- "company_id": 0,
- "identifier_1": "string",
- "identifier_2": "string",
- "identifier_3": "string",
- "identifier_4": "string",
- "data": [
- { }
], - "activity_date_time": "2019-08-24T14:15:22Z",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "application_id": "string",
- "reference": "string",
- "wave_id": 0,
- "reason": "string"
}Returns replenishment template configurations used to trigger replenishment runs.
| expand | string Relations to expand (e.g. allocationRule, locationSelection, allocation_rule). |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
| id | integer |
| name | string |
| location_selection_id | integer |
| allocation_rule_id | integer |
| item_selection_id | integer |
| demand_id | integer |
| locating_rule_id | integer |
| status | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
{- "id": 1,
- "name": "Daily Pick Face Replenishment",
- "location_selection_id": 1,
- "allocation_rule_id": 2,
- "status": 1,
- "created_at": 1658219849,
- "updated_at": 1658219849,
- "created_by": 9,
- "updated_by": 9,
- "item_selection_id": 1,
- "demand_id": 1,
- "locating_rule_id": 2
}Triggers a replenishment run based on the specified template, generating jobs to move stock to pick faces.
| template_id required | integer Replenishment template ID to run. |
| Origin required | string Example: https://your-tenant.example.com The tenant's URL used for multi-tenant request isolation. Must match the URL of your Canary7 instance (e.g., https://your-tenant.example.com). Required on all requests. |
Optional additional parameters. Leave body empty if none required.
| id | integer |
| name | string |
| location_selection_id | integer |
| allocation_rule_id | integer |
| item_selection_id | integer |
| demand_id | integer |
| locating_rule_id | integer |
| status | integer |
| created_at | integer Unix timestamp |
| updated_at | integer Unix timestamp |
| created_by | integer |
| updated_by | integer |
{ }{- "id": 0,
- "name": "string",
- "location_selection_id": 0,
- "allocation_rule_id": 0,
- "item_selection_id": 0,
- "demand_id": 0,
- "locating_rule_id": 0,
- "status": 0,
- "created_at": 0,
- "updated_at": 0,
- "created_by": 0,
- "updated_by": 0
}