Auto REST API

Every database table is instantly available as a RESTful API — no code, no configuration. PostgREST-style querying out of the box.

Base URL

https://<subdomain>.zmesh.in/v1/rest/<table>

All requests require the apikey header with your project API key.

Query Rows

GET /v1/rest/{table}

curl https://abc123.zmesh.in/v1/rest/posts \
  -H "apikey: your-api-key"

// Response
[
  { "id": 1, "title": "Hello", "body": "World", "created_at": "2026-03-24T..." },
  { "id": 2, "title": "Second Post", "body": "Content" }
]

Filtering

# Exact match
GET /v1/rest/posts?id=eq.1

# Greater than
GET /v1/rest/posts?views=gt.100

# Like (pattern match)
GET /v1/rest/posts?title=like.*Hello*

# Multiple filters (AND)
GET /v1/rest/posts?status=eq.published&views=gt.50

# IN operator
GET /v1/rest/posts?id=in.(1,2,3)

Sorting & Pagination

# Sort descending
GET /v1/rest/posts?order=created_at.desc

# Pagination
GET /v1/rest/posts?limit=10&offset=20

# Select specific columns
GET /v1/rest/posts?select=id,title,created_at

Insert Rows

POST /v1/rest/{table}

curl -X POST https://abc123.zmesh.in/v1/rest/posts \
  -H "apikey: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"title": "New Post", "body": "Content here"}'

// Response
{ "id": 3, "title": "New Post", "body": "Content here" }

Update Rows

PATCH /v1/rest/{table}?{filter}

curl -X PATCH "https://abc123.zmesh.in/v1/rest/posts?id=eq.1" \
  -H "apikey: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"title": "Updated Title"}'

Delete Rows

DELETE /v1/rest/{table}?{filter}

curl -X DELETE "https://abc123.zmesh.in/v1/rest/posts?id=eq.1" \
  -H "apikey: your-api-key"

Filter Operators

OperatorDescriptionExample
eqEqual?status=eq.active
neqNot equal?status=neq.deleted
gtGreater than?price=gt.100
gteGreater than or equal?price=gte.100
ltLess than?price=lt.50
lteLess than or equal?price=lte.50
likePattern match?name=like.*john*
inIn list?id=in.(1,2,3)
isIs null/not null?deleted_at=is.null