Você está lendo a documentação do Apigee Edge.
Acesse a
documentação da Apigee X. info
Esta seção descreve como comprar um plano de taxas publicado e como expirar ou cancelar um plano de taxas comprado , se necessário, usando a API.
Como comprar um plano de taxas publicado usando a API
Depois que um plano de taxas é publicado, um desenvolvedor ou empresa pode comprá-lo (ou "aceitá-lo") 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 taxas, defina o waivefees parâmetro de consulta
como true. Essa flag é útil ao migrar desenvolvedores para a monetização, conforme
descrito em 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 taxas 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 taxas estará em vigor até o final do dia em a data especificada. Se você quiser que um plano de taxas expire em 1º de dezembro de 2017, por exemplo, defina o valor de endDate como 2017-11-30. Nesse caso, o plano de taxas 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 de transações permitidas para o desenvolvedor de apps. É possível configurar se e quando as notificações serão enviadas com base na porcentagem do número de destino que foi atingida, como 90%, 100% ou 150%. Transações adicionais não são bloqueadas após o número de destino ser atingido. 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 |
Propriedade O ID do plano de taxas é diferente do nome de exibição. Para conferir os detalhes do plano de taxas incluindo o ID, consulte Como explorar a página de planos de taxas. |
N/A | Sim |
suppressWarning |
Flag que especifica se o erro será suprimido se o desenvolvedor tentar comprar um plano de taxas que se sobrepõe a outro plano de taxas comprado. O valor pode ser um dos seguintes:
|
N/A | Não |
waveTerminationCharge |
Flag que especifica se as taxas de rescisão são dispensadas quando um plano de taxas ativo é encerrado como parte da ativação do novo plano de taxas. 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 taxas que se sobrepõe a outro plano de taxas comprado, um erro será gerado. Isso
permite que um aplicativo que fornece uma interface do usuário para monetização intercepte o erro e
exiba os produtos conflitantes para confirmação do desenvolvedor (conforme apropriado). Se
suppressWarning estiver definido como true, a monetização vai encerrar todos os planos de taxas comprados
que o desenvolvedor tem 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 taxas de notificação ajustável e define o número de transações de destino 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.
Você precisa definir os atributos de monetização MINT_DEVELOPER_ADDRESS e
MINT_DEVELOPER_LEGAL_NAME e repetir a chamada de API.
Como expirar um plano de taxas comprado por um desenvolvedor usando a API
Para expirar (ou cancelar) um plano de taxas que foi comprado por um desenvolvedor, atualize os detalhes do plano de taxas comprado
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 taxas estará em vigor até o final do dia na data de término especificada. Se você quiser que um plano de taxas expire em 1º de dezembro de 2017, por exemplo, você deve definir o valor de endDate como 2017-11-30. Nesse caso, o plano de taxas 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 taxas 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} para o
plano de taxas 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 taxas 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 taxas vai expirar no final do dia 30 de novembro de 2017. Todas as solicitações em 1º 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
}'