管理報表

您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

簡介

營利報表可讓您存取特定使用資訊和交易活動。 舉例來說,您可以判斷在特定日期範圍內,哪些應用程式、開發人員、API 產品組合或 API 產品有交易活動。透過營利功能,您可以產生追蹤 API 使用情況的摘要詳細報表。

營利報表類型

你可以產生下列類型的營利報表。

檢舉 說明
帳單 查看單一帳單月份的開發人員活動,並確認費率方案已正確套用。
預付餘額 查看預付開發人員在帳單月份或目前開放月份的餘額加值,以便與付款處理服務供應商收到的款項進行對帳。
收益 查看開發人員在指定日期範圍內的活動和收益,以便分析 API 產品組合和產品在開發人員 (及其應用程式) 間的成效。
變異

比較兩個日期範圍內開發人員產生的活動和收益,以便分析開發人員 (和他們的應用程式) 的 API 套件和產品成效上升或下降趨勢。

關於資料保留

在 Apigee Edge 公有雲中,營利資料保留是方案授權。如要瞭解營利授權,請前往 https://cloud.google.com/apigee/specsheets。如要將營利資料保留超過授權期限,請洽詢 Apigee 銷售團隊。延長資料保留期限會在提出要求時啟用,且無法追溯啟用,以納入原始資料保留期限之前的資料。

關於重複交易

如果比較營利交易報表與 Analytics 資料,您可能會發現少數重複交易。這是正常現象,因為營利系統每天可處理數百萬筆交易,且隨時可平行處理多筆交易。平均而言,約有 0.1% 的交易可能是重複交易。

瀏覽「營利報表」頁面

按照下方說明存取「營利報表」頁面。

Edge

如要使用 Edge UI 存取「報表」頁面,請按照下列步驟操作:

  1. 登入 apigee.com/edge
  2. 在左側導覽列中,依序選取「發布」>「營利」>「報表」

系統隨即顯示「報表」頁面。

如圖所示,「報表」頁面可讓您:

Classic Edge (Private Cloud)

如要使用傳統 Edge UI 存取「報表」頁面,請按照下列步驟操作:

  1. 登入 http://ms-ip:9000,其中 ms-ip 是管理伺服器節點的 IP 位址或 DNS 名稱。
  2. 選取頂端導覽列中的「營利」>「營利報表」

系統隨即顯示「報表」頁面。

設定報表

如要透過使用者介面設定報表,請參閱下列章節。

設定報表的步驟

使用 Edge UI 或傳統 Edge UI 設定報表。

邊緣

如要使用 Edge UI 設定報表,請按照下列步驟操作:

  1. 在左側導覽列中,依序選取「發布」>「營利」>「報表」
  2. 按一下「+ 報表」
  3. 設定下表定義的報表詳細資料。
    欄位 說明
    名稱 報表的專屬名稱。
    說明 報告說明。
    報告類型 請參閱「營利報表類型」。
  4. 根據選取的報表類型,設定其餘報表詳細資料,詳情請參閱下列章節:
  5. 在報表視窗中輸入資訊後,您可以:
    • 按一下「儲存報表」,儲存報表設定。
    • 如果是「詳細」報表,請按一下「提交工作」,以非同步方式執行報表,並在稍後擷取結果。 詳情請參閱「產生及下載報表」。

    • 按一下「另存為 CSV」或「另存為 ZIP」,即可將產生的報表下載到本機,格式為半形逗號分隔值 (CSV) 或內含 CSV 的壓縮 ZIP 檔案。建議您下載 ZIP 檔,這樣下載大型報表時會更有效率。

Classic Edge (Private Cloud)

如要使用傳統 Edge UI 建立報表,請按照下列步驟操作:

  1. 選取頂端導覽列中的「營利」>「營利報表」
  2. 在下拉式選單中,選取要建立的報表類型。請參閱「營利報表類型」。
  3. 按一下「+ 報表」
  4. 根據所選帳單類型設定報表詳細資料,詳情請參閱下列章節:
  5. 在報表視窗中輸入資訊後,您可以:
    • 按一下「另存新檔...」即可儲存報表設定,並在稍後下載報表。
    • 只有詳細報表會顯示「提交工作」按鈕,點按後即可非同步執行報表,並在稍後擷取結果。詳情請參閱「產生及下載報表」。

    • 按一下「下載 CSV」,即可產生報表並下載到本機,以半形逗號分隔值 (CSV) 檔案格式查看。

設定帳單報表

按照步驟設定報表,並在報表頁面中輸入下列資訊:

欄位 說明
帳單月份

報表的帳單月份。

報表層級

回報層級。有效值包括:

  • 詳細:在個別行顯示每筆交易,並允許你檢查費率方案是否已正確套用。沒有摘要。
  • 摘要:匯總各項 API 產品和開發人員的總收益。
產品組合

注意:在 Classic Edge UI 中,API 產品組合稱為 API 套件。

選取要納入報表的 API 產品組合。如未選取任何項目,報表會納入所有 API 產品組合。

報表會為每個選取的 API 產品組合提供獨立的資料列。

如要製作摘要報表,您可以在「摘要顯示選項」中勾選「不顯示」。在這種情況下,報表會匯總所有 (或所選) API 產品套件的資訊,不會分別列出每個 API 產品套件的資訊。

產品

選取要納入報表的 API 產品。如未選取任何產品,報表會納入所有 API 產品。

報告會為每個選取的 API 產品分別列出一行。

如要製作摘要報表,您可以在「摘要顯示選項」中勾選「不顯示」。在這種情況下,報表會匯總所有 (或所選) 開發人員的資訊,不會分別列出所選開發人員的資訊。

Companies

選取要納入報表的公司。如未選取任何公司,報表會納入所有公司。

房價方案

要納入報表的費率方案。請在下方選取一個適用選項:

  • 所有費率方案:在報表中納入所有費率方案。
  • 標準費率方案:報表只會納入標準費率方案。
  • 開發人員專屬費率方案:報表只會納入開發人員方案。

設定預付餘額報表

按照步驟設定報表,並在報表頁面中輸入下列資訊:

欄位 說明
帳單月份

報表的帳單月份。

報表層級

回報層級。有效值包括:

  • 詳細:分別顯示每次餘額加值,方便您與付款處理方收到的款項進行對帳。
  • 摘要:彙整每位開發人員的餘額加值總額。
Companies

選取要納入報表的公司。如未選取任何公司,報表會納入所有公司。

設定收益報表

按照步驟設定報表,並在報表頁面中輸入下列資訊:

欄位 說明
日期範圍

報表的日期範圍。請在下方選取一個適用選項:

  • 預設:從下拉式選單中選取標準日期範圍 (例如上個曆月)。
  • 自訂:從日曆彈出式視窗中選擇範圍的開始日期和結束日期。
選取貨幣

報表的幣別。有效值包括:

  • 當地幣別:報表中的每一行都會顯示適用的費率方案。也就是說,如果開發人員的方案使用不同幣別,一份報表可能包含多種幣別。
  • 歐元:報表中的當地幣別交易會換算為歐元並顯示。
  • 英鎊:報表中的當地幣別交易會轉換為英鎊並顯示。
  • 美元:報表中的當地幣別交易會換算成美元並顯示。
報表層級

回報層級。有效值包括:

  • 詳細:每筆交易都會顯示在個別資料列中。沒有摘要。
  • 摘要:根據您選取的參數,匯總各 API 產品和開發人員的總收益。
產品組合

注意:在 Classic Edge UI 中,API 產品組合稱為 API 套件。

選取要納入報表的 API 產品組合。如未選取任何項目,報表會納入所有 API 產品組合。

報表會為每個選取的 API 產品組合提供獨立的資料列。

如要製作摘要報表,您可以在「摘要顯示選項」中勾選「不顯示」。在這種情況下,報表會匯總所有 (或所選) API 產品套件的資訊,不會分別列出每個 API 產品套件的資訊。

產品

選取要納入報表的 API 產品。如未選取任何產品,報表會納入所有 API 產品。

報告會為每個選取的 API 產品分別列出一行。

如要製作摘要報表,您可以在「摘要顯示選項」中勾選「不顯示」。在這種情況下,報表會匯總所有 (或所選) 開發人員的資訊,不會分別列出所選開發人員的資訊。

Companies

選取要納入報表的公司。如未選取任何公司,報表會納入所有公司。

如要產生摘要報表,您也可以在「摘要顯示選項」部分中勾選「不顯示」。 在這種情況下,報表會匯總所有 (或所選) 公司的資訊,不會分別列出每間所選公司的資訊。

應用程式

選取要納入報表的應用程式。如未選取任何應用程式,報表會納入所有應用程式。

報表會為每個所選應用程式各別列出一行。

如要產生摘要報表,您也可以在「摘要顯示選項」部分勾選「不顯示」。在這種情況下,報表會匯總所有 (或所選) 應用程式的資訊,不會分別列出所選應用程式的資訊。

摘要顯示選項

資料欄在報表中分組和顯示的順序。選取數字,指出該區段在分組中的相對順序 (1 是第一個分組)。舉例來說,下列程式碼會先依套件分組報表,然後依產品、開發人員和應用程式分組。

如不想顯示某個區段,請選取「不顯示」,然後依序選取其餘欄位。變更某個部分的相對順序,或選擇不在報表中顯示某個部分時,系統會自動更新順序。

在收益摘要報表中加入自訂交易屬性

交易記錄政策可讓您擷取交易的自訂屬性資料,並將這些自訂屬性納入收益摘要報表。為機構設定 MINT.SUMMARY_CUSTOM_ATTRIBUTES 屬性,定義預設的自訂屬性集,這些屬性會納入營利資料庫表格。

使用這項功能需要經過一番思考和規劃,因此請詳閱下列注意事項。

如果您是雲端客戶,請與 Apigee Edge 支援團隊聯絡,設定這項屬性。如果您是 Apigee Edge for Private Cloud 客戶,請使用系統管理員憑證,透過 PUT 要求將標記設定為下列 API。

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_idtax_source 欄。請注意,API 呼叫中的自訂屬性陣列經過網址編碼。

在報表中加入自訂交易屬性的注意事項

  • 使用 API 建立屬性前,請務必確認要使用的屬性名稱。 這些是資料庫中的資料欄名稱,自訂屬性資料一律會儲存在這裡。
  • 每項交易記錄政策都有 10 個可用的自訂屬性欄位,如下圖所示。對於報表中要納入的產品,請使用完全相同的屬性名稱和位置。舉例來說,在下列交易記錄政策中,partner_idtax_source 自訂屬性分別佔用方塊 4 和 5。這應是他們在所有交易記錄政策中的姓名和職位,產品才能納入報表。

啟用這項功能後,如要在摘要收益報表中加入自訂屬性,請使用報表 API,並在 MintCriteria 中加入 transactionCustomAttributes。請參閱條件設定選項

設定差異報表 (已淘汰)

按照步驟設定報表,並在報表頁面中輸入下列資訊:

欄位 說明
日期範圍

報表的日期範圍。請在下方選取一個適用選項:

  • 預設:從下拉式選單中選取標準日期範圍 (例如上個曆月)。
  • 自訂:從日曆彈出式視窗中選擇範圍的開始日期和結束日期。
套件

要納入報表的 API 套件。請在下方選取一個適用選項:

  • 全部:報表會納入所有 API 套件。
  • 已選取:顯示清單,方便您選取要納入報表的 API 套件。如未選取任何套裝方案,報表會納入所有套裝方案。

報表會為每個選取的 API 套件提供獨立的資料列。

如要製作摘要報表,您可以在「摘要顯示選項」部分中,選擇性勾選「不顯示 (包裹)」。在這種情況下,報表會匯總所有 (或所選) API 套件的資訊,不會分別列出每個 API 套件的資訊。

產品

要納入報表的 API 產品。請在下方選取一個適用選項:

  • 全部:報表會納入所有 API 產品。
  • 已選取:顯示清單,方便您選取要納入報表的產品。如未選取任何產品,報表會納入所有產品。

報告會為每個選取的 API 產品分別列出一行。

如要產生摘要報表,您也可以在「摘要顯示選項」部分中勾選「不顯示 (產品)」。在這種情況下,報表會匯總所有 (或所選) API 產品的資訊,不會分別列出每個 API 產品的資訊。

Companies

要納入報表的公司。請在下方選取一個適用選項:

  • 全部:報表會納入所有公司。
  • 已選取:顯示清單,方便您選取要納入報表的公司。如未選取任何公司,報表會納入所有公司。

報表會為每個所選公司分別顯示一行。

如果是摘要報表,您可以在「摘要顯示選項」部分中,視需要勾選「不顯示 (公司)」。在這種情況下,報表會匯總所有 (或所選) 公司的資訊,不會分別列出每間所選公司的資訊。

應用程式

要納入報表的應用程式。請在下方選取一個適用選項:

  • 全部:報表會包含所有應用程式。
  • 已選取:顯示清單,您可以從中選取要納入報表的應用程式。如未選取任何應用程式,報表會納入所有應用程式。

報表會為每個所選應用程式各別列出一行。

如要產生摘要報表,您也可以在「摘要顯示選項」部分勾選「不顯示 (應用程式)」。在這種情況下,報表會匯總所有 (或所選) 應用程式的資訊,不會分別列出所選應用程式的資訊。

幣別

報表的幣別。有效值包括:

  • 當地幣別:報表中的每一行都會顯示適用的費率方案。也就是說,如果開發人員的方案使用不同幣別,一份報表可能包含多種幣別。
  • EUR:報表中的當地幣別交易會轉換為歐元並顯示。
  • GPB:報表中的當地幣別交易會換算成英鎊並顯示。
  • 美元:報表中的當地幣別交易會換算成美元並顯示。
摘要顯示選項

資料欄在報表中分組和顯示的順序。選取數字,指出該區段在分組中的相對順序 (1 是第一個分組)。舉例來說,下列程式碼會先依套件分組報表,然後依產品、開發人員和應用程式分組。

如不想顯示某個區段,請選取「不顯示」,然後依序選取其餘欄位。變更某個部分的相對順序,或選擇不在報表中顯示某個部分時,系統會自動更新順序。

產生及下載報表

建立報表後,您可以下載 CSV 或 ZIP 格式的報表結果。 您可以同步非同步產生 CSV 或 ZIP 檔案。

  • 如果是同步報表,您會執行報表要求,且要求會遭到封鎖,直到 Analytics 伺服器提供回應為止。不過,由於報表可能需要處理大量資料 (例如數百 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

以下指令會建立詳細的帳單報表,顯示開發人員 DEV FIVE 在 2015 年 6 月的活動。

$ 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

舉例來說,下列程式碼會傳回機構的報表設定,並將擷取上限設為五個報表設定:

$ 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_* 屬性。

舉例來說,下列範例在報表中包含三個自訂屬性: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

以下範例顯示的報表輸出內容包含兩個自訂屬性的值:

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 要求。提出要求時,您必須指定擷取條件。您可以指定為條件的項目包括:

  • 已發出交易的一或多個 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

報表名稱。

N/A
description

報告說明。

N/A
mintCriteria

設定報表的條件。詳情請參閱「條件設定選項」。

N/A
type

報表類型。可能的值如下:

  • BILLING
  • REVENUE
  • VARIANCE
  • PREPAID_BALANCE
N/A

條件設定選項

透過 mintCriteria 屬性,報表可使用下列設定選項:

名稱 說明 預設 是否必要?
appCriteria

要納入報表的特定應用程式 ID 和機構。如未指定這項屬性,報表會納入所有應用程式。

N/A
billingMonth

注意:這項屬性不適用於收益報表。

報表的帳單月份,例如「7 月」。

N/A
billingYear

注意:這項屬性不適用於收益報表。

報表的帳單年度,例如 2015 年。

N/A
currCriteria

報表要納入特定幣別的 ID 和機構。如未指定這項屬性,報表會納入所有支援的幣別。

N/A
currencyOption

報表的幣別。有效值包括:

  • LOCAL。報表的每一行都會顯示適用的費率方案。也就是說,如果開發人員的方案使用不同幣別,一份報表可能包含多種幣別。
  • EUR。當地幣別交易會轉換為歐元並顯示。
  • GPB。系統會將當地幣別交易換算為英鎊並顯示。
  • USD。系統會將當地幣別交易換算成美元並顯示。
N/A
devCriteria

開發人員 ID (電子郵件地址) 和機構名稱,以便將特定開發人員納入報表。如未指定這項屬性,報表會納入所有開發人員。例如:

"devCriteria":[{
    "id":"RtHAeZ6LtkSbEH56",
    "orgId":"my_org"}
]
                
N/A
devCustomAttributes

注意:這項屬性僅適用於收益報表。

要納入報表的自訂屬性 (如已為開發人員定義)。例如:

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

注意:請勿在 devCustomAttributes 陣列中指定預先定義的 MINT_*ADMIN_* 屬性。

N/A
fromDate

注意:這項屬性僅適用於收益、差異和交易活動報表。

報表的開始日期 (世界標準時間)。

N/A 收益報表必須提供這項資訊,其他報表類型則不必。
groupBy

報表中資料欄的分組順序。有效值包括:

  • APPLICATION
  • BALANCE
  • DEVELOPER
  • ORG
  • PACKAGE
  • PRODUCT
  • RATEPLAN
N/A
monetizationPackageId

要納入報表的一或多個 API 產品組合 ID。如未指定這項屬性,報表會納入所有 API 產品組合。

注意: 查看交易活動 (/transaction-search) 時,這個屬性無效。

N/A
pkgCriteria

要納入報表的特定 API 產品組合的 ID 和機構。如未指定這項屬性,報表會納入所有 API 產品組合。這個屬性可以指定,取代 monetizationpackageIds 屬性。

注意: 查看交易活動 (/transaction-search) 時,這個屬性無效。

N/A
prevFromDate

注意:這項屬性僅適用於差異報表。

前一週期的開始日期 (世界標準時間)。用於建立先前期間的報表,與目前的報表進行比較。

N/A
prevToDate

注意:這項屬性僅適用於差異報表。

前一期結束日期 (世界標準時間)。用於建立前一週期的報表,與目前的報表進行比較。

N/A
prodCriteria

報表要納入的特定 API 產品 ID 和機構。如未指定這項屬性,報表會納入所有 API 產品。這個屬性可以指定,取代 productIds 屬性。

注意: 查看交易活動 (/transaction-search) 時,這個屬性無效。

N/A
productIds

要納入報表的一或多個 API 產品 ID。如未指定這項屬性,報表會納入所有 API 產品。

API 產品 ID 應指定為 org-name@@@product-name。 例如:"productIds": ["myorg@@@myproduct", "myorg@@@myproduct2"]

N/A
pricingTypes

要納入報表的費率方案定價類型。有效值包括:

  • REVSHARE. 收益分潤方案。
  • REVSHARE_RATECARD。收益分潤和費率表費率方案。
  • RATECARD. 價目表方案。

如未指定這項屬性,報表會納入所有價格類型的費率方案。

N/A
ratePlanLevels

要納入報表的費率方案類型。有效值包括:

  • DEVELOPER. 開發人員費率方案。
  • STANDARD。標準房價方案。

如未指定這項屬性,報表會同時納入開發人員專屬和標準費率方案。

N/A
showRevSharePct

這個旗標會指定報表是否顯示收益分潤百分比。有效值包括:

  • true. 顯示收益分潤百分比。
  • false。請勿顯示收益分潤百分比。
N/A
showSummary

指定報表是否為摘要的旗標。有效值包括:

  • true:報表是摘要。
  • false。報表不是摘要。
N/A
showTxDetail

注意:這項屬性僅適用於收益報表。

這個標記會指定報表是否顯示交易層級的詳細資料。有效值包括:

  • true. 顯示交易層級的詳細資料。
  • false. 不顯示交易層級的詳細資料。
N/A
showTxType

這個旗標會指定報表是否顯示每筆交易的類型。有效值包括:

  • true顯示每筆交易的類型。
  • false. Do not show the type of each transaction.
N/A
toDate

注意:這項屬性僅適用於收益、差異和交易活動報表。

報表的結束日期 (世界標準時間)。

報表包含指定日期前一天結束前收集到的資料。 報表會排除在指定結束日期收集的報表資料。 舉例來說,如要讓費率方案在 2016 年 12 月 31 日到期,toDate 值應設為 2017-01-01。 在這種情況下,報表會納入 2016 年 12 月 31 日當天結束前的報表資料,但不包含 2017 年 1 月 1 日的報表資料。

N/A 收益報表必須提供這項資訊,其他報表類型則不必。
transactionStatus

要納入報表的交易狀態。有效值包括:

  • SUCCESS. 交易成功。
  • DUPLICATE. 重複交易。您可以忽略這些交易。從 Apigee 執行階段到評分伺服器的資料管道有時會產生重複交易,以達到容錯目的,而營利功能會辨識並將這些交易標示為重複。
  • FAILED. 交易失敗。如果先決條件驗證失敗,就會觸發這個狀態。例如:
    • 開發人員尚未購買費率方案,但系統仍嘗試評分。如果未設定「收益限制檢查」政策,就可能發生這種情況。
    • 配額已超過,但通話仍在繼續。如果未設定「收益限制檢查」政策,就可能發生這種情況。
    • 系統為以自訂屬性為準的方案傳送了負值的自訂屬性值。
  • INVALID_TSC。交易無效。如果 txProviderStatus 執行階段條件與 API 產品組合層級指定的成功條件不符,就會觸發這個狀態。
  • REVIEW. 需要審查的交易。如果彈性收益成數方案的值落在未設定的收益範圍內,就會觸發這個狀態。
N/A
transactionCustomAttributes

要納入收益摘要報表的自訂交易屬性。您必須在機構中啟用這項功能。請參閱在收益摘要報表中加入自訂交易屬性

N/A
transactionTypes

報表要納入的交易類型。有效值包括:

如未指定這項屬性,報表會納入所有交易類型。

N/A