Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントに移動。 情報
はじめに
収益化レポートでは、使用状況と取引アクティビティに焦点を当てた情報を確認できます。たとえば、特定の期間にトランザクション アクティビティがあったアプリケーション、デベロッパー、API プロダクト バンドル、API プロダクトを特定できます。収益化を使用すると、API の使用状況を追跡する概要レポートまたは詳細レポートを生成できます。
収益化レポートの種類
生成できる収益化レポートの種類は次のとおりです。
報告 | 説明 |
---|---|
課金 | 1 か月の請求期間のデベロッパーのアクティビティを表示し、料金プランが正しく適用されていることを確認します。 |
プリペイド残高 | 請求月または現在開いている月でプリペイド デベロッパーが行った残高のチャージを確認して、決済代行業者から受け取った支払いと照合できます。 |
収益 | デベロッパーが期間内に生成したアクティビティと収益を表示して、デベロッパー(およびそのアプリ)全体の API プロダクト バンドルとプロダクトのパフォーマンスを分析できます。 |
バリアンス |
2 つの期間のデベロッパーによるアクティビティと収益を比較して、デベロッパー(およびそのアプリ)全体の API パッケージとプロダクトのパフォーマンスの増減傾向を分析できます。 |
データの保持について
Apigee Edge のパブリック クラウドでは、収益化データの保持はプランの利用資格です。収益化の利用資格については、https://cloud.google.com/apigee/specsheets をご覧ください。利用資格期間を超えて収益化データを保持する場合は、Apigee セールスにお問い合わせください。データ保持期間の延長はリクエスト時に有効になります。元のデータ保持期間より前のデータを含めるため、さかのぼって有効にすることはできません。
重複する取引について
収益化トランザクション レポートとアナリティクス データを比較すると、重複するトランザクションが少数ある場合があります。これは、収益化システムが 1 日に数百万件のトランザクションを処理し、多くのトランザクションが同時に処理されるため、想定される動作です。平均して、取引の約 0.1% が重複する可能性があります。
[収益化レポート] ページを確認する
下記の手順に沿って [収益化レポート] ページにアクセスします。
Edge
Edge UI を使用して [レポート] ページにアクセスするには:
- apigee.com/edge にログインします。
- 左側のナビゲーション バーで、[公開] > [収益化] > [レポート] を選択します。
[レポート] ページが表示されます。
図でハイライト表示されているように、[レポート] ページでは次のことができます。
- 名前と説明、レポートの種類と期間、最終更新日など、すべてのレポートの概要情報を表示する
- レポートを設定する
- CSV または ZIP ファイル形式でレポートを生成してダウンロードする
- レポートを編集する
- レポートを削除する
- レポートのリストを検索する
Classic Edge(Private Cloud)
Classic Edge UI を使用して [レポート] ページにアクセスするには:
http://ms-ip:9000
にログインします。ms-ip は Management Server ノードの IP アドレスまたは DNS 名です。- 上部のナビゲーション バーで、[収益化] > [収益化レポート] を選択します。
[レポート] ページが表示されます。
- 現在のレポートのリストを表示する
- レポートを設定する
- CSV 形式でレポートを生成してダウンロードする
- レポートを編集する
- レポートを削除する
レポートを設定する
次のセクションで説明するように、UI を使用してレポートを構成します。
レポートを設定する手順
Edge UI または Classic Edge UI を使用してレポートを構成します。
Edge
Edge UI を使用してレポートを構成するには:
- 左側のナビゲーション バーで、[公開] > [収益化] > [レポート] を選択します。
- [+ 報告] をクリックします。
- 次の表で定義されているレポートの詳細を構成します。
フィールド 説明 名前 レポートの一意の名前。 説明 レポートの説明。 レポートの種類 収益化レポートの種類をご覧ください。 - 選択したレポートタイプに基づいて、残りのレポートの詳細を構成します。詳細については、以下のセクションをご覧ください。
- レポート ウィンドウに情報を入力すると、次のことができます。
- [レポートを保存] をクリックして、レポートの設定を保存します。
詳細レポートの場合のみ、[Submit job] をクリックしてレポートを非同期で実行し、後で結果を取得します。詳しくは、レポートの生成とダウンロードをご覧ください。
- [CSV として保存] または [ZIP として保存] をクリックして、生成されたレポートをローカルマシンにカンマ区切り値(CSV)または CSV を含む圧縮 ZIP ファイルとしてダウンロードします。サイズの大きいレポートの場合は、zip 形式でダウンロードすることをおすすめします。より効率的にダウンロードできます。
Classic Edge(Private Cloud)
Classic Edge UI を使用してレポートを作成するには:
- 上部のナビゲーション バーで、[収益化] > [収益化レポート] を選択します。
- プルダウン メニューで、作成するレポートの種類を選択します。収益化レポートの種類をご覧ください。
- [+ 報告] をクリックします。
- 選択した課金タイプに基づいてレポートの詳細を構成します。詳細は、以下のセクションをご覧ください。
- レポート ウィンドウに情報を入力すると、次のことができます。
- [名前を付けて保存] をクリックしてレポートの設定を保存し、後でレポートをダウンロードします。
詳細レポートの場合のみ、[Submit job] をクリックしてレポートを非同期で実行し、後で結果を取得します。詳しくは、レポートの生成とダウンロードをご覧ください。
- [CSV 形式でダウンロード] をクリックして、レポートを生成してローカルマシンにカンマ区切り値(CSV)ファイルとしてダウンロードし、表示します。
請求レポートの構成
レポートを構成する手順に沿って、レポート ページに次の情報を入力します。
フィールド | 説明 |
---|---|
請求月 |
レポートの請求月。 |
レポートレベル |
レポートレベル。有効な値は次のとおりです。
|
製品バンドル |
注: Classic Edge UI では、API プロダクト バンドルは API パッケージと呼ばれます。 レポートに含める API プロダクト バンドルを選択します。何も選択しない場合、すべての API プロダクト バンドルがレポートに含まれます。 レポートには、選択した API プロダクト バンドルごとに個別の行が含まれます。 概要レポートの場合は、必要に応じて [概要] の表示オプションで [表示しない] をオンにします。この場合、レポートにはすべての(または選択した)API プロダクト バンドルの情報が集約されます(API プロダクト バンドルごとに情報が個別に表示されることはありません)。 |
商品 |
レポートに含める API プロダクトを選択します。何も選択しない場合、すべての API プロダクトがレポートに含まれます。 レポートには、選択した API プロダクトごとに個別の行が含まれます。 概要レポートの場合は、必要に応じて [概要] の表示オプションで [表示しない] をオンにします。この場合、レポートにはすべての(または選択した)デベロッパーの情報が集約されます(選択したデベロッパーごとに情報が個別に表示されることはありません)。 |
会社 | レポートに含める企業を選択します。何も選択しなかった場合、すべての企業がレポートに含まれます。 |
料金プラン |
レポートに含める料金プラン。次の中から 1 つ選択してください。
|
前払い残高レポートの構成
レポートを構成する手順に沿って、レポート ページに次の情報を入力します。フィールド | 説明 |
---|---|
請求月 |
レポートの請求月。 |
レポートレベル |
レポートレベル。有効な値は次のとおりです。
|
会社 | レポートに含める企業を選択します。何も選択しなかった場合、すべての企業がレポートに含まれます。 |
収益レポートの設定
レポートを構成する手順に沿って、レポート ページに次の情報を入力します。
フィールド | 説明 |
---|---|
期間 |
レポートの期間。次の中から 1 つ選択してください。
|
通貨を選択 |
レポートの通貨。有効な値は次のとおりです。
|
レポートレベル |
レポートレベル。有効な値は次のとおりです。
|
製品バンドル |
注: Classic Edge UI では、API プロダクト バンドルは API パッケージと呼ばれます。 レポートに含める API プロダクト バンドルを選択します。何も選択しない場合、すべての API プロダクト バンドルがレポートに含まれます。 レポートには、選択した API プロダクト バンドルごとに個別の行が含まれます。 概要レポートの場合は、必要に応じて [概要] の表示オプションで [表示しない] をオンにします。この場合、レポートにはすべての(または選択した)API プロダクト バンドルの情報が集約されます(API プロダクト バンドルごとに情報が個別に表示されることはありません)。 |
商品 |
レポートに含める API プロダクトを選択します。何も選択しない場合、すべての API プロダクトがレポートに含まれます。 レポートには、選択した API プロダクトごとに個別の行が含まれます。 概要レポートの場合は、必要に応じて [概要] の表示オプションで [表示しない] をオンにします。この場合、レポートにはすべての(または選択した)デベロッパーの情報が集約されます(選択したデベロッパーごとに情報が個別に表示されることはありません)。 |
会社 | レポートに含める企業を選択します。何も選択しなかった場合、すべての企業がレポートに含まれます。 概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない] をオンにします。この場合、レポートにはすべての(または選択した)企業の情報が集計されます(選択した各企業の情報は個別に表示されません)。 |
アプリ |
レポートに含めるアプリケーションを選択します。何も選択しなかった場合、すべてのアプリケーションがレポートに含まれます。 レポートには、選択したアプリケーションごとに個別の行が表示されます。 概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない] をオンにします。この場合、レポートにはすべての(または選択した)アプリの情報が集約されます(選択した各アプリの情報は個別に表示されません)。 |
概要の表示オプション |
レポートで列がグループ化され、表示される順序。グループ内のそのセクションの相対順序を示す番号を選択します(1 は最初のグループです)。たとえば、次のレポートは、まずパッケージ、次にプロダクト、次にデベロッパー、最後にアプリでグループ化されます。 セクションを表示しない場合は、[表示しない] を選択し、残りのフィールドを順番に選択します。1 つのセクションの相対順序を変更するか、レポートにセクションを表示しないように選択すると、順序が自動的に更新されます。 |
収益概要レポートにカスタム トランザクション属性を含める
トランザクション レコーディング ポリシーを使用すると、トランザクションからカスタム属性データをキャプチャできます。これらのカスタム属性は、収益概要レポートに含めることができます。収益化データベース テーブルに含まれるデフォルトのカスタム属性セットを定義するには、組織の MINT.SUMMARY_CUSTOM_ATTRIBUTES
プロパティを設定します。
この機能を使用するには、慎重な検討と計画が必要です。以下の点にご留意ください。
Cloud をご利用のお客様は、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 で属性を作成する前に、使用する属性名を確定してください。これらはデータベース内の列名であり、カスタム属性データは常にここに保存されます。
- 次の図に示すように、各 Transaction Recording ポリシーには 10 個のカスタム属性スロットがあります。レポートに含める商品の同じ属性には、同じ属性名と位置を正確に使用します。たとえば、次のトランザクション レコーディング ポリシーでは、
partner_id
カスタム属性とtax_source
カスタム属性がそれぞれボックス 4 と 5 に配置されています。レポートに商品を含めるには、すべてのトランザクション レコーディング ポリシーで、担当者の氏名と役職を指定する必要があります。
この機能を有効にした後、収益概要レポートにカスタム属性を含めるには、レポート API を使用して MintCriteria
に transactionCustomAttributes
を追加します。条件の構成オプションをご覧ください。
差異レポートの設定(非推奨)
レポートを構成する手順に沿って、レポート ページに次の情報を入力します。
フィールド | 説明 |
---|---|
期間 |
レポートの期間。次の中から 1 つ選択してください。
|
パッケージ |
レポートに含める API パッケージ。次の中から 1 つ選択してください。
レポートには、選択した API パッケージごとに個別の行が含まれます。 概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない(パッケージ)] チェックボックスをオンにします。この場合、レポートにはすべての(または選択した)API パッケージの情報が集約されます(API パッケージごとに情報が個別に表示されることはありません)。 |
商品 |
レポートに含める API プロダクト。次の中から 1 つ選択してください。
レポートには、選択した API プロダクトごとに個別の行が含まれます。 概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない(商品)] をオンにします。この場合、レポートにはすべての(または選択した)API プロダクトの情報が集約されます(API プロダクトごとに情報が個別に表示されることはありません)。 |
会社 |
レポートに含める企業。次の中から 1 つ選択してください。
レポートには、選択した企業ごとに個別の行が表示されます。 概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない(企業)] をオンにします。この場合、レポートにはすべての(または選択した)企業の情報が集計されます(選択した各企業の情報は個別に表示されません)。 |
アプリ |
レポートに含めるアプリ。次の中から 1 つ選択してください。
レポートには、選択したアプリケーションごとに個別の行が表示されます。 概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない(アプリケーション)] をオンにします。この場合、レポートにはすべての(または選択した)アプリの情報が集約されます(選択したアプリごとに情報が個別に表示されることはありません)。 |
通貨 |
レポートの通貨。有効な値は次のとおりです。
|
概要の表示オプション |
レポートで列がグループ化され、表示される順序。グループ内のそのセクションの相対順序を示す番号を選択します(1 は最初のグループです)。たとえば、次のレポートは、まずパッケージ、次にプロダクト、次にデベロッパー、最後にアプリでグループ化されます。 セクションを表示しない場合は、[表示しない] を選択し、残りのフィールドを順番に選択します。1 つのセクションの相対順序を変更するか、レポートにセクションを表示しないように選択すると、順序が自動的に更新されます。 |
レポートの生成とダウンロード
レポートを作成したら、レポートの結果を CSV または ZIP ファイル形式でダウンロードできます。 CSV ファイルまたは ZIP ファイルは、同期または非同期で生成できます。
同期レポートの場合、レポート リクエストを実行すると、分析サーバーが応答を返すまでリクエストがブロックされます。しかし、レポートで大量のデータ(たとえば、数百 GB)を処理する必要がある場合は、タイムアウトで同期レポートが失敗する可能性があります。
概要レポート レベルでは、同期生成のみがサポートされます。
非同期レポートの場合、レポート リクエストを実行し、結果は後で受け取ります。次のように、非同期クエリ処理が適切な代替手段になる場合があります。
- レポートの分析と作成に時間がかかる場合。
- グループ化ディメンションが多いなどのクエリを複雑にする制約を伴うデータを分析する場合。
- 一部のユーザーや組織のデータ量が大幅に増加したことが判明したときにクエリを管理する場合。
レポートレベルが [詳細] の場合、非同期生成がサポートされます。
レポートを CSV または ZIP ファイル形式で生成してダウンロードするには、次のいずれかを行います。
- [レポート] ページにアクセスします。
- ダウンロードするレポートにカーソルを合わせます。
[変更日] 列で、次のいずれかをクリックします。
- アイコンまたは アイコン(概要レポートの場合)。レポートは CSV ファイルまたは ZIP ファイルに同期的に保存されます。
- ジョブを送信(詳細レポートの場合)。非同期ジョブが開始されます。
ジョブのステータスは [変更日] 列でモニタリングします。
レポートをダウンロードできる状態になると、ディスクアイコンが表示されます。
- ジョブが完了したら、ディスクアイコンをクリックしてレポートをダウンロードします。
請求概要レポートの CSV ファイルの例を次に示します。
レポートの編集
レポートを編集する方法は次のとおりです。
- [レポート] ページにアクセスします。
- 編集するレポートにカーソルを合わせて、アクション メニューの をクリックします。
- 必要に応じてレポートの構成を更新します。
- [レポートを更新] をクリックして、更新したレポートの設定を保存します。
レポートの削除
レポートを削除するには:
- [レポート] ページにアクセスします。
- 削除するレポートにカーソルを合わせます。
- 操作メニューで をクリックします。
API を使用した収益化レポートの管理
以降のセクションでは、API を使用して収益化レポートを管理する方法について説明します。
API を使用したレポートの構成
組織全体のレポートを構成するには、/organizations/{org_name}/report-definitions
に POST リクエストを発行します。
特定のデベロッパーのレポートを構成するには、/organizations/{org_name}/developers/{dev_id}/report-definitions
に POST リクエストを発行します。ここで、{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
たとえば、請求レポートを生成するには、organizations/{org_name}/billing-reports
に POST リクエストを発行します。
リクエスト本文で(どのタイプのレポートでも)、レポートの検索条件を指定します。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", ... ]
注: devCustomAttributes
配列に事前定義された MINT_*
属性と ADMIN_*
属性は指定しないでください。
たとえば、次の例では、レポートに 3 つのカスタム属性(BILLING_TYPE
、SFID
、ORG_EXT
)が含まれています(デベロッパー用に定義されている場合)。
$ 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 を使用した取引アクティビティの報告
組織の取引アクティビティを表示するには、/organizations/{org_name}/transaction-search
に POST リクエストを送信します。リクエストを行う際に、取得の条件を指定する必要があります。条件として指定できる項目は次のとおりです。
- 取引が発行された 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 |
注: このプロパティは収益レポートでは有効ではありません。 JULY などのレポートの請求月。 |
なし | はい |
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 |
レポートに含める取引のタイプ。有効な値は次のとおりです。
このプロパティを指定しないと、すべてのトランザクション タイプがレポートに含まれます。 |
なし | × |