Você está vendo a documentação do Apigee Edge.
Acesse a
documentação da Apigee X. informações
Nesta seção, descrevemos como comprar um plano de tarifas publicado e como expirar ou cancelar um plano comprado, se você quiser, usando a API.
Como comprar um plano de tarifa publicado usando a API
Depois que um plano de tarifas é publicado, o desenvolvedor ou a empresa pode comprá-lo (ou "aceitar") emitindo uma solicitação POST para
/mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans
,
em que {org_name}
é o nome da organização e
{developer_or_company_id}
é o ID do desenvolvedor ou da empresa.
Para dispensar as taxas de configuração ao comprar um plano de tarifas, defina o parâmetro de consulta waivefees
como true
. Essa sinalização é útil ao migrar desenvolvedores para monetização, conforme
descrito em Migrar desenvolvedores para
monetização.
A tabela a seguir resume as propriedades de configuração que podem ser especificadas no corpo da solicitação, os valores padrão e se elas são necessárias ou não.
Nome | Descrição | Padrão | Obrigatório? |
---|---|---|---|
startDate |
Data de início do plano de tarifa. Por exemplo: 2017-03-24. |
N/A | Sim |
endDate |
Data de término do plano de tarifa. Por exemplo: 2017-09-24. O plano de tarifa vai entrar em vigor até o fim do dia na data especificada. Se você quiser que um plano de tarifas expire em 1o de dezembro de 2017, por exemplo, defina o valor de endDate como 2017-11-30. Nesse caso, o plano de tarifação expira no final do dia, em 30 de novembro de 2017. Todas as solicitações de 1o de dezembro de 2017 serão bloqueadas. |
N/A | Não |
developer |
|
N/A | Sim |
quotaTarget |
Número desejado de transações permitidas para o desenvolvedor do app. É possível configurar se e quando as notificações serão enviadas com base na porcentagem do número de destino que foi alcançada (por exemplo, 90%, 100% ou 150%). Outras transações não são bloqueadas depois que o número desejado é alcançado. Defina esse valor como um número inteiro positivo ou 0 para desativar as notificações de um desenvolvedor de apps. |
0 |
Não |
ratePlan |
Esse ID é diferente do nome de exibição. Para ver os detalhes do plano de tarifas, incluindo o ID, consulte Como explorar a página dos planos de preços. |
N/A | Sim |
suppressWarning |
Sinalização que especifica se é necessário eliminar o erro caso o desenvolvedor tente comprar um plano de tarifas que se sobreponha a outro plano de tarifas comprado. O valor pode ser um dos seguintes:
|
N/A | Não |
waveTerminationCharge |
Sinalização que especifica se as taxas de rescisão são dispensadas quando um plano de tarifas ativo é encerrado como parte da ativação do novo plano. O valor pode ser um dos seguintes:
|
N/A | Não |
Por exemplo, a solicitação a seguir compra o plano de tarifas location_&_messaging
para o desenvolvedor 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 }'
Neste exemplo, a propriedade suppressWarning
está definida como false
. Nesse
caso, um erro será gerado no caso de um conflito. Por exemplo, se o desenvolvedor
tentar comprar um plano de preços que se sobrepõe a outro plano comprado, um erro será gerado. Isso permite que um aplicativo que oferece uma interface de usuário para monetização intercepte o erro e exiba os produtos conflitantes ao desenvolvedor para confirmação (conforme apropriado). Se
suppressWarning
for definido como true
, a monetização encerrará todos os planos de preços
comprados que o desenvolvedor tiver para pacotes de API que contêm os produtos conflitantes. Em seguida,
ele compra um novo pacote de API para o desenvolvedor.
A solicitação a seguir compra um plano de taxa de notificação ajustável e define o número desejado de transações como 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 }'
Em qualquer um dos exemplos acima, se a seguinte mensagem de erro for retornada:
Developer legal name not specified.
Em seguida, defina os atributos de monetização MINT_DEVELOPER_ADDRESS
e MINT_DEVELOPER_LEGAL_NAME
e repita a chamada de API.
Expiração de um plano de tarifa comprado por um desenvolvedor usando a API
Para expirar ou cancelar um plano de tarifas comprado por um desenvolvedor, atualize os detalhes dele e especifique a propriedade endDate
no corpo da solicitação em uma solicitação PUT para o recurso /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id}
.
O plano de tarifa vai entrar em vigor até o fim do dia na data de término especificada. Se você quiser que um plano de tarifas expire em 1o de dezembro de 2017, por exemplo, defina o valor de endDate como 2017-11-30. Nesse caso, o plano de tarifação expira no final do dia, em 30 de novembro de 2017. Todas as solicitações feitas em 1o de dezembro de 2017 serão bloqueadas.
O {developer_rateplan_id}
é retornado na resposta quando você compra o plano de tarifas publicado.
Exemplo:
{ "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, é possível conseguir o {developer-rateplan-id}
do plano de tarifas do desenvolvedor emitindo uma solicitação GET para /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans
, em que {developer_id}
é o endereço de e-mail do desenvolvedor. Para mais
informações, consulte Como visualizar
todos os planos de preços comprados por um desenvolvedor.
A solicitação a seguir atualiza a data de término para 1o de dezembro de 2017. Ou seja, o plano de tarifa expira no final do dia, em 30 de novembro de 2017. Todas as solicitações feitas em 1o de dezembro de 2017 serão bloqueadas.
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 }'