レポートの管理

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 を使用して [レポート] ページにアクセスするには:

  1. apigee.com/edge にログインします。
  2. 左側のナビゲーション バーで、[公開] > [収益化] > [レポート] を選択します。

[レポート] ページが表示されます。

図でハイライト表示されているように、[レポート] ページでは次のことができます。

Classic Edge(Private Cloud)

Classic Edge UI を使用して [レポート] ページにアクセスするには:

  1. http://ms-ip:9000 にログインします。ms-ip は Management Server ノードの IP アドレスまたは DNS 名です。
  2. 上部のナビゲーション バーで、[収益化] > [収益化レポート] を選択します。

[レポート] ページが表示されます。

レポートを設定する

次のセクションで説明するように、UI を使用してレポートを構成します。

レポートを設定する手順

Edge UI または Classic Edge UI を使用してレポートを構成します。

Edge

Edge UI を使用してレポートを構成するには:

  1. 左側のナビゲーション バーで、[公開] > [収益化] > [レポート] を選択します。
  2. [+ 報告] をクリックします。
  3. 次の表で定義されているレポートの詳細を構成します。
    フィールド 説明
    名前 レポートの一意の名前。
    説明 レポートの説明。
    レポートの種類 収益化レポートの種類をご覧ください。
  4. 選択したレポートタイプに基づいて、残りのレポートの詳細を構成します。詳細については、以下のセクションをご覧ください。
  5. レポート ウィンドウに情報を入力すると、次のことができます。
    • [レポートを保存] をクリックして、レポートの設定を保存します。
    • 詳細レポートの場合のみ、[Submit job] をクリックしてレポートを非同期で実行し、後で結果を取得します。詳しくは、レポートの生成とダウンロードをご覧ください。

    • [CSV として保存] または [ZIP として保存] をクリックして、生成されたレポートをローカルマシンにカンマ区切り値(CSV)または CSV を含む圧縮 ZIP ファイルとしてダウンロードします。サイズの大きいレポートの場合は、zip 形式でダウンロードすることをおすすめします。より効率的にダウンロードできます。

Classic Edge(Private Cloud)

Classic Edge UI を使用してレポートを作成するには:

  1. 上部のナビゲーション バーで、[収益化] > [収益化レポート] を選択します。
  2. プルダウン メニューで、作成するレポートの種類を選択します。収益化レポートの種類をご覧ください。
  3. [+ 報告] をクリックします。
  4. 選択した課金タイプに基づいてレポートの詳細を構成します。詳細は、以下のセクションをご覧ください。
  5. レポート ウィンドウに情報を入力すると、次のことができます。
    • [名前を付けて保存] をクリックしてレポートの設定を保存し、後でレポートをダウンロードします。
    • 詳細レポートの場合のみ、[Submit job] をクリックしてレポートを非同期で実行し、後で結果を取得します。詳しくは、レポートの生成とダウンロードをご覧ください。

    • [CSV 形式でダウンロード] をクリックして、レポートを生成してローカルマシンにカンマ区切り値(CSV)ファイルとしてダウンロードし、表示します。

請求レポートの構成

レポートを構成する手順に沿って、レポート ページに次の情報を入力します。

フィールド 説明
請求月

レポートの請求月。

レポートレベル

レポートレベル。有効な値は次のとおりです。

  • 詳細: 各取引が個別の行に表示され、料金プランが正しく適用されていることを確認できます。概要はありません。
  • 概要: 各 API プロダクトとデベロッパーの合計収益の概要が表示されます。
製品バンドル

: Classic Edge UI では、API プロダクト バンドルは API パッケージと呼ばれます。

レポートに含める API プロダクト バンドルを選択します。何も選択しない場合、すべての API プロダクト バンドルがレポートに含まれます。

レポートには、選択した API プロダクト バンドルごとに個別の行が含まれます。

概要レポートの場合は、必要に応じて [概要] の表示オプションで [表示しない] をオンにします。この場合、レポートにはすべての(または選択した)API プロダクト バンドルの情報が集約されます(API プロダクト バンドルごとに情報が個別に表示されることはありません)。

商品

レポートに含める API プロダクトを選択します。何も選択しない場合、すべての API プロダクトがレポートに含まれます。

レポートには、選択した API プロダクトごとに個別の行が含まれます。

概要レポートの場合は、必要に応じて [概要] の表示オプションで [表示しない] をオンにします。この場合、レポートにはすべての(または選択した)デベロッパーの情報が集約されます(選択したデベロッパーごとに情報が個別に表示されることはありません)。

会社

レポートに含める企業を選択します。何も選択しなかった場合、すべての企業がレポートに含まれます。

料金プラン

レポートに含める料金プラン。次の中から 1 つ選択してください。

  • すべての料金プラン: すべての料金プランをレポートに含めます。
  • 標準料金プラン: レポートに標準料金プランのみを含めます。
  • デベロッパー固有の料金プラン: レポートにはデベロッパーのプランのみを含めます。

前払い残高レポートの構成

レポートを構成する手順に沿って、レポート ページに次の情報を入力します。

フィールド 説明
請求月

レポートの請求月。

レポートレベル

レポートレベル。有効な値は次のとおりです。

  • 詳細: 残高のチャージごとに個別に表示され、決済代行業者から受け取った支払いと照合できます。
  • 概要: 各デベロッパーの残高のチャージの合計が要約されます。
会社

レポートに含める企業を選択します。何も選択しなかった場合、すべての企業がレポートに含まれます。

収益レポートの設定

レポートを構成する手順に沿って、レポート ページに次の情報を入力します。

フィールド 説明
期間

レポートの期間。次の中から 1 つ選択してください。

  • プリセット: プルダウン メニューから標準の期間(「前月」など)を選択します。
  • カスタム: カレンダーのポップアップから期間の開始日と終了日を選択します。
通貨を選択

レポートの通貨。有効な値は次のとおりです。

  • ローカル通貨: レポートの各行は、該当する料金プランを使用して表示されます。 これは、デベロッパーが複数の通貨を使用したプランを持っている場合に、1 つのレポートに複数の通貨が存在する可能性があることを意味します。
  • ユーロ: レポート内の現地通貨取引はユーロに換算されて表示されます。
  • 英国ポンド: レポート内の現地通貨取引はポンドに換算されて表示されます。
  • 米ドル: レポート内の現地通貨取引は変換され、ドルで表示されます。
レポートレベル

レポートレベル。有効な値は次のとおりです。

  • 詳細: 各取引が個別の行に表示されます。概要はありません。
  • 概要: 選択したパラメータに応じて、各 API プロダクトとデベロッパーの合計収益の概要が表示されます。
製品バンドル

: 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">[&quot;partner_id&quot;,&quot;tax_source&quot;]</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 を使用して MintCriteriatransactionCustomAttributes を追加します。条件の構成オプションをご覧ください。

差異レポートの設定(非推奨)

レポートを構成する手順に沿って、レポート ページに次の情報を入力します。

フィールド 説明
期間

レポートの期間。次の中から 1 つ選択してください。

  • プリセット: プルダウン メニューから標準の期間(「前月」など)を選択します。
  • カスタム: カレンダーのポップアップから期間の開始日と終了日を選択します。
パッケージ

レポートに含める API パッケージ。次の中から 1 つ選択してください。

  • すべて: レポートにすべての API パッケージが含まれます。
  • 選択済み: レポートに含める API パッケージを選択できるリストが表示されます。パッケージを選択しない場合、すべてのパッケージがレポートに含まれます。

レポートには、選択した API パッケージごとに個別の行が含まれます。

概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない(パッケージ)] チェックボックスをオンにします。この場合、レポートにはすべての(または選択した)API パッケージの情報が集約されます(API パッケージごとに情報が個別に表示されることはありません)。

商品

レポートに含める API プロダクト。次の中から 1 つ選択してください。

  • すべて: レポートにすべての API プロダクトが含まれます。
  • 選択済み: レポートに含める商品を選択できるリストが表示されます。商品を選択しない場合は、すべての商品がレポートに含まれます。

レポートには、選択した API プロダクトごとに個別の行が含まれます。

概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない(商品)] をオンにします。この場合、レポートにはすべての(または選択した)API プロダクトの情報が集約されます(API プロダクトごとに情報が個別に表示されることはありません)。

会社

レポートに含める企業。次の中から 1 つ選択してください。

  • すべて: レポートにすべての企業が含まれます。
  • 選択済み: レポートに含める企業を選択できるリストが表示されます。企業を選択しない場合、すべての企業がレポートに含まれます。

レポートには、選択した企業ごとに個別の行が表示されます。

概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない(企業)] をオンにします。この場合、レポートにはすべての(または選択した)企業の情報が集計されます(選択した各企業の情報は個別に表示されません)。

アプリ

レポートに含めるアプリ。次の中から 1 つ選択してください。

  • すべて: レポートにすべてのアプリが含まれます。
  • 選択済み: レポートに含めるアプリを選択できるリストが表示されます。アプリケーションを選択しない場合、すべてのアプリケーションがレポートに含まれます。

レポートには、選択したアプリケーションごとに個別の行が表示されます。

概要レポートの場合は、必要に応じて [概要の表示オプション] セクションで [表示しない(アプリケーション)] をオンにします。この場合、レポートにはすべての(または選択した)アプリの情報が集約されます(選択したアプリごとに情報が個別に表示されることはありません)。

通貨

レポートの通貨。有効な値は次のとおりです。

  • ローカル通貨: レポートの各行は、該当する料金プランを使用して表示されます。 これは、デベロッパーが複数の通貨を使用したプランを持っている場合に、1 つのレポートに複数の通貨が存在する可能性があることを意味します。
  • EUR: レポート内の現地通貨取引はユーロに換算されて表示されます。
  • GPB: レポート内の現地通貨取引はポンドに換算されて表示されます。
  • USD: レポート内の現地通貨取引は米ドルに換算されて表示されます。
概要の表示オプション

レポートで列がグループ化され、表示される順序。グループ内のそのセクションの相対順序を示す番号を選択します(1 は最初のグループです)。たとえば、次のレポートは、まずパッケージ、次にプロダクト、次にデベロッパー、最後にアプリでグループ化されます。

セクションを表示しない場合は、[表示しない] を選択し、残りのフィールドを順番に選択します。1 つのセクションの相対順序を変更するか、レポートにセクションを表示しないように選択すると、順序が自動的に更新されます。

レポートの生成とダウンロード

レポートを作成したら、レポートの結果を CSV または ZIP ファイル形式でダウンロードできます。 CSV ファイルまたは ZIP ファイルは、同期または非同期で生成できます。

  • 同期レポートの場合、レポート リクエストを実行すると、分析サーバーが応答を返すまでリクエストがブロックされます。しかし、レポートで大量のデータ(たとえば、数百 GB)を処理する必要がある場合は、タイムアウトで同期レポートが失敗する可能性があります。

    概要レポート レベルでは、同期生成のみがサポートされます。

  • 非同期レポートの場合、レポート リクエストを実行し、結果は後で受け取ります。次のように、非同期クエリ処理が適切な代替手段になる場合があります。

    • レポートの分析と作成に時間がかかる場合。
    • グループ化ディメンションが多いなどのクエリを複雑にする制約を伴うデータを分析する場合。
    • 一部のユーザーや組織のデータ量が大幅に増加したことが判明したときにクエリを管理する場合。

    レポートレベルが [詳細] の場合、非同期生成がサポートされます。

レポートを CSV または ZIP ファイル形式で生成してダウンロードするには、次のいずれかを行います。

  1. [レポート] ページにアクセスします。
  2. ダウンロードするレポートにカーソルを合わせます。
  3. [変更日] 列で、次のいずれかをクリックします。

    1. CSV ファイル アイコン アイコンまたは ZIP ファイルのアイコン アイコン(概要レポートの場合)。レポートは CSV ファイルまたは ZIP ファイルに同期的に保存されます。
    2. ジョブを送信(詳細レポートの場合)。非同期ジョブが開始されます。
      1. ジョブのステータスは [変更日] 列でモニタリングします。

        レポートをダウンロードできる状態になると、ディスクアイコンが表示されます。

        レポートのダウンロードの準備が整うと、ディスク イメージが表示されます。
      2. ジョブが完了したら、ディスクアイコンをクリックしてレポートをダウンロードします。

請求概要レポートの CSV ファイルの例を次に示します。

レポートの編集

レポートを編集する方法は次のとおりです。

  1. [レポート] ページにアクセスします
  2. 編集するレポートにカーソルを合わせて、アクション メニューの をクリックします。
  3. 必要に応じてレポートの構成を更新します。
  4. [レポートを更新] をクリックして、更新したレポートの設定を保存します。

レポートの削除

レポートを削除するには:

  1. [レポート] ページにアクセスします
  2. 削除するレポートにカーソルを合わせます。
  3. 操作メニューで をクリックします。

API を使用した収益化レポートの管理

以降のセクションでは、API を使用して収益化レポートを管理する方法について説明します。

API を使用したレポートの構成

組織全体のレポートを構成するには、/organizations/{org_name}/report-definitions に POST リクエストを発行します。

特定のデベロッパーのレポートを構成するには、/organizations/{org_name}/developers/{dev_id}/report-definitions に POST リクエストを発行します。ここで、{dev_id} はデベロッパーの ID です。

リクエストを行う際に、レポートの名前とタイプを指定する必要があります。タイプは、BILLINGREVENUEVARIANCE(非推奨)、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_TYPESFIDORG_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

レポートのタイプ。値は次のいずれかになります。

  • BILLING
  • REVENUE
  • VARIANCE
  • PREPAID_BALANCE
なし はい

条件の構成オプション

レポートには、mintCriteria プロパティで次の構成オプションを使用できます。

名前 説明 デフォルト 必須
appCriteria

レポートに含まれる特定のアプリケーションの ID と組織。このプロパティが指定されていない場合は、すべてのアプリケーションがレポートに含まれます。

なし いいえ
billingMonth

注: このプロパティは収益レポートでは有効ではありません。

JULY などのレポートの請求月。

なし はい
billingYear

注: このプロパティは収益レポートでは有効ではありません。

2015 年などのレポートの請求年。

なし はい
currCriteria

レポートに含まれる特定の通貨の ID と組織。このプロパティが指定されていない場合は、サポートされているすべての通貨がレポートに含まれます。

なし いいえ
currencyOption

レポートの通貨。有効な値は次のとおりです。

  • LOCAL。レポートの各行は、該当する料金プランを使用して表示されます。これは、デベロッパーが複数の通貨を使用したプランを持っている場合に、1 つのレポートに複数の通貨が存在する可能性があることを意味します。
  • EUR: 現地通貨取引はユーロに換算されて表示されます。
  • GPB: 現地通貨取引が英国ポンドに換算されて表示されます。
  • USD: 現地通貨取引は米ドルに換算されて表示されます。
なし いいえ
devCriteria

レポートに含まれる特定のデベロッパーのデベロッパー ID(メールアドレス)と組織名。このプロパティが指定されなかった場合は、すべてのデベロッパーがレポートに含まれます。次に例を示します。

"devCriteria":[{
    "id":"RtHAeZ6LtkSbEH56",
    "orgId":"my_org"}
]
                
なし いいえ
devCustomAttributes

注: このプロパティは収益レポートにのみ適用されます。

レポートに含めるカスタム属性(デベロッパー用に定義されている場合)。次に例を示します。

"devCustomAttributes": [
    "custom_attribute1",
    "custom_attribute2",
    ...
]

注: devCustomAttributes 配列に事前定義された MINT_* 属性と ADMIN_* 属性を指定しないでください。

なし いいえ
fromDate

注: このプロパティは、収益、差異、トランザクション アクティビティ レポートにのみ適用されます。

UTC でのレポートの開始日。

なし 収益レポートでは必須ですが、他のレポート タイプでは必須ではありません。
groupBy

レポート内で列をグループ化する順序。有効な値は次のとおりです。

  • APPLICATION
  • BALANCE
  • DEVELOPER
  • ORG
  • PACKAGE
  • PRODUCT
  • RATEPLAN
なし いいえ
monetizationPackageId

レポートに含める 1 つ以上の API プロダクト バンドルの ID。このプロパティを指定しないと、すべての API プロダクト バンドルがレポートに含まれます。

注: このプロパティは、トランザクション アクティビティ(/transaction-search)を表示する場合は無効です。

なし いいえ
pkgCriteria

レポートに含まれる特定の API プロダクト バンドルの ID と組織。このプロパティを指定しないと、すべての API プロダクト バンドルがレポートに含まれます。このプロパティは、monetizationpackageIds プロパティの代わりに指定できます。

注: このプロパティは、トランザクション アクティビティ(/transaction-search)を表示する場合は無効です。

なし いいえ
prevFromDate

注: このプロパティは差異レポートにのみ適用されます。

前の期間の開始日(UTC)。現在のレポートと比較するために、過去の期間のレポートを作成するために使用します。

なし いいえ
prevToDate

注: このプロパティは差異レポートにのみ適用されます。

前の期間の終了日(UTC)。現在のレポートと比較するために、過去の期間のレポートを作成するために使用します。

なし いいえ
prodCriteria

レポートに含まれる特定の API プロダクトの ID と組織。このプロパティを指定しないと、すべての API プロダクトがレポートに含まれます。このプロパティは、productIds プロパティの代わりに指定できます。

注: このプロパティは、トランザクション アクティビティ(/transaction-search)を表示する場合は無効です。

なし ×
productIds

レポートに含める 1 つ以上の API プロダクトの ID。このプロパティが指定されなかった場合は、すべての API プロダクトがレポートに含まれます。

API プロダクト ID は org-name@@@product-name として指定する必要があります。例: "productIds": ["myorg@@@myproduct", "myorg@@@myproduct2"]

なし いいえ
pricingTypes

レポートに含める料金プランの料金タイプ。有効な値は次のとおりです。

  • REVSHARE. 収益分配プラン。
  • REVSHARE_RATECARD. 収益分配と料金表の料金プラン。
  • RATECARD. 料金表プラン。

このプロパティが指定されていない場合は、すべての料金タイプの料金プランがレポートに含まれます。

なし いいえ
ratePlanLevels

レポートに含める料金プランのタイプ。有効な値は次のとおりです。

  • DEVELOPER: デベロッパー料金プラン。
  • STANDARD: 標準料金プラン。

このプロパティが指定されなかった場合は、デベロッパー固有の料金プランと標準料金プランの両方がレポートに含まれます。

なし いいえ
showRevSharePct

レポートに収益分配率を表示するかどうかを指定するフラグ。有効な値は次のとおりです。

  • true。収益分配率を表示します。
  • false。収益分配率は表示しません。
なし いいえ
showSummary

レポートが概要かどうかを指定するフラグ。有効な値は次のとおりです。

  • true。レポートは概要です。
  • false. レポートは概要ではありません。
なし いいえ
showTxDetail

注: このプロパティは収益レポートにのみ適用されます。

レポートに取引レベルの詳細を表示するかどうかを指定するフラグ。有効な値は次のとおりです。

  • true: 取引レベルの詳細を表示します。
  • false。取引単位の詳細は表示しません。
なし いいえ
showTxType

レポートに各取引のタイプを表示するかどうかを指定します。有効な値は次のとおりです。

  • true。各取引のタイプを表示します。
  • false。各取引のタイプは表示しません。
なし いいえ
toDate

注: このプロパティは、収益、差異、トランザクション アクティビティ レポートにのみ適用されます。

UTC でのレポートの終了日。

このレポートには、指定した日付の前日までの収集データが含まれます。 指定した終了日に収集されたレポートデータは、レポートから除外されます。たとえば、料金プランの有効期限を 2016 年 12 月 31 日に設定する場合は、toDate の値を 2017-01-01 に設定する必要があります。 この場合、レポートには 2016 年 12 月 31 日の最終日までのレポートデータが含まれ、2017 年 1 月 1 日のレポートデータは含まれません。

なし 収益レポートでは必須ですが、他のレポート タイプでは必須ではありません。
transactionStatus

レポートに含める取引のステータス。有効な値は次のとおりです。

  • SUCCESS: 取引が成功しました。
  • DUPLICATE. 重複する取引。これらの取引は無視してかまいません。Apigee ランタイムからレーティング サーバーに至るデータ パイプラインは、フォールト トレラントであるがために重複するトランザクションを生成することがあります。収益化では、重複として認識され、マークされます。
  • FAILED. 取引に失敗しました。このステータスは、前提条件の検証が失敗したときにトリガーされます。次に例を示します。
    • デベロッパーが料金プランを購入していないにもかかわらず、評価が試行された。これは、Monetization Limits Check ポリシーが構成されていない場合に発生することがあります。
    • 割り当てを超えているにもかかわらず、呼び出しが続行される。これは、Monetization Limits Check ポリシーが構成されていない場合に発生することがあります。
    • カスタム属性ベースのプランに負のカスタム属性値が送信されました。
  • INVALID_TSC。取引が無効です。このステータスは、txProviderStatus ランタイム条件が、API プロダクト バンドルレベルで指定された成功条件と一致しない場合にトリガーされます。
  • REVIEW. 審査が必要な取引。このステータスは、柔軟な収益分配率プランで、値が設定されていない収益範囲内にある場合にトリガーされます。
なし いいえ
transactionCustomAttributes

概要収益レポートに含めるカスタム トランザクション属性。この機能は組織で有効にする必要があります。収益概要レポートにカスタム トランザクション属性を含めるをご覧ください。

なし いいえ
transactionTypes

レポートに含める取引のタイプ。有効な値は次のとおりです。

このプロパティを指定しないと、すべてのトランザクション タイプがレポートに含まれます。

なし ×