ConnectWise
Integration version: 17.0
Configure ConnectWise Integration to work with Google Security Operations SOAR
Set up public and private keys in ConnectWise Manage
To create an integration between ConnectWise Manage, and Google Security Operations SOAR integration with ConnectWise Manage, you need to provide API keys. API keys are public and private keys that are generated by ConnectWise Manage for the integration account.
To create API keys in ConnectWise Manage:
- In ConnectWise Manage, click System >Members and either select an existing member or create a new one. Make sure that the member you selected has all the rights necessary to set up the integration.
- On the Member Maintenance screen, click the API Keys tab, and then click New Item.
- In the Description field, enter the description for the newly created keys. For example, Google Security Operations SOAR Integration.
- Click Save to save the new item.
The two API keys are generated and displayed in the Public Key and Private Key fields. The private key is displayed only at the time it is created.
Configure ConnectWise integration in Google Security Operations SOAR
For detailed instructions on how to configure an integration in Google Security Operations SOAR, see Configure integrations.
Integration parameters
Use the following parameters to configure the integration:
Parameter Display Name | Type | Default Value | Is Mandatory | Description |
---|---|---|---|---|
Api Root | String | https://{CompanyURL}/v4_6_Release/apis/3.0/ | Yes | Address for the ConnectWise instance. |
Company Name | String | N/A | Yes | |
Public Key | String | N/A | Yes | |
Private Key | String | N/A | Yes | |
Client ID | String | N/A | Yes | Client ID of ConnectWise application. |
Actions
Add Comment to Ticket
Description
Add a new comment to a ticket in ConnectWise.
Parameters
Parameter Name | Type | Default Value | Description | |
---|---|---|---|---|
Ticket ID | String | N/A | Yes | ConnectWise ticket ID. Example: 608718 |
Comment | String | N/A | Yes | Comment content to attach to a ticket. |
Internal | Checkbox | Unchecked | Yes | If checked, puts comment in the internal section. |
Run On
This action runs on all entities.
Action Results
Script Result
Script Result Name | Value Options | Example |
---|---|---|
ticket_id | N/A | N/A |
JSON Result
N/A
Close Ticket
Description
Close a ConnectWise ticket.
Parameters
Parameter Name | Type | Default Value | Is Mandatory | Description |
---|---|---|---|---|
Ticket ID | String | N/A | Yes | ConnectWise ticket ID. Example: 608718. |
Custom Close Status | String | N/A | No | If the specific system uses a custom closed status, for example Completed. |
Run On
This action runs on all entities.
Action Results
Script Results
Script Result Name | Value Options | Example |
---|---|---|
ticket_id | True/False | ticket_id:False |
JSON Result
N/A
Entity Enrichment
N/A
Insights
N/A
Create Alerts Ticket
Description
Create a ConnectWise ticket for each new Google Security Operations SOAR alert.
Parameters
Parameter Name | Type | Default Value | Is Mandatory | Description |
---|---|---|---|---|
Company | String | N/A | Yes | Company name. |
Board | String | N/A | Yes | Board name. |
Status | String | N/A | Yes | Example: Unassigned |
Priority | String | N/A | Yes | Example: Priority 3 - Normal Response |
Initial Description | String | N/A | Yes | N/A |
Owner Name | String | N/A | No | ConnectWise member name to assign this ticket to. Example: connectwise_user_1. |
Run On
This action runs on all entities.
Action Results
Script Result
Script Result Name | Value Options | Example |
---|---|---|
ticket_id | N/A | N/A |
JSON Result
N/A
Create Ticket
Description
Create a ConnectWise ticket.
Parameters
Parameter Name | Type | Default Value | Is Mandatory | Description |
---|---|---|---|---|
Company | String | N/A | Yes | Company name. |
Board | String | N/A | Yes | Board name |
Summary | String | N/A | Yes | N/A |
Status | String | N/A | Yes | e.g. Unassigned. |
Priority | String | N/A | Yes | Example: Priority 3 - Normal Response |
Owner Name | String | N/A | No | ConnectWise member name to assign this ticket to. Example: connectwise_user_1 |
Run On
This action runs on all entities.
Action Results
Script Result
Script Result Name | Value Options | Example |
---|---|---|
ticket_id | True/False | ticket_id:False |
JSON Result
N/A
Delete Ticket
Description
Delete a ConnectWise ticket by the ID.
Parameters
Parameter Name | Type | Default Value | Is Mandatory | Description |
---|---|---|---|---|
Ticket ID | String | N/A | Yes | The ID of the ticket to be deleted. Example: 607167 |
Run On
This action runs on all entities.
Action Results
Script Result
Script Result Name | Value Options | Example |
---|---|---|
is_success | True/False | is_success:False |
JSON Result
N/A
Get Ticket
Description
Get a ConnectWise ticket by ID and attach the ticket JSON as a file.
Parameters
Parameter Name | Type | Default Value | Is Mandatory | Description |
---|---|---|---|---|
Ticket ID | String | N/A | Yes | Fetch a ticket by ID. |
Run On
This action runs on all entities.
Action Results
Script Result
Script Result Name | Value Options | Example |
---|---|---|
ticket_json | N/A | N/A |
JSON Result
{
"773256":
{
"customerUpdatedFlag": false,
"estimatedTimeCost": 0.0,
"recordType": "ServiceTicket",
"siteName": "Main",
"billTime": "NoDefault",
"site":
{
"_info":
{
"site_href": "",
"mobileGuid": "c5e7be2e-af3b-461f-a637-1b3e7e24bdc6"
},
"id": 23188, "name": "Main"
},
"currency":
{
"symbol": "$",
"isoCode": "USD",
"_info": {
"currency_href": ""
},
"name": "US Dollars", "id": 7
},
"estimatedProductCost": 0.0,
"estimatedExpenseRevenue": 0.0,
"contactName": "user name",
"addressLine1": "110 Fifth Avenue ",
"billingMethod": "ActualRates",
"id": 773256,
"impact": "Medium",
"city": "New York",
"billProducts": "NoDefault",
"businessUnitId": 20,
"zip": "10011",
"estimatedExpenseCost": 0.0,
"mobileGuid": "f7b5a0eb-6038-4e14-a661-05c393917841",
"closedFlag": false,
"enteredBy": "Siemplify",
"priority":
{
"sort": 6,
"_info":
{
"image_href": "",
"priority_href": ""
},
"id": 4,
"name": "Priority 3 - Normal Response"
},
"source":
{
"_info":
{
"source_href": ""
},
"id": 2,
"name": "Customer Phone Call"
},
"automaticEmailCcFlag": false,
"board":
{
"_info":
{
"board_href": ""
},
"id": 70,
"name": "Siemplify - T&M"
},
"customFields":
[{
"numberOfDecimals": 0,
"caption": "2nd Shift",
"type": "Checkbox",
"id": 20,
"entryMethod": "EntryField"
},
{
"numberOfDecimals": 0,
"caption": "3rd Shift",
"type": "Checkbox",
"id": 21,
"entryMethod": "EntryField"
},
{
"numberOfDecimals": 0,
"caption": "Huddle Rvw",
"type": "Checkbox",
"id": 22,
"entryMethod": "EntryField"
}],
"contactEmailAddress": "john_doe@example.com",
"Status":
{
"_info": {"status_href": ""},
"id": 1351,
"name": "Unassigned"
},
"contactPhoneNumber": "(800) 555‑0175",
"dateResponded": "2019-01-17T09:21:03Z",
"isInSla": false,
"company":
{
"_info":
{"mobileGuid": "42fcabed-a0f6-4171-bd7a-ca563ba45f7c",
"company_href": ""},
"identifier": "Siemplify",
"id": 18304,
"name": "Siemplify"
},
"automaticEmailContactFlag": false,
"hasChildTicket": false,
"billExpenses": "NoDefault",
"estimatedTimeRevenue": 0.0,
"locationId": 119,
"estimatedProductRevenue": 0.0,
"automaticEmailResourceFlag": false,
"dateEntered": "2019-01-17T09:21:03Z",
"approved": true,
"severity": "Medium",
"resolveMinutes": 0,
"serviceLocation":
{
"_info":
{"location_href": ""},
"id": 6,
"name": "Remote"
},
"resPlanMinutes": 0,
"stateIdentifier": "NY",
"dateResplan": "2019-01-17T09:21:03Z",
"subBillingMethod": "ActualRates",
"Country":
{
"_info":
{"country_href": ""},
"id": 1,
"name": "United States"
},
"respondMinutes": 0,
"allowAllClientsPortalView": false,
"hasMergedChildTicketFlag": false,
"summary": "TikcetApiTest",
"contact":
{
"_info":
{"contact_href": "",
"mobileGuid": "c86377ec-7726-4057-aca2-e992b550140f"
},
"id": 59249,
"name": "user name"
},
"team":
{
"_info":
{"team_href": ""},
"id": 78,
"name": "Siemplify"
},
"addressLine2": "5th Floor",
"_info":
{
"configurations_href": "",
"tasks_href": "",
"updatedBy": "Siemplify",
"expenseEntries_href": "",
"lastUpdated": "2019-01-17T09:21:03Z",
"products_href": "",
"activities_href": "",
"Timeentries_href":"",
"notes_href": "",
"documents_href": "",
"scheduleentries_href": ""
}
}
}
Ping
Description
Test Connectivity.
Parameters
N/A
Run On
This action runs on all entities.
Action Results
Script Result
Script Result Name | Value Options | Example |
---|---|---|
is_success | True/False | is_success:False |
JSON Result
N/A
Update Ticket
Description
Update ticket details in ConnectWIse.
Parameters
Parameter Name | Type | Default Value | Is Mandatory | Description |
---|---|---|---|---|
Parameter | Type | Default Value | Is Mandatory | Description |
Ticket ID | String | N/A | Yes | The ID of the ticket to be updated. Example: 609620 |
Summary | String | N/A | No | Updated summary. |
Type Name | String | N/A | No | Example: Application |
SubType Name | String | N/A | No | Example: Adobe |
Item Name | String | N/A | No | Example: Development |
Status | String | N/A | No | New ticket status. Example: |
Run On
This action runs on all entities.
Action Results
Script Result
Script Result Name | Value Options | Example |
---|---|---|
ticket_id | True/False | ticket_id:False |
JSON Result
N/A
Add Attachment to Ticket
Description
Add an attachment to the ticket in ConnectWise.
Parameters
Parameters Name | Type | Default Value | Is Mandatory | Description |
---|---|---|---|---|
Ticket ID | String | N/A | Yes | Specify the ID of the ticket to which the document would need to be added. |
Base64 Encoded File | String | N/A | Yes | Specify the base64 encoded file that needs to be added as an attachment. |
Filename | String | {filename}.{extension} | Yes | Specify the filename behind the attachment. This value is also used as a title. Note: Action needs to provide the correct extension for the file. |
Display In Customer Portal | Checkbox | Checked | No | If enabled, the attachment is shown in the customer portal. |
Allow Only Owner Update | Checkbox | Checked | No | If enabled, the action only allows the owner to update the attachment. |
Run On
This action runs on all entities.
Action Results
Script Result
Script Result Name | Value Options | Example |
---|---|---|
is_success | True/False | is_success:False |
JSON Result
{
"id": 280,
"title": "QWEqqqq",
"fileName": "s.json",
"serverFileName": "24e7db8d-41b5-4bd0-9db3-a60d46143afe.json",
"owner": "Admin1",
"linkFlag": false,
"imageFlag": false,
"publicFlag": false,
"htmlTemplateFlag": false,
"readOnlyFlag": true,
"size": 22131,
"urlFlag": false,
"guid": "b9fc3fc6-f368-40bb-bc06-233f4d6a299c",
"_info": {
"lastUpdated": "2022-05-10T14:02:23Z",
"updatedBy": "Admin1"
}
}
Case Wall
Result Type | Value / Description | Type |
---|---|---|
Output message* | The action should not fail nor stop a playbook execution: If the 201 status code is reported (is_success=true): "Successfully added a file as attachment to ticket {ticket_id} in ConnectWise." The action should fail and stop a playbook execution: If a critical error is reported: "Error executing action "Add Attachment To Ticket". Reason: {0}''.format(error.Stacktrace)." If the 400 status code is reported: "Error executing action "Add Attachment To Ticket". Reason: {errors/message}.'' If invalid "Filename" format is provided: "Error executing action "Add Attachment To Ticket". Reason: "Filename" value doesn't follow the needed format. Format: {filename}.{extension}.'' |
General |
Jobs
Synchronize Closed Tickets and Dismissed
Description
Synchronize closed tickets at ConnectWise and dismissed alerts at Google Security Operations SOAR.
Parameters
Parameter Name | Type | Default Value | Description |
---|---|---|---|
API Root | String | N/A | N/A |
Company Name | String | N/A | N/A |
API Public Key | String | N/A | N/A |
API Private Key | String | N/A | N/A |
Script Name | String | N/A | N/A |
Synchronize Comments
Description
Synchronize comments between Google Security Operations SOAR cases and ConnectWise tickets.
Parameters
Parameter Name | Type | Default Value | Description |
---|---|---|---|
API Root | String | https://<Host Name>/v4_6_Release/apis/3.0/ | N/A |
Company Name | String | N/A | N/A |
API Public Key | String | N/A | N/A |
API Private Key | String | N/A | N/A |
Script Name | String | N/A | N/A |