Démarrage rapide
Passez de zéro à votre premier appel authentifié en quelques minutes.
1. Créer une clé API
Dans l'application, ouvrez Settings -> Integrations -> API et créez une clé API de tenant avec le plus petit ensemble de scopes dont votre intégration a besoin (par exemple items:read). Le secret complet (pk_live_... ou pk_test_...) n'est affiché qu'une seule fois: conservez-le dans votre gestionnaire de secrets côté serveur ou dans votre environnement de déploiement, jamais dans du code client ni dans le contrôle de version.
2. Effectuer votre premier appel
curl https://api.fabhub.app/v1 \
-H "X-API-Key: $FABHUB_API_KEY"
GET /v1 renvoie les capacités auxquelles votre identifiant peut accéder. Pour inspecter l'identifiant lui-même: ses scopes, son plan et son palier de limitation de débit: appelez GET /v1/auth/context :
curl https://api.fabhub.app/v1/auth/context \
-H "X-API-Key: $FABHUB_API_KEY"
{
"data": {
"tenant": { "id": "0e2b...c1", "plan": "pro" },
"api_key": {
"id": "key_8f...",
"prefix": "pk_live_8f3a",
"environment": "production",
"scopes": ["items:read", "items:write", "webhooks:write"],
"rate_limit_tier": "standard",
"expires_at": null
}
}
}
3. Installer le SDK
npm install @fabhub/sdk
import { FabHubClient } from '@fabhub/sdk';
const fabhub = new FabHubClient({ apiKey: process.env.FABHUB_API_KEY });
// Lister la première page d'articles
const items = await fabhub.listItems({ pageSize: 20 });
console.log(items.data.length, 'of', items.pagination.total);
// Lire votre organisation
const { data: organization } = await fabhub.getOrganization();
console.log(organization.name, organization.plan);
4. Créer quelque chose (avec idempotence)
Les appels en écriture acceptent un Idempotency-Key afin qu'une requête relancée ne crée jamais de doublon :
const { data: item } = await fabhub.createItem(
{ name: 'Widget', itemType: 'product', salePrice: 19.99 },
{ idempotencyKey: crypto.randomUUID() },
);
5. Gérer les erreurs
import { FabHubApiError } from '@fabhub/sdk';
try {
await fabhub.listItems();
} catch (err) {
if (err instanceof FabHubApiError) {
console.error(err.status, err.code, err.message);
}
}
Étapes suivantes
- Référence de l'API: chaque endpoint, paramètre et réponse.
- Webhooks: recevez des événements signés au lieu d'interroger.
- MCP: une surface d'outils cantonnée par scopes pour les workflows d'agents IA.