#%RAML 0.8 title: Person API baseUri: https://apistg.np.covapp.io/person/v1 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", "maxLength" : 36, "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: "{\n \"id\" : \"http://api.covisint.com/schema/resource\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"description\" : \"Core schema\",\n \ \"definitions\" : {\n \"resource\" : {\n \"id\" : \"resource\",\n \"type\" : \"object\",\n \"description\" : \"A basic resource.\",\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\" : \"number\",\n \"minimum\" : 0,\n \"maximum\" : 9223372036854775807,\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 is mandatory if x-requestor header is NOT available\",\n \"required\": false\n },\n \ \"creatorAppId\" : {\n \"type\" : \"string\",\n \"maxLength\" : 64,\n \"description\" : \"The application id of the creator of this resource.\",\n \"required\": false\n },\n \"creation\" : {\n \"type\" : \"number\",\n \"minimum\" : 0,\n \"maximum\" : 9223372036854775807,\n \"description\" : \"If this value is provided in a POST / PUT request body, it will be ignored and system will generate value as time, in milliseconds since the epoch, when this resource was created or upda\",\n \ \"required\": false \n }\n }\n }\n }\n}\n" - 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 is mandatory if x-requestor header is NOT available\",\n \"required\": false\n },\n \"creatorAppId\" : {\n \"type\" : \"string\",\n \ \"maxLength\" : 64,\n \"description\" : \"The application id of the creator of this resource.\",\n \"required\": false\n },\n \ \"creation\" : {\n \"type\" : \"number\",\n \"minimum\" : 0,\n \"maximum\" : 9223372036854775807,\n \"description\" : \"If this value is provided in a POST / PUT request body, it will be ignored and system will generate value as time, in milliseconds since the epoch, when this resource was created or upda\",\n \"required\": false \n \ }\n }\n }\n } \n}\n" - realmScopedResource: | { "id" : "http://api.covisint.com/schema/realmScopedResource", "$schema" : "http://json-schema.org/draft-04/schema", "type" : "object", "description" : "Expands on the base resource and adds a realm attribute.", "extends" : { "$ref" : "http://api.covisint.com/schema/resource#" }, "properties" : { "realm" : { "type" : "string", "maxLength" : 25, "pattern" : "^[A-Za-z0-9]{2,25}$", "description" : "The realm in which this resource is being created. This is mandatory if x-realm header is NOT available", "required": false } } } - 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 is mandatory if x-realm header is NOT available\",\n \ \"required\": false\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" : { "type" : "string", "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." } } } } - person: "{\n \"id\" : \"http://api.covisint.com/idm/schema/person/v1\",\n \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \"description\" : \"Schema representing a person resource.\",\n \"extends\" : {\n \"$ref\" : \"http://api.covisint.com/idm/schema/realmScopedResource#\"\n },\n \"properties\" : {\n \"id\": {\n \"maxLength\" : 100\n },\n \"version\": {\n \"description\" : \"The current version for this resource. Exists once the resource has been saved. This is mandatory for PUT requests, but will be ignore on POST requests.\"\n \ },\n \"status\" : {\n \"enum\" : [ \"pending\", \"rejected\", \"active\", \"suspended\", \"inactive\", \"locked\", \"expired\", \"unactivated\", \"preterminated\" ],\n \"description\" : \"The person's account status, which is read-only. \ Statuses can be changed through tasks.\"\n },\n \"name\" : {\n \"type\" : \"object\",\n \"description\" : \"A container for the person's name elements\",\n \ \"properties\" : {\n \"prefix\" : {\n \"type\" : \"string\",\n \ \"description\" : \"The prefix to the person's name. For example: Mr., Mrs., Rev.\",\n \"maxLength\" : 100,\n \"required\": false\n \ },\n \"given\" : {\n \"type\" : \"string\",\n \"description\" : \"The person's given (first) name.\",\n \"maxLength\" : 150,\n \"required\": true\n },\n \"middle\": {\n \"type\" : \"string\",\n \"description\" : \"The person's middle name(s).\",\n \"maxLength\" : 60,\n \"required\": false\n },\n \"surname\": {\n \"type\" : \"string\",\n \ \"description\" : \"The person's surname or family name.\",\n \"maxLength\" : 150,\n \"required\": true\n },\n \"suffix\" : {\n \"type\" : \"string\",\n \"description\" : \"The person's name suffix. For example: Jr., Ph.D., M.D.\",\n \"maxLength\" : 50,\n \"required\": false\n \ } \n },\n \"required\": true\n },\n \"addresses\" : {\n \"type\" : \"array\",\n \"description\" : \"A container for the person's addresses.\",\n \"minItems\" : 0,\n \"items\" : { \"ref\" : \"http://api.covisint.com/idm/schema//address#\" },\n \"required\": false\n \ },\n \"language\" : { \n \"type\" : \"string\", \n \"maxLength\" : 2, \n \"description\" : \"The person's preferred language, in ISO639-1 format.\",\n \"required\": true\n },\n \"timezone\" : { \n \"type\" : \"string\", \n \"description\" : \"The person's preferred timezone. See http://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html#getAvailableIDs()\",\n \ \"required\": true\n },\n \"phones\" : {\n \"type\" : \"array\",\n \ \"description\" : \"A container for the person's phone number(s).\",\n \"minItems\" : 0,\n \"items\" : { \"$ref\" : \"http://api.covisint.com/idm/schema/phone#\" },\n \"required\": false\n },\n \"title\" : { \n \"type\" : \"string\", \n \"maxLength\" : 60, \n \"description\" : \"The person's job title\",\n \ \"required\": false\n },\n \"email\" : {\n \"type\" : \"string\",\n \ \"maxLength\" : 1000, \n \"description\" : \"The person's email address.\",\n \ \"required\": true\n },\n \"organization\" : {\n \"description\" : \"The organization to which the person belongs.\",\n \"$ref\": \"http://api.covisint.com/schema/resourceReference#\",\n \ \"required\": true\n },\n \"currency\" : { \n \"type\" : \"string\", \n \"maxLength\" : 3, \n \"description\" : \"The person's preferred currency. Must be a valid ISO4217 currency code.\",\n \"required\": false\n \ }\n }\n}\n \n" - passwordAccount: "{\n \"id\" : \"http://api.covisint.com/idm/schema/passwordAccount/v1\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \ \"description\" : \"Schema representing a person's password account.\",\n \"extends\" : {\n \"$ref\" : \"http://api.covisint.com/idm/schema/realmScopedResource#\"\n \ },\n \"properties\" : {\n \"id\" : {\n \"description\" : \"The unique identifier for this resource. This is not required on PUT requests - user supplied value will be ignored.\",\n \"required\": false\n },\n \"version\": {\n \"description\" : \"The current version for this resource. Exists once the resource has been saved. This is mandatory for PUT requests, but will be ignore on POST requests.\"\n },\n \"username\" : {\n \"type\" : \"string\", \n \"maxLength\" : 100,\n \"description\" : \"The username on the account. \ This is typically what the user enters into the login box when authenticating.\",\n \ \"required\" : \"true\"\n },\n \"password\" : { \n \"type\" : \"string\", \n \"description\" : \"The account password. This password, along with username, are the credentials used to authenticate.\",\n \"required\" : \"true\"\n },\n \"passwordPolicy\" : { \n \"description\" : \"The password policy governing the password.\",\n \"$ref\": \"http://api.covisint.com/schema/resourceReference#\",\n \ \"required\": true\n },\n \"authenticationPolicy\" : {\n \"description\" : \"The authentication policy governing the password.\",\n \"$ref\": \"http://api.covisint.com/schema/resourceReference#\",\n \ \"required\": true\n },\n \"expiration\" : { \n \"type\" : \"number\", \n \"description\" : \"The time, in milliseconds since the epoch, when the password expires.\"\n },\n \"locked\" : {\n \"type\" : \"boolean\",\n \ \"description\" : \"Whether or not the account is locked.\"\n },\n \"unlockInstant\" : { \n \"type\" : \"number\", \n \"description\" : \"The time, in milliseconds since the epoch, when the account will be unlocked. Will be zero if the account is not locked via a time-based mechanism.\"\n }\n }\n}\n" - personInvitation: "{\n \"id\" : \"http://api.covisint.com/schema/personInvitation\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \ \"description\" : \"Schema representing an invitation for a person to register.\",\n \ \"extends\" : {\n \"$ref\" : \"http://api.covisint.com/schema/realmScopedResource#\"\n \ },\n \"properties\" : { \n \"id\": {\n \"maxLength\" : 15\n },\n \ \"version\": {\n \"description\" : \"The current version for this resource. \ Exists once the resource has been saved. This is mandatory for PUT requests, but is not required and will be ignored on POST requests.\"\n }, \n \ \"email\" : {\n \"type\" : \"string\",\n \"description\": \"The email address that is to receive the invitation.\",\n \"maxLength\": 500,\n \ \"required\": true\n },\n \"invitor\": { \n \"description\": \"The person that is sending the invitation.\",\n \"$ref\": \"http://api.covisint.com/schema/resourceReference#\",\n \ \"required\": true\n }, \n \"invitee\": { \n \"description\": \"An unactivated person that is to be used during the registration initiated by this invitation. This is an optional way to prepopulate user attributes at invitation time.\",\n \"$ref\": \"http://api.covisint.com/schema/resourceReference#\"\n \ }, \n \"targetOrganization\": { \n \"description\": \"The organization that the person will join as a result of the registration initiatied by this invitation.\",\n \ \"$ref\": \"http://api.covisint.com/schema/resourceReference#\",\n \"required\": true\n },\n \"invitationCode\" : {\n \"type\" : \"string\",\n \"description\": \"A system-generated invitation code. This can aid in verification for systems requiring a secured invitation process.\",\n \"maxLength\": 50\n } \n \ }\n}\n \n" - personRequest: "{\n \"id\" : \"http://api.covisint.com/schema/personRegistration\",\n \ \"$schema\" : \"http://json-schema.org/draft-04/schema\",\n \"type\" : \"object\",\n \ \"description\" : \"Schema representing a registration request of a person.\",\n \ \"extends\" : {\n \"$ref\" : \"http://api.covisint.com/schema/realmScopedResource#\"\n \ },\n \"properties\" : {\n \"id\": {\n \"maxLength\" : 15\n },\n \ \"version\": {\n \"description\" : \"The current version for this resource. \ Exists once the resource has been saved. This is mandatory for PUT requests, but is not required and will be ignore on POST requests.\"\n },\n \"registrant\": { \n \"description\": \"The person that is being registered. The person must be in pending status for the request to be valid.\",\n \"$ref\": \"http://api.covisint.com/schema/resourceReference#\",\n \ \"required\": true\n },\n \"justification\" : {\n \"type\" : \"string\",\n \"description\": \"The justification for the registration.\",\n \ \"maxLength\": 1000,\n \"required\": true\n },\n \"servicePackageRequest\": { \n \"properties\": {\n \"packageId\": { \"type\": \"string\", \"required\": true, \"maxLength\": 100, \"description\": \"The unique service package identifier for the service package being requested at time of registration.\" },\n \"code\": { \"type\": \"string\", \"required\": false, \"maxLength\": 50, \"description\": \"The code associated with the requested service package. To be specified if required by the service package.\" },\n \"codeKind\": { \"type\": \"string\", \"required\": false, \"maxLength\": 36, \"description\": \"The kind of code. Only applicable if code is provided. This field is also known as business unit.\" }\n },\n \"required\": true\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: 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: description: Unauthorized request. The requestor is not authorized to perform the requested operation. 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 - 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. <> <> "/persons": is: - secured get: is: - getSearchResponse - pagableRequest description: Searches person resources according to the filter criteria provided. headers: Accept: description: Media type for person. example: application/vnd.com.covisint.platform.person.v1+json type: string required: true queryParameters: id: description: Retrieve persons for a supplied person identifier. Multiple values may be provided, in which case all found ids will be returned. type: string required: false organization.id: description: Retrieve all persons belonging to this organization. type: string required: false username: description: Retrieve all persons matching this username. type: string required: false authnDomain: description: Constraint the search to persons with accounts in the given authentication domain (optional parameter). This value must only be provided with the username parameter. type: string required: false name.given: description: Retrieve persons for a supplied given name. Multiple parameters are supported and the search results will be a union. type: string required: false name.surname: description: Retrieve persons for a supplied surname. Multiple parameters are supported and the search results will be a union. type: string required: false email: description: Retrieve persons for a supplied email address. Multiple parameters are supported and the search results will be a union. type: string required: false responses: 200: description: All matching person resources were successfully retrieved. body: application/vnd.com.covisint.platform.person.v1+json: schema: person 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + person.invalid.searchParams - Searching for persons across different realms is not allowed + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] + framework:request:param:invalid - The following parameter should not be part of the request: {queryParameterName} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema post: is: - postResponse description: Creates a new person in unactivated status. headers: Accept: description: Media type for person. example: application/vnd.com.covisint.platform.person.v1+json type: string required: true body: application/vnd.com.covisint.platform.person.v1+json: schema: person responses: 201: description: A new person was created in unactivated status and is returned in the response body. body: application/vnd.com.covisint.platform.person.v1+json: schema: person 400: description: | There was a problem with the client's request ___ Substatus codes and error messages are mentioned below: + 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + user:request:invalid:phone:type - Unsupported Phone type: {phoneType(s)} + framework:request:data:invalid - The following information should not be part of the resource: {resourceFieldName} + framework:resource:data:illegal - The following information was illegal from the resource: {fieldSpecificError(s)} + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] + framework:resource:missing - The following resources were not found: {resources} + person.invalid.emailIdFormat - Invalid email id format {emailId} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/{personId}": description: Individual endpoint for person resources. uriParameters: personId: description: The person's unique identifier. type: string required: true is: - secured get: is: - getResponse description: Returns a person by id. headers: Accept: description: Media type for person. example: application/vnd.com.covisint.platform.person.v1+json type: string required: true responses: 200: description: The person resource was successfully retrieved. body: application/vnd.com.covisint.platform.person.v1+json: schema: person example: | { "id": "TESTUSER", "version": 1397188800000, "creator": "TESTUSER", "realm": "PROD", "status": "active", "name": { "prefix": "Mr.", "given": "John", "middle": "M", "surname": "Smith", "suffix": "Sr." }, "addresses": [ { "streets": [ "1 Main Street", "Suite 200", "c/o Ann Miller" ], "city": "Detroit", "state": "MI", "postal": "48303", "country": "US", "type": "main" } ], "language": "en", "timezone": "EST5EDT", "phones": [ { "type": "main", "number": "313-288-2562" }, { "type": "mobile", "number": "248-767-1572" }, { "type": "fax", "number": "248-476-1303" } ], "title": "Security Administrator", "email": "admin@covisint.com", "currency": "USD" } 400: description: "There was a problem with the client's request\n___\nSubstatus codes are mentioned below:\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 put: is: - putResponse description: Updates a person's base demographical properties. headers: Accept: description: Media type for person. example: application/vnd.com.covisint.platform.person.v1+json type: string required: true body: application/vnd.com.covisint.platform.person.v1+json: schema: person responses: 200: description: The person resource was successfully updated. body: application/vnd.com.covisint.platform.person.v1+json: schema: person 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + user:request:invalid:phone:type - Unsupported Phone type: {phoneType(s)} + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] + framework:resource:missing - The following resources were not found: {resources} + person.invalid.emailIdFormat - Invalid email id format {emailId} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/accounts/password": is: - secured description: A person's password account, comprised of a username and password. put: is: - putCreateResponse description: Create or update the password account. headers: Accept: description: Media type for person's password account. example: application/vnd.com.covisint.platform.person.account.password.v1+json type: string required: true body: application/vnd.com.covisint.platform.person.account.password.v1+json: schema: passwordAccount responses: 200: description: The person's password account was successfully updated. If the person was in unactivated status before the request then the person is changed to pending status. body: application/vnd.com.covisint.platform.person.account.password.v1+json: schema: passwordAccount 201: description: The person's password account was created. If the person was in unactivated status before the request then the person is changed to pending status. body: application/vnd.com.covisint.platform.person.account.password.v1+json: schema: passwordAccount 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:param:missing - Missing request parameter: {queryParameterName} + 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] + add.user.cleartrust.error - Could not add person to cleartrust + invalid.password.error - Password {password} does not conform to policy {passwordPolicy} + password.account.update.error - There was an error updating the password account + password.account.duplicate.username - Username already exists body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema get: description: Returns the person's password account is: - secured - getResponse headers: Accept: description: Media type for a person password account. example: application/vnd.com.covisint.platform.person.account.password.v1+json type: string required: true responses: 200: description: The person's password account was successfully retrieved. body: application/vnd.com.covisint.platform.person.account.password.v1+json: schema: passwordAccount 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:param:missing - Missing request parameter: {queryParameterName} + 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] + service.invalid.person.account.password - Account for Person {personId} does not exist. + password.account.get.error - There was an error getting the password account body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/tasks/activate": is: - secured description: Activate a person that is in pending status. A common workflow is (1) POST /person, which creates a person in unactivated status. (2) PUT /person/{personId}/accounts/password, which adds a password account to the person and moves the person to pending status. (3) PUT /tasks/activate, which activates the person and moves the person to active status. post: is: - postResponse description: Activate a person that is in pending status. headers: queryParameters: personId: description: The unique identifier of the person to activate. type: string required: true responses: 204: description: The person resource was successfully activated. The person is changed to active status. 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + framework:request:invalid:header - Invalid x-requestor header value. The correct format is {requestorType}requestor. + framework:request:invalid:header:value - Invalid x-requestor header value. + framework:resource:state:transition:unsupported - Unsupported person status transition from {fromState} to ACTIVATE + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 404: description: | Resource not found. ___ Substatus codes and error messages 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 "/tasks/suspend": is: - secured description: Suspend a person that is in active status. post: is: - postResponse description: Suspend a person that is in active status. headers: queryParameters: personId: description: The unique identifier of the person to suspend. type: string required: true responses: 204: description: The person resource was successfully suspended. The person is changed to suspended status. 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + framework:request:invalid:header - Invalid x-requestor header value. The correct format is {requestorType}requestor. + framework:request:invalid:header:value - Invalid x-requestor header value. + framework:resource:state:transition:unsupported - Unsupported person status transition from {status1} to SUSPEND + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 404: description: | Resource not found. ___ Substatus codes and error messages 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 "/tasks/unsuspend": is: - secured description: Unsuspend a person that is in suspended status. post: is: - postResponse description: Unsuspend a person that is in suspended status. headers: queryParameters: personId: description: The unique identifier of the person to unsuspend. type: string required: true responses: 204: description: The person resource was successfully unsuspended. The person is changed to active status. 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + framework:request:invalid:header - Invalid x-requestor header value. The correct format is {requestorType}requestor. + framework:request:invalid:header:value - Invalid x-requestor header value. + framework:resource:state:transition:unsupported - Unsupported person status transition from {status} to UNSUSPEND + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema 404: description: | Resource not found. ___ Substatus codes and error messages 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 "/personInvitations": is: - secured description: Collection endpoint for person invitation resources get: is: - getSearchResponse - pagableRequest description: Performs a search for person invitations. headers: Accept: description: Media type for person invitation. example: application/vnd.com.covisint.platform.person.invitation.v1+json type: string required: true queryParameters: invitor.id: description: Only retrieve person invitations for a certain invitor. This parameter may be repeated to search for multiple invitors. type: string required: false invitee.id: description: Only retrives person invitations for a certain invitee. This parameter may be repeated to search for multiple invitees. type: string required: false responses: 200: description: All person invitations that satisfy the query parameters were successfully retrieved (response collection may be empty). body: application/vnd.com.covisint.platform.person.invitation.v1+json: schema: personInvitation 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + person.invitation.invalid.combination.queryParamaters - Searching for persons across different realms is not allowed + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema post: is: - postResponse description: Creates a new person invitation. headers: Accept: description: Media type for person invitation. example: application/vnd.com.covisint.platform.person.invitation.v1+json type: string required: true body: application/vnd.com.covisint.platform.person.invitation.v1+json: schema: personInvitation responses: 201: description: A new person invitation was created and is returned in the response body. body: application/vnd.com.covisint.platform.person.invitation.v1+json: schema: personInvitation 400: description: | There was a problem with the client's request ___ Substatus codes 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + person.invitation.invalid.emailIdFormat - Invalid email id format {emailId} + framework:request:data:invalid - The following information should not be part of the resource: {resourceFieldName} + framework:resource:data:illegal - The following information was illegal from the resource: {fieldSpecificError(s)} + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] + framework:resource:missing - The following resources were not found: {resources} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/{invitationId}": description: Endpoint for an individual person invitation. uriParameters: invitationId: description: Unique identifier of the person invitation. type: string maxLength: 36 required: true is: - secured get: is: - getResponse description: Returns the person invitation by id. headers: Accept: description: Media type for person invitation. example: application/vnd.com.covisint.platform.person.invitation.v1+json type: string required: true responses: 200: description: The person invitation was successfully retrieved body: application/vnd.com.covisint.platform.person.invitation.v1+json: schema: personInvitation 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:param:missing - Missing request parameter: {queryParameterName} + 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] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema delete: is: - deleteResponse description: Deletes a person invitation. headers: responses: 204: description: The person invitation was successfully deleted. 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:param:missing - Missing request parameter: {queryParameterName} + 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] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/tasks/accept": is: - secured description: Task to accept a person invitation by id. post: is: - postResponse description: Accept the person invitation. This also results in the invitation being deleted. headers: queryParameters: inviteId: description: The unique identifier of the invitation being accepted. type: string required: true createdPersonId: description: The unique identifier of the person created during the registration process that was initiated by the accepted invitation. This is specified solely for tracking purposes. type: string required: true responses: 204: description: The invitation was successfully accepted. 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + person.invitation.invalid.inviteId - Invite id {inviteId} does not exist + person.invitation.invalid.personId - Person id {personId} does not exist + person.invitation.multiple.inviteIds.not.allowed - Multiple inviteIds are not allowed. + person.invitation.multiple.createdPersonIds.not.allowed - Multiple createdPersonIds are not allowed. + person.invitation.conflict.personId - Person id {personId} is not matching with the invited id {inviteeId}. + framework:request:data:invalid - The following information should not be part of the resource: {resourceFieldName} + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/requests": is: - secured description: Collection endpoint for person registration request resources. get: is: - getSearchResponse - pagableRequest description: Performs a search for person registration requests. headers: Accept: description: Media type for person request. example: application/vnd.com.covisint.platform.person.request.v1+json type: string required: true queryParameters: registrant.id: description: Retrieve person requests for a supplied person identifier. type: string required: false responses: 200: description: All person requests that satisfy the search criteria were successfully retrieved. body: application/vnd.com.covisint.platform.person.request.v1+json: schema: personRequest 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + person.request.invalid.searchParams - Searching for registrants across different realms is not allowed + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema post: is: - postResponse description: Creates a new person request. headers: Accept: description: Media type for person request. example: application/vnd.com.covisint.platform.person.request.v1+json type: string required: true body: application/vnd.com.covisint.platform.person.request.v1+json: schema: personRequest responses: 201: description: A new person registration was created and is returned in the response body. body: application/vnd.com.covisint.platform.person.request.v1+json: schema: personRequest 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + framework:request:data:invalid - The following information should not be part of the resource: {resourceFieldName} + framework:resource:data:illegal - The following information was illegal from the resource: {fieldSpecificError(s)} + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] + framework:resource:missing - The following resources were not found: {resources} body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/{requestId}": description: Endpoint for an individual person request. uriParameters: requestId: description: Unique identifier of the person request type: string maxLength: 36 required: true is: - secured get: is: - getResponse description: Returns a person request by id. headers: Accept: description: Media type for person request. example: application/vnd.com.covisint.platform.person.request.v1+json type: string required: true responses: 200: description: The person request was successfully retrieved. body: application/vnd.com.covisint.platform.person.request.v1+json: schema: personReques 400: description: | There was a problem with the client's request ___ Substatus codes 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:param:missing - Missing request parameter: {queryParameterName} + 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] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema delete: is: - deleteResponse description: Deletes a person request. headers: responses: 204: description: The person request was successfully deleted. 400: description: | There was a problem with the client's request ___ Substatus codes 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:param:missing - Missing request parameter: {queryParameterName} + 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] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema "/tasks/approve": is: - secured description: Approve a person request. post: is: - postResponse description: Approve a person request. headers: queryParameters: requestId: description: The unique identifier of the person request. type: string required: true responses: 204: description: The request was successfully approved. The person is put into active status. 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:param:missing - Missing request parameter: {queryParameterName} + framework:request:data:missing - The following information was missing from the resource: {resourceFieldName(s)} + framework:resource:state:transition:unsupported - Unsupported person status transition from {status1} to {status2} + framework:request:invalid:header - Invalid x-requestor header value. The correct format is {requestorType}requestor. + framework:request:invalid:header:value - Invalid x-requestor header value. + person.request.multiple.requestIds.not.allowed - Multiple requestIds are not allowed. + framework:request:data:invalid - The following information should not be part of the resource: {resourceFieldName} + framework:request:invalid:header:value - Invalid x-requestor header value. Valid values are [person, application] body: application/vnd.com.covisint.error.v1+json: schema: errorResponseSchema