1Кілт алыңыз
Кілттер серіктес кабинетінде, «API-кілттер» бөлімінде шығарылады: атауы, құқықтары - және кілт дайын. Оны сол жерде кез келген уақытта көріп, көшіруге болады. Кілтті бет немесе мобильді қосымша кодында емес, серверде сақтаңыз: ол арқылы сіздің бағаларыңыз көрінеді.
2Қолжетімділікті тексеріңіз
curl "https://api.orne.kz/v1/categories" \ -H "Authorization: Bearer orn_ваш_ключ"
Санаттар тізімі бар 200 жауабы - бәрі дұрыс. 401 - кілт берілмеген немесе қайтарып алынған, 403 - кілтте «Каталог, бағалар және қалдықтар» құқығы жоқ немесе деңгейіңізде әзірге API жоқ: себебі жауапта жазылған.
3Каталогты алыңыз
// JavaScript, Node 18+: все страницы каталога const base = 'https://api.orne.kz/v1', key = process.env.ORNE_KEY; let page = 1, items = []; while (true) { const res = await fetch(`${base}/products?per_page=100&page=${page}`, { headers: { Authorization: `Bearer ${key}` } }); const { data, meta } = await res.json(); items.push(...data); if (page * meta.per_page >= meta.total) break; page++; }
Әр тауарда - деңгейіңіз бойынша баға сатылары, қалдық, фотосы бар түстер және ÖRNE сайтындағы карточка мекенжайы.
4Тек өзгерістерді алыңыз
Синхрондау уақытын сақтап, келесі жолы оны updated_since ішінде жіберіңіз. Қалдықтарды әр 5-15 минут сайын, тауарлар мен бағаларды сағатына бір рет жаңартқан ыңғайлы.
// PHP: изменения остатков с прошлой синхронизации $since = urlencode($lastSync->format(DATE_ATOM)); $ch = curl_init("https://api.orne.kz/v1/stock?per_page=100&updated_since=$since"); curl_setopt_array($ch, [CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => ['Authorization: Bearer '.$key]]); $stock = json_decode(curl_exec($ch), true)['data']; foreach ($stock as $row) { // $row['sku'] - артикул цвета, $row['stock'] - свободный остаток }
Жауапта 429 болса - сұраныстар лимиті таусылды: Retry-After тақырыбында көрсетілген секунд күтіңіз.
Одан да оңайы - кабинетте stock.updated және price.updated вебхуктарына жазылу: ÖRNE өзгерістерді өзі жібереді.
5Тапсырыс рәсімдеңіз
curl -X POST "https://api.orne.kz/v1/orders" \
-H "Authorization: Bearer orn_ваш_ключ" -H "Content-Type: application/json" \
-H "Idempotency-Key: ZK-1042" \
-d '{"items":[{"sku":"ORN-0026","qty":100,"prints":[{"method":"dtf","zone":"chest","size":"до 15 см"}]}],
"delivery":{"type":"courier","city":"Астана","address":"ул. Примерная, 1"},"external_ref":"ZK-1042"}'Жауапта - ORN-... тапсырыс нөмірі және кезеңі. Әрі қарай оны /orders/{id} немесе order.status вебхугы арқылы қадағалаңыз. Кілттің «Тапсырыс жасау» құқығы қажет.
6Тауарларды өз сайтыңызда көрсетіңіз
ÖRNE карточкаларын сипаттамасын өңдемей жарияласаңыз, бетте <link rel="canonical" href="..."> тегін canonical_url өрісіндегі мекенжаймен көрсетіңіз - іздеу жүйелері беттерді телнұсқа деп санамайды. Фотоларды images ішіндегі сілтемелер бойынша алыңыз.
Жазыңыз - кілтіңіз бойынша сұраныстар журналын қарап, нақты қай жерде бұзылатынын айтамыз. Журнал сізге де кабинеттің «API-кілттер» бөлімінде көрінеді.
WhatsApp-қа жазу