API API REST API de licence programmatique automatisation clé API API d'attribution de licences API de désaffectation des licences intégration automatiser la licence

Comment utiliser l'API de licence pour gérer les licences de manière programmatique ?

Apprends à utiliser l'API REST de licence SecureMailMerge pour attribuer et retirer des licences de manière programmatique en utilisant des clés API.

Contents

Le serveur de licences fournit une API REST qui te permet d’assigner et de désassigner des licences de manière programmatique. C’est utile pour les revendeurs gérant plusieurs clients, les équipes informatiques automatisant l’intégration, ou quiconque intégrant la gestion des licences dans ses propres outils.

Authentification et URL de base

Toutes les requêtes API sont authentifiées à l’aide d’une clé API. La clé API est un GUID que tu inclues dans le corps de la requête (pas dans un en-tête).

Tous les points de terminaison de l’API sont disponibles à :

https://licensing.solinventum.com/api/manage/{subscriptionType}/{subscriptionID}

Où :

  • subscriptionType est l’un des suivants : Paddle, Azure ou Manual
  • subscriptionID est le GUID de ton abonnement

Tu n’as pas besoin de construire cette URL toi-même. Sur le serveur de licence, va à la page “Attribuer des licences” de ton abonnement et sélectionne l’onglet Attribuer des licences via API. Cela affichera l’URL de base complète, ta clé API et une charge utile JSON prête à l’emploi pour ton abonnement.

Régénérer ta clé API

Si ta clé API est compromise, tu peux la régénérer depuis la même page. L’ancienne clé est invalidée immédiatement. Seul le propriétaire de l’abonnement peut régénérer les clés API. Utilise toujours HTTPS lorsque tu appelles l’API et garde ta clé API secrète - quiconque a ta clé API peut attribuer et désattribuer des licences sur ton abonnement.

Ouvre le serveur de licence →

Assigner des licences

Ajoute des attributions de licences à une ou plusieurs adresses e-mail.

PUT /api/manage/{subscriptionType}/{subscriptionID}
Content-Type: application/json

Corps de la requête

{
  "apiKey": "4024d0d8-9a7d-4ac3-9e61-efaeb7c278df",
  "emails": ["[email protected]", "[email protected]"]
}
ChampTypeDescription
apiKeychaîne (GUID)Ta clé API d’abonnement
emailstableau de chaînesAdresses e-mail auxquelles attribuer des licences

Réponse

Succès (200) :

{
  "success": true,
  "errors": [],
  "assignmentStats": {
    "availableLicenses": 10,
    "assignedLicenses": 7
  }
}

Licences insuffisantes (402) :

Renvoyé lorsque tu essaies d’attribuer plus de licences que celles disponibles sur ton abonnement.

Mauvaise requête (400) :

Renvoyé pour des erreurs de validation telles qu’un format d’e-mail invalide, des e-mails en double ou des champs manquants.

Règles de validation

  • Au moins une adresse e-mail doit être fournie
  • Chaque e-mail doit être au format valide et ne pas dépasser 256 caractères
  • Les e-mails en double dans la même requête sont rejetés
  • Tu ne peux pas attribuer plus de licences que celles disponibles sur ton abonnement

Exemples

cURL

curl -X PUT \
  https://licensing.solinventum.com/api/manage/Paddle/ff3d3cf5-5388-40a0-915f-970c1d2d972f \
  -H "Content-Type: application/json" \
  -d '{
    "apiKey": "4024d0d8-9a7d-4ac3-9e61-efaeb7c278df",
    "emails": ["[email protected]"]
  }'

PowerShell

$body = @{
    apiKey = "4024d0d8-9a7d-4ac3-9e61-efaeb7c278df"
    emails = @("[email protected]")
} | ConvertTo-Json

Invoke-RestMethod `
  -Method Put `
  -Uri "https://licensing.solinventum.com/api/manage/Paddle/ff3d3cf5-5388-40a0-915f-970c1d2d972f" `
  -ContentType "application/json" `
  -Body $body

Désassigner des licences

Retire les attributions de licences d’une ou plusieurs adresses e-mail.

DELETE /api/manage/{subscriptionType}/{subscriptionID}
Content-Type: application/json

Corps de la requête

{
  "apiKey": "4024d0d8-9a7d-4ac3-9e61-efaeb7c278df",
  "emails": ["[email protected]"]
}

Le format du corps de la requête est le même que pour l’attribution de licences.

Réponse

Succès (200) :

{
  "success": true,
  "errors": [],
  "assignmentStats": {
    "availableLicenses": 10,
    "assignedLicenses": 6
  }
}

Mauvaise requête (400) :

Renvoie si les adresses e-mail spécifiées ne sont actuellement pas attribuées à l’abonnement.

Exemple

curl -X DELETE \
  https://licensing.solinventum.com/api/manage/Paddle/ff3d3cf5-5388-40a0-915f-970c1d2d972f \
  -H "Content-Type: application/json" \
  -d '{
    "apiKey": "4024d0d8-9a7d-4ac3-9e61-efaeb7c278df",
    "emails": ["[email protected]"]
  }'

Gestion des erreurs

Code d’étatSignification
200Demande réussie
400Demande invalide (vérifie le tableau errors dans la réponse)
402Licences insuffisantes disponibles
404Abonnement non trouvé ou clé API ne correspond pas

Vérifie toujours le champ success et le tableau errors dans le corps de la réponse pour des détails sur ce qui a mal tourné.