7NOW API endpoint
Returns search-term completions for a partial query, e.g. "chi" -> "chips ahoy", "chips", "chicken". No store is required. q must be at least 3 characters -- shorter values return a typed invalid-param error, matching upstream's own enforced minimum. vertical selects which search index to complete against, and the indexes are materially different rather than variations on one list: for "chi", `convenience` answers "chips ahoy, chips, chicken wings" while `restaurant` answers "chipotle, chinese food, chili". `global` is a sparse cross-vertical index -- many prefixes legitimately return no suggestions there.
/7now/suggestQuery parameters:
q (required) — partial search term, at least 3 characters, e.g. chi. A shorter value returns a typed invalid-param error, matching upstream's own enforced minimum.
vertical (optional) — which search index to complete against. One of convenience, restaurant, global. Defaults to convenience. Any other value returns a typed invalid-param error.
convenience — 7NOW's own convenience-store catalogue. For chi: chips ahoy, chips, chicken, chicken wings.
restaurant — restaurant search. For the same chi: chicken, chipotle, chinese food, chili.
global — a sparse cross-vertical index. Many prefixes legitimately return no suggestions here (chi and cof return none; piz returns one), which is a real empty answer rather than an error.
Response includes query (echoed back), suggestions[] (plain completion strings), source_url, and fetched_at. A query with no completions returns a normal 200 with an empty suggestions array, not an error.
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| q | string | Yes | Partial search term, at least 3 characters. | chi | |
| vertical | string | No | convenience | Which search index to complete against. One of: convenience, restaurant, global. Defaults to convenience. Allowed values: convenience, restaurant, global. | convenience |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/7now/suggest?q=chi&vertical=convenience" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"query": "chi",
"suggestions": [
"chips ahoy",
"chips",
"chicken",
"chicken wings",
"chicken sandwich"
],
"source_url": "https://www.7now.com/api/bff/search-services/typeahead?q=chi&v=1",
"fetched_at": "2026-09-05T19:40:00Z"
}
}Request schema
No body schema
Response schema
#/definitions/sevennow.suggestResponseDoc
| 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.SuggestResponse | No | ||||
| data.fetched_at | string | No | ||||
| data.query | string | No | chi | |||
| data.source_url | string | No | ||||
| data.suggestions | array | No | chips ahoy,chips,chicken | |||
| 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 |
| 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/suggest?q=chi&vertical=convenience" \
-H "x-api-key: $CRAWLORA_API_KEY"