This section documents the errors that Intelligence APIs may return.
Returned when
|
Response
|
Status code
|
Example
|
Sending an invalid format as part of the page parameter.
|
400
|
{
"title": "Query parameter type mismatch.",
"status": 400,
"detail": "Query parameter 'page' must be of type 'Integer'.",
"errorCode": "GENERAL_PARAMETER_MISSMATCH"
}
|
Sending an invalid format as part of the pageSize parameter.
|
400
|
{
"title": "Query parameter type mismatch.",
"status": 400,
"detail": "Query parameter 'pageSize' must be of type 'Integer'.",
"errorCode": "GENERAL_PARAMETER_MISSMATCH"
}
|
Sending an invalid field format as part of the sort parameter.
|
400
|
{
"title": "Sort illegal field parameter.",
"status": 400,
"detail": "Sort illegal field parameter, it should contain recordId.fieldId: fieldId",
"errorCode": "GENERAL_PARAMETER_ILLEGAL"
}
|
Requesting without a Mandatory parameter,fields or kpis .
|
400
|
{
"title": "Missing mandatory parameters.",
"status": 400,
"detail": "Missing mandatory parameters: at least one of fields or kpis must be present",
"errorCode": "GENERAL_PARAMETER_MISSING"
}
|
Requesting a non-existing path.
|
404
|
{
"title": "Path not found.",
"status": 404,
"detail": "Path /intelligence/api/knowledge-models not found",
"errorCode": "GENERAL_NOTFOUND_PATH"
}
|
Unexpected server-side error.
|
500
|
{
"title": "Unexpected error.",
"status": 500,
"detail": "Something went wrong while handling the request. Please contact Celonis customer support. Celonis Support ID: 671d3bdc-9feb-45ff-b367-7b47470d4680",
"errorCode": "ADMIN_FATAL_ERROR"
}
|
Rate limit has been exceeded.
|
429
|
{
"title": "Rate limit exceeded",
"status": 429,
"detail": "Rate limit for INTELLIGENCE_API_RATE_LIMIT is exceeded. Please try again at 06:10:41 UTC.",
"errorCode": "LIMIT_RATE_EXCEEDED"
}
|
Rate limit is not found for the size defition.
|
404
|
{
"title": "Limit MAX_REQUESTS not found.",
"status": 404,
"detail": "Limit MAX_REQUESTS in size L not found.",
"errorCode": "LIMIT_SIZE_NOTFOUND"
}
|
Rate limit is not properly configured.
|
404
|
{
"title": "Limit MAX_REQUESTS not found.",
"status": 404,
"detail": "Limit MAX_REQUESTS not properly configured.",
"errorCode": "LIMIT_NOTFOUND"
}
|
Returned when
|
Response
|
Status code
|
Example
|
Requesting a non-existing field in the sort parameter.
|
400
|
{
"title": "Some fields in sort don't exist in fields.",
"status": 400,
"detail": "This field doesn't exist names",
"errorCode": "SORT_UNKNOWN_FIELD"
}
|
Sending, as part of the sort parameter, the same field with opposite sorting criterias.
|
400
|
{
"title": "Some sort fields have duplicated fields.",
"status": 400,
"detail": "Sort parameter contains duplicate fields with opposite sorting directions: testField.",
"errorCode": "SORT_HAS_OPPOSITE"
}
|
Sending an empty sort parameter.
|
400
|
{
"title": "Sort parameter error length.",
"status": 400,
"detail": "Sort parameter should not be empty.",
"errorCode": "SORT_IS_EMPTY"
}
|
Referencing a non-existing Knowledge Model.
|
404
|
{
"title": "Knowledge Model not found.",
"status": 404,
"detail": "Knowledge Model with id 'XXXX' was not found.",
"errorCode": "KM_MODEL_NOTFOUND"
}
|
Referencing a non-existing record.
|
404
|
{
"title": "Record not found.",
"status": 404,
"detail": "The record Id: XXXX wasn't found",
"errorCode": "KM_RECORD_NOTFOUND"
}
|
Returned when
|
Response
|
Status code
|
Example
|
Not sending the fields and kpis parameters.
|
400
|
{
"title": "Missing parameters.",
"status": 400,
"detail": "Required request parameter 'fields' for method parameter type List is not present",
"errorCode": "GENERAL_PARAMETER_MISSING"
}
|
Passing an empty fields parameter.
|
400
|
{
"title": "Some params have constraint violations.",
"status": 400,
"detail": "[fields: size must be between 1 and 200]",
"errorCode": "GENERAL_CONSTRAINT_VIOLATION"
}
|
Requesting a non-existing field as part of the fields parameter.
|
400
|
{
"title": "Field not found.",
"status": 400,
"detail": "Fields not found: test. Note: Fields are case sensitive.",
"errorCode": "KM_FIELD_NOTFOUND"
}
|
Using error when fields value does not contain recordId.
|
400
|
{
"title": "Field with wrong format.",
"status": 400,
"detail": "Field with wrong format, it should contain recordId.fieldId: fieldId",
"errorCode": "GENERAL_PARAMETER_ILLEGAL"
}
|
Requesting a non-existing field in the sort parameter.
|
400
|
{
"title": "Unknown sorting fields",
"status": 400,
"detail": "These fields don't exist at the given record [test].",
"errorCode": "SORT_UNKNOWN_FIELD"
}
|
Referencing a non-existing filter as part of the filters parameter.
|
404
|
{
"title": "Filter not found.",
"status": 404,
"detail": "Filter not Found: name.",
"errorCode": "FILTERS_FILTER_NOTFOUND"
}
|
Using a non-filterable field in the filterExpr parameter.
|
400
|
{
"title": "Field not filterable.",
"status": 400,
"detail": "Field not filterable: mykpi",
"errorCode": "FILTERS_FIELD_UNFILTERABLE"
}
|
Using an invalid expression as part of the filterExpr parameter.
|
400
|
{
"title": "Invalid expression structure.",
"status": 400,
"detail": "Invalid expression structure: mykpi eq",
"errorCode": "FILTERS_EXPRESSION_ILLEGAL"
}
|
Using an invalid operator for the filterExpr parameter.
|
400
|
{
"title": "Invalid expression Operator.",
"status": 400,
"detail": "Invalid expression Operator: sq",
"errorCode": "FILTERS_OPERATOR_ILLEGAL"
}
|
Using an invalid syntax for the filterExpr parameter.
|
400
|
{
"title": Failure getting results.",
"status": 400,
"detail": "Syntax error found in filterExpr. Please refer to the API documentation.",
"errorCode": "GENERAL_RESULTS_FAILURE"
}
|
Sending a page bigger than 19.(When using pageSize = 50)
|
400
|
{
"title": "Some params have constraint violations.",
"status": 400,
"detail": "[page: value must be between 0 and 19]",
"errorCode": "PAGE_VALUE_ILLEGAL"
}
|
Sending a pageSize bigger than 50.
|
400
|
{
"title": "Some params have constraint violations.",
"status": 400,
"detail": "[pageSize: size must be between 1 and 50]",
"errorCode": "PAGE_SIZE_ILLEGAL"
}
|
Sending special characters in the sort parameter.
|
400
|
{
"title": "Special characters are not allowed.",
"status": 400,
"detail": "Some special characters were found and they are not allowed for querying.",
"errorCode": "GENERAL_CHARS_NOTALLOWED"
}
|
Specifying a date in filterExpr in the wrong format.
|
400
|
"title": "Invalid Value format.",
"status": 400,
"detail": "Invalid Value format: ",
"errorCode": "GENERAL_WRONG_VALUE"
}
|
Using an invalid option in options parameter.
|
400
|
"title": "Query option not supported.",
"status": 400,
"detail": "[options: illegal option 'invalid']",
"errorCode": "OPTION_ILLEGAL",
}
|
There’s an unexpected error as part of this request.
|
400
|
{
"title": No data found.",
"status": 400,
"detail": "Error details",
"errorCode": "GENERAL_EMPTY_DATA"
}
|
There’s an unexpected error as part of this request.
|
400
|
{
"title": "Knowledge Model Field Id repeated.",
"status": 400,
"detail": "Knowledge Model with repeated Field Ids: [FIELD_ID]. Please fix the Knowledge Model configuration.",
"errorCode": "KM_FIELD_ID_DUPLICATED"
"type": "https://developer.celonis.com/intelligence-api/error-catalog/"
}
|
Using malformed error when searchField or searchTerm are empty.
|
400
|
{
"title": "Malformed expression",
"status": 400,
"detail": "Term and field search parameters should be filled",
"errorCode": "SEARCH_MATCH_EXPRESSION"
}
|
Using error when searchField value does not exist.
|
400
|
{
"title": "Search match field not found",
"status": 400,
"detail": "Field not found: XXX",
"errorCode": "SEARCH_FIELD_NOT_FOUND"
}
|
Using error when kpis value does not exist.
|
400
|
{
"title": "KPI not found.",
"status": 400,
"detail": "KPI not found: kpiId. Note: KPI are case sensitive.",
"errorCode": "KM_KPI_NOTFOUND"
}
|
Using error when kpis value contains special characters.
|
400
|
{
"title": "KPI not allowed.",
"status": 400,
"detail": "KPI contains not allowed special chars",
"errorCode": "KM_KPI_ILLEGALCHARS"
}
|
Returned when
|
Response
|
Status code
|
Example
|
Not sending the fields parameter.
|
400
|
{
"title": "Missing parameters.",
"status": 400,
"detail": "Required request parameter 'fields' for method parameter type List is not present",
"errorCode": "GENERAL_PARAMETER_MISSING"
}
|
Passing an empty fields parameter.
|
400
|
{
"title": "Some params have constraint violations.",
"status": 400,
"detail": "[fields: size must be between 1 and 200]",
"errorCode": "GENERAL_CONSTRAINT_VIOLATION"
}
|
Requesting a non-existing field as part of the fields parameter.
|
400
|
{
"title": "Field not found.",
"status": 400,
"detail": "Fields not found: test. Note: Fields are case sensitive.",
"errorCode": "KM_FIELD_NOTFOUND"
}
|
Using error when fields value does not contain recordId.
|
400
|
{
"title": "Field with wrong format.",
"status": 400,
"detail": "Field with wrong format, it should contain recordId.fieldId: fieldId",
"errorCode": "GENERAL_PARAMETER_ILLEGAL"
}
|
Requesting a non-existing field in the sort parameter.
|
400
|
{
"title": "Unknown sorting fields",
"status": 400,
"detail": "These fields don't exist at the given record [test].",
"errorCode": "SORT_UNKNOWN_FIELD"
}
|
Referencing a non-existing filter as part of the filters parameter.
|
404
|
{
"title": "Filter not found.",
"status": 404,
"detail": "Filter not Found: name.",
"errorCode": "FILTERS_FILTER_NOTFOUND"
}
|
Using a non-filterable field in the filterExpr parameter.
|
400
|
{
"title": "Field not filterable.",
"status": 400,
"detail": "Field not filterable: mykpi",
"errorCode": "FILTERS_FIELD_UNFILTERABLE"
}
|
Using an invalid expression as part of the filterExpr parameter.
|
400
|
{
"title": "Invalid expression structure.",
"status": 400,
"detail": "Invalid expression structure: mykpi eq",
"errorCode": "FILTERS_EXPRESSION_ILLEGAL"
}
|
Using an invalid operator for the filterExpr parameter.
|
400
|
{
"title": "Invalid expression Operator.",
"status": 400,
"detail": "Invalid expression Operator: sq",
"errorCode": "FILTERS_OPERATOR_ILLEGAL"
}
|
Using an invalid syntax for the filterExpr parameter.
|
400
|
{
"title": Failure getting results.",
"status": 400,
"detail": "Syntax error found in filterExpr. Please refer to the API documentation.",
"errorCode": "GENERAL_RESULTS_FAILURE"
}
|
Sending a page bigger than 19.(When using pageSize = 50)
|
400
|
{
"title": "Some params have constraint violations.",
"status": 400,
"detail": "[page: value must be between 0 and 19]",
"errorCode": "PAGE_VALUE_ILLEGAL"
}
|
Sending a pageSize bigger than 50.
|
400
|
{
"title": "Some params have constraint violations.",
"status": 400,
"detail": "[pageSize: size must be between 1 and 50]",
"errorCode": "PAGE_SIZE_ILLEGAL"
}
|
Sending special characters in the sort parameter.
|
400
|
{
"title": "Special characters are not allowed.",
"status": 400,
"detail": "Some special characters were found and they are not allowed for querying.",
"errorCode": "GENERAL_CHARS_NOTALLOWED"
}
|
Specifying a date in filterExpr in the wrong format.
|
400
|
"title": "Invalid Value format.",
"status": 400,
"detail": "Invalid Value format: ",
"errorCode": "GENERAL_WRONG_VALUE"
}
|
Using an invalid option in options parameter.
|
400
|
"title": "Query option not supported.",
"status": 400,
"detail": "[options: illegal option 'invalid']",
"errorCode": "OPTION_ILLEGAL",
}
|
There’s an unexpected error as part of this request.
|
400
|
{
"title": No data found.",
"status": 400,
"detail": "Error details",
"errorCode": "GENERAL_EMPTY_DATA"
}
|
Using malformed error when searchField or searchTerm are empty.
|
400
|
{
"title": "Malformed expression",
"status": 400,
"detail": "Term and field search parameters should be filled",
"errorCode": "SEARCH_MATCH_EXPRESSION"
}
|
Using error when searchField value does not exist.
|
400
|
{
"title": "Search match field not found",
"status": 400,
"detail": "Field not found: XXX",
"errorCode": "SEARCH_FIELD_NOT_FOUND"
}
|
Sending special characters in the searchField parameter.
|
400
|
{
"title": "Search match fields not allowed.",
"status": 400,
"detail": "Search match fields contain prohibited special characters.",
"errorCode": "SEARCH_FIELDS_ILLEGALCHARS"
}
|
Sending special characters in the searchTerm parameter.
|
400
|
{
"title": "Search match terms not allowed.",
"status": 400,
"detail": "Search match terms contain prohibited special characters.",
"errorCode": "SEARCH_TERMS_ILLEGALCHARS"
}
|
Returned when
|
Response
|
Status code
|
Example
|
Unable to create the subscription to the EMS Trigger.
|
400
|
{
"title": "The subscription is not created",
"status": 400,
"detail": "We could not create the subscription, please retry. If the problem persists, please contact us.",
"errorCode": "SUBSCRIPTION_TRIGGER_FAILED"
}
|
The uri provided in callbackInfo attribute, is not visible from Celonis
|
400
|
{
"title": "The provided callback is not reachable",
"status": 400,
"detail": "We checked the callback uri but it failed.",
"errorCode": "SUBSCRIPTION_CALLBACK_FAILED"
}
|
You tried to create a subscription but the triggerId parameter is wrong.
|
404
|
{
"title": "Trigger not found",
"status": 404,
"detail": "The trigger Id: XXX wasn't found.",
"errorCode": "SUBSCRIPTION_TRIGGER_NOTFOUND"
}
|
The uri provided in callbackInfo attribute, is not valid for the given protocol
|
400
|
{
"title": "The uri is not supported",
"status": 400,
"detail": "The uri: XXX does not implement the protocol: YYY.",
"errorCode": "SUBSCRIPTION_URI_ILLEGAL"
}
|
The headers provided in callbackInfo are not valid
|
400
|
{
"title": "Empty header not allowed.",
"status": 400,
"detail": "Headers must contain a name and a value.",
"errorCode": "SUBSCRIPTION_EMPTY_HEADER"
}
|
You tried to access to a subscription but the subscriptionId parameter is wrong.
|
404
|
{
"title": "Subscription not found",
"status": 404,
"detail": "The subscription Id: XXX wasn't found.",
"errorCode": "SUBSCRIPTION_SUBSCRIPTION_NOTFOUND"
}
|
You tried to manually extract data from a subscription, but the subscriptionId parameter has an illegal status (is Active or Paused).
|
400
|
{
"title": "Can't extract from subscription.",
"status": 400,
"detail": "The subscription Id: XXX is Active or Paused.",
"errorCode": "SUBSCRIPTION_CANT_EXTRACT"
}
|
You tried to execute an action but the subscriptionId parameter has an illegal status (is Suspended).
|
400
|
{
"title": "Subscription is suspended",
"status": 400,
"detail": "The subscription Id: XXX is suspended so the action is not allowed.",
"errorCode": "SUBSCRIPTION_SUBSCRIPTION_SUSPENDED"
}
|
You tried to execute an action but the subscriptionId parameter has an illegal status for that action.
|
400
|
{
"title": "Illegal Subscription status",
"status": 400,
"detail": "The subscription Id: XXX has not valid status for the action.",
"errorCode": "SUBSCRIPTION_SUBSCRIPTION_ILLEGAL_STATUS"
}
|
You tried to access to a subscription but you don't have permissions.
|
403
|
{
"title": "Subscription access denied",
"status": 403,
"detail": "Access denied to the subscription Id: XXX.",
"errorCode": "SUBSCRIPTION_SUBSCRIPTION_ACCESSDENIED"
}
|
You tried to create a new subscription but your quota is exceeded.
|
403
|
{
"title": "The subscription is not created",
"status": 403,
"detail": "You reached your subscription create limit of XXX. There are YYY subscription created.",
"errorCode": "SUBSCRIPTION_LIMIT_EXCEEDED"
}
|
You tried to create or update a subscription but your quantity of headers is exceeded.
|
400
|
{
"title": "Header limit exceeded",
"status": 400,
"detail": "The headers limit were exceeded.",
"errorCode": "HEADER_LIMIT_EXCEEDED"
}
|
You tried to create or update a subscription but your size of headers is exceeded.
|
400
|
{
"title": "Header limit size exceeded",
"status": 400,
"detail": "The headers limit size were exceeded.",
"errorCode": "HEADER_LIMIT_SIZE_EXCEEDED"
}
|
You tried to create or update a subscription but your headers contain non-allowed information.
|
400
|
{
"title": "Non Allowed Header Found",
"status": 400,
"detail": "The headers contain non-allowed information.",
"errorCode": "NON_ALLOWED_HEADER_FOUND"
}
|
You tried to create or update a subscription but the name contains special chars that are not allowed.
|
400
|
{
"title": "Subscription attribute Name.",
"status": 400,
"detail": "Name value is not valid.",
"errorCode": "SUBSCRIPTION_INVALID_NAME"
}
|
You tried to create a subscription but something went wrong in the process.
|
400
|
{
"title": "We couldn't subscribe.",
"status": 400,
"detail": "The subscription wasn't able to subscribe, please retry if the problem persist, please contact us.",
"errorCode": "SUBSCRIPTION_UNABLE_CREATE"
}
|
You tried to delete a subscription but something went wrong in the process.
|
400
|
{
"title": "We couldn't unsubscribe",
"status": 400,
"detail": "The subscription wasn't able to delete, please retry if the problem persist, please contact us.",
"errorCode": "SUBSCRIPTION_UNABLE_DELETE"
}
|
You tried to perform any operation in a subscription but do not have the proper permissions.
|
403
|
{
"title": "Not an allowed user",
"status": 403,
"detail": "Not allowed: only the subscription owner or team admins can perform this operation.",
"errorCode": "SUBSCRIPTION_FORBIDDEN"
}
|
Not authorized. The operation is allowed only to the subscription owner or administrators.
|
403
|
{
"title": "Not an allowed user",
"status": 403,
"detail": "Not allowed: only the subscription owner or team admins can perform this operation.",
"errorCode": "SUBSCRIPTION_FORBIDDEN"
}
|
Offset is Illegal. The replay operation could not be executed since the offset must be a value between 0 and the latest offset received for the subscription.
|
400
|
{
"title": "Offset is illegal",
"status": 400,
"detail": "The offset: XXX is not available",
"errorCode": "SUBSCRIPTION_OFFSET_ILLEGAL"
}
|