Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: Shipmonk Webhooks API
version: v1.024
description: 'ShipMonk supports webhooks to help you stay updated in real time as key events happen in our system. Currently, we provide webhooks for the following areas:
- Orders
- Returns
- Receivings
## Webhooks Setup
You have full flexibility in configuring which webhooks to subscribe to. You can:
- Use a single URL to receive all events, or
- Define separate endpoints for individual webhook types.
Webhook setup can be done by your ShipMonk support team.
## Store filter
By default, a webhook subscription delivers events for all stores in your account. If you operate multiple stores, a subscription can be restricted to one or more specific stores (store filter), so you only receive events for those stores.
## Security
All webhooks support HTTP Basic Authentication. If you provide a username and password, ShipMonk will include these credentials in the webhook request. This allows you to restrict access and ensure only ShipMonk can call your endpoints.
## Data Integrity
Each webhook request sent by ShipMonk includes an `X-Sm-Signature` header. This header allows you to verify that the request genuinely originated from ShipMonk and was not tampered with.
To enable this verification, you must provide ShipMonk with a secret key (a random string of your choice). For every webhook, ShipMonk uses this secret key to generate a HMAC using the SHA-512 algorithm (HMAC-SHA512), applied to the raw payload. The resulting signature is included in the `X-Sm-Signature` header.
To validate the authenticity of a webhook:
- Retrieve the raw payload from the HTTP POST request.
- Using the same secret key and the HMAC-SHA512 algorithm, generate a signature from the payload.
- Compare your generated signature to the value in the X-Sm-Signature header.
- If they match, you can safely trust the request.
This mechanism ensures both the integrity and authenticity of the webhook payload.
## Accepting the webhook
Webhook requests are sent as HTTP POST requests. To acknowledge successful processing, your endpoint must respond with an HTTP status code in the 2xx range.
- If a 2xx response is returned, the webhook is considered successfully delivered.
- For any other response, ShipMonk will retry the webhook delivery up to 8 times using an exponential backoff schedule. The delay starts at 30 seconds and doubles after each attempt — 30s, 1m, 2m, 4m, 8m, 16m, 32m, 60m (capped at 60 minutes) — spanning roughly 2 hours before delivery is abandoned.'
servers:
- url: https://api.shipmonk.com
description: Once you finish testing on Sandbox, our support team generates you Production API keys and store_id for production. Just write us at api@shipmonk.com and we will handle it.
- url: https://sandbox.shipmonk.dev
description: 'Sandbox environment is used for preproduction testing. It allows you to play around without worries of corrupting the data. We highly recommend using the Sandbox environment and run tests before going to Production. To get access to the Sandbox, please contact the ShipMonk support team. Note: Sandbox access can only be requested by customers with signed contracts.'
tags:
- name: Webhooks
description: 'ShipMonk supports webhooks to help you stay updated in real time as key events happen in our system. Currently, we provide webhooks for the following areas:
- Orders
- Returns
- Receivings
## Webhooks Setup
You have full flexibility in configuring which webhooks to subscribe to. You can:
- Use a single URL to receive all events, or
- Define separate endpoints for individual webhook types.
Webhook setup can be done by your ShipMonk support team.
## Store filter
By default, a webhook subscription delivers events for all stores in your account. If you operate multiple stores, a subscription can be restricted to one or more specific stores (store filter), so you only receive events for those stores.
## Security
All webhooks support HTTP Basic Authentication. If you provide a username and password, ShipMonk will include these credentials in the webhook request. This allows you to restrict access and ensure only ShipMonk can call your endpoints.
## Data Integrity
Each webhook request sent by ShipMonk includes an `X-Sm-Signature` header. This header allows you to verify that the request genuinely originated from ShipMonk and was not tampered with.
To enable this verification, you must provide ShipMonk with a secret key (a random string of your choice). For every webhook, ShipMonk uses this secret key to generate a HMAC using the SHA-512 algorithm (HMAC-SHA512), applied to the raw payload. The resulting signature is included in the `X-Sm-Signature` header.
To validate the authenticity of a webhook:
- Retrieve the raw payload from the HTTP POST request.
- Using the same secret key and the HMAC-SHA512 algorithm, generate a signature from the payload.
- Compare your generated signature to the value in the X-Sm-Signature header.
- If they match, you can safely trust the request.
This mechanism ensures both the integrity and authenticity of the webhook payload.
## Accepting the webhook
Webhook requests are sent as HTTP POST requests. To acknowledge successful processing, your endpoint must respond with an HTTP status code in the 2xx range.
- If a 2xx response is returned, the webhook is considered successfully delivered.
- For any other response, ShipMonk will retry the webhook delivery up to 8 times using an exponential backoff schedule. The delay starts at 30 seconds and doubles after each attempt — 30s, 1m, 2m, 4m, 8m, 16m, 32m, 60m (capped at 60 minutes) — spanning roughly 2 hours before delivery is abandoned.'
paths: {}
webhooks:
orderShipmentNotification:
post:
operationId: webhook-order-shipment-notification
summary: Shipment Notification
tags:
- Webhooks
description: 'Once the order is fulfilled, ShipMonk can notify the 3rd party software of such event via webhook or Marketplace via direct integration. The payload consists of tracking and packing information.
Triggers for sending notification are:
- once regular order is packed
- batch is completed
- wholesale order is picked up
Notification is sent with delay which can be set per each store in ShipMonk OMS.
Your endpoint URL can be set up in the store detail in ShipMonk OMS. Please note that Basic Auth (username and password) is supported only.
We expect the status code 200 in response. When we receive another status call, we will be re-trying it for the next 3 days.
To test it, place the order and submit it for fulfilment. You have to make sure the inventory is available and order is all right first (it has set the shipping service and the address is valid). In production the order is shipped by our warehouse employees, while for testing you will have to call our `complete-order` endpoint.
Edge cases:
- If the order is big and cannot fit into a single packaging, we will send out multiple packages. Each package has its own tracking number inside of packages array.
- If the inventory of any SKU is not available, it is possible to manually split the order in the ShipMonk app and then we send Shipment Notification per each shipment.
- If the order is split and send out within multiple days, we send the Shipment Notification just once (when the first package is sent out)
`fulfilled_quantity` vs `ordered_quantity`: The value of these two fields might differ in case of partially fulfilled Orders. If a Product consists of `1x Item A` and `1x Item B`, when the customer orders 2 Products and the Shipment contains 1 piece of Item A and 2 pieces of Item B, then `ordered_quantity = 2` but `fulfilled_quantity = 1`.
'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ShipMonk_OMS_Notification_ApiResource_ShipmentNotificationOutput'
responses:
'200':
description: Return a 2xx status to indicate that the data was received successfully
default:
description: For a 4xx status, ShipMonk will retry the webhook delivery for the next 3 days.
orderStatusChange:
post:
operationId: webhook-order-status-change
summary: Order status change
tags:
- Webhooks
description: 'As an order progresses from initial import to full fulfillment, it transitions through multiple statuses. ShipMonk can notify external systems of these status changes via webhooks.
## Supported Order Webhooks
Currently ShipMonk supports these order-related webhooks.
- Order being back-ordered (`processing_status`: `back-order`)
- Order is unable to submit (`processing_status`: `unable_to_submit`)
- Order is queued to submit (`processing_status`: `queued_to_submit`)
- Order is subscription - Order (`processing_status`: `subscription`)
- Order is package-forwarding - Order (`processing_status`: `package_forwarding`)
- Order is put to on hold (`processing_status`: `on_hold`)
- Order is submitted (`processing_status`: `submitted`)
- Order is being picked (`processing_status`: `pick_in_progress`)
- Order is being packed (`processing_status`: `pack_in_progress`)
- Order is packed (`processing_status`: `packed`)
- Order is awaiting pickup (`processing_status`: `awaiting_pick_up`)
- Order is awaiting carrier processing (`processing_status`: `awaiting_carrier_processing`)
- Order is en route (`processing_status`: `en_route`)
- Order is delivered (`processing_status`: `delivered`)
- Order is undeliverable (`processing_status`: `undeliverable`)
- Order is shipped, but it’s untrackable (`processing_status`: `shipped_untrackable`)
- Order cancellation requested (`processing_status`: `cancellation_requested`)
- Order is cancelled (`processing_status`: `cancelled`)
All order-related webhooks are closely tied to the order’s processing-status. Each webhook is triggered by a change in the processing-status, reflecting key moments in the order lifecycle.
## Payload Structure (JSON Schema)
All order-related webhooks share the same JSON schema, which matches the response of our GET endpoint for retrieving a single order.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiOrderDetailOutput'
responses:
'200':
description: Return a 2xx status to indicate that the data was received successfully
default:
description: For a 4xx status, ShipMonk will retry the webhook delivery up to 100 times, with a 5-minute delay between attempts.
returnStatusChange:
post:
operationId: webhook-return-status-change
summary: Return status change
tags:
- Webhooks
description: '## Supported Return Webhooks
All return-related webhooks are closely tied to the status of the return. Each webhook is triggered by a specific status transition, marking important stages in the return process.
- Return created (`status`: `status_created`)
- Return in progress (`status`: `in_progress`)
- Return en route (`status`: `en_route`)
- Return returned (`status`: `returned`)
## Payload Structure (JSON Schema)
The payload of each return-related webhook matches the structure of a single return object as returned by the `GET /v1/integrations/returns-list` endpoint. While the `GET /v1/integrations/returns-list` endpoint responds with an array of return objects (`returns-list` field), each webhook delivers the full data of one return in the same format. This allows for easy reuse of the return model across both API responses and webhook events.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_ReturnOutput'
responses:
'200':
description: Return a 2xx status to indicate that the data was received successfully
default:
description: For a 4xx status, ShipMonk will retry the webhook delivery up to 100 times, with a 5-minute delay between attempts.
receivingStatusChange:
post:
operationId: webhook-receiving-status-change
summary: Receiving status change
tags:
- Webhooks
description: '## Supported Receiving Webhooks
All receiving-related webhooks are closely tied to the status of the receiving. Each webhook is triggered when the receiving transitions to a specific `status`, reflecting key milestones in the receiving process.
- Receiving awaiting (`status`: `awaiting`)
- Receiving in progress (`status`: `in_progress`)
- Receiving arrived (`status`: `arrived`)
- Receiving received (`status`: `received`)'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ShipMonk_OMS_Receiving_ApiResource_PublicApiReceivingOutput'
responses:
'200':
description: Return a 2xx status to indicate that the data was received successfully
default:
description: For a 4xx status, ShipMonk will retry the webhook delivery up to 100 times, with a 5-minute delay between attempts.
components:
schemas:
Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiPackageCartonLabelOutput:
type: object
properties:
type:
description: Kind of label printed on the carton. Values include order- and carton-level pack lists, retailer packing slips, carton/pallet labels, GS1 labels, and customized or special-instruction labels.
$ref: '#/components/schemas/ShipMonk_OMS_RequiredLabels_Enum_PackingLabelType'
identifier:
description: Identifier printed on the label (e.g. SSCC); null if the label type has no identifier.
type:
- string
- 'null'
required:
- type
- identifier
title: Package Carton Label Output
Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiOrderPartOutput:
type: object
properties:
main_order:
description: Reference to the original (main) order from which this order was split.
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiOrderPartMainOrderOutput'
required:
- main_order
title: Order Part Output
ShipMonk_OMS_Notification_ApiResource_ShipmentNotificationProductLotOutput:
type: object
properties:
sku:
description: SKU of the product allocated to fulfill the line.
type: string
quantity:
description: Allocated quantity of this product. Deprecated alias of ordered_quantity, kept for backwards compatibility.
type: integer
ordered_quantity:
description: Quantity of this product allocated to the line.
type: integer
lot:
description: Lot the product was picked from; null when no lot control applies.
anyOf:
- $ref: '#/components/schemas/ShipMonk_OMS_Notification_ApiResource_ShipmentNotificationLotOutput'
- type: 'null'
other_potential_lots:
description: Additional lots that could fulfill this product when the primary lot is insufficient.
type: array
items:
$ref: '#/components/schemas/ShipMonk_OMS_Notification_ApiResource_ShipmentNotificationLotOutput'
required:
- sku
- quantity
- ordered_quantity
- lot
- other_potential_lots
title: Shipment Notification Product Lot Output
ShipMonk_OMS_Receiving_ApiResource_PublicApiPalletOutput:
type: object
properties:
pallet_key:
description: Client-supplied unique key identifying this pallet within the receiving; referenced by cartons[].pallet_key and receiving_lines[].loose_units_pallet_key.
type: string
identifiers:
description: Packaging identifiers attached to this pallet (e.g. SSCC barcodes).
type: array
items:
$ref: '#/components/schemas/ShipMonk_OMS_Receiving_ApiResource_PublicApiLpnOutput'
required:
- pallet_key
- identifiers
title: Pallet Output
Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiOrderPackageDataOutput:
type: object
properties:
number:
description: Sequential index (1-based) of this package within the order; null if not assigned.
type:
- integer
- 'null'
tracking_number:
description: Carrier tracking number for this package; null if not yet generated or untrackable.
type:
- string
- 'null'
tracking_url:
description: Carrier URL for tracking this package; null if not yet available.
type:
- string
- 'null'
weight_lb:
description: Total weight of the package (the unit, despite the field name, is provided in the value object); null if not measured.
anyOf:
- $ref: '#/components/schemas/ShipMonk_Measurement_Output_WeightOutput'
- type: 'null'
pallet_weight_lb:
description: Weight of the pallet on which this package is shipped (unit given inside the value object); null if not palletized or not measured.
anyOf:
- $ref: '#/components/schemas/ShipMonk_Measurement_Output_WeightOutput'
- type: 'null'
pallet_number:
description: Index (1-based) of the pallet that contains this package; null if not palletized.
type:
- integer
- 'null'
box_number:
description: Index (1-based) of the box within its pallet; null if not palletized.
type:
- integer
- 'null'
carton_labels:
description: Carton-level labels (e.g. packing slip, pallet label) applied to this package.
type: array
items:
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiPackageCartonLabelOutput'
packed_products:
description: Products contained in this package, aggregated by SKU with packed quantities and lot details.
type: array
items:
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiPackedProductOutput'
packing_group:
description: Packing group this package belongs to, used to split an order across multiple shipments; null if not grouped.
anyOf:
- $ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PackingGroupOutput'
- type: 'null'
packed_items:
description: Order line items packed in this package, with per-line quantities.
type: array
items:
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_Output_Order_OrderPackedItemOutput'
required:
- number
- tracking_number
- tracking_url
- weight_lb
- pallet_weight_lb
- pallet_number
- box_number
- carton_labels
- packed_products
- packing_group
- packed_items
title: Order Package Data Output
ShipMonk_OMS_Receiving_ApiResource_PublicApiLpnOutput:
type: object
properties:
type:
description: 'Type of identifier. Allowed values: SSCC (Serial Shipping Container Code, a GS1 18-digit logistics barcode).'
$ref: '#/components/schemas/ShipMonk_OMS_Receiving_Enum_LpnType'
value:
description: The identifier value, formatted according to the rules of the chosen type (e.g. 18 digits for SSCC).
type: string
required:
- type
- value
title: Lpn Output
ShipMonk_OMS_Notification_ApiResource_PackingLabelOutput:
type: object
properties:
type:
description: 'Type of the label. One of: shipmonk_pack_list_order_level, shipmonk_pack_list_carton_level, retailer_packing_slip_order_level, shipmonk_carton_label, shipmonk_pallet_label, gs1_label, shipmonk_gs1, customized_carton_labels, custom_pack_list_order_level, special_instructions.'
type: string
identifier:
description: Identifier (e.g. barcode value) printed on the label; null when none.
type:
- string
- 'null'
required:
- type
- identifier
title: Packing Label Output
ShipMonk_OMS_Receiving_Enum_PublicApiReceivingStatus:
type:
- string
enum:
- awaiting
- arrived
- in_progress
- received
title: Receiving Status
ShipMonk_OMS_Notification_ApiResource_SerialNumberItemOutput:
type: object
properties:
sku:
description: SKU of the product the serial number belongs to.
type: string
serial_number:
description: Serial number scanned for the product unit.
type: string
required:
- sku
- serial_number
title: Serial Number Item Output
ShipMonk_OMS_Notification_ApiResource_PackedOrderItemOutput:
type: object
properties:
sku:
description: Marketplace SKU of the packed order item.
type: string
line_key:
description: Client-supplied key of the order line this item belongs to; null when the line has no key.
type:
- string
- 'null'
quantity:
description: Quantity of this item packed into the package.
type: integer
required:
- sku
- line_key
- quantity
title: Packed Order Item Output
Fulfillment_IntegrationsBundle_Crate_ReturnItemDetailsType:
type:
- string
enum:
- receive
- optoro_inventory
title: Return Item Details Type
ShipMonk_OMS_Receiving_Enum_LpnType:
type:
- string
enum:
- SSCC
title: Lpn Type
ShipMonk_Measurement_ValueObject_WeightUnit:
type:
- string
enum:
- kg
- g
- lb
- oz
title: Weight Unit
Fulfillment_IntegrationsBundle_Crate_NotifyShipmentPackingConfigurationPackingGroupOutput:
type: object
properties:
key:
type: string
name:
type:
- string
- 'null'
required:
- key
- name
title: Notify Shipment Packing Configuration Packing Group Output
Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiOrderReferenceOutput:
type: object
properties:
type:
description: 'Type of order reference. One of: order_number, original_imported_order_number, customer_order_number, po_number, reference_number, b2b_routing_reference, release_number, job_number, depositor_order_number.'
$ref: '#/components/schemas/Fulfillment_OrderBundle_Enum_OrderReferenceType'
value:
description: The reference identifier value, interpreted according to type.
type: string
required:
- type
- value
title: Order Reference Output
Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PackingGroupOutput:
type: object
properties:
key:
description: Stable identifier of the packing group, unique within the order.
type: string
name:
description: Human-readable name of the packing group; null if unnamed.
type:
- string
- 'null'
required:
- key
- name
title: Packing Group Output
ShipMonk_OMS_Notification_ApiResource_OrderPartsOutput:
type: object
properties:
main_order:
description: Main order together with the partial orders it was split into.
$ref: '#/components/schemas/ShipMonk_OMS_Notification_ApiResource_MainOrderOutput'
required:
- main_order
title: Order Parts Output
Fulfillment_PublicApiBundle_ApiResource_Carrier_PublicApiCarrierDetailOutput:
type: object
properties:
id:
type: integer
name:
type: string
required:
- id
- name
title: Carrier Detail Output
ShipMonk_OMS_Notification_ApiResource_ShipmentNotificationExtraDataOutput:
type: object
properties:
label:
description: Type of the extra data entry.
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_Enum_ShipmentNotificationExtraDataType'
value:
description: Value associated with the label.
type: string
required:
- label
- value
title: Shipment Notification Extra Data Output
Fulfillment_PublicApiBundle_ApiResource_Order_PublicApiOrderTaxIdOutput:
type: object
properties:
tax_id_type:
description: 'Type of tax identifier. One of: VAT, IOSS, TIN, EIN, EORI, ARN, RFC, CPF, CNPJ, PCCC.'
$ref: '#/components/schemas/Fulfillment_UserBundle_Enum_TaxIdType'
value:
description: Tax identification number, formatted according to its type and issuing country.
type: string
issuing_country:
description: Country that issued the tax identification number.
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiCountryDetailOutput'
required:
- tax_id_type
- value
- issuing_country
title: Order Tax Id Output
Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiOrderPartMainOrderOutput:
type: object
properties:
order_number:
description: Order number of the main order this part was split from.
type: string
parts:
description: List of all part orders created from splitting the main order.
type: array
items:
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiOrderPartItemOutput'
required:
- order_number
- parts
title: Order Part Main Order Output
Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiOrderDetailCustomDataOutput:
type: object
properties:
name:
description: Key name of the custom data entry.
type: string
value:
description: Value of the custom data entry.
type: string
required:
- name
- value
title: Order Detail Custom Data Output
Fulfillment_IntegrationsBundle_Enum_ShipmentNotificationExtraDataType:
type:
- string
enum:
- carrierShippingMethod
title: Shipment Notification Extra Data Type
Fulfillment_IntegrationsBundle_Crate_PublicApiReturnItemOutput:
type: object
properties:
product:
description: The product identified by this receiving item.
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_Crate_ReturnOrReceivingItemProductPublicApiOutput'
expected_quantity:
description: Total number of units of this product expected to be received.
type: integer
received_quantity:
description: Total number of units of this product received so far across all batches.
type: integer
receiving_details:
description: Per-unit receiving records for this return item, capturing lot, quantities, timestamps, and final disposition.
type: array
items:
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_Crate_ReturnItemDetailsPublicApiOutput'
desired_action:
description: 'Requested handling for the returned item: received_back_into_inventory or damaged_not_resellable.'
$ref: '#/components/schemas/ShipMonk_Warehouse_Returns_Enum_ReturnItemStatus'
required:
- product
- expected_quantity
- received_quantity
- receiving_details
- desired_action
title: Return Item Output
ShipMonk_Warehouse_Returns_Enum_ReturnItemFinalDisposition:
type:
- string
enum:
- reworked
- returned_to_inventory
- return_to_merchant
- dispose
- donate
- other
title: Return Item Final Disposition
ShipMonk_OMS_Notification_ApiResource_SerialNumbersOutput:
type: object
properties:
line_key:
description: Client-supplied key of the order line these serial numbers belong to; null when the line has no key.
type:
- string
- 'null'
serial_numbers:
description: Serial numbers scanned for the products on this line.
type: array
items:
$ref: '#/components/schemas/ShipMonk_OMS_Notification_ApiResource_SerialNumberItemOutput'
required:
- line_key
- serial_numbers
title: Serial Numbers Output
Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiSerialNumberOutput:
type: object
properties:
line_key:
description: Key of the order line item these serial numbers belong to; null when serial numbers cannot be matched to a specific line.
type:
- string
- 'null'
serial_numbers:
description: Serial numbers recorded for units fulfilled on this order line.
type: array
items:
$ref: '#/components/schemas/Fulfillment_IntegrationsBundle_ApiResource_Output_Order_PublicApiSerialNumberItemOutput'
required:
- line_key
- serial_numbers
title: Serial Number Output
Fulfillment_OrderBundle_Enum_OrderListStatus:
type:
- string
enum:
- backorder
- unable_to_submit
- queued_to_submit
- subscription
- package_forwarding
- awaiting_label_request_from_merchant_facility
- on_hold
- submitted
- pick_in_progress
- pack_in_progress
- packed
- awaiting_pick_up
- awaiting_carrier_processing
- en_route
- delivered
- undeliverable
- shipped_untrackable
- fulfilled_by_3rd
- cancellation_requested
- cancelled
- updating
title: Order List Status
ShipMonk_OMS_Notification_ApiResource_ShipToAddressOutput:
type: object
properties:
name:
description: Full name of the recipient; null when not provided.
type:
- string
- 'null'
company:
description: Company name of the recipient; null when not provided.
type:
- string
- 'null'
street1:
description: First line of the recipient street address; null when not provided.
type:
- string
- 'null'
street2:
description: Second line of the recipient street address; null when not provided.
type:
- string
- 'null'
state:
description: State, province or region of the recipient; null when not provided.
type:
- string
- 'null'
city:
description: City of the recipient; null when not provided.
type:
- string
- 'null'
zip:
description: Postal or ZIP code of the recipient; null when not provided.
type:
- string
- 'null'
country_code:
description: ISO 3166-1 alpha-2 country code of the recipient; null when not provided.
type:
- string
- 'null'
phone:
description: Phone number of the recipient; null when not provided.
type:
- string
- 'null'
email:
description: Email address of the recipient; null when not provided.
type:
- string
- 'null'
residential:
description: Wheth
# --- truncated at 32 KB (107 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/shipmonk/refs/heads/main/openapi/shipmonk-webhooks-api-openapi.yml