Build custom logistics experiences with our powerful REST API. Integrate real-time shipping quotes, automated bookings, and status tracking directly into your application.
The Kyte API uses API keys to authenticate requests. You can view and manage your API keys in theSettings Dashboard.
curl -X GET "https://api.sendkyte.com/deliveries/track/KY123456" \ -H "x-api-key: kyte_pk_your_api_key_here"
Calculate delivery costs before booking.
fetch("https://api.sendkyte.com/deliveries/quote", {
method: "POST",
headers: {
"x-api-key": "kyte_pk_your_api_key_here",
"Content-Type": "application/json"
},
body: JSON.stringify({
pickup: "123 Marina, Lagos",
dropoff: "46 Wuse, Abuja",
items: [{ weight: 2, category: "Electronics" }]
})
})Webhooks allow your application to receive real-time notifications about shipment status changes. When a status changes, we'll send a POSTrequest to your configured URL.
{
"trackingId": "KY987654",
"status": "picked-up",
"statusLabel": "Item Picked Up",
"location": "Lagos Hub",
"description": "Your item has been picked up by our rider.",
"timestamp": "2024-05-09T12:00:00Z"
}Every webhook request includes an X-Kyte-Signature header. To ensure the request is legitimate, you should calculate the HMAC-SHA256 signature using yourwebhookSecret and compare it to the header.
Signature Calculation (Node.js)
const signature = crypto
.createHmac('sha256', webhookSecret)
.update(`${timestamp}.${JSON.stringify(payload)}`)
.digest('hex');