7NOW API endpoint
Resolves a free-text delivery address, street, city and state, or postal code to the nearest 7NOW-enabled 7-Eleven stores, nearest first. Each store carries its store_id, address, coordinates, straight-line distance in miles from the resolved address, the banner it trades under, its Nielsen DMA, and its per-day alcohol sale windows -- upstream's own encoding of the local law, which is why a day can hold more than one window (a New York store's Sunday runs 0000-0200 and 0800-2359). An empty alcohol_sale_hours means upstream publishes no windows for that store, which is not the same as it selling no alcohol. The response also carries the Uber H3 cell for the resolved address. Use store_id with GET /7now/catalog, /7now/categories, /7now/deals, /7now/offers or /7now/combos to browse that store. An address that cannot be geocoded, or one with no nearby 7NOW coverage, returns a 404.
/7now/storesResolves a free-text delivery address, street, city and state, or postal code to the nearest 7NOW-enabled 7-Eleven stores, nearest first, using 7now.com's own address-resolution flow (address autocomplete, then a nearby-store lookup).
Query parameters:
address (required) — free-text delivery address, street, city and state, or postal code, e.g. 350 5th Ave, New York, NY.Response includes query (echoed back), resolved_address, latitude, longitude of the resolved location, h3_index (the Uber H3 cell, resolution 7, upstream assigns to the resolved address — a stable geospatial key for grouping or caching lookups by area), count, source_url, fetched_at, and stores[].
Each store carries store_id, name, address, city, state, zip, county, country, latitude, longitude, distance_miles (straight-line distance from the resolved address), store_category, brand, brand_logo_url, dma, and alcohol_sale_hours[].
Notes on the market and alcohol fields:
brand is the banner the store trades under. 7-Eleven operates several (Speedway, Stripes); every store measured so far reports 7-Eleven, so treat a different value as possible rather than impossible.dma is the Nielsen Designated Market Area, e.g. New York Ny, Austin Tx. It groups stores by media market rather than by state or county.alcohol_sale_hours[] is upstream's own encoding of the local alcohol law: one entry per day of week, each with day and windows[] (start_time, end_time as local-time HHMM strings, so 0000–2359 is the whole day). windows is a list because a day can be split — a New York store reports Sunday as 0000–0200 plus 0800–2359. A day present with an empty windows list means no alcohol may be sold that day.alcohol_sale_hours means upstream publishes no windows for that store, which is not the same as the store selling no alcohol: New York stores return a full week while Austin, TX stores return nothing at all.| Field | Filled in, of 17 checked | Values in the sample |
|---|---|---|
| store_id | 17 | |
| name | 17 | “7-11 Str 520 Fifth Ave” and 15 other values |
| address | 17 | |
| city | 17 | Brooklyn (11), New York (6) |
| state | 17 | NY in all 17 |
| zip | 17 | |
| county | 17 | Kings County (10), New York County (6), Sullivan County (1) |
| country | 17 | US in all 17 |
| latitude | 17 | |
| longitude | 17 | |
| distance_miles | 17 | 0.44 to 4.91, median 3.14 |
| store_category | 17 | 7now in all 17 |
| brand | 16 | 7-Eleven in all 16 |
| brand_logo_url | 16 | d1se8uetpsj0rs.cloudfront.net |
| dma | 17 | New York Ny in all 17 |
| alcohol_sale_hours | 17 | median 7 entries |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| address | string | Yes | Free-text delivery address, street, city and state, or postal code. | 350 5th Ave, New York, NY | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/7now/stores?address=350+5th+Ave%2C+New+York%2C+NY" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"query": "350 5th Ave, New York, NY",
"resolved_address": "350 5th Ave, New York, NY 10118, USA",
"latitude": 40.7480997,
"longitude": -73.9849926,
"h3_index": "872a100d2ffffff",
"stores": [
{
"store_id": "39226",
"name": "7-Eleven",
"address": "866 6TH AVE",
"city": "New York",
"state": "NY",
"zip": "10001",
"county": "New York County",
"country": "US",
"latitude": 40.747508,
"longitude": -73.989099,
"distance_miles": 0.22,
"store_category": "7now",
"brand": "7-Eleven",
"brand_logo_url": "https://d1se8uetpsj0rs.cloudfront.net/media/StoreBrands/711_96.png",
"dma": "New York Ny",
"alcohol_sale_hours": [
{
"day": "Sunday",
"windows": [
{
"start_time": "0000",
"end_time": "0200"
},
{
"start_time": "0800",
"end_time": "2359"
}
]
},
{
"day": "Monday",
"windows": [
{
"start_time": "0000",
"end_time": "2359"
}
]
}
]
}
],
"count": 13,
"source_url": "https://www.7now.com/api/bff/location-services/getAddress",
"fetched_at": "2026-09-05T19:25:33Z"
}
}Request schema
No body schema
Response schema
#/definitions/sevennow.storesResponseDoc
| 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 | sevennow.StoresResponse | No | ||||
| data.count | integer | No | 15 | |||
| data.fetched_at | string | No | ||||
| data.h3_index | string | No | 872a100d2ffffff | H3Index is the Uber H3 cell (resolution 7) upstream assigns to the resolved address -- a stable geospatial key for grouping or caching lookups by area. | ||
| data.latitude | number | No | 40.7480997 | |||
| data.longitude | number | No | -73.9849926 | |||
| data.query | string | No | 350 5th Ave, New York, NY | |||
| data.resolved_address | string | No | 350 5th Ave, New York, NY 10118, USA | |||
| data.source_url | string | No | ||||
| data.stores | array | No | ||||
| data.stores[].address | string | No | 866 6TH AVE | |||
| data.stores[].alcohol_sale_hours | array | No | AlcoholSaleHours are the windows during which the store may sell alcohol, per day of week -- upstream's own encoding of the local law. A New York store, for instance, reports Sunday as two windows (00:00-02:00 and 08:00-23:59) and every other day as one. An empty list means upstream publishes no windows for this store. That is not the same as "sells no alcohol": Austin, TX stores return an empty list while New York stores return a full week. | |||
| data.stores[].alcohol_sale_hours[].day | string | No | Sunday | |||
| data.stores[].alcohol_sale_hours[].windows | array | No | Windows are that day's permitted selling periods. More than one means the day is split, as New York's Sunday rule does. | |||
| data.stores[].alcohol_sale_hours[].windows[].end_time | string | No | 2359 | |||
| data.stores[].alcohol_sale_hours[].windows[].start_time | string | No | 0800 | |||
| data.stores[].brand | string | No | 7-Eleven | Brand is the banner the store trades under. 7-Eleven operates several (Speedway, Stripes); every store measured so far reports "7-Eleven", so treat a different value as possible rather than impossible. | ||
| data.stores[].brand_logo_url | string | No | ||||
| data.stores[].city | string | No | New York | |||
| data.stores[].country | string | No | US | |||
| data.stores[].county | string | No | New York County | |||
| data.stores[].distance_miles | number | No | 0.22 | |||
| data.stores[].dma | string | No | New York Ny | DMA is the Nielsen Designated Market Area the store sits in, e.g. "New York Ny", "Austin Tx". It groups stores by media market rather than by state or county. | ||
| data.stores[].latitude | number | No | 40.747508 | |||
| data.stores[].longitude | number | No | -73.989099 | |||
| data.stores[].name | string | No | 7-Eleven | |||
| data.stores[].state | string | No | NY | |||
| data.stores[].store_category | string | No | 7now | |||
| data.stores[].store_id | string | No | 39226 | |||
| data.stores[].zip | string | No | 10001 | |||
| 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/7now/stores?address=350+5th+Ave%2C+New+York%2C+NY" \
-H "x-api-key: $CRAWLORA_API_KEY"