Skip to main content

Get Case Details by ID

Retrieves detailed information about a customer case, including optional attachments and calendar events.

HTTP Request

GET <BASE_URL>/api/v1/customer-case-detail

Headers

NameTypeRequiredDescription
cv-api-keystringYesSecret API key for authentication

Query Parameters

NameTypeRequiredDefaultDescription
caseIdstringNoThe ID of the case to retrieve.
emailstringNoThe email address of the case submitter.
includeAttachmentsstringNoSet to "true" to include attachments in the response.
documentFormatstringNobase64Format for attachments. Must be either "base64" or "url" if attachments.
includeCalendarEventsstringNoSet to "true" to include related calendar events.

Note: Either caseId or email is required. At least one must be provided.

Responses

200 OK

{
"status": 200,
"success": true,
"caseDetail": {
"id": "string",
"shortId": "string",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)",
"title": "string",
"status": "string",
"type": "string",
"submitter": {
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
},
"assignedTo": {
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
},
"assignedBy": {
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
},
"inProgressAt": "string (ISO date) or null",
"closedAt": "string (ISO date) or null",
"isArchived": "boolean",
"attachments": [
{
"id": "string",
"fileName": "string",
"contentType": "string",
"size": "number",
"uploadedAt": "string (ISO date)",
"content": "string (base64)",
"url": "string (if documentFormat=url)",
"uploadedBy": {
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
}
}
],
"comments": [
{
"id": "string",
"text": "string",
"author": {
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
},
"createdAt": "string (ISO date)",
"isRestricted": "boolean",
"attachments": [
{
"id": "string",
"fileName": "string",
"contentType": "string",
"size": "number",
"uploadedAt": "string (ISO date)",
"content": "string (base64)",
"url": "string (if documentFormat=url)",
"uploadedBy": {
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
}
}
]
}
],
"notes": [
{
"id": "string",
"text": "string",
"author": {
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
},
"createdAt": "string (ISO date)",
"isRestricted": true,
"attachments": [
{
"id": "string",
"fileName": "string",
"contentType": "string",
"size": "number",
"uploadedAt": "string (ISO date)",
"content": "string (base64)",
"url": "string (if documentFormat=url)",
"uploadedBy": {
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
}
}
]
}
],
"calendarEvents": [
{
"id": "string",
"startDateTime": "string (ISO date)",
"endDateTime": "string (ISO date)",
"timezone": "string",
"meetingLink": "string",
"cancelURL": "string",
"rescheduleURL": "string",
"meetingNotes": "string",
"meetingProvider": "string",
"organizer": {
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
},
"participants": [
{
"id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"role": "string",
"phoneNumber": "string",
"isActive": "boolean",
"createdAt": "string (ISO date)",
"updatedAt": "string (ISO date)"
}
]
}
]
}
}

Error Responses

  • If neither caseId nor email is provided:
{
"status": 400,
"success": false,
"error": "caseId or email parameters must be provided!"
}
  • If the case is not found:
{
"status": 404,
"success": false,
"error": "No Case found for provided details!"
}
  • If the user does not have permission:
{
"status": 403,
"success": false,
"error": "Permission denied!"
}

Example Request

curl -X GET "<BASE_URL>/api/v1/customer-case-detail?caseId=123&includeAttachments=true&documentFormat=url" \
-H "cv-api-key: your-secret-key"

Notes

  • The User object typically includes fields like id, email, firstName, lastName, etc.
  • The attachments array will contain either content (base64) or url depending on the documentFormat parameter.
  • The comments array contains public comments; notes contains restricted/internal comments.
  • The calendarEvents array is included only if includeCalendarEvents=true is set.