Configurar plano de notificação ajustável

Você está vendo a documentação do Apigee Edge.
Acesse a documentação da Apigee X.
informações

Introdução

Em um plano de notificação ajustável, o provedor da API pode ajustar o número desejado de transações para cada desenvolvedor de apps. É possível configurar se e quando as notificações serão enviadas com base no momento em que uma porcentagem do número desejado é atingida, como 90%, 100% ou 150%. Outras transações não são bloqueadas depois que o número desejado é alcançado.

Como configurar um plano de notificação ajustável usando a interface

Configure planos de notificação ajustáveis, conforme descrito abaixo.

Edge

Para configurar um plano de notificação ajustável usando a interface do Edge, ao adicionar ou editar um plano de tarifa, selecione o tipo de plano de tarifa de Notificação ajustável e, na seção Notificação ajustável, configure as seguintes informações:

Campo Descrição Padrão
Frequência de cálculo Período em que o volume de transações (ou o volume relacionado a atributos personalizados) é calculado. Selecione um número de meses (1 a 24 meses). 1 mês

Se você definiu atributos personalizados para seu produto de API, pode configurar um parâmetro de classificação personalizado para definir um contador de transações com base em um atributo personalizado.

Por exemplo, talvez seja necessário:

  • Cobrar dos desenvolvedores um valor variável com base em um valor fornecido na mensagem de uma chamada de API.
    Por exemplo, talvez você queira fazer cobranças dos desenvolvedores de apps com base no número de bytes transmitidos na solicitação de API.
  • Agrupar várias chamadas de API em uma única transação.
    Nesse caso, selecione "Usar parâmetro de avaliação personalizado" e escolha o atributo personalizado na lista suspensa.

Para mais informações, consulte Configurar plano de tarifa com atributos personalizados.

Borda clássica (nuvem privada)

Para configurar planos de notificação ajustáveis usando a interface clássica do Edge:

  1. Selecione Adjustable Notification no campo Rate Plan Type da guia "Plan Details" na janela do plano de tarifa.

    Consulte Como criar um plano de tarifa usando a IU para informações sobre como acessar a janela do plano de tarifa.

  2. Defina o campo Termo de renovação como o número de meses em que o plano é renovado automaticamente, a menos que o desenvolvedor rescinda o contrato antes dessa data. Se você definir esse valor como 0, o plano vai permanecer em vigor até que o desenvolvedor opte por encerrá-lo.
  3. Em "Plano de tarifas genéricos", clique em Detalhes.
  4. Defina a Base de agregação como o período em que o volume de transações é agregado. Selecione um número entre 1 e 24 meses. O padrão é um mês.
  5. Clique em Aplicar e fechar.
  6. Clique em Salvar rascunho.
  7. Publique o plano somente quando tiver absoluta certeza de que ele é final. Consulte Como publicar planos de tarifas para mais informações sobre como definir a data de publicação e publicar o plano.

    Após a publicação de um plano de tarifa, só é possível modificar a data de término. Não é possível excluir um plano de tarifação depois da publicação, mas ele pode expirar e substituí-lo por um plano de tarifação futuro, conforme descrito em Expirar um plano de tarifa publicado.

Como configurar um plano de notificação ajustável usando a API

Especifique os detalhes do plano de notificação ajustável na propriedade ratePlanDetails no corpo da solicitação em uma solicitação POST para /organizations/{org_name}/monetization-packages/{package_id}/rate-plans.

Para especificar um plano de notificação ajustável, especifique os seguintes valores no ratePlanDetails do corpo da solicitação:

Propriedade Valor
type Defina como USAGE_TARGET.
meteringType Defina como DEV_SPECIFIC.
duration Defina como o período da base de agregação, junto com durationType. Para planos de tarifas de notificação ajustáveis, defina um valor inteiro entre 1 e 24.
durationType

Defina como o período da base de agregação, junto com durationType. Para planos de taxas de notificação ajustáveis, defina esse valor como MONTH.

Para mais informações sobre as propriedades de configuração que podem ser definidas ao especificar os detalhes do plano de notificação ajustável, consulte Configurações dos detalhes do plano de tarifa.

Por exemplo, o texto a seguir define um plano de notificação ajustável com uma base de agregação definida como 1 mês.

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "AdjustableNotification",
     "displayName": "Adjustable notification plan",
     "description": "Adjustable notification plan",
     "published": "true",  
     "organization": {
      "id": "myorg"
     },
     "startDate": "2016-04-15 00:00:00",
     "type": "STANDARD",
     "monetizationPackage": {
        "id": "p1",
        "name": "test"
     },
     "currency": {
        "id" : "usd",
        "name" : "USD"
     },
     "ratePlanDetails": [
        {
           "type": "USAGE_TARGET",
           "meteringType": "DEV_SPECIFIC",
           "duration": 1,
           "durationType": "MONTH",
           "ratingParameter": "VOLUME",
           "organization": {
             "id": "myorg"
           },
           "currency": {
             "id": "usd",
             "name": "USD"
           }
        }
     ]
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/myorg/monetization-packages/p1/rate-plans"  \
-u email:password

Definir o número desejado de transações para cada desenvolvedor de apps usando a API

Para cada desenvolvedor de apps que aceitou o plano de taxa de notificação ajustável, é necessário definir o número desejado de transações. É possível configurar se e quando as notificações serão enviadas com base no momento em que uma porcentagem do número desejado for atingida, como 90%, 100% ou 150%. Outras transações não são bloqueadas depois que o número desejado é alcançado.

Você pode definir o número desejado de transações para um desenvolvedor de apps quando ele aceitar o plano de tarifas. É possível atualizar o valor depois.

Definir o número desejado de transações ao aceitar o plano de tarifas

Ao aceitar o plano de tarifa, para definir o número pretendido de transações, especifique a propriedade quotaTarget no corpo da solicitação em uma solicitação POST para o recurso /organizations/{org_name}/developers/{developer_id}/developer-rateplans. Defina quotaTarget como um número inteiro positivo ou 0 para desativar as notificações para o desenvolvedor do app. Se não for especificado, o padrão de quotaTarget será 0.

Por exemplo, a solicitação a seguir define o número pretendido de transações como 4.000 quando o desenvolvedor do app aceita o plano de notificação ajustável.

$ curl -H "Content-Type:application/json" -X POST -d \
'{ 
   "developer":{
     "id":"dev@mycompany.org"
   },
   "ratePlan":{
     "id":"p1_adjustable-notification-plan"
   },
   "startDate": "2016-03-24 00:00:00",
   "quotaTarget": 4000,
   "suppressWarning": false
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans" \
-u email:password

Definir o número desejado de transações ao atualizar o plano de tarifas aceito

Para definir o número pretendido de transações, atualize o plano de tarifas aceito e especifique a propriedade quotaTarget no corpo da solicitação em uma solicitação PUT para o recurso /organizations/{org_name}/developers/{developer_id}/developer-rateplans/{developer_rateplan_id}. Defina quotaTarget como um número inteiro positivo ou 0 para desativar as notificações para o desenvolvedor do app. Se não for especificado, o padrão de quotaTarget será 0.

O {developer_rateplan_id} é retornado na resposta quando você aceita o plano de tarifas publicado.

Exemplo:

{
  "created": "2016-03-31 18:59:54",
  "developer": {
    ...
  },
  "id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
  "quotaTarget": 3000,
  "ratePlan": {
    ...
  },
  "startDate": "2016-03-31 00:00:00",
  "updated": "2016-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 ver todos os planos de preços aceitos por um desenvolvedor.

Exemplo:

{
  "developerRatePlan": [
    {
      "created": "2016-03-31 14:52:30",
      "developer": {
        ...
      },
      "id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
      "quotaTarget": 3000,
      "ratePlan": { 
        ... 
      }, 
      "startDate": "2016-03-31 00:00:00", 
      "updated": "2016-03-31 18:59:54" 
    } 
  ], 
  "totalRecords": 1 
}
        

A solicitação a seguir atualiza o número pretendido de transações para 4.000.

$ curl -H "Content-Type:application/json" -X PUT -d \
'{ 
 "id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
 "developer":{
 "id":"dev@my-company.com"
 },email:password