Vous consultez la documentation Apigee Edge.
Accédez à la
documentation Apigee X. info
Cette section explique comment acheter un plan tarifaire publié, et comment le faire expirer ou l'annuler à 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 ne pas payer de frais de configuration lors de l'achat d'un plan tarifaire, définissez le waivefees paramètre de requête
sur true. Cet indicateur est utile lorsque vous migrez des développeurs vers la monétisation, comme
décrit dans 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 plan tarifaire. Exemple : 2017-03-24. |
N/A | Oui |
endDate |
Date de fin du plan tarifaire. Exemple : 2017-09-24. Le plan tarifaire sera en vigueur jusqu'à la fin de la journée le la date spécifiée. Si vous souhaitez faire expirer un plan tarifaire le 1er décembre 2017, par exemple, vous devez définir la valeur endDate sur 2017-11-30. Dans ce cas, le plan tarifaire expirera à la fin de la journée du 30 novembre 2017. Toutes les requêtes du 1er décembre 2017 seront bloquées. |
N/A | Non |
developer |
Propriété |
N/A | Oui |
quotaTarget |
Nombre cible de transactions autorisées pour le développeur d'applications. Vous pouvez configurer si et quand les 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 entier positif ou sur 0 pour désactiver les notifications pour un développeur d'applications. |
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 la page Explorer les plans tarifaires. |
N/A | Oui |
suppressWarning |
Indicateur qui spécifie s'il faut supprimer l'erreur si le développeur tente d'acheter un plan tarifaire qui chevauche un autre plan tarifaire acheté. La valeur peut être l'une des suivantes :
|
N/A | Non |
waveTerminationCharge |
Indicateur qui spécifie si les frais de résiliation sont supprimés lorsqu'un plan tarifaire actif est résilié dans le cadre de l'activation du nouveau plan tarifaire. La 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 sera 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. Cela
permet à une application qui fournit une interface utilisateur à 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 résilie tous les plans tarifaires achetés
par le développeur pour les packages d'API contenant les produits en conflit. Elle achète ensuite
un nouveau package d'API pour le développeur.
La requête suivante achète un plan tarifaire à 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 des exemples ci-dessus, si le message d'erreur suivant est renvoyé :
Developer legal name not specified.
Vous devez définir les attributs de monétisation MINT_DEVELOPER_ADDRESS et
MINT_DEVELOPER_LEGAL_NAME, puis répéter l'appel d'API.
Faire expirer un plan tarifaire acheté par un développeur à l'aide de l'API
Pour faire expirer (ou annuler) un plan tarifaire acheté par un développeur, mettez à jour les détails du plan tarifaire acheté
et spécifiez la propriété endDate dans le corps de la requête dans
une requête PUT à
la ressource /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id}.
Le plan tarifaire sera en vigueur jusqu'à la fin de la journée à la date de fin spécifiée. Si vous souhaitez faire expirer un plan tarifaire le 1er décembre 2017, par exemple, vous devez définir la valeur endDate sur 2017-11-30. Dans ce cas, le plan tarifaire expirera à la fin de la journée du 30 novembre 2017. Toutes les requêtes du 1er décembre 2017 seront bloquées.
Le {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} pour le 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 plans tarifaires achetés par un développeur.
La requête suivante met à jour la date de fin au 1er décembre 2017. Autrement dit, le plan tarifaire expirera à la fin de la journée du 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
}'