Use the public API

Base address, authentication, rate limits and request ID: the essentials for connecting your tools to Upsellr.

Upsellr’s public API gives access to your master data, your products, your sources and your workflows from your own tools. It is included in the Enterprise plan.

The essentials

  • Base address: https://api.upsellr.io/v2
  • Authentication: each request carries the Authorization header with the value Bearer followed by your key. See create and manage API keys.
  • Documentation: the full reference, with examples, is published on docs.upsellr.io.

Calls from a server only

The API is called from a server, never from a browser: it does not respond to requests sent by a web page. This also avoids exposing your key in a page’s code.

Rate limits

The limits apply to the whole organization, across all keys.

Request type Per minute Burst
Reads 200 30
Writes 60 10
Heavy writes: product creation, file upload, workflow launch 20 5
Product search and reading 60 5

Beyond that, the API responds with a 429 code and a Retry-After header that indicates, in seconds, when to try again.

Request ID

Each response carries an X-Request-Id header. If a request fails unexpectedly, note this ID and pass it on to support: it lets us find your exact call.

Good to know

  • A key restricted to certain IP addresses or certain User-Agents is refused from any other origin.
  • Too many requests with an invalid key from the same address lead to a temporary block, signaled by a 429 code.
  • A key only acts within the limits of its scopes: a request outside its scopes is refused.
  • Launching a workflow through the API consumes credits just as it does from the app.
  • To be notified when a run ends without polling the API in a loop, use webhooks.
  • A question? Go through contact us or the Report a bug button in the app, with the request ID.

Can't find your answer?

Contact us