API Request
We provide a simple REST API that can be used for the full SERP tracking workflow. All private endpoints require the following GET/POST parameters to be present in the request
Name | Type | Description |
---|---|---|
params | string | A JSON string containing the relevant parameters for the specific request (see each endpoint for more info). |
key | string | Your API key, supplied upon signup. |
auth | string | The signature for the request. See Authentication for details of how to generate this string. Under certain circumstances you may wish to remove authentication from your account; this is obviously less secure but is sometimes required to integrate into systems where it is impossible to generate an auth string. Non-auth accounts are only granted upon specific request. |
ts | unix timestamp | The timestamp that was used to create the 'auth' signature. |
Rate limiting
Currently, we only actively rate limit on the /priority/add endpoint but we reserve the right to rate limit any user at any time if their usage patterns start to degrade the service of other customers.
If you're being rate limited you will receive an HTTP 429 - Too Many Requests response. We use the leaky bucket algorithm for rate limiting requests so you only need to wait a short time before resuming requests.
API Response
The response format for the API is JSON only. If you absolutely require a different response format (e.g., serialized PHP or XML) then please get in touch with us via email. The JSON object will contain the following children:
Name | Type | Description |
---|---|---|
status | string | This will be either ok or error. |
message | string optional |
If the status above contains error then you will receive a corresponding explanation here. |
response_time | unix timestamp | The SERPmetrics system time of the response. |
data | array | The response body which will differ per request. See individual endpoint documentation for details. |
See also our HTTP Response Codes documentation.