Package Keys
After Creating a Package Key
This event trigger is fired when a applicationobject is created in the Mashery platform. Package Keys are created:
During the registration process (via the portal)
Via the Administrative Dashboard (Package Keys tab)
Via the Mashery API.
This event trigger event is executed after the actual package key object is saved in the Mashery database.
Event Trigger Call Structure (Mashery to Customer-hosted Endpoint)
| HTTP Method | PUT |
| Path | /v1/package_key/<package key id> |
| Parameters | event=post-create&txn=<transaction id will be provided at event trigger execution time> |
| Body | JSON, or application/x-www-form-urlencoded, representation of package key object. This is determined by the setting found in the Integration tab of Portal Settings in the Mashery Console. |
Example Call:
PUT /v1/package_key/14398445?event=post-create&txn=46f6497a6b284411aa715427608e6df2 HTTP/1.1
Host: api.customer.com
Accept: application/json
Package Key-Agent: Mashery Event Trigger 1.0
Content-Type: application/json
{
"id": 1000,
"apikey": "bs8ssd5wjeekc797t6ar47v2",
"secret": "",
"rate_limit_ceiling": 0,
"rate_limit_exempt": false,
"qps_limit_ceiling": 0,
"qps_limit_exempt": false,
"status": "active",
"created": "1970-01-01T00:00:00Z",
"updated": "1970-01-01T00:00:00Z",
"limits": [
{
"period": "second",
"source": "plan",
"ceiling": 2
},
{
"period": "day",
"source": "plan",
"ceiling": 5000
}
],
"object_type": "package_key",
"member": {
"created": "2012-03-07T05:00:09Z",
"updated": "2012-03-08T20:32:18Z",
"username": "partner1_dev1",
"email": "jpollock@mashery.com",
"display_name": "partner1_dev1",
"uri": "",
"blog": "",
"im": "",
"imsvc": "",
"phone": "",
"company": "",
"address1": "",
"address2": "",
"locality": "",
"region": "",
"postal_code": "",
"country_code": "",
"first_name": "",
"last_name": "",
"registration_ipaddr": "",
"area_status": "active",
"external_id": "",
"object_type": "member"
},
"application": {
"id": 80,
"created": "2013-02-19T20:55:20Z",
"updated": "2013-02-19T20:55:20Z",
"username": "partner1_dev1",
"name": "Package-based App",
"description": "",
"type": "",
"commercial": false,
"ads": false,
"ads_system": "",
"usage_model": "",
"tags": "",
"notes": "",
"how_did_you_hear": "",
"preferred_protocol": "",
"preferred_output": "",
"external_id": "",
"uri": "",
"status": "draft",
"group_id": 0,
"developer_group_handle": "",
"is_packaged": true,
"oauth_redirect_uri": "",
"object_type": "application"
},
"package": {
"id": 9,
"name": "Music API",
"description": "",
"notify_developer_period": "day",
"notify_developer_near_quota": false,
"notify_developer_over_quota": false,
"notify_developer_over_throttle": false,
"notify_admin_period": "day",
"notify_admin_near_quota": false,
"notify_admin_over_quota": false,
"notify_admin_over_throttle": false,
"notify_admin_emails": "",
"near_quota_threshold": 50,
"created": "2013-01-31T22:31:25Z",
"updated": "2013-02-12T16:49:19Z",
"key_adapter": "",
"key_length": 10,
"shared_secret_length": 0,
"status": "public",
"is_using_shared_secret": false,
"object_type": "package",
},
"plan": {
"id": 16,
"name": "Basic",
"description": "",
"notes": "",
"rate_limit_ceiling": 5000,
"rate_limit_exempt": false,
"rate_limit_order_override_allowed": true,
"rate_limit_key_override_allowed": true,
"rate_limit_period": "day",
"qps_limit_ceiling": 2,
"qps_limit_exempt": false,
"qps_limit_order_override_allowed": true,
"qps_limit_key_override_allowed": false,
"order_max": 4,
"order_moderation_threshold": 0,
"response_filter_override_allowed": true,
"created": "2013-01-31T22:31:26Z",
"updated": "2013-01-31T22:31:26Z",
"is_public": true,
"is_moderated": true,
"status": "active",
"limits": [
{
"period": "second",
"source": "plan",
"ceiling": 2
},
{
"period": "day",
"source": "plan",
"ceiling": 5000
}
],
"object_type": "plan"
}
}
Expected Response Sent from Customer-hosted Endpoint
| Response Code | HTTP status code - any non-200 response will be considered failure; future capabilities will allow for re-try of this operation if error received. Response does not impact any database operations - the data is already saved in the database and that operation cannot be rolled back due to a non-200 response - nor does it result in end-user errors. |
| Content Type | application/json |
| Content | Member JSON string (valid JSON) |
After Updating a Package Key
This event trigger is fired when an updated, or modified, package key object is saved in the Mashery platform. This event trigger event is executed after the actual package key object is saved in the Mashery database.
Event Trigger Call Structure (Mashery to Customer-hosted Endpoint)
| HTTP Method | PUT |
| Path | /v1/package_key/<package key id> |
| Parameters | event=post-update&txn=<transaction id will be provided at event trigger execution time> |
| Body | JSON, or application/x-www-form-urlencoded, representation of package key object. This is determined by the setting found in the Integration tab of Portal Settings in the Mashery Console. |
Example Call:
PUT /v1/package_key/14398445?event=post-update&txn=8807190f73701b1bdf5a2272f445366f HTTP/1.1
Host: api.customer.com
Accept: application/json
Package Key-Agent: Mashery Event Trigger 1.0
Content-Type: application/json
{
"id": 1000,
"apikey": "bs8ssd5wjeekc797t6ar47v2",
"secret": "",
"rate_limit_ceiling": 0,
"rate_limit_exempt": false,
"qps_limit_ceiling": 0,
"qps_limit_exempt": false,
"status": "active",
"created": "1970-01-01T00:00:00Z",
"updated": "1970-01-01T00:00:00Z",
"limits": [
{
"period": "second",
"source": "plan",
"ceiling": 2
},
{
"period": "day",
"source": "plan",
"ceiling": 5000
}
],
"object_type": "package_key",
"member": {
"created": "2012-03-07T05:00:09Z",
"updated": "2012-03-08T20:32:18Z",
"username": "partner1_dev1",
"email": "jpollock@mashery.com",
"display_name": "partner1_dev1",
"uri": "",
"blog": "",
"im": "",
"imsvc": "",
"phone": "",
"company": "",
"address1": "",
"address2": "",
"locality": "",
"region": "",
"postal_code": "",
"country_code": "",
"first_name": "",
"last_name": "",
"registration_ipaddr": "",
"area_status": "active",
"external_id": "",
"object_type": "member"
},
"application": {
"id": 80,
"created": "2013-02-19T20:55:20Z",
"updated": "2013-02-19T20:55:20Z",
"username": "partner1_dev1",
"name": "Package-based App",
"description": "",
"type": "",
"commercial": false,
"ads": false,
"ads_system": "",
"usage_model": "",
"tags": "",
"notes": "",
"how_did_you_hear": "",
"preferred_protocol": "",
"preferred_output": "",
"external_id": "",
"uri": "",
"status": "draft",
"group_id": 0,
"developer_group_handle": "",
"is_packaged": true,
"oauth_redirect_uri": "",
"object_type": "application"
},
"package": {
"id": 9,
"name": "Music API",
"description": "",
"notify_developer_period": "day",
"notify_developer_near_quota": false,
"notify_developer_over_quota": false,
"notify_developer_over_throttle": false,
"notify_admin_period": "day",
"notify_admin_near_quota": false,
"notify_admin_over_quota": false,
"notify_admin_over_throttle": false,
"notify_admin_emails": "",
"near_quota_threshold": 50,
"created": "2013-01-31T22:31:25Z",
"updated": "2013-02-12T16:49:19Z",
"key_adapter": "",
"key_length": 10,
"shared_secret_length": 0,
"status": "public",
"is_using_shared_secret": false,
"object_type": "package",
},
"plan": {
"id": 16,
"name": "Basic",
"description": "",
"notes": "",
"rate_limit_ceiling": 5000,
"rate_limit_exempt": false,
"rate_limit_order_override_allowed": true,
"rate_limit_key_override_allowed": true,
"rate_limit_period": "day",
"qps_limit_ceiling": 2,
"qps_limit_exempt": false,
"qps_limit_order_override_allowed": true,
"qps_limit_key_override_allowed": false,
"order_max": 4,
"order_moderation_threshold": 0,
"response_filter_override_allowed": true,
"created": "2013-01-31T22:31:26Z",
"updated": "2013-01-31T22:31:26Z",
"is_public": true,
"is_moderated": true,
"status": "active",
"limits": [
{
"period": "second",
"source": "plan",
"ceiling": 2
},
{
"period": "day",
"source": "plan",
"ceiling": 5000
}
],
"object_type": "plan"
}
}
Expected Response Sent from Customer-hosted Endpoint
| Response Code | HTTP status code - any non-200 response will be considered failure; future capabilities will allow for re-try of this operation if error received. Response does not impact any database operations - the data is already saved in the database and that operation cannot be rolled back due to a non-200 response - nor does it result in end-user errors. |
| Content Type | application/json |
| Content | Member JSON string (valid JSON) |
After Deleting a Package Key
This event trigger is fired when a package key object is created in the Mashery platform. Package Keys are created:
During the registration process (via the portal)
Via the Administrative Dashboard (Package Keys tab)
Via the Mashery API.
This event trigger event is executed after the actual package key object is deleted in the Mashery database.
Event Trigger Call Structure (Mashery to Customer-hosted Endpoint)
| HTTP Method | DELETE |
| Path | /v1/package_key/<package key id> |
| Parameters | event=post-delete&txn=<transaction id will be provided at event trigger execution time> |
Example Call:
DELETE /v1/package_key/14398445?event=post-delete&txn=07e108fd854ae11e66b5abdf7d83585f HTTP/1.1 Host: api.customer.com
Expected Response Sent from Customer-hosted Endpoint
| Response Code | HTTP status code - any non-200 response will be considered failure; future capabilities will allow for re-try of this operation if error received. Response does not impact any database operations - the data is already deleted from the database and that operation cannot be rolled back due to a non-200 response - nor does it result in end-user errors. |
Docs Navigation
- API Documentation Portal
- IO Docs Definition
- Mashery API Documentation
- Mashery 3.0 API Guide
- Mashery 2.0 API Guide
- OAuth Supporting Methods
- Examples
- JSON RPC
- Authentication
- API Objects
- Fetching Objects
- Query Language
- Creating Objects
- Updating Objects
- Validating Fields
- Deleting Objects
- Applications
- General Object Methods
- Members
- Packages
- Plans
- Package Keys
- Keys
- Developer Classes
- Services
- Roles
- Mashery 2.0 Reporting API Guide
- Event Trigger API
- Differences between Roles and Portal Access Groups
- Managing a Portal Access Group Using Mashery V2 or V3 API
- Mashery Reporting Event Post API Guide
- Tips and Tricks
- Your Portal
- API Traffic Manager
- I/O Docs WSDL requirements