Skip to main content
Skip table of contents

Kayako Classic

Overview

Kayako Classic is a self-hosted service desk which is suited to ticketed workflows, IT support and service desk use cases.

D3 SOAR is providing REST operations to function with Kayako Classic.

Kayako Classic is available for use in:

D3 SOAR

V14.0.44.0+

Category

Case Management

Deployment Options

Option II, Option IV

Connection

To connect to Kayako Classic from D3 SOAR, please follow this part to collect the required information below:

Parameter

Description

Example

Server URL

The server URL of the Kayako Classic instance.

https://kcdemo-classic.kayako.com/api/

API Key

The REST API key obtained from the Kayako Classic admin portal.

d7064*************************************bc4

API Secret

The secret key obtained from the Kayako Classic admin portal.

Njc*****************************************************************************************************************************************Tk5

Configuring Kayako Classic to Work with D3 SOAR

  1. Log in to the Kayako Classic Admin console with your credentials. On the left sidebar menu, navigate to OPTIONS > REST API > Settings. On the API SETTINGS page, select Yes for Enable API. Click Update.

  2. On the left sidebar menu, navigate to OPTIONS > REST API > API Information. You will be shown the REST API key, Secret Key and REST API URL* (server URL). Store the three values in a secure location, you will need them to build the integration connection in D3 SOAR (See step 3h of Configuring D3 SOAR to Work with Kayako Classic) Note: You can click Regenerate REST API Credentials to create a new API key and secret key.

Reader Note

Please only copy and save the server URL up until /api/ as the input for the Server URL (domain level) parameter to build the connection in D3 SOAR. For example, if the REST API URL shown is https://kcdemo-classic.kayako.com/admin/api/, only https://kcdemo-classic.kayako.com/admin is required as the input for the Server URL (domain level) parameter when building the connection.

Configuring D3 SOAR to Work with Kayako Classic

  1. Log in to D3 SOAR.

  2. Find the Kayako Classic integration.

    1. Navigate to Configuration on the top header menu.

    2. Click on the Integration icon on the left sidebar.

    3. Type Kayako Classic in the search box to find the integration, then click it to select it.

    4. Click + Connection, on the right side of the Connections section. A new connection window will appear.

  3. Configure the following fields to create a connection to Kayako Classic.

    1. Connection Name: The desired name for the connection.

    2. Site: Specifies the site to use the integration connection. Use the drop-down menu to select the site. The Share to Internal Sites option enables all sites defined as internal sites to use the connection. Selecting a specific site will only enable that site to use the connection.

    3. Recipient site for events from connections Shared to Internal Sites: This field appears if you selected Share to Internal Sites for Site to let you select the internal site to deploy the integration connection.

    4. Agent Name (Optional): Specifies the proxy agent required to build the connection. Use the dropdown menu to select the proxy agent from a list of previously configured proxy agents.

    5. Description (Optional): Add your desired description for the connection.

    6. Configure User Permissions: Defines which users have access to the connection.

    7. Active: Check the tick box to ensure the connection is available for use.

    8. System: This section contains the parameters defined specifically for the integration. These parameters must be configured to create the integration connection.
      See step 2 of Configuring Kayako Classic to Work with D3 SOAR for instructions on obtaining the input values.
      1. Input the Kayako Classic Server URL.
      2. Input your saved API Key.
      3. Input your saved API Secret.

    9. Enable Password Vault: An optional feature that allows users to take the stored credentials from their own password vault. Please refer to the password vault connection guide if needed.

    10. Connection Health Check: Updates the connection status you have created. A connection health check is done by scheduling the Test Connection command of this integration. This can only be done when the connection is active.
      To set up a connection health check, check the Connection Health Check tickbox. You can customize the interval (minutes) for scheduling the health check. An email notification can be set up after a specified number of failed connection attempts.

  4. Test the connection.

    1. Click Test Connection to verify the account credentials and network connection. If the Test Connection Passed alert window appears, the test connection is successful. You will see Passed with a green checkmark appear beside the Test Connection button. If the test connection fails, please check your connection parameters and try again.

    2. Click OK to close the alert window.

    3. Click + Add to create and add the configured connection.

Commands

Kayako Classic includes the following executable commands for users to set up schedules or create playbook workflows. With the Test Command, you can execute these commands independently for playbook troubleshooting.

Integration API Note

For more information about the Kayako Classic API, please refer to the Kayako Classic API reference.

Create Ticket

Creates a new ticket.

Reader Note

  • Department ID are required parameters to run this command.

    • Run the List Departments command to obtain Department IDs.

  • User ID, Staff ID and Ownerstaff ID are optional parameters to run this command.

    • Run the List Users command to obtain User IDs. 

    • Run the List Staff command to obtain Staff IDs or Ownerstaff IDs.

    • When the defined value of the Autouser ID parameter is “1”, only one of the User ID or the Staff ID parameters requires an input. You cannot define both parameters.

    • The Ownerstaff ID parameter can only be defined when the Staff ID parameter is not defined.

  • Template Group is an optional parameter to run this command. It can be added from the Kayako Classic user interface. On the left sidebar menu, navigate to OPTIONS > Templates > Groups, then click + New.

Input

Input Parameter

Required/Optional

Description

Example

Subject

Required

The subject of the ticket.

test1201c

Fullname

Required

The full name of the ticket creator.

jon

Email

Required

The email address of the ticket creator.

test@example.com

Contents

Required

The contents of the first ticket post.

content test1201

Department ID

Required

The ID of the department to assign the ticket to. Department IDs can be obtained using the List Departments command.

33

Ticket Status

Required

The status of the ticket. The available ticket statuses are NEW(NOUVEAU), IN PROGRESS, CLOSED, WAITING FOR CUSTOMER, READY TO DELIVER, and DELIVERED.

WAITING FOR CUSTOMER

Ticket Priority

Required

The priority of the ticket. The available ticket priorities are BLOCKING(BLOQUANT), MAJOR(Majeur) and MINOR(Mineur).

Major(Majeur)

Ticket Type

Required

The ticket type to assign. The available ticket types are Assistance, Topic, Maintenance, Issue and Follow Up.

Issue

Autouser ID

Optional

If you select “1”, the option to auto select the ticket creator’s user ID based on the input email address will be enabled. If no email address is found, a new user will be created based on the input email address. If you select “0”, you must define at least one of the User ID or Staff ID parameters. The default option is “0”.

1

User ID

Optional

The user ID of the ticket creator when “0” is selected for the Autouser ID parameter. User IDs can be obtained using the List Users command. Note: Only one of the User ID or Staff ID parameters can be defined.

123

Staff ID

Optional

The staff ID of the ticket creator when “0” is selected for the Autouser ID parameter. Staff IDs can be obtained using the List Staff command. Note: Only one of the User ID or Staff ID parameters can be defined.

234

Ownerstaff ID

Optional

The ID of the ticket’s owner. Ownerstaff IDs can be obtained using the List Staff command. Note: You can only define this ticket if the Staff ID parameter is not defined.

123

Ticket Creation Type

Optional

The ticket creation type (Default or Phone). The default option is Default.

Phone

Template Group

Optional

The ID or name of the custom template group to associate the ticket with. Template group names can be obtained on the Kayako Classic user interface. On the left sidebar menu, navigate to OPTIONS > Templates > Groups, then click + New. The default template group is used by default.

Note: This parameter is only available from version 4.40.954 of Kayako Classic and onwards.

Default

Ignore Auto Responder

Optional

The option to disable an auto responder email, if set to Yes. The default option is No.

Note: This parameter is only available from version 4.40.1079 of Kayako Classic and onwards.

No

Email Queue ID

Optional

The option to select an email queue ID. Email queue IDs can be obtained on the Kayako Classic user interface. On the left sidebar menu, navigate to OPTIONS > Email Parser > Email Queues.

Note: This parameter is only available from version 4.70 of Kayako Classic and onwards.

10

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<tickets>
<ticket id="581" flagtype="0">
<displayid><![CDATA[VDA-*****]]></displayid>
<departmentid><![CDATA[*****]]></departmentid>
<statusid><![CDATA[*****]]></statusid>
<priorityid><![CDATA[*****]]></priorityid>
<typeid><![CDATA[1]]></typeid>
<userid><![CDATA[*****]]></userid>
<userorganization />
<userorganizationid />
<ownerstaffid><![CDATA[0]]></ownerstaffid>
<ownerstaffname />
<fullname><![CDATA[Jon]]></fullname>
<email><![CDATA[test@example.com]]></email>
<lastreplier><![CDATA[Jon]]></lastreplier>
<subject><![CDATA[test1201c]]></subject>
<creationtime><![CDATA[1670974143]]></creationtime>
<lastactivity><![CDATA[1670974143]]></lastactivity>
<laststaffreply><![CDATA[0]]></laststaffreply>
<lastuserreply><![CDATA[1670974143]]></lastuserreply>
<slaplanid><![CDATA[0]]></slaplanid>
<nextreplydue><![CDATA[1673494143]]></nextreplydue>
<resolutiondue><![CDATA[1673998143]]></resolutiondue>
<replies><![CDATA[0]]></replies>
<ipaddress><![CDATA[1.1.1.1]]></ipaddress>
<creator><![CDATA[2]]></creator>
<creationmode><![CDATA[4]]></creationmode>
<creationtype><![CDATA[1]]></creationtype>
<isescalated><![CDATA[0]]></isescalated>
<escalationruleid><![CDATA[0]]></escalationruleid>
<templategroupid><![CDATA[1]]></templategroupid>
<tags />
<templategroupname><![CDATA[Default]]></templategroupname>
<posts>
<post>
<id><![CDATA[*****]]></id>
<ticketpostid><![CDATA[*****]]></ticketpostid>
<ticketid><![CDATA[*****]]></ticketid>
<dateline><![CDATA[1670974143]]></dateline>
<userid><![CDATA[*****]]></userid>
<fullname><![CDATA[test]]></fullname>
<email><![CDATA[test@example.com]]></email>
<emailto />
<ipaddress><![CDATA[2.2.2.2]]></ipaddress>
<hasattachments><![CDATA[0]]></hasattachments>
<creator><![CDATA[2]]></creator>
<isthirdparty><![CDATA[0]]></isthirdparty>
<ishtml><![CDATA[0]]></ishtml>
<isemailed><![CDATA[0]]></isemailed>
<staffid><![CDATA[0]]></staffid>
<issurveycomment><![CDATA[0]]></issurveycomment>
<contents><![CDATA[content test1201]]></contents>
<isprivate><![CDATA[0]]></isprivate>
</post>
</posts>
</ticket>
</tickets>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "tickets": {
        "ticket": {
            "@id": "*****",
            "@flagtype": "0",
            "displayid": "VDA-*****",
            "departmentid": "*****",
            "statusid": "*****",
            "priorityid": "*****",
            "typeid": "1",
            "userid": "*****",
            "userorganization": null,
            "userorganizationid": null,
            "ownerstaffid": "0",
            "ownerstaffname": null,
            "fullname": "test",
            "email": "test@example.com",
            "lastreplier": "Jon",
            "subject": "test1201c",
            "creationtime": "1670974143",
            "lastactivity": "1670974143",
            "laststaffreply": "0",
            "lastuserreply": "1670974143",
            "slaplanid": "0",
            "nextreplydue": "1673494143",
            "resolutiondue": "1673998143",
            "replies": "0",
            "ipaddress": "1.1.1.1",
            "creator": "2",
            "creationmode": "4",
            "creationtype": "1",
            "isescalated": "0",
            "escalationruleid": "0",
            "templategroupid": "1",
            "tags": null,
            "templategroupname": "Default",
            "posts": {
                "post": {
                    "id": "*****",
                    "ticketpostid": "*****",
                    "ticketid": "*****",
                    "dateline": "****",
                    "userid": "******",
                    "fullname": "test",
                    "email": "test@example.com",
                    "emailto": null,
                    "ipaddress": "2.2.2.2",
                    "hasattachments": "0",
                    "creator": "2",
                    "isthirdparty": "0",
                    "ishtml": "0",
                    "isemailed": "0",
                    "staffid": "0",
                    "issurveycomment": "0",
                    "contents": "content test1201",
                    "isprivate": "0"
                }
            }
        }
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "TicketDisplayID": "VDA-*****",
    "DepartmentID": *****,
    "UserID": *****,
    "Subject": "test1201c",
    "Owner": null,
    "TicketID": *****
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

@id

***

@flagtype

0

displayid

VDA-*****

departmentid

***

statusid

***

priorityid

***

typeid

1

userid

***

userorganization

None

userorganizationid

None

ownerstaffid

0

ownerstaffname

None

fullname

test

email

test@example.com

lastreplier

test

subject

test1201c

creationtime

1670974143

lastactivity

1670974143

laststaffreply

0

lastuserreply

1670974143

slaplanid

0

nextreplydue

1673494143

resolutiondue

1673998143

replies

0

ipaddress

1.1.1.1

creator

2

creationmode

4

creationtype

1

isescalated

0

escalationruleid

0

templategroupid

1

tags

None

templategroupname

Default

posts

{'post': {'id': '***', 'ticketpostid': '***', 'ticketid': '***', 'dateline': '1670974143', 'userid': '***', 'fullname': 'test', 'email': 'test@example.com', 'emailto': None, 'ipaddress': '2.2.2.2', 'hasattachments': '0', 'creator': '2', 'isthirdparty': '0', 'ishtml': '0', 'isemailed': '0', 'staffid': '0', 'issurveycomment': '0', 'contents': 'content test1201', 'isprivate': '0'}}

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Create Ticket failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: User ID Not Found.

Error Sample Data

Create Ticket failed.

Status Code: 404.

Message: User ID Not Found.

Create Ticket Time Track Note

Adds a new time tracking note to a ticket.

Reader Note

Ticket ID and Staff ID are required parameters to run this command.

  • Run the List Tickets command to obtain Ticket IDs. 

  • Run the List Staff command to obtain Staff IDs.

Worker Staff IDs is an optional parameter to run this command.

  • Run the List Staff command to obtain Worker Staff IDs.

Input

Input Parameter

Required/Optional

Description

Example

Ticket ID

Required

The ID of the ticket to add a time tracking note. Ticket IDs can be obtained using the List Tickets command.

5***

Contents

Required

The contents of the time tracking note.

Time track comment on 20221130 evening

Staff ID

Required

The staff ID of the time tracking note’s creator. Staff IDs can be obtained using the List Staff command.

153

Work Time

Required

The timestamp of when the work item was executed.

2022-11-28 00:00

Bill Time

Required

The timestamp of when to bill the use.

2022-11-29 00:00

Time Spent

Required

The amount of time spent on the ticket (in seconds).

3600

Time Billable

Required

The amount of billable time (in seconds).

1800

Worker Staff ID

Optional

The ID of the worker creating the entry. If this parameter is not defined, the ID of the staff user creating this entry will be used by default. Worker Staff IDs can be obtained using the List Staff command.

123

Note Color

Optional

The color of the time tracking note on the Kayako Classic user interface. The available note colors are Yellow, Purple, Blue, Green and Red. If this parameter is not defined, the default note color will be Yellow.

Green

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<timetracks>
<timetrack id="***" ticketid="***" timeworked="3600" timebillable="1800" billdate="1669680000" workdate="1669593600" workerstaffid="123" workerstaffname="Gaurav Mehta" creatorstaffid="123" creatorstaffname="Test User" notecolor="4"><![CDATA[Time track comment on 20221213 evening]]></timetrack>
</timetracks>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "timetracks": {
        "timetrack": {
            "@id": "*****",
            "@ticketid": "*****",
            "@timeworked": "3600",
            "@timebillable": "1800",
            "@billdate": "1669680000",
            "@workdate": "1669593600",
            "@workerstaffid": "123",
            "@workerstaffname": "Gaurav Mehta",
            "@creatorstaffid": "123",
            "@creatorstaffname": "Test User",
            "@notecolor": "4",
            "#text": "Time track comment on 20221213 evening"
        }
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "TimeTrackID": *****,
    "TicketID": *****,
    "Contents": "Time track comment on 20221213 evening"
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

timetracks

{'timetrack': {'@id': '*****', '@ticketid': '*****', '@timeworked': '3600', '@timebillable': '1800', '@billdate': '1669680000', '@workdate': '1669593600', '@workerstaffid': '123', '@workerstaffname': 'Gaurav Mehta', '@creatorstaffid': '123', '@creatorstaffname': 'Test User', '@notecolor': '4', '#text': 'Time track comment on 20221213 evening'}}

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Create Ticket Time Track Note failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: Ticket ID Not Found.

Error Sample Data

Create Ticket Time Track Note failed.

Status Code: 404.

Message: Ticket ID Not Found.

Delete Ticket Time Track Note

Deletes the ticket time tracking note identified by Time Track ID linked to the Ticket ID.

Reader Note

Ticket ID and Time Track ID are required parameters to run this command.

  • Run the List Tickets command to obtain Ticket IDs. 

  • Run the Get Ticket Time Track Notes List command to obtain Time Track IDs. The Time Track IDs can be found in the returned raw data, at the path return$.timetrack.[*].id

  • It is suggested to run the List Tickets command first to get your desired ticket ID first, then the ID to run the Get Ticket Time Track Notes List command. Finally, use the obtained Ticket ID and Time Track ID to run the Delete Ticket Time Track Note command.

Input

Input Parameter

Required/Optional

Description

Example

Ticket ID

Required

The ID of the ticket linked to the time tracking note to delete. Ticket IDs can be obtained using the List Tickets command.

5***

Time Track ID

Required

The ID of the ticket time tracking note to delete. Time Track IDs can be obtained using the Get Ticket Time Track Notes List command.

10

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<timetracks>
<timetrack id="***" ticketid="***" timeworked="2000" timebillable="1000" billdate="1669852800" workdate="1669852800" workerstaffid="123" workerstaffname="Test User" creatorstaffid="123" creatorstaffname="Test User" notecolor="1"><![CDATA[test]]></timetrack>
</timetracks><?xml version="1.0" encoding="UTF-8"?>
<timetracks>
<timetrack id="***" ticketid="***" timeworked="2000" timebillable="1000" billdate="1669852800" workdate="1669852800" workerstaffid="123" workerstaffname="Tets User" creatorstaffid="123" creatorstaffname="Test User" notecolor="1"><![CDATA[test]]></timetrack>
</timetracks>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "timetracks": {
        "timetrack": [
            {
                "@id": "***",
                "@ticketid": "***",
                "@timeworked": "2000",
                "@timebillable": "1000",
                "@billdate": "1669852800",
                "@workdate": "1669852800",
                "@workerstaffid": "123",
                "@workerstaffname": "Test User",
                "@creatorstaffid": "123",
                "@creatorstaffname": "Test User",
                "@notecolor": "1",
                "#text": "Test"
            }
        ]
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "TimeTrackIDs": [
        "***",
        "***",
        "***"
    ],
    "TicketIDs": [
        "***",
        "***",
        "***"
    ],
    "Contents": [
        "***",
        "Time track comment on 20221201 evening",
        "Time track comment on 20221213 evening"
    ]
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

timetracks

{'timetrack': [{'@id': '***', '@ticketid': '***', '@timeworked': '2000', '@timebillable': '1000', '@billdate': '1669852800', '@workdate': '1669852800', '@workerstaffid': '123', '@workerstaffname': 'Test User', '@creatorstaffid': '123', '@creatorstaffname': 'Test User', '@notecolor': '1', '#text': 'Jon'}]}

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Delete Ticket Time Track Note failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: Ticket ID Not Found.

Error Sample Data

Delete Ticket Time Track Note failed.

Status Code: 404.

Message: Ticket ID Not Found.

Get Ticket

Retrieves the ticket identified by ticket ID.

Reader Note

Ticket ID is a required parameter to run this command.

  • Run the List Tickets command to obtain Ticket IDs.

Input

Input Parameter

Required/Optional

Description

Example

Ticket ID

Required

The ID of the ticket to retrieve. Ticket IDs can be obtained using the List Tickets command.

5*****

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<tickets>
<ticket id="5*****" flagtype="0">
<displayid><![CDATA[HVM-*****]]></displayid>
<departmentid><![CDATA[*****]></departmentid>
<statusid><![CDATA[*****]]></statusid>
<priorityid><![CDATA[*****]]></priorityid>
<typeid><![CDATA[10]]></typeid>
<userid><![CDATA[123]]></userid>
<userorganization />
<userorganizationid />
<ownerstaffid><![CDATA[123]]></ownerstaffid>
<ownerstaffname><![CDATA[Test User]]></ownerstaffname>
<fullname><![CDATA[testuser]]></fullname>
<email><![CDATA[test@example.com]]></email>
<lastreplier><![CDATA[test]]></lastreplier>
<subject><![CDATA[test]]></subject>
<creationtime><![CDATA[1669843301]]></creationtime>
<lastactivity><![CDATA[1669852803]]></lastactivity>
<laststaffreply><![CDATA[0]]></laststaffreply>
<lastuserreply><![CDATA[*****]]></lastuserreply>
<slaplanid><![CDATA[0]]></slaplanid>
<nextreplydue><![CDATA[1672363301]]></nextreplydue>
<resolutiondue><![CDATA[1672867301]]></resolutiondue>
<replies><![CDATA[0]]></replies>
<ipaddress><![CDATA[2.2.2.2]]></ipaddress>
<creator><![CDATA[2]]></creator>
<creationmode><![CDATA[4]]></creationmode>
<creationtype><![CDATA[1]]></creationtype>
<isescalated><![CDATA[0]]></isescalated>
<escalationruleid><![CDATA[0]]></escalationruleid>
<templategroupid><![CDATA[1]]></templategroupid>
<tags />
<templategroupname><![CDATA[Default]]></templategroupname>
<posts>
<post>
<id><![CDATA[*****]]></id>
<ticketpostid><![CDATA[*****]]></ticketpostid>
<ticketid><![CDATA[*****]]></ticketid>
<dateline><![CDATA[1669843301]]></dateline>
<userid><![CDATA[123]]></userid>
<fullname><![CDATA[test]]></fullname>
<email><![CDATA[test@example.com]]></email>
<emailto />
<ipaddress><![CDATA[2.3.4.5]]></ipaddress>
<hasattachments><![CDATA[0]]></hasattachments>
<creator><![CDATA[2]]></creator>
<isthirdparty><![CDATA[0]]></isthirdparty>
<ishtml><![CDATA[0]]></ishtml>
<isemailed><![CDATA[0]]></isemailed>
<staffid><![CDATA[0]]></staffid>
<issurveycomment><![CDATA[0]]></issurveycomment>
<contents><![CDATA[content test]]></contents>
<isprivate><![CDATA[0]]></isprivate>
</post>
</posts>
</ticket>
</tickets>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "tickets": {
        "ticket": {
            "@id": "***",
            "@flagtype": "0",
            "displayid": "HVM-***",
            "departmentid": "20",
            "statusid": "***",
            "priorityid": "***",
            "typeid": "10",
            "userid": "123",
            "userorganization": null,
            "userorganizationid": null,
            "ownerstaffid": "123",
            "ownerstaffname": "Test User",
            "fullname": "test",
            "email": "test@example.com",
            "lastreplier": "tset",
            "subject": "tset",
            "creationtime": "1669843301",
            "lastactivity": "1669852803",
            "laststaffreply": "0",
            "lastuserreply": "1669843301",
            "slaplanid": "0",
            "nextreplydue": "1672363301",
            "resolutiondue": "1672867301",
            "replies": "0",
            "ipaddress": "24.85.223.254",
            "creator": "2",
            "creationmode": "4",
            "creationtype": "1",
            "isescalated": "0",
            "escalationruleid": "0",
            "templategroupid": "1",
            "tags": null,
            "templategroupname": "Default",
            "posts": {
                "post": {
                    "id": "*****",
                    "ticketpostid": "*****",
                    "ticketid": "****",
                    "dateline": "1669843301",
                    "userid": "123",
                    "fullname": "test",
                    "email": "test@example.com",
                    "emailto": null,
                    "ipaddress": "2.2.2.2",
                    "hasattachments": "0",
                    "creator": "2",
                    "isthirdparty": "0",
                    "ishtml": "0",
                    "isemailed": "0",
                    "staffid": "0",
                    "issurveycomment": "0",
                    "contents": "content test",
                    "isprivate": "0"
                }
            }
        }
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "TicketDisplayID": "HVM-*****",
    "DepartmentID": 10,
    "UserID": 123,
    "Subject": "*****",
    "Owner": "Test User",
    "TicketID": *****
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

@id

5*****

@flagtype

0

displayid

HVM-*****

departmentid

10

statusid

***

priorityid

***

typeid

10

userid

123

userorganization

None

userorganizationid

None

ownerstaffid

123

ownerstaffname

Test User

fullname

test

email

test@example.com

lastreplier

test

subject

test

creationtime

1669843301

lastactivity

1669852803

laststaffreply

0

lastuserreply

1669843301

slaplanid

0

nextreplydue

1672363301

resolutiondue

1672867301

replies

0

ipaddress

2.2.2.2

creator

2

creationmode

4

creationtype

1

isescalated

0

escalationruleid

0

templategroupid

1

tags

None

templategroupname

Default

posts

{'post': {'id': '***', 'ticketpostid': '***', 'ticketid': '538', 'dateline': '1669843301', 'userid': '123', 'fullname': 'test', 'email': 'test@example.com', 'emailto': None, 'ipaddress': '2.3.4.5', 'hasattachments': '0', 'creator': '2', 'isthirdparty': '0', 'ishtml': '0', 'isemailed': '0', 'staffid': '0', 'issurveycomment': '0', 'contents': 'content test', 'isprivate': '0'}}

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Get Ticket failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: Ticket ID Not Found.

Error Sample Data

Get Ticket failed.

Status Code: 404.

Message: Ticket ID Not Found.

Get Ticket Custom Fields

Retrieve a list of the specified ticket's custom fields.

Reader Note

Ticket ID is a required parameter to run this command.

  • Run the List Tickets command to obtain Ticket IDs.

Input

Input Parameter

Required/Optional

Description

Example

Ticket ID

Required

The ID of the ticket to return its corresponding custom fields from. Ticket IDs can be obtained using the List Tickets command.

5***

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<customfields>
<group id="***" title="D3 SOAR" displayorder="1">
<field id="***" title="Action Plan" type="1" name="***"><![CDATA[restart machine]]></field>
<field id="***" title="Priority" type="1" name="***"><![CDATA[low]]></field>
</group>
<group id="***" title="ProductsDetails" displayorder="2">
</group>
<group id="***" title="Information" displayorder="9">
<field id="***" title="Detail" type="6" name="*****"><![CDATA[*****]]></field>
<field id="***" title="InformationCustomField" type="1" name="*****" />
<field id="***" title="Produits" type="6" name="*****" />
<field id="***" title="AmiVersions" type="6" name="*****" />
<field id="***" title="MediaSpeechVersions" type="6" name="*****" />
</group>
</customfields>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "customfields": {
        "group": [
            {
                "@id": "***",
                "@title": "D3 SOAR",
                "@displayorder": "1",
                "field": [
                    {
                        "@id": "***",
                        "@title": "Action Plan",
                        "@type": "1",
                        "@name": "******",
                        "#text": "restart machine"
                    },
                    {
                        "@id": "***",
                        "@title": "Priority",
                        "@type": "1",
                        "@name": "*****",
                        "#text": "low"
                    }
                ]
            },
            {
                "@id": "***",
                "@title": "*****",
                "@displayorder": "2"
            },
            {
                "@id": "***",
                "@title": "Information",
                "@displayorder": "9",
                "field": [
                    {
                        "@id": "***",
                        "@title": "Detail",
                        "@type": "6",
                        "@name": "*****",
                        "#text": "******"
                    },
                    {
                        "@id": "***",
                        "@title": "*****",
                        "@type": "1",
                        "@name": "******"
                    }
                ]
            }
        ]
    }
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

customfields

{'group': [{'@id': '14', '@title': 'D3 SOAR', '@displayorder': '1', 'field': [{'@id': '***', '@title': 'Action Plan', '@type': '1', '@name': '****', '#text': 'restart machine'}, {'@id': '***', '@title': 'Priority', '@type': '1', '@name': '****', '#text': 'low'}]}]}]}

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Get Ticket Custom Fields failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: Ticket ID Not Found.

Error Sample Data

Get Ticket Custom Fields failed.

Status Code: 404.

Message: Ticket ID Not Found.

Get Ticket Time Track Note

Retrieves the time tracking note identified by Time Track ID that belongs to a ticket identified by Ticket ID.

Reader Note

Ticket ID and Time Track ID are required parameters to run this command.

  • Run the List Tickets command to obtain Ticket IDs. 

  • Run the Get Ticket Time Track Notes List command to obtain Time Track IDs. The Time Track IDs can be found in the returned raw data, at the path return$.timetrack.[*].id

  • It is suggested to run the List Tickets command first to get your desired ticket ID first, then the ID to run the Get Ticket Time Track Notes List command. Finally, use the obtained Ticket ID and Time Track ID to run the Get Ticket Time Track Note command.

Input

Input Parameter

Required/Optional

Description

Example

Ticket ID

Required

The ID of the ticket to retrieve its corresponding time tracking note from. Ticket IDs can be obtained using the List Tickets command.

5***

Time Track ID

Required

The ID of the time tracking note to retrieve. Time Track IDs can be obtained using the Get Ticket Time Track Notes List command.

10

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<timetracks>
<timetrack id="***" ticketid="***" timeworked="3600" timebillable="1800" billdate="1669852800" workdate="1669852800" workerstaffid="123" workerstaffname="Test User" creatorstaffid="123" creatorstaffname="Test User" notecolor="3"><![CDATA[Time track comment goes here Blue]]></timetrack>
</timetracks>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "timetracks": {
        "timetrack": {
            "@id": "***",
            "@ticketid": "***",
            "@timeworked": "3600",
            "@timebillable": "1800",
            "@billdate": "1669852800",
            "@workdate": "1669852800",
            "@workerstaffid": "123",
            "@workerstaffname": "Test User",
            "@creatorstaffid": "123",
            "@creatorstaffname": "Test User",
            "@notecolor": "3",
            "#text": "Time track comment goes here Blue"
        }
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "TimeTrackID": ***,
    "TicketID": ***,
    "Contents": "Time track comment goes here Blue"
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

timetracks

{'timetrack': {'@id': '***', '@ticketid': '***', '@timeworked': '3600', '@timebillable': '1800', '@billdate': '1669852800', '@workdate': '1669852800', '@workerstaffid': '123', '@workerstaffname': 'Test User', '@creatorstaffid': '123', '@creatorstaffname': 'Test User', '@notecolor': '3', '#text': 'Time track comment goes here Blue'}}

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Get Ticket Time Track Note failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: Ticket ID Not Found.

Error Sample Data

Get Ticket Time Track Note failed.

Status Code: 404.

Message: Ticket ID Not Found.

Get Ticket Time Track Notes List

Retrieves a list of a ticket's time track notes.

Reader Note

Ticket ID is a required parameter to run this command.

  • Run the List Tickets command to obtain Ticket IDs.

Input

Input Parameter

Required/Optional

Description

Example

Ticket ID

Required

The ID of the ticket to retrieve its corresponding time tracking notes from. Ticket IDs can be obtained using the List Tickets command.

5***

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<timetracks>
<timetrack id="***" ticketid="5***" timeworked="3600" timebillable="1800" billdate="1669852800" workdate="1669852800" workerstaffid="123" workerstaffname="Test User" creatorstaffid="123" creatorstaffname="Test User" notecolor="3">
<![CDATA[Time track comment goes here Blue]]>
</timetrack>
<timetrack id="***" ticketid="5***" timeworked="3600" timebillable="1800" billdate="1669852800" workdate="1669852800" workerstaffid="123" workerstaffname="Test User" creatorstaffid="123" creatorstaffname="Test User" notecolor="4">
<![CDATA[Time track comment on 20221130 evening]]>
</timetrack>
</timetracks>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "timetracks": {
        "timetrack": [
            {
                "@id": "***",
                "@ticketid": "***",
                "@timeworked": "3600",
                "@timebillable": "1800",
                "@billdate": "1669852800",
                "@workdate": "1669852800",
                "@workerstaffid": "123",
                "@workerstaffname": "Test User",
                "@creatorstaffid": "123",
                "@creatorstaffname": "Test User",
                "@notecolor": "3",
                "#text": "Time track comment goes here Blue"
            }
        ]
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "TimeTrackIDs": [
        "***",
        "***"
    ],
    "TicketIDs": [
        "***",
        "***"
    ],
    "Contents": [
        "Time track comment goes here Blue",
        "Time track comment on 20221130 evening"
    ]
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

CODE
No Sample Data

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Get Ticket Time Track Notes List failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: Ticket ID Not Found.

Error Sample Data

Get Ticket Time Track Notes List failed.

Status Code: 404.

Message: Ticket ID Not Found.

List Departments

Retrieve a list of all departments and sub-departments in the help desk.

Input

N/A

Output

Raw Data

The primary response data from the API request.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<departments>
<department>
<id>
<![CDATA[***]]>
</id>
<title>
<![CDATA[AMI EI]]>
</title>
<type>
<![CDATA[private]]>
</type>
<module>
<![CDATA[tickets]]>
</module>
<app>
<![CDATA[tickets]]>
</app>
<displayorder>
<![CDATA[1]]>
</displayorder>
<parentdepartmentid>
<![CDATA[0]]>
</parentdepartmentid>
<uservisibilitycustom>
<![CDATA[0]]>
</uservisibilitycustom>
<usergroups></usergroups>
</department>
</departments>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "departments": {
        "department": [
            {
                "id": "***",
                "title": "AMI EI",
                "type": "private",
                "module": "tickets",
                "app": "tickets",
                "displayorder": "1",
                "parentdepartmentid": "0",
                "uservisibilitycustom": "0",
                "usergroups": null
            }
        ]
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "DepartmentTitles": [
        "AMI EI"
    ],
    "DepartmentIDs": [
        "***"
    ],
    "ParentDepartmentIDs": [
        "0"
    ],
    "DepartmentTypes": [
        "private"
    ]
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

ID

TITLE

TYPE

MODULE

APP

DISPLAYORDER

PARENTDEPARTMENTID

USERVISIBILITYCUSTOM

USERGROUPS

***

AMI EI

private

tickets

tickets

1

0

0

None

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

List Departments failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 403.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: An existing connection was forcibly closed by the remote host.

Error Sample Data

List Departments failed.

Status Code: 403.

Message: An existing connection was forcibly closed by the remote host.

List Staff

Retrieves a list of all staff users in the help desk.

Input

N/A

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<staffusers>
<staff>
<id><![CDATA[***]]></id>
<staffgroupid><![CDATA[10]]></staffgroupid>
<firstname><![CDATA[test]]></firstname>
<lastname><![CDATA[user]]></lastname>
<fullname><![CDATA[test user]]></fullname>
<username><![CDATA[test1]]></username>
<email><![CDATA[test1@example.co.uk]]></email>
<designation />
<greeting />
<mobilenumber />
<isenabled><![CDATA[1]]></isenabled>
<timezone />
<enabledst><![CDATA[0]]></enabledst>
<signature />
</staff>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "staffusers": {
        "staff": [
            {
                "id": "***",
                "staffgroupid": "***",
                "firstname": "Test",
                "lastname": "User",
                "fullname": "Test User",
                "username": "test1",
                "email": "test1@example.co.uk",
                "designation": null,
                "greeting": null,
                "mobilenumber": null,
                "isenabled": "1",
                "timezone": null,
                "enabledst": "0",
                "signature": null
            }
        ]
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "StaffFullNames": [
        "Test User"
    ],
    "StaffIDs": [
        "***"
    ],
    "StaffEmails": [
        "test1@example.co.uk"
    ],
    "StaffUserNames": [
        "test"
    ],
    "StaffGroupIDs": [
        "10"
    ]
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

ID

STAFFGROUPID

FIRSTNAME

LASTNAME

FULLNAME

USERNAME

EMAIL

DESIGNATION

GREETING

MOBILENUMBER

ISENABLED

TIMEZONE

ENABLEDST

SIGNATURE

***

10

Test

User

Test User

test1

tset1@example.co.uk

None

None

None

1

None

0

None

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

List Staff failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 403.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: An existing connection was forcibly closed by the remote host.

Error Sample Data

List Staff failed.

Status Code: 403.

Message: An existing connection was forcibly closed by the remote host.

List Tickets

Retrieves a filtered list of tickets from the help desk. The returned tickets are ordered by Ticket ID in descending order.

Reader Note

The input parameter Department IDs is required to run this command.

  • Run the List Departments command to obtain Department IDs.

Owner Staff IDs and User IDs are optional parameters to run this command.

  • Run the List Staff command to obtain Owner Staff IDs.

  • Run the List Users command to obtain the User IDs.

Input

Input Parameter

Required/Optional

Description

Example

Department IDs

Required

A comma-separated list of ID(s) of the department(s) to filter tickets. Department IDs can be obtained using the List Departments command.

[

2,

3

]

Ticket Status

Optional

The ticket status to filter returned tickets. If this parameter is not defined, tickets of all statuses will be returned.

NEW(NOUVEAU)

Owner Staff IDs

Optional

A comma-separated list of ID(s) of the ticket owner(s) to filter tickets. Owner Staff IDs can be obtained using the List Staff command.

[

100,

70

]

User IDs

Optional

A comma-separated list of ID(s) of the user(s) to filter tickets. User IDs can be obtained using the List Users command.

[

123

]

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<tickets>
<ticket id="***" flagtype="0">
<displayid><![CDATA[*****]]></displayid>
<departmentid><![CDATA[***]]></departmentid>
<statusid><![CDATA[***]]></statusid>
<priorityid><![CDATA[***]]></priorityid>
<typeid><![CDATA[11]]></typeid>
<userid><![CDATA[123]]></userid>
<userorganization />
<userorganizationid />
<ownerstaffid><![CDATA[123]]></ownerstaffid>
<ownerstaffname><![CDATA[Test User]]></ownerstaffname>
<fullname><![CDATA[test]]></fullname>
<email><![CDATA[test@example.com]]></email>
<lastreplier><![CDATA[test]]></lastreplier>
<subject><![CDATA[test]]></subject>
<creationtime><![CDATA[1669840535]]></creationtime>
<lastactivity><![CDATA[1669840535]]></lastactivity>
<laststaffreply><![CDATA[0]]></laststaffreply>
<lastuserreply><![CDATA[1669840535]]></lastuserreply>
<slaplanid><![CDATA[0]]></slaplanid>
<nextreplydue><![CDATA[1672360535]]></nextreplydue>
<resolutiondue><![CDATA[1672864535]]></resolutiondue>
<replies><![CDATA[0]]></replies>
<ipaddress><![CDATA[2.2.2.2]]></ipaddress>
<creator><![CDATA[2]]></creator>
<creationmode><![CDATA[4]]></creationmode>
<creationtype><![CDATA[1]]></creationtype>
<isescalated><![CDATA[0]]></isescalated>
<escalationruleid><![CDATA[0]]></escalationruleid>
<templategroupid><![CDATA[1]]></templategroupid>
<tags />
</ticket>
<ticket id="***" flagtype="0">
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "tickets": {
        "ticket": [
            {
                "@id": "***",
                "@flagtype": "0",
                "displayid": "*****",
                "departmentid": "***",
                "statusid": "***",
                "priorityid": "***",
                "typeid": "11",
                "userid": "123",
                "userorganization": null,
                "userorganizationid": null,
                "ownerstaffid": "123",
                "ownerstaffname": "Test User",
                "fullname": "test",
                "email": "test@example.com",
                "lastreplier": "tset",
                "subject": "test",
                "creationtime": "1669840535",
                "lastactivity": "1669840535",
                "laststaffreply": "0",
                "lastuserreply": "1669840535",
                "slaplanid": "0",
                "nextreplydue": "1672360535",
                "resolutiondue": "1672864535",
                "replies": "0",
                "ipaddress": "2.2.2.2",
                "creator": "2",
                "creationmode": "4",
                "creationtype": "1",
                "isescalated": "0",
                "escalationruleid": "0",
                "templategroupid": "1",
                "tags": null,
                "templategroupname": "Default",
                "workflow": [
                    {
                        "@id": "1",
                        "@title": "Close ticket"
                    },
                    {
                        "@id": "5",
                        "@title": "test"
                    },
                    {
                        "@id": "6",
                        "@title": "test"
                    },
                    {
                        "@id": "7",
                        "@title": "test"
                    },
                    {
                        "@id": "12",
                        "@title": "test"
                    }
                ]
            }
        ]
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "TicketDisplayIDs": [
        "*****",
        "*****"
    ],
    "DepartmentIDs": "33\",\r\n\"33\"\r\n]",
    "UserIDs": [
        "123",
        "123"
    ],
    "Subjects": [
        "test",
        "test"
    ],
    "Owners": [
        "Test User",
        "Test User"
    ],
    "TicketIDs": [
        "***",
        "***"
    ]
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

@ID

@FLAGTYPE

DISPLAYID

DEPARTMENTID

STATUSID

PRIORITYID

TYPEID

USERID

USERORGANIZATION

USERORGANIZATIONID

OWNERSTAFFID

OWNERSTAFFNAME

FULLNAME

EMAIL

LASTREPLIER

SUBJECT

CREATIONTIME

LASTACTIVITY

LASTSTAFFREPLY

LASTUSERREPLY

SLAPLANID

NEXTREPLYDUE

RESOLUTIONDUE

REPLIES

IPADDRESS

CREATOR

CREATIONMODE

CREATIONTYPE

ISESCALATED

ESCALATIONRULEID

TEMPLATEGROUPID

TAGS

TEMPLATEGROUPNAME

WORKFLOW

***

0

***

***

1

***

11

123

None

None

123

Test User

test

test@example.com

test

test

1669840535

1669840535

0

1669840535

0

1672360535

1672864535

0

24.85.223.254

2

4

1

0

0

1

None

Default

[{'@id': '1', '@title': 'Close ticket'}, {'@id': '5', '@title': 'test'}, {'@id': '6', '@title': 'test'}, {'@id': '7', '@title': 'tset'}, {'@id': '12', '@title': 'tset'}]

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

List Tickets failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: User ID Not Found.

Error Sample Data

List Tickets failed.

Status Code: 404.

Message: User ID Not Found.

List Users

Retrieves a list of all users in the help desk starting from a marker (user ID) until the specified fetch limit is reached (1,000 by default).

Reader Note

If no input parameters are defined, all users will be returned.

Input

Input Parameter

Required/Optional

Description

Example

Marker User ID

Optional

The ID of the marker user. User IDs with values greater than the marker user ID will be returned, subject to the defined Limit value. For example, if the defined Marker User ID is 100, user IDs with values greater than 100 will be returned.

100

Limit

Optional

The maximum number of users to return.

2

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<users>
<user>
<id><![CDATA[100]]></id>
<usergroupid><![CDATA[***]]></usergroupid>
<userrole><![CDATA[user]]></userrole>
<userorganizationid />
<salutation />
<userexpiry><![CDATA[0]]></userexpiry>
<fullname><![CDATA[Test User]]></fullname>
<email><![CDATA[test.user@example.com]]></email>
<designation />
<phone />
<dateline><![CDATA[1658229211]]></dateline>
<lastvisit><![CDATA[0]]></lastvisit>
<isenabled><![CDATA[1]]></isenabled>
<timezone />
<enabledst><![CDATA[0]]></enabledst>
<slaplanid><![CDATA[0]]></slaplanid>
<slaplanexpiry><![CDATA[0]]></slaplanexpiry>
</user>
</users>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "users": {
        "user": [
            {
                "id": "***",
                "usergroupid": "2",
                "userrole": "user",
                "userorganizationid": null,
                "salutation": null,
                "userexpiry": "0",
                "fullname": "Test User",
                "email": "test.user@example.com",
                "designation": null,
                "phone": null,
                "dateline": "1658229211",
                "lastvisit": "0",
                "isenabled": "1",
                "timezone": null,
                "enabledst": "0",
                "slaplanid": "0",
                "slaplanexpiry": "0"
            }
        ]
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "UserFullNames": [
        "Test User",
        "test.user@example.nl"
    ],
    "UserIDs": [
        "100",
        "101"
    ],
    "UserEmails": [
        "test.user@example.com",
        "test1.user@example.nl"
    ],
    "UserRoles": [
        "user",
        "user"
    ],
    "UserGroupIDs": [
        "2",
        "2"
    ]
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

ID

USERGROUPID

USERROLE

USERORGANIZATIONID

SALUTATION

USEREXPIRY

FULLNAME

EMAIL

DESIGNATION

PHONE

DATELINE

LASTVISIT

ISENABLED

TIMEZONE

ENABLEDST

SLAPLANID

SLAPLANEXPIRY

100

2

user

None

None

0

Test User

test.user@example.com

None

None

1658229211

0

1

None

0

0

0

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

List Users failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 403.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: An existing connection was forcibly closed by the remote host.

Error Sample Data

List Users failed.

Status Code: 403.

Message: An existing connection was forcibly closed by the remote host.

Update Ticket

Updates the specified ticket.

Reader Note

  • Ticket ID is a required parameter to run this command

    • Run the List Tickets command to obtain Ticket IDs

  • Department ID, Owner Staff ID and User ID are optional parameters to run this command.

    • Run the List Departments command to obtain Department IDs.

    • Run the List Staff command to obtain Staff IDs or Ownerstaff IDs.

    • Run the List Users command to obtain User IDs.

  • Template Group is an optional parameter to run this command. It can be added from the Kayako Classic user interface. On the left sidebar menu, navigate to OPTIONS > Templates > Groups, then click + New.

Input

Input Parameter

Required/Optional

Description

Example

Ticket ID

Required

The ID of the ticket to update. Ticket IDs can be obtained using the List Tickets command.

5***

Subject

Optional

The updated subject of the ticket.

test1130NEW

Fullname

Optional

The updated full name of the ticket creator.

test

Email

Optional

The updated email address of the ticket creator.

test@example.com

Department ID

Optional

The updated department ID to associate the ticket with. Department IDs can be obtained using the List Departments command.

20

Ticket Status

Optional

The updated status of the ticket. The available ticket statuses are NEW(NOUVEAU), IN PROGRESS, CLOSED, WAITING FOR CUSTOMER, READY TO DELIVER, and DELIVERED.

WAITING FOR CUSTOMER

Ticket Priority

Optional

The updated priority of the ticket. The available ticket priorities are BLOCKING(BLOQUANT), MAJOR(Majeur) and MINOR(Mineur).

Major(Majeur)

Ticket Type

Optional

The updated ticket type to assign. The available ticket types are Assistance, Topic, Maintenance, Issue and Follow Up.

Maintenance

Owner Staff ID

Optional

The updated owner staff ID of the ticket owner. Staff IDs can be obtained using the List Staff command.

152

User ID

Optional

The updated ID of the ticket user. User IDs can be obtained using the List Users command.

134

Template Group

Optional

The ID or name of the custom template group to associate the ticket with. Template group names can be obtained on the Kayako Classic user interface. On the left sidebar menu, navigate to OPTIONS > Templates > Groups, then click + New. The default template group is used by default.

Note: This parameter is only available from version 4.40.954 of Kayako Classic and onwards.

Default

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<tickets>
<ticket id="***" flagtype="0">
<displayid><![CDATA[IEF-724-61294]]></displayid>
<departmentid><![CDATA[20]]></departmentid>
<statusid><![CDATA[4]]></statusid>
<priorityid><![CDATA[***]]></priorityid>
<typeid><![CDATA[10]]></typeid>
<userid><![CDATA[123]]></userid>
<userorganization />
<userorganizationid />
<ownerstaffid><![CDATA[123]]></ownerstaffid>
<ownerstaffname><![CDATA[Thanh Trilogy]]></ownerstaffname>
<fullname><![CDATA[test]]></fullname>
<email><![CDATA[test@example.com]]></email>
<lastreplier><![CDATA[test]]></lastreplier>
<subject><![CDATA[test]]></subject>
<creationtime><![CDATA[1669852836]]></creationtime>
<lastactivity><![CDATA[1670976087]]></lastactivity>
<laststaffreply><![CDATA[0]]></laststaffreply>
<lastuserreply><![CDATA[1669852836]]></lastuserreply>
<slaplanid><![CDATA[0]]></slaplanid>
<nextreplydue><![CDATA[1672372836]]></nextreplydue>
<resolutiondue><![CDATA[1672876836]]></resolutiondue>
<replies><![CDATA[0]]></replies>
<ipaddress><![CDATA[2.2.2.2]]></ipaddress>
<creator><![CDATA[2]]></creator>
<creationmode><![CDATA[4]]></creationmode>
<creationtype><![CDATA[1]]></creationtype>
<isescalated><![CDATA[0]]></isescalated>
<escalationruleid><![CDATA[0]]></escalationruleid>
<templategroupid><![CDATA[1]]></templategroupid>
<tags />
<templategroupname><![CDATA[Default]]></templategroupname>
<note type="timetrack" id="***" ticketid="***" timeworked="3600" timebillable="1800" billdate="1669852800" workdate="1669852800" workerstaffid="123" workerstaffname="Test User" creatorstaffid="123" creatorstaffname="Test User" notecolor="3"><![CDATA[Time track comment goes here Blue]]></note>
<note type="timetrack" id="***" ticketid="**" timeworked="2000" timebillable="1000" billdate="1669852800" workdate="1669852800" workerstaffid="123" workerstaffname="Test1 User" creatorstaffid="123" creatorstaffname="Test User" notecolor="1"><![CDATA[Jon]]></note>
<note type="timetrack" id="***" ticketid="**" timeworked="3600" timebillable="1800" billdate="1669852800" workdate="1669852800" workerstaffid="123" workerstaffname="Test2 User5" creatorstaffid="123" creatorstaffname="Test User" notecolor="4"><![CDATA[Time track comment on 20221201 evening]]></note>
<posts>
<post>
<id><![CDATA[***]]></id>
<ticketpostid><![CDATA[***]]></ticketpostid>
<ticketid><![CDATA[***]]></ticketid>
<dateline><![CDATA[1669852836]]></dateline>
<userid><![CDATA[123]]></userid>
<fullname><![CDATA[test]]></fullname>
<email><![CDATA[test@example.com]]></email>
<emailto />
<ipaddress><![CDATA[2.2.2.2]]></ipaddress>
<hasattachments><![CDATA[0]]></hasattachments>
<creator><![CDATA[2]]></creator>
<isthirdparty><![CDATA[0]]></isthirdparty>
<ishtml><![CDATA[0]]></ishtml>
<isemailed><![CDATA[0]]></isemailed>
<staffid><![CDATA[0]]></staffid>
<issurveycomment><![CDATA[0]]></issurveycomment>
<contents><![CDATA[content test]]></contents>
<isprivate><![CDATA[0]]></isprivate>
</post>
</posts>
</ticket>
</tickets>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "tickets": {
        "ticket": {
            "@id": "***",
            "@flagtype": "0",
            "displayid": "*****",
            "departmentid": "20",
            "statusid": "***",
            "priorityid": "***",
            "typeid": "10",
            "userid": "123",
            "userorganization": null,
            "userorganizationid": null,
            "ownerstaffid": "123",
            "ownerstaffname": "Test User",
            "fullname": "test",
            "email": "test@example.com",
            "lastreplier": "test",
            "subject": "test",
            "creationtime": "1669852836",
            "lastactivity": "1670976087",
            "laststaffreply": "0",
            "lastuserreply": "1669852836",
            "slaplanid": "0",
            "nextreplydue": "1672372836",
            "resolutiondue": "1672876836",
            "replies": "0",
            "ipaddress": "2.2.2.2",
            "creator": "2",
            "creationmode": "4",
            "creationtype": "1",
            "isescalated": "0",
            "escalationruleid": "0",
            "templategroupid": "1",
            "tags": null,
            "templategroupname": "Default",
            "note": [
                {
                    "@type": "timetrack",
                    "@id": "***",
                    "@ticketid": "***",
                    "@timeworked": "3600",
                    "@timebillable": "1800",
                    "@billdate": "1669852800",
                    "@workdate": "1669852800",
                    "@workerstaffid": "123",
                    "@workerstaffname": "Test User",
                    "@creatorstaffid": "123",
                    "@creatorstaffname": "Test User",
                    "@notecolor": "3",
                    "#text": "Time track comment goes here Blue"
                }
            ],
            "posts": {
                "post": {
                    "id": "***",
                    "ticketpostid": "***",
                    "ticketid": "***",
                    "dateline": "1669852836",
                    "userid": "123",
                    "fullname": "test",
                    "email": "test@example.com",
                    "emailto": null,
                    "ipaddress": "2.2.2.2",
                    "hasattachments": "0",
                    "creator": "2",
                    "isthirdparty": "0",
                    "ishtml": "0",
                    "isemailed": "0",
                    "staffid": "0",
                    "issurveycomment": "0",
                    "contents": "content test",
                    "isprivate": "0"
                }
            }
        }
    }
}
Key Fields

Common cyber security indicators such as unique IDs, file hash values, CVE numbers, IP addresses, etc., will be extracted from Raw Data as Key Fields.
The system stores these key fields in the path $.[playbookTask].outputData. You can use these key-value pairs as data points for playbook task inputs.

SAMPLE DATA

CODE
{
    "TicketDisplayID": "*****",
    "DepartmentID": 20,
    "UserID": 134,
    "Subject": "test",
    "Owner": "Test User",
    "TicketID": ***
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.
Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

@id

***

@flagtype

0

displayid

I***

departmentid

20

statusid

***

priorityid

***

typeid

10

userid

123

userorganization

None

userorganizationid

None

ownerstaffid

123

ownerstaffname

Test User

fullname

test

email

test@example.com

lastreplier

test

subject

test

creationtime

1669852836

lastactivity

1670976087

laststaffreply

0

lastuserreply

1669852836

slaplanid

0

nextreplydue

1672372836

resolutiondue

1672876836

replies

0

ipaddress

2.2.2.2

creator

2

creationmode

4

creationtype

1

isescalated

0

escalationruleid

0

templategroupid

1

tags

None

templategroupname

Default

note

  • {'@type': 'timetrack', '@id': '***', '@ticketid': '***', '@timeworked': '3600', '@timebillable': '1800', '@billdate': '1669852800', '@workdate': '1669852800', '@workerstaffid': '123', '@workerstaffname': 'Test User', '@creatorstaffid': '123', '@creatorstaffname': 'Test User', '@notecolor': '3', '#text': 'Time track comment goes here Blue'}

posts

{'post': {'id': '***', 'ticketpostid': '***', 'ticketid': '***', 'dateline': '1669852836', 'userid': '123', 'fullname': 'test', 'email': 'test@example.com', 'emailto': None, 'ipaddress': '2.2.2.22, 'hasattachments': '0', 'creator': '2', 'isthirdparty': '0', 'ishtml': '0', 'isemailed': '0', 'staffid': '0', 'issurveycomment': '0', 'contents': 'content test', 'isprivate': '0'}}

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Update Ticket failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: Ticket ID Not Found.

Error Sample Data

Update Ticket failed.

Status Code: 404.

Message: Ticket ID Not Found.

Update Ticket Custom Fields

Updates the custom field values for a specified ticket. Note: Custom fields must be configured before using this command. See Creating Custom Fields for Capturing User and Ticket Information from Kayako’s documentation for more information.

Reader Note

Ticket ID and Custom Fields are required parameters to run this command.

  • Run the List Tickets command to obtain Ticket IDs.

  • Run the Get Ticket Custom Fields command to obtain custom field names. The custom field names must be preconfigured to run this command.

  • It is suggested to run the List Tickets command first to get your desired Ticket ID first, then the ID to run the Get Ticket Custom Fields command. Finally, use the obtained Ticket ID and Custom Fields to run the Update Ticket Custom Fields command.

Input

Input Parameter

Required/Optional

Description

Example

Ticket ID

Required

The ID of the ticket to update its corresponding custom fields. Ticket IDs can be obtained using the List Tickets command.

5***

Custom Fields

Required

The JSON-formatted key-value pairs of the custom fields to update. For example, {"CUSTOME_FIELD_NAME": "VALUE"}. Custom field names can be obtained using the Get Ticket Custom Fields command.

{

"lqu2znibuxxb": "Be Calm456"

}

Output

Raw Data

The primary response data from the API request. This API returns XML-formatted results in the raw data.

SAMPLE DATA

JSON
<?xml version="1.0" encoding="UTF-8"?>
<customfields>
<group id="***" title="D3 SOAR" displayorder="1">
<field id="***" title="Action Plan" type="1" name="***">
<![CDATA[restart ***]]>
</field>
<field id="***" title="Priority" type="1" name="***">
<![CDATA[HIGH]]>
</field>
</group>
</customfields>
Context Data

The data extracted from Raw Data converted into JSON format. Context Data may be identical to Raw Data in some cases.

As the API returns XML-formatted results, D3 SOAR converts it to JSON format in the Context Data.

SAMPLE DATA

CODE
{
    "customfields": {
        "group": [
            {
                "@id": "***",
                "@title": "D3 SOAR",
                "@displayorder": "1",
                "field": [
                    {
                        "@id": "***",
                        "@title": "Action Plan",
                        "@type": "1",
                        "@name": "***",
                        "#text": "reboot"
                    },
                    {
                        "@id": "***",
                        "@title": "Priority",
                        "@type": "1",
                        "@name": "***"
                    }
                ]
            }
        ]
    }
}
Return Data

Indicates one of the possible command execution states: Successful or Failed.

The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.

Return Data can be passed down directly to a subsequent command or used to create conditional tasks in playbooks.

SAMPLE DATA

CODE
Successful
Result

Provides a brief summary of outputs in an HTML formatted table.

SAMPLE DATA

customfields

{'group': [{'@id': '***', '@title': 'D3 SOAR', '@displayorder': '1', 'field': [{'@id': '***', '@title': 'Action Plan', '@type': '1', '@name': '**', '#text': 'reboot'}, {'@id': '***', '@title': 'Priority', '@type': '1', '@name': '***'}]}]}

Error Handling

If the Return Data is Failed, an Error tab will appear in the Test Result window.

The error tab contains the details responded from D3 SOAR or third-party API calls, including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Update Ticket Custom Fields failed.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 404.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: Ticket ID Not Found.

Error Sample Data

Update Ticket Custom Fields failed.

Status Code: 404.

Message: Ticket ID Not Found.

Test Connection

Allows you to perform a health check on an integration connection. You can schedule a periodic health check by selecting Connection Health Check when editing an integration connection.

Input

N/A

Output

Return Data

Indicates one of the possible command execution states: Successful or Failed.
The Failed state can be triggered by any of the following errors:

  • A connection issue with the integration

  • The API returned an error message

  • No response from the API

You can view more details about an error in the Error tab.

SAMPLE DATA

CODE
Successful

Error Handling

If the Return Data is partially successful or failed, an Error tab will appear in the Test Result window.

The error tab contains the responses from the third-party API calls including Failure Indicator, Status Code, and Message. This can help you locate the root cause of a command failure.

Parts in Error

Description

Example

Failure Indicator

Indicates the command failure that happened at a specific input and/or API call.

Test Connection failed. Failed to check the connector.

Status Code

The response code issued by the third-party API server or the D3 SOAR system that can be used to locate the corresponding error category. For example, if the returned status code is 401, the selected connection is unauthorized to run the command. The user or system support would need to check the permission setting in the Kayako Classic portal. Refer to the HTTP Status Code Registry for details.

Status Code: 403.

Message

The raw data or captured key error message from the integration API server about the API request failure.

Message: An existing connection was forcibly closed by the remote host.

Error Sample Data

Test Connection failed. Failed to check the connector.

Status Code: 403.

Message: An existing connection was forcibly closed by the remote host.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.