Skip to content
scango.ch
Esc
↑↓navigate↵open⌘Jpreview
On this page

Introduction

Connect your systems to scango.ch: products, orders, suppliers, categories, stores and identity logs over one REST API.

The scango.ch Customer API lets your ERP, accounting or inventory software read and change your organization’s data: products, orders, suppliers, categories, stores and identity logs.

Base URL

https://dashboard.scango.ch/api/v1

Authentication

Create an API key in the dashboard under Settings → Organization → API Keys (Admin role required) and send it with every request:

Authorization: Bearer <api-key>
Key type Allows
Read Every GET request
Write Everything Read allows, plus creating, updating and deleting products and product images, categories, suppliers, stores and blocked identities

Every authentication or permission problem returns 403: a missing, unknown or inactive key, or a Read key on a write operation.

Conventions

  • Money is in integer cents (Rappen): 120 is CHF 1.20.
  • Dates in query parameters are UTC ISO-8601 with a Z suffix, e.g. 2024-01-01T00:00:00.000Z. Offsets such as +02:00 are rejected.
  • Request bodies are JSON. Updates use POST with a partial body.
  • Responses of list endpoints are { data, meta }; single items are { data }; writes return { success: true } (and the new id on create).
  • Deleting a product, category, supplier or store is a soft delete: the item disappears from lists, but GET by id still returns it with deleted: true.
  • Errors are JSON: { statusCode, message, timestamp, path }. List filters that fail validation return { error: { formErrors, fieldErrors } }.

Pagination

limit sets the page size: default 100, at most 5000.

Endpoint Paging
Products, orders, identity logs, blocked identities Pass meta.nextCursor as cursor until nextCursor is absent
Product search (q) offset, at most 250 per page
Categories, suppliers, stores Not paginated: one response with up to limit items

Soft-deleted items are filtered out after reading, so a page can be shorter than limit while more pages exist. Rely on nextCursor, not on returned < limit.

Orders

start and end are required and inclusive; paymentState is optional. Orders come newest first. Deleted orders are left out unless you pass includeDeleted=true.

There are no webhooks: poll for new orders, for example every few minutes with a window that overlaps the previous one.

Product images

Set imageUrl when creating or updating a product, or upload a file with POST /products/{productId}/image (multipart field file, max. 10 MiB). Remove it with DELETE /products/{productId}/image.

Next steps

All endpoints at a glance: API reference.

Questions? Write to support@scango.ch.

Was this page helpful?