# List Order Draft List order drafts (pending checkout) GET /api/v3/orders/draft Use cases: - Review drafts before checkout - Identify stuck/incomplete orders Endpoint: GET /api/v3/orders/draft Version: v3.0.0 ## Query parameters: - `filter.created_at_min` (string) ISO 8601 date-time format (e.g., 2024-01-01T00:00:00Z) - `filter.created_methods` (array) Filter by creation methods Enum: "VENDOR_CREATED_METHOD_SYNC", 2, "VENDOR_CREATED_METHOD_MANUAL", 3, "VENDOR_CREATED_METHOD_API", 4, "VENDOR_CREATED_METHOD_IMPORT", 5, "VENDOR_CREATED_METHOD_LABEL", 6 - `filter.order_ids` (array) Filter by specific order draft IDs - `filter.statuses` (array) Filter by draft statuses Enum: "VENDOR_ORDER_DRAFT_STATUS_DRAFT", 2, "VENDOR_ORDER_DRAFT_STATUS_AWAITING_CHECKOUT", 3, "VENDOR_ORDER_DRAFT_STATUS_CHECKED_OUT", 4, "VENDOR_ORDER_DRAFT_STATUS_DELETED", 5, "VENDOR_ORDER_DRAFT_STATUS_ARCHIVED", 6 - `paging.limit` (integer) - `paging.page` (integer) ## Response 200 fields (application/json): - `status` (string) Response status: "success" or "error" - `message` (string) Human-readable message describing the result - `paging` (object) Pagination metadata Contains: total count, current page, total pages - `paging.total` (integer,string) - `paging.total_page` (integer) - `paging.page` (integer) - `paging.limit` (integer) - `data` (array) List of order drafts matching the filter criteria - `data.order_id` (string) Unique draft order ID - `data.team_id` (string) Team ID (your account ID) - `data.store_id` (string) Store ID this draft belongs to - `data.store_name` (string) Store name for display - `data.reference_id` (string) Your custom reference ID - `data.order_platform` (string,number) Marketplace platform (Shopify, Etsy, WooCommerce, etc.) Enum: "MARKETPLACE_PLATFORM_EBAY", 2, "MARKETPLACE_PLATFORM_AMAZON", 3, "MARKETPLACE_PLATFORM_SHOPIFY", 4, "MARKETPLACE_PLATFORM_WOOCOMMERCE", 5, "MARKETPLACE_PLATFORM_ETSY", 6, "MARKETPLACE_PLATFORM_SHOPBASE", 7, "MARKETPLACE_PLATFORM_GEARMENT", 8, "MARKETPLACE_PLATFORM_ORDERDESK", 9, "MARKETPLACE_PLATFORM_TIKTOKSHOP", 10, "MARKETPLACE_PLATFORM_POSHMARK", 11, "MARKETPLACE_PLATFORM_PRESTASHOP", 12, "MARKETPLACE_PLATFORM_INKGO", 13, "MARKETPLACE_PLATFORM_WISH", 14, "MARKETPLACE_PLATFORM_BIGCOMMERCE", 15, "MARKETPLACE_PLATFORM_CUSTOMILY", 16 - `data.import_id` (string) Import batch ID (if created via import) - `data.pull_id` (string) Store sync pull ID (if created via store sync) - `data.request_id` (string) Request ID for tracking purposes - `data.created_method` (string,number) How this draft was created (manual, API, store sync, import, etc.) Enum: "VENDOR_CREATED_METHOD_SYNC", 2, "VENDOR_CREATED_METHOD_MANUAL", 3, "VENDOR_CREATED_METHOD_API", 4, "VENDOR_CREATED_METHOD_IMPORT", 5, "VENDOR_CREATED_METHOD_LABEL", 6 - `data.fulfillment_vendor` (string,number) Fulfillment vendor (Gearment, etc.) Enum: "VENDOR_FULFILLMENT_VENDOR_GEARMENT", 2, "VENDOR_FULFILLMENT_VENDOR_AMAZON", 3 - `data.priority` (string,number) Fulfillment priority (standard, rush, etc.) Enum: "VENDOR_FULFILLMENT_PRIORITY_NORMAL", 2, "VENDOR_FULFILLMENT_PRIORITY_RUSH", 3 - `data.fulfillment_option` (object) Fulfillment configuration options - `data.fulfillment_option.purchase_tracking_config` (string,number) Tracking purchase timing configuration Enum: "VENDOR_PURCHASE_TRACKING_TIME_DEFAULT", 1, "VENDOR_PURCHASE_TRACKING_TIME_IMMEDIATELY_AFTER_THE_PAYMENT_TIME", 2, "VENDOR_PURCHASE_TRACKING_TIME_ONCE_ALL_ITEMS_ARE_PRINTED", 3, "VENDOR_PURCHASE_TRACKING_TIME_WITHIN_A_SPECIFIC_NUMBER_OF_DAY", 4 - `data.shipping_option` (object) Shipping method and carrier details - `data.shipping_option.method` (string,number) Shipping method (required) Enum: "METHOD_STANDARD", 2, "METHOD_GROUND", 3, "METHOD_FAST_SHIP", 4, "METHOD_STAMP", 5 - `data.billing_option` (object) Billing and tax options (IOSS, etc.) - `data.billing_option.ioss_number` (string) IOSS (Import One-Stop Shop) number for EU tax compliance (optional) Required for shipments to EU countries to avoid customs delays - `data.billing_option.ioss_value` (object) Total value for IOSS declaration (optional) - `data.billing_option.ioss_value.currency_code` (string) The three-letter currency code defined in ISO 4217. - `data.billing_option.ioss_value.units` (integer,string) The whole units of the amount. For example if currencyCode is "USD", then 1 unit is one US dollar. - `data.billing_option.ioss_value.nanos` (integer) Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If units is positive, nanos must be positive or zero. If units is zero, nanos can be positive, zero, or negative. If units is negative, nanos must be negative or zero. For example $-1.75 is represented as units=-1 and nanos=-750,000,000. - `data.billing_option.tax_number` (string) Tax identification number (optional) Used for VAT/GST compliance in various countries - `data.billing_option.tax_value` (object) Tax value/amount (optional) - `data.order_date` (string) Original order date from marketplace - `data.status` (string,number) Current draft status Enum: "VENDOR_ORDER_DRAFT_STATUS_DRAFT", 2, "VENDOR_ORDER_DRAFT_STATUS_AWAITING_CHECKOUT", 3, "VENDOR_ORDER_DRAFT_STATUS_CHECKED_OUT", 4, "VENDOR_ORDER_DRAFT_STATUS_DELETED", 5, "VENDOR_ORDER_DRAFT_STATUS_ARCHIVED", 6 - `data.shipping_labels` (array) Shipping label URLs (if pre-purchased) - `data.is_label_attached` (boolean) Whether shipping label is attached - `data.shipping_verification_status` (string,number) Shipping address verification status Enum: "VENDOR_SHIPPING_VERIFICATION_STATUS_PENDING", 2, "VENDOR_SHIPPING_VERIFICATION_STATUS_CONSTRAINT_INVALID", 3, "VENDOR_SHIPPING_VERIFICATION_STATUS_CONSTRAINT_VALID", 4, "VENDOR_SHIPPING_VERIFICATION_STATUS_ADDRESS_UNVERIFIED", 5, "VENDOR_SHIPPING_VERIFICATION_STATUS_ADDRESS_VERIFIED", 6 - `data.product_matching_status` (string,number) Product matching status (matched/unmatched to catalog) Enum: "VENDOR_PRODUCT_MATCHING_STATUS_MATCHED", 2, "VENDOR_PRODUCT_MATCHING_STATUS_UNMATCHED", 3 - `data.is_shipping_verification_bypassed` (boolean) Whether shipping verification was manually bypassed - `data.is_approved` (boolean) Whether this draft has been approved for checkout - `data.approved_at` (string) When this draft was approved - `data.origin_draft_id` (string) Original draft ID (if this is a revised version) - `data.origin_order_id` (string) Order ID this draft was converted to (if checked out) - `data.addresses` (array) Shipping and billing addresses - `data.addresses.first_name` (string) Recipient's first name (required) - `data.addresses.last_name` (string) Recipient's last name (optional) - `data.addresses.company` (string) Company name (optional) - `data.addresses.contact_pronoun` (string) Contact pronoun (optional) - `data.addresses.street_1` (string) Street address line 1 (required) - `data.addresses.street_2` (string) Street address line 2 (optional, for apartment/suite) - `data.addresses.state_code` (string) State/province code (ISO 3166-2) - `data.addresses.state_name` (string) State/province full name (optional) - `data.addresses.city` (string) City name (required) - `data.addresses.zip_code` (string) Postal/ZIP code (required) - `data.addresses.country_code` (string) Country code (ISO 3166-1 alpha-2, required) - `data.addresses.country_name` (string) Country full name (optional) - `data.addresses.phone_no` (string) Phone number (optional) - `data.addresses.email` (string) Email address (optional) - `data.addresses.type` (string,number) Address type Enum: "TYPE_SHIP_FROM", 2, "TYPE_SHIP_TO", 3, "TYPE_BILL_TO", 4, "TYPE_RETURN_TO", 5 - `data.line_items` (array) All line items in this draft - `data.line_items.order_id` (string) Order ID this line item belongs to - `data.line_items.quantity` (integer) Quantity ordered (minimum 1) - `data.line_items.printing_options` (array) Printing options for this line item (design URLs and locations) - `data.line_items.printing_options.print_location_code` (string,number) Print location on the product (required) Enum: "PRINT_LOCATION_CODE_WHOLE", 1, "PRINT_LOCATION_CODE_FRONT", 2, "PRINT_LOCATION_CODE_BACK", 3, "PRINT_LOCATION_CODE_LEFT_SLEEVE", 4, "PRINT_LOCATION_CODE_RIGHT_SLEEVE", 5, "PRINT_LOCATION_CODE_POCKET", 6 - `data.line_items.printing_options.design_url` (string) Design file URL (PNG, JPEG, or PDF format) - `data.line_items.origin_options` (array) Original product options from marketplace (e.g., color, size selections) - `data.line_items.origin_options.name` (string) Option display name (e.g., "Color", "Size") - `data.line_items.origin_options.key` (string) Option key/identifier - `data.line_items.origin_options.value` (string) Option value (e.g., "Black", "Medium") - `data.line_items.fulfillment_option` (object) Fulfillment options (barcode, etc.) - `data.line_items.fulfillment_option.barcode_url` (string) Barcode URL for inventory tracking (optional) - `data.line_items.variant` (object) Product variant details - `data.line_items.variant.variant_id` (string) Variant ID (string format) - `data.line_items.variant.legacy_id` (integer) Legacy variant ID (integer format, for backward compatibility) - `data.line_items.variant.sku` (string) SKU (Stock Keeping Unit) - `data.line_items.variant.name` (string) Variant name (e.g., "Black / Medium") - `data.line_items.variant.description` (string) Variant description - `data.line_items.variant.option_1` (string) First option value (e.g., "Black" for color) - `data.line_items.variant.option_2` (string) Second option value (e.g., "Medium" for size) - `data.line_items.variant.option_3` (string) Third option value (optional) - `data.line_items.variant.option_1_name` (string) First option name (e.g., "Color") - `data.line_items.variant.option_2_name` (string) Second option name (e.g., "Size") - `data.line_items.variant.price` (object) Variant price - `data.line_items.variant.price_gm` (object) Gearment price (internal) - `data.line_items.variant.images` (array) Variant images - `data.line_items.variant.images.url` (string) Image URL - `data.line_items.variant.images.tag` (string) Image tag/category (e.g., "front", "back", "detail") - `data.line_items.variant.stock_label` (string,number) Stock availability status Enum: "VENDOR_STOCK_LABEL_IN_STOCK", 1, "VENDOR_STOCK_LABEL_OUT_OF_STOCK", 2, "VENDOR_STOCK_LABEL_AT_RISK", 3, "VENDOR_STOCK_LABEL_DISCONTINUED", 4 - `data.line_items.product` (object) Product details - `data.line_items.product.product_id` (string) Product ID - `data.line_items.product.name` (string) Product name (e.g., "Unisex T-Shirt") - `data.line_items.product.description` (string) Product description - `data.line_items.product.images` (array) Product images - `data.line_items.product.print_locations` (array) Available print locations for this product - `data.line_items.product.print_locations.code` (string) Print location code (e.g., "front", "back") - `data.line_items.product.print_locations.name` (string) Print location display name - `data.line_items.product.print_locations.location_id` (integer) Internal location ID - `data.line_items.product.sku` (string) Product SKU - `data.line_items.id` (integer,string) Internal line item ID - `data.line_items.line_total` (object) Total amount for this line (subtotal + tax + fees - discount) - `data.line_items.line_item_id` (string) Line item ID (string format) - `data.gift_messages` (array) Gift messages for this order - `data.gift_messages.order_id` (string) Order ID this gift message belongs to - `data.gift_messages.gift_message_id` (string) Gift message ID (unique identifier) - `data.gift_messages.type` (string,number) Gift message type (custom or uploaded image) Enum: "TYPE_CUSTOM_IMAGE", 1, "TYPE_UPLOAD_IMAGE", 2 - `data.gift_messages.content` (string) Gift message text content (max 1000 characters) - `data.gift_messages.avatar_url` (string) Avatar/image URL for the gift message card - `data.gift_messages.gift_message_name` (string) Gift message template/design name - `data.legacy_external_id` (string) Legacy external ID (for OMS backward compatibility) for oms order's external id - `data.order_total` (object) Final total amount (subtotal + fees + tax - discount) - `data.order_subtotal` (object) Subtotal (sum of all line items before fees/tax/discount) - `data.order_shipping_fee` (object) Shipping cost - `data.order_handle_fee` (object) Order handling fee - `data.order_tax` (object) Total tax amount - `data.order_fee` (object) Additional processing fees - `data.order_discount` (object) Total discount applied ## Response 400 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue ## Response 401 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue ## Response 403 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue ## Response 404 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue ## Response 500 fields (application/json): - `code` (string, required) Machine-readable error code Example: "INVALID_ARGUMENT" - `message` (string, required) Human-readable error message Example: "The request parameters are invalid" - `details` (array) Additional error details - `details.field` (string) Field that caused the error - `details.issue` (string) Description of the issue