Case Management API Data

This section provides details for each type of data object the API exchanges. The Case object specifies the response when you GET an individual support ticket. The CasePost object specifies the form of request necessary when creating new support tickets. The UiControls is a common object that appears embedded within other object types. The Response is a common object that acknowledges comments added to a support ticket, file uploads, or requests to close the ticket.

Category

For use in creating new support tickets, this specifies high-level categories that assign questionnaires and other inputs.

Sample GET response:

[
    {
        "categoryType": "Technical",
        "displayName": "Technical Support Issue",
        "description": "Performance, Stale Content, Errors and Unexpected behaviors, and other break/fix issues, etc."
    },
    {
        "categoryType": "Business",
        "displayName": "Business Support Issue or Question",
        "description": "CP Code, User Access and Management, How To Use Luna Control Center, Reporting, Contract, etc."
    },
    {
        "categoryType": "Billing",
        "displayName": "Billing Support Issue or Question",
        "description": "Invoice issues, Billing discrepancies, Purchase Order details, etc."
    },
    {
        "categoryType": "Security",
        "displayName": "Managed Security Support",
        "description": null
    },
    {
        "categoryType": "Professional-Services",
        "displayName": "Professional Services Request (billable)",
        "description": null
    }
]

Category Members

Member Type Description
Required
categoryType Enumeration The category type, either Billing, Business, Professional-Services, Security, or Technical.
displayName String The name of the category, for use in display within the interface.
Optional
description String Provides additional descriptive text for the category.

SubCategory

Encapsulates a hierarchy of subcategories based on the initially selected Category. This recursive data structure, accessible through the response’s top-level subCategory member, represents two levels of contextual data. One provides a common subcategory topic for use in interfaces, and another provides a value for each subcategory to assign when creating a new support ticket. Objects that represent these topics always feature a nested subCategories array. Objects that represent values within that array may feature an additional subCategory encapsulating the same nested topic/value structure. If neither subCategories nor subCategory members are present, the object is a subcategory value that serves as a terminal leaf node with no nested subcategories.

Sample GET response:

{
    "subCategory": {
        "subCategoryType": "area",
        "displayName": "Area",
        "subCategories": [
            {
                "subCategoryType": "CP Code Management",
                "displayName": "CP Code Management",
                "subCategory": {
                    "subCategoryType": "service",
                    "displayName": "Service",
                    "subCategories": [
                        {
                            "subCategoryType": "Change Contract Association",
                            "displayName": "Change Contract Association"
                        },
                        {
                            "subCategoryType": "Delete CP Code",
                            "displayName": "Delete CP Code"
                        },
                        {
                            "subCategoryType": "Edit CP Code Details",
                            "displayName": "Edit CP Code Details"
                        },
                        {
                            "subCategoryType": "New CP Code",
                            "displayName": "New CP Code"
                        }
                    ]
                }
            }
        ]
    }
}

SubCategory Members

Member Type Description
Required
displayName String Interface display text that corresponds to the subCategoryType.
subCategoryType String The subcategory topic, or the value to assign to a new support ticket.
Optional
subCategories Array Specifies a series of nested SubCategory objects that represent values. Required within objects that serve as the subcategory’s topic.
subCategory SubCategory.subCategory Within a subcategory value, specifies an optional nested subcategory topic with its own set of nested values.

CaseAttributes

Specifies various details to fill out when creating a new support ticket, along with additional interface tools to help validate the input. Encapsulates information about the user who creates the ticket, and possibly other customers and partners for whom they are creating ticket.

Sample GET response:

{
    "userDetail": {
        "userName": {
            "value": "Sample User",
            "uiControls": {
                "fieldType": "text",
                "displayName": "Name",
                "maxlength": 100,
                "isRequired": true,
                "isDisabled": false
            }
        },
        "userPhone": {
            "value": 12345467890,
            "uiControls": {
                "fieldType": "text",
                "displayName": "Phone Number",
                "maxlength": 40,
                "isRequired": true,
                "isDisabled": false
            }
        },
        "userEmail": {
            "value": "sample@email.com",
            "uiControls": {
                "fieldType": "text",
                "displayName": "Email",
                "maxlength": 80,
                "isRequired": true,
                "isDisabled": false
            }
        },
        "userCompany": {
            "value": "Sample Company",
            "uiControls": {
                "fieldType": "text",
                "displayName": "Company Name",
                "maxlength": 100,
                "isRequired": true,
                "isDisabled": true
            }
        }
    },
    "severity": {
        "answerOptions": [
            {
                "answerId": "1-Major Impact",
                "answerValue": "1-Major Impact"
            },
            {
                "answerId": "2-Major Impact",
                "answerValue": "2-Major Impact"
            }
        ],
        "value": "1-Major Impact",
        "uiControls": {
            "fieldType": "dropdown",
            "displayName": "Severity",
            "isRequired": true,
            "isDisabled": false
        },
        "links": [
            {
                "href": "/case-management/v2/categories/{categoryType}/severity-definitions?product=product_1_id",
                "rel": "severity-definitions"
            },
            {
                "href": "/case-management/v2/categories/{categoryType}/response-time-frequency?product=product_1_id",
                "rel": "response-time-frequency"
            }
        ]
    },
    "subject": {
        "value": "",
        "uiControls": {
            "fieldType": "text",
            "displayName": "Subject",
            "maxlength": 100,
            "isRequired": true,
            "isDisabled": false
        }
    },
    "description": {
        "value": "",
        "uiControls": {
            "fieldType": "textarea",
            "displayName": "Description",
            "maxlength": 2000,
            "isRequired": true,
            "isDisabled": false,
            "rows": 25
        }
    },
    "additionalDetails": {
        "value": "",
        "uiControls": {
            "fieldType": "textarea",
            "displayName": "Additional Details",
            "maxlength": 2000,
            "isRequired": false,
            "isDisabled": false,
            "rows": 5
        }
    },
    "upload": {
        "value": "",
        "uiControls": {
            "fieldType": "file-upload",
            "displayName": "Upload File",
            "isRequired": false,
            "isDisabled": false,
            "maxSize": "5MB"
        }
    },
    "customer": {
        "answerOptions": [
            {
                "answerId": "c1",
                "answerValue": "Customer 1"
            },
            {
                "answerId": "c2",
                "answerValue": "Customer 2"
            },
            {
                "answerId": "c3",
                "answerValue": "Customer 3"
            },
            {
                "answerId": "c4",
                "answerValue": "Customer 4"
            }
        ],
        "value": "c1",
        "uiControls": {
            "fieldType": "dropdown",
            "displayName": "Customer",
            "isRequired": false,
            "isDisabled": false
        }
    },
    "partnerTicketNumber": {
        "value": "",
        "uiControls": {
            "fieldType": "text",
            "displayName": "Partner Ticket Number",
            "maxlength": 30,
            "isRequired": false,
            "isDisabled": false
        }
    },
    "endCustomerName": {
        "value": "",
        "uiControls": {
            "fieldType": "text",
            "displayName": "End Customer Name",
            "maxlength": 100,
            "isRequired": false,
            "isDisabled": false
        }
    },
    "customerTrackingNumber": {
        "value": "",
        "uiControls": {
            "fieldType": "text",
            "displayName": "Customer Tracking Number",
            "maxlength": 100,
            "isRequired": false,
            "isDisabled": false
        }
    },
    "links": [
        {
            "href": "/case-management/v2/questionnaires/100",
            "rel": "questionnaire"
        }
    ]
}

CaseAttributes Members

Member Type Description
Required
severity CaseAttributes.severity Assigns a severity level to the support ticket.
subject CaseAttributes.subject Provides a title for the support ticket.
userDetail CaseAttributes.userDetail Encapsulates information about the user opening the support ticket.
Optional
additionalDetails CaseAttributes.additionalDetails Provides additional text that describes the problem.
customer CaseAttributes.customer Encapsulates information about the customer on whose behalf the user is entering the support ticket.
customerTrackingNumber CaseAttributes.customerTrackingNumber Provides a key for a customer’s separately provisioned support ticket.
description CaseAttributes.description Provides details for the issue to resolve.
endCustomerName CaseAttributes.endCustomerName Inputs the name of the customer on whose behalf the user is entering a support ticket.
links Hypermedia Provides a location for this ticket’s questionnaire.
partnerTicketNumber CaseAttributes.partnerTicketNumber Provides a key for a partner’s separately provisioned support ticket.
upload CaseAttributes.upload Provides the option to upload a file within a user interface. It does not function within the API, and always appears as null.

CaseAttributes.additionalDetails

Provides additional text that describes the problem.

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value String Provides additional text that describes the problem.

CaseAttributes.customer

Encapsulates information about the customer on whose behalf the user is entering the support ticket.

Member Type Description
Required
answerOptions CaseAttributes.customer.answerOptions.[n] Provides options based on previously supplied customer information.
currentAnswers Array When creating a support ticket, this provides the answers to the Questionnaire, which is accessed separately from the main set of case attributes. Values correspond to answerId strings.
uiControls UiControls Specifies form elements to gather user input.

CaseAttributes.customer.answerOptions.[n]  

Provides options based on previously supplied customer information.

Member Type Description
Required
answerId String Identifies each customer.
answerValue String Displays the customer’s name.

CaseAttributes.customerTrackingNumber

Provides a key for a customer’s separately provisioned support ticket.

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value String Provides a key for a customer’s separately provisioned support ticket.

CaseAttributes.description

Provides details for the issue to resolve.

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value String Provides details for the issue to resolve.

CaseAttributes.endCustomerName

Inputs the name of the customer on whose behalf the user is entering a support ticket.

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value String Inputs the name of the customer on whose behalf the user is entering a support ticket.

CaseAttributes.partnerTicketNumber

Provides a key for a partner’s separately provisioned support ticket.

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value String Provides a key for a partner’s separately provisioned support ticket.

CaseAttributes.severity

Assigns a severity level to the support ticket.

Member Type Description
Required
answerOptions CaseAttributes.severity.answerOptions.[n] Provides a series of options from which to choose a severity level.
links Hypermedia Locates related resources that describe the severity level and provide estimated response times.
uiControls UiControls Specifies form elements to gather user input.
Optional
value String Selects the severity level.

CaseAttributes.severity.answerOptions.[n]  

Provides a series of options from which to choose a severity level.

Member Type Description
Required
answerId String Identifies the severity option.
answerValue String Provides display text for the severity option.

CaseAttributes.subject

Provides a title for the support ticket.

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value String Provides a title for the support ticket.

CaseAttributes.upload

Provides the option to upload a file within a user interface. It does not function within the API, and always appears as null.

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value Null Provides the option to upload a file. The API value appears as null.

CaseAttributes.userDetail

Encapsulates information about the user opening the support ticket.

Member Type Description
Optional
userCompany CaseAttributes.userDetail.userCompany Encapsulates information about the user’s company.
userEmail CaseAttributes.userDetail.userEmail Encapsulates the user’s email address.
userName CaseAttributes.userDetail.userName Encapsulates the name of the user.
userPhone CaseAttributes.userDetail.userPhone Encapsulates the user’s phone number.

CaseAttributes.userDetail.userCompany

Encapsulates information about the user’s company

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value String Inputs the user’s company name.

CaseAttributes.userDetail.userEmail

Encapsulates the user’s email address

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value String Inputs the email address.

CaseAttributes.userDetail.userName

Encapsulates the name of the user.

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value String Inputs the name of the user.

CaseAttributes.userDetail.userPhone

Encapsulates the user’s phone number.

Member Type Description
Required
uiControls UiControls Specifies form elements to gather user input.
value Number Inputs the phone number, expressed as an integer.

ResponseTime

For a given Support Type and Severity level type, specifies initial response times and frequency of updates for the created case.

Sample GET response:

{
    "responseTimeAndFrequencyDetails": [
        {
            "supportTypeDisplayName": "Premium & Premium 2.0",
            "interactionTypes": [
                {
                    "interactionType": "initialResponse",
                    "responseTimes": [
                        {
                            "severityLevelType": "1-Major",
                            "responseTime": "< 30 minutes"
                        },
                        {
                            "severityLevelType": "2-Moderate",
                            "responseTime": "< 60 minutes"
                        },
                        {
                            "severityLevelType": "3-Low",
                            "responseTime": "< 1 business day"
                        }
                    ]
                },
                {
                    "interactionType": "statusUpdates",
                    "responseTimes": [
                        {
                            "severityLevelType": "1-Major",
                            "responseTime": "Hourly"
                        },
                        {
                            "severityLevelType": "1-Moderate",
                            "responseTime": "Daily"
                        },
                        {
                            "severityLevelType": "3-Low",
                            "responseTime": "Daily"
                        }
                    ]
                }
            ]
        }
    ],
    "additionalInformation": [
        "Initial Response = First communication from Akamai personnel to customer by phone or email",
        "Status Updates = Any subsequent Akamai communication to customer by phone or email",
        "* This 1-Major Impact SLA is applicable only when the issue is opened via phone"
    ]
}

ResponseTime Members

Member Type Description
Required
additionalInformation Array Text items relevant only within an interface.
responseTimeAndFrequencyDetails ResponseTime.responseTimeAndFrequencyDetails.[n] Associates support levels, severity levels, and response times.

ResponseTime.responseTimeAndFrequencyDetails.[n]  

Associates support levels, severity levels, and response times.

Member Type Description
Required
interactionTypes ResponseTime.responseTimeAndFrequencyDetails.[n].interactionTypes.[n] For a given support level, lists interaction categories.
supportTypeDisplayName String Display text corresponding to a support-level category.

ResponseTime.responseTimeAndFrequencyDetails.[n].interactionTypes.[n]  

For a given support level, lists interaction categories.

Member Type Description
Required
interactionType Enumeration The type of support interaction, either initialResponse or statusUpdates.
responseTimes ResponseTime.responseTimeAndFrequencyDetails.[n].interactionTypes.[n].responseTimes.[n] Associates support levels with estimated response times.

ResponseTime.responseTimeAndFrequencyDetails.[n].interactionTypes.[n].responseTimes.[n]  

Associates support levels with estimated response times.

Member Type Description
Required
responseTime String Estimated response time, represented as plain text.
severityLevelType String Specifies the level of severity, corresponding to the support ticket’s severity.

SeverityDefinition

For use in helping the user assign a severity level, this object encapsulates details about each.

Sample GET response:

[
    {
        "severityLevelType": "1-Critical",
        "description": "An existing network or environment is down or there is a critical impact to an End User’s business operation. There is no reasonable workaround currently available.",
        "escalationInstructions": "Open a ticket online in the Luna control center and optionally call +1-855-625-2624 (1-855-6-AKAMAI) or +1-617-444-4605",
        "standardResponseTime": "1 hour"
    },
    {
        "severityLevelType": "2-Major",
        "description": "Operation of customer’s existing network or environment is severely degraded or significant aspects of End User’s business operation are negatively impacted by unacceptable network or environment performance.",
        "escalationInstructions": "Open a ticket online in the Luna control center and optionally call +1-855-625-2624 (1-855-6-AKAMAI) or +1-617-444-4605",
        "standardResponseTime": "1 business hour"
    },
    {
        "severityLevelType": "3-Moderate",
        "description": "Operational performance of End User’s network or environment is impaired, although most business operations remain functional.",
        "escalationInstructions": "Open a ticket online in the Luna control center",
        "standardResponseTime": "1 business day"
    },
    {
        "severityLevelType": "4-Low",
        "description": "Cisco or an End User requires information or assistance on Software capabilities, installation, or configuration.",
        "escalationInstructions": "Open a ticket online in the Luna control center",
        "standardResponseTime": "2 business days"
    }
]

SeverityDefinition Members

Member Type Description
Required
description String Describes the types of problem ordinarily associated with the level of severity.
escalationInstructions String For use in interfaces, suggests other ways to get help.
severityLevelType String Provides the key that identifies the severity level.
standardResponseTime String Provides an estimate for the amount of time it typically takes to respond to the support request, expressed as a string such as 1 business day.

Questionnaire

Encapsulates questionnaire data to help categorize problems when opening support tickets.

Sample GET response:

{
    "questionnaireId": 100,
    "questions": [
        {
            "questionId": 670,
            "questionText": "Question for Id 670",
            "helpText": "Help text for 670",
            "uiControls": {
                "fieldType": "Date",
                "isRequired": true,
                "isDisabled": false,
                "isClearable": true
            },
            "currentAnswers": [ "answer for question 670" ]
        },
        {
            "questionId": 671,
            "questionText": "Question for id 671",
            "helpText": "Help text for id 671",
            "uiControls": {
                "fieldType": "MultiSelect",
                "isRequired": true,
                "isDisabled": false,
                "isClearable": true
            },
            "answerOptions": [
                {
                    "answerId": 986,
                    "answerValue": "Akamai Site Analyzer",
                    "dependentQuestions": [
                        {
                            "questionId": 672,
                            "questionText": "Question for Id 672",
                            "helpText": "Help text for 672",
                            "uiControls": {
                                "fieldType": "Date",
                                "isRequired": true,
                                "isDisabled": false
                            },
                            "currentAnswers": [ "answer for question 672" ]
                        },
                        {
                            "questionId": 673,
                            "questionText": "Question for Id 673",
                            "helpText": "Help text for 673",
                            "uiControls": {
                                "fieldType": "Date",
                                "isRequired": true,
                                "isDisabled": false
                            },
                            "currentAnswers": [ "answer for question 673" ]
                        }
                    ]
                },
                {
                    "answerId": 987,
                    "answerValue": "Gomez",
                    "dependentQuestions": []
                },
                {
                    "answerId": 988,
                    "answerValue": "In-house monitoring",
                    "dependentQuestions": []
                },
                {
                    "answerId": 989,
                    "answerValue": "Keynote",
                    "dependentQuestions": []
                }
            ],
            "currentAnswers": [ "986" ]
        }
    ]
}

Questionnaire Members

Member Type Description
Required
questionnaireId Number Unique identifier for the questionnaire.
questions Questionnaire.questions.[n] Encapsulates each question presented to the user.

Questionnaire.questions.[n]  

Encapsulates each question presented to the user.

Member Type Description
Required
questionId Number Unique integer identifier for each question.
questionText String The question’s display text.
uiControls UiControls Specifies form elements to gather user input.
Optional
answerOptions Questionnaire.questions.[n].answerOptions.[n] Specifies a set of multiple choice answers.
currentAnswers Array Specifies the selected answer.
helpText String Provides any additional context for the question.

Questionnaire.questions.[n].answerOptions.[n]  

Specifies a set of multiple choice answers.

Member Type Description
Required
answerId Number Unique integer identifier for each answer.
answerValue String The answer’s display text.
Optional
dependentQuestions Array Specifies a set of already-answered questions whose currentAnswers would determine whether it’s appropriate to present this answer as an option.

UiControls

This object, used to present Questionnarie and CaseAttributes data within a user interface, specifies form elements to gather user input.

Sample sub-object:

{
    "displayName": "Name",
    "fieldType": "text",
    "isDisabled": false,
    "isRequired": true,
    "maxlength": 100
}

UiControls Members

Member Type Description
Required
fieldType Enumeration Specifies the interface field’s semantic data type, either checkbox, date-time, date-time-timezone, decimal, dropdown, file-upload, number, radio, text, or textarea.
isDisabled Boolean Whether the input element is available within the interface.
isRequired Boolean Whether the data must be provided.
Optional
displayName String The interface label that displays alongside the form input.
isClearable Boolean Whether the value of the input element can be modified. Applies only when the fieldType is date-time, date-time-timezone, or dropdown.
maxSize String When the fieldType is file-upload, this specifies the maximum size of the file, formatted to specify units such as 5MB.
maxlength Number When the fieldType is text or textarea, this specifies the maximum number of characters allowed.
rows Number When the fieldType is textarea, this specifies the number of vertical lines that display.

CasePost

Encapsulates data necessary to create a new support ticket. Once created, much of this data is reflected back in the ticketInfo object.

Sample POST request:

{
    "questionnaire": {
        "questionnaireId": "100",
        "questions": [
            {
                "questionId": "670",
                "currentAnswers": [ "2015-11-29T11:58:53.273Z" ]
            },
            {
                "questionId": "671",
                "currentAnswers": [ "986" ]
            }
        ]
    },
    "userDetail": {
        "userName": "Customer name",
        "userPhone": "080398137489",
        "userEmail": "acn@akamai.com",
        "userCompany": "Software"
    },
    "severity": "1-Major Impact",
    "subject": "Subject",
    "description": "Test Description",
    "customer": "telefilm",
    "customerTrackingNumber": "TRACK-FSDJW452",
    "endCustomerName": "Customer 1",
    "partnerTicketNumber": "SDG232ASD23",
    "categoryType": "Technical",
    "doNotShowInPortalFlag": false,
    "subCategories": [
        {
            "displayName": "Product",
            "subCategoryType": "product",
            "subCategoryValue": "Alta"
        },
        {
            "displayName": "Problem",
            "subCategoryType": "problem",
            "subCategoryValue": "Alerts"
        }
    ]
}

CasePost Members

Member Type Description
Required
categoryType String The ticket’s relevant top-level category, either Billing, Business, Professional-Services, Security, or Technical.
description String An extended description of the problem. This field is ignored if a questionnaire object is present. In that case, leave the description blank and use additionalDetails to specify any descriptive text.
severity String Specifies the level of severity based on data available in CaseAttributes.
subCategories CasePost.subCategories.[n] Specifies a set of Subcategory elements initially assigned to the support ticket.
subject String Specifies a subject line that serves as a title for the support ticket.
userDetail CasePost.userDetail Encapsulates data about the user on whose behalf the support ticket was created, which does not necessarily match who provisioned the API token.
Optional
additionalDetails String Provides additional text that describes the problem.
customer String If a reseller creates a case for a third party, this specifies the company name for the account.
customerTrackingNumber String If a reseller creates a case on behalf of a third party, this allows the reseller its own way to uniquely identify the case ticket.
doNotShowInPortalFlag Boolean Whether the support ticket is suppressed from certain interfaces, false by default.
endCustomerName String If a reseller creates a case for a third party, this identifies the name of the end user for whom the ticket is being tracked.
partnerTicketNumber String Value provided by the user in limited cases when creating a new support ticket.
questionnaire CasePost.questionnaire Encapsulates questionnaire data the user answers prior to submitting a ticket. See the Questionnaire object.

CasePost.questionnaire

Encapsulates questionnaire data the user answers prior to submitting a ticket. See the Questionnaire object.

Member Type Description
Required
questionnaireId String Unique identifier for the questionnaire.
Optional
questions CasePost.questionnaire.questions.[n] Lists questions the user has answered.

CasePost.questionnaire.questions.[n]  

Lists questions the user has answered.

Member Type Description
Required
currentAnswers Array The user’s answers to the question, potentially more than one for multiple-choice questions.
questionId String Unique identifier for each question.

CasePost.subCategories.[n]  

Specifies a set of Subcategory elements initially assigned to the support ticket.

Member Type Description
Required
displayName String Interface display text that corresponds to the subCategoryType.
subCategoryType String The subcategory topic to assign to a new support ticket.
subCategoryValue String The subcategory topic to assign to a new support ticket.

CasePost.userDetail

Encapsulates data about the user on whose behalf the support ticket was created, which does not necessarily match who provisioned the API token.

Member Type Description
Required
userCompany String Identifies the company on whose behalf the support request is created.
userEmail String The user’s email address.
userName String The user’s full name.
userPhone String The user’s telephone number.

Case

Encapsulates information about an individual support ticket. The object described here reflects a GET on a single support ticket. Collections feature an array of abbreviated Case.ticketInfo objects. For POST objects, see CasePost.

Sample GET response:

{
    "ticketInfo": {
        "caseId": "F-CS-1455428",
        "subject": "testing",
        "description": "testing",
        "status": "Unassigned",
        "severity": "3-Low Impact",
        "assignedTo": "In Queue",
        "categoryType": "Technical",
        "createdDate": "2016-02-29T14:15:40+0000",
        "modifiedDate": "2016-03-09T08:57:13+0000",
        "customer": "netflix",
        "externalSystemNumber": "AD-1432",
        "geoLinkId": "1-HGAJ",
        "partnerTicketNumber": "ADYH-1272",
        "endCustomerName": "a-netflix",
        "nextStepExternal": "NA",
        "customerTrackingNumber": "AFYGJA-125412",
        "submittedBy": "Rupernita Sahoo",
        "subCategories": [
            {
                "displayName": "Product",
                "subCategoryType": "product",
                "subCategoryValue": "Download Delivery"
            },
            {
                "displayName": "Problem",
                "subCategoryType": "problem",
                "subCategoryValue": "Certificates"
            }
        ]
    },
    "permissions": {
        "requestClose": true,
        "uploadFile": true,
        "addNote": true
    },
    "userDetail": {
        "userCompany": "Akamai Technologies - Assets",
        "userEmail": "rsahoo@nomail-akamai.com",
        "userPhone": "617.475.5661",
        "userName": "Rupernita Sahoo"
    },
    "solution": {
        "solutionSubject": "testing",
        "investigation": "Entry is missing",
        "resolution": "Provide the access"
    },
    "caseMilestones": [
        {
            "caseMilestoneId": "created",
            "caseMilestoneDate": "2016-02-29T14:15:48+0000"
        },
        {
            "caseMilestoneId": "assigned",
            "caseMilestoneDate": "2016-02-29T14:15:48+0000"
        },
        {
            "caseMilestoneId": "initialResponse",
            "caseMilestoneDate": "2016-03-09T08:57:12+0000"
        },
        {
            "caseMilestoneId": "inProgress",
            "caseMilestoneDate": "2016-02-29T14:15:48+0000"
        },
        {
            "caseMilestoneId": "pending",
            "caseMilestoneDate": "2016-02-29T14:15:48+0000"
        },
        {
            "caseMilestoneId": "closed",
            "caseMilestoneDate": "2016-02-29T14:15:48+0000"
        }
    ],
    "activities": [
        {
            "activitySubject": "Web Update",
            "activityDescription": "On Jay request",
            "activityType": "webUpdate",
            "activityCreatedDate": "2016-03-09T08:57:11+0000",
            "fileName": "screen.jpg",
            "activityCreatedBy": "Luna Case Mgmt",
            "links": []
        },
        {
            "activitySubject": "AddFile",
            "activityDescription": "AddFile",
            "activityType": "attachment",
            "activityCreatedDate": "2016-03-09T08:57:11+0000",
            "fileName": "file.txt",
            "activityCreatedBy": "Luna Case Mgmt",
            "links": [
                {
                    "href": "/case-management/v2/cases/F-CS-1413014/files/123456",
                    "rel": "file"
                }
            ]
        }
    ]
}

Case Members

Member Type Description
Required
caseMilestones Case.caseMilestones.[n] A read-only list of state changes generated as the support ticket progresses.
permissions Case.permissions Represents types of follow-up activities the support ticket’s submitter is allowed.
solution Case.solution Read-only Akamai-supplied details about how a support ticket is resolved.
ticketInfo Case.ticketInfo Encapsulates high-level data about the support ticket, including information that appears within Case listings, and information initially supplied when creating the ticket.
userDetail Case.userDetail Encapsulates data about the user on whose behalf the support ticket was created, not necessarily the same as the submittedBy user who created the ticket.
Optional
activities Case.activities.[n] A chronological list of user-initiated actions after a support ticket is created, such as adding comments or uploading files.

Case.activities.[n]  

Specifies user-initiated actions after a support ticket is created, such as adding comments or uploading files.

Member Type Description
Required
activityCreatedDate String An ISO 8601-formatted timestamp for when the follow-up activity occurred.
activityDescription String An extended description, which corresponds to update requests’ comment member.
activitySubject String Specifies a subject line that serves as a title.
activityType Enumeration Characterizes the activity, either email, attachment, or webUpdate.
Optional
activityCreatedBy String The name of the user following up on the support ticket.
fileName String If the activity is a file upload, this specifies the filename.
links Hypermedia If the activity is a file upload, locates the URI path to download it.

Case.caseMilestones.[n]  

A read-only list of state changes generated as the support ticket progresses.

Member Type Description
Required
caseMilestoneId Enumeration A status message generated during a support ticket’s lifetime, either created, pending, initialResponse, assigned, inProgress, or closed. Each state may only occur once over the lifetime of the ticket. Note that these values do not match the ticket’s set of potential status values.
Optional
caseMilestoneDate String An ISO 8601-formatted timestamp identifying when the state change occurred.

Case.permissions

Represents types of follow-up activities the support ticket’s submitter is allowed.

Member Type Description
Required
addNote Boolean Whether the user can append notes to the ticket.
requestClose Boolean Whether the user can request that the ticket be closed.
uploadFile Boolean Whether the user can upload file attachments as part of the support ticket.

Case.solution

Read-only Akamai-supplied details about how a support ticket is resolved.

Member Type Description
Required
solutionSubject String Provides a subject line that serves as a title.
Optional
investigation String Identifies the nature of the problem.
resolution String Characterizes the solution to the problem.

Case.ticketInfo

Encapsulates high-level data about the support ticket, including information that appears within Case listings, and information initially supplied when creating the ticket.

Member Type Description
Required
assignedTo String The group within Akamai assigned to the support ticket. The value may be In Queue prior to assignment.
caseId String Unique identifier for each support ticket.
categoryType Enumeration The ticket’s relevant top-level category, either Billing, Business, Professional-Services, Security, or Technical.
createdDate String The ISO 8601-formatted time when the case was first created.
description String An extended description of the problem.
modifiedDate String The ISO 8601-formatted time when the case was last modified. This encompasses any change to the overall object, not merely within the scope of the Case.ticketInfo sub-object in which the member appears.
severity String Specifies the level of severity based on data available in CaseAttributes.
status String The current status of the support ticket. Note that these values do not match the set of potential caseMilestoneId values.
subCategories Case.ticketInfo.subCategories.[n] Specifies a set of Subcategory elements initially assigned to the support ticket.
subject String Specifies a subject line that serves as a title for the support ticket.
submittedBy String The name of the user associated with the API token accessing the case ticket, not necessarily the same as the userName on whose behalf the ticket is filed.
Optional
customer String If a reseller creates a case for a third party, this specifies the company name for the account.
customerTrackingNumber String If a reseller creates a case on behalf of a third party, this allows the reseller its own way to uniquely identify the case ticket.
endCustomerName String If a reseller creates a case for a third party, this identifies the name of the end user for whom the ticket is being tracked.
externalSystemNumber String Value provided by the user in limited cases when creating a new support ticket.
geoLinkId String Generated value in limited cases for new support tickets.
nextStepExternal String Indicates the next steps the case’s assignee are to take.
partnerTicketNumber String Value provided by the user in limited cases when creating a new support ticket.

Case.ticketInfo.subCategories.[n]  

Specifies a set of subcategories initially assigned to the support ticket.

Member Type Description
Required
displayName String Interface display text that corresponds to the subCategoryType.
subCategoryType String The subcategory topic to assign to a new support ticket.
subCategoryValue String The subcategory topic to assign to a new support ticket.

Case.userDetail

Encapsulates data about the user on whose behalf the support ticket was created, not necessarily the same as the submittedBy user who created the ticket.

Member Type Description
Required
userCompany String Identifies the company on whose behalf the support request is created.
userEmail String The user’s email address.
userName String The user’s full name.
userPhone String The user’s telephone number.

Response

Common response object when adding a note or file upload, or when closing a case.

Sample POST response:

{
    "caseId": "F-CS-1203600",
    "statusMessage": "Ticket has been successfully updated with notes",
    "links": [
        {
            "href": "/case-management/v2/cases/F-CS-1203600",
            "rel": "parent"
        }
    ]
}

Response Members

Member Type Description
Required
caseId String Unique identifier for the support ticket.
links Hypermedia Locates the resource for the caseId.
statusMessage String A status message for the request.

Last modified: 1/17/2017