Skip to main content

Errors, pagination & filters

Understanding API returned status and errors

All successful API requests result in a response with either a 200 (OK) or 201 (Created) status code, indicating successful execution. In cases where an error occurs during the request processing, the server responds with an appropriate error status code, accompanied by a message detailing the nature of the error.

    {
"statusCode": 401,
"errorCode": "NOT_AUTHENTICATED",
"message": "Not authenticated",
"timestamp": "2023-10-14T00:12:22.470Z",
"path": "/v3/smart-contract-template",
"context": {},
}

Filtering your API calls

Paginating API calls

API calls can return a large number of items. It can be very useful to set the number of results per page and the number of pages returns.

This information is set in the path of your request. You can use:

  • limit: the number of results returned by page. By default, this number is set to 100.
  • page: the page returned. By default, the page returned is the first.

For example if you want to get the list of templates Starton will return, you will use the path:

/smart-contract-template?limit=5&page=2

In this example, the call will return results 6 to 10.

const axios = require("axios")

const axiosInstance = axios.create({
baseURL: "https://api.starton.com/v3",
headers: {
"x-api-key": "YOUR_API_KEY",
},
})

axiosInstance.get("/smart-contract-template?limit=5&page=2").then((response) => {
console.log(response.data)
})

Filtering your API calls

You can filter your API calls using parameters. For example, if you created watchers and want to get the watchers you created on a specific network you can use:

/watcher?network=network_of_your_watcher

If the watchers you need are on "avalanche-fuji", you could make the following call:

const axios = require("axios")

const axiosInstance = axios.create({
baseURL: "https://api.starton.com/v3",
headers: {
"x-api-key": "YOUR_API_KEY",
},
})

axiosInstance.get("/watcher?network=polygon-amoy").then((response) => {
console.log(response.data)
})
  • Understanding API returned status and errors
  • Filtering your API calls