Returns call records captured against Kajaria dealer showrooms for a given date range. Results can be narrowed by SAP code, encrypted store reference, call ID and call status, with pagination for large result sets.
This endpoint provides call history captured against Kajaria dealer showrooms over a specified date range.
from_date and to_date in YYYY-MM-DD format.
404 No record found, rather than a 200 response with an empty array.The API key is issued separately and identifies the integration.
Content-Type: application/json X-API-Key: <your key>
Where custom headers are not practical, the API key may also be supplied in the request body as api_key.
Only the date range is mandatory. All other parameters narrow the result.
| Field | Type | Required | Description |
|---|---|---|---|
| from_date | string | Required | Start date in YYYY-MM-DD format. |
| to_date | string | Required | End date in YYYY-MM-DD format, inclusive. |
| sap_code | string | Optional | Dealer SAP code. Unknown codes return 404 SAP code not found. |
| storelookup | string | Optional | Encrypted store token used by the other GMB APIs. |
| call_log_id | string | Optional | Exact match for a single call. |
| substatus | string | Optional | Filter by call result. See the substatus section. |
| page | integer | Optional | 1-based page number. Defaults to 1. |
| limit | integer | Optional | Records per page. Defaults to 50, maximum 500. |
{
"from_date": "2026-08-01",
"to_date": "2026-08-24"
}
{
"from_date": "2026-08-01",
"to_date": "2026-08-24",
"page": 1,
"limit": 50
}
call_log_id is applied in addition to the date range. A call outside the requested date range returns no records even when the ID is correct.Three call result values are stored. Two shortcuts are also accepted.
| Value | Meaning |
|---|---|
| Answered | Call connected to the showroom. |
| Missed | Call rang but was not answered. |
| Offline | Showroom number was unreachable. |
| connected | Shortcut matching Answered. |
| missed | Shortcut matching both Missed and Offline. |
Missed calls and want Offline kept separate, use "substatus": "Missed".200 is returned only when records are found.
{
"code": 200,
"status": true,
"user": "partner_name",
"from_date": "2026-08-01",
"to_date": "2026-08-24",
"filters": {
"sap_code": "1051615",
"call_log_id": null,
"substatus": "Missed"
},
"paging": {
"total_records": 1284,
"total_pages": 26,
"page": 1,
"limit": 50,
"returned": 50,
"has_more": true
},
"data": [
{
"website_id": 2157,
"sap_code": "1051615",
"dealership_name": "Aggarwal Bath Gallery (P) Ltd.",
"city": "Karnal",
"district": "Karnal",
"state": "Haryana",
"country": "India",
"pincode": "132001",
"call_log_id": "Zu1o-g7kBBA4VL9iwRxfL",
"call_number_with_c_code": "+919996405637",
"mobile": "9996405637",
"call_start_time": "2026-08-24 12:12:10",
"call_duration_minutes": 0.7,
"call_did_number": "8037838021",
"call_event_type": "MISSED",
"substatus": "Missed",
"call_recording_url": null,
"zoho_lead_id": null,
"zoho_synced_at": null,
"total_calls_from_caller": 0,
"prev_calls_count": 0,
"created_at": "2026-08-24 17:43:01"
}
]
}
| Field | Type | Description |
|---|---|---|
| website_id | integer | Kajaria internal store ID. |
| sap_code | string | Dealer SAP code. |
| dealership_name | string | Dealer name, or Dealer Name Not Available if not set. |
| city | string/null | Dealer city. |
| district | string/null | Dealer district. |
| state | string/null | Dealer state. |
| country | string/null | Dealer country. |
| pincode | string/null | Dealer pincode. |
| Field | Type | Description |
|---|---|---|
| call_log_id | string | Unique per call. Recommended key for de-duplication. |
| call_number_with_c_code | string | Caller number including country code. |
| mobile | string | Same caller number without country code, last 10 digits. |
| call_start_time | datetime | YYYY-MM-DD HH:MM:SS, IST. |
| call_duration_minutes | decimal | Call duration in decimal minutes, e.g. 0.7 is approximately 42 seconds. |
| call_did_number | string | Virtual/tracking number that was dialled. |
| call_event_type | string | Event type received from the telephony provider. |
| substatus | string | Answered, Missed or Offline. |
| call_recording_url | string/null | Direct audio URL, or null. |
| zoho_lead_id | string/null | Zoho lead associated with the call, if any. |
| zoho_synced_at | datetime/null | Time when the call reached Zoho, if synced. |
| total_calls_from_caller | integer | Lifetime calls from this caller. |
| prev_calls_count | integer | Prior calls before this call. |
| created_at | datetime | When the record reached the system. |
call_recording_url contains a direct audio link when a recording is available.
null value as final.Large result sets must be read page by page.
| Field | Description |
|---|---|
| total_records | Total records matching the filters across all pages. |
| total_pages | Calculated as ceil(total_records / limit). |
| page | Current 1-based page. |
| returned | Number of records returned in the current response. |
| has_more | true when further pages exist. |
call_start_time ascending, oldest first. A complete page-by-page walk therefore produces chronological call history.let page = 1; let all = []; while (true) { const res = await fetch( "https://dashboard.kajariaceramics.com/api/gmb/gmbtiles", { method: "POST", headers: { "Content-Type": "application/json", "X-API-Key": process.env.KAJARIA_API_KEY }, body: JSON.stringify({ from_date: "2026-08-01", to_date: "2026-08-24", sap_code: "1051615", page: page, limit: 500 }) } ); const json = await res.json(); if (!json.status) throw new Error(json.message); all.push(...json.data); if (!json.paging.has_more) break; page++; }
total_pages returns 404 Page out of range.Non-200 responses return status: false and a message. No data is included.
| Code | Message / Meaning |
|---|---|
| 400 | Missing or malformed input, including bad dates, invalid JSON or oversized call_log_id. |
| 401 | API key missing or invalid. |
| 404 | SAP code not found — code is not present in the dealer master. |
| 404 | No record found — filters are valid but no calls matched. |
| 404 | Page out of range — requested page exceeds total_pages. |
| 405 | HTTP method other than POST was used. |
| 500 | Server-side error. |
{
"code": 404,
"status": false,
"message": "No record found"
}
404 No record found as a normal no-data outcome rather than as a system failure. An unrecognised SAP code is separately reported as SAP code not found.curl -X POST https://dashboard.kajariaceramics.com/api/gmb/gmbtiles \ -H "Content-Type: application/json" \ -H "X-API-Key: YOUR_KEY" \ -d '{ "from_date": "2026-08-01", "to_date": "2026-08-31", "sap_code": "1051615" }'
curl -X POST https://dashboard.kajariaceramics.com/api/gmb/gmbtiles \ -H "Content-Type: application/json" \ -H "X-API-Key: YOUR_KEY" \ -d '{ "from_date": "2026-08-23", "to_date": "2026-08-23", "substatus": "missed" }'
{
"from_date": "2026-08-01",
"to_date": "2026-08-24",
"substatus": "Offline"
}
{
"from_date": "2026-08-24",
"to_date": "2026-08-24",
"call_log_id": "Zu1o-g7kBBA4VL9iwRxfL"
}
sap_code where possible.limit unnecessarily.call_log_id as the stable unique key when synchronising records into another system.zoho_lead_id may populate shortly afterwards.