With the Jira API, you can create custom integrations to automatically track and manage issues in Jira. For example, you could create a custom integration that:
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
jira: {
type: "app",
app: "jira",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.atlassian.com/me`,
headers: {
Authorization: `Bearer ${this.jira.$auth.oauth_access_token}`,
},
})
},
})
Emit new event when an event with subscribed event source triggered, See the docs
Emit new event when an issue is created. Note that Jira supports only one webhook, if more sources are needed please use New Event
source and select multiple events.
Emit new event when an issue is deleted. Note that Jira supports only one webhook, if more sources are needed please use New Event
source and select multiple events.
Emit new event when an issue is updated. Note that Jira supports only one webhook, if more sources are needed please use New Event
source and select multiple events.
Adds multiple attachments to an issue, See the docs
Adds a user as a watcher of an issue by passing the account ID of the user, For example, 5b10ac8d82e05b22cc7d4ef5
, If no user is specified the calling user is added. See the docs
Jira uses OAuth authentication. When you connect your Jira account, Pipedream will open a popup window where you can sign into Jira and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any Jira API.
Pipedream requests the following authorization scopes when you connect your account:
read:jira-work
manage:jira-project
manage:jira-configuration
read:jira-user
write:jira-work
manage:jira-data-provider
read:me
offline_access
read:issue-details:jira
read:board-scope:jira-software
write:webhook:jira
read:field:jira
read:project:jira
delete:webhook:jira
write:board-scope:jira-software
GET
https://auth.atlassian.com/authorize
?
client_id={{oauth.client_id}}
&
state={{oauth.state}}
&
redirect_uri={{oauth.redirect_uri}}
&
response_type=code
&
scope={{oauth.space_separated_scopes}}
&
audience=api.atlassian.com
&
prompt=consent
POST
https://auth.atlassian.com/oauth/token
content-type: application/x-www-form-urlencoded
accept: application/json
client_id={{oauth.client_id}}
&
client_secret={{oauth.client_secret}}
&
grant_type=authorization_code
&
code={{oauth.code}}
&
redirect_uri={{oauth.redirect_uri}}
POST
https://auth.atlassian.com/oauth/token
content-type: application/x-www-form-urlencoded
accept: application/json
client_id={{oauth.client_id}}
&
client_secret={{oauth.client_secret}}
&
grant_type=refresh_token
&
refresh_token={{oauth.refresh_token}}