This document describes the minimal REST API your system should expose so DEV‑EIGHT can check availability for a traveler’s requested dates and room category.
available boolean or a positive rooms count.
Configure your credentials and endpoint in your vendor profile.
https://provider.example.com/api/availability).
Choose one and configure it in your vendor profile:
| Method | Description | Headers / Transport |
|---|---|---|
| none | No authentication | – |
| apikey | API key in standard header | X-API-KEY: {api_key} |
| bearer | Bearer token | Authorization: Bearer {api_key} |
| basic | HTTP Basic Auth |
Username = api_key, Password = api_secret
|
| header | Custom header | {auth_header}: {api_key} |
DEV‑EIGHT can call your endpoint with either POST JSON, POST form, or GET query params. Default is POST JSON. You can change this in your vendor profile.
By default we send:
{
"checkin": "YYYY-MM-DD",
"checkout": "YYYY-MM-DD",
"adults": 2,
"room_category": "standard-room" // optional; may be omitted or empty
}
If your API uses different parameter names, set the “request map” fields in your vendor profile to match.
POST /api/availability HTTP/1.1
Host: provider.example.com
Content-Type: application/json
X-API-KEY: YOUR_KEY
{"checkin":"2025-10-10","checkout":"2025-10-12","adults":2,"room_category":"double"}
POST /api/availability HTTP/1.1 Host: provider.example.com Content-Type: application/x-www-form-urlencoded Authorization: Bearer YOUR_TOKEN checkin=2025-10-10&checkout=2025-10-12&adults=2&room_category=double
GET /api/availability?checkin=2025-10-10&checkout=2025-10-12&adults=2&room_category=double HTTP/1.1 Host: provider.example.com Authorization: Bearer YOUR_TOKEN
Return JSON with either a boolean available or a numeric
rooms > 0. We consider availability true if:
available is true, orrooms is a positive integer.{"available": true}
{"rooms": 3}
{
"status": "ok",
"available": false,
"rooms": 0,
"message": "Fully booked",
"rates": []
}
If your fields differ, set “Response Path: Available” and/or “Response
Path: Rooms Count” in your vendor profile (dot‑path, e.g.
data.availability.available).
curl -X POST "https://provider.example.com/api/availability" \
-H "Content-Type: application/json" \
-H "X-API-KEY: YOUR_KEY" \
-d '{"checkin":"2025-10-10","checkout":"2025-10-12","adults":2,"room_category":"double"}'
curl -X POST "https://provider.example.com/api/availability" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{"checkin":"2025-10-10","checkout":"2025-10-12","adults":2}'
curl -X POST "https://provider.example.com/api/availability" \ -u "API_KEY:API_SECRET" \ -d "checkin=2025-10-10&checkout=2025-10-12&adults=2"
Q: We return nested JSON, not plain
available.
A: Use response paths (dot‑path) to point to your fields,
e.g. data.result.available.
Q: We require GET requests with query params.
A: Set Method=GET and Format=query in your vendor
profile.
For questions, contact integration support.