Create an API key, call GET /me to check it works, then list, create, and read back a product. Five calls, five minutes.
Step 1: create a key
Section titled “Step 1: create a key”In the back office, go to Integrations > API & apps and create a key. Choose the scopes it needs; for this walkthrough pick catalog:read and catalog:write. The plaintext key is shown once, so copy it somewhere safe.
Step 2: check the key works
Section titled “Step 2: check the key works”Call GET /me. It returns the store this key belongs to, the scopes it carries, and its own id and name, so it doubles as a connection test.
curl https://api.oletapp.com/your-store/v1/me \ -H "Authorization: Bearer olet_live_YOUR_API_KEY"{ "data": { "store_name": "Your Store", "domain_prefix": "your-store", "scopes": ["catalog:read", "catalog:write"], "key": { "id": "...", "name": "Quickstart key" } }}domain_prefix is the prefix every other path in this guide uses in place of your-store.
Step 3: list products
Section titled “Step 3: list products”GET /products returns full product documents, not summaries. Add ?limit=1 to keep the first response short.
curl "https://api.oletapp.com/your-store/v1/products?limit=1" \ -H "Authorization: Bearer olet_live_YOUR_API_KEY"{ "data": [ { "id": "...", "name": "Existing product", "sku": "SKU-001", "retail_price": 1999, "codes": [], "tags": [], "version": "..." } ], "next_cursor": "...", "has_more": true}See pagination and polling for what next_cursor and has_more mean.
Step 4: create a product
Section titled “Step 4: create a product”Only name and retail_price are required. retail_price is an integer number of cents, never a decimal dollar amount, so $12.99 is 1299. Leave out sku and OLET generates one that starts with PRD-.
curl -X POST https://api.oletapp.com/your-store/v1/products \ -H "Authorization: Bearer olet_live_YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"name": "Cold brew concentrate", "retail_price": 1299}'{ "data": { "id": "...", "name": "Cold brew concentrate", "sku": "PRD-K3M9QX", "retail_price": 1299, "active": true, "version": "..." }}See money and quantities for the full rule on cents. To create a product with its barcodes, tags and suppliers in the same request, see write a whole product in one request.
Step 5: read it back
Section titled “Step 5: read it back”Use the id from step 4 with GET /products/{id}.
curl https://api.oletapp.com/your-store/v1/products/PRODUCT_ID \ -H "Authorization: Bearer olet_live_YOUR_API_KEY"{ "data": { "id": "PRODUCT_ID", "name": "Cold brew concentrate", "sku": "PRD-K3M9QX", "retail_price": 1299, "active": true, "codes": [], "tags": [], "suppliers": [], "variant_attributes": [], "components": [], "version": "..." }}Where to go next
Section titled “Where to go next”See authentication for the full scope table and OAuth, or the full API reference for every field on every operation. If you are building with an AI tool, see Build with AI.