• When a Ticket is opened in Connectwise, create an Alert in AlertOps
  • When a Ticket is closed in Connectwise, close an Alert in AlertOps
  • When an Alert is created in AlertOps, create a Ticket in Connectwise
  • When an Alert is closed in AlertOps, close a Ticket in Connectwise

Begin by configuring Connectwise:

Connectwise Setup

Sources

Create an AlertOps API Source Type

Description: AlertOps API

Create an API Member

Member ID: Alertops

Member Name: AlertOps API

Create a Callback in Connectwise

For this step, use a tool such as Postman to create the call to the Connectwise Callback API.

POST URL: https://yoursubdomain.connectwisedev.com/v4_6_release/apis/3.0/system/callbacks

Body (Application/JSON)

Changes based on environment / instance:

MemberID – your admin user id

url – Your AlertOps Integration Endpoint

{

 "id": 0,

"description": "AlertOps Demolite Ticket",

"url": "https://notify.alertops.com/POSTAlert/yourAPIKey/CWServiceTicket",

"objectId": 17,

"type": "ticket",

"level": "status",

"memberId": 176,

"inactiveFlag": "false",

"isSoapCallbackFlag": false,

"_info": {

"lastUpdated": "2017-12-12T22:14:15Z",

"updatedBy": "Admin1"

}

}

Headers: Authorization is Basic (your api key)

Send Tickets from Connectwise to AlertOps

Step 1 - AlertOps Configuration:

Note that the field mapping is case sensitive.

After the Integration is created, copy the URL, which will be used as the end point in the CW callback.

Sample Data:

{"FromUrl":"staging.connectwisedev.com","CompanyId":"alertops_f","MemberId":"Admin1","Action":"updated","Type":"ticket","ID":469,"Entity":"{\"Id\":469,\"CompanyName\":\"Big Design, Inc.\",\"CompanyId\":4,\"ContactId\":8,\"ContactName\":\"Patrick Love\",\"AddressLine1\":\"23 Central Avenue\",\"AddressLine2\":\"Suite 200\",\"City\":\"Tampa\",\"StateIdentifier\":\"FL\",\"Zip\":\"33618\",\"Country\":null,\"BoardName\":\"Professional Services\",\"BoardId\":1,\"TicketStatus\":\"New (not responded)\",\"StatusName\":\"New (not responded)\",\"ClosedFlag\":false,\"Type\":null,\"SubType\":null,\"SubTypeItem\":null,\"Priority\":\"Priority 3 - Normal Response\",\"Location\":\"On-Site\",\"Source\":\"Phone\",\"Summary\":\"2nd test to AlertOps\",\"EnteredDateUTC\":\"2019-02-19T22:26:34.63\",\"LastUpdatedUTC\":\"2019-02-20T18:49:26.433\",\"Resources\":\"Admin1\",\"RequiredDateUTC\":null,\"ClosedDateUTC\":null,\"SiteName\":\"Main\",\"BudgetHours\":0.00,\"ActualHours\":null,\"Approved\":true,\"ClosedBy\":null,\"ResolveMins\":0,\"ResPlanMins\":0,\"RespondMins\":0,\"UpdatedBy\":\"Admin1\",\"RecordType\":\"s\",\"TeamId\":25,\"AgreementId\":3,\"Severity\":\"Medium\",\"Impact\":\"Medium\",\"DateResolvedUTC\":null,\"DateResplanUTC\":null,\"DateRespondedUTC\":null,\"ContactEmailAddress\":\"patrick.love@bigdesign.com\",\"ContactPhoneNumber\":\"8139881000\",\"IsInSla\":false,\"StatusId\":16}","Metadata":null,"CallbackObjectRecId":15}

Send Alerts from AlertOps to Connectwise

AlertOps Configuration

Add the Connectwise Ticket ID field to the Standard Alert

Create an Outbound Integration

When creating the Service:

Create a unique name (such as Connectwise)

Choose None for Web Security Type

Leave all other fields as default and Save.

Create the Create Ticket Method

Give the new Method a unique name (such as Create Ticket Priority 1)

Most of the default settings are preset for sending to a REST API

Type: REST

Alert Type: Standard Alert

URI: https://yourconnectwiseurl.com/v4_6_release/apis/3.0/service/tickets/<>

Request Type: JSON

Web Method: POST

Response Data Type: JSON

Response Action: Update Alert Fields (checked)

Request Data:

{

"summary":"<>",

"company": {

"id": 4},

"priority":{"id":2},

"source":{"name":"AlertOps API"}

}

Response Data:

{

"id": "<>"

}

Add a header for the Authorization:

(see the Connectwise documentation on how to obtain your API authorization key)

It will look like this:

Basic XXblcnRvcHNfZitEbWpURXZINjJiSnFXSmZ0OlhGWHhyWkRtOFZhMmNtQ1k=

 Create the Close Ticket Method

Give the new Method a unique name (such as Create Ticket Priority 1)

Most of the default settings are preset for sending to a REST API

Type: REST

Alert Type: Standard Alert

URI: https://yourconnectwiseurl.com/v4_6_release/apis/3.0/service/tickets/<>

Request Type: JSON

Web Method: POST

Response Data Type: JSON

Response Action: Update Alert Fields (unchecked)

Request Data:

[

{"op": "replace", "path": "/status/id", "value": "17"}

]

Create a Workflow to Create a Connectwise Ticket

Name: Create Connectwise Ticket Priority 1

Type: Message Thread

Alert Type: Standard

Scheduled: (checked)

Recurrence Interval: 0

Start Condition:

Match All Conditions:

AttributeNameConditionValue

StandardMessageThreadStatusTypeis notClosed

StandardMessageThreadTimeFromBeginning is0

Action

Action: Outbound Service Notification

Outbound Action: (select your Connectwise Create Ticket method)

Create a Workflow to Close a Connectwise Ticket

Name: Close Connectwise Ticket

Type: Message Thread

Alert Type: Standard

Scheduled: (unchecked)

Recurrence Interval: 0

Start Condition:

Match All Conditions:

AttributeNameConditionValue

StandardMessageThreadStatusTypeisClosed

Action

Action: Outbound Service Notification

Outbound Action: (select your Connectwise Close Ticket method)

Add the Workflows to an Escalation Rule

Did this answer your question?