Autorisez les requêtes de votre CRM externe vers le B2COPY API à l'aide d'un administrateur de service et de jetons JWT signés (ES256). Cette page couvre les prérequis, la génération de clés, l'émission de jetons et l'obtention/actualisation des jetons B2COPY.
Conditions préalables
- Créez un administrateur de service dans le Admin panel au nom duquel le CRM effectue des requêtes API (il est recommandé de le limiter à des adresses IP spécifiques).
- Configurez votre CRM pour générer des JWT signés dont les revendications incluent
admin_id(l'identifiant de l'administrateur du service),device_ip(l'adresse IP de la demande) etkey_id(l'identifiant de la clé privée).
Générer des clés
Générez une paire de clés EC (P-256) pour signer et vérifier les jetons :
# Private key
openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-256 \
-out ec_private_pkcs8.pem
# Public key
openssl pkey -in ec_private_pkcs8.pem -pubout -out ec_public.pemSécurité
Gardez la clé privée secrète et ne la partagez jamais. Fournissez uniquement la clé publique à l'équipe d'assistance B2COPY — elle est utilisée pour vérifier vos JWT signés.
Contacter l'assistance B2COPY
Pour terminer l'intégration, envoyez à l'équipe d'assistance votre clé publique (ec_public.pem), l'identifiant de clé unique et les adresses IP qui appelleront le API. Le support enregistre votre intégration et configure la clé publique.
Obtenir des jetons d'accès et d'actualisation
POST [host]/api/admin/auth/v2/admin/adminservice/authexternalcrm| Nom | Taper | Requis | Description |
|---|---|---|---|
| jeton_externe | chaîne | Oui | Le JWT signé généré par votre CRM. |
curl -X POST "[host]/api/admin/auth/v2/admin/adminservice/authexternalcrm" \
-d '{ "external_token": "<your-generated-jwt-token>" }'La réponse renvoie des jetons d'accès et d'actualisation pour l'administrateur du service ; incluez le jeton d'accès dans l'en-tête « Autorisation » de toutes les autres demandes.
{
"accessToken": "<access-token>",
"refreshToken": "<refresh-token>"
}Actualiser le jeton d'accès
POST [host]/api/admin/auth/v2/admin/adminservice/refreshtokencurl -X POST "[host]/api/admin/auth/v2/admin/adminservice/refreshtoken" \
-H "Authorization: Bearer <refreshToken>"Renvoie une nouvelle paire de jetons d'accès/actualisation.
