<vintage>/zbp), 1998 to the latest published vintage (the series stops at 2018). zip is required. Earlier vintages publish SIC codes and are 400. The industry variable is renamed per vintage and is resolved from the vintage's own variable list. The geography clause is the vintage's own name (zipcode then zip code). Size classes stay pinned to all establishments. A vintage past the latest is an empty answer with a reason. Do not GET *_LABEL columns. Do not pull every ZIP.curl --location 'https://sugra.ai/api/v1/census/business/zip?year=2018&zip=90210&naics=00' \
--header 'x-api-key: ABCD314159'{
"data": {
"year": 0,
"dataset": "string",
"zip": "string",
"count": 0,
"data": [
{
"name": "string",
"zip": "string",
"size": "string",
"size_label": "string",
"naics": "string",
"naics_label": "string",
"estab": 0,
"emp": 0,
"payann": 0,
"payqtr1": 0,
"property1": "string",
"property2": "string"
}
],
"source": "string",
"naics": {
"code": "string",
"label": "string",
"variable": "string",
"property1": "string",
"property2": "string"
},
"reason": "string",
"property1": "string",
"property2": "string"
},
"meta": {
"endpoint": "/api/v1/fred/us/cpi",
"data_time": "2026-04-16T14:30:00Z",
"response_time": "2026-04-16T14:30:12Z",
"provider": "Sugra API v1.0.1",
"data_age_days": 0,
"source": "string",
"attribution": "string",
"fallback_used": true,
"fallback_chain": [
"string"
],
"cached": true,
"stale": true,
"stale_since": "string",
"period": "string",
"notes": "string"
}
}