このページは 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 をご覧ください。