Skip to content
Ona Docs

SearchRepositories

client.Runners.SearchRepositories(ctx, body) (*RunnerSearchRepositoriesResponse, error)
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
body RunnerSearchRepositoriesParams
DeprecatedLimit param.Field[int64]Optional

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

formatint32
maximum100
minimum1
RunnerID param.Field[string]Optional
formatuuid
ScmHost param.Field[string]Optional

The SCM’s host to retrieve repositories from

SearchMode param.Field[SearchMode]Optional

Search mode determines how search_string is interpreted

SearchString param.Field[string]Optional

Search query - interpretation depends on search_mode

ReturnsExpand Collapse
type RunnerSearchRepositoriesResponse struct{…}
LastPage int64Optional

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

formatint32
Repositories []RunnerSearchRepositoriesResponseRepositoryOptional

List of repositories matching the search criteria

Name stringOptional

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

URL stringOptional

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

SearchRepositories

package main

import (
  "context"
  "fmt"

  "github.com/gitpod-io/gitpod-sdk-go"
  "github.com/gitpod-io/gitpod-sdk-go/option"
)

func main() {
  client := gitpod.NewClient(
    option.WithBearerToken("My Bearer Token"),
  )
  response, err := client.Runners.SearchRepositories(context.TODO(), gitpod.RunnerSearchRepositoriesParams{
    RunnerID: gitpod.F("d2c94c27-3b76-4a42-b88c-95a85e392c68"),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.LastPage)
}
{
  "lastPage": 0,
  "pagination": {
    "nextToken": "nextToken"
  },
  "repositories": [
    {
      "name": "name",
      "url": "url"
    }
  ]
}
Returns Examples
{
  "lastPage": 0,
  "pagination": {
    "nextToken": "nextToken"
  },
  "repositories": [
    {
      "name": "name",
      "url": "url"
    }
  ]
}