Skip to content
Ona Docs

CheckAuthenticationForHost

client.Runners.CheckAuthenticationForHost(ctx, body) (*RunnerCheckAuthenticationForHostResponse, error)
POST/gitpod.v1.RunnerService/CheckAuthenticationForHost

Checks if a user is authenticated for a specific host.

Use this method to:

  • Verify authentication status
  • Get authentication URLs
  • Check PAT support

Examples

  • Check authentication:

    Verifies authentication for a host.

    host: "github.com"
ParametersExpand Collapse
body RunnerCheckAuthenticationForHostParams
Host param.Field[string]Optional
RunnerID param.Field[string]Optional
formatuuid
ReturnsExpand Collapse
type RunnerCheckAuthenticationForHostResponse struct{…}
Authenticated boolOptional
DeprecatedAuthenticationURL stringOptional
DeprecatedPatSupported boolOptional
ScmID stringOptional

scm_id is the unique identifier of the SCM provider

ScmName stringOptional

scm_name is the human-readable name of the SCM provider (e.g., “GitHub”, “GitLab”)

SupportsOauth2 RunnerCheckAuthenticationForHostResponseSupportsOauth2Optional

supports_oauth2 indicates that the host supports OAuth2 authentication

AuthURL stringOptional

auth_url is the URL where users can authenticate

DocsURL stringOptional

docs_url is the URL to the documentation explaining this authentication method

SupportsPat RunnerCheckAuthenticationForHostResponseSupportsPatOptional

supports_pat indicates that the host supports Personal Access Token authentication

CreateURL stringOptional

create_url is the URL where users can create a new Personal Access Token

DocsURL stringOptional

docs_url is the URL to the documentation explaining PAT usage for this host

Example stringOptional

example is an example of a Personal Access Token

RequiredScopes []stringOptional

required_scopes is the list of permissions required for the Personal Access Token

CheckAuthenticationForHost

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.CheckAuthenticationForHost(context.TODO(), gitpod.RunnerCheckAuthenticationForHostParams{
    Host: gitpod.F("github.com"),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.Authenticated)
}
{
  "authenticated": true,
  "authenticationUrl": "authenticationUrl",
  "patSupported": true,
  "scmId": "scmId",
  "scmName": "scmName",
  "supportsOauth2": {
    "authUrl": "authUrl",
    "docsUrl": "docsUrl"
  },
  "supportsPat": {
    "createUrl": "createUrl",
    "docsUrl": "docsUrl",
    "example": "example",
    "requiredScopes": [
      "string"
    ]
  }
}
Returns Examples
{
  "authenticated": true,
  "authenticationUrl": "authenticationUrl",
  "patSupported": true,
  "scmId": "scmId",
  "scmName": "scmName",
  "supportsOauth2": {
    "authUrl": "authUrl",
    "docsUrl": "docsUrl"
  },
  "supportsPat": {
    "createUrl": "createUrl",
    "docsUrl": "docsUrl",
    "example": "example",
    "requiredScopes": [
      "string"
    ]
  }
}