All tasks

Function NameDescription
createIssueCreates a new issue in a repository.
addIssueAssigneesAdds assignees to an existing issue.
addIssueLabelsAdds labels to an existing issue.
createIssueCommentCreates a new comment on an existing issue.
getRepoRetrieves information about a repository.
createIssueCommentWithReactionCreates a new comment on an existing issue with a reaction.
addIssueCommentReactionAdds a reaction to an existing issue comment.
updateWebhookUpdates an existing webhook.
createWebhookCreates a new webhook.
listWebhooksLists the webhooks for a repository.
updateOrgWebhookUpdates an existing webhook for an organization.
createOrgWebhookCreates a new webhook for an organization.
listOrgWebhooksLists the webhooks for an organization.

Usage

client.defineJob({
  id: "github-integration-on-issue-opened",
  name: "GitHub Integration - On Issue Opened",
  version: "0.1.0",
  integrations: { github },
  trigger: github.triggers.repo({
    event: events.onIssueOpened,
    owner: "triggerdotdev",
    repo: "empty",
  }),
  run: async (payload, io, ctx) => {
    await io.github.addIssueAssignees("add assignee", {
      owner: payload.repository.owner.login,
      repo: payload.repository.name,
      issueNumber: payload.issue.number,
      assignees: ["matt-aitken"],
    });

    await io.github.addIssueLabels("add label", {
      owner: payload.repository.owner.login,
      repo: payload.repository.name,
      issueNumber: payload.issue.number,
      labels: ["bug"],
    });

    return { payload, ctx };
  },
});