Getting started
All API method invocations are HTTP GET requests to the URL:
https://api.seranking.com/v1/local-marketingThe API key must be transferred via the apikey query parameter for each invoked method or via the Authorization HTTP header. All data is returned in JSON format.
GET https://api.seranking.com/v1/local-marketing/locations
Authorization: Token YOUR_API_KEYGET https://api.seranking.com/v1/local-marketing/locations?apikey=YOUR_API_KEYEvery reporting endpoint is scoped to a location via the location_id path parameter — the ID of a location added to Local Marketing in your account.
Usage and limits
Local Marketing API endpoints don’t consume API credits. Access is covered by your subscription’s Local Marketing limits: every plan includes 3 connected locations, and additional locations can be purchased separately. The endpoints themselves are free to call — only the standard per-second rate limit applies.
Pagination
List endpoints use one of three pagination styles, mirroring the upstream services:
- Offset-based —
locations,citations,reviews,rankings/keywords, andrankings/positionsacceptlimit/offsetand return apaginationobject (total,limit,offset). Note: onlyitemsis guaranteed in list responses — treat a missingpaginationobject as end-of-data and page until a response returns fewer thanlimititems. - Token-based — the Google Business Profile keyword report accepts
page_size/page_tokenand returnsnext_page_token(nullwhen there are no more pages). - Limit-only — the audit report history accepts
limit(andstart_date).
Errors
The API uses standard HTTP status codes; only 2xx responses indicate success. Error responses return a JSON body with an error message, for example { "message": "Not found" }.
| Status | Meaning |
|---|---|
| 400 | Bad request — invalid parameter value. |
| 401 | Unauthorized — missing or invalid API key. |
| 403 | Forbidden — no access to the requested location or feature. |
| 404 | Not found — the location or resource does not exist. |
| 429 | Too many requests — the per-second rate limit was exceeded. |
