Endpoint Playground
Returns Sonic Drive-In restaurants within a radius of a latitude/longitude, nearest first, one page at a time. Each result carries the same detail as GET /sonic/store -- address, phone, coordinates, open/closed status, amenities, weekly hours per fulfillment channel, and delivery-provider deep links -- plus distance_miles from the search centre, so ranking or mapping results needs no follow-up call per store. Use this instead of paging GET /sonic/sitemap when you know roughly where you are looking. An area with no restaurants returns an empty stores array with total_stores 0, not an error.
14 Oct 2026: 10 stores; 16 fields had a value in every checked item.
Sample value profiles: distance_miles: 0.65 to 4.4, median 2.83; has_drive_through: true in 8 of 10; amenities: median 3 entries.
curl 'https://api.crawlora.net/api/v1/sonic/nearby?latitude=35.4676&longitude=-97.5164' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| latitude | number | Yes | 35.4676 | Latitude of the search centre, -90 to 90 |
| longitude | number | Yes | -97.5164 | Longitude of the search centre, -180 to 180 |
| radius | integer | No | Search radius in miles, 1-100. Defaults to 25. | |
| limit | integer | No | Stores per page, 1-50. Defaults to 10. | |
| page | integer | No | Zero-based page number. Defaults to 0. |
{
"code": 200,
"msg": "OK",
"data": {
"latitude": 35.4676,
"longitude": -97.5164,
"radius_miles": 25,
"page": 0,
"limit": 10,
"total_stores": 80,
"total_pages": 8,
"is_last_page": false,
"returned_count": 10,
"stores": [
{
"store_id": "5003",
"display_name": "900 W. Sheridan, Oklahoma City, OK",
"distance_miles": 0.651,
"address": {
"line1": "900 W. Sheridan",
"city": "Oklahoma City",
"state": "OK",
"postal_code": "73106",
"country": "US"
},
"phone": "405-234-2299",
"latitude": 35.466153,
"longitude": -97.527819,
"status": "OPEN",
"timezone": "America/Chicago",
"has_drive_through": true,
"is_delivery_enabled": true,
"is_digitally_enabled": true,
"amenities": [
"Drive-thru",
"Delivery",
"Online Ordering"
],
"hours": [
{
"day_of_week": "MONDAY",
"opens": "06:00",
"closes": "02:45"
}
],
"service_hours": [
{
"type": "ORDER_AHEAD",
"hours": [
{
"day_of_week": "MONDAY",
"opens": "06:00",
"closes": "02:45"
}
],
"is_fulfillment": false,
"is_tipping_enabled": false
}
],
"delivery_providers": [
{
"name": "GrubHub",
"url": "https://www.grubhub.com/food/sonic_drive-in",
"is_active": true
}
]
}
],
"source_url": "https://api-idp.sonicdrivein.com/snc/digital-exp-api/v1/locations?...",
"fetched_at": "2026-09-05T12:00:00Z"
}
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.