One operating system for every way you sell.Start for free
Queek logo

One API. Clear rules.

Every Queek store answers at the same base URL with the same keys, errors and limits. Learn them once and build on any store.

  • Stable error codes
  • Idempotency keys
  • A request id on every response

https://client.usequeek.com/v1

Public key

pk_live_…

For browser code. Works only from origins the merchant allows.

Private key

sk_live_…

For servers, build steps and native apps. Never in a browser.

Test key

sk_test_…

Reaches only your dev store. Swap it to go live.

The headers that carry the contract.

A handful of headers do the work, and they mean the same thing on every Queek store.

You send

X-Client-Key
Your public, private or test key, on every request.
Idempotency-Key
On a write, so a retry can't run twice.
X-Request-Id
Optional. Your own id, to match your trace to ours.

You get back

X-Request-Id
On every response, error bodies included.
X-Queek-Api-Version
The API version, on every response.
X-Queek-Mode: test
On every response from a dev store.
Idempotent-Replayed: true
When a retry replayed the first response.
Retry-After
With too_many_requests, when to try again.

Errors that tell you what to fix.

Every error returns a stable code, a readable message, a request id and a link to its own docs entry, plus the field at fault when there is one. Switch on the code, never the message.

403 · client.usequeek.com/v1

  1. "error": {
  2. "code": "origin_not_allowed",
  3. "doc_url": "…/errors#origin_not_allowed",
  4. "request_id": "req_…"
  5. }

Retry without doubling up.

Send an Idempotency-Key with a write and a retry can't run twice. The same key and body replays the first response; a failed request stays retryable.

POST /store/cart/items

  1. Idempotency-Key: 7f3c…
  2. # network drops, retry
  3. Idempotency-Key: 7f3c…
  4. → Idempotent-Replayed: true

The small things, done properly.

What makes a Queek integration easy to run and easy to debug.

Read the docs
  • Limits that grow with the plan

    Private keys get a larger quota on higher plans.

  • Request ids

    Send X-Request-Id or read ours on every response.

  • Versioned

    X-Queek-Api-Version on every response.

  • Metafields and metaobjects

    Custom fields and content types, typed and filterable.

  • OpenAPI spec

    The full schema at client.usequeek.com/openapi.json.

  • Written for agents too

    An endpoint guide at client.usequeek.com/llms.txt.

API questions, answered.

The rules, in plain words.

Frequently asked questions

Which plans can use the API?
Queek OS

Every plan, the free plan included. Higher plans give private keys a larger request quota.

What happens if I go over the limit?
Queek OS

You get too_many_requests with a Retry-After header telling you when to try again.

Can a test key reach the live store?
Queek OS

No. Test keys only reach your dev store and live keys only the live one. Mixing them returns api_key_mode_mismatch.

Can I create orders through the API?
Queek OS

No. You build a cart and send the shopper to its checkout_url. Queek checkout completes delivery, payment and the order.

$ curl client.usequeek.com/llms.txt

Get a key and make your first call.

Create a dev store, copy its test key, and read the docs as you go.