GitHub Search

GitHub Search

Certified

Search repositories

Runs a GitHub repository search and writes matching repository metadata to Kestra internal storage. Anonymous execution skips private repositories and may omit fields, and authenticated runs default to UPDATED sorted in ascending order.

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

Search for Github repositories using query.

yaml
id: github_repo_search_flow
namespace: company.team

tasks:
  - id: search_repositories
    type: io.kestra.plugin.github.repositories.Search
    oauthToken: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
    query: "repo:kestra-io/plugin-github"

Search for Github repositories using repository.

yaml
id: github_repo_search_flow
namespace: company.team

tasks:
  - id: search_repositories
    type: io.kestra.plugin.github.repositories.Search
    oauthToken: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
    repository: kestra-io/plugin-github

Search for Github repositories and order the results.

yaml
id: github_repo_search_flow
namespace: company.team

tasks:
  - id: search_repositories
    type: io.kestra.plugin.github.repositories.Search
    oauthToken: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
    query: "user:kestra-io language:java is:public"
    sort: STARS
    order: DESC

Search for Github repositories with filters like language and visibility, and order the results.

yaml
id: github_repo_search_flow
namespace: company.team

tasks:
  - id: search_repositories
    type: io.kestra.plugin.github.repositories.Search
    oauthToken: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
    user: kestra-io
    language: java
    visibility: PUBLIC
    sort: STARS
    order: DESC
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.

Created date filter

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

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.

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.

Language filter

Language name or alias for the language: qualifier.

GitHub login

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

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.

Reference (ref) of the pluginDefaults to apply to this task.

Search keywords and qualifiers

Repository search syntax combining keywords with qualifiers like language, topic, stars.

Repository filter

owner/repo value for the repo: qualifier.

DefaultUPDATED
Possible Values
UPDATEDSTARSFORKS

Sort field

UPDATED sorts by last update time (default); STARS by star count; FORKS by fork count.

Stars filter

Star count qualifier; supports >, <, and range (..).

Topic filter

Topic name used for the topic: qualifier

User scope

Limits search to repositories owned by the given user; use org: within query for organizations.

Possible Values
PUBLICPRIVATEINTERNAL

Visibility filter

PUBLIC limits results to public repositories, PRIVATE to private repositories visible to the token, and INTERNAL to internal repositories

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.