Fulfilment API schemas
Every model in the Fulfilment API, in alphabetical order. 57 in total.
fulfilmentArrivalInstruction
| Field | Type | Description |
|---|---|---|
instruction | string | |
photoUrl | string |
fulfilmentBatchCreateProductsRequest
| Field | Type | Description |
|---|---|---|
products | fulfilmentCreateProductRequest[] |
fulfilmentBatchCreateProductsResponse
| Field | Type | Description |
|---|---|---|
products | fulfilmentProduct[] |
fulfilmentBatchGetProductsResponse
| Field | Type | Description |
|---|---|---|
products | fulfilmentProduct[] |
fulfilmentCreateArrivalInstructionRequest
| Field | Type | Description |
|---|---|---|
instruction | string | |
photoUrl | string |
fulfilmentCreateDailyOperatingHoursRequest
| Field | Type | Description |
|---|---|---|
mondayrequired | fulfilmentCreateDayOperatingHoursRequest | |
tuesdayrequired | fulfilmentCreateDayOperatingHoursRequest | |
wednesdayrequired | fulfilmentCreateDayOperatingHoursRequest | |
thursdayrequired | fulfilmentCreateDayOperatingHoursRequest | |
fridayrequired | fulfilmentCreateDayOperatingHoursRequest | |
saturdayrequired | fulfilmentCreateDayOperatingHoursRequest | |
sundayrequired | fulfilmentCreateDayOperatingHoursRequest |
fulfilmentCreateDayOperatingHoursRequest
| Field | Type | Description |
|---|---|---|
operating | boolean | |
operatingHoursrequired | sharedCreateTimeWindowRequest |
fulfilmentCreateFulfilmentLocationContactRequest
| Field | Type | Description |
|---|---|---|
name | string | |
phoneNumber | string |
fulfilmentCreateFulfilmentLocationRequest
| Field | Type | Description |
|---|---|---|
fulfilmentLocationType | fulfilmentFulfilmentType | |
name | string | |
addressrequired | sharedCreateAddressRequest | |
operatingHours | fulfilmentCreateOperatingHoursRequest | |
merchantLocationId | string | |
deliveryEcommerceEnabled | boolean | |
returnEcommerceEnabled | boolean | |
ephemeral | boolean | |
arrivalInstructions | fulfilmentCreateArrivalInstructionRequest[] | |
contacts | fulfilmentCreateFulfilmentLocationContactRequest[] | |
collectionEnabled | boolean | Set true to make this location eligible for store collection quotes. Leave false (or omit) for delivery-only locations. |
fulfilmentCreateInventoryRecommendationRequest
| Field | Type | Description |
|---|---|---|
inventoryRunId | integer (int32) | |
movementType | fulfilmentInventoryMovementType | |
lineItems | fulfilmentInventoryRecommendationLineItem[] | |
decisionDueAt | string (date-time) | |
sourceLocationId | string | |
sourceLocationName | string | |
destinationLocationId | string | |
destinationLocationName | string | |
coverageBefore | number (double) | |
expectedCoverageAfter | number (double) | |
idempotencyKey | string | Stable key supplied by the inventory run so retries return the same recommendation. |
fulfilmentCreateInventoryTransferLineItemRequest
| Field | Type | Description |
|---|---|---|
quantity | integer (int32) | |
sku | string |
fulfilmentCreateInventoryTransferRequest
| Field | Type | Description |
|---|---|---|
trackingUrl | string | |
sentLineItems | fulfilmentCreateInventoryTransferLineItemRequest[] | |
reference | string | |
status | fulfilmentInventoryTransferStatus | |
type | fulfilmentInventoryTransferType | |
address | string |
fulfilmentCreateOperatingHoursRequest
| Field | Type | Description |
|---|---|---|
useDaily | boolean | |
generic | sharedCreateTimeWindowRequest | |
daily | fulfilmentCreateDailyOperatingHoursRequest |
fulfilmentCreateProductRequest
| Field | Type | Description |
|---|---|---|
name | string | |
weight | number (double) | |
dimensions | sharedDimensions | |
merchantProductId | string | |
merchantInventoryItemId | string | |
ephemeral | boolean | |
sku | string | |
barcode | string | |
price | number (double) | |
enabled | boolean |
fulfilmentDailyOperatingHours
| Field | Type | Description |
|---|---|---|
monday | fulfilmentDayOperatingHours | |
tuesday | fulfilmentDayOperatingHours | |
wednesday | fulfilmentDayOperatingHours | |
thursday | fulfilmentDayOperatingHours | |
friday | fulfilmentDayOperatingHours | |
saturday | fulfilmentDayOperatingHours | |
sunday | fulfilmentDayOperatingHours |
fulfilmentDayOperatingHours
| Field | Type | Description |
|---|---|---|
operating | boolean | |
operatingHours | sharedTimeWindow |
fulfilmentFulfilmentLocation
| Field | Type | Description |
|---|---|---|
fulfilmentLocationId | integer (int32) | |
createdAt | string (date-time) | |
updatedAt | string (date-time) | |
deletedAt | string (date-time) | |
name | string | |
deliveryEcommerceEnabled | boolean | |
returnEcommerceEnabled | boolean | |
collectionEnabled | boolean | Whether this location may be selected for store collection. A collection rate is returned only when this is enabled and the location has current stock for every item in the quoted basket (v1 does not arrange transfers). |
address | sharedAddress | |
externalLocationId | string | The merchant's external location identifier. Use this value as merchantLocationId when booking a collection for a specific location. |
operatingHours | fulfilmentOperatingHours | |
arrivalInstructions | fulfilmentArrivalInstruction[] | |
contacts | fulfilmentFulfilmentLocationContact[] |
fulfilmentFulfilmentLocationContact
| Field | Type | Description |
|---|---|---|
name | string | |
phoneNumber | string |
fulfilmentFulfilmentType
One of
MERCHANT, PROPRIETARYfulfilmentInventoryMovementType
One of
INVENTORY_MOVEMENT_TYPE_MERCHANT_TO_QUIVER, INVENTORY_MOVEMENT_TYPE_QUIVER_TO_MERCHANT, INVENTORY_MOVEMENT_TYPE_WAREHOUSE_TO_STORE, INVENTORY_MOVEMENT_TYPE_STORE_TO_STORE, INVENTORY_MOVEMENT_TYPE_QUIVER_TO_STOREfulfilmentInventoryRecommendation
| Field | Type | Description |
|---|---|---|
inventoryRecommendationId | integer (int32) | |
createdAt | string (date-time) | |
updatedAt | string (date-time) | |
inventoryRunId | integer (int32) | |
status | fulfilmentInventoryRecommendationStatus | |
movementType | fulfilmentInventoryMovementType | |
lineItems | fulfilmentInventoryRecommendationLineItem[] | |
decisionDueAt | string (date-time) | |
version | integer (int32) | |
sourceLocationId | string | |
sourceLocationName | string | |
destinationLocationId | string | |
destinationLocationName | string | |
destinationAddress | string | |
recipientName | string | |
recipientEmail | string | |
recipientPhone | string | |
coverageBefore | number (double) | |
expectedCoverageAfter | number (double) | |
decisionBy | string | |
decidedAt | string (date-time) | |
declineReason | fulfilmentInventoryRecommendationDeclineReason | |
decisionNote | string | |
inventoryTransferId | integer (int32) |
fulfilmentInventoryRecommendationDeclineReason
One of
INVENTORY_RECOMMENDATION_DECLINE_REASON_STOCK_UNAVAILABLE, INVENTORY_RECOMMENDATION_DECLINE_REASON_PACK_SIZE_INCORRECT, INVENTORY_RECOMMENDATION_DECLINE_REASON_PROMOTION_OR_LAUNCH, INVENTORY_RECOMMENDATION_DECLINE_REASON_LOCATION_CONSTRAINT, INVENTORY_RECOMMENDATION_DECLINE_REASON_RECOMMENDATION_INACCURATE, INVENTORY_RECOMMENDATION_DECLINE_REASON_REPLENISHING_SEPARATELY, INVENTORY_RECOMMENDATION_DECLINE_REASON_OTHERfulfilmentInventoryRecommendationLineItem
| Field | Type | Description |
|---|---|---|
sku | string | |
name | string | |
proposedQuantity | integer (int32) | |
selectedQuantity | integer (int32) | |
rawQuantity | integer (int32) | |
packSize | integer (int32) | |
proposedPacks | integer (int32) | |
targetStock | integer (int32) | |
heldStock | integer (int32) | |
confirmedInbound | integer (int32) | |
minimumRetainedStock | integer (int32) | |
explanation | string |
fulfilmentInventoryRecommendationStatus
One of
INVENTORY_RECOMMENDATION_STATUS_DRAFT, INVENTORY_RECOMMENDATION_STATUS_AWAITING_DECISION, INVENTORY_RECOMMENDATION_STATUS_ACCEPTED, INVENTORY_RECOMMENDATION_STATUS_EDITED_AND_ACCEPTED, INVENTORY_RECOMMENDATION_STATUS_DECLINED, INVENTORY_RECOMMENDATION_STATUS_OVERDUE, INVENTORY_RECOMMENDATION_STATUS_IN_EXECUTION, INVENTORY_RECOMMENDATION_STATUS_COMPLETED, INVENTORY_RECOMMENDATION_STATUS_FAILEDfulfilmentInventoryTransfer
| Field | Type | Description |
|---|---|---|
inventoryTransferId | integer (int32) | |
createdAt | string (date-time) | |
updatedAt | string (date-time) | |
status | fulfilmentInventoryTransferStatus | |
fulfilmentLocationId | integer (int32) | |
trackingUrl | string | |
sentLineItems | fulfilmentInventoryTransferLineItem[] | |
receivedLineItems | fulfilmentInventoryTransferLineItem[] | |
reference | string | |
type | fulfilmentInventoryTransferType | |
address | string |
fulfilmentInventoryTransferLineItem
| Field | Type | Description |
|---|---|---|
quantity | integer (int32) | |
sku | string |
fulfilmentInventoryTransferStatus
One of
INVENTORY_TRANSFER_STATUS_PENDING, INVENTORY_TRANSFER_STATUS_COMPLETED, INVENTORY_TRANSFER_STATUS_CANCELLED, INVENTORY_TRANSFER_STATUS_PROCESSING, INVENTORY_TRANSFER_STATUS_DRAFT, INVENTORY_TRANSFER_STATUS_REQUESTEDfulfilmentInventoryTransferType
One of
INVENTORY_TRANSFER_TYPE_INBOUND, INVENTORY_TRANSFER_TYPE_OUTBOUNDfulfilmentOperatingHours
| Field | Type | Description |
|---|---|---|
useDaily | boolean | |
generic | sharedTimeWindow | |
daily | fulfilmentDailyOperatingHours |
fulfilmentProduct
| Field | Type | Description |
|---|---|---|
productId | integer (int32) | |
createdAt | string (date-time) | |
updatedAt | string (date-time) | |
merchantId | integer (int32) | |
name | string | |
enabled | boolean | |
excluded | boolean | |
ephemeral | boolean | |
sku | string | |
barcode | string | |
price | number (double) | |
weight | number (double) | |
dimensions | sharedDimensions | |
merchantProductId | string | |
merchantInventoryItemId | string | |
inventoryLevel | integer (int32) | |
weightSource | string | Where the measurements came from: PLATFORM (the merchant's store), MERCHANT (typed in by hand) or ESTIMATED (worked out by us when neither supplied one). Absent when the measurement has never been set. |
dimensionsSource | string | |
shopifyStatus | string | Shopify's current listing state, for example ACTIVE, DRAFT, ARCHIVED or UNLISTED. It is absent for non-Shopify merchants and products imported before the status field was introduced. |
shopifyBundle | boolean | True when Shopify marks this specific variant as requiring components. This is intentionally separate from a Quiver stock configuration: a native bundle can still need an ops decision before it has stock mapped here. |
shopifyBundleConfigured | boolean | Set for native Shopify bundles after Quiver has resolved every Shopify component to physical stock. False means the recipe is known but needs an inventory mapping; absent means this is not a Shopify bundle. |
shopifyBundleComponents | fulfilmentShopifyBundleComponent[] | The recipe supplied by Shopify for a native bundle, enriched with each component's current Quiver stock mapping. It is informational: Shopify remains the source of truth for the recipe itself. |
ageCategories | fulfilmentProductAgeCategories | The age-restricted goods in this product, for door age checks. Absent means it has not been classified yet. It is classified when it is first ordered, never as a whole catalogue. |
fulfilmentProductAgeCategories
The age-restricted goods in one product. An empty category list means the product is not age-restricted, and it is stored so it is never asked again.
| Field | Type | Description |
|---|---|---|
categories | sharedAgeRestrictedCategory[] | |
unconfirmed | boolean | The model could not tell. Support is asked to confirm the category, and until then the product is treated as over-18s only. categories then holds the categories it might be in. |
source | fulfilmentProductAgeCategoriesSource | |
setBy | string | The person or service that set it, for example an email address or "service:lambdas". |
setAt | string (date-time) |
fulfilmentProductAgeCategoriesSource
Who set a product's age categories. - AGE_CATEGORIES_SET_BY_MODEL: Classified by the product enrichment model. - AGE_CATEGORIES_SET_BY_OPS: Set or corrected by Quiver ops or support. - AGE_CATEGORIES_SET_BY_MERCHANT: Set or corrected by the merchant.
One of
AGE_CATEGORIES_SET_BY_MODEL, AGE_CATEGORIES_SET_BY_OPS, AGE_CATEGORIES_SET_BY_MERCHANTfulfilmentQueryFulfilmentLocationsResponse
| Field | Type | Description |
|---|---|---|
fulfilmentLocations | fulfilmentFulfilmentLocation[] |
fulfilmentQueryInventoryRecommendationsResponse
| Field | Type | Description |
|---|---|---|
inventoryRecommendations | fulfilmentInventoryRecommendation[] | |
count | integer (int32) |
fulfilmentQueryInventoryTransfersResponse
| Field | Type | Description |
|---|---|---|
inventoryTransfers | fulfilmentInventoryTransfer[] |
fulfilmentQueryProductsResponse
| Field | Type | Description |
|---|---|---|
products | fulfilmentProduct[] | |
totalSize | integer (int32) |
fulfilmentShopifyBundleComponent
| Field | Type | Description |
|---|---|---|
productId | integer (int32) | Quiver's product record for the component. It is absent when Shopify's component no longer resolves to a Quiver product. |
merchantProductId | string | |
name | string | |
quantity | integer (int32) | |
inventoryItemConfigs | fulfilmentShopifyBundleComponentInventoryItem[] |
fulfilmentShopifyBundleComponentInventoryItem
| Field | Type | Description |
|---|---|---|
inventoryItemId | integer (int32) | |
multiplier | integer (int32) |
fulfilmentUpdateArrivalInstructionRequest
| Field | Type | Description |
|---|---|---|
instruction | string | |
photo | string | |
photoUrl | string |
fulfilmentUpdateDailyOperatingHoursRequest
| Field | Type | Description |
|---|---|---|
monday | fulfilmentUpdateDayOperatingHoursRequest | |
tuesday | fulfilmentUpdateDayOperatingHoursRequest | |
wednesday | fulfilmentUpdateDayOperatingHoursRequest | |
thursday | fulfilmentUpdateDayOperatingHoursRequest | |
friday | fulfilmentUpdateDayOperatingHoursRequest | |
saturday | fulfilmentUpdateDayOperatingHoursRequest | |
sunday | fulfilmentUpdateDayOperatingHoursRequest |
fulfilmentUpdateDayOperatingHoursRequest
| Field | Type | Description |
|---|---|---|
operating | boolean | |
operatingHours | sharedUpdateTimeWindowRequest |
fulfilmentUpdateFulfilmentLocationContactRequest
| Field | Type | Description |
|---|---|---|
name | string | |
phoneNumber | string |
fulfilmentUpdateInventoryRecommendationLineItemRequest
| Field | Type | Description |
|---|---|---|
sku | string | |
selectedQuantity | integer (int32) |
fulfilmentUpdateOperatingHoursRequest
| Field | Type | Description |
|---|---|---|
useDaily | boolean | |
generic | sharedUpdateTimeWindowRequest | |
daily | fulfilmentUpdateDailyOperatingHoursRequest |
protobufAny
| Field | Type | Description |
|---|---|---|
@type | string |
rpcStatus
| Field | Type | Description |
|---|---|---|
code | integer (int32) | |
message | string | |
details | protobufAny[] |
