Authentification

    Authentifiez vos requêtes avec les clés API et les scopes

    Authentification

    L'API NERP Suite utilise des clés API pour authentifier les requêtes. Chaque clé est associée à des scopes qui définissent les permissions accordées.

    Clé API

    Toutes les requêtes doivent inclure votre clé API dans le header X-API-Key :

    curl -X GET "https://api.nerpsuite.com/v1/public-api/products" \
      -H "X-API-Key: sk_live_votre_cle_ici"

    Ne partagez jamais votre clé API. Ne l'incluez pas dans du code côté client (frontend).

    Format de la clé

    Les clés API NERP Suite suivent le format :

    sk_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    • sk - Préfixe indiquant une clé secrète
    • live - Environnement (live = production)
    • XXXX... - Identifiant unique généré

    Scopes

    Les scopes contrôlent ce que votre clé API peut faire. Voici les scopes disponibles :

    ScopeDescriptionEndpoints autorisés
    read:productsLecture des produitsGET /products, GET /products/:id, GET /products/sku/:sku
    read:stockLecture du stockGET /stock, GET /stock/product/:id, GET /products/:id/stock
    read:categoriesLecture des catégoriesGET /categories, GET /categories/:id, GET /categories/:id/products
    read:customersLecture des clientsGET /customers, GET /customers/:id
    write:customersCréation de clientsPOST /customers
    read:ordersLecture des commandesGET /orders, GET /orders/:id
    write:ordersCréation de commandesPOST /orders
    read:campaignsLecture des campagnesGET /campaigns/active, GET /campaigns/:id
    read:warehousesLecture des entrepôtsGET /warehouses, GET /warehouses/:id
    read:suppliersLecture des fournisseursGET /suppliers, GET /suppliers/:id
    read:stock-movementsLecture des mouvements de stockGET /stock-movements, GET /stock-movements/:id
    read:supplier-ordersLecture des commandes fournisseursGET /supplier-orders, GET /supplier-orders/:id
    write:supplier-ordersCréation/modification des commandes fournisseursPOST /supplier-orders, PATCH /supplier-orders/:id
    read:analyticsLecture des analytiquesGET /analytics/sales, GET /analytics/top-products
    read:accountingLecture de la comptabilitéGET /journal-entries, GET /journal-entries/:id
    read:webhooksLecture des webhooksGET /webhooks, GET /webhooks/:id, GET /webhooks/:id/logs
    write:webhooksGestion des webhooksPOST /webhooks, PATCH /webhooks/:id, DELETE /webhooks/:id

    Bonnes pratiques

    1. Utilisez des clés différentes par environnement

    Créez des clés séparées pour le développement et la production.

    2. Limitez les scopes au strict nécessaire

    N'accordez que les permissions dont votre application a réellement besoin.

    3. Rotation régulière des clés

    Changez vos clés périodiquement, surtout si vous suspectez une compromission.

    4. Stockez les clés de manière sécurisée

    • Utilisez des variables d'environnement
    • Ne committez jamais de clés dans votre code source
    • Utilisez un gestionnaire de secrets en production

    Révoquer une clé

    Si vous pensez qu'une clé a été compromise :

    1. Allez dans Paramètres → API sur votre dashboard
    2. Trouvez la clé concernée
    3. Cliquez sur Révoquer

    La clé sera immédiatement invalidée et toutes les requêtes l'utilisant recevront une erreur 401.

    Erreurs d'authentification

    CodeMessageCause
    401Invalid API keyClé manquante, invalide ou révoquée
    403Insufficient scopesLa clé n'a pas le scope requis
    403An active Essential plan is required (code PLAN_REQUIRED)Aucun plan Essential actif (essai terminé ou licence expirée)