updateShipmentIdentifiers

Adds or corrects identifiers on a shipment that's already tracked

NameTypeDescription
inputUpdateShipmentIdentifiersInputA list of up to 200 shipments to update.

businessDataMapping

NameTypeDescription
purchaseOrderNumberStringPurchase order number (PO number): A unique identifier assigned to a specific order.
CommodityStringA high-level description of goods to be shipped.
consigneeStringThe contracted receiver of the goods shipped.
ShipperStringThe contracted shipper of goods.
usernameStringThe individual or entity currently responsible for performing administrative tasks related to the shipment.
departmentStringThe department responsible for overseeing the current stage of administrative tasks associated with the shipment.

Example Code

Sample Mutation

mutation UpdateShipmentIdentifiers($input: [UpdateShipmentIdentifiersInput!]!) {
  updateShipmentIdentifiers(input: $input) {
    shipmentId
    clientReference
    isAccepted
    changed {
      type
      previousValue
      currentValue
      operation
    }
    rejectionReason
    rejectionDescription
    refetchTriggered
    collidingShipmentIds
  }
}

Variables

{
  "input": [
    {
      "shipmentId": "66f1c2a9e4b0a1b2c3d4e5f6",
      "bol": "ABC124",
      "clientReference": "TMS-8812"
    }
  ]
}

UpdateShipmentIdentifiersResult

{
  "data": {
    "updateShipmentIdentifiers": [
      {
        "shipmentId": "66f1c2a9e4b0a1b2c3d4e5f6",
        "clientReference": "TMS-8812",
        "isAccepted": true,
        "changed": [
          {
            "type": "BILL_OF_LADING",
            "previousValue": "ABC123",
            "currentValue": "ABC124",
            "operation": "CHANGED"
          }
        ],
        "rejectionReason": null,
        "rejectionDescription": null,
        "refetchTriggered": true,
        "collidingShipmentIds": null
      }
    ]
  }
}

UpdateShipmentIdentifiersResult

NameTypeDescription
shipmentIdObjectIdEchoes the input shipmentId.
clientReferenceStringEchoes the input clientReference, if sent.
isAcceptedBooleanThe new identifiers were saved and will be tried. Whether the carrier recognises them shows up after the refresh, in winningIdentifier and message (see trackedShipments).
changedIdentifierChangeEach identifier that changed. Empty if the values were already current.
rejectionReasonIdentifierUpdateRejectionReasonWhy this element was rejected. Null if accepted.
rejectionDescriptionStringHuman-readable detail for rejectionReason.
refetchTriggeredBooleanWhether an immediate refresh from the carrier was triggered.
collidingShipmentIdsObjectIdWith IDENTIFIER_COLLISION, the other shipments in your organization that already hold these identifiers.

NameTypeDescription
typeShipmentIdentifierKindWhich identifier changed.
previousValueStringNull for an ADDED operation.
currentValueStringThe new value.
operationIdentifierChangeOperationADDED or CHANGED.

IdentifierUpdateRejectionReason

ValueDescription
NOT_ENTITLEDThe shipment doesn't exist or isn't tracked by your organization.
SHIPMENT_NOT_FOUNDThe shipment could not be found.
NO_IDENTIFIER_SUPPLIEDNo identifier field was sent.
SHIPMENT_NOT_ACTIVEThe shipment is disabled or completed.
IDENTIFIER_NOT_CHANGEABLEThe carrier hasn't rejected this identifier (for SCAC: the status isn't SCAC_INPUT_ERROR).
CONTAINER_NUMBER_CANNOT_BE_ADDEDThe shipment was registered without a container number.
IDENTIFIER_CANNOT_BE_REMOVEDA null or blank value was sent.
IDENTIFIER_TOO_LONGOver 100 characters.
CONTAINER_NUMBER_MALFORMEDNot a valid ISO 6346 number (4 letters, 6 digits, correct check digit).
BOL_MALFORMEDOnly letters, digits, "-" and "/" are allowed.
CARRIER_SCAC_NOT_SUPPORTEDThe SCAC isn't supported.
IDENTIFIER_COLLISIONThe value already belongs to another of your shipments — see collidingShipmentIds.
UPDATE_IN_PROGRESSAnother update of the same