Demyst error types
Table documenting the errors returned by a Data API along with a description, categorisation and expected HTTP status returned from Demyst
error_type | current_message | error_category | description | http_status |
---|---|---|---|---|
blackbelly_communications_link_failure | internal_error | An internal error has occurred. The Demyst team should be contacted so that it can be resolved. | 200 | |
blackbelly_query_timeout | Blackbelly Query timed out after 2000, this may mean that inputs were generic or proper indexes were missing | timeout | The data query took too long to process, for one of several possible reasons. | 200 |
blackbelly_table_does_not_exist | The queried provider does not exist in this region. | internal_error | An internal error has occurred. The Demyst team should be contacted so that it can be resolved. | 200 |
channel_access_denied | permission_error | The Demyst team should be contacted to ensure that the user can access the channel used by the request. | 403 | |
channel_not_found | Channel with ID 1103 not found | channel_not_found | The user should verify that they provided the correct channel for their request. | 404 |
data_function_error | internal_error | An internal error has occurred. The Demyst team should be contacted so that it can be resolved. | 200 | |
data_function_misses_result_key | internal_error | An internal error has occurred. The Demyst team should be contacted to fix a client-specific customisation. | 200 | |
data_function_response_error | Unexpected response received from DataFunction: data function did not return a result key, in the pipe with id: Some(691) | internal_error | No results were returned from a custom data function. Demyst support should be contacted. | 200 |
decoding_error | upstream_structure_error | The data provider returned an unexpected response. Demyst support should be contacted. | 422 | |
insufficient_api_key_permissions | The given apiKey is for test use only. It is only authorized for use with Sample mode | permission_error | The API key provided by the user can only be used for test purposes in sample mode. | 400 |
insufficient_channel_permissions | The organization with id 2 does not have permission to run Channel with id 1052 | permission_error | The Demyst team should be contacted to ensure that the user can access the channel used by the request. | 403 |
insufficient_credentials | insufficient_credentials | The Demyst team should be contacted to fix an access issue with a specific data provider. | 200 | |
insufficient_input | Did not have sufficient valid input to run. Given valid inputs: InputField(email_address,Some(EmailAddress), "[email protected]"), InputField(state,Some(State),"QLD"), InputField(country,Some(Country),"AU"), InputField(post_code,Some(PostCode),"4159"), InputField(last_name,Some(LastName),"Schiffke"), InputField(ip6,Some(Ip6), "2001:8003:e122:4800:edac:8c6:c71e:bbd4"), InputField(street,Some(Street),"4 Clive Rd"), InputField(phone,Some(Phone),"+61467558685"), InputField(first_name,Some(FirstName),"Leah"), InputField(city,Some(City),"Birkdale")" | insufficient_input | The attempted configuration requires specific inputs to execute successfully. Verify that the correct inputs that were provided to the connector. | 200 |
invalid_api_key | apiKey 236dfh453756... is invalid | permission_error | The user's API key is invalid, inactive, or missing a character. | 400 |
invalid_credentials | The request was not authorized, the credentials you provided for this data source are likely invalid. | invalid_credentials | The credentials — provided by either the client or by Demyst — for accessing a specific data provider are incorrect or out of date. | 200 |
ip_whitelist_error | "Request came from 116.14.20.220, which is not on the IP whitelist for this organization. | permission_error | The request came from an IP address that is not associated with the user's organization. The Demyst team should be contacted to update the IP whitelist. | 403 |
logical_input_error | logical_input_error | The attempted query requires specific inputs that were not in the correct format. | 200 | |
missing_provider_grants | permission_error | The user requested information from a data provider that requires special access privileges. Contact the Demyst team to discuss accessing this provider. | 403 | |
network_error | upstream_error | A network error has occurred. The Demyst team should be contacted to resolve it. | 200 | |
no_api_key_given | permission_error | The user did not provide the credentials that are necessary to access a specific data provider. | 403 | |
provider_version_not_found | provider_version_not_found | The query attempted to access a data provider that was not recognized. The information in the original query should be checked for errors. | 400 | |
rate_limit_exceeded | rate_limit_exceeded | A data provider has been contacted too frequently in too short a period of time; their rate limit has been exceeded. | 200 | |
sample_data_not_implemented | sample_data_not_implemented | The API attempted to request sample data from a data provider that is not available. Contact Demyst support to discuss implementing sample data for this data provider. | 200 | |
timeout | Timeout of 5 s exceeded. Cause: -" | timeout | The Demyst team will need to check the response to determine why the default timeout period has been exceeded. | 200 |
uncaught_defect | internal_error | An unexpected error has occurred. The Demyst team should be contacted so that it can be resolved. | 200 | |
unexpected_batch_record_error | internal_error | An unexpected error has occurred. The Demyst team should be contacted so that it can be resolved. | 200 | |
unexpected_blackbelly_sql_error | internal_error | An unexpected error has occurred. The Demyst team should be contacted so that it can be resolved. | 200 | |
unexpected_data_function_error | Data Function Exception: An error occurred and the request cannot be processed. (Service: AWSLambda; Status Code: 500; Error Code: ServiceException Data Function Exception: Unable to execute HTTP request: Timeout waiting for connection from the pool, in the pipe with id: Some(601) | internal_error | The Demyst team will need to resolve the issue by identifying why the response from the provider has resulted in an error. | 200 |
unexpected_provider_error | internal_error | The Demyst team will need to resolve the issue by identifying why the response from the provider has resulted in an error. | 200 | |
unexpected_upstream_http_status | upstream_error | The Demyst team will need to resolve the issue by identifying why the response from the provider has resulted in an error. | 200 | |
unexpected_upstream_structure | upstream_structure_error | The Demyst team will need to resolve the issue by identifying why the response from the provider has resulted in an XML/JSON parsing failure. | 200 | |
upstream_application_error | Unknown Error or... Unknown city: PEACHTREE CORNERS, GA | upstream_application_error | Either the requested data provider is down, or it returned an unexpected error. (Similar to upstream_service_unavailable) | 200 |
upstream_service_unavailable | HTTP status code 503 unexpected || HTTP status code 500 unexpected | upstream_error | Either the requested data provider is down, or it returned an unexpected error. (Similar to upstream_application_error) | 200 |
Debugging Data API configuration
Here are typical errors you may encounter while configuring a Data API along with the typical resolution.
waterfall_dependency_error
The user has specified a provider as an input / when condition, but this provider is not part of the providers
in the request / saved Data API.
{
"transaction_id": "bebbe9b8-7a40-4e1e-8cb0-d3c8432617d4",
"error": {
"type": "waterfall_dependency_error",
"message": "Provider experian_business_facts referenced a non-existing provider hosted_experian_cpdb"
}
}
refine_error
Happens before the providers are executed if a function doesn't exist, or wrong parameters were passed.
{
"transaction_id": "2a3ca703-cdf3-4f29-a4d4-57b24003a2e6",
"error": {
"type": "refine_error",
"message": "Unknown function 'atis' on Transaction. Did you mean $at?"
}
}
decoding_error
An incorrect syntax, an unwanted character within the Data API call that won't let the request be evaluated until corrected will be propagated as a decoding_error.
{
"transaction_id": "1c6b6350-4550-4cd1-a7cd-29055e2a791c",
"error": {
"type": "decoding_error",
"message": "expected \" got '}\n ...' (line 6, column 9)"
}
}
{
"transaction_id": "a9e2f44b-509c-4fc9-aa9e-01bb439c8f96",
"error": {
"type": "decoding_error",
"message": "Not a string value: DownField(providers)"
}
}
{
"transaction_id": "ede8349c-d760-455a-9fdd-7997aef0041e",
"error": {
"type": "decoding_error",
"message": ".providers: While parsing connector-attribute-path 'true': connector-attribute path requires a '.'"
}
}
dependency_error
This error occurs when a provider is set to receive inputs from the output of another provider, but that provider was Skipped.
{
"transaction_id": "6c48013f-bdee-4ef0-a2e7-5b2e531df15e",
"output": {
"PROVIDER_NAME": {
"error": {
"type": "dependency_error",
"message": "Connector 'PROVIDER_NAME' had run state: 'Skipped'"
}
}
}
}
Updated 5 months ago