Autorizza le richieste dal tuo CRM esterno all'B2COPY API utilizzando i token service admin e signed JWT (ES256). Questa pagina copre i prerequisiti, la generazione delle chiavi, l'emissione dei token e l'ottenimento/aggiornamento dei token B2COPY.
Prerequisiti
- Creare un service admin nell'Admin panel per conto del quale l'CRM effettua le richieste API (si consiglia di limitarlo a indirizzi IP specifici).
- Configura il tuo CRM per generare JWT firmati le cui attestazioni includono
admin_id(l'ID amministratore del servizio),device_ip(l'IP della richiesta) ekey_id(l'ID della chiave privata).
Genera chiavi
Genera una coppia di chiavi EC (P-256) per firmare e verificare i token:
# 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.pemSicurezza
Mantieni segreta la chiave privata e non condividerla mai. Fornisci solo la chiave public al team di supporto B2COPY: viene utilizzata per verificare i JWT firmati.
Contatta il supporto B2COPY
Per completare l'integrazione, invia al team di supporto la tua chiave pubblica (ec_public.pem), l'identificatore di chiave univoco e gli indirizzi IP che chiameranno API. Il supporto registra la tua integrazione e configura la chiave pubblica.
Ottieni token di accesso e aggiornamento
POST [host]/api/admin/auth/v2/admin/adminservice/authexternalcrm| Nome | Tipo | Necessario | Descrizione |
|---|---|---|---|
| external_token | string | Yes | The signed JWT generated by your CRM. |
curl -X POST "[host]/api/admin/auth/v2/admin/adminservice/authexternalcrm" \
-d '{ "external_token": "<your-generated-jwt-token>" }'La risposta restituisce token di accesso e aggiornamento per l'amministratore del servizio; includere il token di accesso nell'intestazione Authorization di tutte le altre richieste.
{
"accessToken": "<access-token>",
"refreshToken": "<refresh-token>"
}Aggiorna il token di accesso
POST [host]/api/admin/auth/v2/admin/adminservice/refreshtokencurl -X POST "[host]/api/admin/auth/v2/admin/adminservice/refreshtoken" \
-H "Authorization: Bearer <refreshToken>"Restituisce una nuova coppia di token di accesso/aggiornamento.
