For the complete documentation index, see llms.txt. This page is also available as Markdown.

APIs for Quick Order Form

Create, update, list, and delete Quick Order Forms, Quick Buy Collections, and Quick Buy Variant tables using the Public API.

This page covers the Public API for the Quick Order Form feature family. One endpoint handles all three related record types, distinguished by a type field:

  • quick_order_page — a standalone Quick Order Form page.

  • quick_buy_collection — the Quick Buy feature on collection/product-card pages.

  • quick_buy_variant — the Variant Table on a product page.

All 4 operations share the same base URL, headers, and authentication described in Public APIs.

Create a record

Endpoint

POST https://wholesale.samita.io/api/v1/quick-order-forms

Request Headers

Header
Description
Required

X-SAMITA-API-KEY

API key provided in the Wholesale app

Yes

X-SAMITA-SHOP-URL

Shopify shop domain in format xxx.myshopify.com

Yes

CONTENT-TYPE

Must be application/json

Yes

This API requires the Create permission on the API key, for the specific type you're creating.

Common fields (all types)

Field
Type
Required
Description

title

string, max 255

Yes

The record's name in the app.

status

boolean

Yes

Whether it's active.

type

string

Yes

quick_order_page, quick_buy_collection, or quick_buy_variant.

The remaining required fields depend on type:

Field
Type
Notes

apply_product

object (required)

type: products or collections.

apply_product.product_ids

array

Required when type is products.

apply_product.collection_ids

array

Required when type is collections.

display_on_page

string (required)

The handle of the Shopify page this form is shown on.

pagination

object (required)

type: pagination or load_more_button; per_page: number from 1–50.

columns

object (required)

product_stock: boolean — show/hide the stock column.

Example:

Field
Type
Notes

apply_product

object (required)

type: all, products, collections, or product-tags, with matching product_ids / collection_ids / product_tags.

exclude_product

object (required)

type: none, products, or collections, with matching IDs.

apply_customer

object (required)

type: all, logged, non-logged, or customer-tags, with tags when applicable.

exclude_customer

object (required)

type: none or customer-tags, with tags when applicable.

display_on_pages

array (required)

Any of index, collection, search, another_page.

columns

object (required)

Booleans: stock_status, quantity, variant, volume_discount, add_to_cart.

Example:

Field
Type
Notes

apply_product

object (required)

Same shape as quick_buy_collection.

exclude_product

object (required)

Same shape as quick_buy_collection.

apply_customer

object (required)

Same shape as quick_buy_collection.

exclude_customer

object (required)

Same shape as quick_buy_collection.

template

string (required)

default or matrix-column.

columns

object (required)

stock: boolean — show/hide the stock column.

Example:

The apply_product/exclude_product/apply_customer/exclude_customer objects control the same targeting rules you'd set in the app UI. Style, column ordering, and other display settings use sensible defaults on create — to change them, update the record afterward or edit it in the app.

Response

200 – Success returns the created record. See the example under Get a record below.

Update a record

Same headers as Create. Only send the fields you want to change — title, status, configs, and product_configs are all optional; unspecified fields keep their current value. This API requires the Update permission.

Get a record

Same headers as Create, no request body. This API requires the View permission.

200 – Success example (type: quick_order_page):

Delete a record

Same headers as Create. Pass an ids parameter — a comma-separated list of record IDs to delete (as a query string parameter or a JSON body field), e.g. ids=1,2,3. This API requires the Delete permission.

200 – Success:

Error responses

All 4 endpoints share the same error responses as the rest of the Public API — see Public APIs for 401 Unauthorized, 403 Forbidden, and 429 Too Many Requests.

Last updated

Was this helpful?