Guide
The Fibery GraphQL API provides a way to integrate Fibery with your external systems and automate routine tasks. It’s capable of performing most of the tasks at hand:
Read, create, update and delete Entities in Databases.
Execute a variety of additional actions.
Work with rich text Fields.
You can find more information about GraphQL basics by this link.
Non-ASCII or non-English characters in field or database names will be transliterated to English.
Check getting started first and follow the guides below:
Before you proceed, please keep in mind that Type = Database, App = Space. To find out why, check Terminology.
Getting started
Every Fibery space has its own GraphQL end-point which can be found at https://YOUR_ACCOUNT.fibery.io/api/graphql/space/YOUR_SPACE
or the list of all your space's end-points can be found at https://YOUR_ACCOUNT.fibery.io/api/graphql
By opening space's end-point in your browser you will find a graphical interactive in-browser GraphQL IDE. Here you can explorer space's GraphQL documentation and execute your GraphQL queries.
To read or edit data, you need to send a POST JSON request to the https://YOUR_ACCOUNT.fibery.io/api/graphql/space/YOUR_SPACE endpoint from your code.
Request limits
To ensure system stability and consistent user experience, our API is rate-limited.
Rate-limited requests will return a "Too Many Requests" error (HTTP response status 429). The rate limit for incoming requests is 3 requests per second per token.
Rate limits may change. In the future we may adjust rate limits to balance for demand and reliability.
FAQ
Is there or operator avaliable?
Indeed there is no or operation. We propose use several queries in this case.
{
nullName: findProjects(name:{isNull:true}){
id
}
emptyName: findProjects(name:{is:""}){
id
}
}
Can a graphQL “find” query return only the count of records found, and no record contents?
Unfortunately, it is not supported in GraphQL for now. However many things can be done using native Fibery API.
Can you provide an example of a GraphQL insert statement that adds multiple selections to a multi-select field?
mutation { articles(id:{isNull:false}){ linkTags(name:{in:["One", "Two"]}){message} } }
Example above for databases, and for enums you can just use update
mutation {
articles(id:{isNull:false}){
update(multiSelect:{name:{in:["One", "Two"]}}){message}
}
}
Does the Fibery GraphQL API support fragments?
No, fragments are not supported in the current version of the Fibery GraphQL API.
We recommend using fully expanded queries instead.
Fragments are a powerful way to make queries more reusable and maintainable. However, Fibery’s GraphQL implementation prioritizes simplicity and stability, and fragment support is currently not on our roadmap.
If you're using fragments to avoid repeating fields across queries, you'll need to manually repeat those fields in each query. While it may add a bit of duplication, this approach is fully compatible with the current API.
At this point, we don’t plan to support fragments. If your use case critically depends on them, feel free to share more details with us — we’re always open to learning how we can improve.