Como gerenciar planos de tarifas

Você está lendo a documentação do Apigee Edge.
Acesse a documentação da Apigee X.
info

Gerencie os planos de taxas usando a IU e a API, conforme descrito nas seções a seguir.

Como explorar a página "Planos de taxas"

Acesse a página "Planos de taxas", conforme descrito abaixo.

Edge

Para conferir os planos de taxas na interface do Edge, acesse a página "Planos de taxas":

  1. Faça login em apigee.com/edge.
  2. Selecione Publicar > Monetização > Planos de taxas na barra de navegação à esquerda.

A página "Planos de tarifas" é exibida.

Conforme destacado na figura, a página "Planos de taxas" permite que você:

Classic Edge (nuvem privada)

Para conferir os planos de taxas usando a IU clássica do Edge, acesse a página "Pacotes de API":

  1. Faça login em http://ms-ip:9000, em que ms-ip é o endereço IP ou o nome DNS do nó do servidor de gerenciamento.
  2. Selecione Publicar > Pacotes na barra de navegação superior.

A página "Pacotes de API" mostra os planos de taxas definidos para cada pacote.

Na página "Planos de taxas", você pode:

Como criar um plano de tarifas

Para criar um plano de taxas:

  1. acesse a página "Planos de taxas";
  2. Clique em +Plano de tarifas.
  3. Configure os seguintes campos no painel superior:
    Campo Descrição Padrão Obrigatório
    Nome do plano de taxas Nome do seu plano de tarifas.

    NOTE: o nome precisa ser exclusivo em um pacote de produtos de API. Dois planos no mesmo pacote de produtos não podem ter o mesmo nome.

    N/A Sim
    Tipo de plano de tarifa Tipo de plano de tarifa. Selecione um valor na lista suspensa. Para ver uma lista de tipos de plano de tarifas válidos, consulte Tipos de plano de tarifas aceitos. N/A Sim
    Pacote de produtos Pacote de produtos de API. Selecione um valor na lista suspensa. Para mais informações sobre pacotes de produtos de API, consulte Como gerenciar pacotes de produtos de API.

    Se você selecionar um pacote de produtos que contenha mais de um produto de API, será necessário escolher se quer configurar planos de tarifas individuais para cada produto de API ou um plano de tarifas genérico que será aplicado a todos os produtos de API.

    N/A Sim
    Público-alvo Público-alvo que pode acessar o plano de taxas. Selecione um dos seguintes valores na lista suspensa:
    • Todos: todos os desenvolvedores.
    • Desenvolvedor: desenvolvedor ou empresa. Insira o nome do desenvolvedor ou da empresa. Conforme você digita, uma lista dos desenvolvedores/empresas que contêm a string aparece em um menu suspenso. Clique no nome do desenvolvedor ou da empresa na lista suspensa.
    • Categoria do desenvolvedor: categoria do desenvolvedor. Selecione a categoria de desenvolvedor na lista suspensa.

      Configure as categorias de desenvolvedor conforme necessário, conforme descrito em Gerenciar categorias de desenvolvedor.

    Todos Não
    Data de início Data em que o plano de taxas entra em vigor. Insira uma data de início ou selecione uma no calendário. Hoje Não
    Data de término Data de término do plano de taxas. Para especificar uma data de término, ative o botão Tem data de término e insira uma data ou selecione uma no calendário.

    OBSERVAÇÃO: o plano de taxas vai ficar em vigor até o fim do dia na data especificada. Por exemplo, se você quiser que um plano de tarifas expire em 1º de dezembro de 2018, defina o valor de "endDate" como 2018-11-30. Nesse caso, o plano de tarifas vai expirar no fim do dia 30 de novembro de 2018, e todas as solicitações de 1º de dezembro de 2018 serão bloqueadas.

    Nenhum Não
    Visível para portais Defina se o plano de preços é público ou privado. Consulte Planos de tarifas públicos e tarifas exclusivas. Ativado Não
  4. Configure as taxas para o plano de preços. Consulte Como configurar taxas para um plano de preços.
    NOTE: não se aplica a planos de notificação ajustáveis.
  5. Se você selecionar um pacote de produtos que contenha mais de um produto de API, defina as seguintes preferências na seção Plano de taxas específico ou genérico:
    OBSERVAÇÃO: esta etapa não se aplica a planos de notificação ajustáveis.
    Campo Descrição Padrão
    Configurar cada produto individualmente Flag que especifica se um plano de taxas individual será configurado para cada produto de API. Desativado
    Configurar individualmente a oferta freemium de cada produto Flag que especifica se um plano freemium será configurado para cada produto de API. Desativado
    Selecione um produto Se você ativar uma ou as duas flags, selecione cada produto individualmente na lista suspensa e configure os detalhes do plano de tarifas.

    NOTE: configure todos os produtos no pacote.

    N/A
  6. Configure os detalhes do plano de tarifas com base no tipo selecionado:
  7. Clique em uma das seguintes opções:
    Botão Descrição
    Salvar como rascunho Salve o plano de taxas como rascunho.

    O plano de taxas não vai ficar visível para os desenvolvedores de apps até que você o publique. É possível editar qualquer campo em um plano de tarifas em rascunho.

    Publicar novo plano Publique o plano.

    NOTE: depois de publicar um plano de preços, só é possível modificar a data de término se ela ainda não estiver definida. Não é possível excluir um plano de preços depois que ele é publicado, mas é possível fazer com que ele expire e substituí-lo por um plano futuro, conforme descrito em Fazer um plano de preços publicado expirar.

  8. Anexe a política Verificação de limites de monetização aos proxies de API associados aos produtos de API incluídos no plano de taxas. A política de verificação de limites de monetização aplica limites de monetização aos proxies de API e garante que todas as falhas sejam capturadas com precisão nos relatórios de análise e monetização. Para mais informações, consulte Aplicar limites de monetização em proxies de API.

Como editar um plano de tarifas

É possível editar todos os campos em um plano de tarifas provisório, exceto o pacote de produtos, o tipo e o público-alvo. Depois de publicar um plano de preços, você só poderá editar a data de término se nenhuma tiver sido especificada.

Para editar um plano de tarifas:

  1. acesse a página "Planos de taxas";
  2. Clique na linha do plano de tarifa que você quer editar.
    O painel "Plano de tarifas" é exibido.
  3. Edite os campos do plano de taxas, caso necessário.
    NOTE: depois de publicar um plano de preços, só é possível modificar a data de término se ela ainda não estiver definida.
  4. Clique em uma das seguintes opções:
    Botão Descrição
    Atualizar rascunho (planos de tarifas de rascunho) Salve o plano de taxas como rascunho.

    O plano de taxas não vai ficar visível para os desenvolvedores de apps até que você o publique. É possível editar qualquer campo em um plano de tarifas em rascunho.
    Publicar rascunho (planos de taxas de rascunho) Publique o plano de taxas.

    NOTE: depois de publicar um plano de preços, só é possível modificar a data de término se ela ainda não estiver definida. Não é possível excluir um plano de preços depois que ele é publicado, mas é possível fazer com que ele expire e substituí-lo por um plano futuro, conforme descrito em Fazer um plano de preços publicado expirar.
    Data de término atualizada (planos de taxas publicados) Definir a data de término de um plano publicado.

    NOTE: depois de definida, a data de término de um plano de preços publicado não pode mais ser modificada.

Como excluir um plano de taxas em rascunho

Exclua um plano de taxas em rascunho se ele não for mais necessário.

OBSERVAÇÃO:não é possível excluir um plano de taxas publicado.

Para excluir um plano de taxas em rascunho:

  1. acesse a página "Planos de taxas";
  2. Posicione o cursor sobre o plano de tarifas que você quer excluir para exibir o menu de ações.
  3. Clique em .
  4. Clique em Excluir para confirmar a ação.

Como gerenciar planos de taxas usando a API

As seções a seguir descrevem como gerenciar planos de taxas usando a API.

Como criar planos de taxas usando a API

Para criar um plano de tarifas, emita uma solicitação POST para /organizations/{org_name}/monetization-packages/{monetizationpackage_id}/rate-plans, em que {monetizationpackage_id} é o ID do pacote de produtos de API para o qual você está criando o plano de tarifas. O ID é retornado na resposta quando você cria o pacote de produtos de API.

Ao criar um plano de taxas, especifique o seguinte no corpo da solicitação:

  • ID da organização
  • ID do pacote de produtos da API
  • Nome do plano de tarifação
  • Descrição do plano de taxas
  • Escopo do plano de taxas (se ele se aplica a todos os desenvolvedores ou apenas a um desenvolvedor, empresa ou categoria de desenvolvedor específico)
  • Data em que o plano de tarifas entra em vigor
  • Moeda do plano de tarifa
  • Se o plano de taxas será publicado
  • Se o plano de tarifas é público ou privado

Há outras configurações que você pode especificar, como o período em que o pagamento vence (por exemplo, 30 dias). Consulte Propriedades de configuração para planos de tarifas.

Se você criar um plano de tarifas (que não seja apenas de taxas) para um pacote de produtos de API com mais de um produto, poderá aplicar o plano a um produto específico no pacote. Para isso, identifique o produto na solicitação. Se você não identificar um produto, o plano será aplicado a todos os produtos no pacote de produtos da API.

As seções a seguir descrevem como criar planos de taxas:

Como criar um plano de tarifas padrão usando a API

Para criar um plano de taxas padrão, defina o atributo type como STANDARD, conforme mostrado no exemplo a seguir.

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Simple rate plan",
     "currency": {
      "id" : "usd"
     },
     "description": "Simple rate plan",
     "displayName" : "Simple rate plan",
     "monetizationPackage": {
      "id": "location"
     },
     "organization": {
      "id": "{org_name}"
     },
     "published": true,
     "isPrivate" : false,
     "ratePlanDetails": [
     {
      …
     }
     ],
     "startDate": "2013-09-15",
     "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location_package/rate-plans" \
-u email:password

Como criar um plano de taxas para desenvolvedores ou empresas usando a API

Para aplicar o plano de tarifas a um desenvolvedor ou empresa específica, defina o valor type como Developer. Também é necessário identificar o desenvolvedor ou a empresa na solicitação, informando o ID, o nome civil e o nome do desenvolvedor ou da empresa.

Por exemplo, o trecho a seguir cria um plano de taxas para o desenvolvedor Dev Five:

...
     "type": "DEVELOPER",
       "developer" : {
        "id" : "0mkKu1PALUGfjUph",
        "legalName" : "DEV FIVE",
        "name" : "Dev Five"
      }
...

Como criar um plano de taxas de categoria de desenvolvedor usando a API

Para aplicar o plano de taxas a uma categoria de desenvolvedor, defina o valor type como Developer_Category. Também é necessário identificar a categoria do desenvolvedor na solicitação. Exemplo:

...
     "type": "DEVELOPER_CATEGORY",
       "developerCategory" : {
        "id" : "5e172299-8232-45f9-ac46-40076139f373",
        "name" : "Silver",
        "description" : "Silver category"
      }
...

Como criar um plano de taxas específico para um produto de API usando a API

Ao criar um plano de tarifas para pacotes de produtos de API que incluem vários produtos de API, é possível especificar os detalhes do plano de tarifas para cada produto individualmente.

Por exemplo, o comando a seguir cria um plano de participação na receita com dois produtos de API:

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Multi-product rate plan",
     "currency": {
      "id" : "usd"
     },
     "description": "Multi-product rate plan",
     "displayName" : "Multi-product rate plan",
     "monetizationPackage": {
      "id": "mypackage",
      ...
     },
     "organization": {
      "id": "{org_name}",
      ...
     },
     "published": true,
     "isPrivate" : false,
     "ratePlanDetails": [
     {
        "ratePlanRates":[{
            "revshare":0,
            "startUnit":0,
            "type":"REVSHARE",
            "endUnit":null
        }],
       "revenueType":"NET",
       "type":"REVSHARE"
       "currency":{...},
       "product":{"id":"product1","displayName":"Product1"},
       "customPaymentTerm":false
     },
     {
        "ratePlanRates":[{
            "revshare":10,
            "startUnit":0,
            "type":"REVSHARE",
            "endUnit":null
        }],
       "revenueType":"NET",
       "type":"REVSHARE"
       "currency":{...},
       "product":{"id":"product2","displayName":"Product2"},
       "customPaymentTerm":false
     }
     ],
     "startDate": "2019-09-15",
     "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/my-package/rate-plans" \
-u email:password

Para adicionar um produto de API ao pacote de produtos de API my-package, adicione os detalhes do plano de taxas do produto de API no corpo da solicitação, conforme descrito em Como adicionar um produto de API a um pacote de produtos de API com planos de taxas específicos do produto de API.

$ curl -H "Content-Type:application/json" -X POST -d \
'{
    "ratePlan": [
    {
        "id": "my-package_multi-product-rate-plan",
        "ratePlanDetails": [
        {
            "ratePlanRates":[{
                "revshare":20,
                "startUnit":0,
                "type":"REVSHARE",
                "endUnit":null
             }],
             "revenueType":"NET",
             "type":"REVSHARE"
             "currency":{...},
             "customPaymentTerm":false
         }]
    }]
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/my-package/products/product3" \
-u email:password

Como definir o plano de taxas como público ou particular usando a API

Ao criar um plano de tarifas, você pode especificar se ele é público ou privado usando o atributo isPrivate no corpo da solicitação. Se definido como true, o plano de tarifas será privado. Para mais informações, consulte Planos de tarifas públicas x tarifas exclusivas.

Por exemplo, o código a seguir cria um plano de tarifa exclusiva:

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Simple rate plan",
     "currency": {
      "id" : "usd"
     },
     "description": "Simple rate plan",
     "displayName" : "Simple rate plan",
     "monetizationPackage": {
      "id": "location"
     },
     "organization": {
      "id": "{org_name}"
     },
     "published": true,
     "isPrivate" : true,
     "ratePlanDetails": [
     {
      …
     }
     ],
     "startDate": "2013-09-15",
     "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location_package/rate-plans" \
-u email:password

Como publicar um plano de taxas usando a API

Para publicar um plano de tarifas, defina o valor da propriedade published como "true" ao criar o plano. Os desenvolvedores poderão conferir o plano de tarifas a partir da data especificada na propriedade startDate do plano.

Por exemplo, o código a seguir cria e publica um plano de tabela de preços (apenas parte da solicitação é mostrada):

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Flat rate card plan",
     "developer":null,
     "developerCategory":null,
     "advance": "false",
     …
     "published": "true",
     "ratePlanDetails": [
     …
      ],
     …
     "type": "RATECARD"
     }],
     …
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans" \
-u email:password

Como salvar um rascunho de plano de taxas usando a API

Para salvar um plano de taxas sem publicar, defina o valor da propriedade published como "false" ao criar o plano.

Por exemplo, o código a seguir cria um plano de tabela de preços e o salva como rascunho (apenas parte da solicitação é mostrada):

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Flat rate card plan",
     "developer":null,
     "developerCategory":null,
     "advance": "false",
     …
     "published": "false",
     "ratePlanDetails": [
     …
      ],
     …
     "type": "RATECARD"
     }],
     …
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans" \
-u email:password

Como editar um rascunho de plano de taxas usando a API

Para atualizar um rascunho de plano de taxas, envie uma solicitação PUT para /organizations/{org_name}/monetization-packages/{package_id}/rate-plans/{plan_Id}, em que{package_id} é a identificação do pacote de API e {plan_Id} é a identificação do plano de taxas. Ao fazer a atualização, especifique no corpo da solicitação as configurações atualizadas e o ID do plano de tarifas. Se você atualizar uma taxa de plano de taxas, também precisará especificar o ID dela. Por exemplo, a solicitação a seguir atualiza a taxa de um plano de taxas com ID location_flat_rate_card_plan (a atualização está em destaque):

$ curl -H "Content-Type: application/json" -X PUT -d \
 '{
      "id" : "location_flat_rate_card_plan",
      "name": "Flat rate card plan",
      "advance": "false",
      "currency": {
       "id" : "usd"
      },
      "description": "Flat rate card plan",
      "displayName" : "Flat rate card plan",
      "frequencyDuration": "30",
      "frequencyDurationType": "DAY",
      "earlyTerminationFee": "10",
      "monetizationPackage": {
       "id": "location"
      },
      "organization": {
       "id": "{org_name}"
      },
      "paymentDueDays": "30",
      "prorate": "false",
      "published": "false",
      "ratePlanDetails": [
      {
       "currency": {
        "id" : "usd"
       },
       "paymentDueDays": "30",
       "meteringType": "UNIT",
       "organization": {
        "id": "{org_name}"
       },
       "ratePlanRates": [
        {
         "id" : "26b69b0b-9863-48c9-ba73-74a5b918fcec",
         "type": "RATECARD",
         "rate": "0.15",
         "startUnit": "0"
        }
       ],
      "ratingParameter": "VOLUME",
      "type": "RATECARD"
      }],
      "recurringStartUnit": 1,
      "recurringType": "CALENDAR",
      "recurringFee": "10",
      "setUpFee": "10",
      "startDate": "2013-09-15 00:00:00",
      "type": "STANDARD"
 }' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans/location_flat_rate_card_plan" \
-u email:password

A resposta inclui a tarifa do plano de preços atualizada (apenas parte da resposta é mostrada):

"ratePlanRates" : [ {
  "id" : "26b69b0b-9863-48c9-ba73-74a5b918fcec",
  "rate" : 0.15,
  "startUnit" : 0,
  "type" : "RATECARD"
} ],

Como visualizar planos de taxas usando a API

É possível conferir os planos de taxas usando a API de monetização, conforme descrito nas seções a seguir.

Como visualizar todos os planos de taxas de uma organização usando a API

Para conferir todos os planos de taxas de uma organização, emita uma solicitação GET para /mint/organizations/{org_name}/rate-plans, em que {org_name} é o nome da sua organização.

É possível transmitir os seguintes parâmetros de consulta para filtrar os resultados:

Parâmetro de consulta Descrição
all Flag que especifica se todos os planos de tarifas devem ser retornados. Se definido como false, o número de planos de tarifas retornados por página será definido pelo parâmetro de consulta size. O valor padrão é true.
size Número de pacotes de API retornados por página. Se o parâmetro de consulta all estiver definido como true, esse parâmetro será ignorado.
page Número da página que você quer retornar (se o conteúdo for paginado). Se o parâmetro de consulta all estiver definido como true, esse parâmetro será ignorado.

Exemplo:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/rate-plans" \
  -u email:password

Como visualizar todos os planos de taxas de um pacote de produtos de API usando a API

Para conferir todos os planos de tarifas de um pacote de API, emita uma solicitação GET para /mint/organizations/{org_name}/monetization-packages/{package_id}/rate-plans, em que {package_id} é o ID do pacote de API (o ID do pacote é retornado quando você cria o pacote de monetização).

Por padrão, somente os planos de tarifas ativos, públicos e padrão são retornados nos resultados. Para incluir:

  • Para planos de tarifas em rascunho ou expirados, defina o parâmetro de consulta current como false (por exemplo, ?current=false).
  • Planos de tarifas exclusivas: defina o parâmetro de consulta showPrivate como true (por exemplo, ?showPrivate=true).
  • Todos os planos de tarifas padrão: defina o parâmetro de consulta standard como true (por exemplo, ?standard=true).

Exemplo:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/monetization-packages/communications/rate-plans" \
  -u email:password

Como visualizar um plano de taxas de um pacote de API usando a API

Para conferir um plano de taxas de um pacote de API, envie uma solicitação GET para /mint/organizations/{org_name}/monetization-packages/{package_id}/rate-plans/{plan_id}, em que {package_id} é o ID do pacote de API e {plan_id} é o ID do plano de taxas. O ID do pacote é retornado quando você cria o pacote de monetização, e o ID do plano de taxas é retornado quando você cria o plano de taxas.

Exemplo:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/monetization-packages/communications/rate-plans/communications_standard_fixed_plan" \
  -u email:password

Veja a seguir um exemplo de resposta:

{
   "advance" : true,
   "contractDuration" : 1,
   "contractDurationType" : "YEAR",
   "currency" : {
     "id" : "usd",
     ...
     "organization" : {
       ...
     },
     ...
   },
   "description" : "Standard Fixed Plan",
   "displayName" : "Standard Fixed Plan",
   "earlyTerminationFee" : 0.0000,
   "frequencyDuration" : 1,
   "frequencyDurationType" : "MONTH",
   "id" : "communications_standard_fixed_plan",
   "isPrivate" : false,
   "monetizationPackage" : {
     "description" : "Communications",
     "displayName" : "Communications",
     "id" : "communications",
     "name" : "Communications",
     "organization" : {
      ...
     },
     "product" : [ {
       "customAtt1Name" : "user",
       "description" : "Location",
       "displayName" : "Location",
       "id" : "location",
       "name" : "location",
       "organization" : {
       ...
       },
       "status" : "CREATED"
     }, {
       "customAtt1Name" : "user",
       "description" : "Messaging",
       "displayName" : "Messaging",
       "id" : "messaging",
       "name" : "messaging",
       "organization" : {
         ...
       },
       "status" : "CREATED"
     } ],
     "status" : "CREATED"
   },
   "name" : "Standard Fixed Plan",
   "organization" : {
     ...
   },
   "paymentDueDays" : "30",
   "prorate" : true,
   "published" : true,
   "ratePlanDetails" : [ {
     "aggregateFreemiumCounters" : true,
     "aggregateStandardCounters" : true,
     "currency" : {
       "id" : "usd",
       "name" : "USD",
       "organization" : {
        ...
       },
       "status" : "ACTIVE",
       "virtualCurrency" : false
     },
     "id" : "cb92f7f3-7331-446f-ad63-3e176ad06a86",
     "meteringType" : "UNIT",
     "organization" : {
      ...
     },
     "paymentDueDays" : "30",
     "ratePlanRates" : [ {
       "id" : "07eefdfb-4db5-47f6-b182-5d606c6051c2",
       "rate" : 0.0500,
       "startUnit" : 0,
       "type" : "RATECARD"
     } ],
     "ratingParameter" : "VOLUME",
     "type" : "RATECARD"
   } ],
   "recurringFee" : 200.0000,
   "recurringStartUnit" : 1,
   "recurringType" : "CALENDAR",
   "setUpFee" : 100.0000,
   "startDate" : "2013-01-11 22:00:00",
   "type" : "STANDARD"
 }

Como visualizar todos os planos de taxas ativos de um desenvolvedor usando a API

Para conferir todos os planos de taxas ativos de um desenvolvedor, envie uma solicitação GET para /mint/organizations/{org_name}/developers/{developer_id}/developer-rateplans, em que {developer_id} é o endereço de e-mail do desenvolvedor.

É possível transmitir os seguintes parâmetros de consulta para filtrar os resultados:

Parâmetro de consulta Descrição
all Flag que especifica se todos os pacotes de API devem ser retornados. Se definido como false, o número de pacotes de API retornados por página será definido pelo parâmetro de consulta size. O valor padrão é false.
size Número de pacotes de API retornados por página. O padrão é 20. Se o parâmetro de consulta all estiver definido como true, esse parâmetro será ignorado.
page Número da página que você quer retornar (se o conteúdo for paginado). Se o parâmetro de consulta all estiver definido como true, esse parâmetro será ignorado.

Exemplo:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans" \
  -u email:password

Veja a seguir um exemplo de resposta:

{
  "ratePlan" : [ {
    "advance" : true,
    "contractDuration" : 1,
    "contractDurationType" : "MONTH",
    "currency" : {
      "description" : "United States Dollar",
      "displayName" : "United States Dollar",
      "id" : "usd",
      "name" : "USD",
      "organization" : {
        ...
      },
      "status" : "ACTIVE",
      "virtualCurrency" : false
    },
    "description" : "Fee Only RatePlan",
    "displayName" : "Fee Only RatePlan",
    "earlyTerminationFee" : 10.0000,
    "freemiumDuration" : 0,
    "freemiumDurationType" : "MONTH",
    "freemiumUnit" : 0,
    "frequencyDuration" : 1,
    "frequencyDurationType" : "WEEK",
    "id" : "messaging_package_fee_only_rateplan",
    "isPrivate" : false,
    "monetizationPackage" : {
      "description" : "messaging package",
      "displayName" : "Messaging Package",
      "id" : "messaging_package",
      "name" : "Messaging Package",
      "organization" : {
        ...
      },
      "product" : [ {
        "customAtt1Name" : "user",
        "customAtt2Name" : "response size",
        "customAtt3Name" : "content-length",
        "description" : "messaging api product",
        "displayName" : "messaging",
        "id" : "messaging",
        "name" : "messaging",
        "organization" : {
         ...
        },
        "status" : "CREATED",
        "transactionSuccessCriteria" : "status == 'SUCCESS'"
      } ],
      "status" : "CREATED"
    },
    "name" : "Fee Only RatePlan",
    "organization" : {
     ...
    },
    "paymentDueDays" : "30",
    "prorate" : false,
    "published" : true,
    "ratePlanDetails" : [ ],
    "recurringFee" : 10.0000,
    "recurringStartUnit" : 1,
    "recurringType" : "CALENDAR",
    "setUpFee" : 20.0000,
    "startDate" : "2013-02-20 00:00:00",
    "type" : "STANDARD"
  } ],
  "totalRecords" : 1
}

Como visualizar um plano de taxas aceito para um desenvolvedor usando a API

Para conferir um plano de tarifas ativo de um desenvolvedor, envie uma solicitação GET para /mint/organizations/{org_name}/developers/{developer_id}/developer-rateplans/{developer_rateplan_id}, em que {developer_id} é o endereço de e-mail do desenvolvedor e {developer_rateplan_id} é o ID do plano de tarifas aceito que é retornado na resposta quando você aceita o plano de tarifas publicado.

Exemplo:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/messaging_package_fee_only_rateplan" \
  -u email:password

Veja a seguir um exemplo de resposta:

{
    "created" : "2018-01-25 20:01:54",
    "developer" : {
    },
    "id" : "a73s104-276f-45b3-8075-83d1046ea550",
    "nextCycleStartDate" : "2018-02-19 00:00:00",
    "nextRecurringFeeDate" : "2018-02-19 00:00:00",
    "prevRecurringFeeDate" : "2018-01-25 00:00:00",
    "ratePlan" : {
      "frequencyDuration" : 1,
      "frequencyDurationType" : "MONTH",
      "recurringFee" : 0.0000,
      "recurringStartUnit" : 19,
      "recurringType" : "CALENDAR",
      "setUpFee" : 0.0000,
      "type" : "STANDARD"
    },
    "startDate" : "2018-01-25 20:01:54",
    "updated" : "2018-01-25 20:01:54"
  }

Como visualizar um plano de taxas aceito para um desenvolvedor que contém um produto de API usando a API

Para conferir um plano de taxas aceito de um desenvolvedor que contém um produto de API, envie uma solicitação GET para /mint/organizations/{org_id}/developers/{developer_id}/products/{product_id}/rate-plan-by-developer-product, em que {developer_id} é o ID do desenvolvedor e /{product_id} é o ID do produto.

Por padrão, apenas um plano de tarifas público é retornado nos resultados. Para mostrar uma tarifa exclusiva, defina o parâmetro de consulta showPrivate como true (por exemplo, ?showPrivate=true).

Exemplo:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/products/location/rate-plan-by-developer-product" \
  -u email:password

Como visualizar todos os planos de taxas aceitos por um desenvolvedor usando a API

Para conferir os planos de taxas aceitos por um desenvolvedor, emita uma solicitação GET para /mint/organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans, em que {developer_id} é o ID do desenvolvedor.

É possível transmitir os seguintes parâmetros de consulta para filtrar os resultados:

Parâmetro de consulta Descrição
all Flag que especifica se todos os pacotes de API devem ser retornados. Se definido como false, o número de pacotes de API retornados por página será definido pelo parâmetro de consulta size. O valor padrão é false.
size Número de pacotes de API retornados por página. O padrão é 20. Se o parâmetro de consulta all estiver definido como true, esse parâmetro será ignorado.
page Número da página que você quer retornar (se o conteúdo for paginado). Se o parâmetro de consulta all estiver definido como true, esse parâmetro será ignorado.

Exemplo:

curl -H "Accept:application/json" -X GET \
  "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-accepted-rateplans" \
  -u email:password

Veja a seguir um exemplo de resposta:

{
  "developerRatePlan" : [ {
     "created" : "2018-01-25 20:01:54",
     "developer" : { ...
     },
     "id" : "a73s104-276f-45b3-8075-83d1046ea550",
     "nextCycleStartDate" : "2018-02-19 00:00:00",
     "nextRecurringFeeDate" : "2018-02-19 00:00:00",
     "prevRecurringFeeDate" : "2018-01-25 00:00:00",
     "ratePlan" : {
       "frequencyDuration" : 1,
       "frequencyDurationType" : "MONTH",
       "recurringFee" : 0.0000,
       "recurringStartUnit" : 19,
       "recurringType" : "CALENDAR",
       "setUpFee" : 0.0000,
       "type" : "STANDARD"
     },
     "startDate" : "2018-01-25 20:01:54",
     "updated" : "2018-01-25 20:01:54"
   }],
   "totalRecords" : 1
}

Como excluir um rascunho de plano de taxas usando a API

Para excluir um rascunho de plano de taxas, envie uma solicitação DELETE para /organizations/{org_name}/monetization-packages/package_id}/rate-plans/{plan_Id}, em que {plan_Id} é a identificação do plano de taxas a ser excluído e {package_id} é a identificação do pacote de API do plano de taxas. Por exemplo:

$ curl -H "Accept:application/json" -X DELETE \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans/location_flat_rate_card_plan" \
-u email:password

Propriedades de configuração para planos de tarifas

Ao criar um plano de taxas usando a API, é possível especificar as seguintes configurações de configuração.

Nome Descrição Padrão Obrigatório?
advance

Válido apenas para taxas recorrentes. Flag que especifica se a taxa recorrente é cobrada antecipadamente. Valores válidos:

  • true: a taxa recorrente é cobrada antecipadamente. Por exemplo, se o período for de um mês, a taxa recorrente será cobrada na fatura gerada quando o mês de faturamento anterior terminar.
  • false: a taxa recorrente é cobrada no final do período. Por exemplo, se o período for de um mês, a taxa recorrente será cobrada na fatura quando o mês de faturamento atual terminar. Esse é o padrão.
falso Não
contractDuration

Duração do contrato do plano com contractDurationType. Por exemplo, para especificar uma duração de contrato de seis meses, defina contractDuration como 6 e contractDurationType como MONTH.

N/A Não
contractDurationType

Duração do contrato do plano com contractDuration. Valores válidos:

  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR
N/A Não
currency

Moeda usada para o plano de taxa. Especifique o código ISO 4217 da moeda, como usd para dólar dos Estados Unidos ou chf para franco suíço.

N/A Sim
description

Descrição do plano de taxas.

N/A Sim
developer

ID do desenvolvedor (endereço de e-mail). Especifique apenas para planos de taxas de desenvolvedor.

N/A Não
developerCategory

ID da categoria do desenvolvedor. Especifique apenas para planos de taxas da categoria do desenvolvedor.

N/A Não
displayName

Nome de exibição fácil de usar para o plano de tarifas.

N/A Sim
earlyTerminationFee

Uma taxa única cobrada se o desenvolvedor encerrar o plano antes do prazo de renovação.

N/A Não
endDate

Data de término do plano. Os desenvolvedores não poderão acessar o plano de tarifas após essa data. Se você não quiser que o plano de taxas termine em uma data específica, especifique um valor nulo para endDate.

O plano de taxas vai ficar em vigor até o final do dia na data especificada. Se você quiser que um plano de tarifas expire em 1º de dezembro de 2016, por exemplo, defina o valor de endDate como 2016-11-30. Nesse caso, o plano de tarifas vai expirar no fim do dia 30 de novembro de 2016, e todas as solicitações de 1º de dezembro de 2016 serão bloqueadas.

NOTE: ao visualizar o plano de taxas usando a API, o carimbo de data/hora endDate é especificado como YYYY-MM-DD 00:00:00, o que pode ser enganoso.

N/A Não
freemiumDuration

Período de tempo para o período freemium junto com freemiumDurationType. Por exemplo, para especificar que o período freemium é de 30 dias, defina freemiumDuration como 30 e freemiumDurationType como DAY.

N/A Não
freemiumDurationType

Período de tempo para o período freemium com freemiumDuration. Valores válidos:

  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR
N/A Não
freemiumUnit

Quantidade freemium. O valor pode ser o número de transações ou o número de unidades referentes a um atributo personalizado registrado na política de registro de transações.

N/A Não
frequencyDuration

Válido apenas para taxas recorrentes. Período entre as cobranças de taxas recorrentes, junto com frequencyDurationType. Por exemplo, para especificar que o período entre as cobranças de taxas é de 30 dias, defina frequencyDuration como 30 e frequencyDurationType como DAY.

N/A Não
frequencyDurationType Válido apenas para taxas recorrentes. Período entre as cobranças de taxas recorrentes, junto com frequencyDuration. Alguns dos valores válidos são:
  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR
N/A Não
isPrivate Flag que especifica se o plano de tarifas é público ou privado. O padrão é false (público). Para mais informações, consulte Planos de tarifas públicos e tarifas exclusivas. N/A Não
monetizationPackage

ID do pacote de produtos de API para o plano de taxas.

N/A Não
name

Nome do plano de taxas.

N/A Sim
organization

ID da organização para o plano de tarifas.

N/A Sim
paymentDueDays

Válido apenas para taxas recorrentes. Número de dias em que as taxas estão vencidas. Por exemplo, defina o valor como 30 para indicar que as taxas vencem em 30 dias.

N/A Não
proRate

Válido apenas para taxas recorrentes. Flag que especifica se a taxa recorrente é proporcional quando um desenvolvedor inicia ou encerra um plano no meio de um mês. Valores válidos:

  • true - A taxa inicial é proporcional com base no número de dias até o fim do período (ou o número de dias usados no período).
  • false: o desenvolvedor recebe a cobrança da taxa inicial completa, independente de quando ele inicia (ou encerra) o plano. Esse é o padrão.
falso Não
published

Flag que especifica se o plano de taxas deve ser publicado para visualização por desenvolvedores. Valores válidos:

  • true: publique o plano de taxas.
  • false: não publique o plano de taxas.
N/A Sim
ratePlanDetails

Detalhes do plano de taxas (consulte Propriedades de configuração para detalhes do plano de taxas).

N/A Sim
recurringFee

Taxa cobrada do desenvolvedor de forma contínua até que ele encerre o plano.

N/A Não
recurringStartUnit

Válido apenas se recurringType estiver definido como CALENDAR. Dia do mês para cobrar a taxa recorrente. Por exemplo, se a taxa recorrente for cobrada mensalmente e recurringStartUnit estiver definido como 1, a taxa recorrente será cobrada no primeiro dia de cada mês.

N/A Não
recurringType

Programação da taxa recorrente. Valores válidos:

  • CALENDAR: programada com base em uma agenda.
  • CUSTOM: programado com base em uma configuração de data personalizada.
N/A Não
setUpFee

Uma taxa única cobrada para cada desenvolvedor na data de início do plano (ou seja, a data em que o desenvolvedor compra o plano).

N/A Não
startDate

Data de início do plano. Os desenvolvedores podem conferir o plano de tarifas a partir dessa data.

N/A Sim
type

Tipo de plano de tarifas. Especifique uma destas opções:

  • STANDARD. Válido para todos os desenvolvedores.
  • DEVELOPER_CATEGORY. Válido para todos os desenvolvedores em uma categoria selecionada.
  • DEVELOPER. Aplica-se a um desenvolvedor ou empresa específica.
N/A Sim

Propriedades de configuração para detalhes do plano de tarifa

É possível especificar qualquer uma das seguintes propriedades de configuração como parte da matriz ratePlanDetails ao criar o plano de taxas.

Nome Descrição Padrão Obrigatório?
aggregateFreemiumCounters

Flag que especifica se os contadores agregados estão ativados para determinar se o uso de um produto de API está no intervalo livre. Os contadores agregados precisam estar ativados para configurar um plano freemium para um produto. Valores válidos:

  • true: ative os contadores agregados.
  • false: não ative contadores agregados.
N/A Não
aggregateStandardCounters

Flag que especifica se os contadores agregados são usados para determinar a faixa de uso (como uma faixa de volume para um plano de tabela de preços). O valor pode ser um dos seguintes:

  • true - Use contadores agregados.
  • false: não use contadores agregados.
N/A Não
aggregateTransactions

NOTE: no momento, essa propriedade não é usada pela monetização e pode ser ignorada.

verdadeiro Não
currency

Moeda

N/A Não
duration

Período para a frequência de cálculo, junto com durationType, em que os valores permitidos de duration são de 1 a 24.

Por exemplo, defina duration como 2 e durationType como MONTH para especificar uma frequência de cálculo de dois meses.

N/A Não
durationType

Período para a frequência de cálculo, junto com duration. O único valor válido é MONTH.

Consulte duration para um exemplo de uso.

N/A Não
freemiumDuration

Período de tempo do período freemium de um produto de API individual junto com freemiumDurationType. Por exemplo, para especificar que o período freemium de um produto de API é de 30 dias, defina freemiumDuration como 30 e freemiumDurationType como DAY.

N/A Não
freemiumDurationType

Período de tempo do período freemium de um produto de API individual junto com freemiumDuration. Valores válidos:

  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR

Por exemplo, para especificar que o período freemium de um produto de API é de 30 dias, defina freemiumDuration como 30 e freemiumDurationType como DAY.

N/A Não
freemiumUnit

Quantidade freemium para um produto de API. O valor pode ser o número de transações ou o número de unidades pertencentes a um atributo personalizado registrado na política de registro de transações.

N/A Não
meteringType

Modelo de cobrança para um plano de tabela de preços. Valores válidos:

  • UNIT: modelo de cobrança de taxa fixa.
  • VOLUME: modelo de cobrança por faixa de volume.
  • STAIR_STEP: modelo de cobrança agrupado.
  • DEV_SPECIFIC: modelo de carregamento de notificação ajustável. Não é válido para nenhum outro modelo de receita.
N/A sim
organization

ID da organização.

N/A Não
paymentDueDays

Data de vencimento do pagamento para um desenvolvedor pós-pago. Por exemplo, defina o valor como 30 para indicar que o pagamento vence em 30 dias.

N/A Não
product

Informações do produto da API, como ID.

N/A Não
ratePlanRates

Detalhes da taxa do plano de tarifação, como o tipo de plano (REVSHARE ou RATECARD), a taxa de um plano da tabela de preços, a participação na receita de um plano de participação na receita e o intervalo (unidade inicial e unidade final em que a taxa do plano de tarifação se aplica).

N/A Sim
ratingParameter

Base para o plano de taxas. O plano de tarifas é baseado em transações ou em um atributo personalizado. Valores válidos:

  • VOLUME: o plano de tarifas é baseado no volume de transações.
  • custom_attribute : nome de um atributo personalizado definido na política de registro de transações do produto de API e válido apenas para planos de tabela de preços. O nome do atributo personalizado não pode ser definido como VOLUME.
VOLUME Sim
ratingParameterUnit

A unidade que se aplica ao ratingParameter. Only required if ratingParameter está definida como um atributo personalizado (ou seja, não está definida como VOLUME).

N/A Sim
revenueType

Base da participação na receita em um plano de participação na receita. Valores válidos:

  • GROSS: a participação na receita é baseada em uma porcentagem do preço bruto de uma transação.
  • NET: a participação na receita é baseada em uma porcentagem do preço líquido de uma transação.
N/A Não
type

Tipo de plano de tarifa. Valores válidos:

  • REVSHARE: modelo de participação na receita.
  • RATECARD: modelo de tabela de preços.
  • REVSHARE_RATECARD: modelo de participação na receita e tabela de preços.
  • USAGE_TARGET - Modelo de notificação ajustável.

Para mais informações sobre os tipos de plano de tarifas, consulte Tipos de plano de tarifas compatíveis.

N/A Sim