Raising Cane's API endpoint
Returns Raising Cane's restaurants within a radius of a latitude/longitude, ordered nearest first, each with its distance in miles and kilometres, address, coordinates, timezone, price tier and which pickup/delivery services it offers. This proximity result carries less detail than GET /raisingcanes/store (Raising Cane's own nearby-search key is not configured with hours or phone) -- each result's `path` chains straight into GET /raisingcanes/store for the full record. `total_in_radius` reports how many stores fall inside the radius overall, which is usually far more than one page; use `offset` to walk it. A coordinate with no Raising Cane's nearby returns an empty list rather than an error.
/raisingcanes/nearbyThis is the proximity search the directory browse cannot do. /api/v1/raisingcanes/directory walks a state → city → store tree, which means knowing the administrative path in advance; this answers "what is near this point" directly and gives each result's distance.
Each store carries the path that /api/v1/raisingcanes/store takes, so the two chain without any string surgery: search here, then fetch the detail record by path.
This result carries less detail than /api/v1/raisingcanes/store — Raising Cane's own nearby-search API key is not configured with hours or phone. Use path to fetch the full record when you need those.
Query parameters:
latitude (required) — search center latitude, e.g. 40.7128.longitude (required) — search center longitude, e.g. -74.0060. A genuinely-zero coordinate is accepted; it is distinguished from an omitted one.radius (optional, default 25, max 100) — search radius in miles.limit (optional, default 10, max 50) — maximum stores to return.offset (optional, default 0) — result offset, for paging through total_in_radius.Response includes stores[], count, total_in_radius, radius, source_url, and fetched_at. Each store has store_id, name, address, latitude, longitude, distance_miles, distance_kilometers, timezone, price_range, fulfillment_services[], and path.
| Field | Filled in, of 8 checked | Values in the sample |
|---|---|---|
| store_id | 8 | |
| name | 8 | Raising Cane's Chicken Fingers in all 8 |
| address | 8 | |
| latitude | 8 | |
| longitude | 8 | |
| distance_miles | 8 | 0.26 to 4.7, median 2.47 |
| distance_kilometers | 8 | 0.42 to 7.56, median 3.98 |
| timezone | 8 | America/New_York in all 8 |
| price_range | 8 | ONE in all 8 |
| fulfillment_services | 8 | median 2 entries |
| path | 8 | “ny/new-york/185-broadway” and 7 other values |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| latitude | number | Yes | Search center latitude | 40.7128 | |
| longitude | number | Yes | Search center longitude | -74.006 | |
| radius | integer | No | Search radius in miles, 1-100 (default 25) | 25 | |
| limit | integer | No | Maximum stores to return, 1-50 (default 10) | 10 | |
| offset | integer | No | Result offset for paging through total_in_radius (default 0) | 0 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/raisingcanes/nearby?latitude=40.7128&longitude=-74.006&limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"stores": [
{
"store_id": "C986",
"name": "Raising Cane's Chicken Fingers",
"address": {
"line1": "185 Broadway",
"city": "New York",
"region": "NY",
"postal_code": "10038",
"country": "US"
},
"latitude": 40.710412,
"longitude": -74.009937,
"distance_miles": 0.26,
"distance_kilometers": 0.42,
"timezone": "America/New_York",
"price_range": "ONE",
"fulfillment_services": [
"IN_STORE_PICKUP",
"DELIVERY_NOT_OFFERED"
],
"path": "ny/new-york/185-broadway"
}
],
"count": 1,
"total_in_radius": 69,
"radius": 5,
"source_url": "https://cdn.yextapis.com/v2/accounts/me/entities/geosearch?api_key=...&v=20220101&location=40.7128%2C-74.006&radius=5&limit=1",
"fetched_at": "2026-09-01T17:10:00Z"
}
}Request schema
No body schema
Response schema
#/definitions/raisingcanes.nearbyResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | Code is the HTTP status code or a custom code used to indicate the result of the request @example 200 | |||
| data | raisingcanes.NearbyResponse | No | ||||
| data.count | integer | No | 10 | |||
| data.fetched_at | string | No | ||||
| data.radius | integer | No | 25 | |||
| data.source_url | string | No | ||||
| data.stores | array | No | ||||
| data.stores[].address | raisingcanes.StoreAddress | No | StoreAddress record, 6 fields: city, country, line1, line2, postal_code, region. Described under Raising Cane's Store API. | |||
| data.stores[].distance_kilometers | number | No | 0.42 | |||
| data.stores[].distance_miles | number | No | 0.26 | DistanceMiles is measured from the requested coordinate. | ||
| data.stores[].fulfillment_services | array | No | FulfillmentServices are the pickup/delivery service flags Raising Cane's publishes for this store, e.g. IN_STORE_PICKUP, DELIVERY_NOT_OFFERED. | |||
| data.stores[].latitude | number | No | 40.710412 | |||
| data.stores[].longitude | number | No | -74.009937 | |||
| data.stores[].name | string | No | Raising Cane's Chicken Fingers | |||
| data.stores[].path | string | No | Path is the /raisingcanes/store path for this store, so a caller can go straight to the detail endpoint. | |||
| data.stores[].price_range | string | No | ONE | PriceRange is Raising Cane's own relative price tier, e.g. ONE. | ||
| data.stores[].store_id | string | No | C986 | |||
| data.stores[].timezone | string | No | America/New_York | |||
| data.total_in_radius | integer | No | 69 | TotalInRadius is how many stores fall inside the radius overall, which is usually far more than one page. Use it with `offset` to page. | ||
| msg | unknown | No | Msg is the message that describes the result of the request @example "Request successful" |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/raisingcanes/nearby?latitude=40.7128&longitude=-74.006&limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"