Zhvilluesit
Lidheni BeeRoutes me gjithçka që përdorni
Një API REST e thjeshtë me qasje leximi dhe shkrimi, webhooks të nënshkruara për çdo ndryshim dërgese dhe lidhje të gatshme për Shopify dhe Zapier.
API REST
Krijoni porosi dhe klientë, lexoni produktet, stokun dhe statusin e dërgesës — JSON përmes HTTPS.
Webhooks
Merrni një POST të nënshkruar sapo porosia konfirmohet, nis, dorëzohet ose dështon.
Shopify
Porositë e reja në Shopify bëhen dërgesa automatikisht; anulimet pasojnë.
Zapier
Lidheni BeeRoutes me Google Sheets, Slack, kontabilitetin dhe mbi 7.000 aplikacione — pa kod.
Autentikimi
Krijoni një çelës API në BeeRoutes te Integrimet → Çelësat API (vetëm llogaritë e zyrës). Dërgojeni në kokën Authorization të çdo kërkese. Çelësat i përkasin kompanisë suaj: shohin vetëm të dhënat tuaja.
curl https://app.beeroutes.com/api/v1/orders?status=delivered \
-H "Authorization: Bearer br_live_…"Kufiri: 300 kërkesa në minutë për çelës. Listat kthejnë deri në 200 elemente (limit, offset).
Pikat fundore
https://app.beeroutes.com/api/v1
| Metoda | Shtegu | Çfarë bën |
|---|---|---|
| GET | /meKontrollon çelësin: kthen kompaninë tuaj | Kontrollon çelësin: kthen kompaninë tuaj |
| GET | /productsLista e produkteve (filtra: sku, q, active) | Lista e produkteve (filtra: sku, q, active) |
| GET | /products/{id}Një produkt me çmim, TVSH dhe stok | Një produkt me çmim, TVSH dhe stok |
| GET | /customersLista e klientëve (filtra: email, q, active) | Lista e klientëve (filtra: email, q, active) |
| POST | /customersKrijon klient — pa lat/lng adresa gjendet në hartë | Krijon klient — pa lat/lng adresa gjendet në hartë |
| GET | /customers/{id}Një klient | Një klient |
| PATCH | /customers/{id}Ndryshon klientin (vetëm fushat që dërgoni) | Ndryshon klientin (vetëm fushat që dërgoni) |
| GET | /ordersLista e porosive (filtra: status, date, from, to, customer_id, external_ref) | Lista e porosive (filtra: status, date, from, to, customer_id, external_ref) |
| POST | /ordersKrijon porosi — produktet sipas product_id ose sku, klienti sipas id, email ose të dhënave | Krijon porosi — produktet sipas product_id ose sku, klienti sipas id, email ose të dhënave |
| GET | /orders/{id}Një porosi me artikujt, shoferin, ETA-n dhe dëshminë e dërgesës | Një porosi me artikujt, shoferin, ETA-n dhe dëshminë e dërgesës |
| POST | /orders/{id}/confirmKonfirmon një porosi në pritje (lëshon faturën) | Konfirmon një porosi në pritje (lëshon faturën) |
| POST | /orders/{id}/cancelAnulon porosinë para se të nisë (stoku kthehet) | Anulon porosinë para se të nisë (stoku kthehet) |
| GET | /webhooksLista e webhooks | Lista e webhooks |
| POST | /webhooksAbonon një URL te ngjarjet (kthen sekretin e nënshkrimit një herë) | Abonon një URL te ngjarjet (kthen sekretin e nënshkrimit një herë) |
| DELETE | /webhooks/{id}Çabonohet | Çabonohet |
Krijimi i një porosie
Dërgoni external_ref me id-në e porosisë suaj: nëse e njëjta porosi dërgohet dy herë, kthehet ajo ekzistuese në vend të një kopjeje. Shtoni "confirm": true për ta konfirmuar menjëherë.
curl -X POST https://app.beeroutes.com/api/v1/orders \
-H "Authorization: Bearer br_live_…" \
-H "Content-Type: application/json" \
-d '{
"external_ref": "PO-10442",
"customer_email": "orders@cafe-central.com",
"delivery_date": "2026-11-03",
"slot_from": "08:00",
"slot_to": "11:00",
"items": [
{ "sku": "WAT-05", "quantity": 20 },
{ "sku": "JUI-01", "quantity": 6 }
]
}'Webhooks
BeeRoutes dërgon me POST një ngjarje JSON në URL-në tuaj kur një porosi krijohet, konfirmohet, i caktohet shoferit, niset, dorëzohet, dështon ose anulohet. Shtoni webhooks te Integrimet ose me API.
Ngjarjet
order.createdorder.confirmedorder.assignedorder.in_transitorder.deliveredorder.failedorder.cancelled{
"id": "evt_5f2c…",
"event": "order.delivered",
"created_at": "2026-11-03T09:42:10.000Z",
"data": {
"id": 1842,
"number": "ORD-2026-01842",
"external_ref": "PO-10442",
"status": "delivered",
"delivery_date": "2026-11-03",
"customer": { "id": 77, "business_name": "Café Central", … },
"items": [ { "sku": "WAT-05", "quantity": 20, "delivered_qty": 20, … } ],
"total": 182.4,
"proof": { "receiver_name": "Maria", "has_signature": true, "has_photo": false },
"delivered_at": "2026-11-03T09:42:08.000Z"
}
}Verifikoni nënshkrimin
Çdo kërkesë ka kokën BeeRoutes-Signature: t (koha unix) dhe v1, HMAC-SHA256 i “t.body” me sekretin e webhook-ut. Përgjigjuni me çfarëdo 2xx brenda 10 sekondave; dërgimet e dështuara provohen edhe një herë dhe webhook-u çaktivizohet pas 25 dështimesh radhazi. Përgjigjuni me 410 për t'u çabonuar.
import crypto from "node:crypto";
// header: "t=1762162930,v1=5d41…"
function verify(rawBody, header, secret) {
const { t, v1 } = Object.fromEntries(header.split(",").map((p) => p.split("=")));
const expected = crypto.createHmac("sha256", secret).update(`${t}.${rawBody}`).digest("hex");
const fresh = Math.abs(Date.now() / 1000 - Number(t)) < 300;
return fresh && crypto.timingSafeEqual(Buffer.from(v1), Buffer.from(expected));
}Gabimet
Gabimet përdorin kodet e statusit HTTP dhe një trup JSON me kod dhe mesazh:
{ "error": { "code": "product_not_found", "message": "Unknown or inactive products: sku JUI-09" } }401 çelës mungon ose i pavlefshëm · 404 nuk u gjet · 409 nuk lejohet në statusin e porosisë · 422 fusha të pavlefshme, SKU e panjohur ose adresë e pagjetur · 429 shumë kërkesa
Shopify
Pa aplikacion për të instaluar. Në BeeRoutes hapni Integrimet → Shopify, kopjoni URL-në tuaj private të webhook-ut në Shopify (Settings → Notifications → Webhooks, “Order creation” dhe “Order cancellation”) dhe ngjitni sekretin e nënshkrimit të Shopify. Produktet përputhen sipas SKU-së; klientët e rinj krijohen nga adresa e dërgesës.
Zapier
Përdorni “Webhooks by Zapier”: Catch Hook si webhook i BeeRoutes për të nisur Zap-e kur ndryshojnë porositë, dhe POST drejt API-së me çelësin tuaj për të krijuar porosi ose klientë nga çdo aplikacion.
Hap Integrimet →Planifiko rrugët e nesërme që sot
Fillo provën falas 14-ditore dhe planifiko ditën e parë brenda një pasditeje.