Connectors
A connector links ScriptRunner Connect and a third-party service that ScriptRunner Connect manages on your behalf.
You can set up connectors without being in a workspace; these connectors become global. You can then associate global connectors to multiple workspaces (creating API connections) and apply different configurations for different workspaces.
More to come 😊
Want a specific connector added to ScriptRunner Connect? Contact us!
Connectors Tutorial Video
Available ScriptRunner Connect Connectors
ScriptRunner Connect is equipped with connectors for the following apps and services:
| Connector | App | Auth Type | Event Listeners |
|---|---|---|---|
| AWS | AWS SigV4 | ||
| Azure DevOps | OAuth 2.0 | ||
| Bitbucket Cloud | OAuth 2.0 | ||
| Bitbucket On-Premise | OAuth | ||
| Confluence Cloud | OAuth 2.0 | ||
| Confluence On-Premise | OAuth | ||
| GitHub | OAuth 2.0 | ||
| GitLab | OAuth 2.0 | ||
| Google Calendar | OAuth 2.0 | ||
| Google Sheets | OAuth 2.0 | ||
| Jira Cloud | OAuth 2.0 | ||
| Jira On-Premise | Jira On-Premise | OAuth | |
| Jira Service Management On-Premise | |||
| Jira Service Management On-Premise Assets | |||
| Tempo Timesheets On-Premise | |||
| Tempo Planner On-Premise | |||
| Jira Service Management Cloud | OAuth 2.0 | ||
| Jira Service Management Cloud Assets | Basic (API Token) | ||
| Microsoft | Teams | OAuth 2.0 | |
| monday.com | OAuth 2.0 | ||
| NetSuite | OAuth 2.0 | ||
| Opsgenie | Basic (API Token) | ||
| Salesforce | OAuth 2.0 | ||
| ServiceNow | OAuth 2.0 | ||
| Slack | App credentials | ||
| Statuspage | Basic (API Token) | ||
| Tempo Cloud | OAuth 2.0 | ||
| Trello | Basic (API Token) | ||
| Zendesk | OAuth 2.0 | ||
| Zoom | App credentials | ||
1 Confluence Cloud officially does not support webhooks. As a workaround, you should be able to use a third-party add-on to register a webhook using the generic event listener in ScriptRunner Connect. Alternatively, you can use ScriptRunner for Confluence Cloud to set up an event listener and call a generic event listener in ScriptRunner Connect whenever the event gets fired.
Here is an example of how you would write a Groovy script in ScriptRunner that calls a Generic Event Listener HTTP endpoint in ScriptRunner Connect. This example demonstrates how to listen to the Label Added event by extracting a couple of event properties and then sending them to ScriptRunner Connect as part of the HTTP body:
groovydef pageTitle = labeled.asType(Map).title def pageId = labeled.asType(Map).id def labelTitle = label.asType(Map).title logger.info("Page Title: ${pageTitle}") logger.info("Page ID: ${pageId}") logger.info("Label Title: ${labelTitle}") def response = post("GENERIC_HTTP_ENDPOINT_URL") .body( confPageTitle: pageTitle, confPageId: pageId, labelTitle: labelTitle) .asObject(Map)
2 Google products don't support webhooks, but as a workaround, you can write a Google apps script that triggers for events you are interested in, which, in turn, calls the generic event listener to listen for events on the ScriptRunner Connect side.
3 For the most part, Jira Service Management Cloud reuses base Jira event types.
4 Currently, Trello webhooks are not supported, but you can use Trello's API to set up webhooks. Here is a template that demonstrates this use case.
Generic API Connector
You can also use a generic API connector and generic event listener to connect to and listen to events from unlisted apps and services.
For most services, you can also use basic/fixed authentication instead of OAuth. To use fixed authentication, create a generic API connection and either construct the Managed API manually for the generic API connection or use the Fetch API directly.
Connector Sharing
There are several scenarios where you might want to share a connector you've setup in your workspace. For example, you might want to share an integration with a teammate without sharing your credentials.
You can share connectors with your colleagues who need to use them in their workspaces.
Sharing scope 📖
You can only share connectors with users on the same team as you. However, if the team scope is not specified, users outside your team can use a shared connector.
Sharing a connector is simply done from the Manage Connector screen:
- Choose to Share your authorized connector.
- Select which teammates will have access to the connector via the Email address dropdown option.
- Give those teammates your desired permissions.
(See below for more info on permissions) - Click Save Changes.
Permissions
When sharing a connector, three permissions can be used:
- Use - This permission allows using the connector in workspaces.
- Edit - This permission allows editing the name of the connector and re-authorizing.
- Own—This permission allows sharing and deleting the connector. It is only accessible to the connector's original creator.
Use permission
When applying a use permission, you can choose whether the connector's usage is limited to specific teams. When the team scope is not specified, the connector can be used in any team.
Connector force removal
Shared connectors can be forcefully removed from workspaces under certain conditions. An additional warning will be displayed that will result in forceful removal. The following actions can lead to the forceful removal of the connector from the workspaces:
- Use permission removal or reconfiguration of the team scope
- Removal of the user from a team.
