Plans de taux d'achat via l'API

<ph type="x-smartling-placeholder"></ph> Vous consultez la documentation Apigee Edge.
Accédez à la page Documentation sur Apigee X.
En savoir plus

Cette section explique comment souscrire un plan tarifaire publié, et comment expirer ou annuler un forfait plan tarifaire, si vous le souhaitez, à l'aide de l'API.

Acheter un plan tarifaire publié à l'aide de l'API

Une fois qu'un plan tarifaire est publié, un développeur ou une entreprise peut l'acheter (ou "l'accepter") en procédant comme suit : en émettant une requête POST /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans, où {org_name} est le nom de l'organisation et {developer_or_company_id} est l'ID du développeur ou de l'entreprise.

<ph type="x-smartling-placeholder">

Pour dispenser des frais de configuration lors de la souscription d'un plan tarifaire, définissez le paramètre de requête waivefees à true. Cet indicateur est utile lorsque vous migrez des développeurs vers la monétisation, car décrit dans la section Migrer les développeurs vers monétisation.

Le tableau suivant récapitule les propriétés de configuration que vous pouvez spécifier dans l'API le corps de la requête, leurs valeurs par défaut et leur obligation ou non.

Nom Description Par défaut Obligatoire ?
startDate

Date de début du plan tarifaire. Par exemple: 2017-03-24.

N/A Oui
endDate

Date de fin du plan tarifaire. Par exemple: 2017-09-24.

Le plan tarifaire sera en vigueur jusqu'au fin de la journée, la date spécifiée. Si vous souhaitez faire expirer un plan tarifaire le 1er décembre 2017, par exemple, la valeur endDate doit être définie. au 30/11/2017. Dans ce Dans ce cas, le plan tarifaire expirera en fin de journée, le 30 novembre 2017. toutes les demandes le 1er décembre 2017.

N/A Non
developer

Propriété id qui définit l'ID du développeur ou de l'entreprise l'achat du plan tarifaire.

N/A Oui
quotaTarget

Nombre cible de transactions autorisées pour le développeur de l'application. Vous pouvez configurer si et quand des notifications sont envoyées, en fonction du pourcentage du nombre cible (90%, 100 % ou 150 %, par exemple). Les transactions supplémentaires ne sont pas bloquées après le nombre cible est atteint.

Définissez cette valeur sur un entier positif ou sur 0 pour désactiver les notifications pour une application. développeur.

0 Non
ratePlan

Propriété id qui définit l'ID du plan tarifaire.

L'ID du plan tarifaire est différent du nom à afficher. Afficher les détails du plan tarifaire y compris l'ID, voir Explorer la page "Plans tarifaires"

N/A Oui
suppressWarning

Indicateur spécifiant si l'erreur doit être supprimée si le développeur tente d'acheter un plan tarifaire qui chevauche un autre plan tarifaire acheté. Cette valeur peut être l'une des suivantes:

  • true : la monétisation met fin à tous les forfaits achetés que les développeur doit utiliser les packages d'API qui contiennent les produits d'API en conflit. Ensuite, achète un nouveau package d'API pour le développeur.
  • false : une erreur est générée en cas de chevauchement plan tarifaire.
N/A Non
waveTerminationCharge

Indique si les frais de résiliation sont annulés lorsqu'un plan tarifaire actif est a été résiliée lors de l'activation du nouveau forfait. Cette valeur peut être l'une des suivantes:

  • true : renonciation aux frais de résiliation lorsqu'un plan tarifaire actif est résilié lors de l'activation du nouveau plan tarifaire.
  • false : ne renoncez pas aux frais de résiliation lorsqu'un plan tarifaire actif est résiliée lors de l'activation d'un nouveau forfait.
N/A Non

Par exemple, la requête suivante achète le plan tarifaire location_&_messaging pour le développeur spécifié:

curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
  -X POST \
  -H "Content-Type:application/json" \
  -u email:password \
  -d '{
   "developer":{
     "id":"5cTWgdUvdr6JW3xU"
   },
   "startDate":"2017-08-30",
   "ratePlan":{
     "id":"location_&_messaging"
   },
   "suppressWarning":false
  }'

Dans cet exemple, la propriété suppressWarning est définie sur false. Dans dans ce cas, une erreur est générée en cas de conflit. Par exemple, si le développeur tente d'acheter un plan tarifaire qui chevauche un autre plan tarifaire acheté, une erreur est générée. Ce active une application fournissant une interface utilisateur de monétisation pour intercepter l'erreur et présenter les produits en conflit au développeur pour confirmation (le cas échéant). Si suppressWarning est définie sur true, la monétisation met fin à tous les achats les plans tarifaires auxquels le développeur doit accéder aux packages d'API contenant les produits en conflit. Ensuite, achète un nouveau package d'API pour le développeur.

La requête suivante achète un forfait de notifications ajustable et définit le nombre cible de transactions à 4 000.

curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
  -X POST \
  -H "Content-Type:application/json" \
  -u email:password \
  -d '{
   "developer":{
     "id":"5cTWgdUvdr6JW3xU"
   },
   "ratePlan":{
     "id":"adjustable-notification-plan"
   },
   "startDate": "2017-03-24",
   "quotaTarget": 4000,
   "suppressWarning":false
  }'

Dans l'un ou l'autre des exemples ci-dessus, si le message d'erreur suivant est renvoyé:

Developer legal name not specified. 

Vous devez ensuite définir les attributs de monétisation MINT_DEVELOPER_ADDRESS et MINT_DEVELOPER_LEGAL_NAME, puis répétez l'appel d'API.

Expiration d'un forfait acheté par un développeur à l'aide de l'API

Pour expirer (ou annuler) un forfait acheté par un développeur, mettez à jour l'abonnement détails du plan tarifaire et spécifiez la propriété endDate dans le corps de la requête une requête PUT vers la ressource /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id}.

Le plan tarifaire sera actif jusqu'à la fin de la journée la date spécifiée. Par exemple, si vous souhaitez faire expirer un plan tarifaire le 1er décembre 2017, vous devez définissez la valeur endDate. au 30/11/2017. Dans ce cas, plan tarifaire expire en fin de journée, le 30 novembre 2017. toutes les demandes le 1er décembre 2017 sera bloqué.

Le {developer_rateplan_id} est renvoyé dans la réponse lorsque vous effectuez un achat. le plan tarifaire publié.

Exemple :

{
  "created": "2017-03-31 18:59:54",
  "developer": {
    ...
  },
  "id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
  "quotaTarget": 3000,
  "ratePlan": {
    ...
  },
  "startDate": "2017-03-31 00:00:00",
  "updated": "2017-03-31 18:59:54",
  "waiveTerminationCharge": false
}

Vous pouvez également obtenir le {developer-rateplan-id} pour le pour les développeurs en émettant une requête GET à /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans, où {developer_id} est l'adresse e-mail du développeur. Pour plus d'informations, consultez la section Affichage tous les forfaits achetés par un développeur.

La demande suivante met à jour la date de fin au 1er décembre 2017. Autrement dit, le plan tarifaire expirera en fin de journée, le 30 novembre 2017 ; toutes les demandes du 1er décembre 2017 seront bloqués.

curl "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/b1c600b8-f871-496d-8173-12b9950d6ab1"
  -X PUT \
  -H "Content-Type:application/json" \
  -u email:password \
  -d '{
   "id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
   "developer":{
     "id":"dev@mycompany.com"
   },
   "ratePlan":{
     "id":"p1_adjustable-notification-plan"
   },
   "startDate": "2017-04-15 00:00:00",
   "endDate": "2017-11-30",
   "quotaTarget": 3000,
   "suppressWarning":false
  }'