Auto-generated data APIs

How Revenue Cloud generates tenant-scoped REST and GraphQL APIs from your app's tables.

Revenue Cloud generates tenant-scoped data APIs from the tables your app declares. Instead of writing CRUD endpoints, apps define tables in schema.json and the platform exposes REST and GraphQL endpoints for them automatically.

How it works

  1. You update schema.json with your tables.
  2. The platform applies the schema changes and scopes every table to the tenant.
  3. The data APIs refresh to match the new schema.
  4. Tenant-scoped REST and GraphQL endpoints become available.

Endpoint pattern

HTTP
GET /v1/apps/{appName}/tables/orders?select=id,total,status
POST /v1/apps/{appName}/tables/orders
PATCH /v1/apps/{appName}/tables/orders?id=eq.ord_123
DELETE /v1/apps/{appName}/tables/orders?id=eq.ord_123

Filtering, sorting, pagination, and joins are available on the generated endpoints. Business logic beyond CRUD still lives in your app's functions.

Tenant isolation

All generated endpoints are automatically scoped to your tenant. Requests carry tenant context, and your data is scoped to your tenant without any app-level filtering — so an app can query its data safely.

Best practices

  • Model entities and relationships as tables.
  • Keep table names stable.
  • Use views for read-optimized projections where needed.
  • Treat the per-tenant OpenAPI spec as the source of truth for generated endpoint details.
Was this page helpful?