Fortinet Document Library

Version:

Version:


Table of Contents

Request Tracker

Copy Link

About the connector

Request Tracker is an open source issue tracking and workflow platform used to coordinate tasks and manage requests among a community of users.

This document provides information about the Request Tracker connector, which facilitates automated interactions with Request Tracker using FortiSOAR™ playbooks. Add the Request Tracker connector as a step in FortiSOAR™ playbooks and perform automated ticket management on Request tracker by implementing operations, such as creating and updating a ticket on Request Tracker and retrieving the history of a ticket from Request Tracker.

Version information

Connector Version: 2.0.0

FortiSOAR™ Version Tested on: 4.12.0-746

Authored By: Fortinet

Certified: Yes

Release Notes for version 2.0.0

Following enhancements have been made to the Request Tracker Connector in version 2.0.0:

  • Added the following new operations and playbooks:

    • Get Ticket/Queue History

    • Delete Ticket

    • List Queue

    • Get Queue Properties

    • Update Queue

    • Delete Queue

  • Updated the input parameters for the following operations:

    • Search Ticket

    • Create Ticket

    • Update Ticket

  • Removed the following operations and playbooks:

    • Get Ticket Links
    • Get Ticket Attachments

    • Get Ticket Attachment Details

    • Get Ticket Attachment Content

  • Output schemas updated for actions.

Installing the connector

All connectors provided by FortiSOAR™ are delivered using a FortiSOAR™ repository. Therefore, you must set up your FortiSOAR™ repository and use the yum command to install connectors:

yum install cyops-connector-request-tracker

For the detailed procedure to install a connector, click here.

Prerequisites to configuring the connector

  • You must have the URL of Request Tracker server to which you will connect and perform automated operations and credentials (either the API token or a username-password pair) to access that server.
  • To access the FortiSOAR™ UI, ensure that port 443 is open through the firewall for the CyOPsTM instance.

Configuring the connector

For the procedure to configure a connector, click here.

Configuration parameters

In FortiSOAR™, on the Connectors page, click the Request Tracker connector row, and in the Configure tab enter the required configuration details.

Parameter Description
Server URL URL of the Request Tracker server to which you will connect and perform automated operations.
Authentication Type of authentication used to connect to the Request Tracker server to which you will connect and perform automated operations. You can choose either Token or Username/Password.
Token If you choose the authentication type as Token, then specify the API token that is configured for your account to access the Request Tracker server to which you will connect and perform the automated operations.
Username If you choose the authentication type as Username/Password, then specify the username that is used to access the Request Tracker server to which you will connect and perform the automated operations.
Password If you choose the authentication type as Username/Password, then specify the password that is used to access the Request Tracker server to which you will connect and perform the automated operations.
Verify SSL Specifies whether the SSL certificate for the server is to be verified or not.
By default, this option is set as True.

Actions supported by the connector

The following automated operations can be included in playbooks, and you can also use the annotations to access operations from FortiSOAR™ release 4.10.0 onwards:

Function Description Annotation and Category
Create Ticket Creates a ticket in Request Tracker based on input parameters you have specified. create_ticket
Investigation
Get Ticket Properties Retrieves the properties of an existing ticket from Request Tracker based on ticket ID you have specified. get_ticket_properties
Investigation
Get Ticket/Queue History Retrieves the history details of an existing ticket or queue from Request Tracker based on ticket or queue ID and other input parameters you have specified. get_record_history
Investigation
Search Ticket Searches for a ticket in Request Tracker based on the query and other input parameters you have specified. search_record
Investigation
Comment Ticket Adds a comment to an existing ticket on Request Tracker based on ticket ID you have specified. comment_ticket
Investigation
Update Ticket Updates an existing ticket on Request Tracker based on input parameters you have specified. update_ticket
Investigation
Delete Ticket Deletes an existing ticket from Request Tracker based on ticket ID you have specified. delete_ticket
Investigation
Create Queue Creates a queue in Request Tracker based on input parameters you have specified. create_queue
Investigation
List Queue Retrieves all queues from Request Tracker. list_queue
Investigation
Get Queue Properties Retrieves the properties of an existing queue from Request Tracker based on queue ID you have specified. get_queue_properties
Investigation
Update Queue Updates an existing queue on Request Tracker based on input parameters you have specified. update_queue
Containment
Delete Queue Deletes an existing queue from Request Tracker based on input parameters you have specified. delete_queue
Investigation

operation: Create Ticket

Input parameters

Parameter Description
Queue ID ID of the queue in Request Tracker in which you want to create a new ticket.
Subject Subject of the ticket that you want to create in Request Tracker.
From Email ID of the user from whose ID you want to create a ticket in Request Tracker.
For example, user1@example.com
To Email ID of the user on whose ID you want to send the ticket that you are creating on Request Tracker.
For example, rt@example.com
Content Content or brief description of the ticket that you want to create in Request Tracker.
Custom Fields (Optional) You can add custom fields, in the JSON format, in the ticket that you want to create in Request Tracker.
For example, {"Severity": "Low"}

Output

The output contains the following populated JSON schema:
{
     "type": "",
     "id": "",
     "_url": ""
}

operation: Get Ticket Properties

Input parameters

Parameter Description
Ticket ID ID of the ticket whose properties you want to retrieve from Request Tracker.

Output

The output contains the following populated JSON schema:
{
     "Queue": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "Resolved": "",
     "Starts": "",
     "id": "",
     "TimeLeft": "",
     "Cc": [],
     "EffectiveId": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "Subject": "",
     "CustomFields": {},
     "LastUpdated": "",
     "Status": "",
     "FinalPriority": "",
     "Requestor": [],
     "Priority": "",
     "Owner": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "AdminCc": [],
     "Due": "",
     "InitialPriority": "",
     "Type": "",
     "_hyperlinks": [
         {
             "ref": "",
             "id": "",
             "_url": ""
         }
     ],
     "TimeEstimated": "",
     "RT::CustomRole-1": [],
     "Started": "",
     "TimeWorked": "",
     "LastUpdatedBy": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "RT::CustomRole-2": [],
     "Creator": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "Created": ""
}

operation: Get Ticket/Queue History

Input parameters

Parameter Description
Ticket/Queue Select the record type, either ticket or queue, for which you want to retrieve the history details from Request Tracker.
ID ID of the ticket or queue whose history you want to retrieve from Request Tracker.
Page Size (Optional) Number of result records that you want to display on one page.  
By default, it is set as 20 records. However, you can increase it to 100.
Page Number (Optional) Page number from which you want to retrieve records.
By default, it is set to 1.

Output

The output contains the following populated JSON schema:
{
     "items": [
         {
             "type": "",
             "id": "",
             "_url": ""
         }
     ],
     "count": "",
     "per_page": "",
     "total": "",
     "page": ""
}

operation: Search Ticket

Input parameters

Parameter Description
Query Query based on which you want to search for tickets in Request Tracker.
For example, If you want to find all tickets that have no owner and whose status is new or open, you can add the following query: Owner = 'Nobody' AND ( Status = 'new' OR Status = 'open' )
Page Size (Optional) Number of result records that you want to display on one page.  
By default, it is set as 20 records. However, you can increase it to 100.
Page Number (Optional) Page number from which you want to retrieve records.
By default, it is set to 1.

Output

The output contains the following populated JSON schema:
{
     "items": [
         {
             "type": "",
             "id": "",
             "_url": ""
         }
     ],
     "count": "",
     "per_page": "",
     "total": "",
     "page": ""
}

operation: Update Ticket

Input parameters

Parameter Description
Ticket ID ID of the ticket that you want to update in Request Tracker.
Content Content of brief description of the ticket that you want to update in Request Tracker.
Subject (Optional) Subject of the ticket that you want to update in Request Tracker.
From (Optional) Email ID of the user from whose ID you want to update the ticket in Request Tracker.
For example, user1@example.com
To (Optional) Email ID of the user on whose ID you want to send the ticket that you are updating on Request Tracker.
For example, rt@example.com
Content (Optional) Content or brief description of the ticket that you want to update in Request Tracker.
Custom Fields (Optional) You can add custom fields, in the JSON format, in the ticket that you want to update in Request Tracker.
For example, {"Severity": "Low"}

Output

No output schema is available at this time.

operation: Comment Ticket

Input parameters

Parameter Description
Ticket ID ID of the ticket in Request Tracker to which you want to add a comment.
Comment Text Content of the comment that you want to add to an existing ticket in Request Tracker.

Output

The output contains a non-dictionary value.

operation: Delete Ticket

Input parameters

Parameter Description
Ticket ID ID of the ticket that you want to delete from Request Tracker.

Output

The output contains a non-dictionary value.

operation: Create Queue

Input parameters

Parameter Description
Name Name of the queue that you want to create in Request Tracker.
Subject Tag Subject of the queue that you want to create in Request Tracker.
Description Content or brief description of the queue that you want to create in Request Tracker.
Custom Fields (Optional) You can add custom fields, in the JSON format, in the queue that you want to create in Request Tracker. For example, {"Severity": "Low"}.

Output

The output contains the following populated JSON schema:
{
     "type": "",
     "id": "",
     "_url": ""
}

operation: List Queue

Input parameters

Parameter Description
Page Size (Optional) Number of result records that you want to display on one page.  
By default, it is set as 20 records. However, you can increase it to 100.
Page Number (Optional) Page number from which you want to retrieve records.
By default, it is set to 1.

Output

The output contains the following populated JSON schema:
{
     "count": "",
     "total": "",
     "items": [
         {
             "type": "",
             "id": "",
             "_url": ""
         }
     ],
     "per_page": "",
     "page": ""
}

operation: Get Queue Properties

Input parameters

Parameter Description
Queue ID ID of the queue whose properties you want to retrieve from Request Tracker.

Output

The output contains the following populated JSON schema:
{
     "AdminCc": [],
     "id": "",
     "Name": "",
     "SubjectTag": "",
     "Disabled": "",
     "Description": "",
     "RT::CustomRole-2": "",
     "RT::CustomRole-1": "",
     "_hyperlinks": [
         {
             "ref": "",
             "_url": ""
         }
     ],
     "Cc": [],
     "SortOrder": "",
     "CustomFields": {},
     "LastUpdatedBy": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "LastUpdated": "",
     "Lifecycle": "",
     "SLADisabled": "",
     "Creator": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "Created": ""
}

operation: Update Queue

Input parameters

Parameter Description
Queue ID ID of the queue that you want to update in Request Tracker.
Subject Tag Subject of the queue that you want to update in Request Tracker.
Description (Optional) Content or brief description of the queue that you want to update in Request Tracker.
Custom Fields (Optional) You can add custom fields, in the JSON format, in the queue that you want to update in Request Tracker. For example, {"Severity": "Low"}.

Output

The output contains the following populated JSON schema:
{
     "type": "",
     "id": "",
     "_url": ""
}

operation: Delete Queue

Input parameters

Parameter Description
Queue ID ID of the queue that you want to delete from Request Tracker.

Output

The output contains a non-dictionary value.

Included playbooks

The Sample - Request Tracker - 2.0.0 playbook collection comes bundled with the Request Tracker connector. This playbook contains steps using which you can perform all supported actions. You can see the bundled playbooks in the Automation > Playbooks section in FortiSOAR™ after importing the Request Tracker connector.

  • Comment Ticket
  • Create Queue
  • Create Ticket
  • Delete Queue
  • Delete Ticket
  • Get Queue Properties
  • Get Ticket Properties
  • Get Ticket/Queue History
  • List Queue
  • Search Ticket
  • Update Queue
  • Update Ticket

Note: If you are planning to use any of the sample playbooks in your environment, ensure that you clone those playbooks and move them to a different collection since the sample playbook collection gets deleted during connector upgrade and delete.

 

About the connector

Request Tracker is an open source issue tracking and workflow platform used to coordinate tasks and manage requests among a community of users.

This document provides information about the Request Tracker connector, which facilitates automated interactions with Request Tracker using FortiSOAR™ playbooks. Add the Request Tracker connector as a step in FortiSOAR™ playbooks and perform automated ticket management on Request tracker by implementing operations, such as creating and updating a ticket on Request Tracker and retrieving the history of a ticket from Request Tracker.

Version information

Connector Version: 2.0.0

FortiSOAR™ Version Tested on: 4.12.0-746

Authored By: Fortinet

Certified: Yes

Release Notes for version 2.0.0

Following enhancements have been made to the Request Tracker Connector in version 2.0.0:

Installing the connector

All connectors provided by FortiSOAR™ are delivered using a FortiSOAR™ repository. Therefore, you must set up your FortiSOAR™ repository and use the yum command to install connectors:

yum install cyops-connector-request-tracker

For the detailed procedure to install a connector, click here.

Prerequisites to configuring the connector

Configuring the connector

For the procedure to configure a connector, click here.

Configuration parameters

In FortiSOAR™, on the Connectors page, click the Request Tracker connector row, and in the Configure tab enter the required configuration details.

Parameter Description
Server URL URL of the Request Tracker server to which you will connect and perform automated operations.
Authentication Type of authentication used to connect to the Request Tracker server to which you will connect and perform automated operations. You can choose either Token or Username/Password.
Token If you choose the authentication type as Token, then specify the API token that is configured for your account to access the Request Tracker server to which you will connect and perform the automated operations.
Username If you choose the authentication type as Username/Password, then specify the username that is used to access the Request Tracker server to which you will connect and perform the automated operations.
Password If you choose the authentication type as Username/Password, then specify the password that is used to access the Request Tracker server to which you will connect and perform the automated operations.
Verify SSL Specifies whether the SSL certificate for the server is to be verified or not.
By default, this option is set as True.

Actions supported by the connector

The following automated operations can be included in playbooks, and you can also use the annotations to access operations from FortiSOAR™ release 4.10.0 onwards:

Function Description Annotation and Category
Create Ticket Creates a ticket in Request Tracker based on input parameters you have specified. create_ticket
Investigation
Get Ticket Properties Retrieves the properties of an existing ticket from Request Tracker based on ticket ID you have specified. get_ticket_properties
Investigation
Get Ticket/Queue History Retrieves the history details of an existing ticket or queue from Request Tracker based on ticket or queue ID and other input parameters you have specified. get_record_history
Investigation
Search Ticket Searches for a ticket in Request Tracker based on the query and other input parameters you have specified. search_record
Investigation
Comment Ticket Adds a comment to an existing ticket on Request Tracker based on ticket ID you have specified. comment_ticket
Investigation
Update Ticket Updates an existing ticket on Request Tracker based on input parameters you have specified. update_ticket
Investigation
Delete Ticket Deletes an existing ticket from Request Tracker based on ticket ID you have specified. delete_ticket
Investigation
Create Queue Creates a queue in Request Tracker based on input parameters you have specified. create_queue
Investigation
List Queue Retrieves all queues from Request Tracker. list_queue
Investigation
Get Queue Properties Retrieves the properties of an existing queue from Request Tracker based on queue ID you have specified. get_queue_properties
Investigation
Update Queue Updates an existing queue on Request Tracker based on input parameters you have specified. update_queue
Containment
Delete Queue Deletes an existing queue from Request Tracker based on input parameters you have specified. delete_queue
Investigation

operation: Create Ticket

Input parameters

Parameter Description
Queue ID ID of the queue in Request Tracker in which you want to create a new ticket.
Subject Subject of the ticket that you want to create in Request Tracker.
From Email ID of the user from whose ID you want to create a ticket in Request Tracker.
For example, user1@example.com
To Email ID of the user on whose ID you want to send the ticket that you are creating on Request Tracker.
For example, rt@example.com
Content Content or brief description of the ticket that you want to create in Request Tracker.
Custom Fields (Optional) You can add custom fields, in the JSON format, in the ticket that you want to create in Request Tracker.
For example, {"Severity": "Low"}

Output

The output contains the following populated JSON schema:
{
     "type": "",
     "id": "",
     "_url": ""
}

operation: Get Ticket Properties

Input parameters

Parameter Description
Ticket ID ID of the ticket whose properties you want to retrieve from Request Tracker.

Output

The output contains the following populated JSON schema:
{
     "Queue": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "Resolved": "",
     "Starts": "",
     "id": "",
     "TimeLeft": "",
     "Cc": [],
     "EffectiveId": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "Subject": "",
     "CustomFields": {},
     "LastUpdated": "",
     "Status": "",
     "FinalPriority": "",
     "Requestor": [],
     "Priority": "",
     "Owner": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "AdminCc": [],
     "Due": "",
     "InitialPriority": "",
     "Type": "",
     "_hyperlinks": [
         {
             "ref": "",
             "id": "",
             "_url": ""
         }
     ],
     "TimeEstimated": "",
     "RT::CustomRole-1": [],
     "Started": "",
     "TimeWorked": "",
     "LastUpdatedBy": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "RT::CustomRole-2": [],
     "Creator": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "Created": ""
}

operation: Get Ticket/Queue History

Input parameters

Parameter Description
Ticket/Queue Select the record type, either ticket or queue, for which you want to retrieve the history details from Request Tracker.
ID ID of the ticket or queue whose history you want to retrieve from Request Tracker.
Page Size (Optional) Number of result records that you want to display on one page.  
By default, it is set as 20 records. However, you can increase it to 100.
Page Number (Optional) Page number from which you want to retrieve records.
By default, it is set to 1.

Output

The output contains the following populated JSON schema:
{
     "items": [
         {
             "type": "",
             "id": "",
             "_url": ""
         }
     ],
     "count": "",
     "per_page": "",
     "total": "",
     "page": ""
}

operation: Search Ticket

Input parameters

Parameter Description
Query Query based on which you want to search for tickets in Request Tracker.
For example, If you want to find all tickets that have no owner and whose status is new or open, you can add the following query: Owner = 'Nobody' AND ( Status = 'new' OR Status = 'open' )
Page Size (Optional) Number of result records that you want to display on one page.  
By default, it is set as 20 records. However, you can increase it to 100.
Page Number (Optional) Page number from which you want to retrieve records.
By default, it is set to 1.

Output

The output contains the following populated JSON schema:
{
     "items": [
         {
             "type": "",
             "id": "",
             "_url": ""
         }
     ],
     "count": "",
     "per_page": "",
     "total": "",
     "page": ""
}

operation: Update Ticket

Input parameters

Parameter Description
Ticket ID ID of the ticket that you want to update in Request Tracker.
Content Content of brief description of the ticket that you want to update in Request Tracker.
Subject (Optional) Subject of the ticket that you want to update in Request Tracker.
From (Optional) Email ID of the user from whose ID you want to update the ticket in Request Tracker.
For example, user1@example.com
To (Optional) Email ID of the user on whose ID you want to send the ticket that you are updating on Request Tracker.
For example, rt@example.com
Content (Optional) Content or brief description of the ticket that you want to update in Request Tracker.
Custom Fields (Optional) You can add custom fields, in the JSON format, in the ticket that you want to update in Request Tracker.
For example, {"Severity": "Low"}

Output

No output schema is available at this time.

operation: Comment Ticket

Input parameters

Parameter Description
Ticket ID ID of the ticket in Request Tracker to which you want to add a comment.
Comment Text Content of the comment that you want to add to an existing ticket in Request Tracker.

Output

The output contains a non-dictionary value.

operation: Delete Ticket

Input parameters

Parameter Description
Ticket ID ID of the ticket that you want to delete from Request Tracker.

Output

The output contains a non-dictionary value.

operation: Create Queue

Input parameters

Parameter Description
Name Name of the queue that you want to create in Request Tracker.
Subject Tag Subject of the queue that you want to create in Request Tracker.
Description Content or brief description of the queue that you want to create in Request Tracker.
Custom Fields (Optional) You can add custom fields, in the JSON format, in the queue that you want to create in Request Tracker. For example, {"Severity": "Low"}.

Output

The output contains the following populated JSON schema:
{
     "type": "",
     "id": "",
     "_url": ""
}

operation: List Queue

Input parameters

Parameter Description
Page Size (Optional) Number of result records that you want to display on one page.  
By default, it is set as 20 records. However, you can increase it to 100.
Page Number (Optional) Page number from which you want to retrieve records.
By default, it is set to 1.

Output

The output contains the following populated JSON schema:
{
     "count": "",
     "total": "",
     "items": [
         {
             "type": "",
             "id": "",
             "_url": ""
         }
     ],
     "per_page": "",
     "page": ""
}

operation: Get Queue Properties

Input parameters

Parameter Description
Queue ID ID of the queue whose properties you want to retrieve from Request Tracker.

Output

The output contains the following populated JSON schema:
{
     "AdminCc": [],
     "id": "",
     "Name": "",
     "SubjectTag": "",
     "Disabled": "",
     "Description": "",
     "RT::CustomRole-2": "",
     "RT::CustomRole-1": "",
     "_hyperlinks": [
         {
             "ref": "",
             "_url": ""
         }
     ],
     "Cc": [],
     "SortOrder": "",
     "CustomFields": {},
     "LastUpdatedBy": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "LastUpdated": "",
     "Lifecycle": "",
     "SLADisabled": "",
     "Creator": {
         "type": "",
         "id": "",
         "_url": ""
     },
     "Created": ""
}

operation: Update Queue

Input parameters

Parameter Description
Queue ID ID of the queue that you want to update in Request Tracker.
Subject Tag Subject of the queue that you want to update in Request Tracker.
Description (Optional) Content or brief description of the queue that you want to update in Request Tracker.
Custom Fields (Optional) You can add custom fields, in the JSON format, in the queue that you want to update in Request Tracker. For example, {"Severity": "Low"}.

Output

The output contains the following populated JSON schema:
{
     "type": "",
     "id": "",
     "_url": ""
}

operation: Delete Queue

Input parameters

Parameter Description
Queue ID ID of the queue that you want to delete from Request Tracker.

Output

The output contains a non-dictionary value.

Included playbooks

The Sample - Request Tracker - 2.0.0 playbook collection comes bundled with the Request Tracker connector. This playbook contains steps using which you can perform all supported actions. You can see the bundled playbooks in the Automation > Playbooks section in FortiSOAR™ after importing the Request Tracker connector.

Note: If you are planning to use any of the sample playbooks in your environment, ensure that you clone those playbooks and move them to a different collection since the sample playbook collection gets deleted during connector upgrade and delete.