Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This document explains about the various error responses the inQuiry micro service currently throws. The intent of this document is to look through the errors and classify it and propose any changes in terms of error reporting.

...

Expand
titleClientException

Error Code

Error Message

Error Code

Error Message

Expand
titleResourceNotFoundException

Error Code

Error Message

Expand
titleServerException

Thrown by?

ERR_API_CALL

Something Went Wrong While Making API Call | Error is: ??

Knowlg Core

ERR_QUESTION_CREATE

Visibility cannot be Parent!

inQuiry

ERR_QUESTION_SET_

HIERARCHYNo hierarchy is present in cassandra for identifier: ??

CREATE

Visibility cannot be Parent!

inQuiry

ERR_

QUESTIONSET

ACCESS_

COPYSomething Went Wrong, Please Try Again

DENIED

?? visibility is private, hence access denied

inQuiry

ERR_

WHILE_FETCHING_HIERARCHY_FROM_CASSANDRA

Error while fetching hierarchy from cassandra

SERVER_ERROR

Invalid response from search

ERR_HIERARCHY_NOT

INVALID_CHANNEL

Please Provide Channel!

inQuiry

ERR_ACCESS_DENIED

Channel id is not matched

inQuiry

ERR_QUESTION_UPDATE

?? with visibility Parent, can't be updated individually.

inQuiry

ERR_QUESTION_SET_UPDATE

?? with visibility Parent, can't be updated individually.

inQuiry

ERR_QUESTION_SET_REVIEW

?? with visibility Parent, can't be sent for review individually.

inQuiry

ERR_QUESTION_SET_REVIEW

?? with status other than Draft can't be sent for review.

inQuiry

Expand
titleResourceNotFoundException

Error Code

Error Message

Expand
titleServerException

Error Code

Error Message

ERR_QUESTION_SET_HIERARCHY

No hierarchy is present in cassandra for identifier: ??

ERR_QUESTIONSET_COPY

Something Went Wrong, Please Try Again

ERR_WHILE_FETCHING_HIERARCHY_FROM_CASSANDRA

Error while fetching hierarchy from cassandra

SERVER_ERROR

Invalid response from search

ERR_HIERARCHY_NOT_FOUND

No hierarchy is present in cassandra for identifier: ??

ERR_SYSTEM_EXCEPTION

Exception Occurred While Saving The Record. Exception is : ??

ERR_SYSTEM_EXCEPTION

Exception Occurred While Reading The Record. Exception is : ??

ERR_GRAPH_PROCESSING_ERROR

Unable To Fetch Nodes From Graph. Exception is: ??

ERR_INVALID_REQUEST_BODY

Request Body is Missing!

ERR_API_CALL

Something Went Wrong While Making API Call | Error is: ??

ERR_INVALID_URL

Url Parameter is Missing!

ERR_INVALID_HEADER_PARAM

Header Parameter is Missing!

ERR_DATA_PARSER

Unable to parse data! | Error is: ??

ERR_KEYSPACE_NOT_DEFINED

Key space for ?? is not configured.

...

Expand
title400 Bad Request

API Functionality

HTTP Error Code

Existing Error Response

Proposed Error Response

Question Create

400 Bad Request

Code Block
{
    "id": "api.question.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:27:33ZZ",
    "params": {
        "resmsgid": "c34e2d4f-779b-49fc-9d6a-db4466c8de3a",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": [
            "Required Metadata name not set"
        ]
    }
}
Code Block
{
    "id": "api.question.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:27:33ZZ",
    "params": {
        "resmsgid": "c34e2d4f-779b-49fc-9d6a-db4466c8de3a",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "errors": [
          {
            "identifier": "name",
            "message": "Required Metadata name not set"
          }
        ]
    }
}

Question Create

400 Bad Request

Code Block
{
    "id": "api.question.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:26:17ZZ",
    "params": {
        "resmsgid": "e45e51ca-8c4e-4585-ab03-75ab8b131bb5",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": [
            "Required Metadata code not set"
        ]
    }
}

Question Create

400 Bad Request

Code Block
{
    "id": "api.question.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:26:27ZZ",
    "params": {
        "resmsgid": "0020dd04-65ad-4e8a-9194-bb927025d3e0",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": [
            "Required Metadata mimeType not set"
        ]
    }
}

Question Create

400 Bad Request

Code Block
{
    "id": "api.question.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:51:49ZZ",
    "params": {
        "resmsgid": "3814749d-47a0-4e38-a040-6d32e8e4cbcf",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": [
            "Required Metadata primaryCategory not set"
        ]
    }
}

Question Create

400 Bad Request

Code Block
{
    "id": "api.question.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:26:35ZZ",
    "params": {
        "resmsgid": "4ab85c6e-3ee4-4dc3-bcbf-0292b734dfdc",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": [
            "Metadata mimeType should be one of: [application/vnd.sunbird.question]"
        ]
    }
}
Code Block
{
    "id": "api.question.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:26:35ZZ",
    "params": {
        "resmsgid": "4ab85c6e-3ee4-4dc3-bcbf-0292b734dfdc",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "errors": [
          {
            "identifier": "mimeType",
            "message": "Metadata mimeType should be one of: [application/vnd.sunbird.question]"
          }
        ]
    }
}

Question Update

400 Bad Request

Code Block
{
    "id": "api.question.update",
    "ver": "3.0",
    "ts": "2023-05-14T14:29:03ZZ",
    "params": {
        "resmsgid": "d43a4913-d662-4a8a-8859-9add9a04da52",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Invalid version Key"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}
Code Block
{
    "id": "api.question.update",
    "ver": "3.0",
    "ts": "2023-05-14T14:29:03ZZ",
    "params": {
        "resmsgid": "d43a4913-d662-4a8a-8859-9add9a04da52",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Invalid version Key"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "errors": [
          {
            "identifier": "version key",
            "message": "Invalid version Key"
          }
        ]
    }
}

Question Review

400 Bad Request

Code Block
{
    "id": "api.question.review",
    "ver": "3.0",
    "ts": "2023-05-14T14:30:20ZZ",
    "params": {
        "resmsgid": "fd89269b-36f9-4673-8af4-db41b5f60716",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [body] Missing for do_21379593928588492814142"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}
Code Block
{
    "id": "api.question.review",
    "ver": "3.0",
    "ts": "2023-05-14T14:30:20ZZ",
    "params": {
        "resmsgid": "fd89269b-36f9-4673-8af4-db41b5f60716",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [body] Missing for do_21379593928588492814142"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "errors": [
          {
            "identifier": "body",
            "message": "Mandatory Fields [body] Missing for do_21379593928588492814142"
          }
        ]
    }
}

Question Review

400 Bad Request

Code Block
{
    "id": "api.question.review",
    "ver": "3.0",
    "ts": "2023-05-14T14:30:24ZZ",
    "params": {
        "resmsgid": "851c2874-e6fe-42b0-8c4f-67c234154bc8",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [responseDeclaration] Missing for do_21379593932446105614143"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question Review

400 Bad Request

Code Block
{
    "id": "api.question.review",
    "ver": "3.0",
    "ts": "2023-05-14T14:30:29ZZ",
    "params": {
        "resmsgid": "23ee2a5c-6ad7-4bae-80c2-94d42f82546d",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [interactions] Missing for do_21379593936168550414144"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question Review

400 Bad Request

Code Block
{
    "id": "api.question.review",
    "ver": "3.0",
    "ts": "2023-05-14T14:30:34ZZ",
    "params": {
        "resmsgid": "3de1955f-c480-4903-ba17-05e59cf2dc43",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [answer] Missing for do_21379593940282572814145"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question Publish

400 Bad Request

Code Block
{
    "id": "api.question.publish",
    "ver": "3.0",
    "ts": "2023-05-14T14:30:56ZZ",
    "params": {
        "resmsgid": "3c82e765-b5e0-4fec-8e5e-87d66f60b323",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [body] Missing for do_21379593958717030414146"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question Publish

400 Bad Request

Code Block
{
    "id": "api.question.publish",
    "ver": "3.0",
    "ts": "2023-05-14T14:31:00ZZ",
    "params": {
        "resmsgid": "e54e1b92-98a8-46bb-a27c-f9790dffd713",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [responseDeclaration] Missing for do_21379593961955328014147"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question Publish

400 Bad Request

Code Block
{
    "id": "api.question.publish",
    "ver": "3.0",
    "ts": "2023-05-14T14:31:04ZZ",
    "params": {
        "resmsgid": "80ab8746-8455-4d62-9bf9-886bd38851d8",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [interactions] Missing for do_21379593964663603214148"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question Publish

400 Bad Request

Code Block
{
    "id": "api.question.publish",
    "ver": "3.0",
    "ts": "2023-05-14T14:31:07ZZ",
    "params": {
        "resmsgid": "7ec01a2a-3e35-46d7-8385-0dcc81780708",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [answer] Missing for do_21379593967552921614149"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question List

400 Bad Request

Code Block
{
    "id": "api.questions.list",
    "ver": "3.0",
    "ts": "2023-05-14T14:31:29ZZ",
    "params": {
        "resmsgid": "f76b3bb2-05f0-428a-b0ee-113609f12b6f",
        "msgid": null,
        "err": "ERR_BAD_REQUEST",
        "status": "failed",
        "errmsg": "Request contains invalid identifiers : [do_list_abc_123]."
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question List

400 Bad Request

Code Block
{
    "id": "api.questions.list",
    "ver": "3.0",
    "ts": "2023-05-14T14:31:34ZZ",
    "params": {
        "resmsgid": "9edb0e68-8a15-4219-a92a-902efcc786ee",
        "msgid": null,
        "err": "ERR_BAD_REQUEST",
        "status": "failed",
        "errmsg": "Request contains invalid identifiers : [do_list_abc_234, do_list_abc_123]."
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question Import

400 Bad Request

Code Block
{
    "id": "api.question.import",
    "ver": "3.0",
    "ts": "2023-05-14T14:32:00ZZ",
    "params": {
        "resmsgid": "b71e805f-5341-4e56-93ed-9f57fd293864",
        "msgid": null,
        "err": "ERR_REQUIRED_PROPS_VALIDATION",
        "status": "failed",
        "errmsg": "Validation Failed! Mandatory Properties Are [\"name\",\"code\",\"mimeType\",\"framework\",\"channel\"] | Required Property's Missing For [fb1aef22-88e4-4f91-8055-6086bf338bf1]"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question Import

400 Bad Request

Code Block
{
    "id": "api.question.import",
    "ver": "3.0",
    "ts": "2023-05-14T14:32:09ZZ",
    "params": {
        "resmsgid": "6a19eeec-b742-4057-a782-c5c1a6a73695",
        "msgid": null,
        "err": "ERR_READ_SOURCE",
        "status": "failed",
        "errmsg": "Received Invalid Response While Reading Data From Source. Response Code is : RESOURCE_NOT_FOUND"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Question Reject

400 Bad Request

Code Block
{
    "id": "api.question.reject",
    "ver": "3.0",
    "ts": "2023-05-14T14:32:19ZZ",
    "params": {
        "resmsgid": "1acd73e6-d400-492e-abf5-5654c3425934",
        "msgid": null,
        "err": "ERR_QUESTION_REJECT",
        "status": "failed",
        "errmsg": "Question is not in 'Review' state for identifier: do_21379594026542694414151"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

QuestionSet Create

400 Bad Request

Code Block
{
    "id": "api.questionset.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:32:44ZZ",
    "params": {
        "resmsgid": "9ce43dcc-49c6-4b19-9285-1e4019bfbf30",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": [
            "Required Metadata name not set"
        ]
    }
}

QuestionSet Create

400 Bad Request

Code Block
{
    "id": "api.questionset.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:32:53ZZ",
    "params": {
        "resmsgid": "6ac7f1cc-a41a-4bf4-a5f7-49f16beece82",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": [
            "Required Metadata code not set"
        ]
    }
}

QuestionSet Create

400 Bad Request

Code Block
{
    "id": "api.questionset.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:32:56ZZ",
    "params": {
        "resmsgid": "6a4dc627-3593-49d5-adcf-d0c0a077cff6",
        "msgid": null,
        "err": "CLIENT_ERROR",
        "status": "failed",
        "errmsg": "Validation Errors"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": [
            "Required Metadata mimeType not set"
        ]
    }
}

QuestionSet Update

200 OK

??

QuestionSet Update Hierarchy

400 Bad Request

Code Block
{
    "id": "api.questionset.hierarchy.update",
    "ver": "3.0",
    "ts": "2023-05-14T14:33:44ZZ",
    "params": {
        "resmsgid": "948bf8e0-c33c-40ed-8e69-fdecace00b7d",
        "msgid": null,
        "err": "ERR_INVALID_ROOT_ID",
        "status": "failed",
        "errmsg": "Please Provide Valid Root Node Identifier"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

QuestionSet Review

400 Bad Request

Code Block
{
    "id": "api.questionset.review",
    "ver": "3.0",
    "ts": "2023-05-14T14:34:05ZZ",
    "params": {
        "resmsgid": "f90d747b-be39-4fad-992c-c5e2c8575806",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [responseDeclaration] Missing for do_21379594112953548814163"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

QuestionSet Publish

400 Bad Request

Code Block
{
    "id": "api.questionset.publish",
    "ver": "3.0",
    "ts": "2023-05-14T14:34:33ZZ",
    "params": {
        "resmsgid": "25552ef2-1af5-4bbb-80cb-d68b8f229b1f",
        "msgid": null,
        "err": "ERR_MANDATORY_FIELD_VALIDATION",
        "status": "failed",
        "errmsg": "Mandatory Fields [responseDeclaration] Missing for do_21379594136426086414168"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

QuestionSet Retire

400 Bad Request

Code Block
{
    "id": "api.questionset.retire",
    "ver": "3.0",
    "ts": "2023-05-14T14:35:05ZZ",
    "params": {
        "resmsgid": "b2e2a370-dee4-47cb-8fe6-a250cdc70f7c",
        "msgid": null,
        "err": "ERR_QUESTION_SET_RETIRE",
        "status": "failed",
        "errmsg": "QuestionSet with identifier : do_21379594162091622414177 is already Retired."
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

QuestionSet Reject

400 Bad Request

Code Block
{
    "id": "api.questionset.reject",
    "ver": "3.0",
    "ts": "2023-05-14T14:38:57ZZ",
    "params": {
        "resmsgid": "ff2aac33-c257-487a-85a8-b44a013e2f71",
        "msgid": null,
        "err": "ERR_QUESTION_SET_REJECT",
        "status": "failed",
        "errmsg": "QuestionSet is not in 'Review' state for identifier: do_21379594343893401614182"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

QuestionSet Import

400 Bad Request

Code Block
{
    "id": "api.questionset.import",
    "ver": "3.0",
    "ts": "2023-05-14T14:39:31ZZ",
    "params": {
        "resmsgid": "b8a1999b-5893-4ef5-801d-b7c73813119f",
        "msgid": null,
        "err": "ERR_REQUIRED_PROPS_VALIDATION",
        "status": "failed",
        "errmsg": "Validation Failed! Mandatory Properties Are [\"name\",\"code\",\"mimeType\",\"framework\",\"channel\"] | Required Property's Missing For [4f85db76-f8c4-41d0-b45c-a8cadba2f618]"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

QuestionSet Import

400 Bad Request

Code Block
{
    "id": "api.questionset.import",
    "ver": "3.0",
    "ts": "2023-05-14T14:39:36ZZ",
    "params": {
        "resmsgid": "45cd3ffc-205e-44cd-8017-40804711aa2a",
        "msgid": null,
        "err": "ERR_READ_SOURCE",
        "status": "failed",
        "errmsg": "Received Invalid Response While Reading Data From Source. Response Code is : RESOURCE_NOT_FOUND"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

QuestionSet Add Children

400 Bad Request

Code Block
{
    "id": "api.questionset.add",
    "ver": "3.0",
    "ts": "2023-05-14T14:39:44ZZ",
    "params": {
        "resmsgid": "6f0aa0d2-6d4a-4788-8a22-0c68d8bb841a",
        "msgid": null,
        "err": "ERR_BAD_REQUEST",
        "status": "failed",
        "errmsg": "children are mandatory"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

QuestionSet Remove Children

400 Bad Request

Code Block
{
    "id": "api.questionset.remove",
    "ver": "3.0",
    "ts": "2023-05-14T14:40:01ZZ",
    "params": {
        "resmsgid": "242d2006-4e0e-49d8-8edd-725e68fd6a16",
        "msgid": null,
        "err": "ERR_BAD_REQUEST",
        "status": "failed",
        "errmsg": "children are mandatory"
    },
    "responseCode": "CLIENT_ERROR",
    "result": {
        "messages": null
    }
}

Expand
title404 Not Found

API Functionality

HTTP Error Code

Existing Error Response

Proposed Error Response

Question Create

404 Not Found

Code Block
{
    "id": "api.question.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:26:45ZZ",
    "params": {
        "resmsgid": "ae6a0c53-2e1b-40fd-8085-7a6463675a5b",
        "msgid": null,
        "err": "404",
        "status": "failed",
        "errmsg": "Entry is not found in cassandra for content with identifier: obj-cat:random-category-name_question_all {}"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}
Code Block
{
    "id": "api.question.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:26:45ZZ",
    "params": {
        "resmsgid": "ae6a0c53-2e1b-40fd-8085-7a6463675a5b",
        "msgid": null,
        "err": "404",
        "status": "failed",
        "errmsg": "Entry is not found in cassandra for content with identifier: obj-cat:random-category-name_question_all {}"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "errors": [
          {
            "identifier": "obj-cat:random-category-name_question_all",
            "message": "Entry is not found in cassandra for content with identifier: obj-cat:random-category-name_question_all {}"
          }
        ]
    }
}

Question Read

404 Not Found

Code Block
{
    "id": "api.question.read",
    "ver": "3.0",
    "ts": "2023-05-14T14:28:25ZZ",
    "params": {
        "resmsgid": "f8088bfa-ba98-49d0-ac9b-8cdc4d15f173",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_1111111"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

Question Update

404 Not Found

Code Block
{
    "id": "api.question.update",
    "ver": "3.0",
    "ts": "2023-05-14T14:30:11ZZ",
    "params": {
        "resmsgid": "12a442d1-851b-4bd4-b664-878688497a55",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_abc_123"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

Question Review

404 Not Found

Code Block
{
    "id": "api.question.review",
    "ver": "3.0",
    "ts": "2023-05-14T14:30:41ZZ",
    "params": {
        "resmsgid": "6d9184ee-1cb3-4c99-acd8-d05fb764aeca",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_abcq_1234"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

Question Publish

404 Not Found

Code Block
{
    "id": "api.question.publish",
    "ver": "3.0",
    "ts": "2023-05-14T14:31:12ZZ",
    "params": {
        "resmsgid": "486fabc5-9ca9-40c4-8aa9-48c4c493bc52",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_abcq_1234"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

Question Reject

404 Not Found

Code Block
{
    "id": "api.question.reject",
    "ver": "3.0",
    "ts": "2023-05-14T14:32:24ZZ",
    "params": {
        "resmsgid": "49b848a4-17d1-43dd-9fe8-508f224dd6f5",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_abc_reject_1111"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Create

404 Not Found

Code Block
{
    "id": "api.questionset.create",
    "ver": "3.0",
    "ts": "2023-05-14T14:33:04ZZ",
    "params": {
        "resmsgid": "6b5f76da-2fbd-433b-9660-1d7913be0db6",
        "msgid": null,
        "err": "404",
        "status": "failed",
        "errmsg": "Entry is not found in cassandra for content with identifier: obj-cat:test-questionset-category_questionset_all {}"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Read

404 Not Found

Code Block
{
    "id": "api.questionset.read",
    "ver": "3.0",
    "ts": "2023-05-14T14:33:10ZZ",
    "params": {
        "resmsgid": "9322f6f9-da7b-481f-9a67-281403c321f5",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: questionset_123_invalid"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Update

404 Not Found

Code Block
{
    "id": "api.questionset.update",
    "ver": "3.0",
    "ts": "2023-05-14T14:33:27ZZ",
    "params": {
        "resmsgid": "0f41b47c-7f8d-46dc-87dd-171ef4d8bfb6",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: invalid_questionset_id"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Update Hierarchy

404 Not Found

Code Block
{
    "id": "api.questionset.hierarchy.update",
    "ver": "3.0",
    "ts": "2023-05-14T14:33:49ZZ",
    "params": {
        "resmsgid": "d63ee9b1-1a49-455a-a9a0-accd6bc5a036",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_qs_12345"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Update Hierarchy

404 Not Found

Code Block
{
    "id": "api.questionset.hierarchy.update",
    "ver": "3.0",
    "ts": "2023-05-14T14:33:54ZZ",
    "params": {
        "resmsgid": "c9fdb65f-a071-41b9-a0eb-0f7a160329ee",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_q_123456"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Review

404 Not Found

Code Block
{
    "id": "api.questionset.review",
    "ver": "3.0",
    "ts": "2023-05-14T14:34:25ZZ",
    "params": {
        "resmsgid": "8050b405-6c9f-431a-a5ed-2465bd92aa3d",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_qs_12345"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Publish

404 Not Found

Code Block
{
    "id": "api.questionset.publish",
    "ver": "3.0",
    "ts": "2023-05-14T14:34:39ZZ",
    "params": {
        "resmsgid": "c08b8af9-5b03-47b0-b2be-1a37e840fae0",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_1234_publish"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Read Hierarchy

404 Not Found

Code Block
{
    "id": "api.questionset.hierarchy.get",
    "ver": "3.0",
    "ts": "2023-05-14T14:34:47ZZ",
    "params": {
        "resmsgid": "d229d131-d787-480a-bbfa-2800d59dcb5a",
        "msgid": null,
        "err": "RESOURCE_NOT_FOUND",
        "status": "failed",
        "errmsg": "rootId do_21379594147649945614172 does not exist"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {}
}

QuestionSet Read Hierarchy

404 Not Found

Code Block
{
    "id": "api.questionset.hierarchy.get",
    "ver": "3.0",
    "ts": "2023-05-14T14:34:51ZZ",
    "params": {
        "resmsgid": "3dceeaa5-13ad-400a-9470-869017e71239",
        "msgid": null,
        "err": "RESOURCE_NOT_FOUND",
        "status": "failed",
        "errmsg": "rootId do_qs_123_abc does not exist"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {}
}

QuestionSet Retire

404 Not Found

Code Block
{
    "id": "api.questionset.retire",
    "ver": "3.0",
    "ts": "2023-05-14T14:35:17ZZ",
    "params": {
        "resmsgid": "995b39d1-87fc-439e-992a-397175f77fb9",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_qs_1234"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Reject

404 Not Found

Code Block
{
    "id": "api.questionset.reject",
    "ver": "3.0",
    "ts": "2023-05-14T14:39:23ZZ",
    "params": {
        "resmsgid": "acd9ed0b-3aec-481c-ac52-3476b805f099",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_qs_123445"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Add Children

404 Not Found

Code Block
{
    "id": "api.questionset.add",
    "ver": "3.0",
    "ts": "2023-05-14T14:39:53ZZ",
    "params": {
        "resmsgid": "673887df-8c4d-4b84-90d5-874f3868d5ce",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_qs_12333333"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

QuestionSet Remove Children

404 Not Found

Code Block
{
    "id": "api.questionset.remove",
    "ver": "3.0",
    "ts": "2023-05-14T14:40:07ZZ",
    "params": {
        "resmsgid": "015b90c2-bb4c-4a24-a270-dba2acf21538",
        "msgid": null,
        "err": "NOT_FOUND",
        "status": "failed",
        "errmsg": "Error! Node(s) doesn't Exists. | [Invalid Node Id.]: do_qs_1111223333"
    },
    "responseCode": "RESOURCE_NOT_FOUND",
    "result": {
        "messages": null
    }
}

Proposed Error Response

Solution 1

Recommendation is to use the error standards as specified in the http://jsonapi.org

...

Expand
titleSample error structure
{ "errors": [
Code Block
{
  "errors": [
    {
      "code":   "1000",
      "source": { "pointer": "/name" },
      "title":  "Name not set",
      "detail": "Required Metadata name not set."
    },
    {
      "code":   "10001001",
      "source": { "pointer": "/namecode" },
      "title":  "NameCode not set.",
      "detail": "Required Metadata namecode not set."
    },
    {
      "code":   "10011002",
      "source": { "pointer": "/codemimeType" },
      "title": "CodeRequired Metadata mimeType not set.",."
    }
  ]
}

Info

We can reserve error codes for the parent category of errors, something like outlined below,

CLIENT_ERROR - 10000 to 20000

RESOURCE_NOT_FOUND - 20001 to 30000

SERVER_ERROR - 30001 to 40000

Solution 2

Preparing a key / value of the field with the error and corresponding message.

Expand
titleSample error structure
Code Block
{
  "errors": {
      "

...

name" : "Required Metadata 

...

name not set."

...

,

...


      "code" :

...

 "

...

Required Metadata code 

...

not set.",
      "

...

mimeType" : "Required Metadata mimeType not set."
    }

...


...

We can reserve error codes for the parent category of errors, something like outlined below,

CLIENT_ERROR - 10000 to 20000

RESOURCE_NOT_FOUND - 20001 to 30000

...

}

One limitation with this approach is if there are multiple errors to be returned on the same field, then it becomes difficult.