現在、Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご覧ください。 情報
はじめに
収益化レポートを使用すると、主な使用状況情報とトランザクション アクティビティにアクセスできます。たとえば、特定の期間にトランザクション アクティビティがあったアプリケーション、デベロッパー、API プロダクト バンドル、API プロダクトを特定できます。収益化により、API の使用状況を追跡する概要レポートまたは詳細レポートを生成できます。
収益化レポートの種類
次のタイプの収益化レポートを生成できます。
レポート | 説明 |
---|---|
請求 | 特定の請求月のデベロッパーのアクティビティを表示し、料金プランが正しく適用されていることを確認します。 |
プリペイド残高 | 前払いデベロッパーが請求月または現在開いている月に行った残高補充を表示して、決済代行業者から受信した支払いと調整できます。 |
収益 | 特定の期間内にデベロッパーで発生したアクティビティと収益を表示します。これにより、デベロッパー(とそのアプリケーション)全体での API プロダクト バンドルとプロダクトのパフォーマンスを分析できます。 |
バリアンス |
2 つの期間でデベロッパーのアクティビティと収益を比較することで、デベロッパー(とそのアプリケーション)全体の API パッケージやプロダクトのパフォーマンスの増減を分析できます。 |
データの保持について
Apigee Edge パブリック クラウドでは、収益化データの保持がプランの資格です。収益化の利用資格については、https://cloud.google.com/apigee/specsheets をご覧ください。収益化データを利用資格期間を超えて保持する場合は、Apigee の営業担当者にお問い合わせください。延長データ保持はリクエスト時に有効になります。元のデータ保持期間より前のデータを含めるために遡及的に有効にすることはできません。
重複する取引について
収益化のトランザクション レポートとアナリティクスのデータを比較すると、少数のトランザクションの重複に気付く場合があります。収益化システムは毎日数百万のトランザクションを処理し、任意の時点で多くのトランザクションを並行して処理できるため、これは想定された動作です。平均で、約 0.1% のトランザクションが重複している可能性があります。
収益化レポートページの詳細
次の手順で [収益化レポート] ページにアクセスします。
Edge
Edge UI を使用して [レポート] ページにアクセスするには:
- apigee.com/edge にログインします。
- 左側のナビゲーション バーで [公開] > [収益化] > [レポート] を選択します。
[レポート] ページが表示されます。
上の図に示すように、[Reports] ページでは次のことができます。
- すべてのレポートの概要情報(名前、説明、レポートの種類と期間、最終更新日など)を表示する
- レポートを設定する
- CSV または ZIP ファイル形式でレポートを生成してダウンロードする
- レポートを編集する
- レポートを削除する
- レポートのリストを検索する
Classic Edge(プライベート クラウド)
Classic Edge UI を使用して [レポート] ページにアクセスするには:
http://ms-ip:9000
にログインします。ここで、ms-ip は Management Server ノードの IP アドレスまたは DNS 名です。- 上部のナビゲーション バーで [Monetization] > [Monetization Reports] を選択します。
[レポート] ページが表示されます。
- 最新のレポートリストを表示する
- レポートを設定する
- CSV 形式でレポートを生成してダウンロードする
- レポートを編集する
- レポートを削除する
レポートの構成
以下のセクションで説明するように、UI を使用してレポートを構成します。
レポートの設定手順
Edge UI または Classic Edge UI を使用してレポートを構成します。
Edge
Edge UI を使用してレポートを構成するには:
- 左側のナビゲーション バーで [公開] > [収益化] > [レポート] を選択します。
- [+ レポート] をクリックします。
- 次の表で定義されているレポートの詳細を構成します。
項目 説明 名前 レポートの一意の名前。 説明 レポートの説明。 レポートタイプ 収益化レポートの種類をご覧ください。 - 以下のセクションの説明に沿って、選択したレポートタイプに基づいて、レポートの残りの詳細を構成します。
- レポート ウィンドウに情報を入力すると、次のことが可能になります。
- [レポートを保存] をクリックして、レポート構成を保存します。
詳細レポートのみの場合、[ジョブを送信] をクリックしてレポートを非同期で実行し、後で結果を取得します。詳しくは、レポートの生成とダウンロードをご覧ください。
- [Save as CSV] または [Save as Zip] をクリックして、生成されたレポートをカンマ区切り値(CSV)または CSV を含む圧縮 zip ファイルとしてローカルマシンにダウンロードします。サイズの大きいレポートには ZIP ダウンロードをおすすめします。より効率的にダウンロードできます。
Classic Edge(プライベート クラウド)
Classic Edge UI を使用してレポートを作成するには:
- 上部のナビゲーション バーで [Monetization] > [Monetization Reports] を選択します。
- プルダウン メニューで、作成するレポートのタイプを選択します。収益化レポートの種類をご覧ください。
- [+ レポート] をクリックします。
- 以下のセクションで説明するように、選択した請求タイプに基づいてレポートの詳細を構成します。
- レポート ウィンドウに情報を入力すると、次のことが可能になります。
- [名前を付けて保存] をクリックしてレポートの構成を保存し、後でレポートをダウンロードします。
詳細レポートのみの場合、[ジョブを送信] をクリックしてレポートを無条件に実行し、後で結果を取得します。詳しくは、レポートの生成とダウンロードをご覧ください。
- [CSV 形式でダウンロード] をクリックしてレポートを生成し、カンマ区切り値(CSV)ファイルとしてローカルマシンにダウンロードして表示します。
請求レポートの構成
レポートを設定する手順に沿って、レポートページに次の情報を入力します。
項目 | 説明 |
---|---|
請求月 |
レポートの請求月。 |
レポートレベル |
レポートレベル。有効な値は次のとおりです。
|
プロダクト バンドル |
注: Classic Edge UI では、API プロダクト バンドルは API パッケージと呼ばれます。 レポートに含める API プロダクト バンドルを選択します。何も選択されていない場合は、すべての API プロダクトのバンドルがレポートに含まれます。 レポートには、選択した API プロダクトのバンドルごとに 1 行が表示されます。 概要レポートでは、必要に応じて概要表示オプションで [表示しない] をオンにできます。この場合、レポートにはすべての(または選択した)API プロダクト バンドルの情報が集計されます(API プロダクト バンドルごとに情報は表示されません)。 |
商品 |
レポートに含める API プロダクトを選択します。何も選択しないと、すべての API プロダクトがレポートに含まれます。 レポートには、選択した API プロダクトごとに個別の行が表示されます。 概要レポートでは、必要に応じて概要表示オプションで [表示しない] をオンにできます。この場合、レポートにはすべての(または選択した)デベロッパーの情報が集計されます(選択したデベロッパーの情報が個別にリストされるわけではありません)。 |
会社 | レポートに含める会社を選択します。何も選択しないと、すべての会社がレポートに含まれます。 |
料金プラン |
レポートに含める料金プラン。次の中から 1 つ選択してください。
|
前払い残高レポートの構成
レポートを設定する手順に沿って、レポートページに次の情報を入力します。項目 | 説明 |
---|---|
請求月 |
レポートの請求月。 |
レポートレベル |
レポートレベル。有効な値は次のとおりです。
|
会社 | レポートに含める会社を選択します。何も選択しないと、すべての会社がレポートに含まれます。 |
収益レポートの構成
レポートを設定する手順に沿って、レポートページに次の情報を入力します。
項目 | 説明 |
---|---|
期間(日) |
レポートの期間。次の中から 1 つ選択してください。
|
通貨の選択 |
レポートの通貨。有効な値は次のとおりです。
|
レポートレベル |
レポートレベル。有効な値は次のとおりです。
|
プロダクト バンドル |
注: Classic Edge UI では、API プロダクト バンドルは API パッケージと呼ばれます。 レポートに含める API プロダクト バンドルを選択します。何も選択されていない場合は、すべての API プロダクトのバンドルがレポートに含まれます。 レポートには、選択した API プロダクトのバンドルごとに 1 行が表示されます。 概要レポートでは、必要に応じて概要表示オプションで [表示しない] をオンにできます。この場合、レポートにはすべての(または選択した)API プロダクト バンドルの情報が集計されます(API プロダクト バンドルごとに情報は表示されません)。 |
商品 |
レポートに含める API プロダクトを選択します。何も選択しないと、すべての API プロダクトがレポートに含まれます。 レポートには、選択した API プロダクトごとに個別の行が表示されます。 概要レポートでは、必要に応じて概要表示オプションで [表示しない] をオンにできます。この場合、レポートにはすべての(または選択した)デベロッパーの情報が集計されます(選択したデベロッパーの情報が個別にリストされるわけではありません)。 |
会社 | レポートに含める会社を選択します。何も選択しないと、すべての会社がレポートに含まれます。 概要レポートでは、必要に応じて [概要表示オプション] セクションで [表示しない] をオンにできます。この場合、レポートにはすべての(または選択した)会社の情報が集計されます(選択した各会社の情報が個別にリストされるわけではありません)。 |
アプリ |
レポートに含めるアプリケーションを選択してください。何も選択しないと、すべてのアプリケーションがレポートに含まれます。 レポートには、選択したアプリケーションごとに 1 行が表示されます。 概要レポートでは、必要に応じて [概要表示オプション] セクションで [表示しない] をオンにできます。この場合、レポートにはすべての(または選択した)アプリケーションの情報が集計されます(選択したアプリケーションごとに情報が集計されることはありません)。 |
概要表示オプション |
列がグループ化されてレポートに表示される順序。グループ内のそのセクションの相対的な順序を示す番号を選択します(1 が最初のグループです)。次の例では、レポートはパッケージ、プロダクト、デベロッパー、アプリケーション別にグループ化されます。 セクションを表示しない場合は、[表示しない] を選択して残りのフィールドを順番に選択します。この順序は、1 つのセクションの相対的な順序を変更したり、レポート内にセクションを表示しないようにしたりすると、自動的に更新されます。 |
収益概要レポートにカスタム トランザクション属性を追加
トランザクション記録ポリシーを使用すると、トランザクションからカスタム属性データを取得できます。また、それらのカスタム属性を収益概要レポートに組み込むことができます。組織の MINT.SUMMARY_CUSTOM_ATTRIBUTES
プロパティを設定して、収益化データベース テーブルに含まれるカスタム属性のデフォルト セットを定義します。
この機能を使用するには、ある程度の検討と計画が必要となるため、以下の検討事項を確認してください。
クラウドをご利用のお客様は、Apigee Edge サポートに連絡してプロパティの設定を依頼してください。Apigee Edge for Private Cloud をご利用の場合は、システム管理者の認証情報を使用して次の API に PUT リクエストを使用し、このフラグを設定します。
curl -u email:password -X PUT -H "Content-type:application/xml" http://host:port/v1/o/{myorg} -d \ "<Organization type="trial" name="MyOrganization"> <Properties> <Property name="features.isMonetizationEnabled">true</Property> <Property name="MINT.SUMMARY_CUSTOM_ATTRIBUTES">["partner_id","tax_source"]</Property> <Property name="features.topLevelDevelopersAreCompanies">false</Property> </Properties> </Organization>"
この例では、API 呼び出しによって機能が有効になり、partner_id
列と tax_source
列が収益化データベースに追加されます。API 呼び出しのカスタム属性の配列は URL エンコードされているので注意してください。
レポートにカスタム トランザクション属性を含める際の考慮事項
- API で属性を作成する前に、使用する属性名を確認してください。これらはデータベース内の列名であり、カスタム属性データは常にそこに保存されます。
- 次の図に示すように、トランザクション記録ポリシーごとに 10 個のカスタム属性スロットを使用できます。レポートに含める商品全体で、同じ属性にはまったく同じ属性名と位置を使用します。たとえば、次のトランザクション記録ポリシーでは、
partner_id
とtax_source
のカスタム属性がそれぞれボックス 4 と 5 を占めています。これは、レポートに含めるプロダクトのすべてのトランザクション記録ポリシーにおける名前と位置である必要があります。
機能を有効にした後、収益の概要レポートにカスタム属性を含めるには、transactionCustomAttributes
を MintCriteria
に追加して、Report API を使用します。条件の設定オプションをご覧ください。
バリアンス レポートの構成(非推奨)
レポートを設定する手順に沿って、レポートページに次の情報を入力します。
項目 | 説明 |
---|---|
期間(日) |
レポートの期間。次の中から 1 つ選択してください。
|
パッケージ |
レポートに含める API パッケージ。次の中から 1 つ選択してください。
レポートには、選択した API パッケージごとに個別の行が表示されます。 概要レポートでは、必要に応じて、[Summary Display Options] セクションで [Don't Display (Packages)] をオンにできます。この場合、レポートにはすべての(または選択した)API パッケージの情報が集計されます(API パッケージごとに情報が集計されることはありません)。 |
商品 |
レポートに含める API プロダクト。次の中から 1 つ選択してください。
レポートには、選択した API プロダクトごとに個別の行が表示されます。 概要レポートでは、必要に応じて、[概要表示オプション] セクションで [表示しない(商品)] をオンにできます。この場合、レポートにはすべての(または選択した)API プロダクトの情報が集計されます(API プロダクトごとに情報が集約されることはありません)。 |
会社 |
レポートに含める会社。次の中から 1 つ選択してください。
レポートには、選択した会社ごとに個別の行が表示されます。 概要レポートでは、必要に応じて、[Summary Display Options] セクションで [Don't Display (Companies)] をオンにできます。この場合、レポートにはすべての(または選択した)会社の情報が集計されます(選択した各会社の情報が個別に表示されることはありません)。 |
アプリ |
レポートに含めるアプリケーション。次の中から 1 つ選択してください。
レポートには、選択したアプリケーションごとに 1 行が表示されます。 概要レポートでは、必要に応じて、[Summary Display Options] セクションで [Don't Display (Applications)] をオンにできます。この場合、レポートにはすべての(または選択した)アプリケーションの情報が集計されます(選択したアプリケーションごとに情報が集計されることはありません)。 |
通貨 |
レポートの通貨。有効な値は次のとおりです。
|
概要表示オプション |
列がグループ化されてレポートに表示される順序。グループ内のそのセクションの相対的な順序を示す番号を選択します(1 が最初のグループです)。次の例では、レポートはパッケージ、プロダクト、デベロッパー、アプリケーション別にグループ化されます。 セクションを表示しない場合は、[表示しない] を選択して残りのフィールドを順番に選択します。この順序は、1 つのセクションの相対的な順序を変更したり、レポート内にセクションを表示しないようにしたりすると、自動的に更新されます。 |
レポートの生成とダウンロード
レポートを作成したら、CSV または ZIP ファイル形式でレポートの結果をダウンロードできます。CSV ファイルまたは ZIP ファイルは、同期的または非同期的に生成できます。
同期レポートの場合、レポート リクエストを実行すると、分析サーバーが応答を返すまでリクエストがブロックされます。しかし、レポートで大量のデータ(たとえば、数百 GB)を処理する必要がある場合は、タイムアウトで同期レポートが失敗する可能性があります。
概要レポートレベルは、同期生成のみをサポートします。
非同期レポートの場合、レポート リクエストを実行し、結果は後で受け取ります。次のような状況では、非同期クエリ処理が適切な代替手段になることがあります。
- レポートの分析と作成に長い時間がかかる場合。
- グループ化のディメンションが多いなど、クエリを複雑にする制約のあるデータを分析する場合。
- 一部のユーザーや組織のデータ量が大幅に増加したことが判明したときにクエリを管理する場合。
詳細レポートレベルでは、非同期の生成がサポートされます。
CSV または ZIP ファイル形式でレポートを生成してダウンロードするには、次のいずれかのタスクを行います。
- [レポート] ページにアクセスします。
- ダウンロードするレポートにカーソルを合わせます。
[変更済み] 列で、次のいずれかをクリックします。
- アイコンまたは アイコン(概要レポートの場合)。レポートは CSV ファイルまたは zip ファイルに同期して保存されます。
- [ジョブを送信](詳細レポートの場合)非同期ジョブが開始されます。
[変更済み] 列でジョブのステータスをモニタリングします。
レポートをダウンロードできるようになると、ディスク アイコンが表示されます。
- ジョブが完了したら、ディスク アイコンをクリックしてレポートをダウンロードします。
請求概要レポートの CSV ファイルの例を次に示します。
レポートの編集
レポートを編集する方法は次のとおりです。
- [レポート] ページにアクセスします。
- 編集するレポートにカーソルを合わせて、操作メニューの をクリックします。
- 必要に応じてレポート構成を更新します。
- [レポートを更新] をクリックして、更新したレポート構成を保存します。
レポートの削除
レポートを削除するには:
- [レポート] ページにアクセスします。
- 削除するレポートにカーソルを合わせます。
- 操作メニューで をクリックします。
API を使用した収益化レポートの管理
以降のセクションでは、API を使用して Monetization レポートを管理する方法について説明します。
API を使用してレポートを構成する
組織全体のレポートを構成するには、POST リクエストを /organizations/{org_name}/report-definitions
に発行します。
特定のデベロッパーのレポートを構成するには、POST リクエストを /organizations/{org_name}/developers/{dev_id}/report-definitions
に発行します。ここで、{dev_id}
はデベロッパーの ID です。
リクエストを行うときに、レポートの名前とタイプを指定する必要があります。型は、BILLING
、REVENUE
、VARIANCE
(非推奨)、PREPAID_BALANCE
のいずれかです。また、mintCriteria
プロパティで条件を指定して、レポートをさらに構成することもできます。さまざまな条件を指定できます。これにより、レポートを柔軟に構成できます。条件として指定できるものは次のとおりです。
- 請求レポートまたは前払い残高レポートの場合、レポートの請求月
- 収益レポートの場合、レポートに記載されているトランザクションの種類(購入トランザクション、請求トランザクション、払い戻しなど)
- 前払い残高レポートの場合、レポートを適用するデベロッパー
- 収益レポートの場合、レポートが適用される API プロダクト バンドル(または API パッケージ)、プロダクト、料金プラン、アプリケーション
- 収益レポートまたは差異レポートの場合、レポートに適用される通貨
- 請求レポート、前払い残高レポート、収益レポートの場合(概要レポートか詳細レポートか)
- 収益の概要レポートの場合は、レポートにカスタム トランザクション属性を含めます。
レポートの条件の一覧については、レポートの構成オプションをご覧ください。
たとえば、次の例では、2015 年 7 月のトランザクション アクティビティをまとめた収益レポートを作成します。このレポートには、transactionTypes
プロパティで指定されたさまざまな取引タイプが含まれ、特に Payment API プロダクト バンドルと Payment API プロダクトに適用されます。レポート定義では特定のデベロッパーやアプリケーションが指定されていないため、レポートはすべてのデベロッパーとアプリケーションに適用されます。また、currencyOption
プロパティが LOCAL
に設定されているため、レポートの各行は該当する料金プランの通貨で表示されます。また、groupBy
プロパティは、レポートの列を PACKAGE、PRODUCT、DEVELOPER、APPLICATION、RATEPLAN(レポートに料金プランの名前と ID を含む)の順序でグループ化することを指定します。
$ curl -H "Content-Type: application/json" -X POST -d \ '{ "name": "July 2015 revenue report", "description": " July 2015 revenue report for Payment product", "type": "REVENUE", "mintCriteria":{ "fromDate":"2015-07-01 00:00:00", "toDate":"2015-08-01 13:35:00", "showTxDetail":true, "showSummary":true, "transactionTypes":[ "PURCHASE", "CHARGE", "REFUND", "CREDIT", "SETUPFEES", "TERMINATIONFEES", "RECURRINGFEES" ], "monetizationPackageIds":[ "payment" ], "productIds":[ "payment" ], "currencyOption":"LOCAL", "groupBy":[ "PACKAGE", "PRODUCT", "DEVELOPER", "APPLICATION", "RATEPLAN" ] } }' \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/report-definitions" \ -u email:password
以下は、2015 年 6 月のデベロッパー DEV FIVE のアクティビティを示す詳細な請求レポートです。
$ curl -H "Content-Type:application/json" -X POST -d \ '{ "name": "June billing report, DEV FIVE", "description": "June billing report, DEV FIVE", "type": "BILLING", "mintCriteria":{ "billingMonth": "JUNE", "billingYear": 2015, "showTxDetail":true, "showSummary":false, "currencyOption":"LOCAL" }, "devCriteria":[{ "id":"RtHAeZ6LtkSbEH56", "orgId":"myorg"}] }' \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/report-definitions" \ -u email:password
API を使用してレポート構成を表示する
組織の特定のレポート構成またはすべてのレポート構成を表示できます。個々のデベロッパーのレポート構成を表示することもできます。
組織の特定のレポート構成を表示するには、/organizations/{org_name}/report-definitions/{report_definition_id}
に GET リクエストを発行します。ここで、{report_definition_id}
は特定のレポート構成の ID です(ID は、レポート構成の作成時にレスポンスで返されます)。次に例を示します。
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/report-definitions/1f7fa53b-de5a-431d-9438-62131e1396c5" \ -u email:password
組織のすべてのレポート構成を表示するには、/organizations/{org_name}/report-definitions
に GET リクエストを発行します。
次のクエリ パラメータを渡して、結果のフィルタリングや並べ替えを行うことができます。
クエリ パラメータ | 説明 |
---|---|
all |
すべての API プロダクトのバンドルを返すかどうかを指定するフラグ。false に設定すると、ページごとに返される API プロダクト バンドルの数は size クエリ パラメータによって定義されます。デフォルトは false です。 |
size |
ページごとに返される API プロダクト バンドルの数。デフォルトは 20 です。all クエリ パラメータが true に設定されている場合、このパラメータは無視されます。 |
page |
返すページの番号(コンテンツがページ分けされている場合)。all クエリ パラメータが true に設定されている場合、このパラメータは無視されます。 |
sort |
情報を並べ替えるフィールド。all クエリ パラメータが true に設定されている場合、このパラメータは無視されます。デフォルトは UPDATED:DESC です。 |
たとえば、次の例は組織のレポート構成を返し、取得を最大 5 つのレポート構成に制限します。
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/report-definitions?size=5" \ -u email:password
レスポンスは次のようになります(レスポンスの一部のみが表示されています)。
{ "reportDefinition" : [ { "description" : "Test revenue report", "developer" : null, "id" : "1f7fa53b-de5a-431d-9438-62131e1396c5", "lastModified" : "2015-08-27 15:44:03", "mintCriteria" : { "asXorg" : false, "currencyOption" : "LOCAL", "fromDate" : "2015-07-01 00:00:00", "groupBy" : [ "PACKAGE", "PRODUCT", "DEVELOPER", "APPLICATION", "RATEPLAN" ], "monetizationPackageIds" : [ "payment" ], "productIds" : [ "payment" ], "showRevSharePct" : false, "showSummary" : true, "showTxDetail" : true, "showTxType" : false, "toDate" : "2015-08-01 00:05:00", "transactionTypes" : [ "PURCHASE", "CHARGE", "REFUND", "CREDIT", "SETUPFEES", "TERMINATIONFEES", "RECURRINGFEES" ] }, "name" : "Test revenue report", "organization" : { ... }, "type" : "REVENUE" }, { "description" : "June billing report, DEV FIVE", "developer" : null, "id" : "fedac696-ce57-469b-b62c-a77b535fd0eb", "lastModified" : "2015-08-27 17:13:20", "mintCriteria" : { "asXorg" : false, "billingMonth" : "JUNE", "billingYear" : 2015, "currencyOption" : "LOCAL", "showRevSharePct" : false, "showSummary" : false, "showTxDetail" : true, "showTxType" : false }, "name" : "June billing report, DEV FIVE", "organization" : { ... }, "type" : "BILLING" } ], "totalRecords" : 2 }
特定のデベロッパーのレポート構成を表示するには、/organizations/{org_name}/developers/{dev_id}/report-definitions
に GET リクエストを発行します。ここで、{dev_id}
はデベロッパーの ID です。リクエストを行うときに、上記のクエリ パラメータを指定して、データのフィルタリングと並べ替えを行うことができます。
たとえば、次のコードは特定のデベロッパーのレポート構成を返し、レスポンスをレポート名で並べ替えます。
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xUreport-definitions?sort=name" \ -u email:password
API を使用してレポート構成を更新する
レポート構成を更新するには、/organizations/{org_name}/report-definitions/{report_definition_id}
に PUT リクエストを発行します。ここで、{report_definition_id}
は特定のレポート構成の ID です。更新を行うときは、更新された構成値とレポート構成の ID をリクエスト本文で指定する必要があります。たとえば、次のリクエストでは、レポートをサマリー レポートに更新します(更新されたプロパティがハイライト表示されています)。
$ curl -H "Content-Type: application/json" -X PUT -d \ '{ "id": "fedac696-ce57-469b-b62c-a77b535fd0eb", "name": "June billing report, DEV FIVE", "description": "June billing report, DEV FIVE", "type": "BILLING", "mintCriteria":{ "billingMonth": "JUNE", "billingYear": 2015, "showTxDetail":false, "showSummary":true } }' \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/report-definitions/fedac696-ce57-469b-b62c-a77b535fd0eb" \ -u email:password
レスポンスは次のようになります(レスポンスの一部のみが表示されています)。
{ "description" : "June billing report, DEV FIVE", "developer" : null, "id" : "fedac696-ce57-469b-b62c-a77b535fd0eb", "lastModified" : "2015-08-27 17:47:29", "mintCriteria" : { "asXorg" : false, "billingMonth" : "JUNE", "billingYear" : 2015, "showRevSharePct" : false, "showSummary" : true, "showTxDetail" : false, "showTxType" : false }, "name" : "June billing report, DEV FIVE", "organization" : { ... }, "type" : "BILLING" }
API を使用してレポート構成を削除する
レポート構成を削除するには、/organizations/{org_namer}/report-definitions/{report_definition_id}
に DELETE リクエストを発行します。ここで、{report_definition_id}
は削除するレポート構成の ID です。次に例を示します。
$ curl -H "Accept:application/json" -X DELETE \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/report-definitions/fedac696-ce57-469b-b62c-a77b535fd0eb" \ -u email:password
API を使用してレポートを生成する
レポートを構成した後、表示するカンマ区切り値(CSV)ファイル形式でレポートを生成できます。
レポートを生成するには、organizations/{org_id}/{report_type}
に対して POST リクエストを発行します。ここで、{report_type}
は生成するレポートのタイプを指定します。次のタイプがあります。
billing-reports
revenue-reports
prepaid-balance-reports
variance-reports
たとえば、請求レポートを生成するには、POST リクエストを organizations/{org_name}/billing-reports
に発行します。
リクエスト本文(任意のタイプのレポート)で、レポートの検索条件を指定します。mintCriteria
プロパティを使用して検索条件を指定します。詳しくは、条件の設定オプションをご覧ください。
たとえば、次のリクエストでは、レポートの開始日と終了日、トランザクション タイプなど、さまざまな条件に基づいて収益レポートを検索します。
$ curl -H "Content-Type:application/json" -H "Accept: application/octet-stream" -X POST -d \ '{ "fromDate":"2015-07-01 00:00:00", "toDate":"2015-08-01 13:35:00", "showTxDetail":true, "showSummary":true, "transactionTypes":[ "PURCHASE", "CHARGE", "REFUND", "CREDIT", "SETUPFEES", "TERMINATIONFEES", "RECURRINGFEES" ], "currencyOption":"LOCAL", "groupBy":[ "PACKAGE", "PRODUCT", "DEVELOPER", "APPLICATION", "RATEPLAN"] }' \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/revenue-reports" \ -u email:password
収益レポートが見つかると、CSV ファイル形式で収益レポートが生成されます。レポート出力の例を次に示します。
Reporting Period:,From:,2015-07-01, To:,2015-07-31 API Product:,All Developer:,All Application:,All Currency:,Local Type of Report:,Summary Revenue Report Monetization Package,Package ID,API Product,Product ID,Developer Name,Developer ID,Application Name,Application ID,Rate Plan,Plan ID,Currency,Transaction Type,Provider Status,Total Volume,Charged Rate, Location,location,foo_product,foo_product,Apigee,QQ7uxeMGf3w9W08B,my_app,my_app,rate_plan_1,location_rate_plan_1,USD,SETUPFEES,SUCCESS,1,15.0000, Location,location,foo_product,foo_product,BarCompany,barcompany,my_app,my_app,rate_plan_1,location_rate_plan_1,USD,SETUPFEES,SUCCESS,1,15.0000, Location,location,foo_product,foo_product,fremont,fremont,my_app,my_app,rate_plan_1,location_rate_plan_1,USD,SETUPFEES,SUCCESS,1,15.0000, Location,location,foo_product,foo_product,Juan's Taco Shack,juan-s-taco-sha,my_app,my_app,rate_plan_1,location_rate_plan_1,USD,SETUPFEES,SUCCESS,1,15.0000,
API を使用して収益レポートにデベロッパーのカスタム属性を含める
収益レポートの場合のみ、デベロッパーに対してカスタム属性が定義されている場合は、レポートにカスタム属性を含めることができます。カスタム属性は、デベロッパーを組織に追加するときに定義します。詳細については、アプリ デベロッパーの管理をご覧ください。
収益レポートにカスタム属性を含めるには、organizations/{org_name}/revenue-reports
に POST リクエストを発行し、リクエストの本文に devCustomAttributes
配列を含めます。
"devCustomAttributes": [ "custom_attribute1", "custom_attribute2", ... ]
注: 事前定義された MINT_*
属性と ADMIN_*
属性は、devCustomAttributes
配列に指定しないでください。
たとえば次の例では、BILLING_TYPE
、SFID
、ORG_EXT
の 3 つのカスタム属性がレポートに含まれています(デベロッパー用に定義されている場合)。
$ curl -H "Content-Type:application/json" -H "Accept: application/octet-stream" -X POST -d \ '{ "fromDate":"2015-07-01 00:00:00", "toDate":"2015-08-01 13:35:00", "showTxDetail":true, "showSummary":true, "transactionTypes":[ "PURCHASE", "CHARGE", "REFUND", "CREDIT", "SETUPFEES", "TERMINATIONFEES", "RECURRINGFEES" ], "currencyOption":"LOCAL", "groupBy":[ "PACKAGE", "PRODUCT", "DEVELOPER", "APPLICATION", "RATEPLAN" ], "devCustomAttributes": [ "BILLING_TYPE", "SFID", "ORG_EXT" ] }' \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/revenue-reports" \ -u email:password
2 つのカスタム属性の値を含むレポート出力の例を次に示します。
Reporting Period:,From:,2015-07-01, To:,2015-07-31 API Product:,All Developer:,All Application:,All Currency:,Local Type of Report:,Summary Revenue Report Monetization Package,Package ID,API Product,Product ID,Developer Name,Developer ID,Application Name,Application ID,Rate Plan,Plan ID,Currency,Transaction Type,Provider Status,Total Volume,Charged Rate,BILLING_TYPE,SFID,ORG_EXT Location,location,foo_product,foo_product,Apigee,QQ7uxeMGf3w9W08B,my_app,my_app,rate_plan_1,location_rate_plan_1,USD,SETUPFEES,SUCCESS,1,15.0000,PREPAID,123,3AA, Location,location,foo_product,foo_product,BarCompany,barcompany,my_app,my_app,rate_plan_1,location_rate_plan_1,USD,SETUPFEES,SUCCESS,1,15.0000,PREPAID,123,3AA, Location,location,foo_product,foo_product,fremont,fremont,my_app,my_app,rate_plan_1,location_rate_plan_1,USD,SETUPFEES,SUCCESS,1,15.0000,PREPAID,123,3AA, Location,location,foo_product,foo_product,Juan's Taco Shack,juan-s-taco-sha,my_app,my_app,rate_plan_1,location_rate_plan_1,USD,SETUPFEES,SUCCESS,1,15.0000,PREPAID,123,3AA,
API を使用して取引アクティビティを報告する
組織のトランザクション アクティビティを表示するには、POST リクエストを /organizations/{org_name}/transaction-search
に発行します。リクエストを行うときに、取得条件を指定する必要があります。条件として指定できるものは次のとおりです。
- トランザクションが発行された 1 つ以上の API プロダクトの ID。
- トランザクションの請求年。
- 取引を発行したデベロッパー。
- 購入やセットアップ手数料など、取引の種類。
- トランザクションのステータス(成功、失敗など)。
条件の一覧については、条件の設定オプションをご覧ください。
次の例では、2015 年 6 月の請求月に特定のデベロッパーが発行したトランザクションが返されます。
$ curl -H "Content-Type:application/json" -X POST -d \ '{ "billingMonth": "JUNE", "billingYear": 2015, "devCriteria": [{ "id": "RtHAeZ6LtkSbEH56", "orgId":"myorg"}], "transactionTypes": ["PURCHASE", "CHARGE", "SETUPFEES"], "transactionStatus": ["SUCCESS", "FAILED"] }' "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/transaction-search \ -u email:password
特定の期間内にトランザクション アクティビティが発生したアプリケーション、デベロッパー、API プロダクト バンドル、API プロダクトを特定することもできます。この情報は、オブジェクトのタイプごとに表示されます。たとえば、指定した開始日から終了日までに、収益化された API プロダクト バンドルの API にアクセスするアプリケーションに関する情報を表示できます。
トランザクション アクティビティに関する情報を表示するには、次のいずれかのリソースに GET リクエストを発行します。
リソース | 戻り値 |
---|---|
/organizations/{org_name}/applications-with-transactions |
トランザクションを伴うアプリケーション |
/organizations/{org_name}/developers-with-transactions |
トランザクションがあるデベロッパー |
/organizations/{org_name}/products-with-transactions |
トランザクションがある商品 |
/organizations/{org_name}/packages-with-transactions |
トランザクションを含む API プロダクト バンドル(または API パッケージ) |
リクエストを発行するときは、日付範囲の開始日と終了日をクエリ パラメータとして指定する必要があります。たとえば、次のリクエストでは、2015 年 8 月にトランザクションがあったデベロッパーが返されます。
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers-with-transactions?START_DATE=2015-08-01&END_DATE=2015-08-31" \ -u email:password
レスポンスは次のようになります(レスポンスの一部のみが表示されています)。
{ "developer" : [ { "address" : [ { "address1" : "Dev Five Address", "city" : "Pleasanton", "country" : "US", "id" : "0917f15f-9521-4e69-9376-07aa7b7b32ca", "isPrimary" : true, "state" : "CA", "zip" : "94588" } ], "approxTaxRate" : 0.0900, "billingType" : "POSTPAID", "broker" : false, "developerRole" : [ ], "email" : "dev5@myorg.com", "hasSelfBilling" : false, "id" : "tJZG6broTpGGGeLV", "legalName" : "DEV FIVE", "name" : "Dev Five", "organization" : { ... }, "registrationId" : "dev5", "status" : "ACTIVE", "type" : "UNTRUSTED" }, { "address" : [ { "address1" : "Dev Seven Address", "city" : "Pleasanton", "country" : "US", "id" : "f86d8c9f-6ed1-4323-b050-6adf494096c9", "isPrimary" : true, "state" : "CA", "zip" : "94588" } ], "approxTaxRate" : 0.0900, "billingType" : "POSTPAID", "broker" : false, "developerRole" : [ ], "email" : "dev7@myorg.com", "hasSelfBilling" : false, "id" : "VI3l8m8IPAvJTvjS", "legalName" : "DEV SEVEN", "name" : "Dev Seven", "organization" : { ... }, "registrationId" : "dev7", "status" : "ACTIVE", "type" : "UNTRUSTED" }, ... ] }
API のレポート構成オプション
API で使用できるレポート構成オプションは次のとおりです。
名前 | 説明 | デフォルト | 必須かどうか |
---|---|---|---|
name |
レポートの名前。 |
なし | ○ |
description |
レポートの説明。 |
なし | × |
mintCriteria |
レポートを設定するための条件。詳しくは、条件の設定オプションをご覧ください。 |
なし | × |
type |
レポートのタイプ。値は次のいずれかになります。
|
なし | ○ |
条件の設定オプション
mintCriteria
プロパティを使用すると、レポートでは次の構成オプションを使用できます。
名前 | 説明 | デフォルト | 必須かどうか |
---|---|---|---|
appCriteria |
レポートに含める特定のアプリケーションの ID と組織。このプロパティを指定しなかった場合、すべてのアプリケーションがレポートに含まれます。 |
なし | × |
billingMonth |
注: このプロパティは、収益レポートには有効ではありません。 レポートの請求月(7 月など)。 |
なし | ○ |
billingYear |
注: このプロパティは、収益レポートには有効ではありません。 レポートの請求年(2015 など)。 |
なし | ○ |
currCriteria |
レポートに含める特定の通貨の ID と組織。このプロパティが指定されていない場合、サポートされているすべての通貨がレポートに含まれます。 |
なし | × |
currencyOption |
レポートの通貨。有効な値は次のとおりです。
|
なし | × |
devCriteria |
レポートに含める特定のデベロッパーのデベロッパー ID(メールアドレス)、組織名。このプロパティが指定されていない場合、すべてのデベロッパーがレポートに含まれます。次に例を示します。 "devCriteria":[{ "id":"RtHAeZ6LtkSbEH56", "orgId":"my_org"} ] |
なし | × |
devCustomAttributes |
注: このプロパティは収益レポートにのみ適用されます。 レポートに含めるカスタム属性(デベロッパー向けに定義されている場合)。次に例を示します。 "devCustomAttributes": [ "custom_attribute1", "custom_attribute2", ... ] 注: 事前定義された |
なし | × |
fromDate |
注: このプロパティは、収益、差異、トランザクションのアクティビティ レポートにのみ適用されます。 レポートの開始日(UTC)。 |
なし | 収益レポートの場合は必須。他のレポートタイプでは不要です。 |
groupBy |
レポートでの列のグループ化順序。有効な値は次のとおりです。
|
なし | × |
monetizationPackageId |
レポートに含める 1 つ以上の API プロダクト バンドルの ID。このプロパティが指定されていない場合、すべての API プロダクトのバンドルがレポートに含まれます。 注: トランザクション アクティビティ( |
なし | × |
pkgCriteria |
レポートに含める特定の API プロダクト バンドルの ID と組織。このプロパティが指定されていない場合、すべての API プロダクトのバンドルがレポートに含まれます。 注: トランザクション アクティビティ( |
なし | × |
prevFromDate |
注: このプロパティは、バリアンス レポートにのみ適用されます。 前の期間の開始日(UTC)。現在のレポートと比較するために前の期間のレポートを作成する場合に使用されます。 |
なし | × |
prevToDate |
注: このプロパティは、バリアンス レポートにのみ適用されます。 前の期間の終了日(UTC)。現在のレポートと比較するために前の期間のレポートを作成する場合に使用されます。 |
なし | × |
prodCriteria |
レポートに含める特定の API プロダクトの ID と組織。このプロパティが指定されていない場合、すべての API プロダクトがレポートに含まれます。 注: トランザクション アクティビティ( |
なし | × |
productIds |
レポートに含める 1 つ以上の API プロダクトの ID。このプロパティが指定されていない場合、すべての API プロダクトがレポートに含まれます。 API プロダクト ID は |
なし | × |
pricingTypes |
レポートに含める料金プランの料金タイプ。有効な値は次のとおりです。
このプロパティが指定されていない場合、すべての料金タイプの料金プランがレポートに含まれます。 |
なし | × |
ratePlanLevels |
レポートに含める料金プランのタイプ。有効な値は次のとおりです。
このプロパティが指定されていない場合、デベロッパー固有の料金プランと標準料金プランの両方がレポートに含まれます。 |
なし | × |
showRevSharePct |
レポートに収益分配率を表示するかどうかを指定するフラグ。有効な値は次のとおりです。
|
なし | × |
showSummary |
レポートがサマリーかどうかを指定するフラグ。有効な値は次のとおりです。
|
なし | × |
showTxDetail |
注: このプロパティは収益レポートにのみ適用されます。 レポートにトランザクション単位の詳細を表示するかどうかを指定するフラグ。有効な値は次のとおりです。
|
なし | × |
showTxType |
レポートに各取引の種類を表示するかどうかを指定するフラグ。有効な値は次のとおりです。
|
なし | × |
toDate |
注: このプロパティは、収益、差異、トランザクションのアクティビティ レポートにのみ適用されます。 レポートの終了日(UTC)。 このレポートには、指定した日付より前に収集されたデータが含まれます。指定した終了日に収集されたレポートデータは、レポートから除外されます。 たとえば、料金プランを 2016 年 12 月 31 日に期限切れにする場合は、toDate 値を 2017-01-01 に設定する必要があります。この場合、レポートには 2016 年 12 月 31 日の最終日までのレポートデータが含まれます。2017 年 1 月 1 日のレポートデータは除外されます。 |
なし | 収益レポートの場合は必須。他のレポートタイプでは不要です。 |
transactionStatus |
レポートに含める取引のステータス。有効な値は次のとおりです。
|
なし | × |
transactionCustomAttributes |
収益概要レポートに含めるカスタム トランザクション属性。この機能は、組織内で有効にする必要があります。収益概要レポートにカスタム トランザクション属性を含めるをご覧ください。 |
なし | × |
transactionTypes |
レポートに含める取引のタイプ。有効な値は次のとおりです。
このプロパティを指定しなかった場合、レポートにはすべての取引タイプが含まれます。 |
なし | × |