Add-Product Search (Create-Order)
The slim product search that powers the admin Create Order screen's "Add Product" modal — the GraphQL counterpart of GET /api/admin/products. Cursor pagination via first / after.
This is not the product listing
For the full admin product listing — every column plus all the Channel / Name / SKU / Attribute Family / Price / ID / Status / Type filters — use List Products (the adminCatalogProducts query). This page documents only the Create-Order search tool.
Operation
| Operation | Type |
|---|---|
adminProducts(first: Int, after: String, query: String, sku: String, type: String, status: Int, categoryId: Int, channel: String, locale: String) | Query (cursor) |
Arguments
| Arg | Type | Description |
|---|---|---|
first | Int | Page size (default 30, max 50) |
after | String | Cursor from a previous pageInfo.endCursor |
query | String | Free-text — matches SKU OR product name (partial) |
sku | String | Exact SKU |
type | String | simple, configurable, bundle, downloadable, grouped, virtual, booking |
status | Int | 0 (disabled) or 1 (enabled) — omit to get both |
categoryId | Int | Filter by category ID |
channel | String | Channel code for value resolution |
locale | String | Locale code for value resolution |
How it differs from the storefront products query
- No automatic
status = 1filter — admin sees all statuses. - Booking products are listed (but cannot be added to an admin draft cart — see the Add Item to Cart errors list).
- Returns a slim row (9 fields) rather than the full storefront product schema.
Booking Products
Booking products are returned by this query for admin visibility. Attempting to add one to an admin draft cart via addItemAdminCart returns an error message "Booking products cannot be added to an admin draft order." — this matches the Bagisto monolith Create-Order UI which has no booking partial.

