Skip to main content
The Fibery HTTP API lets you integrate Fibery with external systems and automate routine tasks. The API covers the following domains:

Schema

Manage databases, fields, and workspace structure.

Entities

Create, read, update, and delete data records.

Views

Create and configure saved views programmatically.

Files

Upload and attach files to entities.

Webhooks

Subscribe to entity changes in real-time.

History

Access a paginated log of every workspace change.
Examples in this guide run against a Cricket Space. Install the Cricket template into your own workspace to run every example as-is and inspect the real responses.

Commands API

Every read or write is a POST to /api/commands with a command name and arguments. The endpoint works with batches of commands. The request should contain an array of commands with their names and arguments. You’ll get an array back too. Take a look at the example below in which we retrieve the basic info about a user.
const response = await fetch('https://YOUR_ACCOUNT.fibery.io/api/commands', {
  method: 'POST',
  headers: {
    'Authorization': 'Token YOUR_TOKEN',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    command: 'fibery.entity/query',
    args: {
      query: {
        'q/from': 'fibery/user',
        'q/select': ['fibery/id', 'user/name'],
        'q/limit': 1
      }
    }
  })
});
const data = await response.json();
Here’s the result:
{
  "success": true,
  "result": [
    {
      "fibery/id": "7dcf4730-82d2-11e9-8a28-82a9c787ee9d",
      "user/name": "Arthur Dent"
    }
  ]
}
For the response envelope format and error handling, see Response envelope.
This guide uses Database and Space (the current UI vocabulary). API command names and JSON payloads still use the original type and app — see Terminology for the mapping.