Getting Started

Everything you need to make your first API request.

Base URL

https://api.bandicootlab.com/rest/v1

Authentication

All requests require an API key passed via the apikey header.

Headers required on every request:

HeaderValue
apikeyYOUR_API_KEY
Accept-Profileapi

Making Your First Request

Fetch the list of all tested devices:

curl "https://api.bandicootlab.com/rest/v1/devices?select=id,brand,model" \
  -H "apikey: YOUR_API_KEY" \
  -H "Accept-Profile: api"

Filtering & Querying

The API supports PostgREST query syntax for filtering rows:

OperatorMeaningExample
eqEquals?brand=eq.Apple
neqNot equals?brand=neq.Apple
gt / gteGreater than / greater or equal?price=gte.999
lt / lteLess than / less or equal?price=lt.800
likePattern match?model=like.*Pro*
inIn list?brand=in.(Apple,Samsung,Google)
isIs null / true / false?foldable=is.true
curl "https://api.bandicootlab.com/rest/v1/devices?brand=eq.Apple&select=id,brand,model,price" \
  -H "apikey: YOUR_API_KEY" \
  -H "Accept-Profile: api"

Selecting Fields

Use the select query parameter to request only the fields you need:

curl "https://api.bandicootlab.com/rest/v1/devices?select=id,brand,model,price,soc" \
  -H "apikey: YOUR_API_KEY" \
  -H "Accept-Profile: api"

Ordering

Sort results with the order parameter. Append .asc or .desc to set direction. Chain multiple columns with commas.

# Single column
curl "https://api.bandicootlab.com/rest/v1/devices?select=id,brand,model,price&order=price.desc" \
  -H "apikey: YOUR_API_KEY" -H "Accept-Profile: api"

# Multiple columns
curl "https://api.bandicootlab.com/rest/v1/devices?select=id,brand,model&order=brand.asc,model.asc" \
  -H "apikey: YOUR_API_KEY" -H "Accept-Profile: api"

Pagination

Control page size with limit and offset:

# First page (10 items)
curl "https://api.bandicootlab.com/rest/v1/devices?select=id,brand,model&limit=10&offset=0" \
  -H "apikey: YOUR_API_KEY" -H "Accept-Profile: api"

# Second page
curl "https://api.bandicootlab.com/rest/v1/devices?select=id,brand,model&limit=10&offset=10" \
  -H "apikey: YOUR_API_KEY" -H "Accept-Profile: api"

Response Format

All responses are JSON arrays. A single resource filtered by ID still returns an array with one element. To get a single JSON object instead, add the header Accept: application/vnd.pgrst.object+json:

curl "https://api.bandicootlab.com/rest/v1/devices?id=eq.samsung_galaxy_s25_ultra" \
  -H "apikey: YOUR_API_KEY" \
  -H "Accept-Profile: api" \
  -H "Accept: application/vnd.pgrst.object+json"