Développeurs
Aperçu de l’API
Un unique point d’accès JSON-RPC authentifié par des tokens API. Appelez n’importe quelle méthode par son nom.
Pas besoin de code ?
Les guides configurent formbase dans Zapier clic par clic, sans que vous ayez à appeler l’API vous-même.
Point d’accès
Toutes les requêtes sont envoyées à une URL unique via POST. Passez le nom de la méthode et les paramètres en JSON.
Authentification
Passez votre token API en tant que bearer token dans l’en-tête Authorization. Les tokens sont associés à un espace de travail
— créez-les depuis OAuth et clés API dans la barre latérale.
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()Gardez les tokens côté serveur
N’intégrez jamais de tokens dans du code exécuté côté navigateur. Utilisez un proxy backend pour les appels côté client.
Format de requête
Chaque requête est un objet JSON avec deux champs :
{
"method": "forms.list",
"params": {
"workspaceId": "abc123..."
}
}Format de réponse
Chaque réponse est un objet JSON avec un champ ok. En cas de succès :
{
"ok": true,
"data": { ... }
}Erreurs
En cas d’échec, ok vaut false et un objet error contient un code lisible par machine et un message
lisible par l’humain :
{
"ok": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Field 'name' is required."
}
}Codes d’erreur courants :
VALIDATION_ERROR(400) — paramètres invalides ou manquantsUNAUTHORIZED(401) — token API absent ou invalideUPGRADE_REQUIRED(402) — la fonctionnalité nécessite un abonnement de niveau supérieurFORBIDDEN(403) — le token n’a pas accès à la ressourceCONFLICT(409) — conflit d’état de la ressource, par exemple un nom en doublonNOT_FOUND(404) — la ressource n’existe pasMETHOD_NOT_FOUND(404) — nom de méthode inconnuRATE_LIMITED(429) — trop de requêtesINTERNAL_ERROR(500) — erreur serveur inattendue
Limites de débit
Les requêtes API sont limitées à 120 requêtes par minute par token. Dépasser cette limite renvoie
429 Too Many Requests.