Local SEO
POST /seo/local/business-listings and /seo/local/questions-answers — nearby business discovery and Google Business questions.
Two geo-scoped endpoints for local SEO work. Both take a near centre point and a radius.
Business listings
/seo/local/business-listingsFinds businesses within a radius of a point, optionally filtered by query or category.
Request body
projectIdstringbodyrequiredOwning project.
near{latitude, longitude, radiusKm}bodyrequiredCentre point and search radius in kilometres.
querystringbodyFree-text business name or term to match.
categoriesstring[]bodyBetween 1 and 10 category filters.
limitnumberbodydefault: 20Results to return, between 1 and 50.
Response fields
businessesobject[]Matching business records.
curl -X POST https://api.misar.io/seo/local/business-listings \
-H "Authorization: Bearer $MISARSEO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"projectId": "5b1c7d2e-…",
"near": { "latitude": 12.9716, "longitude": 77.5946, "radiusKm": 5 },
"query": "coffee",
"limit": 20
}'Rate limit: 20 requests per 60 s.
Provider changes the data, not the contract
In free data mode this endpoint is backed by open mapping data; in paid mode it is backed by the commercial business-data provider. The request and response shapes are identical either way — expect richer records, not different fields, on the paid provider.
Questions and answers
/seo/local/questions-answersReturns the questions people ask about businesses matching a keyword near a point — the Google Business Q&A surface.
Request body
projectIdstringbodyrequiredOwning project.
keywordstringbodyrequiredThe business term to search for.
near{latitude, longitude, radiusKm}bodyrequiredCentre point and search radius in kilometres.
depthnumberbodydefault: 20How many results to walk, between 1 and 100.
languageCodestringbodydefault: enTwo-letter language code.
Response fields
questionsobject[]Questions and, where present, their answers.
curl -X POST https://api.misar.io/seo/local/questions-answers \
-H "Authorization: Bearer $MISARSEO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"projectId": "5b1c7d2e-…",
"keyword": "dentist",
"near": { "latitude": 12.9716, "longitude": 77.5946, "radiusKm": 10 },
"depth": 20
}'Rate limit: 20 requests per 60 s.
Status codes
| Code | Meaning |
|---|---|
200 | Results returned |
400 | VALIDATION_ERROR — schema failure. The message is formatted <field path>: <reason>. |
401 | UNAUTHENTICATED |
404 | NOT_FOUND — project not found |
429 | RATE_LIMITED |
501 | SEO_DATA_UNAVAILABLE |
502 | UPSTREAM_UNAVAILABLE |
AI Search
Brand radar, prompt explorer, and AI citation checks — /seo/ai/brand-lookup, /seo/ai/brand-lookup/:jobId/status, /seo/ai/prompt-explorer, /seo/citations.
Google Search Console
Read connection status, query GSC search-analytics performance, and run URL inspections — /seo/gsc/connect, /performance, /inspect-urls.