Unfortunately, this feature is not supported on mobile devices. For the best experience, please use a computer.

project44 REST API (4.0.0)

Version 4.0.0 of project44's API

Download OpenAPI description
Languages
Servers
Mock server
https://developers.project44.com/_mock/api-reference/api-docs/
NA - Endpoint for project44 tenants created in the NA region
https://na12.api.project44.com/
EU - Endpoint for project44 tenants created in the EU region
https://eu12.api.project44.com/
Sandbox - Endpoint for project44 tenants created in the sandbox environment
https://na12.api.sandbox.p-44.com/

OAuth 2.0: Client Applications

API used for registering and managing OAuth 2.0 client applications. See the "Authentication" section above for more information. To authorize API requests to project44 for an API integration, first your client application must be registered with project44, which will issue your application a client id and secret. These credentials can then be used to generate bearer tokens, which can be included on all other API requests to authorize your client application. The client application is authorized through the project44 user management UI as a machine user with username "app-{client_id}@client-applications.project44.com".

An admin user (with VOC user role "Customer Admin") must use HTTP Basic Authentication with this API to manage client applications. Basic Authentication is deprecated for all other APIs, besides token generation, in favor of passing the access token generated via OAuth 2.0.

Operations

OAuth 2.0: Token Generation

API for OAuth 2.0 token generation. See the "Authentication" section above for more information. Once your client application is registered, you can use the token generation endpoint to authenticate with your application's client id and secret in exchange for a bearer token to be included on all other API requests to authenticate as that client application. The client application is authorized through the project44 user management UI as a machine user with username "app-{client_id}@client-applications.project44.com".

To generate an access token, you may authenticate your client application by providing its client id and secret either in the body of the request or in the form of HTTP Basic Authentication (but you may not use both ways in the same request).

Operations

LTL: Quotes

Quote LTL rates and retrieve transit times.

Operations

VLTL: Quotes

API used for quoting volume LTL rates.

Operations

VLTL: Dispatch

API used for scheduling volume LTL shipments.

Operations

LTL: Dispatch

API used for scheduling LTL shipments.

Operations

LTL: Tracking

API used for the retrieval of shipment status.

Operations

LTL: Image Retrieval

Access shipment images.

Operations

TL: Tracking

project44's Truckload Tracking endpoints give you or your customers visibility into your truckload shipments, including such features as predictive ETAs and temperature tracking. Use these endpoints to initialize (POST), track (GET), update (PUT), cancel (POST) or delete(DELETE) truckload shipments. You can return shipment information by either unique system ID or by identifier.

Operations

TL: Available Vehicles

API used for fetching vehicles within a specific radius and time window. Can only be used if opted into a project44 Co-Op.

Operations

TL: Connected Capacity

API for finding new connected carrier partners in the project44 network based on tracking performance

Operations

Rail: Tracking

API used for accessing rail shipment tracking.

Operations

Capacity Provider Account Group Management

Manage capacity provider account groups. Groups are used to sort capacity provider accounts on a per customer or location basis.

For example, you can add multiple capacity providers to a group if they all share lanes to the same origin/destination location.

Another example, if certain customers receive different rates for a capacity provider, it may be reasonable to use separate groups for each customer's capacity provider accounts.

Use these APIs to create (POST), retrieve (GET) or delete (DELETE) capacity provider account groups.

Operations

Capacity Provider Account Management

Manage capacity provider accounts where a capacity provider is typically used to represent a carrier.

Capacity providers have capacity provider account definitions also known as capacity provider account types. Capacity provider accounts are arranged in sets where each set contains one or more accounts for the same capacity provider. Each capacity provider's service is compatible with one and only one of these capacity provider accounts. Because most capacity providers have only one capacity provider account definition, most sets will contain only one capacity provider account. For capacity providers with more then one account definition, the set of accounts may consist of one account per account definition.

For example, FedEx has a standard account to be used with LTL rating, LTL and Volume LTL dispatch, tracking, and imaging and a separate account for Volume LTL rating. A set of FedEx capacity provider accounts may have a single standard account, a single volume LTL rating account, or both. Providing the capacity provider account set code in the request resolves which capacity provider account to use.

Capacity provider specific credential information is available in the portal.

Use these APIs to create (POST), retrieve (GET), update (POST) or delete (DELETE) capacity provider accounts.

Operations

Capacity Provider Contact Management

Manage locations. Locations combine physical addresses with contact details and are used in configuring Capacity Provider Accounts and Stop Locations, for example to identify the Bill To party.

Use these APIs to create (POST), update (PUT) or retrieve (GET) locations.

These operations are also all available under the /locations endpoint for backward compatibility.

Operations

Order Visibility

API used for orders and inventory items

Operations

Create an item.

Request

InventoryItem should be passed without populating the id field. A unique id will be generated and returned in the response. This id will be used to identify the item across all other methods. This method will return 202 Accepted when the item has been queued for creation. The item is created asynchronously.

Bodyapplication/jsonrequired

item

consumeByDateTimestring

The Consumed-By date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

descriptionstring

The description of the inventory item

idstring

The unique identifier for one inventory item. This identifier should be treated as an opaque string and should be used to associate the inventory item to other orders and items.

inventoryDimensionalWeightobject(DimensionalWeight)

The Dimensional Weight which includes quantity, package type, cubic dimension details, and weight details for the inventory item

inventoryIdentifiersArray of objects(InventoryIdentifier)

The customer-defined unique identifiers for the item

lineItemHazmatDetailobject(LineItemHazmatDetail)

Provides important information about the hazardous materials to be transported, as required by the US Department of Transportation (DOT). Only required for shipment requests.

manufacturedDateTimestring

The manufactured date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

orderIdsArray of strings

The list of order identifiers for the inventory item. These must be the unique project44-generated ids from the id field of orders in the system.

packagedDateTimestring

The packaged date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

perUnitCostobject(MonetaryValue)

A monetary value expressing amount and currency type.

perUnitRetailValueobject(MonetaryValue)

A monetary value expressing amount and currency type.

perishableboolean

The flag to indicate if inventory item is perishable (default: 'false')

promotionalDateTimeWindowobject(OffsetDateTimeWindow)

A date and time range, with time zone offset.

sellByDateTimestring

The Sell-By date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

serialNumberstring

A customer provided number that distinguishes identical goods or items.

shipmentIdsArray of strings(uuid)

The list of shipment identifiers associated with the inventory item. These values must be the project44-generated masterShipmentId from the shipments.

stockKeepingUnitstring

The Stock Keeping Unit (aka SKU) is the common code used to represent goods or items.

taxableboolean

The flag to indicate if inventory item is taxable (default: 'false')

universalProductCodestring

The Universal Product Code (aka UPC) is the bar code value used to represent goods or items.

curl -i -X POST \
  https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/items \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "consumeByDateTime": "string",
    "description": "string",
    "id": "string",
    "inventoryDimensionalWeight": {
      "cubicDimension": {
        "height": 0,
        "length": 0,
        "width": 0
      },
      "lengthUnit": "IN",
      "packageType": "BAG",
      "quantity": 0,
      "weight": {
        "weight": 0,
        "weightUnit": "LB"
      }
    },
    "inventoryIdentifiers": [
      {
        "description": "string",
        "type": "DEPARTMENT",
        "value": "string"
      }
    ],
    "lineItemHazmatDetail": {
      "hazardClass": "string",
      "identificationNumber": "string",
      "packingGroup": "I",
      "properShippingName": "string"
    },
    "manufacturedDateTime": "string",
    "orderIds": [
      "string"
    ],
    "packagedDateTime": "string",
    "perUnitCost": {
      "currency": "USD",
      "amount": 0
    },
    "perUnitRetailValue": {
      "currency": "USD",
      "amount": 0
    },
    "perishable": true,
    "promotionalDateTimeWindow": {
      "startDateTime": "2019-08-24T14:15:22Z",
      "endDateTime": "2019-08-24T14:15:22Z"
    },
    "sellByDateTime": "string",
    "serialNumber": "string",
    "shipmentIds": [
      "497f6eca-6276-4993-bfeb-53cbbbba6f08"
    ],
    "stockKeepingUnit": "string",
    "taxable": true,
    "universalProductCode": "string"
  }'

Responses

Accepted

Body
idstring

The unique id string

Response
{ "id": "string" }

createItems

Request

Bodyapplication/jsonrequired

items

itemsArray of objects(InventoryItem)[ 0 .. 500 ] items

List of Inventory Items.

curl -i -X POST \
  https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/items/bulk \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "items": [
      {
        "consumeByDateTime": "string",
        "description": "string",
        "id": "string",
        "inventoryDimensionalWeight": {
          "cubicDimension": {
            "height": 0,
            "length": 0,
            "width": 0
          },
          "lengthUnit": "IN",
          "packageType": "BAG",
          "quantity": 0,
          "weight": {
            "weight": 0,
            "weightUnit": "LB"
          }
        },
        "inventoryIdentifiers": [
          {
            "description": "string",
            "type": "DEPARTMENT",
            "value": "string"
          }
        ],
        "lineItemHazmatDetail": {
          "hazardClass": "string",
          "identificationNumber": "string",
          "packingGroup": "I",
          "properShippingName": "string"
        },
        "manufacturedDateTime": "string",
        "orderIds": [
          "string"
        ],
        "packagedDateTime": "string",
        "perUnitCost": {
          "currency": "USD",
          "amount": 0
        },
        "perUnitRetailValue": {
          "currency": "USD",
          "amount": 0
        },
        "perishable": true,
        "promotionalDateTimeWindow": {
          "startDateTime": "2019-08-24T14:15:22Z",
          "endDateTime": "2019-08-24T14:15:22Z"
        },
        "sellByDateTime": "string",
        "serialNumber": "string",
        "shipmentIds": [
          "497f6eca-6276-4993-bfeb-53cbbbba6f08"
        ],
        "stockKeepingUnit": "string",
        "taxable": true,
        "universalProductCode": "string"
      }
    ]
  }'

Responses

OK

Body
idsArray of objects(InventoryId)

List of Inventory Ids to hold system generated unique ids for inventory orders and items.

Response
{ "ids": [ {} ] }

Search for items.

Request

Use the BasicInventoryItemSearchCriteria, page number, page size and sort field to perform Inventory Item search

Query
pageinteger(int32)

Page number valid range: [1, 50]

sizeinteger(int32)

Page size valid range: [1, 100]

sortstring

Inventory Sortable Fields: [stockKeepingUnit, description, universalProductCode, inventoryIdentifiers.type, manufacturedDateTime, packagedDateTime, sellByDateTime, consumeByDateTime, lineItemHazmatDetail.hazardClass]

Default "stockKeepingUnit:ASC"
Bodyapplication/jsonrequired

criteria

consumeByDateTimeRangeobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

hazardClassesArray of strings

Search for items with hazard classes that match the provided hazard classes.

idsArray of strings

Search for items with ids that match the provided ids.

inventoryIdentifiersArray of objects(InventoryIdentifier)

Search for items with inventory identifiers that match the provided inventory identifiers (InventoryIdentifier.type, InventoryIdentifier.description, InventoryIdentifier.value).

manufacturedDateTimeRangeobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

orderIdsArray of strings

Search for items with order ids that match the provided order ids.

packagedDateTimeRangeobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

perUnitCostobject(MonetaryValueRangeFilter)
perUnitRetailValueobject(MonetaryValueRangeFilter)
perishableboolean

Search for items which are perishable (true) or non-perishable (false).

searchTextstring

Provide a multi field text search across the full inventory item object.

sellByDateTimeRangeobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

shipmentIdsArray of strings(uuid)

Search for items with shipment ids that match the provided shipment ids. These must be project44-generated masterShipmentIds.

skusArray of strings

Search for items with stock keeping units that match the provided stock keeping units.

taxableboolean

Search for items which are taxable (true) or non-taxable (false).

upcsArray of strings

Search for items with universal product codes that match the provided universal product codes.

curl -i -X POST \
  'https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/items/search?page=0&size=0&sort=stockKeepingUnit%3AASC' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "consumeByDateTimeRange": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "hazardClasses": [
      "string"
    ],
    "ids": [
      "string"
    ],
    "inventoryIdentifiers": [
      {
        "description": "string",
        "type": "DEPARTMENT",
        "value": "string"
      }
    ],
    "manufacturedDateTimeRange": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "orderIds": [
      "string"
    ],
    "packagedDateTimeRange": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "perUnitCost": {
      "maximumValue": {
        "currency": "USD",
        "amount": 0
      },
      "maximumValueInclusive": true,
      "minimumValue": {
        "currency": "USD",
        "amount": 0
      },
      "minimumValueInclusive": true
    },
    "perUnitRetailValue": {
      "maximumValue": {
        "currency": "USD",
        "amount": 0
      },
      "maximumValueInclusive": true,
      "minimumValue": {
        "currency": "USD",
        "amount": 0
      },
      "minimumValueInclusive": true
    },
    "perishable": true,
    "searchText": "string",
    "sellByDateTimeRange": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "shipmentIds": [
      "497f6eca-6276-4993-bfeb-53cbbbba6f08"
    ],
    "skus": [
      "string"
    ],
    "taxable": true,
    "upcs": [
      "string"
    ]
  }'

Responses

OK

Body
paginationInfoobject(PaginationInfo)

Pagination information about a collection of resources.

resultsArray of objects(InventoryItem)

List of resources contained on this page.

Response
{ "paginationInfo": { "total": 0, "pageSize": 0, "pageNumber": 0 }, "results": [ {} ] }

Delete an item.

Request

Use InventoryItem.id to delete the InventoryItem.

Path
idstringrequired

The project44-generated id of the item you wish to delete.

curl -i -X DELETE \
  'https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/items/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Accepted

Body
Response
{ "httpStatusCode": 0, "httpMessage": "string", "errorMessage": "string", "errors": [ {} ], "supportReferenceId": "string" }

Get an item by project44 id.

Request

Use the id returned from createItem to retrieve the InventoryItem.

Path
idstringrequired

The project44-generated id of the item you wish to query.

curl -i -X GET \
  'https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/items/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Body
consumeByDateTimestring

The Consumed-By date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

descriptionstring

The description of the inventory item

idstring

The unique identifier for one inventory item. This identifier should be treated as an opaque string and should be used to associate the inventory item to other orders and items.

inventoryDimensionalWeightobject(DimensionalWeight)

The Dimensional Weight which includes quantity, package type, cubic dimension details, and weight details for the inventory item

inventoryIdentifiersArray of objects(InventoryIdentifier)

The customer-defined unique identifiers for the item

lineItemHazmatDetailobject(LineItemHazmatDetail)

Provides important information about the hazardous materials to be transported, as required by the US Department of Transportation (DOT). Only required for shipment requests.

manufacturedDateTimestring

The manufactured date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

orderIdsArray of strings

The list of order identifiers for the inventory item. These must be the unique project44-generated ids from the id field of orders in the system.

packagedDateTimestring

The packaged date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

perUnitCostobject(MonetaryValue)

A monetary value expressing amount and currency type.

perUnitRetailValueobject(MonetaryValue)

A monetary value expressing amount and currency type.

perishableboolean

The flag to indicate if inventory item is perishable (default: 'false')

promotionalDateTimeWindowobject(OffsetDateTimeWindow)

A date and time range, with time zone offset.

sellByDateTimestring

The Sell-By date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

serialNumberstring

A customer provided number that distinguishes identical goods or items.

shipmentIdsArray of strings(uuid)

The list of shipment identifiers associated with the inventory item. These values must be the project44-generated masterShipmentId from the shipments.

stockKeepingUnitstring

The Stock Keeping Unit (aka SKU) is the common code used to represent goods or items.

taxableboolean

The flag to indicate if inventory item is taxable (default: 'false')

universalProductCodestring

The Universal Product Code (aka UPC) is the bar code value used to represent goods or items.

Response
{ "consumeByDateTime": "string", "description": "string", "id": "string", "inventoryDimensionalWeight": { "cubicDimension": {}, "lengthUnit": "IN", "packageType": "BAG", "quantity": 0, "weight": {} }, "inventoryIdentifiers": [ {} ], "lineItemHazmatDetail": { "hazardClass": "string", "identificationNumber": "string", "packingGroup": "I", "properShippingName": "string" }, "manufacturedDateTime": "string", "orderIds": [ "string" ], "packagedDateTime": "string", "perUnitCost": { "currency": "USD", "amount": 0 }, "perUnitRetailValue": { "currency": "USD", "amount": 0 }, "perishable": true, "promotionalDateTimeWindow": { "startDateTime": "2019-08-24T14:15:22Z", "endDateTime": "2019-08-24T14:15:22Z" }, "sellByDateTime": "string", "serialNumber": "string", "shipmentIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "stockKeepingUnit": "string", "taxable": true, "universalProductCode": "string" }

Update an existing item.

Request

InventoryItem should be passed with the id field populated with the value returned from createItem. InventoryItems returned from the service will have id populated. InventoryItem.id must match the id in the URL. This method will return 202 Accepted when the item has been queued for update. The item is updated asynchronously.


Required Fields

  • id
Path
idstringrequired

The project44-generated id of the item you wish to update.

Bodyapplication/jsonrequired

item

consumeByDateTimestring

The Consumed-By date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

descriptionstring

The description of the inventory item

idstring

The unique identifier for one inventory item. This identifier should be treated as an opaque string and should be used to associate the inventory item to other orders and items.

inventoryDimensionalWeightobject(DimensionalWeight)

The Dimensional Weight which includes quantity, package type, cubic dimension details, and weight details for the inventory item

inventoryIdentifiersArray of objects(InventoryIdentifier)

The customer-defined unique identifiers for the item

lineItemHazmatDetailobject(LineItemHazmatDetail)

Provides important information about the hazardous materials to be transported, as required by the US Department of Transportation (DOT). Only required for shipment requests.

manufacturedDateTimestring

The manufactured date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

orderIdsArray of strings

The list of order identifiers for the inventory item. These must be the unique project44-generated ids from the id field of orders in the system.

packagedDateTimestring

The packaged date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

perUnitCostobject(MonetaryValue)

A monetary value expressing amount and currency type.

perUnitRetailValueobject(MonetaryValue)

A monetary value expressing amount and currency type.

perishableboolean

The flag to indicate if inventory item is perishable (default: 'false')

promotionalDateTimeWindowobject(OffsetDateTimeWindow)

A date and time range, with time zone offset.

sellByDateTimestring

The Sell-By date-time for the inventory item. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

serialNumberstring

A customer provided number that distinguishes identical goods or items.

shipmentIdsArray of strings(uuid)

The list of shipment identifiers associated with the inventory item. These values must be the project44-generated masterShipmentId from the shipments.

stockKeepingUnitstring

The Stock Keeping Unit (aka SKU) is the common code used to represent goods or items.

taxableboolean

The flag to indicate if inventory item is taxable (default: 'false')

universalProductCodestring

The Universal Product Code (aka UPC) is the bar code value used to represent goods or items.

curl -i -X PUT \
  'https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/items/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "consumeByDateTime": "string",
    "description": "string",
    "id": "string",
    "inventoryDimensionalWeight": {
      "cubicDimension": {
        "height": 0,
        "length": 0,
        "width": 0
      },
      "lengthUnit": "IN",
      "packageType": "BAG",
      "quantity": 0,
      "weight": {
        "weight": 0,
        "weightUnit": "LB"
      }
    },
    "inventoryIdentifiers": [
      {
        "description": "string",
        "type": "DEPARTMENT",
        "value": "string"
      }
    ],
    "lineItemHazmatDetail": {
      "hazardClass": "string",
      "identificationNumber": "string",
      "packingGroup": "I",
      "properShippingName": "string"
    },
    "manufacturedDateTime": "string",
    "orderIds": [
      "string"
    ],
    "packagedDateTime": "string",
    "perUnitCost": {
      "currency": "USD",
      "amount": 0
    },
    "perUnitRetailValue": {
      "currency": "USD",
      "amount": 0
    },
    "perishable": true,
    "promotionalDateTimeWindow": {
      "startDateTime": "2019-08-24T14:15:22Z",
      "endDateTime": "2019-08-24T14:15:22Z"
    },
    "sellByDateTime": "string",
    "serialNumber": "string",
    "shipmentIds": [
      "497f6eca-6276-4993-bfeb-53cbbbba6f08"
    ],
    "stockKeepingUnit": "string",
    "taxable": true,
    "universalProductCode": "string"
  }'

Responses

Accepted

Body
idstring

The unique id string

Response
{ "id": "string" }

Create an order.

Request

InventoryOrder should be passed without populating the id field. A unique id will be generated and returned in the response. This id will be used to identify the order across all other methods. This method will return 202 Accepted when the order has been queued for creation. The order is created asynchronously.


Required Fields

  • orderIdentifier
Bodyapplication/jsonrequired

order

additionalOrderIdentifiersArray of objects(InventoryOrderIdentifier)

Semi-unique numbers or terms that describe orders. These are to be used in addition to the unique order object ID and can be used to search and filter. Examples include a vendor contract number (2108), or promotion specific term-number combination (Winter_1267).

attributesArray of objects(OrderCustomAttribute)

An optional user-defined set of custom attributes to associate with this order. All attribute keys must be pre-defined by your organization's admin.

billToLocationobject(InventoryLocation)
derivedOrderHealthobject(DerivedOrderHealth)

derived order health.

destinationLocationobject(InventoryLocation)
freightTermsobject(FreightTerms)

Details the terms of the freight ownership during transport. Specified in the quote, contract or general terms and conditions.

idstring

Unique identifier to retrieve exactly one order. This identifier should be treated as an opaque string and should be used to associate the InventoryOrder to other orders and items.

launchDateTimestring

The date when a particular launch related to the overall order is expected. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

orderIdentifierstring

Customer provided identifier. Always required.

orderIdentifierAuthoritystring

Optional customer provided field. The authority is the party responsible for managing creation of the order identifier.

orderSubmissionDateTimestring

The date that the order is submitted. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

orderTagsArray of objects(InventoryOrderTag)

Non-unique numbers or terms that describe how orders are managed within the organization. These are to be used in addition to the unique order object ID and can be used to filter. The expanse of these terms are generally static and they are used when searching and filtering to a specific department, team, category, or provided identifier.

orderTypestring

The type of the InventoryOrder. Required if relying on order identifier to be unique.

Enum"PURCHASE_ORDER""SALES_ORDER""WAREHOUSE_MOVEMENT_ORDER""ADVANCED_SHIPMENT_NOTICE""INVOICE"
originLocationobject(InventoryLocation)
originalDeliveryDateTimeWindowobject(OffsetDateTimeWindow)

A date and time range, with time zone offset.

relatedOrderIdsArray of strings

Additional orders that can be related to this order. These ids must bethe project44-generated id from another order in the system.

shipmentIdsArray of strings(uuid)

Ids of the associated shipments for the order. The order can span across multiple shipments and the shipment can have multiple orders. These values must be the project44-generated masterShipmentId from the shipments.

statusCodestring

The stage of the order lifecycle that it is currently in

Enum"SUBMITTED""RECEIVED""PROCESSING""ACCEPTED""FULFILLED""REJECTED""CANCELED"
statusCodeDateTimestring

The date at which the status was generated or changed. This will bedefaulted to null unless provided. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

subjectstring

Descriptive name for a particular order such as 'Holiday Candles'

supplierReadyDateTimeWindowobject(OffsetDateTimeWindow)

A date and time range, with time zone offset.

totalCostobject(MonetaryValue)

A monetary value expressing amount and currency type.

totalRetailValueobject(MonetaryValue)

A monetary value expressing amount and currency type.

vendorLocationobject(InventoryLocation)
curl -i -X POST \
  https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/orders \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "additionalOrderIdentifiers": [
      {
        "type": "CONTRACT",
        "value": "string"
      }
    ],
    "attributes": [
      {
        "name": "string",
        "values": [
          "string"
        ]
      }
    ],
    "billToLocation": {
      "additionalContacts": [
        {
          "companyName": "string",
          "contactName": "string",
          "contactType": "PRIMARY",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string",
          "phoneNumberCountryCode": "string"
        }
      ],
      "address": {
        "postalCode": "string",
        "addressLines": [
          "str"
        ],
        "city": "string",
        "state": "string",
        "country": "US"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "contactType": "PRIMARY",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string",
        "phoneNumberCountryCode": "string"
      },
      "id": "string",
      "name": "string",
      "suppliedId": "string"
    },
    "derivedOrderHealth": {
      "arrivalStatus": {
        "code": "UNKNOWN",
        "duration": {
          "unit": "UNKNOWN",
          "amount": 0
        }
      },
      "estimatedTimeOfArrival": "string"
    },
    "destinationLocation": {
      "additionalContacts": [
        {
          "companyName": "string",
          "contactName": "string",
          "contactType": "PRIMARY",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string",
          "phoneNumberCountryCode": "string"
        }
      ],
      "address": {
        "postalCode": "string",
        "addressLines": [
          "str"
        ],
        "city": "string",
        "state": "string",
        "country": "US"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "contactType": "PRIMARY",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string",
        "phoneNumberCountryCode": "string"
      },
      "id": "string",
      "name": "string",
      "suppliedId": "string"
    },
    "freightTerms": {
      "freightOwnershipType": "PREPAID",
      "transportationPaymentType": "ORIGIN"
    },
    "id": "string",
    "launchDateTime": "string",
    "orderIdentifier": "string",
    "orderIdentifierAuthority": "string",
    "orderSubmissionDateTime": "string",
    "orderTags": [
      {
        "description": "string",
        "type": "ANALYST",
        "value": "string"
      }
    ],
    "orderType": "PURCHASE_ORDER",
    "originLocation": {
      "additionalContacts": [
        {
          "companyName": "string",
          "contactName": "string",
          "contactType": "PRIMARY",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string",
          "phoneNumberCountryCode": "string"
        }
      ],
      "address": {
        "postalCode": "string",
        "addressLines": [
          "str"
        ],
        "city": "string",
        "state": "string",
        "country": "US"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "contactType": "PRIMARY",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string",
        "phoneNumberCountryCode": "string"
      },
      "id": "string",
      "name": "string",
      "suppliedId": "string"
    },
    "originalDeliveryDateTimeWindow": {
      "startDateTime": "2019-08-24T14:15:22Z",
      "endDateTime": "2019-08-24T14:15:22Z"
    },
    "relatedOrderIds": [
      "string"
    ],
    "shipmentIds": [
      "497f6eca-6276-4993-bfeb-53cbbbba6f08"
    ],
    "statusCode": "SUBMITTED",
    "statusCodeDateTime": "string",
    "subject": "string",
    "supplierReadyDateTimeWindow": {
      "startDateTime": "2019-08-24T14:15:22Z",
      "endDateTime": "2019-08-24T14:15:22Z"
    },
    "totalCost": {
      "currency": "USD",
      "amount": 0
    },
    "totalRetailValue": {
      "currency": "USD",
      "amount": 0
    },
    "vendorLocation": {
      "additionalContacts": [
        {
          "companyName": "string",
          "contactName": "string",
          "contactType": "PRIMARY",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string",
          "phoneNumberCountryCode": "string"
        }
      ],
      "address": {
        "postalCode": "string",
        "addressLines": [
          "str"
        ],
        "city": "string",
        "state": "string",
        "country": "US"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "contactType": "PRIMARY",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string",
        "phoneNumberCountryCode": "string"
      },
      "id": "string",
      "name": "string",
      "suppliedId": "string"
    }
  }'

Responses

Accepted

Body
idstring

The unique id string

Response
{ "id": "string" }

Search for orders.

Request

Use the BasicInventoryOrderSearchCriteria, page number, page size and sort field to perform Inventory Order search.

Query
pageinteger(int32)

Page number valid range: [1, 50]

Default 1
sizeinteger(int32)

Page size valid range: [1, 1000]

Default 30
sortstring

Order Sortable Fields: [orderType, orderIdentifier, statusCode, orderSubmissionDateTime, supplierReadyDateTimeWindow.startDateTime, supplierReadyDateTimeWindow.endDateTime, originalDeliveryDateTimeWindow.startDateTime,originalDeliveryDateTimeWindow.endDateTime, derivedOrderHealth.estimatedTimeOfArrival]

Bodyapplication/jsonrequired

criteria

additionalOrderIdentifierCriteriaArray of objects(InventoryOrderIdentifierCriteria)

Search for orders with additional identifiers matching the list of identifiers provided. Both the values in the identifiers are optional, but at least one is required. The list can be null or empty, but cannot contain any null elements.

billToLocationAddressTextstring

Search for orders whose bill-to location match the given address fields (i.e. postalCode, addressLines, city, state, country).

destinationLocationAddressTextstring

Search for orders whose destination location match the given address fields. (i.e. postalCode, addressLines, city, state, country).

hasShipmentIdsboolean

Search for the existence of shipmentIds on an order. If value is 'true', it searches for orders that contain shipments. If the value is 'false', it searches for orders that contain no shipments. If the value is null, this criterion is excluded. If this is used in combination with 'shipmentIds' search criteria, it might cause unexpected results.

idsArray of strings

Search for orders with ids that match the provided ids.

launchDateTimeobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

orderAttributesArray of objects(InventoryOrderAttributeFilter)

Search for orders that contain the provided custom attributes.

orderHealthCriteriaArray of objects(OrderHealthCriteria)

Search for orders based on arrival status, duration range / delta, target date range, or the combination of any.

orderIdentifiersArray of strings

Search for orders with identifiers that match the provided order identifiers.

orderSubmissionDateTimeobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

orderTagCriteriaArray of objects(InventoryOrderTagCriteria)

Search for items with order tags based matching the list of tags provided.Both the values in tags are optional, but at least one is required. The list can be null or empty, but cannot contain any null elements.

orderTypesArray of strings

Search for orders with types that match the provided types.

Items Enum"PURCHASE_ORDER""SALES_ORDER""WAREHOUSE_MOVEMENT_ORDER""ADVANCED_SHIPMENT_NOTICE""INVOICE"
originLocationAddressTextstring

Search for orders whose origin location match the given address fields. (i.e. postalCode, addressLines, city, state, country).

originalDeliveryDateTimeWindowEndobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

originalDeliveryDateTimeWindowStartobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

paginationobject(PaginationParameters)

Parameters which define a requested page of resources.

relatedOrderIdsArray of strings

Search for orders that contain related orders matching the provided ids.

searchTextstring

Provide a multi field text search across the full inventory order object.

shipmentIdsArray of strings(uuid)

Search for orders with shipment ids that match the provided shipment ids. These must be project44-generated masterShipmentIds.

sortArray of objects(InventoryOrderSortField)

A collection of fields on which to sort the search results, and the direction of the sort for each field.

statusCodesArray of strings

Search for orders containing any of the provided status codes.

Items Enum"SUBMITTED""RECEIVED""PROCESSING""ACCEPTED""FULFILLED""REJECTED""CANCELED"
supplierReadyDateTimeWindowEndobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

supplierReadyDateTimeWindowStartobject(OffsetDateTimeRangeFilter)

A date and time range filter, with time zone offset.

vendorLocationAddressTextstring

Search for orders whose vendor location match the given address fields (i.e. postalCode, addressLines, city, state, country).

curl -i -X POST \
  'https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/orders/search?page=1&size=30&sort=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "additionalOrderIdentifierCriteria": [
      {
        "type": "CONTRACT",
        "value": "string"
      }
    ],
    "billToLocationAddressText": "string",
    "destinationLocationAddressText": "string",
    "hasShipmentIds": true,
    "ids": [
      "string"
    ],
    "launchDateTime": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "orderAttributes": [
      {
        "name": "string",
        "operator": "EQUALS",
        "values": [
          "string"
        ]
      }
    ],
    "orderHealthCriteria": [
      {
        "dateRanges": [
          {
            "endDateTime": "string",
            "offsetMinutes": 0,
            "operator": "WITHIN",
            "startDateTime": "string"
          }
        ],
        "deltas": [
          {
            "operator": "MORE_THAN",
            "type": "RUNNING_EARLY",
            "value": 0
          }
        ],
        "durationRange": {
          "fromDuration": {
            "unit": "UNKNOWN",
            "amount": 0
          },
          "fromInclusive": true,
          "toDuration": {
            "unit": "UNKNOWN",
            "amount": 0
          },
          "toInclusive": true
        },
        "shipmentStatus": "UNKNOWN"
      }
    ],
    "orderIdentifiers": [
      "string"
    ],
    "orderSubmissionDateTime": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "orderTagCriteria": [
      {
        "type": "ANALYST",
        "value": "string"
      }
    ],
    "orderTypes": [
      "PURCHASE_ORDER"
    ],
    "originLocationAddressText": "string",
    "originalDeliveryDateTimeWindowEnd": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "originalDeliveryDateTimeWindowStart": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "pagination": {
      "pageNumber": 0,
      "pageSize": 0
    },
    "relatedOrderIds": [
      "string"
    ],
    "searchText": "string",
    "shipmentIds": [
      "497f6eca-6276-4993-bfeb-53cbbbba6f08"
    ],
    "sort": [
      {
        "direction": "ASC",
        "fieldName": "ORDER_TYPE"
      }
    ],
    "statusCodes": [
      "SUBMITTED"
    ],
    "supplierReadyDateTimeWindowEnd": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "supplierReadyDateTimeWindowStart": {
      "endDateTime": "string",
      "endDateTimeInclusive": true,
      "startDateTime": "string",
      "startDateTimeInclusive": true
    },
    "vendorLocationAddressText": "string"
  }'

Responses

OK

Body
paginationInfoobject(PaginationInfo)

Pagination information about a collection of resources.

resultsArray of objects(InventoryOrder)

List of resources contained on this page.

Response
{ "paginationInfo": { "total": 0, "pageSize": 0, "pageNumber": 0 }, "results": [ {} ] }

Delete an order.

Request

Use InventoryOrder.id to delete the InventoryOrder.

Path
idstringrequired

The project44-generated id of the order you wish to delete.

curl -i -X DELETE \
  'https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/orders/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Accepted

Body
Response
{ "httpStatusCode": 0, "httpMessage": "string", "errorMessage": "string", "errors": [ {} ], "supportReferenceId": "string" }

Retrieve an order by project44 id.

Request

Use the id returned from createOrder to retrieve the InventoryOrder.

Path
idstringrequired

The project44-generated id of the order you wish to query.

curl -i -X GET \
  'https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/orders/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Body
additionalOrderIdentifiersArray of objects(InventoryOrderIdentifier)

Semi-unique numbers or terms that describe orders. These are to be used in addition to the unique order object ID and can be used to search and filter. Examples include a vendor contract number (2108), or promotion specific term-number combination (Winter_1267).

attributesArray of objects(OrderCustomAttribute)

An optional user-defined set of custom attributes to associate with this order. All attribute keys must be pre-defined by your organization's admin.

billToLocationobject(InventoryLocation)
derivedOrderHealthobject(DerivedOrderHealth)

derived order health.

destinationLocationobject(InventoryLocation)
freightTermsobject(FreightTerms)

Details the terms of the freight ownership during transport. Specified in the quote, contract or general terms and conditions.

idstring

Unique identifier to retrieve exactly one order. This identifier should be treated as an opaque string and should be used to associate the InventoryOrder to other orders and items.

launchDateTimestring

The date when a particular launch related to the overall order is expected. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

orderIdentifierstring

Customer provided identifier. Always required.

orderIdentifierAuthoritystring

Optional customer provided field. The authority is the party responsible for managing creation of the order identifier.

orderSubmissionDateTimestring

The date that the order is submitted. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

orderTagsArray of objects(InventoryOrderTag)

Non-unique numbers or terms that describe how orders are managed within the organization. These are to be used in addition to the unique order object ID and can be used to filter. The expanse of these terms are generally static and they are used when searching and filtering to a specific department, team, category, or provided identifier.

orderTypestring

The type of the InventoryOrder. Required if relying on order identifier to be unique.

Enum"PURCHASE_ORDER""SALES_ORDER""WAREHOUSE_MOVEMENT_ORDER""ADVANCED_SHIPMENT_NOTICE""INVOICE"
originLocationobject(InventoryLocation)
originalDeliveryDateTimeWindowobject(OffsetDateTimeWindow)

A date and time range, with time zone offset.

relatedOrderIdsArray of strings

Additional orders that can be related to this order. These ids must bethe project44-generated id from another order in the system.

shipmentIdsArray of strings(uuid)

Ids of the associated shipments for the order. The order can span across multiple shipments and the shipment can have multiple orders. These values must be the project44-generated masterShipmentId from the shipments.

statusCodestring

The stage of the order lifecycle that it is currently in

Enum"SUBMITTED""RECEIVED""PROCESSING""ACCEPTED""FULFILLED""REJECTED""CANCELED"
statusCodeDateTimestring

The date at which the status was generated or changed. This will bedefaulted to null unless provided. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

subjectstring

Descriptive name for a particular order such as 'Holiday Candles'

supplierReadyDateTimeWindowobject(OffsetDateTimeWindow)

A date and time range, with time zone offset.

totalCostobject(MonetaryValue)

A monetary value expressing amount and currency type.

totalRetailValueobject(MonetaryValue)

A monetary value expressing amount and currency type.

vendorLocationobject(InventoryLocation)
Response
{ "additionalOrderIdentifiers": [ {} ], "attributes": [ {} ], "billToLocation": { "additionalContacts": [], "address": {}, "contact": {}, "id": "string", "name": "string", "suppliedId": "string" }, "derivedOrderHealth": { "arrivalStatus": {}, "estimatedTimeOfArrival": "string" }, "destinationLocation": { "additionalContacts": [], "address": {}, "contact": {}, "id": "string", "name": "string", "suppliedId": "string" }, "freightTerms": { "freightOwnershipType": "PREPAID", "transportationPaymentType": "ORIGIN" }, "id": "string", "launchDateTime": "string", "orderIdentifier": "string", "orderIdentifierAuthority": "string", "orderSubmissionDateTime": "string", "orderTags": [ {} ], "orderType": "PURCHASE_ORDER", "originLocation": { "additionalContacts": [], "address": {}, "contact": {}, "id": "string", "name": "string", "suppliedId": "string" }, "originalDeliveryDateTimeWindow": { "startDateTime": "2019-08-24T14:15:22Z", "endDateTime": "2019-08-24T14:15:22Z" }, "relatedOrderIds": [ "string" ], "shipmentIds": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ], "statusCode": "SUBMITTED", "statusCodeDateTime": "string", "subject": "string", "supplierReadyDateTimeWindow": { "startDateTime": "2019-08-24T14:15:22Z", "endDateTime": "2019-08-24T14:15:22Z" }, "totalCost": { "currency": "USD", "amount": 0 }, "totalRetailValue": { "currency": "USD", "amount": 0 }, "vendorLocation": { "additionalContacts": [], "address": {}, "contact": {}, "id": "string", "name": "string", "suppliedId": "string" } }

Update an existing order.

Request

InventoryOrder should be passed with the id field populated with the value returned from createOrder. Orders returned from the service will have id populated. InventoryOrder.id must match the id in the URL. This method will return 202 Accepted when the order has been queued for update. The order is updated asynchronously.


Required Fields

  • id
  • orderIdentifier
Path
idstringrequired

The project44-generated id of the order you wish to update.

Bodyapplication/jsonrequired

order

additionalOrderIdentifiersArray of objects(InventoryOrderIdentifier)

Semi-unique numbers or terms that describe orders. These are to be used in addition to the unique order object ID and can be used to search and filter. Examples include a vendor contract number (2108), or promotion specific term-number combination (Winter_1267).

attributesArray of objects(OrderCustomAttribute)

An optional user-defined set of custom attributes to associate with this order. All attribute keys must be pre-defined by your organization's admin.

billToLocationobject(InventoryLocation)
derivedOrderHealthobject(DerivedOrderHealth)

derived order health.

destinationLocationobject(InventoryLocation)
freightTermsobject(FreightTerms)

Details the terms of the freight ownership during transport. Specified in the quote, contract or general terms and conditions.

idstring

Unique identifier to retrieve exactly one order. This identifier should be treated as an opaque string and should be used to associate the InventoryOrder to other orders and items.

launchDateTimestring

The date when a particular launch related to the overall order is expected. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

orderIdentifierstring

Customer provided identifier. Always required.

orderIdentifierAuthoritystring

Optional customer provided field. The authority is the party responsible for managing creation of the order identifier.

orderSubmissionDateTimestring

The date that the order is submitted. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

orderTagsArray of objects(InventoryOrderTag)

Non-unique numbers or terms that describe how orders are managed within the organization. These are to be used in addition to the unique order object ID and can be used to filter. The expanse of these terms are generally static and they are used when searching and filtering to a specific department, team, category, or provided identifier.

orderTypestring

The type of the InventoryOrder. Required if relying on order identifier to be unique.

Enum"PURCHASE_ORDER""SALES_ORDER""WAREHOUSE_MOVEMENT_ORDER""ADVANCED_SHIPMENT_NOTICE""INVOICE"
originLocationobject(InventoryLocation)
originalDeliveryDateTimeWindowobject(OffsetDateTimeWindow)

A date and time range, with time zone offset.

relatedOrderIdsArray of strings

Additional orders that can be related to this order. These ids must bethe project44-generated id from another order in the system.

shipmentIdsArray of strings(uuid)

Ids of the associated shipments for the order. The order can span across multiple shipments and the shipment can have multiple orders. These values must be the project44-generated masterShipmentId from the shipments.

statusCodestring

The stage of the order lifecycle that it is currently in

Enum"SUBMITTED""RECEIVED""PROCESSING""ACCEPTED""FULFILLED""REJECTED""CANCELED"
statusCodeDateTimestring

The date at which the status was generated or changed. This will bedefaulted to null unless provided. (format: yyyy-MM-dd'T'HH:mm:ssZ, example: 2019-11-14T12:30:00-0500).

subjectstring

Descriptive name for a particular order such as 'Holiday Candles'

supplierReadyDateTimeWindowobject(OffsetDateTimeWindow)

A date and time range, with time zone offset.

totalCostobject(MonetaryValue)

A monetary value expressing amount and currency type.

totalRetailValueobject(MonetaryValue)

A monetary value expressing amount and currency type.

vendorLocationobject(InventoryLocation)
curl -i -X PUT \
  'https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/orders/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "additionalOrderIdentifiers": [
      {
        "type": "CONTRACT",
        "value": "string"
      }
    ],
    "attributes": [
      {
        "name": "string",
        "values": [
          "string"
        ]
      }
    ],
    "billToLocation": {
      "additionalContacts": [
        {
          "companyName": "string",
          "contactName": "string",
          "contactType": "PRIMARY",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string",
          "phoneNumberCountryCode": "string"
        }
      ],
      "address": {
        "postalCode": "string",
        "addressLines": [
          "str"
        ],
        "city": "string",
        "state": "string",
        "country": "US"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "contactType": "PRIMARY",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string",
        "phoneNumberCountryCode": "string"
      },
      "id": "string",
      "name": "string",
      "suppliedId": "string"
    },
    "derivedOrderHealth": {
      "arrivalStatus": {
        "code": "UNKNOWN",
        "duration": {
          "unit": "UNKNOWN",
          "amount": 0
        }
      },
      "estimatedTimeOfArrival": "string"
    },
    "destinationLocation": {
      "additionalContacts": [
        {
          "companyName": "string",
          "contactName": "string",
          "contactType": "PRIMARY",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string",
          "phoneNumberCountryCode": "string"
        }
      ],
      "address": {
        "postalCode": "string",
        "addressLines": [
          "str"
        ],
        "city": "string",
        "state": "string",
        "country": "US"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "contactType": "PRIMARY",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string",
        "phoneNumberCountryCode": "string"
      },
      "id": "string",
      "name": "string",
      "suppliedId": "string"
    },
    "freightTerms": {
      "freightOwnershipType": "PREPAID",
      "transportationPaymentType": "ORIGIN"
    },
    "id": "string",
    "launchDateTime": "string",
    "orderIdentifier": "string",
    "orderIdentifierAuthority": "string",
    "orderSubmissionDateTime": "string",
    "orderTags": [
      {
        "description": "string",
        "type": "ANALYST",
        "value": "string"
      }
    ],
    "orderType": "PURCHASE_ORDER",
    "originLocation": {
      "additionalContacts": [
        {
          "companyName": "string",
          "contactName": "string",
          "contactType": "PRIMARY",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string",
          "phoneNumberCountryCode": "string"
        }
      ],
      "address": {
        "postalCode": "string",
        "addressLines": [
          "str"
        ],
        "city": "string",
        "state": "string",
        "country": "US"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "contactType": "PRIMARY",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string",
        "phoneNumberCountryCode": "string"
      },
      "id": "string",
      "name": "string",
      "suppliedId": "string"
    },
    "originalDeliveryDateTimeWindow": {
      "startDateTime": "2019-08-24T14:15:22Z",
      "endDateTime": "2019-08-24T14:15:22Z"
    },
    "relatedOrderIds": [
      "string"
    ],
    "shipmentIds": [
      "497f6eca-6276-4993-bfeb-53cbbbba6f08"
    ],
    "statusCode": "SUBMITTED",
    "statusCodeDateTime": "string",
    "subject": "string",
    "supplierReadyDateTimeWindow": {
      "startDateTime": "2019-08-24T14:15:22Z",
      "endDateTime": "2019-08-24T14:15:22Z"
    },
    "totalCost": {
      "currency": "USD",
      "amount": 0
    },
    "totalRetailValue": {
      "currency": "USD",
      "amount": 0
    },
    "vendorLocation": {
      "additionalContacts": [
        {
          "companyName": "string",
          "contactName": "string",
          "contactType": "PRIMARY",
          "email": "string",
          "faxNumber": "string",
          "faxNumberCountryCode": "string",
          "phoneNumber": "string",
          "phoneNumber2": "string",
          "phoneNumber2CountryCode": "string",
          "phoneNumberCountryCode": "string"
        }
      ],
      "address": {
        "postalCode": "string",
        "addressLines": [
          "str"
        ],
        "city": "string",
        "state": "string",
        "country": "US"
      },
      "contact": {
        "companyName": "string",
        "contactName": "string",
        "contactType": "PRIMARY",
        "email": "string",
        "faxNumber": "string",
        "faxNumberCountryCode": "string",
        "phoneNumber": "string",
        "phoneNumber2": "string",
        "phoneNumber2CountryCode": "string",
        "phoneNumberCountryCode": "string"
      },
      "id": "string",
      "name": "string",
      "suppliedId": "string"
    }
  }'

Responses

Accepted

Body
idstring

The unique id string

Response
{ "id": "string" }

Get related orders.

Request

Use the InventoryOrder.id (project44 generated id) from an existing order to retrieve all related orders.

Path
idstringrequired

The project44-generated id of the order for which you wish to query related orders.

Query
pageinteger(int32)

Page number valid range: [1, 50]

Default 1
sizeinteger(int32)

Page size valid range: [1, 100]

Default 30
sortstring

Order Sortable Fields: [orderType, orderIdentifier, statusCode, orderSubmissionDateTime, supplierReadyDateTimeWindow.startDateTime, supplierReadyDateTimeWindow.endDateTime, originalDeliveryDateTimeWindow.startDateTime,originalDeliveryDateTimeWindow.endDateTime, derivedOrderHealth.estimatedTimeOfArrival]

Default "orderSubmissionDateTime:DESC"
curl -i -X GET \
  'https://developers.project44.com/_mock/api-reference/api-docs/api/v4/inventory/orders/{id}/related-orders?page=1&size=30&sort=orderSubmissionDateTime%3ADESC' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Body
paginationInfoobject(PaginationInfo)

Pagination information about a collection of resources.

resultsArray of objects(InventoryOrder)

List of resources contained on this page.

Response
{ "paginationInfo": { "total": 0, "pageSize": 0, "pageNumber": 0 }, "results": [ {} ] }

Shipment: Tracking

API used for Shipment Tracking.

Operations

Shipment: Loads

API used for tracking Loads.

Operations

Multi-Modal: Image Retrieval

Access shipment images.

Operations

Shipment Attributes

Create and fetch predefined custom attributes for shipments. You must be a organization admin to perform this operation.

Operations

Capacity Provider Metadata

Retrieve capacity provider information needed to set up capacity provider accounts.

Operations

LTL: Push Tracking

As a capacity provider, push project44 shipments and status updates.

Operations

LTL: Push Imaging

As a capacity provider, push project44 images related to shipments.

Operations

TL: Capacity Provider Push

As a capacity provider, push project44 shipment-related info and quotes.

Operations

Asset Tracking

Track the location of an enrolled asset.

Operations

Webhook

Register client webhooks.

Operations

Parcel: Tracking

Track parcel shipments. Before parcel shipments can be tracked, they must first be initialized with a shipment identifier. Shipments cannot be modified once initialized and tracking has begun. To stop tracking a shipment, delete it.

Use these APIs to initialize (POST), track (GET), or delete (DELETE) parcel shipments.

Operations

Parcel: Webhook

Receive updates for a tracked parcel by defining a parcel-tracking-webhook.

Operations

Carrier: Document

API for managing carrier documents.

Analytics: Port Intelligence

API for Port Intelligence.

Operations

Filter Suggestions

Operations

Multi-modal: Booking

API used for multi-modal Booking.

LTL: Electronic BOL

API used for creating Electronic BOL

Operations

Webhook Data

Operations to describe the payload expected from project44 when integrated with a webhook.

Operations

Postal Address Validation

Operations

Parcel: Push Tracking

Operations

location-controller

Operations

Ocean: Tracking

Operations

Stop Location Management

Operations

shipment-partials-controller

Operations

admin-controller

Operations

TL: Webhook

Operations

Push Updates

Operations

Multi-Modal: Booking

Operations

APIs

Operations

Invitations

Operations

Multi-Modal: Document

Operations