quiltAPI
Sign inStart building
Visual API builder

Build a REST API from the data you already have

Connect Google Sheets and REST APIs, shape the data in a visual editor, and deploy it as a documented JSON endpoint with authentication, rate limits and caching.

Free plan: 2 sources, 2 endpoints, 25,000 requests a month. No card required.

left · nested
Gsproducts2m ago
skus
names
pricen
categorys
Modifiers · 1
price> 0
≡stock14s ago
skus
warehouses
on_handn
GET/productslive
Response · 5 fields
5 fields · 1 nested
skus
names
pricen
categorys
stock{}
warehouses
on_handn
412 records
How it works

Three steps from a data source to a live endpoint

A workspace holds your sources, the nodes that shape their records and the endpoints they deploy to.

01

Connect a source

Paste a Google Sheets or REST API URL and test the connection. The schema is detected and the first sync runs before the dialog closes. After that, each source syncs on its own interval, down to 1 minute on Scale.

02

Shape it in the editor

Add filter, transform and aggregate nodes between a source and its endpoint. Join two sources into nested or flat records. Every node previews its output against real records.

03

Deploy the endpoint

Deploy the workspace to a stable URL on api.quiltapi.com. Keep it public or require an API key. Paging, sorting, filtering and OpenAPI docs are included.

Connectors

Google Sheets and REST APIs today, more connectors in progress

Connect a spreadsheet or an existing API, and each sync keeps the endpoint current. For a short lookup table, type the records by hand as a static source.

Gs
Google SheetsRows upserted on a match key or by row position
available
≡
REST APISchema detected from the response when you test
available
in progress
PgPostgreSQLsoon
MyMySQLsoon
MoMongoDBsoon
CsCSVsoon
OaOpenAPIsoon
Request a source
Read the connector guides
The endpoint

Every workspace deploys as a documented JSON endpoint

No servers to run and no glue code to maintain. Each endpoint ships with authentication, rate limits, caching headers and generated documentation your consumers can build against.

  • Public, or private behind an API key
  • Page, sort, filter and select fields from the query string
  • ETag responses, so polling clients get a 304 instead of a payload
  • Join two sources into one nested JSON response
  • Generated OpenAPI docs, with curl, fetch and Python samples
GETproducts200 · 84ms
https://api.quiltapi.com/data/v1/acme/shop/products
ETag: "5c1e9a07"
{
  "data": {
    "products": [
      {
        "sku": "TL-0142",
        "name": "Torque wrench",
        "price": 48.5,
        "category": "tools",
        "stock": { "warehouse": "north", "on_hand": 37 }
      },
      {
        "sku": "TL-0157",
        "name": "Bit set, 32 pieces",
        "price": 21,
        "category": "tools",
        "stock": { "warehouse": "north", "on_hand": 112 }
      }
    ]
  },
  "meta": {
    "page": 1,
    "page_size": 2,
    "sources": {
      "products": { "total": 64, "has_more": true }
    },
    "fetched_at": "2026-10-06T09:12:44Z",
    "stale": false
  }
}
Monitoring

See every request, and every sync, after you ship

The dashboard reports request volume, error rate and response time for each endpoint over the last 24 hours, 7 days or 30 days. Source health and sync failures are shown alongside them.

GETproductslast 24h
requests18,402
error rate0.4%
p95112ms
24h ago12h agonow
Sources
Gsproductssynced 2m ago
≡stocksync failed · 401
Gssupplierssynced 41m ago

Ship your first endpoint today

Connect a source, wire it up in the editor, and deploy. The free plan needs no card, and every plan is cancellable at any time.