GitHub Search

GitHub Search

Certified

Search commits

Runs a GitHub commit search and writes matching commit metadata to Kestra internal storage. Anonymous execution returns an empty output, and authenticated runs default to COMMITTER_DATE sorted in ascending order.

yaml
type: io.kestra.plugin.github.commits.Search

Search for commits in a repository.

yaml
id: github_commit_search_flow
namespace: company.team

tasks:
  - id: search_commit
    type: io.kestra.plugin.github.commits.Search
    oauthToken: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
    query: "Initial repo:kestra-io/plugin-github language:java"

Search for commits in a repository.

yaml
id: github_commit_search_flow
namespace: company.team

tasks:
  - id: search_commit
    type: io.kestra.plugin.github.commits.Search
    oauthToken: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
    query: Initial
    repository: kestra-io/plugin-github
Properties

GitHub App installation token

Installation access token generated by a GitHub App. Use this for repository-scoped app access instead of a user token.

Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.

Definitions
assetFailureBehaviorstring
Possible Values
IGNOREFAILWARN

Asset failure behavior

Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.

enableAutobooleanstring

Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.

inputsarray

The assets consumed as inputs.

id*string
Min length1
typestring
outputs

The assets produced as outputs.

id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*string
Min length1

Custom asset type

descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150

Author login

Adds the author: qualifier for the GitHub login

Author date filter

Supports >, <, and range (..) date syntax

Author email

Filters by author email address

Author name

Filters by author display name

Committer login

Adds the committer: qualifier for the GitHub login

Committer date filter

Supports >, <, and range (..) date syntax

Committer email

Filters by committer email address

Committer name

Filters by committer display name

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.

DefaultSTORE
Possible Values
STOREFETCHFETCH_ONENONE

Result handling mode

Controls how hits are exposed in outputs; default FETCH returns all hits in the response. FETCH_ONE returns only the first hit, STORE writes hits to Kestra storage and returns a URI, and NONE leaves outputs empty.

Commit SHA filter

Matches commits with the specified SHA-1 hash

Repository visibility

Value used for the is: qualifier such as public or private

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.

GitHub login

GitHub login used with oauthToken for authenticated requests. Leave unset when authenticating with jwtToken or appInstallationToken.

Filter merge commits

When set, includes only merge commits for true or excludes them for false

GitHub OAuth token

GitHub personal access token used for authenticated requests. Can be used alone or with login.

DefaultASC
Possible Values
ASCDESC

Sort direction

ASC sorts ascending (default); DESC sorts descending.

Organization scope

Limits the search to repositories owned by the given organization

Parent commit SHA

Filters by parent commit SHA-1

Search keywords and qualifiers

Commit search syntax combining keywords with qualifiers like repo, author, path.

Repository to search

owner/repo value used for the repo: qualifier

DefaultCOMMITTER_DATE
Possible Values
COMMITTER_DATEAUTHOR_DATE

Sort field

COMMITTER_DATE sorts by committer timestamp (default); AUTHOR_DATE by author timestamp.

Tree SHA filter

Filters by Git tree SHA-1

User scope

Limits the search to repositories owned by the given user

First hit

Available only when fetchType=FETCH_ONE; contains the first hit source.

SubTypeobject

Fetched hits

Available only when fetchType=FETCH; contains hit sources for the current response page.

Returned hit count

Number of hits included in outputs for the selected fetch type.

Total hits reported

Total hits reported by GitHub search, regardless of pagination.

Formaturi

Stored hits URI

Available only when fetchType=STORE; Kestra internal storage path to the Ion file.