Vous consultez la documentation d'Apigee Edge.
Accéder à la documentation sur Apigee X en savoir plus
Cette section explique comment acheter un plan tarifaire publié et expirer ou annuler un plan tarifaire acheté, 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 envoyant 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.
Pour renoncer aux frais de configuration lors de l'achat d'un plan tarifaire, définissez le paramètre de requête waivefees
sur true
. Cet indicateur est utile lorsque vous migrez des développeurs vers la monétisation, comme décrit dans la section Migrer des développeurs vers la monétisation.
Le tableau suivant récapitule les propriétés de configuration que vous pouvez spécifier dans le corps de la requête, leurs valeurs par défaut et si elles sont obligatoires ou non.
Nom | Description | Par défaut | Obligatoire ? |
---|---|---|---|
startDate |
Date de début du forfait. 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'à la fin de la journée de la date spécifiée. Par exemple, si vous souhaitez que la date d'expiration d'un tarif soit le 1er décembre 2017, vous devez définir la valeur endDate sur 2017-11-30. Dans ce cas, le tarif expirera à la fin de la journée du 30 novembre 2017. Toutes les demandes effectuées le 1er décembre 2017 seront bloquées. |
N/A | Non |
developer |
Propriété |
N/A | Oui |
quotaTarget |
Nombre cible de transactions autorisé pour le développeur d'applications. Vous pouvez configurer si et quand des notifications sont envoyées en fonction du pourcentage du nombre cible atteint, par exemple 90%, 100 % ou 150%. Les transactions supplémentaires ne sont pas bloquées une fois le nombre cible atteint. Définissez cette valeur sur un nombre entier positif ou 0 pour désactiver les notifications pour un développeur d'application. |
0 |
Non |
ratePlan |
Propriété L'ID du plan tarifaire est différent du nom à afficher. Pour afficher les détails du plan tarifaire, y compris l'ID, consultez Explorer la page des plans tarifaires. |
N/A | Oui |
suppressWarning |
Indicateur indiquant si l'erreur doit être supprimée si le développeur tente d'acheter un forfait qui chevauche un autre forfait acheté. La valeur peut être l'une des suivantes:
|
N/A | Non |
waveTerminationCharge |
Indicateur spécifiant si les frais de résiliation sont annulés lorsqu'un plan tarifaire actif est résilié dans le cadre de l'activation du nouveau plan. Cette valeur peut être l'une des suivantes:
|
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 ce cas, une erreur est générée en cas de conflit. Par exemple, si le développeur tente d'acheter un forfait qui chevauche un autre forfait acheté, une erreur est générée. Cela permet à une application qui fournit une interface utilisateur pour la monétisation d'intercepter l'erreur et d'afficher les produits en conflit au développeur pour confirmation (le cas échéant). Si suppressWarning
est défini sur true
, la monétisation met fin à tous les forfaits achetés que le développeur doit utiliser dans les packages d'API contenant les produits en conflit. Il achète ensuite un nouveau package d'API pour le développeur.
La requête suivante achète un plan tarifaire de notification ajustable et définit le nombre cible de transactions sur 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éter l'appel d'API.
Expiration d'un plan tarifaire souscrit par un développeur à l'aide de l'API
Pour faire expirer (ou résilier) un forfait souscrit par un développeur, mettez à jour les détails du forfait souscrit et spécifiez la propriété endDate
dans le corps de la requête dans une requête PUT envoyée à la ressource /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id}
.
Le tarif sera appliqué jusqu'à la fin de la journée de la date de fin spécifiée. Par exemple, si vous souhaitez que le plan tarifaire expire le 1er décembre 2017, vous devez définir la valeur endDate sur 2017-11-30. Dans ce cas, le tarif expirera à la fin de la journée du 30 novembre 2017. Toutes les demandes effectuées le 1er décembre 2017 seront bloquées.
{developer_rateplan_id}
est renvoyé dans la réponse lorsque vous achetez 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}
du plan tarifaire du développeur en envoyant 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 en savoir plus, consultez Afficher 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 requêtes du 1er décembre 2017 seront bloquées.
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 }'