EKMOBAIL

EKMOBAIL PRICE API · v1

Price data
built for integration

Connect your ERP, storefront or procurement system to the current EKMOBAIL wholesale catalogue in USD.

Request API access ↗Quick start ↓
01

Authentication

Send your personal key in the Authorization header on every request. Keys are issued in the customer account after approval.

Authorization: Bearer ekm_live_YOUR_KEY
The full secret is shown once. Store it in a server-side secret manager and never place it in browser or mobile application code.
02

GET /api/v1/prices

Returns the current sellable assortment and wholesale prices in USD. The catalogue is rebuilt daily at 18:00 Dubai time.

GEThttps://ekmobail.com/api/v1/prices

Query parameters

limitinteger · 1–1000 · default 500

Number of products returned in one page.

cursorstring

Opaque continuation value from next_cursor. Do not edit it.

skustring

Return one exact SKU instead of a page.

Response

{
  "catalog_updated_at": "2026-08-26T14:00:05Z",
  "currency": "USD",
  "total": 1122,
  "items": [
    { "sku": "123456", "name": "Product name", "price": 199.99 }
  ],
  "next_cursor": "eyJ2ZXJzaW9uIjo..."
}
03

Pagination

Use the signed cursor exactly as returned. A cursor belongs to one catalogue release.

  1. Request the first page without cursor.
  2. Pass next_cursor into the next request until it becomes null.
  3. If the API returns 409, restart from the first page because the catalogue changed.
04

Errors and limits

400

Invalid limit, cursor or other request parameter.

401

Missing, invalid or revoked API key.

409

Catalogue changed during pagination; restart pagination.

429

Assigned rate limit exceeded. Respect Retry-After.

503

Temporary service or catalogue availability problem.

05

Code examples

cURL

curl --request GET \
  --url 'https://ekmobail.com/api/v1/prices?limit=100' \
  --header 'Authorization: Bearer ekm_live_YOUR_KEY'

JavaScript

const response = await fetch(
  'https://ekmobail.com/api/v1/prices?limit=100',
  { headers: { Authorization: 'Bearer ' + process.env.EKMOBAIL_API_KEY } }
);
if (!response.ok) throw new Error('Price API ' + response.status);
const page = await response.json();

Python

import os, requests

response = requests.get(
    "https://ekmobail.com/api/v1/prices",
    params={"limit": 100},
    headers={"Authorization": f"Bearer {os.environ['EKMOBAIL_API_KEY']}"},
    timeout=20,
)
response.raise_for_status()
page = response.json()
06

Security

Price API keys are read-only and cannot access orders or administrative functions.

  • Call the API from your server, not directly from a public browser.
  • Keep the key in an environment variable or secret manager.
  • Use HTTPS only and never log the complete Authorization header.
  • Revoke a key in the customer account immediately if it may be exposed.