Instant APIs

A REST API for every entity, live the moment you save

Every entity you create gets a REST API straight away, with filtering, sorting and pagination built in.

Make each entity public or private. Row-level security decides what each caller sees, every project is rate-limited, and your OpenAPI docs write themselves.

The same task, three ways

Every task works three ways, and all of them change the same project. Here's one: make a products entity public, with only the name and price exposed.

The Anythink dashboard

Choose what's public entity by entity, field by field.

The Anythink CLI

List the endpoints, then call one with your project's credentials.

$ anythink entities update products --public true$ anythink fields update products name --searchable --public$ anythink fields update products price --searchable --public$ anythink api$ anythink fetch "/entities/products/items?page=1&pageSize=20"
  • ✓products is publicly queryable
  • ✓Only name and price are public fields
  • ✓api lists every endpoint the entity now has
  • ✓fetch returns the first page of products

Claude, through MCP

Ask in plain text. It runs the same commands and shows you what it exposed.

you › “Make the products entity public with only name and price exposed, list the endpoints it now has, and show me the first page of products.”

  • ✓products set to public
  • ✓name and price marked publicly searchable
  • ✓Listed the entity's endpoints
  • ✓Returned the first page of products

What every endpoint already does

Always current

Nothing to regenerate or redeploy

Endpoints come from your data model as it is now, so a field added in the dashboard is in the next response.

Access

Permissions and row-level security on every request

Each call is checked against the caller's role, and row-level security filters the records it returns, including group-scoped reads for teams.

Search

Full-text search on the same entities

Fields you mark searchable are indexed as records change, and authenticated search applies the same row-level security as the entity API.

Automation

Every write can start a workflow

Creating, updating or deleting a record through the API can trigger a workflow that sends email or push, calls another API or runs a script.

A REST API you don't write, and don't have to babysit

Every entity gets the same REST surface, with permissions, row-level security and rate limiting applied to every call.

A full REST API for every entity

List, get, create, bulk create, update, delete and bulk delete for every entity you create. No controller code and no publish step.

In practice

APIs ready the moment you create an entity

list and paginate.ts
GET https://api.my.anythink.cloud/org/{org_id}/entities/products/items?page=1&pageSize=20&sortBy=price&sortDirection=asc
Authorization: Bearer <access token>

{
  "items": [
    { "id": 1, "name": "Starter", "price": 29 },
    { "id": 2, "name": "Pro", "price": 99 }
  ],
  "page": 1,
  "page_size": 20,
  "total_items": 2,
  "total_pages": 1,
  "has_next_page": false,
  "has_previous_page": false,
  "retrieval_time": 8
}

How it works

From a data model to a working API

01

Model an entity

Create it in the dashboard, with the CLI or by asking Claude. Its endpoints exist as soon as it's saved.

02

Call it

Send a user's JWT or an API key to /org/{org_id}/entities/{entity}/items. Filter, sort and paginate with query parameters.

03

Decide who can reach it

Give roles read, create, update and delete permissions per entity, and turn on row-level security so each user only gets their own records.

04

Open it up where it helps

Mark an entity and some of its fields public to serve them read-only from /public/items, with no credentials in your website's code.

05

Watch the headers

Every response carries X-RateLimit headers for your project's per-minute limit. Back off when you get a 429.

See it working

A new entity is already an API

Create an entity in the dashboard and its REST endpoints are live straight away.

Read the REST API guide →

Frequently Asked Questions

How do I get a REST API for my database?

Create an entity. Anythink adds list, get, create, update and delete endpoints for it at https://api.my.anythink.cloud/org/{org_id}/entities/{entity}/items straight away, and new fields appear in responses as soon as you add them. Run anythink api to list every endpoint in your project.

Is the API documented with OpenAPI?

Yes. Each project has an OpenAPI description generated from its current entities, alongside the platform endpoints for auth, files, search and more. Browse it in the Anythink dashboard, or list every route from the terminal with anythink api.

How do I filter and paginate API results?

Pass page and pageSize for pagination, sortBy and sortDirection for sorting, and one query parameter per field filter, for example ?status=paid&total=GTE:50. Operators include GT, GTE, LT, LTE, IN, ! for not equal, C for contains, SW for starts with and EW for ends with. pageSize can be up to 1,000.

Can I expose data publicly without an API key?

Yes. Mark the entity public and mark the fields you want to expose as public. GET /entities/{entity}/public/items then returns only those fields, read-only, with no credentials. Everything else stays behind a JWT or an API key.

Still have questions?

Get in Touch

More in the same project

Every feature reads from the same data model, so each one you add works with the rest.

Documentation

Guides and reference at docs.anythink.cloud.