Services
Resource URI
/services/{serviceId}
Items in curly braces represent variables.
Description
Services define the technical integration points between the Mashery Traffic Manager and the back-end systems that a customer is hoping to put under API management. Ultimately, Services are groupings of Endpoint objects, which have the detailed specifics of the back-end systems and the technical specifications of how the Mashery Traffic Manager needs to connect and manage associated traffic.
Resource Schema
Property | Characteristics | |
---|---|---|
id | Type | string |
Sub-type | ||
Create Rule | Ignored | |
Update Rule | Required (if not in context) | |
Fetch Rule | Implicit | |
Description | Object identifier (Service Definition UUID). | |
name | Type | string |
Sub-type | ||
Create Rule | Required | |
Update Rule | Optional | |
Fetch Rule | Implicit | |
Description | Service Definition name. | |
created | Type | string |
Sub-type | datetime | |
Create Rule | Ignored | |
Update Rule | Ignored | |
Fetch Rule | Implicit | |
Description | Date/time the object was created. | |
updated | Type | string |
Sub-type | datetime | |
Create Rule | Ignored | |
Update Rule | Ignored | |
Fetch Rule | Implicit | |
Description | Date/time the object was last updated. | |
endpoints | Type | array |
Sub-type | Endpoint | |
Create Rule | Optional | |
Update Rule | Optional | |
Fetch Rule | Explicit | |
Description | Endpoints that belong to the Service. | |
editorHandle | Type | string |
Sub-type | ||
Create Rule | Ignored | |
Update Rule | Ignored | |
Fetch Rule | Explicit | |
Description | Identifier (handle) of the user that last modified the Service. | |
revisionNumber | Type | integer |
Sub-type | ||
Create Rule | Ignored | |
Update Rule | Ignored | |
Fetch Rule | Explicit | |
Description | Current Service revision number automatically incremented after every modification. | |
robotsPolicy | Type | string |
Sub-type | ||
Create Rule | Ignored | |
Update Rule | Ignored | |
Fetch Rule | Explicit | |
Description | Robots policy | |
crossdomainPolicy | Type | string |
Sub-type | ||
Create Rule | Ignored | |
Update Rule | Ignored | |
Fetch Rule | Explicit | |
Description | Crossdomain policy | |
description | Type | string |
Sub-type | ||
Create Rule | Optional | |
Update Rule | Optional | |
Fetch Rule | Explicit | |
Description | Description of the API. This is used for administration purposes only and is not displayed in the developer portal. | |
errorSets | Type | array |
Sub-type | ErrorSet | |
Create Rule | Optional | |
Update Rule | Optional | |
Fetch Rule | Explicit | |
Description | Array of Error Set objects. | |
qpsLimitOverall | Type | integer |
Sub-type | ||
Create Rule | Optional | |
Update Rule | Optional | |
Fetch Rule | Explicit | |
Description | Overall queries/calls per second that the API will support, regardless of number of developer keys. | |
rfc3986Encode | Type | boolean |
Sub-type | ||
Create Rule | Optional | |
Update Rule | Optional | |
Fetch Rule | Explicit | |
Description | By default, RFC 1738 specification is used by Mashery. You can enable the RFC 3986 specification for more flexible URLs. | |
securityProfile | Type | object |
Sub-type | SecurityProfile | |
Create Rule | Optional | |
Update Rule | Optional | |
Fetch Rule | Explicit | |
Description | Security Profile object, used to manage OAuth 2.0 properties of the API. | |
version | Type | string |
Sub-type | ||
Create Rule | Optional | |
Update Rule | Optional | |
Fetch Rule | Implicit | |
Description | Simple metadata to assist in the tracking of different versions of the API. This is a customer-managed property in that the version is not modified as property changes are made to the API definition. |
fetch all [GET]
Retrieves collection of Service Definitions belonging to the given Area
Parameters
Parameter | Required | Type | Description |
---|---|---|---|
fields | false | string | Comma-separated list of property paths to include in response. Each property path is a dot-separated list of object property names. fields=<property\[.property...\]>\[,...\]\[&fields=...\] |
filter | false | string | Colon-separated name/value pair specifying the name of property whose value must contain the given value (as a substring). Results may also be filtered by nested collections' properties by specifying a dot-separated property path. filter=<property\[.property...\]>:<value>\[&filter=...\] |
sort | false | string | Comma-separated list of properties to sort by. Only root-level properties are supported. Each property name may be optionally followed by :asc or :desc to specify sort direction (defaults to asc). sort=<property\[:(asc\|desc)\]>\[,...\]\[&sort=...\] |
limit | false | int | Number of objects to return in the result. Defaults to 100. |
offset | false | int | 0-based index of first object in the list to return. Defaults to 0 for /service and /packages APIs. For /members, /applications, /packageKeys, and /roles APIs, the offset field functions as a page index, where the first page is indexed as 0. |
Returns
Success
Array of ServiceDefinitions for the Area If fields request parameter is not included, only those fields with "Fetch Rule" equal to "Implicit" will be returned. Otherwise, the fields contained in the URL parameter will be included in the response.
Failure
Array of validation responses
Examples
Request
curl -k 'https://api.mashery.com/v3/rest/services' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json"
Response
[ { "id": "8f1725af-33d3-42cc-969a-e62b7a743750", "revisionNumber": 62, "created": "2014-07-15T00:10:45.000+0000", "updated": "2014-02-11T03:15:05.000+0000", "robotsPolicy": "turpis enim blandit", "description": "sed ante vivamus tortor duis mattis egestas metus aenean fermentum", "name": "accumsan tellus", "crossdomainPolicy": "posuere felis sed", "qpsLimitOverall": 60, "editorHandle": "tempus", "rfc3986Encode": true, "version": 59.46 } ]
Request
curl -k 'https://api.mashery.com/v3/rest/services' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json"
Response
[ { "id": "9ae54ccd-0044-45b0-96b1-08e72474185a", "created": "2013-08-28T20:37:41.000+0000", "updated": "2014-07-16T09:51:46.000+0000", "name": "ipsum praesent blandit", "version": 71.22 } ]
fetch [GET]
Retrieves the identified Service Definition.
Parameters
Parameter | Required | Type | Description |
---|---|---|---|
serviceId | true | string | Service identifier. |
fields | false | string | Comma-separated list of property paths to include in response. Each property path is a dot-separated list of object property names. fields=<property\[.property...\]>\[,...\]\[&fields=...\] |
filter | false | string | Colon-separated name/value pair specifying the name of property whose value must contain the given value (as a substring). Results may also be filtered by nested collections' properties by specifying a dot-separated property path. filter=<property\[.property...\]>:<value>\[&filter=...\] |
sort | false | string | Comma-separated list of properties to sort by. Only root-level properties are supported. Each property name may be optionally followed by :asc or :desc to specify sort direction (defaults to asc). sort=<property\[:(asc\|desc)\]>\[,...\]\[&sort=...\] |
limit | false | int | Number of objects to return in the result. Defaults to 100. |
offset | false | int | 0-based index of first object in the list to return. Defaults to 0 for /service and /packages APIs. For /members, /applications, /packageKeys, and /roles APIs, the offset field functions as a page index, where the first page is indexed as 0. |
Returns
Success
Array of ServiceDefinitions for the Area If fields request parameter is not included, only those fields with "Fetch Rule" equal to "Implicit" will be returned. Otherwise, the fields contained in the URL parameter will be included in the response.
Failure
Array of validation responses
Examples
Request
curl -k 'https://api.mashery.com/v3/rest/services/0fcc39d1c7ee470780e6cbe6' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json"
Response
[ { "id": "3c6f237b-9860-408d-8dcb-5409ace44301", "revisionNumber": 82, "created": "2013-12-26T22:06:26.000+0000", "updated": "2013-08-16T21:42:19.000+0000", "robotsPolicy": "sit", "description": "etiam justo etiam pretium iaculis justo in hac habitasse platea dictumst etiam faucibus cursus urna", "name": "in magna bibendum imperdiet", "crossdomainPolicy": "dolor", "qpsLimitOverall": 93, "editorHandle": "augue a", "rfc3986Encode": false, "version": 8.99 } ]
Request
curl -k 'https://api.mashery.com/v3/rest/services/0fcc39d1c7ee470780e6cbe6' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json"
Response
[ { "id": "35a3158b-72d4-4c03-ab3f-31ac957b1721", "created": "2013-11-21T08:29:23.000+0000", "updated": "2014-04-29T15:57:46.000+0000", "name": "adipiscing lorem vitae mattis", "version": 90.61 } ]
create [POST]
Creates a new Service Definition in the given Area.
Parameters
Parameter | Required | Type | Description |
---|---|---|---|
service | true | object | ServiceDefinition object |
Returns
Success
ServiceDefinition as created If fields request parameter is not included, only those fields with "Fetch Rule" equal to "Implicit" will be returned. Otherwise, the fields contained in the URL parameter will be included in the response.
Failure
Array of validation responses
Examples
Request
curl -k 'https://api.mashery.com/v3/rest/services' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json" --request POST --data '{"id":"11345f41-783e-4f64-804e-20730b51db62","revisionNumber":99,"updated":"2014-01-20T05:15:31.000+0000","created":"2013-10-27T05:08:26.000+0000","description":"vel accumsan tellus nisi eu orci mauris lacinia sapien quis libero nullam sit amet turpis elementum ligula vehicula consequat","robotsPolicy":"erat volutpat in","name":"ipsum aliquam non","qpsLimitOverall":39,"crossdomainPolicy":"nisl aenean lectus","editorHandle":"sed","rfc3986Encode":false,"version":0.66}
Response
[ { "id": "a443967b-575b-46cd-b961-190483fe8ebc", "revisionNumber": 37, "created": "2013-11-06T08:08:35.000+0000", "updated": "2013-11-03T12:55:47.000+0000", "robotsPolicy": "id turpis", "description": "integer ac neque duis bibendum morbi non quam nec dui luctus", "name": "platea dictumst", "crossdomainPolicy": "lectus pellentesque at nulla", "qpsLimitOverall": 78, "editorHandle": "a nibh in", "rfc3986Encode": false, "version": 6.21 } ]
Request
curl -k 'https://api.mashery.com/v3/rest/services' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json" --request POST --data '{"id":"17c5dde7-98f2-48f3-bf1c-83c44a7140da","updated":"2014-04-14T11:37:07.000+0000","created":"2014-02-12T00:53:49.000+0000","name":"nam tristique","version":75.87}
Response
[ { "id": "f214a0a9-fdc0-4914-9cc7-ee741205ccb5", "created": "2013-08-26T15:18:53.000+0000", "updated": "2013-08-02T10:59:48.000+0000", "name": "eros elementum pellentesque", "version": 98.93 } ]
update [PUT]
Updates the identified Service Definition.
Parameters
Parameter | Required | Type | Description |
---|---|---|---|
serviceId | true | string | Service identifier. |
service | true | object | ServiceDefinition object |
Returns
Success
ServiceDefinition as persisted If fields request parameter is not included, only those fields with "Fetch Rule" equal to "Implicit" will be returned. Otherwise, the fields contained in the URL parameter will be included in the response.
Failure
Array of validation responses
Examples
Request
curl -k 'https://api.mashery.com/v3/rest/services/0fcc39d1c7ee470780e6cbe6' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json" --request PUT --data '{"id":"ffc60063-c74a-407e-9927-cdd849aa8383","revisionNumber":81,"updated":"2013-10-07T06:04:39.000+0000","created":"2013-11-13T22:34:18.000+0000","description":"vulputate luctus cum sociis natoque penatibus et magnis dis parturient montes nascetur ridiculus","robotsPolicy":"nulla facilisi","name":"congue","qpsLimitOverall":84,"crossdomainPolicy":"tincidunt eget tempus vel","editorHandle":"ac","rfc3986Encode":false,"version":65.23}
Response
[ { "id": "70b8ba5e-d8b9-416c-adcb-75b1261f3671", "revisionNumber": 6, "created": "2013-10-17T17:39:00.000+0000", "updated": "2014-01-08T18:26:04.000+0000", "robotsPolicy": "lacus morbi sem", "description": "a suscipit nulla elit ac nulla sed vel enim sit amet", "name": "nam ultrices libero non", "crossdomainPolicy": "luctus nec molestie sed", "qpsLimitOverall": 86, "editorHandle": "in faucibus", "rfc3986Encode": false, "version": 14.66 } ]
Request
curl -k 'https://api.mashery.com/v3/rest/services/0fcc39d1c7ee470780e6cbe6' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json" --request PUT --data '{"id":"342c144d-8d2e-44dc-8370-3e1248c97b9c","updated":"2014-02-27T00:45:03.000+0000","created":"2014-01-05T13:45:08.000+0000","name":"suspendisse","version":42.61}
Response
[ { "id": "ec1f284d-1d4a-4121-9347-8e2e38c04ee6", "created": "2013-09-24T14:54:44.000+0000", "updated": "2013-11-09T04:09:08.000+0000", "name": "sagittis dui vel nisl", "version": 65.15 } ]
delete [DELETE]
Deletes the identified Service Definition.
Parameters
Parameter | Required | Type | Description |
---|---|---|---|
serviceId | true | string | Service identifier. |
Returns
Success
Empty response
Failure
Array of validation responses
Examples
Request
curl -k 'https://api.mashery.com/v3/rest/services/0fcc39d1c7ee470780e6cbe6' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json" --request DELETE
Response
[ "" ]
Request
curl -k 'https://api.mashery.com/v3/rest/services/0fcc39d1c7ee470780e6cbe6' -H "Authorization: Bearer <insert your token here>" -H "Content-Type:application/json" --request DELETE
Response
[ "" ]
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