plan.create
Description
Create a plan Please see Creating Objects for an overview of how the create method works.
NOTE:This method is available when API Packager is turned on for a customer. Please contact Support or your Account Manager if you have any questions about API Packager.
Parameters
plan
An plan object, as described by the object.describe call. If a field in the plan object is ommitted, a default value will be used if possible. If extra fields are passed, they will be ignored.
Response
An plan object, as described by the object.describe call. This is actual plan that was created.
Examples
A Sample JSON-RPC plan.create Request
{ "method":"plan.create", "id":8, "params":[{"name":"Production Plan", "description":"Get developers off this plan after 90 days", "notes":"", "is_public":true, "order_max":4, "order_moderation_threshold":0, "is_moderated":true, "qps_limit_ceiling":2, "qps_limit_key_override_allowed":true, "rate_limit_ceiling":5000, "rate_limit_period":"day", "rate_limit_key_override_allowed":true, "plan_filter":"", "qps_limit_exempt":false, "rate_limit_exempt":false, "package":{"id":19}}] }
The JSON-RPC Response
{ "result":{"id":48, "name":"Production", "description":"Production plan", "notes":"Get developers off this plan after 90 days", "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":true, "order_max":4, "order_moderation_threshold":0, "response_filter_override_allowed":true, "created":"2012-06-27T01:18:03Z", "updated":"2012-06-27T01:18:27Z", "is_public":true, "is_moderated":true, "priority":0, "status":"active", "limits":[{"period":"second", "source":"plan", "ceiling":2},{"period":"day", "source":"plan", "ceiling":5000}], "object_type":"plan"}, "error":null, "id":16 }
Permissions Required
The user who owns the key used to authenticate the plan.create call must be a member of one of the following roles
- Administrator
- API Manager
See authentication.
Errors
In addition to the standard json-rpc errors and authentication errors, application.fetch may also return these errors:
HTTP Status Code | JSON-RPC Code | Error Message | Description |
---|---|---|---|
400 | 1000 | Invalid Object | The object could not be created because the object would be invalid. See Validating Fields for details on the format of this error. |
400 | 1001 | Duplicate Object | The object could not be created because an object already exists with the same identifier. |
400 | 1002 | Field "x" is required. | The object could not be created because a required field was not specified. A field marked false for optional was not specified. The error object data will include the name of the missing field. |
500 | 2001 | Create Failed | The object could not be created. This is the error message of last resort for object creation and usually indicates a systems integration failure, invalid internal data, or a transient issue. These errors are logged by Mashery. |
403 | 4200 | This operation is not allowed for the service specified | The service specified does not allow key creation via the API. |
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