Como comprar e gerenciar assinaturas de produtos de API usando a API

Esta página se aplica à Apigee e à Apigee híbrida.

Confira a documentação da Apigee Edge.

Se você quiser criar um portal personalizado ou gerenciar o processo de compra manualmente, as seções a seguir descrevem como comprar e gerenciar assinaturas de produtos da API usando a API. Estes exemplos descrevem como gerenciar assinaturas para desenvolvedores de apps e AppGroups.

Consulte também Integrar a monetização à Apigee no portal do desenvolvedor baseado no Drupal.

Gerenciamento de assinaturas de desenvolvedores de apps

Desenvolvedor de apps: comprar assinaturas de produtos de API usando a API

Para comprar uma assinatura de produtos de API, emita uma solicitação POST para a seguinte API: https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions

Configure a solicitação de assinatura de produtos de API transmitindo os campos necessários no corpo da solicitação, conforme descrito em Recurso: assinaturas.

Por exemplo, a seguinte chamada de API compra uma assinatura do produto HelloworldProduct da API para o desenvolvedor especificado:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions" \
  -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: application/json" \
  -d '{"apiproduct":"HelloworldProduct"}'

Em que $TOKEN está definido como seu token de acesso OAuth 2.0, conforme descrito em Como receber um token de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte Como usar curl. Para uma descrição das variáveis de ambiente que podem ser usadas, consulte Como definir variáveis de ambiente para solicitações de API da Apigee.

Veja a seguir um exemplo de resposta: startTime é definido como o horário atual.

{
   "name": "69f8bb42-a8e4-4a2c-b932-d82b51d37b72",
   "apiproduct": "HelloworldProduct",
   "startTime": "1615987132000",
   "createdAt": "1615903252000",
   "lastModifiedAt": "1615903252000"
}

Para mais informações, consulte API para comprar assinatura de produtos de API

Desenvolvedor de apps: expirar uma assinatura de produto de API imediatamente

Para expirar uma assinatura de produtos de API imediatamente, emita uma solicitação POST para a seguinte API: https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions/$SUBSCRIPTION:expire

Por exemplo, a seguinte chamada de API expira a assinatura do produto de API com o nome 69f8bb42-a8e4-4a2c-b932-d82b51d37b72 para o desenvolvedor especificado:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions/69f8bb42-a8e4-4a2c-b932-d82b51d37b72:expire" \
  -X POST \
  -H "Authorization: Bearer $TOKEN"

Em que $TOKEN está definido como seu token de acesso OAuth 2.0, conforme descrito em Como receber um token de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte Como usar curl. Para uma descrição das variáveis de ambiente que podem ser usadas, consulte Como definir variáveis de ambiente para solicitações de API da Apigee.

Veja a seguir um exemplo de resposta: endTime é definido como o horário atual.

{
  "name": "33f8dd42-c7x5-3s3f-b098-d=c93h22m36b47",
  "apiproduct": "WeatherReport",
  "startTime": "1613494852000",
  "endTime" : "1617894954000",
  "createdAt": "1613494852000",
  "lastModifiedAt": "1613494852000"
}

Desenvolvedor de apps: listar todas as assinaturas de produtos de API de um desenvolvedor

Para listar todas as assinaturas de produtos de API de um desenvolvedor, emita uma solicitação GET para a seguinte API: https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions

Opcionalmente, você pode transmitir os seguintes campos para suportar a paginação:

  • startKey para especificar o nome da assinatura do produto da API em que a lista de assinaturas começará a ser exibida. Se omitida, a lista começará no primeiro item. Use com count para fornecer uma filtragem mais segmentada. Por exemplo, para ver as assinaturas do produto da API de 51 a 150, defina o valor de startKey como o nome da 51a assinatura e defina o valor de count como 100.
  • count para especificar o número de planos de tarifas a serem retornados na chamada da API. Use com startKey para fornecer uma filtragem mais segmentada. O limite máximo é 1.000. O padrão é 100.

Por exemplo, a chamada de API a seguir lista todas as assinaturas de produtos da API do desenvolvedor especificado:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions" \
  -X GET \
  -H "Authorization: Bearer $TOKEN"

Em que $TOKEN está definido como seu token de acesso OAuth 2.0, conforme descrito em Como receber um token de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte Como usar curl. Para uma descrição das variáveis de ambiente que podem ser usadas, consulte Como definir variáveis de ambiente para solicitações de API da Apigee.

Veja a seguir um exemplo de saída:

{
  "developerSubscriptions": [
    {
      "name": "69f8bb42-a8e4-4a2c-b932-d82b51d37b72",
      "apiproduct": "HelloworldProduct",
      "startTime": "1615987132000",
      "createdAt": "1615903252000",
      "lastModifiedAt": "1615903252000"
    },
    {
      "name": "33f8dd42-c7x5-3s3f-b098-d=c93h22m36b47",
      "apiproduct": "WeatherReport",
      "startTime": "1614124552000",
      "createdAt": "1613494852000",
      "lastModifiedAt": "1613494852000"
    }
  ]
}

Para mais informações, consulte a API para listar as assinaturas de produtos de API.

Desenvolvedor de apps: ver detalhes de uma assinatura de produto de API

Para ver os detalhes de uma assinatura de produtos de API de um desenvolvedor, emita uma solicitação GET para a seguinte API: https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions/$SUBSCRIPTION

Por exemplo, a seguinte chamada de API recupera detalhes sobre uma assinatura de produto de API para o desenvolvedor especificado:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions/69f8bb42-a8e4-4a2c-b932-d82b51d37b72" \
  -X GET \
  -H "Authorization: Bearer $TOKEN"

Em que $TOKEN está definido como seu token de acesso OAuth 2.0, conforme descrito em Como receber um token de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte Como usar curl. Para uma descrição das variáveis de ambiente que podem ser usadas, consulte Como definir variáveis de ambiente para solicitações de API da Apigee.

Veja a seguir um exemplo de saída:

{
   "name": "69f8bb42-a8e4-4a2c-b932-d82b51d37b72",
   "apiproduct": "HelloworldProduct",
   "startTime": "1615987132000",
   "createdAt": "1615903252000",
   "lastModifiedAt": "1615903252000"
}

Para mais informações, consulte API para obter assinatura de produtos de API.

Gerenciamento de assinaturas do AppGroup

Esta seção apresenta exemplos de como gerenciar assinaturas de produtos de API para AppGroups. Para mais informações sobre as APIs usadas para gerenciar assinaturas do AppGroup, consulte Recurso: assinaturas.

AppGroup: comprar assinaturas de produtos de API usando a API

Consulte Usar AppGroups para gerenciar assinaturas de produtos de API e saiba mais sobre os requisitos para usar AppGroups com assinaturas de produtos de API.

Para comprar uma assinatura de produto de API, emita uma solicitação POST para a seguinte API: https://apigee.googleapis.com/v1/organizations/$ORG/appgroups/APPGROUP_ID/subscriptions.

Configure a solicitação de assinatura de produtos de API transmitindo os campos necessários no corpo da solicitação, conforme descrito em Recurso: assinaturas.

Por exemplo, a seguinte chamada de API compra uma assinatura do produto HelloworldProduct da API para o AppGroup especificado:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/appgroups/APPGROUP_ID/subscriptions" \
  -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: application/json" \
  -d '{"apiproduct":"HelloworldProduct"}'

Em que $TOKEN está definido como seu token de acesso OAuth 2.0, conforme descrito em Como receber um token de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte Como usar curl. Para uma descrição das variáveis de ambiente que podem ser usadas, consulte Como definir variáveis de ambiente para solicitações de API da Apigee.

Veja a seguir um exemplo de resposta: startTime é definido como o horário atual.

{
   "name": "69f8bb42-a8e4-4a2c-b932-d82b51d37b72",
   "apiproduct": "HelloworldProduct",
   "startTime": "1615987132000",
   "createdAt": "1615903252000",
   "lastModifiedAt": "1615903252000"
}

Para mais informações, consulte API para comprar assinatura de produtos de API

AppGroup: expirar uma assinatura de produto de API imediatamente

Para expirar uma assinatura de produtos de API imediatamente, emita uma solicitação POST para a seguinte API: https://apigee.googleapis.com/v1/organizations/$ORG/appgroups/APPGROUP_ID/subscriptions/$SUBSCRIPTION:expire

Por exemplo, a seguinte chamada de API expira a assinatura do produto de API com o nome 69f8bb42-a8e4-4a2c-b932-d82b51d37b72 para o AppGroup especificado:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/appgroups/APPGROUP_ID/subscriptions/69f8bb42-a8e4-4a2c-b932-d82b51d37b72:expire" \
  -X POST \
  -H "Authorization: Bearer $TOKEN"

Em que $TOKEN está definido como seu token de acesso OAuth 2.0, conforme descrito em Como receber um token de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte Como usar curl. Para uma descrição das variáveis de ambiente que podem ser usadas, consulte Como definir variáveis de ambiente para solicitações de API da Apigee.

Veja a seguir um exemplo de resposta: endTime é definido como o horário atual.

{
  "name": "33f8dd42-c7x5-3s3f-b098-d=c93h22m36b47",
  "apiproduct": "WeatherReport",
  "startTime": "1613494852000",
  "endTime" : "1617894954000",
  "createdAt": "1613494852000",
  "lastModifiedAt": "1613494852000"
}

AppGroup: listar todas as assinaturas de produtos de API

Para listar todas as assinaturas de produtos de API de um AppGroup, emita uma solicitação GET para a seguinte API: https://apigee.googleapis.com/v1/organizations/$ORG/appgroups/APPGROUP_ID/subscriptions

Opcionalmente, você pode transmitir os seguintes campos para suportar a paginação:

  • startKey para especificar o nome da assinatura do produto da API em que a lista de assinaturas começará a ser exibida. Se omitida, a lista começará no primeiro item. Use com count para fornecer uma filtragem mais segmentada. Por exemplo, para ver as assinaturas do produto da API de 51 a 150, defina o valor de startKey como o nome da 51a assinatura e defina o valor de count como 100.
  • count para especificar o número de planos de tarifas a serem retornados na chamada da API. Use com startKey para fornecer uma filtragem mais segmentada. O limite máximo é 1.000. O padrão é 100.

Por exemplo, a seguinte chamada de API lista todas as assinaturas de produtos da API do AppGroup especificado:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/appgroups/APPGROUP_ID/subscriptions" \
  -X GET \
  -H "Authorization: Bearer $TOKEN"

Em que $TOKEN está definido como seu token de acesso OAuth 2.0, conforme descrito em Como receber um token de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte Como usar curl. Para uma descrição das variáveis de ambiente que podem ser usadas, consulte Como definir variáveis de ambiente para solicitações de API da Apigee.

Veja a seguir um exemplo de saída:

{
  "appGroupSubscriptions": [
    {
      "name": "69f8bb42-a8e4-4a2c-b932-d82b51d37b72",
      "apiproduct": "HelloworldProduct",
      "startTime": "1615987132000",
      "createdAt": "1615903252000",
      "lastModifiedAt": "1615903252000"
    },
    {
      "name": "33f8dd42-c7x5-3s3f-b098-d=c93h22m36b47",
      "apiproduct": "WeatherReport",
      "startTime": "1614124552000",
      "createdAt": "1613494852000",
      "lastModifiedAt": "1613494852000"
    }
  ]
}

Para mais informações, consulte a API para listar as assinaturas de produtos de API.

AppGroup: ver detalhes de uma assinatura de produto de API

Para ver os detalhes de uma assinatura de produtos de API de um AppGroup, emita uma solicitação GET para a seguinte API: https://apigee.googleapis.com/v1/organizations/$ORG/appgroups/APPGROUP_ID/subscriptions/$SUBSCRIPTION

Por exemplo, a seguinte chamada de API lista informações sobre uma assinatura de produto de API para um AppGroup especificado:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/appgroups/APPGROUP_ID/subscriptions/69f8bb42-a8e4-4a2c-b932-d82b51d37b72" \
  -X GET \
  -H "Authorization: Bearer $TOKEN"

Em que $TOKEN está definido como seu token de acesso OAuth 2.0, conforme descrito em Como receber um token de acesso OAuth 2.0. Para informações sobre as opções de curl usadas neste exemplo, consulte Como usar curl. Para uma descrição das variáveis de ambiente que podem ser usadas, consulte Como definir variáveis de ambiente para solicitações de API da Apigee.

Veja a seguir um exemplo de saída:

{
   "name": "69f8bb42-a8e4-4a2c-b932-d82b51d37b72",
   "apiproduct": "HelloworldProduct",
   "startTime": "1615987132000",
   "createdAt": "1615903252000",
   "lastModifiedAt": "1615903252000"
}

Para mais informações, consulte API para obter assinatura de produtos de API.