Você está vendo a documentação do Apigee Edge.
Acesse a
documentação da
Apigee X. info
Esta seção descreve como comprar um plano de tarifas publicado e expirar ou cancelar um plano de tarifas comprado, se você quiser, usando a API.
Como comprar um plano de tarifas publicado usando a API
Depois que um plano de preços é publicado, um desenvolvedor ou uma empresa pode comprar (ou "aceitar") o plano
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 flag é útil quando você está migrando desenvolvedores para a monetização, conforme
descrito em Como migrar desenvolvedores para
a 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 obrigatórias ou não.
Nome | Descrição | Padrão | Obrigatório? |
---|---|---|---|
startDate |
Data em que o plano de tarifas começa. Por exemplo: 2017-03-24. |
N/A | Sim |
endDate |
Data em que o plano de taxas termina. Por exemplo: 2017-09-24. O plano de tarifas vai estar em vigor até o final 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 preços vai expirar no final do dia 30 de novembro de 2017. Todas as solicitações em 1º de dezembro de 2017 serão bloqueadas. |
N/A | Não |
developer |
Propriedade |
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 são enviadas com base na porcentagem do número de destino que foi alcançada, como 90%, 100% ou 150%. As transações adicionais não são bloqueadas depois que o número de destino é 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 |
A propriedade O ID do plano de tarifas é diferente do nome de exibição. Para conferir os detalhes do plano de tarifas, incluindo o ID, consulte a página "Explorar os planos de tarifas". |
N/A | Sim |
suppressWarning |
Flag que especifica se o erro será suprimido se o desenvolvedor tentar comprar um plano de tarifas que se sobrepõe a outro plano de tarifas comprado. O valor pode ser um destes:
|
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 de tarifas. O valor pode ser um dos seguintes:
|
N/A | Não |
Por exemplo, a solicitação a seguir compra o plano de taxas 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 em caso de conflito. Por exemplo, se o desenvolvedor
tentar comprar um plano de tarifas que se sobrepõe a outro, um erro será gerado. Isso
permite que um aplicativo que ofereça uma interface do usuário para a monetização intercepte o erro e
mostre os produtos em conflito ao desenvolvedor para confirmação (conforme apropriado). Se
suppressWarning
estiver definido como true
, a monetização vai encerrar todos os planos de tarifas
comprados que o desenvolvedor tiver para pacotes de API que contêm os produtos em conflito. 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 de transações desejado 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 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.
Como fazer um plano de tarifas comprado por um desenvolvedor expirar usando a API
Para expirar ou cancelar um plano de tarifas comprado por um desenvolvedor, atualize os detalhes do plano de tarifas adquirido 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 tarifas vai entrar em vigor até o final 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 preços vai expirar no final do dia 30 de novembro de 2017. Todas as solicitações em 1º 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 receber o {developer-rateplan-id}
do
plano de taxas para desenvolvedores 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 Visualizar todos os planos de tarifas comprados por um desenvolvedor.
A solicitação a seguir atualiza a data de término para 1º de dezembro de 2017. Ou seja, o plano de tarifas expira no final do dia, em 30 de novembro de 2017. Todas as solicitações de 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 }'