אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X. מידע
מבוא
במוצר 'מונטיזציה' יש קבוצה של ממשקי API שבהם אפשר להשתמש כדי לבדוק את הגדרת ההתראות. באופן ספציפי, אתם יכולים:
- בודקים את ההפעלה של ה-webhook כדי לוודא שההתראות נשלחות
- בדיקה ועיבוד מחדש של התראות שנשלחו
בדיקת webhooks
הגדרת webhook מגדירה מטפל בקריאה חוזרת של HTTP שמופעל על ידי אירוע. מידע על הגדרת ווּבְּהוּקים זמין במאמר הגדרת התראות באמצעות ווּבְּהוּקים.
כדי לבדוק את ה-webhook, מבצעים את השלבים הבאים:
- הצגת הסוגים הזמינים של טריגרים להתראות webhook
- עיון במטען ייעודי (payload) של בקשה לדוגמה לבדיקת התראה של תגובה לפעולה מאתר אחר (webhook)
- בדיקת הביצוע של webhook
הצגת הסוגים הזמינים של טריגרים לשליחת התראות ב-webhook
כדי לראות את סוגי הטריגרים הזמינים של התראות webhook, שולחים בקשת GET למשאב הבא:
/organizations/{org_name}/webhooks/{webhook_id}/test/{developer_email_or_id}/{app_id}/{product_id}/{rateplan_id}
כאשר:
-
{org_name}מציין את שם הארגון. -
{webhook_id}מציין את המזהה של ה-webhook. כדי לראות רשימה של תגובות לפעולה מאתר אחר (webhook) ולקבל את המזהה של התגובה לפעולה מאתר אחר, אפשר לעיין במאמר הצגת כל התגובות לפעולה מאתר אחר באמצעות ה-API. -
{developer_email_or_id}הוא המזהה של המפתח. כדי לראות רשימה של מפתחים, אפשר לעיין במאמר רשימת מפתחים. -
{app_id}מציין את המזהה של האפליקציה שבה אתם בודקים את ההפעלה של ה-webhook. כדי לראות רשימה של מזהי האפליקציות בארגון, אפשר לעיין במאמר בנושא רשימת מזהי אפליקציות בארגון. -
{product_id}מציין את המזהה של מוצר ה-API שאתם בודקים את ההפעלה של ה-webhook שלו. כדי לראות רשימה של מוצרי API בארגון, אפשר לעיין במאמר בנושא רשימת מוצרי API. -
{rateplan_id}מציין את המזהה של תוכנית התמחור שאתם בודקים את ההפעלה של ה-webhook שלה. מזהה תוכנית התמחור שונה מהשם המוצג. כדי לראות את פרטי תוכנית התמחור, כולל המזהה, אפשר לעיין במאמר בנושא הסבר על דף תוכניות התמחור.
לדוגמה, הקריאה הבאה ל-cURL מחזירה את הערך RATEPLANQUOTAUSAGE כסוג הטריגר של ההתראה ב-webhook.
curl -H "Content-Type: application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/0a07eb1f-f485-4539-8beb-01be449699b3/test/joe@example.com/e759c119-510c-49a8-886c-f184091944bd/myproduct/mypackage_anrp" \ -u email:password
זוהי דוגמה לתגובה:
[ "RATEPLANQUOTAUSAGE" ]
בשלב הבא, צריך לקבוע את הסכימה של המטען הייעודי (payload) של בקשת הטריגר מסוג התראה של webhook.
צפייה במטען ייעודי (payload) של בקשה לדוגמה לבדיקת התראות webhook
כדי לראות מטען ייעודי (payload) לדוגמה של בקשה שאפשר להשתמש בה לבדיקת התראות של webhook, שולחים בקשת GET למשאב הבא:
/organizations/{org_name}/webhooks/{webhook_id}/test/{developer_email_or_id}/{app_id}/{product_id}/{rateplan_id}/{trigger_type}
כאשר:
-
{org_name}מציין את שם הארגון. -
{webhook_id}מציין את המזהה של ה-webhook. כדי לראות רשימה של תגובות לפעולה מאתר אחר (webhook) ולקבל את המזהה של התגובה לפעולה מאתר אחר, אפשר לעיין במאמר הצגת כל התגובות לפעולה מאתר אחר באמצעות ה-API. -
{developer_email_or_id}מציין את מזהה המפתח. כדי לראות רשימה של מפתחים, אפשר לעיין במאמר רשימת מפתחים. -
{app_id}מציין את המזהה של האפליקציה שבה אתם בודקים את ההפעלה של ה-webhook. כדי לראות רשימה של מזהי האפליקציות בארגון, אפשר לעיין במאמר בנושא רשימת מזהי אפליקציות בארגון. -
{product_id}מציין את המזהה של מוצר ה-API שאתם בודקים את ההפעלה של ה-webhook שלו. כדי לראות רשימה של מוצרי API בארגון, אפשר לעיין במאמר בנושא רשימת מוצרי API. -
{rateplan_id}מציין את המזהה של תוכנית התמחור שאתם בודקים את ההפעלה של ה-webhook שלה. מזהה תוכנית התמחור שונה מהשם המוצג. כדי לראות את פרטי תוכנית התמחור, כולל המזהה, אפשר לעיין במאמר בנושא הסבר על דף תוכניות התמחור. -
{trigger_type}מציין את השם של סוג הטריגר של התראות ה-webhook שהוחזר בשלב הקודם (List the available webhook notification trigger types).
לדוגמה, קריאת cURL הבאה מחזירה מטען ייעודי (payload) לדוגמה של בקשה עבור סוג הטריגר של התראת webhook RATEPLANQUOTAUSAGE:
curl -H "Content-Type: application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/0a07eb1f-f485-4539-8beb-01be449699b3/test/joe@example.com/e759c119-510c-49a8-886c-f184091944bd/myproduct/mypackage_anrp/RATEPLANQUOTAUSAGE" \ -u email:password
דוגמה למטען ייעודי לבקשה:
{
"eventTriggerReason": "RATEPLANQUOTAUSAGE",
"properties": [
{
"key": "quotaPercentUsed",
"value": "100"
}
]
}
לאחר מכן, משנים את מטען הנתונים של בקשת הדוגמה שמוחזר, לפי הצורך, ומשתמשים בו כדי לבדוק את ההפעלה של ה-webhook.
בדיקת ההפעלה של webhook
כדי לבדוק את ההפעלה של webhook, שולחים בקשת POST למשאב הבא:
/organizations/{org_name}/webhooks/{webhook_id}/test/{developer_email_or_id}/{app_id}/{product_id}/{rateplan_id}.
כאשר:
-
{org_name}מציין את שם הארגון. -
{webhook_id}מציין את המזהה של ה-webhook. כדי לראות רשימה של תגובות לפעולה מאתר אחר (webhook) ולקבל את המזהה של התגובה לפעולה מאתר אחר, אפשר לעיין במאמר הצגת כל התגובות לפעולה מאתר אחר באמצעות ה-API. -
{developer_email_or_id}מציין את מזהה המפתח. כדי לראות רשימה של מפתחים, אפשר לעיין במאמר רשימת מפתחים. -
{app_id}מציין את המזהה של האפליקציה שבה אתם בודקים את ההפעלה של ה-webhook. כדי לראות רשימה של מזהי האפליקציות בארגון, אפשר לעיין במאמר בנושא רשימת מזהי אפליקציות בארגון. -
{product_id}מציין את המזהה של מוצר ה-API שאתם בודקים את ההפעלה של ה-webhook שלו. כדי לראות רשימה של מוצרי API בארגון, אפשר לעיין במאמר בנושא רשימת מוצרי API. -
{rateplan_id}מציין את המזהה של תוכנית התמחור שאתם בודקים את ההפעלה של ה-webhook שלה. מזהה תוכנית התמחור שונה מהשם המוצג. כדי לראות את פרטי תוכנית התמחור, כולל המזהה, אפשר לעיין במאמר בנושא הסבר על דף תוכניות התמחור.
משנים את מטען הבקשה לדוגמה שהוחזר בשלב הקודם (הצגת מטען בקשה לדוגמה לבדיקת התראות של webhook) לפי הצורך, ומעבירים אותו במטען הבקשה.
לדוגמה, קריאת ה-cURL הבאה בודקת את ההפעלה של ה-webhook שצוין:
curl -H "Content-Type: application/json" -X POST -d \
'{
"eventTriggerReason": "RATEPLANQUOTAUSAGE",
"properties": [
{
"key": "quotaPercentUsed",
"value": "120"
}
]
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/0a07eb1f-f485-4539-8beb-01be449699b3/test/joe@example.com/e759c119-510c-49a8-886c-f184091944bd/myproduct/mypackage_anrp" \
-u email:password
בדוגמה הבאה אפשר לראות את התגובה שמציינת שההתראה נשלחה בהצלחה ל-webhook:
{
"original": {
"createdDate": 1463619959930,
"createdTimeStamp": 1463616000000,
"notificationType": "WEBHOOK",
"orgId": "myorg",
"rawMessage": "{\"orgName\":\"myorg\",\"developerEmail\":\"joe@example.com\",\"developerFirstName\":\"Joe\",\"developerLastName\":\"Smith\",\"applicationName\":\"myapp\",\"packageName\":\"MyPackage\",\"packageId\":\"mypackage\",\"ratePlanId\":\"mypackage_anrp\",\"ratePlanName\":\"anrp\",\"ratePlanType\":\"STANDARD\",\"developerRatePlanQuotaTarget\":200,\"quotaPercentUsed\":\"120\",\"ratePlanStartDate\":1463616000000,\"ratePlanEndDate\":null,\"nextBillingCycleStartDate\":null,\"products\":[\"myproduct\"],\"developerCustomAttributes\":[]\"triggerTime\":1463619959929,\"triggerReason\":\"RATEPLANQUOTAUSAGE\",\"developerQuotaResetDate\":null}",
"retryCount": 0,
"retryStatuses": [],
"source": "MailTo: [36112720-1304-4e0b-9b17-991f5e121ebb], Org: [myorg], TransactionId: [], LimitId: [], Key: []",
"toEmail": "http://123.45.67.89/webhook",
"updatedDate": 1463619959930
},
"raw": "This is the response",
"responseCode": 200,
"status": "NOTIFICATION_SENT"
}
צפייה בהתראות ועיבוד מחדש שלהן
התכונה 'מונטיזציה' מאפשרת להגדיר התראות שמופעלות על ידי אירועים ספציפיים. למידע על הגדרת התראות, אפשר לעיין במאמר הגדרת התראות.
לכל התראה שנשלחת, נשמרים הפרטים הבאים:
- נסה שוב לבצע ספירה
- קוד תגובה
- כותרת תגובה
- תוכן התשובה (רק 1,000 התווים הראשונים)
כדי לראות את ההתראות ולעבד אותן מחדש:
צפייה בהתראות שנשלחו
כדי לראות את ההתראות שנשלחו לארגון, שולחים בקשת GET למשאב הבא:
/organizations/{org_name}/notification-service-items
כאשר {org_name} מציין את שם הארגון.
אפשר גם לציין פרמטר שאילתה אחד או יותר מהפרמטרים הבאים כדי לסנן את רשימת ההתראות שמוחזרות בתשובה:
| פרמטר שאילתה | תיאור |
|---|---|
startdate |
תאריך ההתחלה בפורמט YYYY-MM-DD HH:mm:ss. |
enddate |
תאריך הסיום בפורמט YYYY-MM-DD HH:mm:ss. |
status |
הסטטוס של ההתראות. הערכים התקפים כוללים:
|
toemail |
מזהה האימייל או ה-webhook שאליו נשלחה ההתראה. |
יוחזרו עד 1,000 התראות.
בתגובה, הדגל hasMoreItems מציין אם מספר ההתראות ברשימה שצוינה הוא יותר מ-1,000. אם הסמל hasMoreItems הוא true, כלומר יש יותר התראות מכפי שאפשר להציג, ואתם רוצים לראות את ההתראות הנותרות, אתם צריכים לשנות את המסננים של פרמטר השאילתה כדי לעבד קבוצות קטנות יותר של התראות לכל בקשה. לדוגמה, אפשר לשלוח כמה בקשות באמצעות כמה טווחי תאריכים קצרים יותר, או להחזיר התראות עם ערכי סטטוס מסוימים בלבד.
לדוגמה, קריאת cURL הבאה מפרטת את ההתראות שנכשלו עבור ה-webhook שצוין בטווח התאריכים שצוין:
curl -H "Content-Type: application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/notification-service-items?enddate=2016-05-19 12:00:00&startdate=2016-05-18 12:00:00&status=FAILED&toemail=http://123.45.6789:8000/webhook" \ -u email:password
זוהי דוגמה לתגובה:
{
"hasMoreItems": false,
"notifications": [
{
"createdDate": 1463626865974,
"createdTimeStamp": 1463616000000,
"id": "9d87c6ea-1394-495b-bfb7-1d2e7ef3f837",
"notificationType": "WEBHOOK",
"orgId": "Org_d40f6c2e-1d6d-11e6-a4ed-af8444f24e4f",
"rawMessage": "{\"orgName\":\"Org_d40f6c2e-1d6d-11e6-a4ed-af8444f24e4f\",\"developerEmail\":\"joe@example.com\",\"developerFirstName\":\"Joe\",\"developerLastName\":\"Smith\",\"applicationName\":\"MyApp\",
\"packageName\":\"test-package\",\"packageId\":\"myorg@@@test-package-9ubo\",\"ratePlanId\":\"myorg@@@test-package-9ubo_anrp\",\"ratePlanName\":\"anrp\",\"ratePlanType\":\"STANDARD\",
\"developerRatePlanQuotaTarget\":10,\"quotaPercentUsed\":\"20\",\"ratePlanStartDate\":1463616000000,\"ratePlanEndDate\":null,\"nextBillingCycleStartDate\":1464739200000,\"products\":[\"product1\"],
\"developerCustomAttributes\":[],\"triggerTime\":1463626865907,\"triggerReason\":\"RatePlanQuotaUsage\",\"developerQuotaResetDate\":\"1464810145000\"}",
"retryCount": 3,
"retryStatuses": [
{
"responseCode": 500,
"responseMessage": "{\"Headers\":\"[{\"name\":\"Content-length\",\"buffer\":{\"empty\":false,\"full\":false},\"valuePos\":15,\"value\":\"20\",\"elements\":[{\"name\":\"20\",\"value\":null,\"parameters\":[],\"parameterCount\":0}]},{\"name\":\"Date\",\"buffer\":{\"empty\":false,\"full\":false},\"valuePos\":5,\"value\":\"Thu, 19 May 2016 03:01:09 GMT\",\"elements\":[{\"name\":\"Thu\",\"value\":null,\"parameters\":[],\"parameterCount\":0},{\"name\":\"19 May 2016 03:01:09 GMT\",\"value\":null,\"parameters\":[],\"parameterCount\":0}]}]\",\"StatusCode\":\"500\",\"Content : \":\"This is the response\"}",
"retriedAt": 1463626869184,
"retryAttempt": 1
},
{
"responseCode": 500,
"responseMessage": "{\"Headers\":\"[{\"name\":\"Content-length\",\"buffer\":{\"empty\":false,\"full\":false},\"valuePos\":15,\"value\":\"20\",\"elements\":[{\"name\":\"20\",\"value\":null,\"parameters\":[],\"parameterCount\":0}]},{\"name\":\"Date\",\"buffer\":{\"empty\":false,\"full\":false},\"valuePos\":5,\"value\":\"Thu, 19 May 2016 03:01:09 GMT\",\"elements\":[{\"name\":\"Thu\",\"value\":null,\"parameters\":[],\"parameterCount\":0},{\"name\":\"19 May 2016 03:01:09 GMT\",\"value\":null,\"parameters\":[],\"parameterCount\":0}]}]\",\"StatusCode\":\"500\",\"Content : \":\"This is the response\"}",
"retriedAt": 1463626869318,
"retryAttempt": 2
},
{
"responseCode": 500,
"responseMessage": "{\"Headers\":\"[{\"name\":\"Content-length\",\"buffer\":{\"empty\":false,\"full\":false},\"valuePos\":15,\"value\":\"20\",\"elements\":[{\"name\":\"20\",\"value\":null,\"parameters\":[],\"parameterCount\":0}]},{\"name\":\"Date\",\"buffer\":{\"empty\":false,\"full\":false},\"valuePos\":5,\"value\":\"Thu, 19 May 2016 03:01:09 GMT\",\"elements\":[{\"name\":\"Thu\",\"value\":null,\"parameters\":[],\"parameterCount\":0},{\"name\":\"19 May 2016 03:01:09 GMT\",\"value\":null,\"parameters\":[],\"parameterCount\":0}]}]\",\"StatusCode\":\"500\",\"Content : \":\"This is the response\"}",
"retriedAt": 1463626869378,
"retryAttempt": 3
}
],
"source": "MailTo: [6c3cde37-a8f1-4077-adbe-e9f6605a7299], Org: [myorg], TransactionId: [b8d763be-7185-450d-b421-df38c870fabd], LimitId: [RatePlan-Limit:myorg@@@test-package-9ubo_anrp], Key: [myorg@@@kjGSxEGtZeekBEyI~myorg@@@test-package-9ubo_anrp~Transactions~Calls~20]",
"status": "FAILED",
"toEmail": "http://123.45.67.89:8000/webhook",
"updatedDate": 1463626865974
}
]
}
צפייה בפרטים של התראה
כדי לראות את הפרטים של התראה ספציפית, שולחים בקשת GET למשאב הבא:
/organizations/{org_name}/notification-service-items/{notification_id}
כאשר:
-
{org_name}מציין את שם הארגון. -
{notification_id}מציין את המזהה של ההתראה שרוצים להציג את הפרטים שלה. אפשר לקבל את מזהה ההתראה מפלט התגובה כשמציגים את ההתראות שנשלחו.
לדוגמה, קריאת ה-cURL הבאה מפרטת את הפרטים של ההתראה עם המזהה 4b3dfadf-3a96-4a92-9512-1feff22f74f3:
curl -H "Content-Type: application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/notification-service-items/faa8e6a8-754e-40e8-9e0c-4dee6c9aca23" \ -u email:password
זוהי דוגמה לתגובה:
{
"createdDate": 1461062402871,
"createdTimeStamp": 1461024000000,
"id": "faa8e6a8-754e-40e8-9e0c-4dee6c9aca23",
"notificationType": "WEBHOOK",
"orgId": "myorg",
"rawMessage": "{\"orgName\":\"myorg\",\"developerEmail\":\"joe@example.com\",\"developerFirstName\":\"Joe\",\"developerLastName\":\"Smith\",\"applicationName\":\"myapp\",\"packageName\":\"mypackage\",\"ratePlanName\":\"anrp\",\"ratePlanType\":\"STANDARD\",\"developerRatePlanQuotaTarget\":54000,\"quotaPercentUsed\":\"1\",\"ratePlanStartDate\":1460419200000,\"ratePlanEndDate\":null,\"nextBillingCycleStartDate\":null,\"products\":[\"myproduct\"],\"developerCustomAttributes\":[],\"triggerTime\":1461062395966,\"triggerReason\":\"RatePlanQuotaUsage\"}",
"retryCount": 0,
"retryStatuses": [],
"source": "MailTo: [c9e42fcd-9632-4376-b92d-0fa27f178a3b], Org: [myorg], TransactionId: [0352e568-2724-42d9-a264-1b62586d5948], LimitId: [RatePlan-Limit:amyorg@@@mypackage-a0y9_anrp], Key: [myorg@@@PPXsQbkyO1bBhQOh~myorg@@@mypackage-a0y9_anrp~Transactions~Calls~1]",
"status": "NOTIFICATION_SENT",
"toEmail": "http://123.45.67.89:8000/webhook",
"updatedDate": 1461062402871
}
עיבוד מחדש של התראה
כדי לעבד מחדש התראה, שולחים בקשת POST למשאב הבא:
/organizations/{org_name}/notification-service-items/{notification_id}/reprocess
כאשר:
-
{org_name}מציין את שם הארגון. -
{notification_id}מציין את המזהה של פריט ההתראה שאתם רוצים להציג את הפרטים שלו. אפשר לקבל את מזהה ההתראה מפלט התגובה כשמציגים את ההתראות שנשלחו.
לדוגמה, קריאת ה-cURL הבאה מעבדת מחדש את ההתראה עם המזהה 4b3dfadf-3a96-4a92-9512-1feff22f74f3:
curl -H "Content-Type: application/json" -X POST \ "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/notification-service-items/faa8e6a8-754e-40e8-9e0c-4dee6c9aca23/reprocess" \ -u email:password
{
"createdDate": 1461062402871,
"createdTimeStamp": 1461024000000,
"id": "faa8e6a8-754e-40e8-9e0c-4dee6c9aca23",
"notificationType": "WEBHOOK",
"orgId": "myorg",
"rawMessage": "{\"orgName\":\"myorg\",\"developerEmail\":\"joe@example.com\",\"developerFirstName\":\"Joe\",\"developerLastName\":\"Smith\",\"applicationName\":\"myapp\",\"packageName\":\"mypackage\",\"ratePlanName\":\"anrp\",\"ratePlanType\":\"STANDARD\",\"developerRatePlanQuotaTarget\":54000,\"quotaPercentUsed\":\"1\",\"ratePlanStartDate\":1460419200000,\"ratePlanEndDate\":null,\"nextBillingCycleStartDate\":null,\"products\":[\"myproduct\"],\"developerCustomAttributes\":[],\"triggerTime\":1461062395966,\"triggerReason\":\"RatePlanQuotaUsage\"}",
"retryCount": 0,
"retryStatuses": [
{
"responseCode": 200,
"responseMessage": "{\"Headers\":\"[{\"name\":\"Accept-Encoding\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":16,\"elements\":[{\"name\":\"gzip\",\"value\":null,\"parameters\":[],\"parameterCount\":0},{\"name\":\"deflate\",\"value\":null,\"parameters\":[],\"parameterCount\":0}],\"value\":\"gzip,deflate\"},{\"name\":\"Content-Type\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":13,\"elements\":[{\"name\":\"application/json\",\"value\":null,\"parameters\":[{\"name\":\"charset\",\"value\":\"UTF-8\"}],\"parameterCount\":1}],\"value\":\"application/json; charset=UTF-8\"},{\"name\":\"Date\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":5,\"elements\":[{\"name\":\"Mon\",\"value\":null,\"parameters\":[],\"parameterCount\":0},{\"name\":\"23 May 2016 21:46:37 GMT\",\"value\":null,\"parameters\":[],\"parameterCount\":0}],\"value\":\"Mon, 23 May 2016 21:46:37 GMT\"},{\"name\":\"Server\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":7,\"elements\":[{\"name\":\"Apigee Router\",\"value\":null,\"parameters\":[],\"parameterCount\":0}],\"value\":\"Apigee Router\"},{\"name\":\"User-Agent\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":11,\"elements\":[{\"name\":\"Apache-HttpClient/4.3.5 (java 1.5)\",\"value\":null,\"parameters\":[],\"parameterCount\":0}],\"value\":\"Apache-HttpClient/4.3.5 (java 1.5)\"},{\"name\":\"X-Forwarded-For\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":16,\"elements\":[{\"name\":\"54.200.58.80\",\"value\":null,\"parameters\":[],\"parameterCount\":0}],\"value\":\"54.200.58.80\"},{\"name\":\"X-Forwarded-Port\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":17,\"elements\":[{\"name\":\"80\",\"value\":null,\"parameters\":[],\"parameterCount\":0}],\"value\":\"80\"},{\"name\":\"X-Forwarded-Proto\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":18,\"elements\":[{\"name\":\"http\",\"value\":null,\"parameters\":[],\"parameterCount\":0}],\"value\":\"http\"},{\"name\":\"Content-Length\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":15,\"elements\":[{\"name\":\"1173\",\"value\":null,\"parameters\":[],\"parameterCount\":0}],\"value\":\"1173\"},{\"name\":\"Connection\",\"buffer\":{\"full\":false,\"empty\":false},\"valuePos\":11,\"elements\":[{\"name\":\"keep-alive\",\"value\":null,\"parameters\":[],\"parameterCount\":0}],\"value\":\"keep-alive\"}]\",\"StatusCode\":\"200\",\"Content : \":\"{\"orgName\":\"myorg\",\"developerEmail\":\"joe@example.com\",\"developerFirstName\":\"Joe\",\"developerLastName\":\"Smith\",\"applicationName\":\"MyApp\",\"packageName\":\"mypackage\",\"ratePlanName\":\"anrp\",\"ratePlanType\":\"STANDARD\",\"developerRatePlanQuotaTarget\":54000,\"quotaPercentUsed\":\"1\",\"ratePlanStartDate\":1460419200000,\"ratePlanEndDate\":null,\"nextBillingCycleStartDate\":null,\"products\":[\"product1\"],\"developerCustomAttributes\":[],
"source": "MailTo: [c9e42fcd-9632-4376-b92d-0fa27f178a3b], Org: [myorg], TransactionId: [0352e568-2724-42d9-a264-1b62586d5948], LimitId: [RatePlan-Limit:amyorg@@@mypackage-a0y9_anrp], Key: [myorg@@@PPXsQbkyO1bBhQOh~myorg@@@mypackage-a0y9_anrp~Transactions~Calls~1]",
"status": "NOTIFICATION_SENT",
"toEmail": "http://123.45.67.89:8000/webhook",
"updatedDate": 1461062402871
}