#%RAML 0.8 title: Rule API baseUri: https://apistg.np.covapp.io/rule/v2 protocols: - HTTPS schemas: - resourceReference: | { "id" : "http://api.covisint.com/schema/resourceReference", "$schema" : "http://json-schema.org/draft-04/schema", "description" : "Schema representing links", "type" : "object", "properties" : { "id" : { "type" : "string", "description" : "The unique identifier for the resource.", "required": true }, "type" : { "type" : "string", "description" : "The type of the resource." }, "realm" : { "type" : "string", "description" : "The realm of the resource." } } } - namedResourceReference: "{\n \"id\" : \"http://api.covisint.com/schema/namedScopedResource\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \ \"description\" : \"Expands on the basic resource reference and adds internationalized name and description.\",\n \"extends\" : {\n \"$ref\" : \"http://api.covisint.com/schema/resourceReference#\"\n \ },\n \"properties\" : {\n \"name\" : { \n \"description\": \"Internationalized resource name.\",\n \"$ref\" : \"http://api.covisint.com/idm/schema/internationalString#\"\n \ },\n \"description\" : { \n \"description\": \"Internationalized resource description.\",\n \"$ref\" : \"http://api.covisint.com/idm/schema/internationalString#\"\n \ }\n }\n}\n" - resource: | { "id" : "http://api.covisint.com/schema/resource", "$schema" : "http://json-schema.org/draft-04/schema", "description" : "Core schema", "definitions" : { "resource" : { "id" : "resource", "type" : "object", "description" : "A basic resource.", "properties" : { "id" : { "type" : "string", "maxLength" : 64, "description" : "The unique identifier for this resource.", "required": true }, "version": { "type" : "number", "minimum" : 0, "maximum" : 9223372036854775807, "description" : "The current version for this resource. Exists once the resource has been saved. This is mandatory for PUT requests, but should not be supplied for POST requests.", "required": false }, "creator" : { "type" : "string", "maxLength" : 64, "description" : "The creator of this resource. This read-only field is ignored by the server, and is overlayed with the value supplied in the x-requestor header.", "required": true, "readonly": true }, "creatorAppId" : { "type" : "string", "maxLength" : 64, "description" : "The id of the application used to create this resource. This read-only field is ignored by the server, and is overlayed with the value supplied in the x-requestor-app header.", "required": true, "readonly": true }, "creation" : { "type" : "number", "minimum" : 0, "maximum" : 9223372036854775807, "description" : "This read only property is ignored by the server and the system will overlay with the time, in milliseconds since the epoch, when this resource was created.", "required": true, "readonly": true } } } } } - resourceV2: "{\n \"id\" : \"http://api.covisint.com/schema/resourceV2\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"Core schema\",\n \ \"definitions\" : {\n \"resource\" : {\n \"id\" : \"resourceV2\",\n \ \"type\" : \"object\",\n \"description\" : \"A basic resource (version V2).\",\n \"properties\" : {\n \"id\" : {\n \"type\" : \"string\",\n \ \"maxLength\" : 64,\n \"description\" : \"The unique identifier for this resource.\",\n \"required\": true\n },\n \"version\": {\n \"type\" : \"string\",\n \"description\" : \"The current version for this resource. Exists once the resource has been saved. This is mandatory for PUT requests, but should not be supplied for POST requests.\",\n \"required\": false\n },\n \"creator\" : {\n \"type\" : \"string\",\n \ \"maxLength\" : 64,\n \"description\" : \"The creator of this resource. This read-only field is ignored by the server, and is overlayed with the value supplied in the x-requestor header.\",\n \"required\": true,\n \ \"readonly\": true\n },\n \"creatorAppId\" : {\n \"type\" : \"string\",\n \"maxLength\" : 64,\n \"description\" : \"The id of the application used to create this resource. This read-only field is ignored by the server, and is overlayed with the value supplied in the x-requestor-app header.\",\n \"required\": true,\n \"readonly\": true\n },\n \ \"creation\" : {\n \"type\" : \"number\",\n \"minimum\" : 0,\n \"maximum\" : 9223372036854775807,\n \"description\" : \"This read only property is ignored by the server and the system will overlay with the time, in milliseconds since the epoch, when this resource was created.\",\n \ \"required\": true,\n \"readonly\": true\n }\n }\n \ }\n } \n}\n" - realmScopedResource: "{\n \"id\" : \"http://api.covisint.com/schema/realmScopedResource\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \ \"description\" : \"Expands on the base resource and adds a realm attribute.\",\n \ \"extends\" : {\n \"$ref\" : \"http://api.covisint.com/schema/resource#\"\n \ },\n \"properties\" : {\n \"realm\" : {\n \"type\" : \"string\",\n \ \"maxLength\" : 25,\n \"pattern\" : \"^[A-Za-z0-9]{2,25}$\",\n \"description\" : \"The realm in which this resource is being created. This read-only field is ignored by the server, and is overlayed with the value supplied in the x-realm header.\",\n \"required\": true,\n \"readonly\": true \n \ }\n }\n}\n" - realmScopedResourceV2: "{\n \"id\" : \"http://api.covisint.com/schema/realmScopedResourceV2\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \ \"description\" : \"A realm scoped resource (version V2). Expands on the base resource (version V2) and adds a realm attribute.\",\n \"extends\" : {\n \"$ref\" : \"http://api.covisint.com/schema/resourceV2#\"\n },\n \"properties\" : {\n \ \"realm\" : {\n \"type\" : \"string\",\n \"maxLength\" : 25,\n \"pattern\" : \"^[A-Za-z0-9]{2,25}$\",\n \"description\" : \"The realm in which this resource is being created. This read-only field is ignored by the server, and is overlayed with the value supplied in the x-realm header.\",\n \"required\": true,\n \"readonly\": true \n }\n }\n} \n" - errorResponseSchema: "{\n \"id\" : \"http://api.covisint.com/schema/errorResponseSchema\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \ \"description\" : \"Representation of an HTTP 4xx/5xx error response.\",\n \"properties\" : {\n \"status\" : { \n \"type\" : \"number\",\n \"minimum\" : 400,\n \ \"maximum\" : 599,\n \"description\" : \"The HTTP status code.\",\n \ \"required\": true\n },\n \"apiMessage\" : { \n \"type\" : \"string\",\n \ \"description\" : \"A helpful, human-readable description of the error, useful for basic diagnostics.\" \n },\n \"apiStatusCode\" : {\n \"type\" : \"string\",\n \"description\" : \"The API-specific status code.\"\n }\n \ }\n}\n" - serviceCode: "{\n \"id\" : \"http://api.covisint.com/schema/serviceCodes\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\": \"object\",\n \"description\": \"The site/service/location codes granted along with a service.\",\n \"properties\": {\n \"code\": { \"type\": \"string\", \"required\": true, \"maxLength\": 200, \"description\": \"The code value.\" },\n \"codeKind\": { \"type\": \"string\", \"required\": true, \"maxLength\": 36, \"description\": \"The associated business unit.\" }\n }\n} \n" - serviceCodes: | { "type" : "array", "description" : "The site/service/location codes granted along with the service, if any.", "items" : { "$ref" : "http://api.covisint.com/schema/serviceCode#"}, "required": false } - address: | { "id" : "http://api.covisint.com/idm/schema/address", "$schema" : "http://json-schema.org/draft-04/schema", "type" : "object", "description" : "A container for the subject's address elements.", "properties" : { "streets" : { "type" : "array", "description" : "An array of address streets (i.e. address line 1, 2, 3).", "minItems" : 0, "items" : { "type" : "string", "maxLength" : 255 } }, "city" : { "type" : "string", "maxLength" : 60, "description" : "The city name." }, "state" : { "type" : "string", "maxLength" : 60, "description" : "The state/province name or code." }, "postal" : { "type" : "string", "maxLength" : 10, "description" : "The postal or zip code." }, "country" : { "type" : "string", "minLength" : 2, "maxLength" : 3, "description" : "The ISO country code. http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2"} } } - phone: "{\n \"id\" : \"http://api.covisint.com/idm/schema/phone\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \"description\" : \"A container for phone number details.\",\n \"properties\" : {\n \"number\" : { \"type\" : \"string\",\"maxLength\" : 100, \"description\" : \"The phone number.\" },\n \"type\" : { \"enum\" : [ \"main\", \"mobile\", \"fax\" ], \"description\" : \"The phone number type.\" }\n },\n \"required\" : [ \"type\" ]\n} \n" - internationalString: | { "id": "http://api.covisint.com/idm/schema/internationalString", "$schema": "http://json-schema.org/draft-04/schema", "type": "array", "description" : "An internationalized string value, supporting one or more language translations.", "minItems": 1, "items": { "type": "object", "properties": { "lang": { "type": "string", "maxLength": 10, "description": "The language or locale in which the text is written." }, "text": { "type": "string", "maxLength": 2000, "description": "The internationalized text value." } } } } - tags: | { "id": "http://api.covisint.com/idm/schema/tag", "$schema": "http://json-schema.org/draft-04/schema", "type": "array", "description" : "The tags associated with a resource. This array is read-only, and may be modified on the resource endpoint with the appropriate tagging APIs.", "minItems": 1, "items": { "type": "object", "properties": { "tagName": { "type": "string", "description": "The tag associated with a resource." } } } } - baseDefinitionResource: "{\n \"id\" : \"http://api.covisint.com/schema/baseDefinitionResource\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \ \"description\" : \"A base rule definition(version V1). Expands on the base resource (version V2) and adds a realm attribute.\",\n \"extends\": {\n \"$ref\" : \"http://api.covisint.com/schema/realmScopedResourceV2#\"\n },\n \"properties\": {\n \"name\": {\n \"description\": \"The application name (internationalized).\",\n \ \"required\": true,\n \"$ref\": \"http://api.covisint.com/schema/internationalString#\"\n \ },\n \"description\": {\n \"required\": false,\n \"description\": \"The application description (internationalized).\",\n \"$ref\" : \"http://api.covisint.com/idm/schema/internationalString#\"\n \ }, \n \"properties\":{\n \"type\":\"array\",\n \"description\":\"Properties used by the implementation.\",\n \"required\":false,\n \"minItems\":0,\n \ \"items\":[ \n { \n \"anyOf\": [\n {\n \ \"type\": \"string\",\n \"description\": \"The name of the property.\",\n \"required\": true\n },\n \ {\n \"type\": \"string\",\n \"description\": \"The value of the property.\",\n \"required\": true\n }\n \ ]\n }\n ]\n }\n }\n}\n" - baseActionDefinitionResource: | { "id" : "http://api.covisint.com/schema/baseActionDefinitionResource", "$schema" : "http://json-schema.org/draft-04/schema", "type" : "object", "description" : "A base action action definition. Expands on the base definition resource ", "extends": { "$ref" : "http://api.covisint.com/schema/baseDefinitionResource#" }, "properties": { "type": { "description": "Type of action definition.", "enum": [ "SEND_APPLICATION_NOTIFICATION", "SEND_COMMAND", "SEND_NOTIFICATION" ], "required": true } } } - baseTriggerDefinitionResource: | { "id" : "http://api.covisint.com/schema/baseTriggerDefinitionResource", "$schema" : "http://json-schema.org/draft-04/schema", "type" : "object", "description" : "A base action trigger definition. Expands on the base definition resource ", "extends": { "$ref" : "http://api.covisint.com/schema/baseDefinitionResource#" }, "properties": { "type": { "description": "Type of trigger definition.", "enum": [ "DEVICE_SEND_EVENT", "DEVICE_LIFECYCLE_STATE_CHANGE", "DEVICE_OPERATIONAL_STATE_CHANGE" ], "required": true } } } - dataType: "{\n \"id\" : \"http://api.covisint.com/schema/dataType\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"Data type enum.\",\n \"enum\":[ \n \"string\",\n \"integer\",\n \"bool\",\n \ \"decimal\"\n ]\n}\n" - attribute: "{\n \"id\" : \"http://api.covisint.com/schema/attribute\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \"description\" : \"An attribute.\",\n \"properties\" : {\n \"oneOf\" : [\n {\n \"attributeTypeId\" : {\n \"type\" : \"string\",\n \"description\" : \"The attribute type id.\",\n \"required\" : true\n }\n },\n { \n \"attributeType\" : {\n \"description\" : \"The full attribute type definition.\",\n \"$ref\" : \"http://api.covisint.com/schema/attributeType#\" \n }\n }\n ],\n \ \"value\" : {\n \"type\" : \"any\",\n \"description\" : \"The attribute value.\",\n \"required\" : false\n }\n }\n}\n" - attributes: "{\n \"id\" : \"http://api.covisint.com/schema/attributes\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"array\",\n \"description\" : \"Collection of attributes.\",\n \"items\" : { \n \"$ref\" : \"http://api.covisint.com/schema/attribute#\"\n \ }\n}\n" - expression: "{\n \"id\" : \"http://api.covisint.com/schema/expression#\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"The DSL for defining conditional expressions.\",\n \"oneOf\" : [\n {\n \"type\" : \"object\",\n \"properties\" : {\n \"any\" : {\n \"type\" : \"array\",\n \"description\" : \"An aggregate expression representing an 'any' condition.\",\n \"items\" : {\n \"$ref\" : \"http://api.covisint.com/schema/expression#\"\n }\n }\n \ }\n },\n {\n \"type\" : \"object\",\n \"properties\" : {\n \"all\" : {\n \"type\" : \"array\",\n \"description\" : \"An aggregate expression representing an 'all' condition.\",\n \"items\" : {\n \"$ref\" : \"http://api.covisint.com/schema/expression#\"\n \ }\n }\n }\n },\n {\n \"type\" : \"object\",\n \"description\" : \"A simple leaf-node expression. The format of this expression is: '(f:, v:())'. The supported expressions are: equal, notEqual, startsWith, endsWith, matches, greaterThan, greaterThanOrEqual, lessThan, lessThanOrEqual. The field name can be a simple field name i.e. 'id' or hierarchical field name using dot-notation like 'resource.id' / 'resource.tag[0]' . The value corresponding to the field name provided should always be a simple data type and cannot be an array or an object.\",\n \"properties\" : {\n \"expr\" : {\n \"type\" : \"string\",\n \"required\" : \"true\"\n }\n }\n }\n ]\n}\n \n" - rulePolicies: "{ \n \"id\" : \"http://api.covisint.com/schema/rulePolicies\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"Collection of rule policies\",\n \"type\" : \"array\",\n \"items\" : { \ \n \"$ref\" : \"http://api.covisint.com/schema/rulePolicy#\"\n }\n}\n \ \n" - rulePolicy: "{ \n \"id\" : \"http://api.covisint.com/schema/rulePolicy\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \"extends\" : { \n \"$ref\" : \"http://api.covisint.com/schema/realmScopedResourceV2#\"\n \ },\n \"properties\" : { \n \"name\" : { \n \"type\" : \"string\",\n \ \"minLength\" : 1,\n \"maxLength\" : 100,\n \"description\" : \"Name of the rule policy.\",\n \"required\" : true\n },\n \"description\" : { \n \"description\" : \"Description of the rule policy.\",\n \"required\" : false,\n \"$ref\" : \"http://api.covisint.com/schema/internationalString#\"\n \ },\n \"state\" : { \n \"description\" : \"The state of the rule policy\",\n \"type\" : \"string\",\n \"default\" : \"ACTIVE\",\n \ \"readOnly\" : true\n },\n \"attributes\" : { \n \"description\" : \"The list of rule policy attributes.\",\n \"$ref\" : \"http://api.covisint.com/schema/attributes#\",\n \ \"required\" : false\n },\n \"classifiers\" : { \n \"description\" : \"The list of classifiers associated with the rule policy.\",\n \"type\" : \"array\",\n \"minItems\" : 1,\n \"required\" : true,\n \"items\" : {\n \"type\" : \"string\",\n \"description\" : \"The classifier\"\n \ }\n },\n \"qualifierExpression\" : { \n \"description\" : \"The qualifier expression of the rule policy.\",\n \"$ref\" : \"http://api.covisint.com/schema/expression#\",\n \ \"required\" : true\n },\n \"script\" : { \n \"description\" : \"The rule policy script.\",\n \"required\" : true,\n \"$ref\" : \"http://api.covisint.com/schema/rulePolicy.script#\"\n },\n \"tags\" : { \n \"description\" : \"The list of tags associated with the rule policy.\",\n \"$ref\" : \"http://api.covisint.com/schema/tags#\",\n \"readOnly\" : true\n }\n }\n}\n" - rulePolicy.script: "{ \n \"id\" : \"http://api.covisint.com/schema/rulePolicy.script\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"The rule policy script\",\n \"type\" : \"object\",\n \"properties\" : { \n \"lang\" : { \n \"description\" : \"The language of the rule policy script. Ex: JS\",\n \"type\" : \"string\",\n \"minLength\" : 1,\n \"maxLength\" : 10,\n \"required\" : true\n },\n \"value\" : { \n \"description\" : \"The base-64 encoded rule policy script. This value's byte size should not exceed the maximum size specified by the application.\",\n \ \"type\" : \"string\",\n \"required\" : true\n },\n \"timeout\" : { \n \"description\" : \"The timeout duration in seconds, for the rule policy script execution in the rules engine.\",\n \"type\" : \"number\",\n \ \"minimum\" : 1,\n \"maximum\" : 600,\n \"required\" : false\n }\n }\n}\n" - rulePolicy.searchRequest: "{ \n \"id\" : \"http://api.covisint.com/schema/rulePolicy.searchRequest\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"The rule policy search request for finding qualifying rule policies.\",\n \ \"type\" : \"object\",\n \"properties\" : { \n \"classifier\" : { \n \ \"description\" : \"The classifier associated with the rule policy\",\n \ \"type\" : \"string\",\n \"required\" : true\n },\n \"evaluationData\" : { \n \"description\" : \"The JSON object containing the input data for which qualifying rule policies have to be found\",\n \"type\" : \"object\",\n \ \"required\" : true\n }\n }\n}\n" - actionSpecs: "{ \n \"id\" : \"http://api.covisint.com/schema/actionSpecs\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"Collection of action specs\",\n \"type\" : \"array\",\n \"items\" : { \ \n \"$ref\" : \"http://api.covisint.com/schema/actionSpec#\"\n }\n}\n \ \n" - actionSpec: "{ \n \"id\" : \"http://api.covisint.com/schema/actionSpec\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \"extends\" : { \n \"$ref\" : \"http://api.covisint.com/schema/resourceV2\"\n },\n \ \"properties\" : { \n \"actionCode\" : { \n \"description\" : \"The action code of the action spec.\",\n \"type\" : \"string\",\n \ \"pattern\" : \"^[a-zA-Z][a-zA-Z\\\\d-_]*$\",\n \"required\" : true\n },\n \"name\" : { \n \"description\" : \"Name of the action spec.\",\n \"required\" : true,\n \"$ref\" : \"http://api.covisint.com/schema/internationalString#\",\n \ \"maxItems\" : 100\n },\n \"description\" : { \n \"description\" : \"Description of the action spec.\",\n \"required\" : false,\n \"$ref\" : \"http://api.covisint.com/schema/internationalString#\"\n },\n \"active\" : { \n \"type\" : \"boolean\",\n \"description\" : \"Whether or not this action spec is active.\",\n \"default\" : true\n },\n \ \"allowedRealms\" : { \n \"description\" : \"The list of realms allowed for this action spec.\",\n \"type\" : \"array\",\n \"minItems\" : 0,\n \"required\" : false,\n \"items\" : {\n \"type\" : \"string\",\n \"description\" : \"The allowed realm\"\n }\n \ },\n \"broker\" : { \n \"description\" : \"The broker connection details describing how to connect and send the action message to the processing destination.\",\n \"$ref\" : \"http://api.covisint.com/schema/actionSpec.broker#\",\n \ \"required\" : true\n },\n \"parameters\" : { \n \"description\" : \"The set of parameters declared and used by the action.\",\n \"required\" : false,\n \"$ref\" : \"http://api.covisint.com/schema/actionSpec.parameters#\"\n \ }\n }\n}\n" - actionSpec.broker: "{ \n \"id\" : \"http://api.covisint.com/schema/actionSpec.broker\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"The broker connection details describing how to connect and send the action message to the processing destination.\",\n \"type\" : \"object\",\n \"properties\" : { \n \"topicName\" : { \n \"description\" : \"The broker topic name.\",\n \"type\" : \"string\",\n \"pattern\" : \"^[a-zA-Z][a-zA-Z\\\\d-_\\\\.]*$\",\n \ \"required\" : true\n },\n \"overridingBrokerNodes\" : { \n \ \"description\" : \"The list of broker nodes which override the default nodes set in the application.\",\n \"type\" : \"array\",\n \"minItems\" : 0,\n \"required\" : false,\n \"items\" : {\n \"type\" : \"string\",\n \"description\" : \"The broker node\",\n \"pattern\" : \"[^\\\\:]+:[0-9]{1,5}\"\n }\n }\n }\n} \n" - actionSpec.parameters: "{ \n \"id\" : \"http://api.covisint.com/schema/actionSpec.parameters\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"Collection of action spec parameters\",\n \"type\" : \"array\",\n \"items\" : { \n \"$ref\" : \"http://api.covisint.com/schema/actionSpec.parameter#\"\n \ }\n}\n" - actionSpec.parameter: "{ \n \"id\" : \"http://api.covisint.com/schema/actionSpec.parameter\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"The parameter declared and used by the action.\",\n \"type\" : \"object\",\n \ \"properties\" : { \n \"name\" : { \n \"description\" : \"The parameter name.\",\n \"type\" : \"string\",\n \"minLength\" : 1,\n \"maxLength\" : 30,\n \"pattern\" : \"^[a-zA-Z][a-zA-Z\\\\d_]*$\",\n \ \"required\" : true\n },\n \"description\" : { \n \"description\" : \"Description of the parameter.\",\n \"required\" : false,\n \"$ref\" : \"http://api.covisint.com/schema/internationalString#\"\n },\n \"type\" : { \n \"description\" : \"The data type of the parameter.\",\n \"$ref\" : \"http://api.covisint.com/schema/dataType#\",\n \"required\" : false,\n \ \"default\" : \"string\"\n },\n \"defaultValue\" : { \n \"description\" : \"The default value for the parameter. May not be used in conjunction with the 'required=true' property. If provided, this value should be of the data type defined by the 'type' property. If the 'type=string', then the length of this property should be >= 0 and <= 1000\",\n \"type\" : \"any\",\n \"required\" : false\n },\n \"required\" : { \n \"type\" : \"boolean\",\n \ \"description\" : \"Whether or not this parameter is required.\",\n \"default\" : false\n }\n }\n} \n \n" traits: - secured: usage: Apply this to any method that needs to be secured. Requests with this trait require authentication using a bearer token. headers: Authorization: description: Access token that is obtained from the /token endpoint of the OAuth API. pattern: "^Bearer .*$" example: Bearer ZCtYUGpYRXpET0JvVE1rZzlWV3I1Yk required: true responses: 401: &6 description: Unauthenticated request. This is returned if the access token is missing, invalid, or expired. Access tokens are obtained through the /token endpoint of the Oauth API. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 403: &7 description: Unauthorized request. The requestor is not authorized to perform the requested operation. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema - unsecured: usage: Apply this to any method that needs to be unsecured. Requests with this trait do not require any authentication. headers: SolutionInstanceId: description: The solution instance id. example: abcd123e-0109-441c-8a20-123a456b789c required: true responses: 400: description: Bad request. Please provide the valid solution instance id. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema - getResponse: responses: 404: &3 description: | The URI requested is invalid or the resource requested does not exist. ___ Substatus codes and error messages are mentioned below: + (If a resource id is a URI parameter) framework:resource:missing - A resource with the following ID was not found: {resourceId} + No message for an invalid URI body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 406: &1 description: | Unable to produce content of specified 'Accept' media type ___ Substatus codes and error messages are mentioned below: + framework:request:unsupported:mediatype - The server is unable to produce content of type {acceptMediaType} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 500: &2 description: | An unknown server error occurred ___ Substatus codes and error messages are mentioned below: + framework:unknown body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema - getSearchResponse: responses: 406: *1 500: *2 - postResponse: responses: 406: *1 415: &4 description: | Unable to consume content of specified 'Content-Type' media type ___ Substatus codes and error messages are mentioned below: + framework:request:unsupported:mediatype - The server is unable to consume content of type {contentMediaType} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 500: *2 - deleteResponse: responses: 500: *2 - putResponse: responses: 404: *3 406: *1 409: &5 description: | There is a conflict in identifying the resource being acted on. There are two categories. (1) The unique identifier in the URL and in the body are different. (2) The current version of the resource being updated and the version sent in the body of the request. This may be an indication that the resource has changed since the client loaded it. The conflict should be resolved and the update resubmitted with the current version of the resource. + framework:resource:conflict + framework:resource:conflict:id - The ID of the resource in the request, {requestedId}, does not match the ID of the given resource, {resourceId} + framework:resource:conflict:version - The version of the provided resource, {requestVersion}, does not match the current version of the resource, {latestVersion} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 415: *4 500: *2 - putResponseV2: responses: 404: *3 406: *1 409: description: | There is a conflict in identifying the resource being acted on. The unique identifier in the URL and body are different. + framework:resource:conflict + framework:resource:conflict:id - The ID of the resource in the request, {requestedId}, does not match the ID of the given resource, {resourceId} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 415: *4 500: *2 - putCreateResponse: responses: 406: *1 409: *5 415: *4 500: *2 - taskResponse: responses: 401: *6 403: *7 500: *2 - pagableRequest: queryParameters: page: description: Which page to return in the paginated results. The first page is page 1. type: integer required: false minimum: 1 default: 1 pageSize: description: How many items per page in the paginated results. type: integer required: false minimum: 1 default: 50 maximum: 200 - taggable: queryParameters: tag: description: Get the resource based on specified tag. Multiple parameters are allowed and the search results will be a union. type: string required: false - sortable: queryParameters: sortBy: description: Sort the results based on some criteria. example: +creation, -name (These will sort by creation ascending, name descending. If "+/-" prefix is omitted, then an ascending sort is assumed). type: string required: false - searchable: description: Search resources based on the given filter parameters. Search is case-insensitive. <> <> "/rulePolicies": description: Collection endpoint for rule policies. get: is: - searchable: since: '' entitlement: "[Entitlement:rule-search-rule-policies]" - pagableRequest - taggable - sortable - getSearchResponse - secured description: Search rule policies in the realm based on the specified query parameters. headers: Accept: description: Media type example: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json type: string required: true queryParameters: id: description: Retrieve rule policies with the specified id. Multiple parameters are allowed and the search results will be a union. type: string required: false creation: description: Retrieve rule policies with the specified creation instant. Multiple parameters are allowed and the search results will be a union. type: number required: false name: description: Retrieve rule policies with the specified name. Multiple parameters are allowed and the search results will be a union. type: string required: false description: description: Retrieve rule policies with the specified description. Multiple parameters are allowed and the search results will be a union. type: string required: false state: description: Retrieve rule policies with the specified state. Multiple parameters are allowed and the search results will be a union. type: string required: false classifier: description: Retrieve rule policies with the specified classifier. Multiple parameters are allowed and the search results will be a union. type: string required: false attributes.attributeType.id: description: Retrieve rule policies referencing an attribute type of the given attribute type id. Multiple parameters are allowed and the search results will be a union. type: string required: false sortBy: type: string required: false enum: - "+creation" - "-creation" - "+name" - "-name" responses: 200: description: All rule policies that satisfy the query parameters were successfully retrieved (response collection may be empty). body: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json: schema: rulePolicies 400: description: "There was a problem with the client's request.\n___ \nSubstatus codes and error messages are mentioned below:\n + framework:request:io:read - There was an error while reading the request body.\n + framework:request:io:read:parsing - Invalid input. There was an error while parsing the request body.\n + framework:request:header:missing - Missing request header: {headerName}\n \ + framework:request:invalid:header:value - Invalid x-requester header value. Valid values are [person, application] \n" body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 500: description: An unhandled server-side error occurred. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/count": description: Endpoint to return the count of rule policies that match the given query criteria. get: is: - taggable - getSearchResponse - secured description: Count rule policies based on the given query parameters. headers: Accept: description: Media type. example: text/plain type: string required: true queryParameters: id: description: Retrieve count of rule policies with the specified id. Multiple parameters are allowed and the search results will be a union. type: string required: false creation: description: Retrieve count of rule policies with the specified creation instant. Multiple parameters are allowed and the search results will be a union. type: number required: false name: description: Retrieve count of rule policies with the specified name. Multiple parameters are allowed and the search results will be a union. type: string required: false description: description: Retrieve count of rule policies with the specified description. Multiple parameters are allowed and the search results will be a union. type: string required: false state: description: Retrieve count of rule policies with the specified state. Multiple parameters are allowed and the search results will be a union. type: string required: false classifier: description: Retrieve count of rule policies with the specified classifier. Multiple parameters are allowed and the search results will be a union. type: string required: false attributes.attributeType.id: description: Retrieve count of rule policies referencing an attribute type of the given attribute type id. Multiple parameters are allowed and the search results will be a union. type: string required: false responses: 200: description: The number of matching rule policies. body: plain/text: 400: description: "There was a problem with the client's request.\n ___ \nSubstatus codes and error messages are mentioned below:\n+ framework:request\n+ framework:request:header:missing - Missing request header: {headerName} \ \n+ framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)}\n+ framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] \ \n" body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema post: description: Create a new rule policy. headers: Accept: description: Media type. example: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json type: string required: true Content-Type: description: The content type. example: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json type: string required: true is: - postResponse - secured body: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json: schema: rulePolicy responses: 201: description: Rule Policy successfully created. body: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json: schema: rulePolicy 400: description: "There was a problem with the client's request.\n___ \nSubstatus codes and error messages are mentioned below:\n + framework:request:io:read - There was an error while reading the request body.\n + framework:request:io:read:parsing - Invalid input. There was an error while parsing the request body.\n + framework:request:header:missing - Missing request header: {headerName}\n \ + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)}\n + framework:request:invalid:header:value - Invalid x-requester header value. Valid values are [person, application] \ \n + framework:resource:rulePolicy:duplicate - An active rule policy already exists with the name: {rulePolicyName} \n \ + framework:resource:rulePolicy:maximum:limit - There are already {existingRulePoliciesCount} rule policies in the realm: {realm}. No more rule policies are allowed.\n" body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 500: description: | An unhandled server-side error occurred. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/{rulePolicyId}": description: Endpoint for an individual rule policy. uriParameters: rulePolicyId: description: The unique rule policy id. type: string minLength: 1 get: description: Retrieve the requested rule policy. headers: Accept: description: Media type. example: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json type: string required: true is: - getResponse - secured responses: 200: description: Successfully retrieved the requested rule policy. body: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json: schema: rulePolicy 400: description: "There was a problem with the client's request.\n___ \nSubstatus codes and error messages are mentioned below:\n + framework:request:io:read - There was an error while reading the request body.\n + framework:request:io:read:parsing - Invalid input. There was an error while parsing the request body.\n \ + framework:request:header:missing - Missing request header: {headerName}\n \ + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)}\n + framework:request:invalid:header:value - Invalid x-requester header value. Valid values are [person, application] \ \n" body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 500: description: An unhandled server-side error occurred. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema put: is: - putResponseV2 description: Updates an existing rule policy. headers: Accept: description: Media type. example: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json type: string required: true body: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json: schema: rulePolicy responses: 200: description: The rule policy was successfully updated. body: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json: schema: rulePolicy 400: description: | There was a problem with the client's request ___ Substatus codes and error messages are mentioned below: + framework:request + framework:request:io + framework:request:io:read - Invalid input. There was an error while parsing. + framework:request:io:read:parsing + framework:request:io:write + framework:request:header:missing - Missing request header: {headerName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] + framework:resource:rulePolicy:duplicate - An active rule policy already exists with the name: {rulePolicyName} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema delete: is: - deleteResponse description: Deletes a rule policy if it is not active. headers: responses: 204: description: The rule policy was successfully deleted. 400: description: | There was a problem with the client's request ___ Substatus codes are mentioned below: + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] + framework:resource:rulePolicy:state - Rule Policy is ACTIVE; body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 404: description: | There was a problem with the client's request ___ Substatus codes are mentioned below: + framework:resource:missing - A resource with the following ID was not found: {resourceId} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/tags/{tag}": description: Tag endpoint for rule policy. is: - secured uriParameters: tag: description: The tag value. minLength: 1 maxLength: 2000 required: true type: string put: description: Tags the specified rule policy. responses: 204: description: The tag was successfully added. 400: description: "There was a problem with the client's request.\n___ \nSubstatus codes and error messages are mentioned below:\n + framework:request:io:read - There was an error while reading the request body.\n + framework:request:io:read:parsing - Invalid input. There was an error while parsing the request body.\n \ + framework:request:header:missing - Missing request header: {headerName}\n \ + framework:request:invalid:header:value - Invalid x-requester header value. Valid values are [person, application] \n" body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 404: description: The rule policy did not exist. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 500: description: An unhandled server-side error occurred. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema delete: description: Removes a tag from the rule policy. is: - secured responses: 204: description: The tag was successfully removed. 400: description: "There was a problem with the client's request.\n___ \nSubstatus codes and error messages are mentioned below:\n + framework:request:io:read - There was an error while reading the request body.\n + framework:request:io:read:parsing - Invalid input. There was an error while parsing the request body.\n \ + framework:request:header:missing - Missing request header: {headerName}\n \ + framework:request:invalid:header:value - Invalid x-requester header value. Valid values are [person, application] \n" body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 404: description: The rule policy did not exist. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 500: description: An unhandled server-side error occurred. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/tasks/activate": post: description: Activates the rule policy. Invoking this on an active rule policy has no effect. is: - secured responses: 204: description: Rule policy successfully activated. 400: description: "There was a problem with the client's request.\n___ \nSubstatus codes and error messages are mentioned below:\n+ framework:request:io:read - There was an error while reading the request body.\n+ framework:request:io:read:parsing - Invalid input. There was an error while parsing the request body.\n+ framework:request:header:missing - Missing request header: {headerName}\n+ framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)}\n+ framework:request:invalid:header:value - Invalid x-requester header value. Valid values are [person, application] \ \n+ framework:resource:rulePolicy:duplicate - An active rule policy already exists with the name: {rulePolicyName}\n \ \n" body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 500: description: | An unhandled server-side error occurred. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/tasks/deactivate": post: description: Deactivates the rule policy. Invoking this on an inactive rule policy has no effect. is: - secured responses: 204: description: Rule policy successfully deactivated. 400: description: "There was a problem with the client's request.\n___ \nSubstatus codes and error messages are mentioned below:\n+ framework:request:io:read - There was an error while reading the request body.\n+ framework:request:io:read:parsing - Invalid input. There was an error while parsing the request body.\n+ framework:request:header:missing - Missing request header: {headerName}\n+ framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)}\n+ framework:request:invalid:header:value - Invalid x-requester header value. Valid values are [person, application] \ \n \n" body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 500: description: | An unhandled server-side error occurred. body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/tasks/findQualifyingPolicies": post: is: - pagableRequest - getSearchResponse - secured description: Finds all the qualifying rule policies for the search request. headers: Accept: description: Media type. example: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json type: string required: true Content-Type: description: The content type. example: application/vnd.com.covisint.platform.rule.rulepolicy.search.request.v1+json type: string required: true body: application/vnd.com.covisint.platform.rule.rulepolicy.search.request.v1+json: schema: rulePolicy.searchRequest responses: 200: description: All qualifying rule policies for the given search request (response collection may be empty). body: application/vnd.com.covisint.platform.rule.rulepolicy.v1+json: schema: rulePolicies 400: description: "There was a problem with the client's request.\n___ \nSubstatus codes and error messages are mentioned below:\n+ framework:request:io:read - There was an error while reading the request body.\n+ framework:request:io:read:parsing - Invalid input. There was an error while parsing the request body.\n+ framework:request:header:missing - Missing request header: {headerName}\n+ framework:request:invalid:header:value - Invalid x-requester header value. Valid values are [person, application] \n" body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema