Skip to content
Ona Docs

SearchRepositories

runners.search_repositories(RunnerSearchRepositoriesParams**kwargs) -> RunnerSearchRepositoriesResponse
POST/gitpod.v1.RunnerService/SearchRepositories

Searches for repositories across all authenticated SCM hosts.

Use this method to:

  • List available repositories
  • Search repositories by name or content
  • Discover repositories for environment creation

Returns repositories from all authenticated SCM hosts in natural sort order. If no repositories are found, returns an empty list.

Examples

  • List all repositories:

    Returns up to 25 repositories from all authenticated hosts.

    runnerId: "d2c94c27-3b76-4a42-b88c-95a85e392c68"
  • Search repositories:

    Searches for repositories matching the query across all hosts.

    runnerId: "d2c94c27-3b76-4a42-b88c-95a85e392c68"
    searchString: "my-project"
    limit: 10
ParametersExpand Collapse
Deprecatedlimit: Optional[int]

Maximum number of repositories to return. Default: 25, Maximum: 100 Deprecated: Use pagination.page_size instead

formatint32
maximum100
minimum1
runner_id: Optional[str]
formatuuid
scm_host: Optional[str]

The SCM’s host to retrieve repositories from

search_mode: Optional[SearchMode]

Search mode determines how search_string is interpreted

One of the following:
"SEARCH_MODE_UNSPECIFIED"
"SEARCH_MODE_KEYWORD"
"SEARCH_MODE_NATIVE"
search_string: Optional[str]

Search query - interpretation depends on search_mode

ReturnsExpand Collapse
class RunnerSearchRepositoriesResponse:
last_page: Optional[int]

Deprecated: Use pagination token instead. Total pages can be extracted from token.

formatint32
repositories: Optional[List[Repository]]

List of repositories matching the search criteria

name: Optional[str]

Repository name (e.g., “my-project”)

url: Optional[str]

Repository URL (e.g., “https://github.com/owner/my-project”)

SearchRepositories

import os
from gitpod import Gitpod

client = Gitpod(
    bearer_token=os.environ.get("GITPOD_API_KEY"),  # This is the default and can be omitted
)
response = client.runners.search_repositories(
    runner_id="d2c94c27-3b76-4a42-b88c-95a85e392c68",
)
print(response.last_page)
{
  "lastPage": 0,
  "pagination": {
    "nextToken": "nextToken"
  },
  "repositories": [
    {
      "name": "name",
      "url": "url"
    }
  ]
}
Returns Examples
{
  "lastPage": 0,
  "pagination": {
    "nextToken": "nextToken"
  },
  "repositories": [
    {
      "name": "name",
      "url": "url"
    }
  ]
}