Planes de tarifas de compra que usan la API

Estás viendo la documentación de Apigee Edge.
Ve a la Documentación de Apigee X.
información

En esta sección, se describe cómo comprar un plan de tarifas publicado y cómo vencer o cancelar una compra el plan de tarifas, si lo deseas, con la API.

Compra un plan de tarifas publicado con la API

Después de que se publica un plan de tarifas, el desarrollador o la empresa puede comprarlo (o "aceptarlo") mediante emitir una solicitud POST a /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans, en el que {org_name} es el nombre de la organización y {developer_or_company_id} es el ID del desarrollador o la empresa.

Para renunciar a las tarifas de configuración cuando compras un plan de tarifas, establece el parámetro de búsqueda waivefees a true. Esta marca es útil cuando se migran desarrolladores a la monetización, ya que que se describe en Cómo migrar a los desarrolladores monetización.

En la siguiente tabla, se resumen las propiedades de configuración que puedes especificar en los el cuerpo de la solicitud, sus valores predeterminados y si son obligatorios o no.

Nombre Descripción Predeterminada ¿Obligatorio?
startDate

Fecha en la que comienza el plan de tarifas. Por ejemplo: 2017-03-24.

N/A
endDate

Fecha en la que finaliza el plan de tarifas. Por ejemplo: 2017-09-24.

El plan de tarifas estará vigente hasta el final del día el la fecha especificada. Por ejemplo, si quieres que venza un plan de tarifas el 1 de diciembre de 2017, debes establecer el valor de endDate al 30-11-2017. En este caso, el plan de tarifas vencerá al final del día 30 de noviembre de 2017; todas las solicitudes el 1 de diciembre de 2017.

N/A No
developer

La propiedad id que define el ID del desarrollador o la empresa que se comprar el plan de tarifas.

N/A
quotaTarget

Es la cantidad objetivo de transacciones permitidas para el desarrollador de apps. Puedes configurar si cuando se envían notificaciones según el porcentaje del número objetivo alcanzada, como el 90%, 100% o 150%. Las transacciones adicionales no se bloquean después de se alcanza el número objetivo.

Establece este valor en un número entero positivo o 0 para inhabilitar las notificaciones de una app. desarrollador.

0 No
ratePlan

La propiedad id que define el ID del plan de tarifas.

El ID del plan de tarifas es diferente del nombre visible. Para ver los detalles del plan de tarifas incluido el ID, consulta Explora la página de planes de tarifas.

N/A
suppressWarning

Marca que especifica si se debe suprimir el error si el desarrollador intenta realizar una compra un plan de tarifas que se superpone con otro plan de tarifas comprado. El valor puede ser uno de los lo siguiente:

  • true: la monetización cancela todos los planes de tarifas comprados que el el desarrollador debe tener los paquetes de API que contengan los productos de API en conflicto. Luego, compra un nuevo paquete de API para el desarrollador.
  • false: se genera un error en caso de que haya una superposición el plan de tarifas.
N/A No
waveTerminationCharge

Marca que especifica si se renuncia a las tarifas de rescisión cuando se aplica un plan de tarifas activo se rescindió como parte de la activación del nuevo plan de tarifas. El valor puede ser uno de los lo siguiente:

  • true: renuncia a la tarifa de rescisión cuando se rescinde un plan de tarifas activo. como parte de la activación del nuevo plan de tarifas.
  • false - No renuncie a la tarifa de rescisión si un plan de tarifas activo es se rescindió como parte de la activación del nuevo plan de tarifas.
N/A No

Por ejemplo, la siguiente solicitud compra el plan de tarifas location_&_messaging para el desarrollador especificado:

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
  }'

En este ejemplo, la propiedad suppressWarning se establece en false. En en este caso, se generará un error en caso de conflicto. Por ejemplo, si el desarrollador cuando intentan comprar un plan de tarifas que se superpone con otro, se genera un error. Esta habilita una aplicación que proporciona una interfaz de usuario para la monetización con el objetivo de interceptar el error y mostrar los productos en conflicto al desarrollador para que los confirme (según corresponda). Si suppressWarning se estableció como true; la monetización cancela todas las compras planes de tarifas que tiene el desarrollador para los paquetes de API que contienen los productos en conflicto. Luego, compra un nuevo paquete de API para el desarrollador.

La siguiente solicitud compra un plan de tarifa de notificación ajustable y establece el número objetivo de transacciones a 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
  }'

En cualquiera de los ejemplos anteriores, si se muestra el siguiente mensaje de error:

Developer legal name not specified. 

Luego, debes establecer los atributos de monetización MINT_DEVELOPER_ADDRESS y MINT_DEVELOPER_LEGAL_NAME y, luego, repite la llamada a la API.

Vencimiento de un plan de tarifas que compró un desarrollador mediante la API

Para vencer (o cancelar) un plan de tarifas que compró un desarrollador, actualiza el plan detalles del plan de tarifas y especifica la propiedad endDate en el cuerpo de la solicitud de una solicitud PUT a el recurso /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id}.

El plan de tarifas estará vigente hasta el final del día al final del día. fecha especificada. Por ejemplo, si quieres que un plan de tarifas venza el 1 de diciembre de 2017, deberías establecer el valor de endDate al 30-11-2017. En este caso, el el plan de tarifas vencerá al final del día 30 de noviembre de 2017; todas las solicitudes del 1 de diciembre, 2017 será bloqueado.

Se muestra {developer_rateplan_id} en la respuesta cuando realizas la compra. del plan de tarifas publicado.

Por ejemplo:

{
  "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
}

Como alternativa, puedes obtener el {developer-rateplan-id} de la del plan de tarifas para desarrolladores mediante el envío de una solicitud GET a /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans, En el ejemplo anterior, {developer_id} es la dirección de correo electrónico del desarrollador. Para ver más información, consulta Visualización de Todos los planes de tarifas que compró un desarrollador

La siguiente solicitud actualiza la fecha de finalización al 1 de diciembre de 2017. Es decir, el plan de tarifas vencerá al final del día 30 de noviembre de 2017; todas las solicitudes del 1 de diciembre de 2017 se se bloqueó.

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
  }'