{"openapi":"3.1.0","info":{"title":"Nepzio API","version":"v1","summary":"Read and change a Nepzio store's data from your own server.","description":"Authenticate with a secret key from Settings → Developers, sent as\n`Authorization: Bearer nz_live_sk_…`. A key belongs to one store and has scopes saying what it\nmay do. Use it only from your server: requests from a browser are refused.\n\nEach key may make a few requests a second (bursts of 10 on Free, 20 on Starter and Growth, 40\non Business), and each store has a daily allowance across its keys. Every response reports the\nkey's allowance in `RateLimit-*` headers.\n\nEvery error is RFC 9457 problem details with a stable `code`, and every response carries an\n`X-Request-Id` header. Within v1 changes are additive only: new endpoints, new optional\nfields and new enum values may appear at any time, so ignore what you don't recognise.\n","contact":{"name":"Nepzio developer support","url":"https://developers.nepzio.com"},"termsOfService":"https://nepzio.com/terms"},"servers":[{"url":"https://api.nepzio.com"}],"security":[{"secretKey":[]}],"tags":[{"name":"Store","description":"The store your key belongs to."},{"name":"Products","description":"Products and their variants."},{"name":"Inventory","description":"Stock per variant."},{"name":"Orders","description":"Orders from every channel (online store, point of sale, chat, marketplaces)."},{"name":"Customers","description":"The store's customers."},{"name":"Meta","description":"About the API itself."}],"paths":{"/v1/store":{"get":{"operationId":"getStore","tags":["Store"],"summary":"Get your store","description":"The store the key belongs to. A quick way to check a key works.","responses":{"200":{"description":"The store.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Store"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/products":{"get":{"operationId":"listProducts","tags":["Products"],"summary":"List products","description":"The store's products with their variants, newest first. Needs `read_products`; variant costs only with `read_costs`.","parameters":[{"$ref":"#/components/parameters/Limit"},{"$ref":"#/components/parameters/Cursor"},{"$ref":"#/components/parameters/CreatedAtMin"},{"$ref":"#/components/parameters/CreatedAtMax"},{"$ref":"#/components/parameters/UpdatedAtMin"},{"$ref":"#/components/parameters/UpdatedAtMax"},{"name":"status","in":"query","description":"Only products with this status.","schema":{"type":"string","enum":["draft","active"]}}],"responses":{"200":{"description":"A page of products.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductList"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"}}},"post":{"operationId":"createProduct","tags":["Products"],"summary":"Create a product","description":"A product with its options and variants, each with its opening stock. Counts towards the\nplan's product limit. Needs `write_products`; setting costs also needs `read_costs`.\n","parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductCreate"}}}},"responses":{"201":{"description":"The product as made.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Product"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/products/{id}":{"get":{"operationId":"getProduct","tags":["Products"],"summary":"Get a product","description":"One product with its variants. Needs `read_products`.","parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"The product.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Product"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}},"patch":{"operationId":"updateProduct","tags":["Products"],"summary":"Update a product","description":"Change its name, descriptions, SEO, status or tags. Fields left out are kept. Needs `write_products`.","parameters":[{"$ref":"#/components/parameters/Id"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProductUpdate"}}}},"responses":{"200":{"description":"The product.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Product"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/variants/{id}":{"patch":{"operationId":"updateVariant","tags":["Products"],"summary":"Update a variant","description":"Change its price, compare-at price, cost, barcode or weight. Fields left out are kept. Needs `write_products`; cost also needs `read_costs`.","parameters":[{"$ref":"#/components/parameters/Id"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VariantUpdate"}}}},"responses":{"200":{"description":"The variant.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Variant"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/inventory":{"get":{"operationId":"listInventory","tags":["Inventory"],"summary":"List stock levels","description":"Stock per variant. Filter by SKU, variant or product, or by when the stock last changed\n(`updated_at_min`), to keep another system's counts in step. Needs `read_inventory`.\n","parameters":[{"$ref":"#/components/parameters/Limit"},{"$ref":"#/components/parameters/Cursor"},{"$ref":"#/components/parameters/CreatedAtMin"},{"$ref":"#/components/parameters/CreatedAtMax"},{"$ref":"#/components/parameters/UpdatedAtMin"},{"$ref":"#/components/parameters/UpdatedAtMax"},{"name":"sku","in":"query","description":"Up to 100 SKUs, separated by commas.","schema":{"type":"string"}},{"name":"variant_id","in":"query","description":"Up to 100 variant ids, separated by commas.","schema":{"type":"string"}},{"name":"product_id","in":"query","description":"Up to 100 product ids, separated by commas.","schema":{"type":"string"}}],"responses":{"200":{"description":"A page of stock levels.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InventoryLevelList"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/inventory/adjust":{"post":{"operationId":"adjustInventory","tags":["Inventory"],"summary":"Adjust stock","description":"Change a variant's stock on hand by `delta` (10 received, -2 damaged), with a reason. Recorded in the store's stock history as made by your key. Needs `write_inventory`.","parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InventoryAdjust"}}}},"responses":{"200":{"description":"The stock level after the change.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InventoryLevel"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/inventory/set":{"post":{"operationId":"setInventory","tags":["Inventory"],"summary":"Set stock","description":"Make a variant's stock on hand exactly `stock`, e.g. a count from another system. The change\nis worked out at the moment it is saved, so a sale in between isn't lost. Needs `write_inventory`.\n","parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InventorySet"}}}},"responses":{"200":{"description":"The stock level after the change.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InventoryLevel"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/orders":{"get":{"operationId":"listOrders","tags":["Orders"],"summary":"List orders","description":"The store's orders from every channel, newest first. Needs `read_orders`; line costs only with `read_costs`.","parameters":[{"$ref":"#/components/parameters/Limit"},{"$ref":"#/components/parameters/Cursor"},{"$ref":"#/components/parameters/CreatedAtMin"},{"$ref":"#/components/parameters/CreatedAtMax"},{"$ref":"#/components/parameters/UpdatedAtMin"},{"$ref":"#/components/parameters/UpdatedAtMax"},{"name":"status","in":"query","schema":{"$ref":"#/components/schemas/OrderStatus"}},{"name":"payment_status","in":"query","schema":{"$ref":"#/components/schemas/PaymentStatus"}},{"name":"source","in":"query","schema":{"$ref":"#/components/schemas/OrderSource"}}],"responses":{"200":{"description":"A page of orders.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderList"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/orders/{id}":{"get":{"operationId":"getOrder","tags":["Orders"],"summary":"Get an order","description":"Needs `read_orders`.","parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"The order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/orders/{id}/cancel":{"post":{"operationId":"cancelOrder","tags":["Orders"],"summary":"Cancel an order","description":"Cancel an order that hasn't left the store; its reserved stock is released. Shipped orders\n(`order_not_cancellable`) and marketplace orders (`order_managed_elsewhere`) are refused\nwith 409. Needs `write_orders`.\n","parameters":[{"$ref":"#/components/parameters/Id"},{"$ref":"#/components/parameters/IdempotencyKey"}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderCancel"}}}},"responses":{"200":{"description":"The cancelled order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/customers":{"get":{"operationId":"listCustomers","tags":["Customers"],"summary":"List customers","description":"The store's customers, newest first. Needs `read_customers`.","parameters":[{"$ref":"#/components/parameters/Limit"},{"$ref":"#/components/parameters/Cursor"},{"$ref":"#/components/parameters/CreatedAtMin"},{"$ref":"#/components/parameters/CreatedAtMax"},{"$ref":"#/components/parameters/UpdatedAtMin"},{"$ref":"#/components/parameters/UpdatedAtMax"},{"name":"email","in":"query","description":"Only the customer with this email address.","schema":{"type":"string"}}],"responses":{"200":{"description":"A page of customers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerList"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/customers/{id}":{"get":{"operationId":"getCustomer","tags":["Customers"],"summary":"Get a customer","description":"Needs `read_customers`.","parameters":[{"$ref":"#/components/parameters/Id"}],"responses":{"200":{"description":"The customer.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Customer"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/v1/openapi.json":{"get":{"operationId":"getOpenApiDocument","tags":["Meta"],"summary":"This document","description":"The API's OpenAPI 3.1 description, as JSON. No key needed.","security":[],"responses":{"200":{"description":"The OpenAPI document.","content":{"application/json":{"schema":{"type":"object"}}}}}}}},"webhooks":{"order.created":{"post":{"operationId":"webhook_order_created","summary":"order.created","description":"An order is placed, from any channel.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"order.created"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Order"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"order.updated":{"post":{"operationId":"webhook_order_updated","summary":"order.updated","description":"Anything about an order changes: status, payment, lines, shipment, returns.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"order.updated"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Order"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"order.paid":{"post":{"operationId":"webhook_order_paid","summary":"order.paid","description":"An order is paid.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"order.paid"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Order"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"order.fulfilled":{"post":{"operationId":"webhook_order_fulfilled","summary":"order.fulfilled","description":"An order is paid and handed over.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"order.fulfilled"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Order"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"order.cancelled":{"post":{"operationId":"webhook_order_cancelled","summary":"order.cancelled","description":"An order is cancelled.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"order.cancelled"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Order"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"order.refunded":{"post":{"operationId":"webhook_order_refunded","summary":"order.refunded","description":"Goods from an order are returned and refunded.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"order.refunded"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Order"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"product.created":{"post":{"operationId":"webhook_product_created","summary":"product.created","description":"A product is added.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"product.created"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Product"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"product.updated":{"post":{"operationId":"webhook_product_updated","summary":"product.updated","description":"A product or any of its variants, images, options, categories or collections change.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"product.updated"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Product"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"product.deleted":{"post":{"operationId":"webhook_product_deleted","summary":"product.deleted","description":"A product is deleted.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"product.deleted"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/DeletedProduct"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"inventory.updated":{"post":{"operationId":"webhook_inventory_updated","summary":"inventory.updated","description":"A variant's stock, reservations or tracking change.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"inventory.updated"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/InventoryLevel"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"customer.created":{"post":{"operationId":"webhook_customer_created","summary":"customer.created","description":"A customer is added.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"customer.created"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Customer"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}},"customer.updated":{"post":{"operationId":"webhook_customer_updated","summary":"customer.updated","description":"A customer's details, addresses or tags change.","security":[],"parameters":[{"$ref":"#/components/parameters/WebhookId"},{"$ref":"#/components/parameters/WebhookTimestamp"},{"$ref":"#/components/parameters/WebhookSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/WebhookEvent"},{"type":"object","properties":{"type":{"const":"customer.updated"},"data":{"type":"object","properties":{"object":{"$ref":"#/components/schemas/Customer"}}}}}]}}}},"responses":{"200":{"description":"Any 2xx answer within 10 seconds counts as delivered."}}}}},"components":{"securitySchemes":{"secretKey":{"type":"http","scheme":"bearer","description":"A secret key (`nz_live_sk_…`, or `nz_test_sk_…` on a development store). Never put it in browser or app code."}},"parameters":{"Id":{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},"IdempotencyKey":{"name":"Idempotency-Key","in":"header","description":"Any unique string (a UUID is a good choice). A retry with the same key and request within 24\nhours gets the first answer again, marked `Idempotent-Replayed: true`, instead of doing the\nwork twice.\n","schema":{"type":"string","maxLength":255}},"WebhookId":{"name":"webhook-id","in":"header","required":true,"description":"The event's id; the same on every retry, so use it to ignore repeats.","schema":{"type":"string"}},"WebhookTimestamp":{"name":"webhook-timestamp","in":"header","required":true,"description":"When this attempt was signed, in Unix seconds. Refuse anything more than 5 minutes old.","schema":{"type":"integer"}},"WebhookSignature":{"name":"webhook-signature","in":"header","required":true,"description":"`v1,<base64 HMAC-SHA256 of \"{webhook-id}.{webhook-timestamp}.{raw body}\">`, keyed by the bytes of\nyour endpoint's secret after `whsec_` (base64-decoded): the Standard Webhooks scheme, so its\nlibraries verify it. During a secret rotation two signatures are sent, separated by a space;\naccept either.\n","schema":{"type":"string"}},"Limit":{"name":"limit","in":"query","description":"How many to return, 1 to 250.","schema":{"type":"integer","minimum":1,"maximum":250,"default":50}},"Cursor":{"name":"cursor","in":"query","description":"The `next_cursor` of the previous page, unchanged.","schema":{"type":"string"}},"CreatedAtMin":{"name":"created_at_min","in":"query","description":"Only those created at or after this time (ISO 8601 with a time zone).","schema":{"type":"string","format":"date-time"}},"CreatedAtMax":{"name":"created_at_max","in":"query","description":"Only those created before this time.","schema":{"type":"string","format":"date-time"}},"UpdatedAtMin":{"name":"updated_at_min","in":"query","description":"Only those changed at or after this time. Pass the time your last sync started to fetch only what changed since.","schema":{"type":"string","format":"date-time"}},"UpdatedAtMax":{"name":"updated_at_max","in":"query","description":"Only those last changed before this time.","schema":{"type":"string","format":"date-time"}}},"responses":{"BadRequest":{"description":"A parameter isn't valid (`invalid_parameter`; `errors` names it).","headers":{"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"PaymentRequired":{"description":"The store's plan doesn't allow this (`plan_limit_reached`), e.g. its product limit.","headers":{"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Conflict":{"description":"The request can't be done in the current state (e.g. `order_not_cancellable`), or a request with the same Idempotency-Key is still running (`idempotency_key_in_use`).","headers":{"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ValidationFailed":{"description":"Some fields aren't valid (`validation_failed`, `insufficient_stock`; `errors` names each field), or the Idempotency-Key was used for a different request (`idempotency_key_reused`).","headers":{"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"Nothing with this id in your store (`not_found`).","headers":{"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"No key was sent, or it isn't valid (code `authentication_required` or `invalid_api_key`).","headers":{"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Forbidden":{"description":"The key may not do this (`insufficient_scope`, naming the scope it lacks), or the request came\nfrom a browser (`browser_request_refused`): secret keys work only from your server.\n","headers":{"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"RateLimited":{"description":"Too many requests (`rate_limited`): either this key's per-second allowance or the store's daily\nallowance across all its keys. Wait for the seconds in `Retry-After`, then try again.\n","headers":{"Retry-After":{"description":"Seconds to wait before trying again.","schema":{"type":"integer"}},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"headers":{"RateLimitLimit":{"description":"Requests this key can make in a burst (its token bucket's size).","schema":{"type":"integer"}},"RateLimitRemaining":{"description":"Requests left in the bucket right now.","schema":{"type":"integer"}},"RateLimitReset":{"description":"Seconds until the next request is allowed when none are left, else 0.","schema":{"type":"integer"}},"RequestId":{"description":"Our id for this request. Quote it when contacting support.","schema":{"type":"string","example":"req_3f9a1c0b7d2e4a6b8c9d0e1f"}}},"schemas":{"Store":{"type":"object","additionalProperties":false,"required":["id","object","name","slug","status","url","country","currency","timezone","created_at"],"properties":{"id":{"type":"string","format":"uuid"},"object":{"type":"string","const":"store"},"name":{"type":"string"},"slug":{"type":"string","description":"The store's name in its nepzio.com address."},"status":{"type":"string","enum":["draft","published"],"description":"Shoppers can see the store only once it is published."},"url":{"type":"string","format":"uri","description":"The store's address for shoppers, on its own domain once one is connected."},"country":{"type":"string","description":"ISO 3166-1 alpha-2 country code.","example":"NP"},"currency":{"type":"string","description":"ISO 4217 code of every amount in this store.","example":"NPR"},"timezone":{"type":"string","description":"IANA time zone the store's days follow.","example":"Asia/Kathmandu"},"created_at":{"type":"string","format":"date-time"}}},"Ref":{"type":"object","additionalProperties":false,"required":["id","name"],"properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"}}},"ListBase":{"type":"object","required":["object","has_more","next_cursor"],"properties":{"object":{"type":"string","const":"list"},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"],"description":"Pass as `cursor` to get the next page; null on the last page."}}},"ProductList":{"allOf":[{"$ref":"#/components/schemas/ListBase"},{"type":"object","required":["data"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Product"}}}}]},"Product":{"type":"object","additionalProperties":false,"required":["id","object","name","slug","status","description","short_description","brand","categories","collections","tags","images","options","variants","seo","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid"},"object":{"type":"string","const":"product"},"name":{"type":"string"},"slug":{"type":"string"},"status":{"type":"string","enum":["draft","active"],"description":"Shoppers see only active products."},"description":{"type":["string","null"],"description":"HTML."},"short_description":{"type":["string","null"]},"brand":{"oneOf":[{"$ref":"#/components/schemas/Ref"},{"type":"null"}]},"categories":{"type":"array","items":{"$ref":"#/components/schemas/Ref"}},"collections":{"type":"array","items":{"$ref":"#/components/schemas/Ref"}},"tags":{"type":"array","items":{"type":"string"}},"images":{"type":"array","description":"In display order; the first is the main image.","items":{"$ref":"#/components/schemas/Image"}},"options":{"type":"array","description":"Up to three, e.g. Size and Colour, with their values in order.","items":{"$ref":"#/components/schemas/ProductOption"}},"variants":{"type":"array","items":{"$ref":"#/components/schemas/Variant"}},"seo":{"type":"object","additionalProperties":false,"required":["title","description"],"properties":{"title":{"type":["string","null"]},"description":{"type":["string","null"]}}},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time","description":"Changes when the product or any of its variants, images, options, categories or collections change."}}},"Image":{"type":"object","additionalProperties":false,"required":["id","url","alt","width","height"],"properties":{"id":{"type":"string","format":"uuid"},"url":{"type":"string","format":"uri"},"alt":{"type":["string","null"]},"width":{"type":["integer","null"]},"height":{"type":["integer","null"]}}},"ProductOption":{"type":"object","additionalProperties":false,"required":["name","values"],"properties":{"name":{"type":"string"},"values":{"type":"array","items":{"type":"string"}}}},"Variant":{"type":"object","additionalProperties":false,"required":["id","object","product_id","sku","barcode","title","options","price","compare_at_price","weight_grams","image_id","status","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid"},"object":{"type":"string","const":"variant"},"product_id":{"type":"string","format":"uuid"},"sku":{"type":"string"},"barcode":{"type":["string","null"]},"title":{"type":["string","null"],"description":"The variant's option values, e.g. \"Black / M\"; null for a product without options."},"options":{"type":"object","description":"Option name to value, e.g. {\"Colour\": \"Black\", \"Size\": \"M\"}.","additionalProperties":{"type":"string"}},"price":{"$ref":"#/components/schemas/Money"},"compare_at_price":{"description":"The price before a sale (MRP), when set.","oneOf":[{"$ref":"#/components/schemas/Money"},{"type":"null"}]},"cost":{"description":"What the item costs the merchant. Sent only to keys with `read_costs`.","oneOf":[{"$ref":"#/components/schemas/Money"},{"type":"null"}]},"weight_grams":{"type":["integer","null"]},"image_id":{"type":["string","null"],"description":"The id of one of the product's images."},"status":{"type":"string","enum":["draft","active"]},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"InventoryLevelList":{"allOf":[{"$ref":"#/components/schemas/ListBase"},{"type":"object","required":["data"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/InventoryLevel"}}}}]},"InventoryLevel":{"type":"object","additionalProperties":false,"required":["object","variant_id","product_id","sku","tracked","stock","reserved","available","updated_at"],"properties":{"object":{"type":"string","const":"inventory_level"},"variant_id":{"type":"string","format":"uuid"},"product_id":{"type":"string","format":"uuid"},"sku":{"type":"string"},"tracked":{"type":"boolean","description":"False when the store doesn't count this variant's stock (made to order, a service)."},"stock":{"type":"integer","description":"Units on hand."},"reserved":{"type":"integer","description":"Units held by orders that haven't left yet."},"available":{"type":["integer","null"],"description":"Units that can be sold now (stock less reserved); null when not tracked, meaning no limit."},"updated_at":{"type":"string","format":"date-time","description":"When stock, reservations or tracking last changed."}}},"OrderList":{"allOf":[{"$ref":"#/components/schemas/ListBase"},{"type":"object","required":["data"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Order"}}}}]},"OrderStatus":{"type":"string","enum":["pending","processing","fulfilled","cancelled"]},"PaymentStatus":{"type":"string","enum":["pending","authorized","paid","failed","refunded"]},"OrderSource":{"type":"string","enum":["storefront","conversation","pos","admin","daraz","amazon"],"description":"Where the order came from. New sources may appear."},"Order":{"type":"object","additionalProperties":false,"required":["id","object","number","status","payment_status","payment_method","source","fulfillment_method","channel_order_number","customer","shipping_address","items","subtotal","discount","coupon_code","shipping","total","refunded","note","shipment","paid_at","fulfilled_at","cancelled_at","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid"},"object":{"type":"string","const":"order"},"number":{"type":"string","description":"The order number shoppers and staff see."},"status":{"$ref":"#/components/schemas/OrderStatus"},"payment_status":{"$ref":"#/components/schemas/PaymentStatus"},"payment_method":{"type":"string","description":"e.g. cod, esewa, khalti, fonepay, cash, split. New methods may appear."},"source":{"$ref":"#/components/schemas/OrderSource"},"fulfillment_method":{"type":"string","enum":["delivery","pickup","in_store","marketplace"]},"channel_order_number":{"type":["string","null"],"description":"The marketplace's own order number, for Daraz and Amazon orders."},"customer":{"type":"object","additionalProperties":false,"required":["id","name","email","phone"],"description":"As given on the order. `id` is null for anonymous sales in the shop.","properties":{"id":{"type":["string","null"],"format":"uuid"},"name":{"type":"string"},"email":{"type":["string","null"]},"phone":{"type":["string","null"]}}},"shipping_address":{"description":"Null for orders picked up or sold in the shop.","oneOf":[{"$ref":"#/components/schemas/Address"},{"type":"null"}]},"items":{"type":"array","items":{"$ref":"#/components/schemas/OrderItem"}},"subtotal":{"$ref":"#/components/schemas/Money"},"discount":{"$ref":"#/components/schemas/Money"},"coupon_code":{"type":["string","null"]},"shipping":{"$ref":"#/components/schemas/Money"},"total":{"$ref":"#/components/schemas/Money"},"refunded":{"$ref":"#/components/schemas/Money"},"note":{"type":["string","null"]},"shipment":{"oneOf":[{"$ref":"#/components/schemas/Shipment"},{"type":"null"}]},"paid_at":{"type":["string","null"],"format":"date-time"},"fulfilled_at":{"type":["string","null"],"format":"date-time"},"cancelled_at":{"type":["string","null"],"format":"date-time"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time","description":"Changes when the order or any of its lines, payments, shipment or returns change."}}},"Address":{"type":"object","additionalProperties":false,"required":["line1","line2","city","state","postal_code","country"],"properties":{"line1":{"type":"string"},"line2":{"type":["string","null"]},"city":{"type":"string"},"state":{"type":["string","null"]},"postal_code":{"type":["string","null"]},"country":{"type":"string"}}},"OrderItem":{"type":"object","additionalProperties":false,"required":["id","variant_id","product_id","name","variant_title","sku","quantity","unit_price","discount","total","note"],"description":"A snapshot taken when the order was placed; later product changes don't change it.","properties":{"id":{"type":"string","format":"uuid"},"variant_id":{"type":["string","null"],"format":"uuid","description":"Null for a custom item sold at the till."},"product_id":{"type":["string","null"],"format":"uuid"},"name":{"type":"string"},"variant_title":{"type":["string","null"]},"sku":{"type":["string","null"]},"quantity":{"type":"integer"},"unit_price":{"$ref":"#/components/schemas/Money"},"discount":{"$ref":"#/components/schemas/Money"},"total":{"$ref":"#/components/schemas/Money"},"note":{"type":["string","null"]},"unit_cost":{"description":"The item's cost when it was sold. Sent only to keys with `read_costs`.","oneOf":[{"$ref":"#/components/schemas/Money"},{"type":"null"}]}}},"Shipment":{"type":"object","additionalProperties":false,"required":["status","courier","tracking_code","tracking_url","delivered_at"],"properties":{"status":{"type":"string","enum":["created","in_transit","delivered","returned","cancelled"]},"courier":{"type":"string"},"tracking_code":{"type":["string","null"]},"tracking_url":{"type":["string","null"]},"delivered_at":{"type":["string","null"],"format":"date-time"}}},"CustomerList":{"allOf":[{"$ref":"#/components/schemas/ListBase"},{"type":"object","required":["data"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Customer"}}}}]},"Customer":{"type":"object","additionalProperties":false,"required":["id","object","name","email","email_verified","has_account","phone","tags","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid"},"object":{"type":"string","const":"customer"},"name":{"type":"string"},"email":{"type":["string","null"],"description":"Null for customers who gave none (orders taken by chat or phone)."},"email_verified":{"type":"boolean"},"has_account":{"type":"boolean","description":"Whether they have signed up on the store."},"phone":{"type":["string","null"]},"tags":{"type":"array","items":{"type":"string"}},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"MoneyInput":{"type":"object","additionalProperties":false,"required":["amount","currency"],"description":"An amount in paisa, in whole rupees (a multiple of 100), in NPR.","properties":{"amount":{"type":"integer","multipleOf":100},"currency":{"type":"string","enum":["NPR"]}}},"ProductCreate":{"type":"object","additionalProperties":false,"required":["name","variants"],"properties":{"name":{"type":"string","maxLength":255},"slug":{"type":"string","description":"Made from the name when left out."},"description":{"type":"string","description":"HTML; unsafe markup is removed."},"short_description":{"type":"string","maxLength":500},"seo":{"$ref":"#/components/schemas/SeoInput"},"status":{"type":"string","enum":["draft","active"],"default":"draft"},"tags":{"type":"array","maxItems":20,"items":{"type":"string"}},"options":{"type":"array","maxItems":3,"description":"e.g. [{\"name\":\"Size\",\"values\":[\"S\",\"M\"]}]; leave out for a product without options.","items":{"$ref":"#/components/schemas/ProductOption"}},"variants":{"type":"array","minItems":1,"maxItems":100,"description":"One per combination of option values; exactly one for a product without options.","items":{"$ref":"#/components/schemas/VariantCreate"}}}},"VariantCreate":{"type":"object","additionalProperties":false,"required":["price"],"properties":{"sku":{"type":"string","description":"Made from the product when left out. Unique in the store."},"barcode":{"type":"string"},"price":{"$ref":"#/components/schemas/MoneyInput"},"compare_at_price":{"$ref":"#/components/schemas/MoneyInput"},"cost":{"description":"Needs `read_costs`.","$ref":"#/components/schemas/MoneyInput"},"options":{"type":"object","description":"One value for each of the product's options, e.g. {\"Size\": \"M\"}.","additionalProperties":{"type":"string"}},"stock":{"type":"integer","minimum":0,"description":"Opening stock on hand."},"tracked":{"type":"boolean","description":"Whether stock is counted. Default true."}}},"SeoInput":{"type":"object","additionalProperties":false,"properties":{"title":{"type":["string","null"],"maxLength":60},"description":{"type":["string","null"],"maxLength":160}}},"ProductUpdate":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","maxLength":255},"description":{"type":["string","null"]},"short_description":{"type":["string","null"],"maxLength":500},"seo":{"$ref":"#/components/schemas/SeoInput"},"status":{"type":"string","enum":["draft","active"]},"tags":{"type":"array","maxItems":20,"description":"Replaces all of the product's tags.","items":{"type":"string"}}}},"VariantUpdate":{"type":"object","additionalProperties":false,"properties":{"price":{"$ref":"#/components/schemas/MoneyInput"},"compare_at_price":{"oneOf":[{"$ref":"#/components/schemas/MoneyInput"},{"type":"null"}]},"cost":{"description":"Needs `read_costs`.","oneOf":[{"$ref":"#/components/schemas/MoneyInput"},{"type":"null"}]},"barcode":{"type":["string","null"]},"weight_grams":{"type":["integer","null"]}}},"InventoryAdjust":{"type":"object","additionalProperties":false,"required":["delta","reason"],"description":"Name the variant by `sku` or `variant_id`.","properties":{"sku":{"type":"string"},"variant_id":{"type":"string","format":"uuid"},"delta":{"type":"integer","description":"Units added (positive) or taken away (negative)."},"reason":{"type":"string","maxLength":255}}},"InventorySet":{"type":"object","additionalProperties":false,"required":["stock","reason"],"description":"Name the variant by `sku` or `variant_id`.","properties":{"sku":{"type":"string"},"variant_id":{"type":"string","format":"uuid"},"stock":{"type":"integer","minimum":0},"reason":{"type":"string","maxLength":255}}},"OrderCancel":{"type":"object","additionalProperties":false,"properties":{"reason":{"type":"string","maxLength":500,"description":"Kept for staff; never shown to the shopper."}}},"WebhookEvent":{"type":"object","required":["id","type","api_version","created_at","store_id","data"],"description":"Every webhook's body. `data.object` is the object as the API shows it when the event is sent,\nnormally seconds after the change; costs are never included. Delivery is at least once and\nnot in order: use `id` to ignore repeats, and fetch the object when you need the latest.\n","properties":{"id":{"type":"string","format":"uuid"},"type":{"type":"string"},"api_version":{"type":"string","const":"v1"},"created_at":{"type":"string","format":"date-time"},"store_id":{"type":"string","format":"uuid"},"data":{"type":"object","required":["object"],"properties":{"object":{"type":"object"}}}}},"DeletedProduct":{"type":"object","required":["id","object","deleted"],"properties":{"id":{"type":"string","format":"uuid"},"object":{"type":"string","const":"product"},"deleted":{"type":"boolean","const":true}}},"Money":{"type":"object","additionalProperties":false,"required":["amount","currency"],"description":"An amount in the currency's minor unit (paisa for NPR), so Rs. 1,500 is `150000`.","properties":{"amount":{"type":"integer"},"currency":{"type":"string","example":"NPR"}}},"Error":{"type":"object","required":["type","title","status","detail","code","request_id"],"description":"RFC 9457 problem details. Branch on `code`; `detail` is for people and may change.","properties":{"type":{"type":"string","format":"uri","description":"A page explaining this error."},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string","description":"Stable machine code, e.g. `invalid_api_key`, `not_found`, `invalid_parameter`. New codes may appear."},"errors":{"type":"array","description":"Problems with particular inputs.","items":{"$ref":"#/components/schemas/FieldError"}},"request_id":{"type":"string"}}},"FieldError":{"type":"object","required":["field","code","message"],"properties":{"field":{"type":"string"},"code":{"type":"string"},"message":{"type":"string"}}}}}}