Shipment
Overview
Shipments record the physical movement of goods and update inventory levels. Unlike orders which represent plans, shipments represent actual execution - goods leaving, arriving, or moving between your facilities. Every shipment creates permanent stock history entries that form the audit trail of inventory movements.
Sale shipments track goods leaving your warehouse to customers. The workflow involves first packing the shipment - scanning products to verify and reserve them - then shipping it by recording the carrier and tracking number. When packed, inventory moves from "on hand" to "packed" status, reserving it for that specific shipment. When shipped, inventory is removed from the warehouse entirely. This two-stage process gives you control and accuracy, preventing accidental shipment of wrong products.
Purchase shipments record goods arriving from suppliers. When you receive a shipment, products are verified and added to warehouse inventory at a specific cost. This updates both stock levels and inventory valuation. The receiving process can reference a purchase order to validate what was expected versus what actually arrived, flagging discrepancies for review.
Transfer shipments move inventory between your own facilities. They have a two-part workflow: first shipping from the origin location (moving stock to "in transit" status), then receiving at the destination (moving stock from "in transit" to the destination warehouse). This in-transit tracking ensures you always know where your inventory is, even when it's on a truck between warehouses.
Return shipments handle goods coming back from customers. They add inventory back to your warehouse, creating stock history entries that reverse the original sale. Returns can reference the original sale shipment, linking the reverse transaction to the initial sale for accurate financial and inventory tracking.
Shipments capture detailed information beyond just products and quantities. They record carrier information, tracking numbers, package dimensions and weights, and dates for each stage of the process. Line items can specify lot IDs for lot-tracked products and specific sublocations within a warehouse, giving you bin-level inventory accuracy. The GraphQL API provides calculated fields showing total units, total costs, and consolidation status for financial reporting.
GraphQL API
The shipment collection provides access to shipment data via the GraphQL API. All queries use the Relay connection specification with cursor-based pagination.
Query Name: shipmentViewConnection
Available Features:
- Cursor-based pagination (first/last/after/before)
- 19 filter options
- 9 sortable fields
- 16 relations to other collections
Query Examples
Basic Query
The shipment collection is accessed via the shipmentViewConnection query, which returns a Relay-style connection with pagination support.
query {
shipmentViewConnection(first: 10) {
edges {
node {
cancelTransactionTimestamp
cbmSubtotal
consolidationStatus
countPackages
nativeNeqSubtotal
}
}
pageInfo {
hasNextPage
endCursor
}
}
}Pagination
Use cursor-based pagination to retrieve large datasets:
# First page
query {
shipmentViewConnection(first: 50) {
edges {
node { shipmentId }
}
pageInfo {
hasNextPage
endCursor
}
}
}
# Subsequent pages
query {
shipmentViewConnection(first: 50, after: "cursor-from-previous-page") {
edges {
node { shipmentId }
}
pageInfo {
hasNextPage
endCursor
}
}
}Filtering
Apply filters to narrow results (see Filters section for all available options):
query {
shipmentViewConnection(
first: 10
connectionRelationErrorDates: { begin: "2024-01-01", end: "2024-12-31" }
) {
edges {
node { shipmentId }
}
}
}Sorting
Sort results by one or more fields:
query {
shipmentViewConnection(
first: 10
sort: [{ field: "packDate", mode: "desc" }]
) {
edges {
node {
shipmentId
packDate
}
}
}
}Relations
Query related data (see Relations section for all available relations):
query {
shipmentViewConnection(first: 10) {
edges {
node {
shipmentId
cancelTransactionUser {
name
userLoginUrl
}
}
}
}
}Summary and Aggregation
This collection supports metrics aggregation through the summary field. You can calculate totals, averages, counts, and other aggregate values across filtered data.
Note: This collection does not support groupBy dimensions. For dimensional analysis, use collections like product, order, or invoice.
For a comprehensive guide to using aggregations, see the Aggregation Concept Guide.
Query Structure
shipmentViewConnection(filters...) {
summary {
errorCode
errorMessage
metrics {
# Calculated metrics (see table below)
}
}
}Available Metrics
This collection provides 2 metrics that can be aggregated:
| Metric | Parameters | Description |
|---|---|---|
totalUnits | transform, operator, productUrlList | Total number of units |
count | None | Count of items in the result set |
Common Parameters:
operator- Aggregation function:sum,mean,min,maxtransform- Mathematical transformation:absdateRange- Filter to specific date rangefacilityUrlList- Filter to specific facilities
Examples
Example 1: Total shipment Metrics
Calculate aggregate metrics across all shipment records:
query {
shipmentViewConnection(first: 1) {
summary {
errorCode
errorMessage
metrics {
totalCount: count
}
}
}
}Expected result structure:
{
"data": {
"shipmentViewConnection": {
"summary": {
"errorCode": null,
"errorMessage": null,
"metrics": {
"totalCount": [1523]
}
}
}
}
}Fields
This collection has 40 fields:
- 36 simple fields
- 3 enum fields (with predefined values)
- 1 parameterized fields (accept query options)
Note on Field Formatting: All scalar fields support the
formatterargument to control output format. Available options:"html","none","abbreviated","blank-zero". Some fields have a default formatter (shown below). See the Formatting guide for details.
Note on Sorting: Field sortability may vary depending on the UI context and query parameters used. Some parameter options explicitly disable sorting (marked with ⚠️ not sortable).
Simple Fields
These fields return values directly without additional options.
cancelTransactionTimestamp
cancelTransactionTimestampThe timestamp when a shipment cancellation transaction was processed. This field records the exact date and time when the shipment was cancelled in the system, providing an audit trail for shipment cancellations.
Label: Cancel transaction timestamp
Sortable: No
cbmSubtotal
cbmSubtotalThe total cubic meters (CBM) volume for all items in the shipment. This measurement represents the sum of the volumetric space occupied by the shipment contents, which is commonly used in freight and logistics for calculating shipping costs and space requirements.
Label: CBM subtotal
Sortable: No
countPackages
countPackagesThe number of boxes or packages included in a shipment. This field is used to display shipping information on shipment status screens, showing phrases like "1 box" or "3 boxes" when the shipment is in packed or shipped status. The field accepts numeric values and is displayed alongside shipment dates and other logistics information to give users a quick overview of the physical packaging details.
Label: Count packages
Sortable: No
nativeNeqSubtotal
nativeNeqSubtotalThe total net explosive quantity (NEQ) for all items in the shipment, expressed in the company's native unit of measure. Net explosive quantity represents the mass of explosive material contained in hazardous products, which is important for regulatory compliance and shipping documentation for dangerous goods. This field aggregates the NEQ values across all shipment items.
Label: Native NEQ subtotal
Sortable: No
nativeWeightSubtotal
nativeWeightSubtotalThe total weight of all items in the shipment, calculated in the system's native weight units. This subtotal aggregates the weight values from all shipment items included in the shipment. When a shipment has no items or doesn't exist, the field returns null. The value is typically displayed with two decimal places for precision in weight tracking and shipping calculations.
Label: Native Weight subtotal
Sortable: No
packDate
packDateThe date and time when the shipment was packed. This field is populated when a shipment reaches the SHIPMENT_PACKED status and is displayed in the shipment's status summary to show when the packing activity was completed.
Label: Pack date
Sortable: Yes
packLastSublocationDate
packLastSublocationDateThe date when the last sublocation was recorded during the packing process of the shipment. This field tracks the most recent sublocation assignment as items are packed, providing visibility into where items were located within a warehouse or facility at the time of packing. It works in conjunction with the pack last sublocation transaction timestamp and user fields to provide a complete audit trail of sublocation information during shipment packing operations.
Label: Pack last sublocation date
Sortable: No
packLastSublocationTransactionTimestamp
packLastSublocationTransactionTimestampThe timestamp when the most recent sublocation inventory transaction occurred during the packing process for this shipment. When packing a shipment involves moving inventory from a specific sublocation within a warehouse, this field records the exact time that last sublocation-based inventory movement was processed. This helps track when inventory was last pulled from a specific warehouse location as part of fulfilling the shipment.
Label: Pack last sublocation transaction timestamp
Sortable: No
packTransactionTimestamp
packTransactionTimestampThe date and time when the shipment was packed. This timestamp records when the packing operation was completed for the shipment, marking a key milestone in the fulfillment process between order creation and shipping.
Label: Pack transaction timestamp
Sortable: No
privateNotes
privateNotesInternal notes or comments about the shipment that are intended for private use within the organization. These notes are not meant to be shared with customers or external parties, unlike public notes which may appear on shipping documents. Users can enter free-form text to record important information about the shipment such as special handling instructions, internal routing details, or other operational notes that staff need to reference when processing or fulfilling the shipment.
Label: Internal notes
Sortable: No
publicNotes
publicNotesNotes about the shipment that are visible to external parties such as customers or suppliers. Unlike internal notes, public notes may appear on customer-facing documents or be shared outside the organization. Users can add free-form text to provide shipping instructions, delivery details, or other information that should be communicated externally.
Label: Public notes
Sortable: No
receiveDate
receiveDateThe date when the shipment was received. This field combines both the actual receive date and the estimated receive date into a single value for reporting and filtering purposes. When a shipment has been received, this shows the actual receive date; when a shipment has not yet been received, this shows the estimated receive date. This consolidated field allows users to view, filter, and group shipments by their receive timing regardless of whether the shipment has been delivered or is still pending.
Label: Receive date
Sortable: No
receiveDateActual
receiveDateActualThe actual date when the shipment was received. This field records when goods physically arrived at their destination, as opposed to the estimated receive date. The field is populated when a shipment's status changes to "Received" and a receive transaction is completed. It remains empty for shipments that have not yet been received.
Label: Receive date actual
Sortable: Yes
receiveDateEstimated
receiveDateEstimatedThe anticipated date when a shipment is expected to arrive at its destination. This field is used for planning and tracking purposes before the actual arrival occurs, helping businesses forecast inventory arrival and manage customer expectations. Once the shipment is actually received, the actual arrival date is recorded in the receiveDate field.
Label: Receive date estimated
Sortable: Yes
receiveTransactionTimestamp
receiveTransactionTimestampThe timestamp when the shipment was received. This records the date and time when the receiving transaction was completed, marking when the goods physically arrived and were accepted into inventory. This is distinct from the estimated or actual receive date fields, as it captures the exact moment the receive transaction was processed in the system. The timestamp is associated with the user who performed the receive transaction.
Label: Receive transaction timestamp
Sortable: No
recordCreated
recordCreatedThe date and time when the shipment record was first created in the system. This field displays the creation timestamp in a formatted date-time format and can be used to track when shipments were originally entered. The field may be null for older records that were created before this tracking was implemented.
Label: Record created
Sortable: No
recordLastUpdated
recordLastUpdatedThe date and time when the shipment record was last modified, displayed in a user-friendly format. This field shows when any changes were made to the shipment, such as status updates, item modifications, or other edits to the shipment data. The timestamp is formatted for easy reading rather than as a raw ISO date string.
Label: Record last updated
Sortable: No
shipDate
shipDateThe actual date when the shipment was sent or departed. This field is populated with the confirmed ship date once the shipment has been dispatched, distinguishing it from the estimated ship date which represents the planned departure date. Users update this field to record when goods physically left the origin facility, and it is used for tracking shipment progress and calculating delivery timelines.
Label: Ship date
Sortable: No
shipDateActual
shipDateActualThe actual date when the shipment was shipped. This field distinguishes from the estimated ship date by recording when the shipment actually left the origin location. When a shipment has not yet been shipped, this field remains empty. Once goods physically leave the facility, this date is populated to track the actual shipping timeline versus the originally estimated date.
Label: Ship date actual
Sortable: Yes
shipDateEstimated
shipDateEstimatedThe anticipated date when the shipment is expected to leave the originating location. This represents the planned or projected ship date, as opposed to the actual ship date when the shipment physically departs. Users can set this field to communicate expected timelines for outbound shipments, which is particularly useful for planning and coordination purposes before the shipment actually ships.
Label: Ship date estimated
Sortable: Yes
shipmentId
shipmentIdThe unique identifier for the shipment record. This is the primary ID used internally by the system to reference shipments, and is typically displayed to users as the Shipment ID. The field supports identifiers up to 60 characters and must not be empty. Examples from the system include simple numeric IDs like "300" or "301", as well as order-based formats like "891-2" or "892-1" which indicate the shipment is associated with a specific order and may be sequentially numbered.
Label: Shipment ID
Sortable: Yes
Default Formatter: html
Example Query:
{
shipment(shipmentUrl: "example-url") {
shipmentId # Uses default formatter: html
shipmentIdRaw: shipmentId(formatter: "none") # Get raw value
}
}shipmentUrl
shipmentUrlThe unique identifier that provides access to a specific shipment record. This field is automatically generated by the server and serves as the primary identifier for retrieving, updating, and referencing shipment information throughout the system. It is used to look up shipment records, check authorization for shipment operations, and establish relationships between shipments and related entities like orders and returns. Orders maintain lists of associated shipment URLs, and returns can reference shipments through their shipmentUrlList fields.
IMPORTANT: Treat URL values as opaque strings supplied by the server. Do not attempt to parse, interpret, or construct URL values manually:
- ID values embedded in URLs may differ from entity ID values
- The URL structure is an internal implementation detail subject to change
- Manually constructing URLs can lead to bugs and system errors
- Always use URL values exactly as provided by the API
Label: Shipment Url
Sortable: No
shipTransactionTimestamp
shipTransactionTimestampThe timestamp when the shipment was marked as shipped. This field captures the date and time when the shipment status changed to 'Shipped', recording when the goods actually left the origin facility. The timestamp is derived from the shipment's status history when the status transitions to SHIPMENT_SHIPPED. This field is displayed in a formatted date-time format (e.g., "Jun 14 2014 5:51:56 am") and remains null until the shipment is actually shipped.
Label: Ship transaction timestamp
Sortable: No
statusExtended
statusExtendedAn extended or more detailed representation of the shipment's status. This field provides additional status information beyond the primary status field, offering users a more descriptive view of where the shipment stands in its lifecycle. The field is display-only and cannot be used for sorting in reports or queries.
Label: Status extended
Sortable: No
subtotal
subtotalThe total monetary value of all items in the shipment before any adjustments, fees, or taxes are applied. This represents the sum of the individual line item amounts (quantity times unit price) for all products included in the shipment. Users would reference this field to see the base value of goods being shipped before additional charges or discounts modify the final total.
Label: Subtotal
Sortable: No
title
titleA human-readable label that identifies the shipment by combining its type and user-facing ID. The format is "[Type] shipment [ID]" where the type describes the shipment category such as Transfer, Return, Sale, or Purchase, and the ID is the user-assigned shipment identifier. For example, "Sale shipment 892-1" or "Transfer shipment 301". This field is used throughout the system for display purposes, making it easy for users to quickly identify and distinguish between different shipments in lists, reports, and navigation breadcrumbs.
Label: Title
Sortable: No
totalAllocatedAdjustments
totalAllocatedAdjustmentsThe total monetary value of all allocated adjustments across all items in the shipment. This field represents the sum of adjustments that have been allocated to individual shipment items, providing an aggregate view of adjustment costs at the shipment level. This value is typically used in financial reporting and cost analysis alongside other totals like allocated miscellaneous charges and income after adjustments.
Label: Total allocated adjustments
Sortable: No
totalAllocatedMiscellaneous
totalAllocatedMiscellaneousThe total amount of miscellaneous costs that have been allocated to this shipment. This is a calculated field that aggregates various miscellaneous charges or expenses associated with the shipment. The field is displayed as a right-aligned monetary value.
Label: Total allocated miscellaneous
Sortable: No
totalAverageCost
totalAverageCostThe total cost of goods sold (COGS) for the shipment, calculated using average cost valuation. This represents an estimated total cost when the shipment record is created, based on the average cost of items in the shipment at that time. For actual landed cost after all shipment-related expenses are applied, see totalLandedCost.
Label: Total COGS
Sortable: No
totalIncomeAfterAdjustments
totalIncomeAfterAdjustmentsThe total revenue amount for the shipment after applying all adjustments, calculated by summing the income after adjustments for each item in the shipment. This represents the shipment's subtotal plus any adjustments (such as discounts or fees) that have been allocated to the shipment items. This field is used for financial reporting and analysis to understand the actual income generated from a shipment after all price modifications have been applied.
Label: Total income after adjustments
Sortable: No
totalLandedCost
totalLandedCostThe total landed cost for a purchase shipment, which represents the sum of all costs associated with getting the goods to their destination. This includes the subtotal of items plus any allocated adjustments such as freight, duties, and other miscellaneous charges. This value helps businesses understand the true total cost of acquiring inventory through a purchase shipment.
Label: Total landed cost
Sortable: No
totalStandardAccountingCost
totalStandardAccountingCostThe total value of all items in the shipment calculated using standard accounting cost. This cost field represents a specific accounting method valuation for the shipment's contents, distinct from average cost or landed cost calculations. The field is displayed with two decimal places in currency format. It appears alongside other shipment cost totals such as total average cost, total landed cost, and total transfer value in reporting and analysis interfaces.
Label: Total standard accounting cost
Sortable: No
totalTransferValue
totalTransferValueThe total transfer value for the shipment, representing the cumulative value of inventory being transferred. This field is displayed alongside other shipment cost totals such as total landed cost, total average cost, and total standard accounting cost. The field is used to track the monetary value of goods being moved in transfer-type shipments.
Label: Total transfer value
Sortable: No
trackingCode
trackingCodeThe tracking number provided by the shipping carrier for a shipment, used to track the package's delivery status and location. This code is typically assigned by carriers like FedEx, UPS, or USPS when a shipment is created, and customers can use it to monitor their package in transit. The field may be null for shipments that haven't been assigned a tracking number yet, such as those still being prepared or shipments that don't require tracking.
Label: Tracking code
Sortable: Yes
unpackTransactionTimestamp
unpackTransactionTimestampThe transaction timestamp when the shipment was unpacked. This represents the system timestamp when the unpack action was executed, recording when the shipment's status was changed to unpacked in the database. For sales shipments, unpacking reverses the packed status and returns the shipment to an earlier state in the fulfillment workflow.
Label: Unpack transaction timestamp
Sortable: No
weightSubtotal
weightSubtotalThe total weight of all items in the shipment. This field aggregates the weight across all products and quantities included in the shipment, providing a cumulative weight measurement for the entire shipment transaction.
Label: Weight subtotal
Sortable: No
Enum Fields
These fields return one of a predefined set of values.
consolidationStatus
consolidationStatusIndicates whether the shipment has been consolidated for accounting and reporting purposes. This field has two possible values: Pending (the shipment has not yet been consolidated) or Consolidated (the shipment has been consolidated). This status is used to track which shipments have been processed and finalized for financial reporting and is commonly used as a filter when generating reports and analyzing shipment data.
Label: Consolidation status
Sortable: No
Possible Values:
##consolidationStatusExcluded- Excluded##consolidationStatusPending- Pending##consolidationStatusConsolidated- Consolidated##consolidationStatusConsolidation- Consolidation
status
statusThe current lifecycle stage of the shipment. This field tracks whether a shipment is in initial entry, has been packed, has been shipped, has been delivered/received, or has been cancelled. The status determines which operations can be performed on the shipment and affects inventory calculations. Common status values include input for newly created shipments, packed when items are ready to ship, shipped when the shipment is in transit, delivered/received when items arrive at their destination, and cancelled for shipments that were voided.
Label: Status
Sortable: No
Possible Values:
SHIPMENT_INPUT- EditableSHIPMENT_DELIVERED- ReceivedSHIPMENT_PACKED- PackedSHIPMENT_UNPACKED- UnpackedSHIPMENT_SHIPPED- ShippedSHIPMENT_CANCELLED- Canceled
type
typeThe category of shipment that determines the direction and purpose of the inventory movement. The three main types are SALES_SHIPMENT for outbound shipments to customers, PURCHASE_SHIPMENT for inbound shipments from vendors, and TRANSFER for moving inventory between facilities. An additional type, SALES_RETURN, is used when customers return products. The type controls business logic such as which facilities are involved and how inventory is adjusted.
Label: Type
Sortable: No
Possible Values:
PURCHASE_SHIPMENT- PurchaseTRANSFER- TransferSALES_SHIPMENT- SaleSALES_RETURN- Return
Parameterized Fields
These fields accept parameters to customize the returned data. Parameters allow filtering by location, date ranges, aggregation methods, and more.
totalUnits
totalUnitsThe total number of individual units across all items in the shipment, calculated by multiplying each line item's quantity by its product's units per case and summing the results. This field provides the aggregate unit count for the entire shipment, accounting for products that are packed in cases or multi-unit packages. For example, if a shipment contains 2 cases of a product with 12 units per case and 5 cases of another product with 6 units per case, the totalUnits would be 54. This field can be filtered to show totals for specific products only.
Label: Total units
Sortable: No
Parameters:
- productUrlList (
List|ProductUrlString) Product(s)
Example Query:
{
shipment(shipmentUrl: "example-url") {
totalUnits(
productUrlList: ["example-value"]
)
}
}Relations
cancelTransactionUser
- Related Collection: userLogin
- Label: Cancel transaction user
TODO: Add relation description
carrier
- Related Collection: party
- Label: Carrier
TODO: Add relation description
destination
- Related Collection: facility
- Label: Destination
TODO: Add relation description
connectionRelation
- Related Collection: connectionRelation
- Label: Integration
TODO: Add relation description
order
- Related Collection: order
- Label: Order
TODO: Add relation description
origin
- Related Collection: facility
- Label: Origin
TODO: Add relation description
packLastSublocationTransactionUser
- Related Collection: userLogin
- Label: Pack last sublocation transaction user
TODO: Add relation description
packTransactionUser
- Related Collection: userLogin
- Label: Pack transaction user
TODO: Add relation description
product
- Related Collection: product
- Label: Product (consolidated)
TODO: Add relation description
receiveTransactionUser
- Related Collection: userLogin
- Label: Receive transaction user
TODO: Add relation description
recordCreatedUser
- Related Collection: userLogin
- Label: Record created user
TODO: Add relation description
recordLastUpdatedUser
- Related Collection: userLogin
- Label: Record last updated user
TODO: Add relation description
shipFrom
- Related Collection: address
- Label: Ship from
TODO: Add relation description
shipTo
- Related Collection: address
- Label: Ship to
TODO: Add relation description
shipTransactionUser
- Related Collection: userLogin
- Label: Ship transaction user
TODO: Add relation description
unpackTransactionUser
- Related Collection: userLogin
- Label: Unpack transaction user
TODO: Add relation description
Filters
connectionRelationErrorDates
- Label: Latest error date
- Type: dateRangeInput
- Enabled: Yes
Filter Type: Date range
Input Structure:
{
begin: string // ISO date format: "2024-01-01"
end: string // ISO date format: "2024-12-31"
}Usage Example:
query {
shipmentViewConnection(
first: 10
connectionRelationErrorDates: {
begin: "2024-01-01"
end: "2024-12-31"
}
) {
edges {
node {
shipmentId
connectionRelationErrorDates
}
}
}
}connectionRelationSyncStatuses
- Label: Sync status
- Type: List|String
- Enabled: Yes
- Options:
- Excluded from syncing (##crStatusSkipped)
- Has error (##crStatusError)
- Not synced (##crStatusNotPushed)
- Partially synced (##crStatusPartiallySynced)
- Synced (##crStatusPushed)
Filter Type: Predefined options
Get Current Options:
These options may vary by account configuration. To get the current list:
query {
dataSetMeta(purpose: "uiSalesShipment") {
dataSets(name: "shipment") {
filters {
name
optionList {
value
label
}
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
connectionRelationSyncStatuses: ["##crStatusNotPushed", "##crStatusPushed"]
) {
edges {
node {
shipmentId
connectionRelationSyncStatuses
}
}
}
}consolidationStatus
- Label: Consolidation status
- Type: List|String
- Enabled: Yes
- Options:
- Consolidated (##consolidationStatusConsolidated)
- Consolidation (##consolidationStatusConsolidation)
- Excluded (##consolidationStatusExcluded)
- Pending (##consolidationStatusPending)
Filter Type: Predefined options
Get Current Options:
These options may vary by account configuration. To get the current list:
query {
dataSetMeta(purpose: "uiSalesShipment") {
dataSets(name: "shipment") {
filters {
name
optionList {
value
label
}
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
consolidationStatus: ["##consolidationStatusExcluded", "##consolidationStatusPending"]
) {
edges {
node {
shipmentId
consolidationStatus
}
}
}
}destination
- Label: Destination
- Type: List|FacilityUrlLocationString
- Enabled: Yes
Filter Type: Reference to facility collection
Note: Filters to locations only
This filter accepts values from the facilityViewConnection query. To get available values:
query {
facilityViewConnection(
first: 100
type: "FACILITY_LOCATION"
status: "FACILITY_ACTIVE"
) {
edges {
node {
facilityUrl # Use this value in the filter
name
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
destination: ["FACILITY_URL_VALUE"]
) {
edges {
node {
shipmentId
facility {
name
}
}
}
}
}orderOrderDate
- Label: Order date
- Type: dateRangeInput
- Enabled: Yes
Filter Type: Date range
Input Structure:
{
begin: string // ISO date format: "2024-01-01"
end: string // ISO date format: "2024-12-31"
}Usage Example:
query {
shipmentViewConnection(
first: 10
orderOrderDate: {
begin: "2024-01-01"
end: "2024-12-31"
}
) {
edges {
node {
shipmentId
orderOrderDate
}
}
}
}orderType
- Label: Type
- Type: List|String
- Enabled: Yes
- Options:
- Purchase (PURCHASE_ORDER)
- Sale (SALES_ORDER)
- Transfer (TRANSFER_ORDER)
Filter Type: Predefined options
Get Current Options:
These options may vary by account configuration. To get the current list:
query {
dataSetMeta(purpose: "uiSalesShipment") {
dataSets(name: "shipment") {
filters {
name
optionList {
value
label
}
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
orderType: ["PURCHASE_ORDER", "SALES_ORDER"]
) {
edges {
node {
shipmentId
orderType
}
}
}
}orderUrl
- Label: Order
- Type: TransferShipmentOrderUrlString
- Enabled: Yes
Filter Type: Reference to order collection
Note: For transfer shipments
This filter accepts values from the orderViewConnection query. To get available values:
query {
orderViewConnection(
first: 100
) {
edges {
node {
orderUrl # Use this value in the filter
orderId
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
orderUrl: "ORDER_URL_VALUE"
) {
edges {
node {
shipmentId
order {
orderId
}
}
}
}
}origin
- Label: Origin
- Type: List|FacilityUrlLocationString
- Enabled: Yes
Filter Type: Reference to facility collection
Note: Filters to locations only
This filter accepts values from the facilityViewConnection query. To get available values:
query {
facilityViewConnection(
first: 100
type: "FACILITY_LOCATION"
status: "FACILITY_ACTIVE"
) {
edges {
node {
facilityUrl # Use this value in the filter
name
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
origin: ["FACILITY_URL_VALUE"]
) {
edges {
node {
shipmentId
facility {
name
}
}
}
}
}packDate
- Label: Pack date
- Type: dateRangeInput
- Enabled: Yes
Filter Type: Date range
Input Structure:
{
begin: string // ISO date format: "2024-01-01"
end: string // ISO date format: "2024-12-31"
}Usage Example:
query {
shipmentViewConnection(
first: 10
packDate: {
begin: "2024-01-01"
end: "2024-12-31"
}
) {
edges {
node {
shipmentId
packDate
}
}
}
}product
- Label: Product
- Type: List|ProductUrlString
- Enabled: Yes
Filter Type: Reference to product collection
This filter accepts values from the productViewConnection query. To get available values:
query {
productViewConnection(
first: 100
) {
edges {
node {
productUrl # Use this value in the filter
title
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
product: ["PRODUCT_URL_VALUE"]
) {
edges {
node {
shipmentId
product {
title
}
}
}
}
}receiveDateActual
- Label: Receive date actual
- Type: dateRangeWithFutureInput
- Enabled: Yes
Filter Type: Date range
Input Structure:
{
begin: string // ISO date format: "2024-01-01"
end: string // ISO date format: "2024-12-31"
}Usage Example:
query {
shipmentViewConnection(
first: 10
receiveDateActual: {
begin: "2024-01-01"
end: "2024-12-31"
}
) {
edges {
node {
shipmentId
receiveDateActual
}
}
}
}receiveDateEstimated
- Label: Receive date estimated
- Type: dateRangeWithFutureInput
- Enabled: Yes
Filter Type: Date range
Input Structure:
{
begin: string // ISO date format: "2024-01-01"
end: string // ISO date format: "2024-12-31"
}Usage Example:
query {
shipmentViewConnection(
first: 10
receiveDateEstimated: {
begin: "2024-01-01"
end: "2024-12-31"
}
) {
edges {
node {
shipmentId
receiveDateEstimated
}
}
}
}search
- Label: Not specified
- Type: SearchString
- Enabled: Yes
Filter Type: Search text
This filter performs a text search across multiple fields.
Usage Example:
query {
shipmentViewConnection(
first: 10
search: "search term"
) {
edges {
node {
shipmentId
}
}
}
}searchCustom
- Label: Not specified
- Type: searchCustomFilter
- Enabled: Yes
Filter Type: Advanced search with result expansion
See the Advanced Search guide for complete documentation on how this filter works.
Collection-Specific Examples:
Example 1: Basic search:
query {
shipmentViewConnection(
first: 10
searchCustom: {
terms: "red widget"
}
) {
edges {
node {
shipmentId
}
}
}
}Example 2: Include additional fields in search:
# Searches defaults PLUS custom fields
query {
shipmentViewConnection(
first: 10
searchCustom: {
terms: "acme"
include: ["customField1", "customField2"]
}
) {
edges {
node {
shipmentId
}
}
}
}Example 3: Expand results to include related records:
# For each matching shipment, also return the facility record
query {
shipmentViewConnection(
first: 10
searchCustom: {
terms: "urgent"
extend: ["facilityUrl"]
}
) {
edges {
node {
shipmentId
}
}
}
}Example 4: Combine include and extend:
# Search in defaults + additional fields, then expand to related records
query {
shipmentViewConnection(
first: 10
searchCustom: {
terms: "acme corp"
include: ["customField1"]
extend: ["relatedRecordUrl"]
}
) {
edges {
node {
shipmentId
}
}
}
}shipDateActual
- Label: Ship date actual
- Type: dateRangeWithFutureInput
- Enabled: Yes
Filter Type: Date range
Input Structure:
{
begin: string // ISO date format: "2024-01-01"
end: string // ISO date format: "2024-12-31"
}Usage Example:
query {
shipmentViewConnection(
first: 10
shipDateActual: {
begin: "2024-01-01"
end: "2024-12-31"
}
) {
edges {
node {
shipmentId
shipDateActual
}
}
}
}shipDateEstimated
- Label: Ship date estimated
- Type: dateRangeWithFutureInput
- Enabled: Yes
Filter Type: Date range
Input Structure:
{
begin: string // ISO date format: "2024-01-01"
end: string // ISO date format: "2024-12-31"
}Usage Example:
query {
shipmentViewConnection(
first: 10
shipDateEstimated: {
begin: "2024-01-01"
end: "2024-12-31"
}
) {
edges {
node {
shipmentId
shipDateEstimated
}
}
}
}shipmentUrl
- Label: Shipment
- Type: List|ShipmentUrlString
- Enabled: Yes
Filter Type: Reference to shipment collection
This filter accepts values from the shipmentViewConnection query. To get available values:
query {
shipmentViewConnection(
first: 100
) {
edges {
node {
shipmentUrl # Use this value in the filter
shipmentId
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
shipmentUrl: ["SHIPMENT_URL_VALUE"]
) {
edges {
node {
shipmentId
shipment {
shipmentId
}
}
}
}
}status
- Label: Status
- Type: List|String
- Enabled: Yes
- Options:
- Canceled (SHIPMENT_CANCELLED)
- Editable (SHIPMENT_INPUT)
- Packed (SHIPMENT_PACKED)
- Received (SHIPMENT_DELIVERED)
- Shipped (SHIPMENT_SHIPPED)
- Unpacked (SHIPMENT_UNPACKED)
Filter Type: Predefined options
Get Current Options:
These options may vary by account configuration. To get the current list:
query {
dataSetMeta(purpose: "uiSalesShipment") {
dataSets(name: "shipment") {
filters {
name
optionList {
value
label
}
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
status: ["SHIPMENT_INPUT", "SHIPMENT_DELIVERED"]
) {
edges {
node {
shipmentId
status
}
}
}
}type
- Label: Type
- Type: List|String
- Enabled: Yes
- Options:
- Purchase (PURCHASE_SHIPMENT)
- Return (SALES_RETURN)
- Sale (SALES_SHIPMENT)
- Transfer (TRANSFER)
Filter Type: Predefined options
Get Current Options:
These options may vary by account configuration. To get the current list:
query {
dataSetMeta(purpose: "uiSalesShipment") {
dataSets(name: "shipment") {
filters {
name
optionList {
value
label
}
}
}
}
}Usage Example:
query {
shipmentViewConnection(
first: 10
type: ["PURCHASE_SHIPMENT", "TRANSFER"]
) {
edges {
node {
shipmentId
type
}
}
}
}