このページは Apigee と Apigee ハイブリッドに適用されます。
Apigee Edge のドキュメントを表示する。
以下のセクションでは、独自のカスタム ポータルを構築する場合や、購入プロセスを手動で管理する場合に、API を使用した API プロダクト サブスクリプションの購入と管理の方法について説明します。Apigee Monetization を Drupal ベースのデベロッパー ポータルに統合するもご覧ください。
API を使用した API プロダクト サブスクリプションの購入
API プロダクトのサブスクリプションを購入するには、POST リクエストを次の API に送信します。
https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions
リソース: サブスクリプションの説明に従って、リクエスト本文に必須項目を渡して API プロダクト サブスクリプション リクエストを構成します。
たとえば、次の API 呼び出しでは、指定されたデベロッパーの HelloworldProduct API プロダクトのサブスクリプションを購入します。
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"}'
ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用できる環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。
レスポンス出力の例を次に示します。startTime は現在の時刻に設定されています。
{
"name": "69f8bb42-a8e4-4a2c-b932-d82b51d37b72",
"apiproduct": "HelloworldProduct",
"startTime": "1615987132000",
"createdAt": "1615903252000",
"lastModifiedAt": "1615903252000"
}詳しくは、Purchase API product subscription API をご覧ください。
API プロダクト サブスクリプションをすぐに期限切れにする
API プロダクトのサブスクリプションをすぐに期限切れにするには、次の API に POST リクエストを送信します。
https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions/$SUBSCRIPTION:expire
たとえば、次の API 呼び出しは、指定されたデベロッパーの名前 69f8bb42-a8e4-4a2c-b932-d82b51d37b72 で API プロダクト サブスクリプションを期限切れにします。
curl "https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions/69f8bb42-a8e4-4a2c-b932-d82b51d37b72:expire" \ -X POST \ -H "Authorization: Bearer $TOKEN"
ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用できる環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。
レスポンス出力の例を次に示します。endTime は現在の時刻に設定されています。
{
"name": "33f8dd42-c7x5-3s3f-b098-d=c93h22m36b47",
"apiproduct": "WeatherReport",
"startTime": "1613494852000",
"endTime" : "1617894954000",
"createdAt": "1613494852000",
"lastModifiedAt": "1613494852000"
}デベロッパーのすべての API プロダクト サブスクリプションを一覧表示する
特定のデベロッパーの API プロダクト サブスクリプションをすべて一覧表示するには、次の API に GET リクエストを送信します。
https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions
必要に応じて、次のフィールドを渡してページ分割をサポートできます。
startKeyは、サブスクリプションのリストの表示を開始する API プロダクト サブスクリプションの名前を指定します。省略した場合は、最初の項目からリストが開始されます。countと併用すると、ターゲットを絞ったフィルタリングが可能になります。たとえば、51~150 の API プロダクト サブスクリプションを表示するには、startKeyの値を 51 番目のサブスクリプションの名前に設定し、countの値を 100 に設定します。countを使用して、API 呼び出しで返される料金プランの数を指定します。startKeyと併用すると、ターゲットを絞ったフィルタリングが可能になります。上限は 1,000 です。デフォルトは 100 です。
たとえば、次の API 呼び出しでは、指定したデベロッパーのすべての API プロダクト サブスクリプションが一覧表示されます。
curl "https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions" \ -X GET \ -H "Authorization: Bearer $TOKEN"
ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用できる環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。
レスポンス出力の例を次に示します。
{
"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"
}
]
}詳しくは、List API product subscriptions API をご覧ください。
API プロダクト サブスクリプションの詳細を表示する
デベロッパーの API プロダクト サブスクリプションの詳細を表示するには、次の API に GET リクエストを送信します。
https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions/$SUBSCRIPTION
たとえば、次の API 呼び出しでは、指定したデベロッパーのすべての API プロダクト サブスクリプションが一覧表示されます。
curl "https://apigee.googleapis.com/v1/organizations/$ORG/developers/$DEVELOPER_EMAIL/subscriptions/69f8bb42-a8e4-4a2c-b932-d82b51d37b72" \ -X GET \ -H "Authorization: Bearer $TOKEN"
ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用できる環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。
レスポンス出力の例を次に示します。
{
"name": "69f8bb42-a8e4-4a2c-b932-d82b51d37b72",
"apiproduct": "HelloworldProduct",
"startTime": "1615987132000",
"createdAt": "1615903252000",
"lastModifiedAt": "1615903252000"
}詳しくは、Get API product subscription API をご覧ください。