
GitHub Create
CertifiedCreate an issue
GitHub Create
Create an issue
Creates a new GitHub issue in the target repository. The authenticated token must be allowed to open issues, and property values are rendered before the issue is created.
type: io.kestra.plugin.github.issues.CreateExamples
Create an issue in a repository using JWT token.
id: github_issue_create_flow
namespace: company.team
tasks:
- id: create_issue
type: io.kestra.plugin.github.issues.Create
jwtToken: "{{ secret('GITHUB_JWT_TOKEN') }}"
repository: kestra-io/kestra
title: Workflow failed
body: "{{ execution.id }} has failed on {{ taskrun.startDate }}. See the link below for more details"
labels:
- bug
- workflow
Create an issue in a repository using OAuth token.
id: github_issue_create_flow
namespace: company.team
tasks:
- id: create_issue
type: io.kestra.plugin.github.issues.Create
login: your_github_login
oauthToken: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
repository: kestra-io/kestra
title: Workflow failed
body: "{{ execution.id }} has failed on {{ taskrun.startDate }}. See the link below for more details"
labels:
- bug
- workflow
Create an issue in a repository with assignees.
id: github_issue_create_flow
namespace: company.team
tasks:
- id: create_issue
type: io.kestra.plugin.github.issues.Create
oauthToken: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
repository: kestra-io/kestra
title: Workflow failed
body: "{{ execution.id }} has failed on {{ taskrun.startDate }}. See the link below for more details"
labels:
- bug
- workflow
assignees:
- MyDeveloperUserName
- MyDesignerUserName
Create an issue and set custom Issue Field values using human-readable field names.
id: github_issue_create_with_fields_flow
namespace: company.team
tasks:
- id: create_issue
type: io.kestra.plugin.github.issues.Create
oauthToken: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
repository: kestra-io/kestra
title: Automated issue with custom fields
body: "Created by Kestra workflow {{ execution.id }}"
labels:
- automation
fields:
Customer: "Kestra"
Stage: "In review"
Properties
appInstallationToken string
GitHub App installation token
Installation access token generated by a GitHub App. Use this for repository-scoped app access instead of a user token.
assignees array
Issue assignees
GitHub logins to assign when the issue is created
body string
Issue body
Markdown body for the issue. This value is rendered before the request is sent
endpoint string
GitHub API endpoint
GitHub or GitHub Enterprise API base URL such as https://api.github.com or https://ghe.acme.com/api/v3. Set this when targeting GitHub Enterprise or a non-default API endpoint.
fields object
Issue field values
Custom field values to set on the issue after creation, using the GitHub Issues field-values API (API version 2026-03-10). Only available for organization repositories — personal repositories always return HTTP 404. Keys can be either human-readable field names (e.g. "Customer", "Stage") or field node IDs (e.g. PVTF_…). Human-readable names are resolved automatically to node IDs via the GitHub API (GET /orgs/{org}/issues/field-definitions). Values are the field values to set. Unsupported value types are passed through as-is; GitHub will return a 422 if the type is invalid. Requires a token with the project scope in addition to issues: write. When null or empty the REST call is skipped entirely and existing behavior is preserved.
jwtToken string
GitHub JWT token
GitHub App JWT used for app-level authentication. Use this when the task should authenticate as the app rather than a user.
labels array
Issue labels
Labels to apply to the issue when it is created
login string
GitHub login
GitHub login used with oauthToken for authenticated requests. Leave unset when authenticating with jwtToken or appInstallationToken.
oauthToken string
GitHub OAuth token
GitHub personal access token used for authenticated requests. Can be used alone or with login.
pluginDefaultsRef Non-dynamicstring
Reference (ref) of the pluginDefaults to apply to this task.
repository string
Target repository
Repository in owner/repo format where the issue will be created
title string
Issue title
Short summary shown in GitHub.
Outputs
issueNumber integer
Issue number
Numeric issue number assigned by GitHub
issueUrl
Issue URL
GitHub URL for the created issue