Ontwikkelaars
API-overzicht
Een enkel JSON-RPC-endpoint dat werkt met API-tokens. Roep elke methode aan bij naam.
Geen code nodig?
De Handleidingen stellen formbase klik voor klik in Zapier in, zonder dat je zelf de API hoeft aan te roepen.
Endpoint
Alle verzoeken gaan naar één URL via POST. Geef de methodenaam en parameters mee als JSON.
Authenticatie
Stuur je API-token mee als bearer token in de Authorization-header. Tokens zijn gekoppeld aan een workspace — maak ze aan via
OAuth en API-sleutels in de zijbalk.
curl -X POST https://api.formbase.so/api/v1 \
-H "Authorization: Bearer fb_..." \
-H "Content-Type: application/json" \
-d '{"method": "forms.list", "params": {}}'const res = await fetch('https://api.formbase.so/api/v1', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.FORMBASE_TOKEN}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ method: 'forms.list', params: {} }),
})
const data = await res.json()import os, requests
res = requests.post(
"https://api.formbase.so/api/v1",
headers={"Authorization": f"Bearer {os.environ['FORMBASE_TOKEN']}"},
json={"method": "forms.list", "params": {}},
)
data = res.json()Houd tokens server-side
Verwerk tokens nooit in browsercode. Gebruik een backend-proxy voor client-side aanroepen.
Verzoekformaat
Elk verzoek is een JSON-object met twee velden:
{
"method": "forms.list",
"params": {
"workspaceId": "abc123..."
}
}Antwoordformaat
Elk antwoord is een JSON-object met een ok-veld. Bij succes:
{
"ok": true,
"data": { ... }
}Fouten
Bij een fout is ok gelijk aan false en bevat een error-object een machineleesbare code en een
leesbare melding:
{
"ok": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Field 'name' is required."
}
}Veelvoorkomende foutcodes:
VALIDATION_ERROR(400) — ongeldige of ontbrekende parametersUNAUTHORIZED(401) — ontbrekend of ongeldig API-tokenUPGRADE_REQUIRED(402) — de functie vereist een hoger abonnementsniveauFORBIDDEN(403) — token heeft geen toegang tot de resourceCONFLICT(409) — resourcetoestandconflict, zoals een dubbele naamNOT_FOUND(404) — resource bestaat nietMETHOD_NOT_FOUND(404) — onbekende methodenaamRATE_LIMITED(429) — te veel verzoekenINTERNAL_ERROR(500) — onverwachte serverfout
Limieten
API-verzoeken zijn beperkt tot 120 verzoeken per minuut per token. Als je de limiet overschrijdt, krijg je
429 Too Many Requests terug.