處理帳單核准要求
適用于:Windows Azure Pack
當Windows Azure Pack 租使用者建立或刪除訂用帳戶或訂用帳戶附加元件時,可能需要根據主機者的計費商務作法核准或拒絕要求。 Windows Azure Pack 會定義 REST 介面,以核准訂用帳戶和訂用帳戶附加元件建立和刪除。 這些是由計費配接器實作,每當租使用者建立或刪除訂用帳戶或訂用帳戶附加元件時,就會呼叫一次註冊。 HTTP 回應碼會指出要求的作業是否經過核准。 拒絕大於或等於 400 的數位;接受小於 400 的數位。 系統會忽略回應本文的內容。
帳單核准 REST API 端點
以下是計費配接器需要實作的計費核准 REST API:
如果註冊為 「強制」或「計費」,REST 呼叫會封鎖,而且會即時傳送要求通知給使用量服務中 NotificationSubscribers 設定的任何登錄者。 通知事件狀態將會擱置核准。 根據任何封鎖訂閱者的回應 () ,將會核准或拒絕作業。 如果未註冊封鎖訂閱者,事件將會自動核准,並設定為已認可狀態,並透過使用量服務 REST API 公開。 如需強制和計費訂用帳戶類型的詳細資訊,請設定Windows Azure Pack Usage Service。
將這些作業認可給計費系統的實際訊號將會是 REST API 中公開的事件,不論是否註冊為通知訂閱者;不應該對透過此 API 傳送的要求採取任何動作,因為它們只是要求。
重要
Windows Azure Pack RTM 版本會在即時計費核准 API 上公開訂用帳戶更新事件,而該服務的任何登錄者都必須自動核准這些事件。
如需註冊計費核准 REST API 端點的詳細資訊,請參閱設定 azure Pack Usage Service Windows。
驗證核准要求
計費核准 REST API 至少需要基本驗證。
處理核准要求
以下是傳送至計費配接器的建立訂用帳戶要求範例。 計費配接器傳送的 HTTP 回應碼應該是 204,代表核准或 403 代表拒絕要求。
POST /usage/subscriptions HTTP/1.1
Content-Type: application/json; charset=utf-8
Host: 10.121.217.127:8888
Content-Length: 564
Expect: 100-continue
{
"EventId": 6530,
"State": 2,
"Method": "POST",
"Entity": {
"SubscriptionID": "0a53e53d-1334-424e-8c63-ade05c361be2",
"SubscriptionName": "ExamplePlan",
"AccountAdminLiveEmailId": "user@example.com",
"ServiceAdminLiveEmailId": null,
"CoAdminNames": [
],
"AddOnReferences": [
],
"AddOns": [
],
"State": 0,
"QuotaSyncState": 0,
"ActivationSyncState": 0,
"PlanId": "Examphlztfpgi",
"Services": [
],
"LastErrorMessage": null,
"Features": null,
"OfferFriendlyName": null,
"OfferCategory": null,
"Created": "0001-01-01T00:00:00Z"
},
"EntityParentId": null,
"NotificationEventTimeCreated": "2013-09-25T00:32:08.8724845Z"
}
如果計費配接器收到事件並傳回錯誤訊息,事件將不會在服務管理 API 中順利完成。 如果這不是預期的行為,計費配接器必須針對每個事件通知傳回 200 的狀態碼,而且應該記錄任何失敗以供稍後處理。 收到的任何未知事件都應該傳回 200 狀態碼。