Version 4.0.0 of project44's API. If you're not familiar with project44, we recommend checking out our guides first: https://developers.project44.com/guides/shippers and https://developers.project44.com/guides/carriers.
Version 4.0.0 of project44's API. If you're not familiar with project44, we recommend checking out our guides first: https://developers.project44.com/guides/shippers and https://developers.project44.com/guides/carriers.
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 Movement 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.
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).
A combination of criteria is expected (but not required) in the request body.
The count is implicitly limited to shipments visible to the tenant performing the call.
If no criteria is present in the request body, then the response will contain a count of shipments visible to the tenant making the request.
Match shipments on the differences between timestamps of related orders. Criteria are ANDed together.
A text-based search against a select set of fields in each shipment. If any of a shipment's select fields contain this value, then that shipment will be included in the result set.
Match shipments which contain one or more dates that meet all criteria. Criteria are ANDed together, types are ORed together.
Each item in this array should represent criteria for a distinct event type.
Match shipments which contain one or more durations that meet all criteria. Criteria are ANDed together, types are ORed together.
Example: (estimated transit time >= 30 minutes AND < 1 day) AND (actual transit time does not exist)
Example: (duration X OR duration Y >= 30 minutes) AND (duration Z < 3 hours)
curl -i -X POST \ https://na12.api.project44.com/services/unified-search/v1/shipments/count \ -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \ -H 'Content-Type: application/json' \ -d '{ "loadItemIdentifiers": [ { "operator": "EQUALS", "types": [ "SKU" ], "values": [ "string" ] } ], "loadItemDescriptions": [ { "operator": "EQUALS", "values": [ "string" ] } ], "orderIdentifierTypes": [ { "operator": "EQUALS", "types": [ "PURCHASE_ORDER" ] } ], "orderIdentifiers": [ { "operator": "EQUALS", "type": "PURCHASE_ORDER", "values": [ "string" ] } ], "orderIds": [ { "operator": "EQUALS", "values": [ "string" ] } ], "orderSupplierIds": [ { "operator": "EQUALS", "values": [ "string" ] } ], "orderDateRanges": [ { "endDateTime": "2019-08-24T14:15:22Z", "offsetMinutes": 0, "operator": "WITHIN", "relativeDateTimeWindow": "YESTERDAY", "relativeWindowTimeZoneOffset": { "totalSeconds": 0, "id": "string", "rules": { "fixedOffset": true, "transitions": [ { "offsetBefore": {}, "offsetAfter": {}, "instant": "2019-08-24T14:15:22Z", "duration": { "units": [] }, "gap": true, "dateTimeAfter": "2019-08-24T14:15:22Z", "dateTimeBefore": "2019-08-24T14:15:22Z", "overlap": true } ], "transitionRules": [ { "month": "JANUARY", "timeDefinition": "UTC", "standardOffset": {}, "offsetBefore": {}, "offsetAfter": {}, "dayOfWeek": "MONDAY", "dayOfMonthIndicator": 0, "localTime": {}, "midnightEndOfDay": true } ] } }, "startDateTime": "2019-08-24T14:15:22Z", "type": "SUPPLIER_READY_START_DATETIME" } ], "orderDeltas": [ { "durationInMinutes": 0, "operator": "MORE_THAN", "type": "RUNNING_EARLY" } ], "orderTags": [ { "operator": "EQUALS", "types": [ "ANALYST" ], "values": [ "string" ] } ], "orderAdditionalIdentifiers": [ { "operator": "EQUALS", "types": [ "CONTRACT" ], "values": [ "string" ] } ], "searchText": "string", "shipmentIds": [ { "operator": "EQUALS", "values": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ] } ], "shipmentIdentifiers": [ { "operator": "EQUALS", "scopes": [ "SHIPMENT" ], "types": [ "AIR_WAYBILL" ], "values": [ "string" ] } ], "shipmentAttributes": [ { "name": "string", "operator": "EQUALS", "values": [ "string" ] } ], "shipmentDates": [ { "endDateTime": "2019-08-24T14:15:22Z", "offsetMinutes": 0, "operator": "WITHIN", "relativeDateTimeWindow": "YESTERDAY", "relativeWindowTimeZoneOffset": { "totalSeconds": 0, "id": "string", "rules": { "fixedOffset": true, "transitions": [ { "offsetBefore": {}, "offsetAfter": {}, "instant": "2019-08-24T14:15:22Z", "duration": { "units": [] }, "gap": true, "dateTimeAfter": "2019-08-24T14:15:22Z", "dateTimeBefore": "2019-08-24T14:15:22Z", "overlap": true } ], "transitionRules": [ { "month": "JANUARY", "timeDefinition": "UTC", "standardOffset": {}, "offsetBefore": {}, "offsetAfter": {}, "dayOfWeek": "MONDAY", "dayOfMonthIndicator": 0, "localTime": {}, "midnightEndOfDay": true } ] } }, "startDateTime": "2019-08-24T14:15:22Z", "types": [ "CREATED_DATE_TIME" ] } ], "shipmentStates": [ { "operator": "EQUALS", "types": [ "UNKNOWN" ] } ], "shipmentEvents": [ { "dateRanges": [ { "endDateTime": "2019-08-24T14:15:22Z", "offsetMinutes": 0, "operator": "WITHIN", "relativeDateTimeWindow": "YESTERDAY", "relativeWindowTimeZoneOffset": { "totalSeconds": 0, "id": "string", "rules": { "fixedOffset": true, "transitions": [ {} ], "transitionRules": [ {} ] } }, "startDateTime": "2019-08-24T14:15:22Z", "type": "PLANNED_DATETIME" } ], "deltas": [ { "operator": "MORE_THAN", "type": "RUNNING_EARLY", "value": 0 } ], "descriptions": [ { "operator": "EQUALS", "values": [ "string" ] } ], "stopProperties": [ { "operator": "EQUALS", "propertyName": "LOCATION_NAME", "propertyNames": [ "LOCATION_NAME" ], "values": [ "string" ] } ], "stopIdentifiers": [ { "operator": "EQUALS", "types": [ "AIRPORT_IATA" ], "values": [ "string" ] } ], "stopType": { "operator": "EQUALS", "types": [ "UNKNOWN" ] }, "scopes": [ "LATEST_ACTUAL_EVENT" ], "type": "UNKNOWN" } ], "shipmentTrackingStatusEvents": [ { "operator": "EQUALS", "scopes": [ "LATEST" ], "types": [ "TRACKING_INITIATE" ] } ], "shipmentStops": [ { "identifiers": [ { "operator": "EQUALS", "types": [ "AIRPORT_IATA" ], "values": [ "string" ] } ], "properties": [ { "operator": "EQUALS", "propertyName": "LOCATION_NAME", "propertyNames": [ "LOCATION_NAME" ], "values": [ "string" ] } ], "stopType": { "operator": "EQUALS", "types": [ "UNKNOWN" ] }, "scopes": [ "ANY_INBOUND" ] } ], "shipmentDurations": [ { "durationCriteria": [ { "operator": "MORE_THAN", "value": { "amount": 0, "unit": "UNKNOWN" } } ], "types": [ "ACTUAL_TRANSIT_TIME" ] } ], "sharingContextTenants": [ { "names": [ "string" ], "operator": "EQUALS", "scopes": [ "RECIPIENT" ] } ], "transportationModes": [ { "operator": "EQUALS", "scopes": [ "CURRENT" ], "types": [ "AIR" ] } ] }'
A combination of criteria is expected (but not required) in the request body.
The search is implicitly limited to shipments visible to the tenant performing the call.
If no criteria is present in the request body, then the response will contain a page of shipments visible to the tenant making the request.
This endpoint cannot return pages larger than 1,000 items, and it cannot page deeper than 10,000 results.
Match shipments on the differences between timestamps of related orders. Criteria are ANDed together.
A text-based search against a select set of fields in each shipment. If any of a shipment's select fields contain this value, then that shipment will be included in the result set.
Match shipments which contain one or more dates that meet all criteria. Criteria are ANDed together, types are ORed together.
Each item in this array should represent criteria for a distinct event type.
Match shipments which contain one or more durations that meet all criteria. Criteria are ANDed together, types are ORed together.
Example: (estimated transit time >= 30 minutes AND < 1 day) AND (actual transit time does not exist)
Example: (duration X OR duration Y >= 30 minutes) AND (duration Z < 3 hours)
The set of fields on which to sort. Order is important; sorting is performed hierarchically and the field at the front of this list has the highest precedence. For each field, exactly one of [fieldName, milestoneField] must be provided.
curl -i -X POST \ https://na12.api.project44.com/services/unified-search/v1/shipments/search \ -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \ -H 'Content-Type: application/json' \ -d '{ "additionalFields": [ { "keys": [ "string" ], "type": "CUSTOM_ATTRIBUTES" } ], "loadItemIdentifiers": [ { "operator": "EQUALS", "types": [ "SKU" ], "values": [ "string" ] } ], "loadItemDescriptions": [ { "operator": "EQUALS", "values": [ "string" ] } ], "orderIdentifierTypes": [ { "operator": "EQUALS", "types": [ "PURCHASE_ORDER" ] } ], "orderIdentifiers": [ { "operator": "EQUALS", "type": "PURCHASE_ORDER", "values": [ "string" ] } ], "orderIds": [ { "operator": "EQUALS", "values": [ "string" ] } ], "orderSupplierIds": [ { "operator": "EQUALS", "values": [ "string" ] } ], "orderDateRanges": [ { "endDateTime": "2019-08-24T14:15:22Z", "offsetMinutes": 0, "operator": "WITHIN", "relativeDateTimeWindow": "YESTERDAY", "relativeWindowTimeZoneOffset": { "totalSeconds": 0, "id": "string", "rules": { "fixedOffset": true, "transitions": [ { "offsetBefore": {}, "offsetAfter": {}, "instant": "2019-08-24T14:15:22Z", "duration": { "units": [] }, "gap": true, "dateTimeAfter": "2019-08-24T14:15:22Z", "dateTimeBefore": "2019-08-24T14:15:22Z", "overlap": true } ], "transitionRules": [ { "month": "JANUARY", "timeDefinition": "UTC", "standardOffset": {}, "offsetBefore": {}, "offsetAfter": {}, "dayOfWeek": "MONDAY", "dayOfMonthIndicator": 0, "localTime": {}, "midnightEndOfDay": true } ] } }, "startDateTime": "2019-08-24T14:15:22Z", "type": "SUPPLIER_READY_START_DATETIME" } ], "orderDeltas": [ { "durationInMinutes": 0, "operator": "MORE_THAN", "type": "RUNNING_EARLY" } ], "orderTags": [ { "operator": "EQUALS", "types": [ "ANALYST" ], "values": [ "string" ] } ], "orderAdditionalIdentifiers": [ { "operator": "EQUALS", "types": [ "CONTRACT" ], "values": [ "string" ] } ], "pagination": { "pageSize": 1, "pageNumber": 1 }, "searchText": "string", "shipmentIds": [ { "operator": "EQUALS", "values": [ "497f6eca-6276-4993-bfeb-53cbbbba6f08" ] } ], "shipmentIdentifiers": [ { "operator": "EQUALS", "scopes": [ "SHIPMENT" ], "types": [ "AIR_WAYBILL" ], "values": [ "string" ] } ], "shipmentAttributes": [ { "name": "string", "operator": "EQUALS", "values": [ "string" ] } ], "shipmentDates": [ { "endDateTime": "2019-08-24T14:15:22Z", "offsetMinutes": 0, "operator": "WITHIN", "relativeDateTimeWindow": "YESTERDAY", "relativeWindowTimeZoneOffset": { "totalSeconds": 0, "id": "string", "rules": { "fixedOffset": true, "transitions": [ { "offsetBefore": {}, "offsetAfter": {}, "instant": "2019-08-24T14:15:22Z", "duration": { "units": [] }, "gap": true, "dateTimeAfter": "2019-08-24T14:15:22Z", "dateTimeBefore": "2019-08-24T14:15:22Z", "overlap": true } ], "transitionRules": [ { "month": "JANUARY", "timeDefinition": "UTC", "standardOffset": {}, "offsetBefore": {}, "offsetAfter": {}, "dayOfWeek": "MONDAY", "dayOfMonthIndicator": 0, "localTime": {}, "midnightEndOfDay": true } ] } }, "startDateTime": "2019-08-24T14:15:22Z", "types": [ "CREATED_DATE_TIME" ] } ], "shipmentStates": [ { "operator": "EQUALS", "types": [ "UNKNOWN" ] } ], "shipmentEvents": [ { "dateRanges": [ { "endDateTime": "2019-08-24T14:15:22Z", "offsetMinutes": 0, "operator": "WITHIN", "relativeDateTimeWindow": "YESTERDAY", "relativeWindowTimeZoneOffset": { "totalSeconds": 0, "id": "string", "rules": { "fixedOffset": true, "transitions": [ {} ], "transitionRules": [ {} ] } }, "startDateTime": "2019-08-24T14:15:22Z", "type": "PLANNED_DATETIME" } ], "deltas": [ { "operator": "MORE_THAN", "type": "RUNNING_EARLY", "value": 0 } ], "descriptions": [ { "operator": "EQUALS", "values": [ "string" ] } ], "stopProperties": [ { "operator": "EQUALS", "propertyName": "LOCATION_NAME", "propertyNames": [ "LOCATION_NAME" ], "values": [ "string" ] } ], "stopIdentifiers": [ { "operator": "EQUALS", "types": [ "AIRPORT_IATA" ], "values": [ "string" ] } ], "stopType": { "operator": "EQUALS", "types": [ "UNKNOWN" ] }, "scopes": [ "LATEST_ACTUAL_EVENT" ], "type": "UNKNOWN" } ], "shipmentTrackingStatusEvents": [ { "operator": "EQUALS", "scopes": [ "LATEST" ], "types": [ "TRACKING_INITIATE" ] } ], "shipmentStops": [ { "identifiers": [ { "operator": "EQUALS", "types": [ "AIRPORT_IATA" ], "values": [ "string" ] } ], "properties": [ { "operator": "EQUALS", "propertyName": "LOCATION_NAME", "propertyNames": [ "LOCATION_NAME" ], "values": [ "string" ] } ], "stopType": { "operator": "EQUALS", "types": [ "UNKNOWN" ] }, "scopes": [ "ANY_INBOUND" ] } ], "shipmentDurations": [ { "durationCriteria": [ { "operator": "MORE_THAN", "value": { "amount": 0, "unit": "UNKNOWN" } } ], "types": [ "ACTUAL_TRANSIT_TIME" ] } ], "sharingContextTenants": [ { "names": [ "string" ], "operator": "EQUALS", "scopes": [ "RECIPIENT" ] } ], "sort": [ { "direction": "ASC", "fieldName": "PRIMARY_IDENTIFIER", "milestoneField": { "fieldName": "ACTUAL_DATE_TIME", "milestoneType": "GATE_OUT_EMPTY_AT_FIRST_PORT" } } ], "transportationModes": [ { "operator": "EQUALS", "scopes": [ "CURRENT" ], "types": [ "AIR" ] } ] }'
{ "paginationInfo": { "pageSize": 0, "pageNumber": 0, "total": 0 }, "results": [ { … } ] }