github

package
v69.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 17, 2025 License: BSD-3-Clause Imports: 27 Imported by: 75

Documentation

Overview

Package github provides a client for using the GitHub API.

Usage:

import "github.com/google/go-github/v69/github"	// with go modules enabled (GO111MODULE=on or outside GOPATH)
import "github.com/google/go-github/github"     // with go modules disabled

Construct a new GitHub client, then use the various services on the client to access different parts of the GitHub API. For example:

client := github.NewClient(nil)

// list all organizations for user "willnorris"
orgs, _, err := client.Organizations.List(ctx, "willnorris", nil)

Some API methods have optional parameters that can be passed. For example:

client := github.NewClient(nil)

// list public repositories for org "github"
opt := &github.RepositoryListByOrgOptions{Type: "public"}
repos, _, err := client.Repositories.ListByOrg(ctx, "github", opt)

The services of a client divide the API into logical chunks and correspond to the structure of the GitHub API documentation at https://docs.github.com/rest .

NOTE: Using the https://pkg.go.dev/context package, one can easily pass cancelation signals and deadlines to various services of the client for handling a request. In case there is no context available, then context.Background() can be used as a starting point.

For more sample code snippets, head over to the https://github.com/google/go-github/tree/master/example directory.

Authentication

Use Client.WithAuthToken to configure your client to authenticate using an Oauth token (for example, a personal access token). This is what is needed for a majority of use cases aside from GitHub Apps.

client := github.NewClient(nil).WithAuthToken("... your access token ...")

Note that when using an authenticated Client, all calls made by the client will include the specified OAuth token. Therefore, authenticated clients should almost never be shared between different users.

For API methods that require HTTP Basic Authentication, use the BasicAuthTransport.

GitHub Apps authentication can be provided by the https://github.com/bradleyfalzon/ghinstallation package. It supports both authentication as an installation, using an installation access token, and as an app, using a JWT.

To authenticate as an installation:

import "github.com/bradleyfalzon/ghinstallation"

func main() {
	// Wrap the shared transport for use with the integration ID 1 authenticating with installation ID 99.
	itr, err := ghinstallation.NewKeyFromFile(http.DefaultTransport, 1, 99, "2016-10-19.private-key.pem")
	if err != nil {
		// Handle error.
	}

	// Use installation transport with client
	client := github.NewClient(&http.Client{Transport: itr})

	// Use client...
}

To authenticate as an app, using a JWT:

import "github.com/bradleyfalzon/ghinstallation"

func main() {
	// Wrap the shared transport for use with the application ID 1.
	atr, err := ghinstallation.NewAppsTransportKeyFromFile(http.DefaultTransport, 1, "2016-10-19.private-key.pem")
	if err != nil {
		// Handle error.
	}

	// Use app transport with client
	client := github.NewClient(&http.Client{Transport: atr})

	// Use client...
}

Rate Limiting

GitHub imposes a rate limit on all API clients. Unauthenticated clients are limited to 60 requests per hour, while authenticated clients can make up to 5,000 requests per hour. The Search API has a custom rate limit. Unauthenticated clients are limited to 10 requests per minute, while authenticated clients can make up to 30 requests per minute. To receive the higher rate limit when making calls that are not issued on behalf of a user, use UnauthenticatedRateLimitedTransport.

The returned Response.Rate value contains the rate limit information from the most recent API call. If a recent enough response isn't available, you can use RateLimits to fetch the most up-to-date rate limit data for the client.

To detect an API rate limit error, you can check if its type is *github.RateLimitError. For secondary rate limits, you can check if its type is *github.AbuseRateLimitError:

repos, _, err := client.Repositories.List(ctx, "", nil)
if _, ok := err.(*github.RateLimitError); ok {
	log.Println("hit rate limit")
}
if _, ok := err.(*github.AbuseRateLimitError); ok {
	log.Println("hit secondary rate limit")
}

Learn more about GitHub rate limiting at https://docs.github.com/rest/rate-limit .

Accepted Status

Some endpoints may return a 202 Accepted status code, meaning that the information required is not yet ready and was scheduled to be gathered on the GitHub side. Methods known to behave like this are documented specifying this behavior.

To detect this condition of error, you can check if its type is *github.AcceptedError:

stats, _, err := client.Repositories.ListContributorsStats(ctx, org, repo)
if _, ok := err.(*github.AcceptedError); ok {
	log.Println("scheduled on GitHub side")
}

Conditional Requests

The GitHub REST API has good support for conditional HTTP requests via the ETag header which will help prevent you from burning through your rate limit, as well as help speed up your application. go-github does not handle conditional requests directly, but is instead designed to work with a caching http.Transport.

Typically, an RFC 7234 compliant HTTP cache such as https://github.com/gregjones/httpcache is recommended. Alternatively, the https://github.com/bored-engineer/github-conditional-http-transport package relies on (undocumented) GitHub specific cache logic and is recommended when making requests using short-lived credentials such as a GitHub App installation token.

Learn more about GitHub conditional requests at https://docs.github.com/rest/overview/resources-in-the-rest-api#conditional-requests.

Creating and Updating Resources

All structs for GitHub resources use pointer values for all non-repeated fields. This allows distinguishing between unset fields and those set to a zero-value. Helper functions have been provided to easily create these pointers for string, bool, and int values. For example:

// create a new private repository named "foo"
repo := &github.Repository{
	Name:    github.Ptr("foo"),
	Private: github.Ptr(true),
}
client.Repositories.Create(ctx, "", repo)

Users who have worked with protocol buffers should find this pattern familiar.

Pagination

All requests for resource collections (repos, pull requests, issues, etc.) support pagination. Pagination options are described in the github.ListOptions struct and passed to the list methods directly or as an embedded type of a more specific list options struct (for example github.PullRequestListOptions). Pages information is available via the github.Response struct.

client := github.NewClient(nil)

opt := &github.RepositoryListByOrgOptions{
	ListOptions: github.ListOptions{PerPage: 10},
}
// get all pages of results
var allRepos []*github.Repository
for {
	repos, resp, err := client.Repositories.ListByOrg(ctx, "github", opt)
	if err != nil {
		return err
	}
	allRepos = append(allRepos, repos...)
	if resp.NextPage == 0 {
		break
	}
	opt.Page = resp.NextPage
}

Index

Examples

Constants

View Source
const (
	// BypassRateLimitCheck prevents a pre-emptive check for exceeded primary rate limits
	// Specify this by providing a context with this key, e.g.
	//   context.WithValue(context.Background(), github.BypassRateLimitCheck, true)
	BypassRateLimitCheck requestContext = iota

	SleepUntilPrimaryRateLimitResetWhenRateLimited
)
View Source
const (

	// SHA1SignatureHeader is the GitHub header key used to pass the HMAC-SHA1 hexdigest.
	SHA1SignatureHeader = "X-Hub-Signature"
	// SHA256SignatureHeader is the GitHub header key used to pass the HMAC-SHA256 hexdigest.
	SHA256SignatureHeader = "X-Hub-Signature-256"
	// EventTypeHeader is the GitHub header key used to pass the event type.
	EventTypeHeader = "X-Github-Event"
	// DeliveryIDHeader is the GitHub header key used to pass the unique ID for the webhook event.
	DeliveryIDHeader = "X-Github-Delivery"
)
View Source
const (
	Version = "v69.2.0"
)

Variables

View Source
var ErrBranchNotProtected = errors.New("branch is not protected")
View Source
var ErrMixedCommentStyles = errors.New("cannot use both position and side/line form comments")
View Source
var ErrPathForbidden = errors.New("path must not contain '..' due to auth vulnerability issue")

Functions

func Bool deprecated

func Bool(v bool) *bool

Bool is a helper routine that allocates a new bool value to store v and returns a pointer to it.

Deprecated: use Ptr instead.

func CheckResponse

func CheckResponse(r *http.Response) error

CheckResponse checks the API response for errors, and returns them if present. A response is considered an error if it has a status code outside the 200 range or equal to 202 Accepted. API error responses are expected to have response body, and a JSON response body that maps to ErrorResponse.

The error type will be *RateLimitError for rate limit exceeded errors, *AcceptedError for 202 Accepted status codes, *TwoFactorAuthError for two-factor authentication errors, and *RedirectionError for redirect status codes (only happens when ignoring redirections).

func DeliveryID

func DeliveryID(r *http.Request) string

DeliveryID returns the unique delivery ID of webhook request r.

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/events/github-event-types

func EventForType

func EventForType(messageType string) interface{}

EventForType returns an empty struct matching the specified GitHub event type. If messageType does not match any known event types, it returns nil.

func Int deprecated

func Int(v int) *int

Int is a helper routine that allocates a new int value to store v and returns a pointer to it.

Deprecated: use Ptr instead.

func Int64 deprecated

func Int64(v int64) *int64

Int64 is a helper routine that allocates a new int64 value to store v and returns a pointer to it.

Deprecated: use Ptr instead.

func MessageTypes

func MessageTypes() []string

MessageTypes returns a sorted list of all the known GitHub event type strings supported by go-github.

func ParseWebHook

func ParseWebHook(messageType string, payload []byte) (interface{}, error)

ParseWebHook parses the event payload. For recognized event types, a value of the corresponding struct type will be returned (as returned by Event.ParsePayload()). An error will be returned for unrecognized event types.

Example usage:

func (s *GitHubEventMonitor) ServeHTTP(w http.ResponseWriter, r *http.Request) {
  payload, err := github.ValidatePayload(r, s.webhookSecretKey)
  if err != nil { ... }
  event, err := github.ParseWebHook(github.WebHookType(r), payload)
  if err != nil { ... }
  switch event := event.(type) {
  case *github.CommitCommentEvent:
      processCommitCommentEvent(event)
  case *github.CreateEvent:
      processCreateEvent(event)
  ...
  }
}

func Ptr

func Ptr[T any](v T) *T

Ptr is a helper routine that allocates a new T value to store v and returns a pointer to it.

func String deprecated

func String(v string) *string

String is a helper routine that allocates a new string value to store v and returns a pointer to it.

Deprecated: use Ptr instead.

func Stringify

func Stringify(message interface{}) string

Stringify attempts to create a reasonable string representation of types in the GitHub library. It does things like resolve pointers to their values and omits struct fields with nil values.

func ValidatePayload

func ValidatePayload(r *http.Request, secretToken []byte) (payload []byte, err error)

ValidatePayload validates an incoming GitHub Webhook event request and returns the (JSON) payload. The Content-Type header of the payload can be "application/json" or "application/x-www-form-urlencoded". If the Content-Type is neither then an error is returned. secretToken is the GitHub Webhook secret token. If your webhook does not contain a secret token, you can pass nil or an empty slice. This is intended for local development purposes only and all webhooks should ideally set up a secret token.

Example usage:

func (s *GitHubEventMonitor) ServeHTTP(w http.ResponseWriter, r *http.Request) {
  payload, err := github.ValidatePayload(r, s.webhookSecretKey)
  if err != nil { ... }
  // Process payload...
}

func ValidatePayloadFromBody

func ValidatePayloadFromBody(contentType string, readable io.Reader, signature string, secretToken []byte) (payload []byte, err error)

ValidatePayloadFromBody validates an incoming GitHub Webhook event request body and returns the (JSON) payload. The Content-Type header of the payload can be "application/json" or "application/x-www-form-urlencoded". If the Content-Type is neither then an error is returned. secretToken is the GitHub Webhook secret token. If your webhook does not contain a secret token, you can pass an empty secretToken. Webhooks without a secret token are not secure and should be avoided.

Example usage:

func (s *GitHubEventMonitor) ServeHTTP(w http.ResponseWriter, r *http.Request) {
  // read signature from request
  signature := ""
  payload, err := github.ValidatePayloadFromBody(r.Header.Get("Content-Type"), r.Body, signature, s.webhookSecretKey)
  if err != nil { ... }
  // Process payload...
}

func ValidateSignature

func ValidateSignature(signature string, payload, secretToken []byte) error

ValidateSignature validates the signature for the given payload. signature is the GitHub hash signature delivered in the X-Hub-Signature header. payload is the JSON payload sent by GitHub Webhooks. secretToken is the GitHub Webhook secret token.

GitHub API docs: https://developer.github.com/webhooks/securing/#validating-payloads-from-github

func WebHookType

func WebHookType(r *http.Request) string

WebHookType returns the event type of webhook request r.

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/events/github-event-types

Types

type APIMeta

type APIMeta struct {
	// An array of IP addresses in CIDR format specifying the addresses
	// that incoming service hooks will originate from on GitHub.com.
	Hooks []string `json:"hooks,omitempty"`

	// An array of IP addresses in CIDR format specifying the Git servers
	// for GitHub.com.
	Git []string `json:"git,omitempty"`

	// Whether authentication with username and password is supported.
	// (GitHub Enterprise instances using CAS or OAuth for authentication
	// will return false. Features like Basic Authentication with a
	// username and password, sudo mode, and two-factor authentication are
	// not supported on these servers.)
	VerifiablePasswordAuthentication *bool `json:"verifiable_password_authentication,omitempty"`

	// An array of IP addresses in CIDR format specifying the addresses
	// which serve GitHub Packages.
	Packages []string `json:"packages,omitempty"`

	// An array of IP addresses in CIDR format specifying the addresses
	// which serve GitHub Pages websites.
	Pages []string `json:"pages,omitempty"`

	// An array of IP addresses specifying the addresses that source imports
	// will originate from on GitHub.com.
	Importer []string `json:"importer,omitempty"`

	// An array of IP addresses specifying the addresses that source imports
	// will originate from on GitHub Enterprise Cloud.
	GithubEnterpriseImporter []string `json:"github_enterprise_importer,omitempty"`

	// An array of IP addresses in CIDR format specifying the IP addresses
	// GitHub Actions will originate from.
	Actions []string `json:"actions,omitempty"`

	// An array of IP addresses in CIDR format specifying the IP addresses
	// Dependabot will originate from.
	Dependabot []string `json:"dependabot,omitempty"`

	// A map of algorithms to SSH key fingerprints.
	SSHKeyFingerprints map[string]string `json:"ssh_key_fingerprints,omitempty"`

	// An array of SSH keys.
	SSHKeys []string `json:"ssh_keys,omitempty"`

	// An array of IP addresses in CIDR format specifying the addresses
	// which serve GitHub websites.
	Web []string `json:"web,omitempty"`

	// An array of IP addresses in CIDR format specifying the addresses
	// which serve GitHub APIs.
	API []string `json:"api,omitempty"`

	// GitHub services and their associated domains. Note that many of these domains
	// are represented as wildcards (e.g. "*.github.com").
	Domains *APIMetaDomains `json:"domains,omitempty"`
}

APIMeta represents metadata about the GitHub API.

func (*APIMeta) GetDomains

func (a *APIMeta) GetDomains() *APIMetaDomains

GetDomains returns the Domains field.

func (*APIMeta) GetSSHKeyFingerprints

func (a *APIMeta) GetSSHKeyFingerprints() map[string]string

GetSSHKeyFingerprints returns the SSHKeyFingerprints map if it's non-nil, an empty map otherwise.

func (*APIMeta) GetVerifiablePasswordAuthentication

func (a *APIMeta) GetVerifiablePasswordAuthentication() bool

GetVerifiablePasswordAuthentication returns the VerifiablePasswordAuthentication field if it's non-nil, zero value otherwise.

type APIMetaArtifactAttestations

type APIMetaArtifactAttestations struct {
	TrustDomain string   `json:"trust_domain,omitempty"`
	Services    []string `json:"services,omitempty"`
}

APIMetaArtifactAttestations represents the artifact attestation services domains.

type APIMetaDomains

type APIMetaDomains struct {
	Website              []string                     `json:"website,omitempty"`
	Codespaces           []string                     `json:"codespaces,omitempty"`
	Copilot              []string                     `json:"copilot,omitempty"`
	Packages             []string                     `json:"packages,omitempty"`
	Actions              []string                     `json:"actions,omitempty"`
	ArtifactAttestations *APIMetaArtifactAttestations `json:"artifact_attestations,omitempty"`
}

APIMetaDomains represents the domains associated with GitHub services.

func (*APIMetaDomains) GetArtifactAttestations

func (a *APIMetaDomains) GetArtifactAttestations() *APIMetaArtifactAttestations

GetArtifactAttestations returns the ArtifactAttestations field.

type AbuseRateLimitError

type AbuseRateLimitError struct {
	Response *http.Response // HTTP response that caused this error
	Message  string         `json:"message"` // error message

	// RetryAfter is provided with some abuse rate limit errors. If present,
	// it is the amount of time that the client should wait before retrying.
	// Otherwise, the client should try again later (after an unspecified amount of time).
	RetryAfter *time.Duration
}

AbuseRateLimitError occurs when GitHub returns 403 Forbidden response with the "documentation_url" field value equal to "https://docs.github.com/rest/overview/rate-limits-for-the-rest-api#about-secondary-rate-limits".

func (*AbuseRateLimitError) Error

func (r *AbuseRateLimitError) Error() string

func (*AbuseRateLimitError) GetRetryAfter

func (a *AbuseRateLimitError) GetRetryAfter() time.Duration

GetRetryAfter returns the RetryAfter field if it's non-nil, zero value otherwise.

func (*AbuseRateLimitError) Is

func (r *AbuseRateLimitError) Is(target error) bool

Is returns whether the provided error equals this error.

type AcceptedError

type AcceptedError struct {
	// Raw contains the response body.
	Raw []byte
}

AcceptedError occurs when GitHub returns 202 Accepted response with an empty body, which means a job was scheduled on the GitHub side to process the information needed and cache it. Technically, 202 Accepted is not a real error, it's just used to indicate that results are not ready yet, but should be available soon. The request can be repeated after some time.

func (*AcceptedError) Error

func (*AcceptedError) Error() string

func (*AcceptedError) Is

func (ae *AcceptedError) Is(target error) bool

Is returns whether the provided error equals this error.

type ActionBilling

type ActionBilling struct {
	TotalMinutesUsed     float64              `json:"total_minutes_used"`
	TotalPaidMinutesUsed float64              `json:"total_paid_minutes_used"`
	IncludedMinutes      float64              `json:"included_minutes"`
	MinutesUsedBreakdown MinutesUsedBreakdown `json:"minutes_used_breakdown"`
}

ActionBilling represents a GitHub Action billing.

type ActionsAllowed

type ActionsAllowed struct {
	GithubOwnedAllowed *bool    `json:"github_owned_allowed,omitempty"`
	VerifiedAllowed    *bool    `json:"verified_allowed,omitempty"`
	PatternsAllowed    []string `json:"patterns_allowed,omitempty"`
}

ActionsAllowed represents selected actions that are allowed.

GitHub API docs: https://docs.github.com/rest/actions/permissions

func (*ActionsAllowed) GetGithubOwnedAllowed

func (a *ActionsAllowed) GetGithubOwnedAllowed() bool

GetGithubOwnedAllowed returns the GithubOwnedAllowed field if it's non-nil, zero value otherwise.

func (*ActionsAllowed) GetVerifiedAllowed

func (a *ActionsAllowed) GetVerifiedAllowed() bool

GetVerifiedAllowed returns the VerifiedAllowed field if it's non-nil, zero value otherwise.

func (ActionsAllowed) String

func (a ActionsAllowed) String() string

type ActionsCache

type ActionsCache struct {
	ID             *int64     `json:"id,omitempty" url:"-"`
	Ref            *string    `json:"ref,omitempty" url:"ref"`
	Key            *string    `json:"key,omitempty" url:"key"`
	Version        *string    `json:"version,omitempty" url:"-"`
	LastAccessedAt *Timestamp `json:"last_accessed_at,omitempty" url:"-"`
	CreatedAt      *Timestamp `json:"created_at,omitempty" url:"-"`
	SizeInBytes    *int64     `json:"size_in_bytes,omitempty" url:"-"`
}

ActionsCache represents a GitHub action cache.

GitHub API docs: https://docs.github.com/rest/actions/cache#about-the-cache-api

func (*ActionsCache) GetCreatedAt

func (a *ActionsCache) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*ActionsCache) GetID

func (a *ActionsCache) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*ActionsCache) GetKey

func (a *ActionsCache) GetKey() string

GetKey returns the Key field if it's non-nil, zero value otherwise.

func (*ActionsCache) GetLastAccessedAt

func (a *ActionsCache) GetLastAccessedAt() Timestamp

GetLastAccessedAt returns the LastAccessedAt field if it's non-nil, zero value otherwise.

func (*ActionsCache) GetRef

func (a *ActionsCache) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*ActionsCache) GetSizeInBytes

func (a *ActionsCache) GetSizeInBytes() int64

GetSizeInBytes returns the SizeInBytes field if it's non-nil, zero value otherwise.

func (*ActionsCache) GetVersion

func (a *ActionsCache) GetVersion() string

GetVersion returns the Version field if it's non-nil, zero value otherwise.

type ActionsCacheList

type ActionsCacheList struct {
	TotalCount    int             `json:"total_count"`
	ActionsCaches []*ActionsCache `json:"actions_caches,omitempty"`
}

ActionsCacheList represents a list of GitHub actions Cache.

GitHub API docs: https://docs.github.com/rest/actions/cache#list-github-actions-caches-for-a-repository

type ActionsCacheListOptions

type ActionsCacheListOptions struct {
	ListOptions
	// The Git reference for the results you want to list.
	// The ref for a branch can be formatted either as refs/heads/<branch name>
	// or simply <branch name>. To reference a pull request use refs/pull/<number>/merge
	Ref *string `url:"ref,omitempty"`
	Key *string `url:"key,omitempty"`
	// Can be one of: "created_at", "last_accessed_at", "size_in_bytes". Default: "last_accessed_at"
	Sort *string `url:"sort,omitempty"`
	// Can be one of: "asc", "desc" Default: desc
	Direction *string `url:"direction,omitempty"`
}

ActionsCacheListOptions represents a list of all possible optional Query parameters for ListCaches method.

GitHub API docs: https://docs.github.com/rest/actions/cache#list-github-actions-caches-for-a-repository

func (*ActionsCacheListOptions) GetDirection

func (a *ActionsCacheListOptions) GetDirection() string

GetDirection returns the Direction field if it's non-nil, zero value otherwise.

func (*ActionsCacheListOptions) GetKey

func (a *ActionsCacheListOptions) GetKey() string

GetKey returns the Key field if it's non-nil, zero value otherwise.

func (*ActionsCacheListOptions) GetRef

func (a *ActionsCacheListOptions) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*ActionsCacheListOptions) GetSort

func (a *ActionsCacheListOptions) GetSort() string

GetSort returns the Sort field if it's non-nil, zero value otherwise.

type ActionsCacheUsage

type ActionsCacheUsage struct {
	FullName                string `json:"full_name"`
	ActiveCachesSizeInBytes int64  `json:"active_caches_size_in_bytes"`
	ActiveCachesCount       int    `json:"active_caches_count"`
}

ActionsCacheUsage represents a GitHub Actions Cache Usage object.

GitHub API docs: https://docs.github.com/rest/actions/cache#get-github-actions-cache-usage-for-a-repository

type ActionsCacheUsageList

type ActionsCacheUsageList struct {
	TotalCount     int                  `json:"total_count"`
	RepoCacheUsage []*ActionsCacheUsage `json:"repository_cache_usages,omitempty"`
}

ActionsCacheUsageList represents a list of repositories with GitHub Actions cache usage for an organization.

GitHub API docs: https://docs.github.com/rest/actions/cache#get-github-actions-cache-usage-for-a-repository

type ActionsEnabledOnEnterpriseRepos

type ActionsEnabledOnEnterpriseRepos struct {
	TotalCount    int             `json:"total_count"`
	Organizations []*Organization `json:"organizations"`
}

ActionsEnabledOnEnterpriseRepos represents all the repositories in an enterprise for which Actions is enabled.

type ActionsEnabledOnOrgRepos

type ActionsEnabledOnOrgRepos struct {
	TotalCount   int           `json:"total_count"`
	Repositories []*Repository `json:"repositories"`
}

ActionsEnabledOnOrgRepos represents all the repositories in an organization for which Actions is enabled.

type ActionsPermissions

type ActionsPermissions struct {
	EnabledRepositories *string `json:"enabled_repositories,omitempty"`
	AllowedActions      *string `json:"allowed_actions,omitempty"`
	SelectedActionsURL  *string `json:"selected_actions_url,omitempty"`
}

ActionsPermissions represents a policy for repositories and allowed actions in an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions

func (*ActionsPermissions) GetAllowedActions

func (a *ActionsPermissions) GetAllowedActions() string

GetAllowedActions returns the AllowedActions field if it's non-nil, zero value otherwise.

func (*ActionsPermissions) GetEnabledRepositories

func (a *ActionsPermissions) GetEnabledRepositories() string

GetEnabledRepositories returns the EnabledRepositories field if it's non-nil, zero value otherwise.

func (*ActionsPermissions) GetSelectedActionsURL

func (a *ActionsPermissions) GetSelectedActionsURL() string

GetSelectedActionsURL returns the SelectedActionsURL field if it's non-nil, zero value otherwise.

func (ActionsPermissions) String

func (a ActionsPermissions) String() string

type ActionsPermissionsEnterprise

type ActionsPermissionsEnterprise struct {
	EnabledOrganizations *string `json:"enabled_organizations,omitempty"`
	AllowedActions       *string `json:"allowed_actions,omitempty"`
	SelectedActionsURL   *string `json:"selected_actions_url,omitempty"`
}

ActionsPermissionsEnterprise represents a policy for allowed actions in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions

func (*ActionsPermissionsEnterprise) GetAllowedActions

func (a *ActionsPermissionsEnterprise) GetAllowedActions() string

GetAllowedActions returns the AllowedActions field if it's non-nil, zero value otherwise.

func (*ActionsPermissionsEnterprise) GetEnabledOrganizations

func (a *ActionsPermissionsEnterprise) GetEnabledOrganizations() string

GetEnabledOrganizations returns the EnabledOrganizations field if it's non-nil, zero value otherwise.

func (*ActionsPermissionsEnterprise) GetSelectedActionsURL

func (a *ActionsPermissionsEnterprise) GetSelectedActionsURL() string

GetSelectedActionsURL returns the SelectedActionsURL field if it's non-nil, zero value otherwise.

func (ActionsPermissionsEnterprise) String

type ActionsPermissionsRepository

type ActionsPermissionsRepository struct {
	Enabled            *bool   `json:"enabled,omitempty"`
	AllowedActions     *string `json:"allowed_actions,omitempty"`
	SelectedActionsURL *string `json:"selected_actions_url,omitempty"`
}

ActionsPermissionsRepository represents a policy for repositories and allowed actions in a repository.

GitHub API docs: https://docs.github.com/rest/actions/permissions

func (*ActionsPermissionsRepository) GetAllowedActions

func (a *ActionsPermissionsRepository) GetAllowedActions() string

GetAllowedActions returns the AllowedActions field if it's non-nil, zero value otherwise.

func (*ActionsPermissionsRepository) GetEnabled

func (a *ActionsPermissionsRepository) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

func (*ActionsPermissionsRepository) GetSelectedActionsURL

func (a *ActionsPermissionsRepository) GetSelectedActionsURL() string

GetSelectedActionsURL returns the SelectedActionsURL field if it's non-nil, zero value otherwise.

func (ActionsPermissionsRepository) String

type ActionsService

type ActionsService service

ActionsService handles communication with the actions related methods of the GitHub API.

GitHub API docs: https://docs.github.com/rest/actions/

func (*ActionsService) AddEnabledOrgInEnterprise

func (s *ActionsService) AddEnabledOrgInEnterprise(ctx context.Context, owner string, organizationID int64) (*Response, error)

AddEnabledOrgInEnterprise adds an organization to the list of selected organizations that are enabled for GitHub Actions in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#enable-a-selected-organization-for-github-actions-in-an-enterprise

func (*ActionsService) AddEnabledReposInOrg

func (s *ActionsService) AddEnabledReposInOrg(ctx context.Context, owner string, repositoryID int64) (*Response, error)

AddEnabledReposInOrg adds a repository to the list of selected repositories that are enabled for GitHub Actions in an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions#enable-a-selected-repository-for-github-actions-in-an-organization

func (*ActionsService) AddRepoToRequiredWorkflow

func (s *ActionsService) AddRepoToRequiredWorkflow(ctx context.Context, org string, requiredWorkflowID, repoID int64) (*Response, error)

AddRepoToRequiredWorkflow adds the Repository to a required workflow.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

func (*ActionsService) AddRepositoryAccessRunnerGroup

func (s *ActionsService) AddRepositoryAccessRunnerGroup(ctx context.Context, org string, groupID, repoID int64) (*Response, error)

AddRepositoryAccessRunnerGroup adds a repository to the list of selected repositories that can access a self-hosted runner group. The runner group must have visibility set to 'selected'.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#add-repository-access-to-a-self-hosted-runner-group-in-an-organization

func (*ActionsService) AddRunnerGroupRunners

func (s *ActionsService) AddRunnerGroupRunners(ctx context.Context, org string, groupID, runnerID int64) (*Response, error)

AddRunnerGroupRunners adds a self-hosted runner to a runner group configured in an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#add-a-self-hosted-runner-to-a-group-for-an-organization

func (*ActionsService) AddSelectedRepoToOrgSecret

func (s *ActionsService) AddSelectedRepoToOrgSecret(ctx context.Context, org, name string, repo *Repository) (*Response, error)

AddSelectedRepoToOrgSecret adds a repository to an organization secret.

GitHub API docs: https://docs.github.com/rest/actions/secrets#add-selected-repository-to-an-organization-secret

func (*ActionsService) AddSelectedRepoToOrgVariable

func (s *ActionsService) AddSelectedRepoToOrgVariable(ctx context.Context, org, name string, repo *Repository) (*Response, error)

AddSelectedRepoToOrgVariable adds a repository to an organization variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#add-selected-repository-to-an-organization-variable

func (*ActionsService) CancelWorkflowRunByID

func (s *ActionsService) CancelWorkflowRunByID(ctx context.Context, owner, repo string, runID int64) (*Response, error)

CancelWorkflowRunByID cancels a workflow run by ID. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#cancel-a-workflow-run

func (*ActionsService) CreateEnvVariable

func (s *ActionsService) CreateEnvVariable(ctx context.Context, owner, repo, env string, variable *ActionsVariable) (*Response, error)

CreateEnvVariable creates an environment variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#create-an-environment-variable

func (*ActionsService) CreateOrUpdateEnvSecret

func (s *ActionsService) CreateOrUpdateEnvSecret(ctx context.Context, repoID int, env string, eSecret *EncryptedSecret) (*Response, error)

CreateOrUpdateEnvSecret creates or updates a single environment secret with an encrypted value.

GitHub API docs: https://docs.github.com/enterprise-server@3.7/rest/actions/secrets#create-or-update-an-environment-secret

func (*ActionsService) CreateOrUpdateOrgSecret

func (s *ActionsService) CreateOrUpdateOrgSecret(ctx context.Context, org string, eSecret *EncryptedSecret) (*Response, error)

CreateOrUpdateOrgSecret creates or updates an organization secret with an encrypted value.

GitHub API docs: https://docs.github.com/rest/actions/secrets#create-or-update-an-organization-secret

func (*ActionsService) CreateOrUpdateRepoSecret

func (s *ActionsService) CreateOrUpdateRepoSecret(ctx context.Context, owner, repo string, eSecret *EncryptedSecret) (*Response, error)

CreateOrUpdateRepoSecret creates or updates a repository secret with an encrypted value.

GitHub API docs: https://docs.github.com/rest/actions/secrets#create-or-update-a-repository-secret

func (*ActionsService) CreateOrgVariable

func (s *ActionsService) CreateOrgVariable(ctx context.Context, org string, variable *ActionsVariable) (*Response, error)

CreateOrgVariable creates an organization variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#create-an-organization-variable

func (*ActionsService) CreateOrganizationRegistrationToken

func (s *ActionsService) CreateOrganizationRegistrationToken(ctx context.Context, org string) (*RegistrationToken, *Response, error)

CreateOrganizationRegistrationToken creates a token that can be used to add a self-hosted runner to an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#create-a-registration-token-for-an-organization

func (*ActionsService) CreateOrganizationRemoveToken

func (s *ActionsService) CreateOrganizationRemoveToken(ctx context.Context, org string) (*RemoveToken, *Response, error)

CreateOrganizationRemoveToken creates a token that can be used to remove a self-hosted runner from an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#create-a-remove-token-for-an-organization

func (*ActionsService) CreateOrganizationRunnerGroup

func (s *ActionsService) CreateOrganizationRunnerGroup(ctx context.Context, org string, createReq CreateRunnerGroupRequest) (*RunnerGroup, *Response, error)

CreateOrganizationRunnerGroup creates a new self-hosted runner group for an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#create-a-self-hosted-runner-group-for-an-organization

func (*ActionsService) CreateRegistrationToken

func (s *ActionsService) CreateRegistrationToken(ctx context.Context, owner, repo string) (*RegistrationToken, *Response, error)

CreateRegistrationToken creates a token that can be used to add a self-hosted runner.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#create-a-registration-token-for-a-repository

func (*ActionsService) CreateRemoveToken

func (s *ActionsService) CreateRemoveToken(ctx context.Context, owner, repo string) (*RemoveToken, *Response, error)

CreateRemoveToken creates a token that can be used to remove a self-hosted runner from a repository.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#create-a-remove-token-for-a-repository

func (*ActionsService) CreateRepoVariable

func (s *ActionsService) CreateRepoVariable(ctx context.Context, owner, repo string, variable *ActionsVariable) (*Response, error)

CreateRepoVariable creates a repository variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#create-a-repository-variable

func (*ActionsService) CreateRequiredWorkflow

func (s *ActionsService) CreateRequiredWorkflow(ctx context.Context, org string, createRequiredWorkflowOptions *CreateUpdateRequiredWorkflowOptions) (*OrgRequiredWorkflow, *Response, error)

CreateRequiredWorkflow creates the required workflow in an org.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

func (*ActionsService) CreateWorkflowDispatchEventByFileName

func (s *ActionsService) CreateWorkflowDispatchEventByFileName(ctx context.Context, owner, repo, workflowFileName string, event CreateWorkflowDispatchEventRequest) (*Response, error)

CreateWorkflowDispatchEventByFileName manually triggers a GitHub Actions workflow run.

GitHub API docs: https://docs.github.com/rest/actions/workflows#create-a-workflow-dispatch-event

func (*ActionsService) CreateWorkflowDispatchEventByID

func (s *ActionsService) CreateWorkflowDispatchEventByID(ctx context.Context, owner, repo string, workflowID int64, event CreateWorkflowDispatchEventRequest) (*Response, error)

CreateWorkflowDispatchEventByID manually triggers a GitHub Actions workflow run.

GitHub API docs: https://docs.github.com/rest/actions/workflows#create-a-workflow-dispatch-event

func (*ActionsService) DeleteArtifact

func (s *ActionsService) DeleteArtifact(ctx context.Context, owner, repo string, artifactID int64) (*Response, error)

DeleteArtifact deletes a workflow run artifact.

GitHub API docs: https://docs.github.com/rest/actions/artifacts#delete-an-artifact

func (*ActionsService) DeleteCachesByID

func (s *ActionsService) DeleteCachesByID(ctx context.Context, owner, repo string, cacheID int64) (*Response, error)

DeleteCachesByID deletes a GitHub Actions cache for a repository, using a cache ID.

Permissions: You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions:write permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/actions/cache#delete-a-github-actions-cache-for-a-repository-using-a-cache-id

func (*ActionsService) DeleteCachesByKey

func (s *ActionsService) DeleteCachesByKey(ctx context.Context, owner, repo, key string, ref *string) (*Response, error)

DeleteCachesByKey deletes one or more GitHub Actions caches for a repository, using a complete cache key. By default, all caches that match the provided key are deleted, but you can optionally provide a Git ref to restrict deletions to caches that match both the provided key and the Git ref. The ref for a branch can be formatted either as "refs/heads/<branch name>" or simply "<branch name>". To reference a pull request use "refs/pull/<number>/merge". If you don't want to use ref just pass nil in parameter.

Permissions: You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions:write permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/actions/cache#delete-github-actions-caches-for-a-repository-using-a-cache-key

func (*ActionsService) DeleteEnvSecret

func (s *ActionsService) DeleteEnvSecret(ctx context.Context, repoID int, env, secretName string) (*Response, error)

DeleteEnvSecret deletes a secret in an environment using the secret name.

GitHub API docs: https://docs.github.com/enterprise-server@3.7/rest/actions/secrets#delete-an-environment-secret

func (*ActionsService) DeleteEnvVariable

func (s *ActionsService) DeleteEnvVariable(ctx context.Context, owner, repo, env, variableName string) (*Response, error)

DeleteEnvVariable deletes a variable in an environment.

GitHub API docs: https://docs.github.com/rest/actions/variables#delete-an-environment-variable

func (*ActionsService) DeleteOrgSecret

func (s *ActionsService) DeleteOrgSecret(ctx context.Context, org, name string) (*Response, error)

DeleteOrgSecret deletes a secret in an organization using the secret name.

GitHub API docs: https://docs.github.com/rest/actions/secrets#delete-an-organization-secret

func (*ActionsService) DeleteOrgVariable

func (s *ActionsService) DeleteOrgVariable(ctx context.Context, org, name string) (*Response, error)

DeleteOrgVariable deletes a variable in an organization.

GitHub API docs: https://docs.github.com/rest/actions/variables#delete-an-organization-variable

func (*ActionsService) DeleteOrganizationRunnerGroup

func (s *ActionsService) DeleteOrganizationRunnerGroup(ctx context.Context, org string, groupID int64) (*Response, error)

DeleteOrganizationRunnerGroup deletes a self-hosted runner group from an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#delete-a-self-hosted-runner-group-from-an-organization

func (*ActionsService) DeleteRepoSecret

func (s *ActionsService) DeleteRepoSecret(ctx context.Context, owner, repo, name string) (*Response, error)

DeleteRepoSecret deletes a secret in a repository using the secret name.

GitHub API docs: https://docs.github.com/rest/actions/secrets#delete-a-repository-secret

func (*ActionsService) DeleteRepoVariable

func (s *ActionsService) DeleteRepoVariable(ctx context.Context, owner, repo, name string) (*Response, error)

DeleteRepoVariable deletes a variable in a repository.

GitHub API docs: https://docs.github.com/rest/actions/variables#delete-a-repository-variable

func (*ActionsService) DeleteRequiredWorkflow

func (s *ActionsService) DeleteRequiredWorkflow(ctx context.Context, org string, requiredWorkflowID int64) (*Response, error)

DeleteRequiredWorkflow deletes a required workflow in an org.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

func (*ActionsService) DeleteWorkflowRun

func (s *ActionsService) DeleteWorkflowRun(ctx context.Context, owner, repo string, runID int64) (*Response, error)

DeleteWorkflowRun deletes a workflow run by ID. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#delete-a-workflow-run

func (*ActionsService) DeleteWorkflowRunLogs

func (s *ActionsService) DeleteWorkflowRunLogs(ctx context.Context, owner, repo string, runID int64) (*Response, error)

DeleteWorkflowRunLogs deletes all logs for a workflow run. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#delete-workflow-run-logs

func (*ActionsService) DisableWorkflowByFileName

func (s *ActionsService) DisableWorkflowByFileName(ctx context.Context, owner, repo, workflowFileName string) (*Response, error)

DisableWorkflowByFileName disables a workflow and sets the state of the workflow to "disabled_manually".

GitHub API docs: https://docs.github.com/rest/actions/workflows#disable-a-workflow

func (*ActionsService) DisableWorkflowByID

func (s *ActionsService) DisableWorkflowByID(ctx context.Context, owner, repo string, workflowID int64) (*Response, error)

DisableWorkflowByID disables a workflow and sets the state of the workflow to "disabled_manually".

GitHub API docs: https://docs.github.com/rest/actions/workflows#disable-a-workflow

func (*ActionsService) DownloadArtifact

func (s *ActionsService) DownloadArtifact(ctx context.Context, owner, repo string, artifactID int64, maxRedirects int) (*url.URL, *Response, error)

DownloadArtifact gets a redirect URL to download an archive for a repository.

GitHub API docs: https://docs.github.com/rest/actions/artifacts#download-an-artifact

func (*ActionsService) EditActionsAllowed

func (s *ActionsService) EditActionsAllowed(ctx context.Context, org string, actionsAllowed ActionsAllowed) (*ActionsAllowed, *Response, error)

EditActionsAllowed sets the actions that are allowed in an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions#set-allowed-actions-and-reusable-workflows-for-an-organization

func (*ActionsService) EditActionsAllowedInEnterprise

func (s *ActionsService) EditActionsAllowedInEnterprise(ctx context.Context, enterprise string, actionsAllowed ActionsAllowed) (*ActionsAllowed, *Response, error)

EditActionsAllowedInEnterprise sets the actions that are allowed in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#set-allowed-actions-and-reusable-workflows-for-an-enterprise

func (*ActionsService) EditActionsPermissions

func (s *ActionsService) EditActionsPermissions(ctx context.Context, org string, actionsPermissions ActionsPermissions) (*ActionsPermissions, *Response, error)

EditActionsPermissions sets the permissions policy for repositories and allowed actions in an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions#set-github-actions-permissions-for-an-organization

func (*ActionsService) EditActionsPermissionsInEnterprise

func (s *ActionsService) EditActionsPermissionsInEnterprise(ctx context.Context, enterprise string, actionsPermissionsEnterprise ActionsPermissionsEnterprise) (*ActionsPermissionsEnterprise, *Response, error)

EditActionsPermissionsInEnterprise sets the permissions policy in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#set-github-actions-permissions-for-an-enterprise

func (*ActionsService) EditDefaultWorkflowPermissionsInEnterprise

func (s *ActionsService) EditDefaultWorkflowPermissionsInEnterprise(ctx context.Context, enterprise string, permissions DefaultWorkflowPermissionEnterprise) (*DefaultWorkflowPermissionEnterprise, *Response, error)

EditDefaultWorkflowPermissionsInEnterprise sets the GitHub Actions default workflow permissions for an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#set-default-workflow-permissions-for-an-enterprise

func (*ActionsService) EditDefaultWorkflowPermissionsInOrganization

func (s *ActionsService) EditDefaultWorkflowPermissionsInOrganization(ctx context.Context, org string, permissions DefaultWorkflowPermissionOrganization) (*DefaultWorkflowPermissionOrganization, *Response, error)

EditDefaultWorkflowPermissionsInOrganization sets the GitHub Actions default workflow permissions for an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions#set-default-workflow-permissions-for-an-organization

func (*ActionsService) EnableWorkflowByFileName

func (s *ActionsService) EnableWorkflowByFileName(ctx context.Context, owner, repo, workflowFileName string) (*Response, error)

EnableWorkflowByFileName enables a workflow and sets the state of the workflow to "active".

GitHub API docs: https://docs.github.com/rest/actions/workflows#enable-a-workflow

func (*ActionsService) EnableWorkflowByID

func (s *ActionsService) EnableWorkflowByID(ctx context.Context, owner, repo string, workflowID int64) (*Response, error)

EnableWorkflowByID enables a workflow and sets the state of the workflow to "active".

GitHub API docs: https://docs.github.com/rest/actions/workflows#enable-a-workflow

func (*ActionsService) GenerateOrgJITConfig

func (s *ActionsService) GenerateOrgJITConfig(ctx context.Context, org string, request *GenerateJITConfigRequest) (*JITRunnerConfig, *Response, error)

GenerateOrgJITConfig generate a just-in-time configuration for an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#create-configuration-for-a-just-in-time-runner-for-an-organization

func (*ActionsService) GenerateRepoJITConfig

func (s *ActionsService) GenerateRepoJITConfig(ctx context.Context, owner, repo string, request *GenerateJITConfigRequest) (*JITRunnerConfig, *Response, error)

GenerateRepoJITConfig generates a just-in-time configuration for a repository.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#create-configuration-for-a-just-in-time-runner-for-a-repository

func (*ActionsService) GetActionsAllowed

func (s *ActionsService) GetActionsAllowed(ctx context.Context, org string) (*ActionsAllowed, *Response, error)

GetActionsAllowed gets the actions that are allowed in an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions#get-allowed-actions-and-reusable-workflows-for-an-organization

func (*ActionsService) GetActionsAllowedInEnterprise

func (s *ActionsService) GetActionsAllowedInEnterprise(ctx context.Context, enterprise string) (*ActionsAllowed, *Response, error)

GetActionsAllowedInEnterprise gets the actions that are allowed in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#get-allowed-actions-and-reusable-workflows-for-an-enterprise

func (*ActionsService) GetActionsPermissions

func (s *ActionsService) GetActionsPermissions(ctx context.Context, org string) (*ActionsPermissions, *Response, error)

GetActionsPermissions gets the GitHub Actions permissions policy for repositories and allowed actions in an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions#get-github-actions-permissions-for-an-organization

func (*ActionsService) GetActionsPermissionsInEnterprise

func (s *ActionsService) GetActionsPermissionsInEnterprise(ctx context.Context, enterprise string) (*ActionsPermissionsEnterprise, *Response, error)

GetActionsPermissionsInEnterprise gets the GitHub Actions permissions policy for an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#get-github-actions-permissions-for-an-enterprise

func (*ActionsService) GetArtifact

func (s *ActionsService) GetArtifact(ctx context.Context, owner, repo string, artifactID int64) (*Artifact, *Response, error)

GetArtifact gets a specific artifact for a workflow run.

GitHub API docs: https://docs.github.com/rest/actions/artifacts#get-an-artifact

func (*ActionsService) GetCacheUsageForRepo

func (s *ActionsService) GetCacheUsageForRepo(ctx context.Context, owner, repo string) (*ActionsCacheUsage, *Response, error)

GetCacheUsageForRepo gets GitHub Actions cache usage for a repository. The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.

Permissions: Anyone with read access to the repository can use this endpoint. If the repository is private, you must use an access token with the repo scope. GitHub Apps must have the actions:read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/actions/cache#get-github-actions-cache-usage-for-a-repository

func (*ActionsService) GetDefaultWorkflowPermissionsInEnterprise

func (s *ActionsService) GetDefaultWorkflowPermissionsInEnterprise(ctx context.Context, enterprise string) (*DefaultWorkflowPermissionEnterprise, *Response, error)

GetDefaultWorkflowPermissionsInEnterprise gets the GitHub Actions default workflow permissions for an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#get-default-workflow-permissions-for-an-enterprise

func (*ActionsService) GetDefaultWorkflowPermissionsInOrganization

func (s *ActionsService) GetDefaultWorkflowPermissionsInOrganization(ctx context.Context, org string) (*DefaultWorkflowPermissionOrganization, *Response, error)

GetDefaultWorkflowPermissionsInOrganization gets the GitHub Actions default workflow permissions for an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions#get-default-workflow-permissions-for-an-organization

func (*ActionsService) GetEnvPublicKey

func (s *ActionsService) GetEnvPublicKey(ctx context.Context, repoID int, env string) (*PublicKey, *Response, error)

GetEnvPublicKey gets a public key that should be used for secret encryption.

GitHub API docs: https://docs.github.com/enterprise-server@3.7/rest/actions/secrets#get-an-environment-public-key

func (*ActionsService) GetEnvSecret

func (s *ActionsService) GetEnvSecret(ctx context.Context, repoID int, env, secretName string) (*Secret, *Response, error)

GetEnvSecret gets a single environment secret without revealing its encrypted value.

GitHub API docs: https://docs.github.com/enterprise-server@3.7/rest/actions/secrets#get-an-environment-secret

func (*ActionsService) GetEnvVariable

func (s *ActionsService) GetEnvVariable(ctx context.Context, owner, repo, env, variableName string) (*ActionsVariable, *Response, error)

GetEnvVariable gets a single environment variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#get-an-environment-variable

func (*ActionsService) GetOrgOIDCSubjectClaimCustomTemplate

func (s *ActionsService) GetOrgOIDCSubjectClaimCustomTemplate(ctx context.Context, org string) (*OIDCSubjectClaimCustomTemplate, *Response, error)

GetOrgOIDCSubjectClaimCustomTemplate gets the subject claim customization template for an organization.

GitHub API docs: https://docs.github.com/rest/actions/oidc#get-the-customization-template-for-an-oidc-subject-claim-for-an-organization

func (*ActionsService) GetOrgPublicKey

func (s *ActionsService) GetOrgPublicKey(ctx context.Context, org string) (*PublicKey, *Response, error)

GetOrgPublicKey gets a public key that should be used for secret encryption.

GitHub API docs: https://docs.github.com/rest/actions/secrets#get-an-organization-public-key

func (*ActionsService) GetOrgSecret

func (s *ActionsService) GetOrgSecret(ctx context.Context, org, name string) (*Secret, *Response, error)

GetOrgSecret gets a single organization secret without revealing its encrypted value.

GitHub API docs: https://docs.github.com/rest/actions/secrets#get-an-organization-secret

func (*ActionsService) GetOrgVariable

func (s *ActionsService) GetOrgVariable(ctx context.Context, org, name string) (*ActionsVariable, *Response, error)

GetOrgVariable gets a single organization variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#get-an-organization-variable

func (*ActionsService) GetOrganizationRunner

func (s *ActionsService) GetOrganizationRunner(ctx context.Context, org string, runnerID int64) (*Runner, *Response, error)

GetOrganizationRunner gets a specific self-hosted runner for an organization using its runner ID.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#get-a-self-hosted-runner-for-an-organization

func (*ActionsService) GetOrganizationRunnerGroup

func (s *ActionsService) GetOrganizationRunnerGroup(ctx context.Context, org string, groupID int64) (*RunnerGroup, *Response, error)

GetOrganizationRunnerGroup gets a specific self-hosted runner group for an organization using its RunnerGroup ID.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#get-a-self-hosted-runner-group-for-an-organization

func (*ActionsService) GetPendingDeployments

func (s *ActionsService) GetPendingDeployments(ctx context.Context, owner, repo string, runID int64) ([]*PendingDeployment, *Response, error)

GetPendingDeployments get all deployment environments for a workflow run that are waiting for protection rules to pass. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#get-pending-deployments-for-a-workflow-run

func (*ActionsService) GetRepoOIDCSubjectClaimCustomTemplate

func (s *ActionsService) GetRepoOIDCSubjectClaimCustomTemplate(ctx context.Context, owner, repo string) (*OIDCSubjectClaimCustomTemplate, *Response, error)

GetRepoOIDCSubjectClaimCustomTemplate gets the subject claim customization template for a repository.

GitHub API docs: https://docs.github.com/rest/actions/oidc#get-the-customization-template-for-an-oidc-subject-claim-for-a-repository

func (*ActionsService) GetRepoPublicKey

func (s *ActionsService) GetRepoPublicKey(ctx context.Context, owner, repo string) (*PublicKey, *Response, error)

GetRepoPublicKey gets a public key that should be used for secret encryption.

GitHub API docs: https://docs.github.com/rest/actions/secrets#get-a-repository-public-key

func (*ActionsService) GetRepoSecret

func (s *ActionsService) GetRepoSecret(ctx context.Context, owner, repo, name string) (*Secret, *Response, error)

GetRepoSecret gets a single repository secret without revealing its encrypted value.

GitHub API docs: https://docs.github.com/rest/actions/secrets#get-a-repository-secret

func (*ActionsService) GetRepoVariable

func (s *ActionsService) GetRepoVariable(ctx context.Context, owner, repo, name string) (*ActionsVariable, *Response, error)

GetRepoVariable gets a single repository variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#get-a-repository-variable

func (*ActionsService) GetRequiredWorkflowByID

func (s *ActionsService) GetRequiredWorkflowByID(ctx context.Context, owner string, requiredWorkflowID int64) (*OrgRequiredWorkflow, *Response, error)

GetRequiredWorkflowByID get the RequiredWorkflows for an org by its ID.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

func (*ActionsService) GetRunner

func (s *ActionsService) GetRunner(ctx context.Context, owner, repo string, runnerID int64) (*Runner, *Response, error)

GetRunner gets a specific self-hosted runner for a repository using its runner ID.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#get-a-self-hosted-runner-for-a-repository

func (*ActionsService) GetTotalCacheUsageForEnterprise

func (s *ActionsService) GetTotalCacheUsageForEnterprise(ctx context.Context, enterprise string) (*TotalCacheUsage, *Response, error)

GetTotalCacheUsageForEnterprise gets the total GitHub Actions cache usage for an enterprise. The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.

Permissions: You must authenticate using an access token with the "admin:enterprise" scope to use this endpoint.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/cache#get-github-actions-cache-usage-for-an-enterprise

func (*ActionsService) GetTotalCacheUsageForOrg

func (s *ActionsService) GetTotalCacheUsageForOrg(ctx context.Context, org string) (*TotalCacheUsage, *Response, error)

GetTotalCacheUsageForOrg gets the total GitHub Actions cache usage for an organization. The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.

Permissions: You must authenticate using an access token with the read:org scope to use this endpoint. GitHub Apps must have the organization_administration:read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/actions/cache#get-github-actions-cache-usage-for-an-organization

func (*ActionsService) GetWorkflowByFileName

func (s *ActionsService) GetWorkflowByFileName(ctx context.Context, owner, repo, workflowFileName string) (*Workflow, *Response, error)

GetWorkflowByFileName gets a specific workflow by file name.

GitHub API docs: https://docs.github.com/rest/actions/workflows#get-a-workflow

func (*ActionsService) GetWorkflowByID

func (s *ActionsService) GetWorkflowByID(ctx context.Context, owner, repo string, workflowID int64) (*Workflow, *Response, error)

GetWorkflowByID gets a specific workflow by ID.

GitHub API docs: https://docs.github.com/rest/actions/workflows#get-a-workflow

func (*ActionsService) GetWorkflowJobByID

func (s *ActionsService) GetWorkflowJobByID(ctx context.Context, owner, repo string, jobID int64) (*WorkflowJob, *Response, error)

GetWorkflowJobByID gets a specific job in a workflow run by ID.

GitHub API docs: https://docs.github.com/rest/actions/workflow-jobs#get-a-job-for-a-workflow-run

func (*ActionsService) GetWorkflowJobLogs

func (s *ActionsService) GetWorkflowJobLogs(ctx context.Context, owner, repo string, jobID int64, maxRedirects int) (*url.URL, *Response, error)

GetWorkflowJobLogs gets a redirect URL to download a plain text file of logs for a workflow job.

GitHub API docs: https://docs.github.com/rest/actions/workflow-jobs#download-job-logs-for-a-workflow-run

func (*ActionsService) GetWorkflowRunAttempt

func (s *ActionsService) GetWorkflowRunAttempt(ctx context.Context, owner, repo string, runID int64, attemptNumber int, opts *WorkflowRunAttemptOptions) (*WorkflowRun, *Response, error)

GetWorkflowRunAttempt gets a specific workflow run attempt. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#get-a-workflow-run-attempt

func (*ActionsService) GetWorkflowRunAttemptLogs

func (s *ActionsService) GetWorkflowRunAttemptLogs(ctx context.Context, owner, repo string, runID int64, attemptNumber int, maxRedirects int) (*url.URL, *Response, error)

GetWorkflowRunAttemptLogs gets a redirect URL to download a plain text file of logs for a workflow run for attempt number. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve a workflow run ID from the DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#download-workflow-run-attempt-logs

func (*ActionsService) GetWorkflowRunByID

func (s *ActionsService) GetWorkflowRunByID(ctx context.Context, owner, repo string, runID int64) (*WorkflowRun, *Response, error)

GetWorkflowRunByID gets a specific workflow run by ID. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#get-a-workflow-run

func (*ActionsService) GetWorkflowRunLogs

func (s *ActionsService) GetWorkflowRunLogs(ctx context.Context, owner, repo string, runID int64, maxRedirects int) (*url.URL, *Response, error)

GetWorkflowRunLogs gets a redirect URL to download a plain text file of logs for a workflow run. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#download-workflow-run-logs

func (*ActionsService) GetWorkflowRunUsageByID

func (s *ActionsService) GetWorkflowRunUsageByID(ctx context.Context, owner, repo string, runID int64) (*WorkflowRunUsage, *Response, error)

GetWorkflowRunUsageByID gets a specific workflow usage run by run ID in the unit of billable milliseconds. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#get-workflow-run-usage

func (*ActionsService) GetWorkflowUsageByFileName

func (s *ActionsService) GetWorkflowUsageByFileName(ctx context.Context, owner, repo, workflowFileName string) (*WorkflowUsage, *Response, error)

GetWorkflowUsageByFileName gets a specific workflow usage by file name in the unit of billable milliseconds.

GitHub API docs: https://docs.github.com/rest/actions/workflows#get-workflow-usage

func (*ActionsService) GetWorkflowUsageByID

func (s *ActionsService) GetWorkflowUsageByID(ctx context.Context, owner, repo string, workflowID int64) (*WorkflowUsage, *Response, error)

GetWorkflowUsageByID gets a specific workflow usage by ID in the unit of billable milliseconds.

GitHub API docs: https://docs.github.com/rest/actions/workflows#get-workflow-usage

func (*ActionsService) ListArtifacts

func (s *ActionsService) ListArtifacts(ctx context.Context, owner, repo string, opts *ListArtifactsOptions) (*ArtifactList, *Response, error)

ListArtifacts lists all artifacts that belong to a repository.

GitHub API docs: https://docs.github.com/rest/actions/artifacts#list-artifacts-for-a-repository

func (*ActionsService) ListCacheUsageByRepoForOrg

func (s *ActionsService) ListCacheUsageByRepoForOrg(ctx context.Context, org string, opts *ListOptions) (*ActionsCacheUsageList, *Response, error)

ListCacheUsageByRepoForOrg lists repositories and their GitHub Actions cache usage for an organization. The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.

Permissions: You must authenticate using an access token with the read:org scope to use this endpoint. GitHub Apps must have the organization_administration:read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/actions/cache#list-repositories-with-github-actions-cache-usage-for-an-organization

func (*ActionsService) ListCaches

func (s *ActionsService) ListCaches(ctx context.Context, owner, repo string, opts *ActionsCacheListOptions) (*ActionsCacheList, *Response, error)

ListCaches lists the GitHub Actions caches for a repository. You must authenticate using an access token with the repo scope to use this endpoint.

Permissions: must have the actions:read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/actions/cache#list-github-actions-caches-for-a-repository

func (*ActionsService) ListEnabledOrgsInEnterprise

func (s *ActionsService) ListEnabledOrgsInEnterprise(ctx context.Context, owner string, opts *ListOptions) (*ActionsEnabledOnEnterpriseRepos, *Response, error)

ListEnabledOrgsInEnterprise lists the selected organizations that are enabled for GitHub Actions in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#list-selected-organizations-enabled-for-github-actions-in-an-enterprise

func (*ActionsService) ListEnabledReposInOrg

func (s *ActionsService) ListEnabledReposInOrg(ctx context.Context, owner string, opts *ListOptions) (*ActionsEnabledOnOrgRepos, *Response, error)

ListEnabledReposInOrg lists the selected repositories that are enabled for GitHub Actions in an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions#list-selected-repositories-enabled-for-github-actions-in-an-organization

func (*ActionsService) ListEnvSecrets

func (s *ActionsService) ListEnvSecrets(ctx context.Context, repoID int, env string, opts *ListOptions) (*Secrets, *Response, error)

ListEnvSecrets lists all secrets available in an environment.

GitHub API docs: https://docs.github.com/enterprise-server@3.7/rest/actions/secrets#list-environment-secrets

func (*ActionsService) ListEnvVariables

func (s *ActionsService) ListEnvVariables(ctx context.Context, owner, repo, env string, opts *ListOptions) (*ActionsVariables, *Response, error)

ListEnvVariables lists all variables available in an environment.

GitHub API docs: https://docs.github.com/rest/actions/variables#list-environment-variables

func (*ActionsService) ListOrgRequiredWorkflows

func (s *ActionsService) ListOrgRequiredWorkflows(ctx context.Context, org string, opts *ListOptions) (*OrgRequiredWorkflows, *Response, error)

ListOrgRequiredWorkflows lists the RequiredWorkflows for an org.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

func (*ActionsService) ListOrgSecrets

func (s *ActionsService) ListOrgSecrets(ctx context.Context, org string, opts *ListOptions) (*Secrets, *Response, error)

ListOrgSecrets lists all secrets available in an organization without revealing their encrypted values.

GitHub API docs: https://docs.github.com/rest/actions/secrets#list-organization-secrets

func (*ActionsService) ListOrgVariables

func (s *ActionsService) ListOrgVariables(ctx context.Context, org string, opts *ListOptions) (*ActionsVariables, *Response, error)

ListOrgVariables lists all variables available in an organization.

GitHub API docs: https://docs.github.com/rest/actions/variables#list-organization-variables

func (*ActionsService) ListOrganizationRunnerApplicationDownloads

func (s *ActionsService) ListOrganizationRunnerApplicationDownloads(ctx context.Context, org string) ([]*RunnerApplicationDownload, *Response, error)

ListOrganizationRunnerApplicationDownloads lists self-hosted runner application binaries that can be downloaded and run.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#list-runner-applications-for-an-organization

func (*ActionsService) ListOrganizationRunnerGroups

func (s *ActionsService) ListOrganizationRunnerGroups(ctx context.Context, org string, opts *ListOrgRunnerGroupOptions) (*RunnerGroups, *Response, error)

ListOrganizationRunnerGroups lists all self-hosted runner groups configured in an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#list-self-hosted-runner-groups-for-an-organization

func (*ActionsService) ListOrganizationRunners

func (s *ActionsService) ListOrganizationRunners(ctx context.Context, org string, opts *ListRunnersOptions) (*Runners, *Response, error)

ListOrganizationRunners lists all the self-hosted runners for an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#list-self-hosted-runners-for-an-organization

func (*ActionsService) ListRepoOrgSecrets

func (s *ActionsService) ListRepoOrgSecrets(ctx context.Context, owner, repo string, opts *ListOptions) (*Secrets, *Response, error)

ListRepoOrgSecrets lists all organization secrets available in a repository without revealing their encrypted values.

GitHub API docs: https://docs.github.com/rest/actions/secrets#list-repository-organization-secrets

func (*ActionsService) ListRepoOrgVariables

func (s *ActionsService) ListRepoOrgVariables(ctx context.Context, owner, repo string, opts *ListOptions) (*ActionsVariables, *Response, error)

ListRepoOrgVariables lists all organization variables available in a repository.

GitHub API docs: https://docs.github.com/rest/actions/variables#list-repository-organization-variables

func (*ActionsService) ListRepoRequiredWorkflows

func (s *ActionsService) ListRepoRequiredWorkflows(ctx context.Context, owner, repo string, opts *ListOptions) (*RepoRequiredWorkflows, *Response, error)

ListRepoRequiredWorkflows lists the RequiredWorkflows for a repo.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

func (*ActionsService) ListRepoSecrets

func (s *ActionsService) ListRepoSecrets(ctx context.Context, owner, repo string, opts *ListOptions) (*Secrets, *Response, error)

ListRepoSecrets lists all secrets available in a repository without revealing their encrypted values.

GitHub API docs: https://docs.github.com/rest/actions/secrets#list-repository-secrets

func (*ActionsService) ListRepoVariables

func (s *ActionsService) ListRepoVariables(ctx context.Context, owner, repo string, opts *ListOptions) (*ActionsVariables, *Response, error)

ListRepoVariables lists all variables available in a repository.

GitHub API docs: https://docs.github.com/rest/actions/variables#list-repository-variables

func (*ActionsService) ListRepositoryAccessRunnerGroup

func (s *ActionsService) ListRepositoryAccessRunnerGroup(ctx context.Context, org string, groupID int64, opts *ListOptions) (*ListRepositories, *Response, error)

ListRepositoryAccessRunnerGroup lists the repositories with access to a self-hosted runner group configured in an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#list-repository-access-to-a-self-hosted-runner-group-in-an-organization

func (*ActionsService) ListRepositoryWorkflowRuns

func (s *ActionsService) ListRepositoryWorkflowRuns(ctx context.Context, owner, repo string, opts *ListWorkflowRunsOptions) (*WorkflowRuns, *Response, error)

ListRepositoryWorkflowRuns lists all workflow runs for a repository.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#list-workflow-runs-for-a-repository

func (*ActionsService) ListRequiredWorkflowSelectedRepos

func (s *ActionsService) ListRequiredWorkflowSelectedRepos(ctx context.Context, org string, requiredWorkflowID int64, opts *ListOptions) (*RequiredWorkflowSelectedRepos, *Response, error)

ListRequiredWorkflowSelectedRepos lists the Repositories selected for a workflow.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

func (*ActionsService) ListRunnerApplicationDownloads

func (s *ActionsService) ListRunnerApplicationDownloads(ctx context.Context, owner, repo string) ([]*RunnerApplicationDownload, *Response, error)

ListRunnerApplicationDownloads lists self-hosted runner application binaries that can be downloaded and run.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#list-runner-applications-for-a-repository

func (*ActionsService) ListRunnerGroupRunners

func (s *ActionsService) ListRunnerGroupRunners(ctx context.Context, org string, groupID int64, opts *ListOptions) (*Runners, *Response, error)

ListRunnerGroupRunners lists self-hosted runners that are in a specific organization group.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#list-self-hosted-runners-in-a-group-for-an-organization

func (*ActionsService) ListRunners

func (s *ActionsService) ListRunners(ctx context.Context, owner, repo string, opts *ListRunnersOptions) (*Runners, *Response, error)

ListRunners lists all the self-hosted runners for a repository.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#list-self-hosted-runners-for-a-repository

func (*ActionsService) ListSelectedReposForOrgSecret

func (s *ActionsService) ListSelectedReposForOrgSecret(ctx context.Context, org, name string, opts *ListOptions) (*SelectedReposList, *Response, error)

ListSelectedReposForOrgSecret lists all repositories that have access to a secret.

GitHub API docs: https://docs.github.com/rest/actions/secrets#list-selected-repositories-for-an-organization-secret

func (*ActionsService) ListSelectedReposForOrgVariable

func (s *ActionsService) ListSelectedReposForOrgVariable(ctx context.Context, org, name string, opts *ListOptions) (*SelectedReposList, *Response, error)

ListSelectedReposForOrgVariable lists all repositories that have access to a variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#list-selected-repositories-for-an-organization-variable

func (*ActionsService) ListWorkflowJobs

func (s *ActionsService) ListWorkflowJobs(ctx context.Context, owner, repo string, runID int64, opts *ListWorkflowJobsOptions) (*Jobs, *Response, error)

ListWorkflowJobs lists all jobs for a workflow run.

GitHub API docs: https://docs.github.com/rest/actions/workflow-jobs#list-jobs-for-a-workflow-run

func (*ActionsService) ListWorkflowJobsAttempt

func (s *ActionsService) ListWorkflowJobsAttempt(ctx context.Context, owner, repo string, runID, attemptNumber int64, opts *ListOptions) (*Jobs, *Response, error)

ListWorkflowJobsAttempt lists jobs for a workflow run Attempt.

GitHub API docs: https://docs.github.com/rest/actions/workflow-jobs#list-jobs-for-a-workflow-run-attempt

func (*ActionsService) ListWorkflowRunArtifacts

func (s *ActionsService) ListWorkflowRunArtifacts(ctx context.Context, owner, repo string, runID int64, opts *ListOptions) (*ArtifactList, *Response, error)

ListWorkflowRunArtifacts lists all artifacts that belong to a workflow run.

GitHub API docs: https://docs.github.com/rest/actions/artifacts#list-workflow-run-artifacts

func (*ActionsService) ListWorkflowRunsByFileName

func (s *ActionsService) ListWorkflowRunsByFileName(ctx context.Context, owner, repo, workflowFileName string, opts *ListWorkflowRunsOptions) (*WorkflowRuns, *Response, error)

ListWorkflowRunsByFileName lists all workflow runs by workflow file name.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#list-workflow-runs-for-a-workflow

func (*ActionsService) ListWorkflowRunsByID

func (s *ActionsService) ListWorkflowRunsByID(ctx context.Context, owner, repo string, workflowID int64, opts *ListWorkflowRunsOptions) (*WorkflowRuns, *Response, error)

ListWorkflowRunsByID lists all workflow runs by workflow ID.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#list-workflow-runs-for-a-workflow

func (*ActionsService) ListWorkflows

func (s *ActionsService) ListWorkflows(ctx context.Context, owner, repo string, opts *ListOptions) (*Workflows, *Response, error)

ListWorkflows lists all workflows in a repository.

GitHub API docs: https://docs.github.com/rest/actions/workflows#list-repository-workflows

func (*ActionsService) PendingDeployments

func (s *ActionsService) PendingDeployments(ctx context.Context, owner, repo string, runID int64, request *PendingDeploymentsRequest) ([]*Deployment, *Response, error)

PendingDeployments approve or reject pending deployments that are waiting on approval by a required reviewer. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#review-pending-deployments-for-a-workflow-run

func (*ActionsService) RemoveEnabledOrgInEnterprise

func (s *ActionsService) RemoveEnabledOrgInEnterprise(ctx context.Context, owner string, organizationID int64) (*Response, error)

RemoveEnabledOrgInEnterprise removes an organization from the list of selected organizations that are enabled for GitHub Actions in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#disable-a-selected-organization-for-github-actions-in-an-enterprise

func (*ActionsService) RemoveEnabledReposInOrg

func (s *ActionsService) RemoveEnabledReposInOrg(ctx context.Context, owner string, repositoryID int64) (*Response, error)

RemoveEnabledReposInOrg removes a single repository from the list of enabled repos for GitHub Actions in an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions#disable-a-selected-repository-for-github-actions-in-an-organization

func (*ActionsService) RemoveOrganizationRunner

func (s *ActionsService) RemoveOrganizationRunner(ctx context.Context, org string, runnerID int64) (*Response, error)

RemoveOrganizationRunner forces the removal of a self-hosted runner from an organization using the runner id.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#delete-a-self-hosted-runner-from-an-organization

func (*ActionsService) RemoveRepoFromRequiredWorkflow

func (s *ActionsService) RemoveRepoFromRequiredWorkflow(ctx context.Context, org string, requiredWorkflowID, repoID int64) (*Response, error)

RemoveRepoFromRequiredWorkflow removes the Repository from a required workflow.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

func (*ActionsService) RemoveRepositoryAccessRunnerGroup

func (s *ActionsService) RemoveRepositoryAccessRunnerGroup(ctx context.Context, org string, groupID, repoID int64) (*Response, error)

RemoveRepositoryAccessRunnerGroup removes a repository from the list of selected repositories that can access a self-hosted runner group. The runner group must have visibility set to 'selected'.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#remove-repository-access-to-a-self-hosted-runner-group-in-an-organization

func (*ActionsService) RemoveRunner

func (s *ActionsService) RemoveRunner(ctx context.Context, owner, repo string, runnerID int64) (*Response, error)

RemoveRunner forces the removal of a self-hosted runner in a repository using the runner id.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runners#delete-a-self-hosted-runner-from-a-repository

func (*ActionsService) RemoveRunnerGroupRunners

func (s *ActionsService) RemoveRunnerGroupRunners(ctx context.Context, org string, groupID, runnerID int64) (*Response, error)

RemoveRunnerGroupRunners removes a self-hosted runner from a group configured in an organization. The runner is then returned to the default group.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#remove-a-self-hosted-runner-from-a-group-for-an-organization

func (*ActionsService) RemoveSelectedRepoFromOrgSecret

func (s *ActionsService) RemoveSelectedRepoFromOrgSecret(ctx context.Context, org, name string, repo *Repository) (*Response, error)

RemoveSelectedRepoFromOrgSecret removes a repository from an organization secret.

GitHub API docs: https://docs.github.com/rest/actions/secrets#remove-selected-repository-from-an-organization-secret

func (*ActionsService) RemoveSelectedRepoFromOrgVariable

func (s *ActionsService) RemoveSelectedRepoFromOrgVariable(ctx context.Context, org, name string, repo *Repository) (*Response, error)

RemoveSelectedRepoFromOrgVariable removes a repository from an organization variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#remove-selected-repository-from-an-organization-variable

func (*ActionsService) RerunFailedJobsByID

func (s *ActionsService) RerunFailedJobsByID(ctx context.Context, owner, repo string, runID int64) (*Response, error)

RerunFailedJobsByID re-runs all of the failed jobs and their dependent jobs in a workflow run by ID. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#re-run-failed-jobs-from-a-workflow-run

func (*ActionsService) RerunJobByID

func (s *ActionsService) RerunJobByID(ctx context.Context, owner, repo string, jobID int64) (*Response, error)

RerunJobByID re-runs a job and its dependent jobs in a workflow run by ID.

You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#re-run-a-job-from-a-workflow-run

func (*ActionsService) RerunWorkflowByID

func (s *ActionsService) RerunWorkflowByID(ctx context.Context, owner, repo string, runID int64) (*Response, error)

RerunWorkflowByID re-runs a workflow by ID. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID a the DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#re-run-a-workflow

func (*ActionsService) ReviewCustomDeploymentProtectionRule

func (s *ActionsService) ReviewCustomDeploymentProtectionRule(ctx context.Context, owner, repo string, runID int64, request *ReviewCustomDeploymentProtectionRuleRequest) (*Response, error)

ReviewCustomDeploymentProtectionRule approves or rejects custom deployment protection rules provided by a GitHub App for a workflow run. You can use the helper function *DeploymentProtectionRuleEvent.GetRunID() to easily retrieve the workflow run ID from a DeploymentProtectionRuleEvent.

GitHub API docs: https://docs.github.com/rest/actions/workflow-runs#review-custom-deployment-protection-rules-for-a-workflow-run

func (*ActionsService) SetEnabledOrgsInEnterprise

func (s *ActionsService) SetEnabledOrgsInEnterprise(ctx context.Context, owner string, organizationIDs []int64) (*Response, error)

SetEnabledOrgsInEnterprise replaces the list of selected organizations that are enabled for GitHub Actions in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions#set-selected-organizations-enabled-for-github-actions-in-an-enterprise

func (*ActionsService) SetEnabledReposInOrg

func (s *ActionsService) SetEnabledReposInOrg(ctx context.Context, owner string, repositoryIDs []int64) (*Response, error)

SetEnabledReposInOrg replaces the list of selected repositories that are enabled for GitHub Actions in an organization..

GitHub API docs: https://docs.github.com/rest/actions/permissions#set-selected-repositories-enabled-for-github-actions-in-an-organization

func (*ActionsService) SetOrgOIDCSubjectClaimCustomTemplate

func (s *ActionsService) SetOrgOIDCSubjectClaimCustomTemplate(ctx context.Context, org string, template *OIDCSubjectClaimCustomTemplate) (*Response, error)

SetOrgOIDCSubjectClaimCustomTemplate sets the subject claim customization for an organization.

GitHub API docs: https://docs.github.com/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization

func (*ActionsService) SetRepoOIDCSubjectClaimCustomTemplate

func (s *ActionsService) SetRepoOIDCSubjectClaimCustomTemplate(ctx context.Context, owner, repo string, template *OIDCSubjectClaimCustomTemplate) (*Response, error)

SetRepoOIDCSubjectClaimCustomTemplate sets the subject claim customization for a repository.

GitHub API docs: https://docs.github.com/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-a-repository

func (*ActionsService) SetRepositoryAccessRunnerGroup

func (s *ActionsService) SetRepositoryAccessRunnerGroup(ctx context.Context, org string, groupID int64, ids SetRepoAccessRunnerGroupRequest) (*Response, error)

SetRepositoryAccessRunnerGroup replaces the list of repositories that have access to a self-hosted runner group configured in an organization with a new List of repositories.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#set-repository-access-for-a-self-hosted-runner-group-in-an-organization

func (*ActionsService) SetRequiredWorkflowSelectedRepos

func (s *ActionsService) SetRequiredWorkflowSelectedRepos(ctx context.Context, org string, requiredWorkflowID int64, ids SelectedRepoIDs) (*Response, error)

SetRequiredWorkflowSelectedRepos sets the Repositories selected for a workflow.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

func (*ActionsService) SetRunnerGroupRunners

func (s *ActionsService) SetRunnerGroupRunners(ctx context.Context, org string, groupID int64, ids SetRunnerGroupRunnersRequest) (*Response, error)

SetRunnerGroupRunners replaces the list of self-hosted runners that are part of an organization runner group with a new list of runners.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#set-self-hosted-runners-in-a-group-for-an-organization

func (*ActionsService) SetSelectedReposForOrgSecret

func (s *ActionsService) SetSelectedReposForOrgSecret(ctx context.Context, org, name string, ids SelectedRepoIDs) (*Response, error)

SetSelectedReposForOrgSecret sets the repositories that have access to a secret.

GitHub API docs: https://docs.github.com/rest/actions/secrets#set-selected-repositories-for-an-organization-secret

func (*ActionsService) SetSelectedReposForOrgVariable

func (s *ActionsService) SetSelectedReposForOrgVariable(ctx context.Context, org, name string, ids SelectedRepoIDs) (*Response, error)

SetSelectedReposForOrgVariable sets the repositories that have access to a variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#set-selected-repositories-for-an-organization-variable

func (*ActionsService) UpdateEnvVariable

func (s *ActionsService) UpdateEnvVariable(ctx context.Context, owner, repo, env string, variable *ActionsVariable) (*Response, error)

UpdateEnvVariable updates an environment variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#update-an-environment-variable

func (*ActionsService) UpdateOrgVariable

func (s *ActionsService) UpdateOrgVariable(ctx context.Context, org string, variable *ActionsVariable) (*Response, error)

UpdateOrgVariable updates an organization variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#update-an-organization-variable

func (*ActionsService) UpdateOrganizationRunnerGroup

func (s *ActionsService) UpdateOrganizationRunnerGroup(ctx context.Context, org string, groupID int64, updateReq UpdateRunnerGroupRequest) (*RunnerGroup, *Response, error)

UpdateOrganizationRunnerGroup updates a self-hosted runner group for an organization.

GitHub API docs: https://docs.github.com/rest/actions/self-hosted-runner-groups#update-a-self-hosted-runner-group-for-an-organization

func (*ActionsService) UpdateRepoVariable

func (s *ActionsService) UpdateRepoVariable(ctx context.Context, owner, repo string, variable *ActionsVariable) (*Response, error)

UpdateRepoVariable updates a repository variable.

GitHub API docs: https://docs.github.com/rest/actions/variables#update-a-repository-variable

func (*ActionsService) UpdateRequiredWorkflow

func (s *ActionsService) UpdateRequiredWorkflow(ctx context.Context, org string, requiredWorkflowID int64, updateRequiredWorkflowOptions *CreateUpdateRequiredWorkflowOptions) (*OrgRequiredWorkflow, *Response, error)

UpdateRequiredWorkflow updates a required workflow in an org.

GitHub API docs: https://docs.github.com/actions/using-workflows/required-workflows

type ActionsVariable

type ActionsVariable struct {
	Name       string     `json:"name"`
	Value      string     `json:"value"`
	CreatedAt  *Timestamp `json:"created_at,omitempty"`
	UpdatedAt  *Timestamp `json:"updated_at,omitempty"`
	Visibility *string    `json:"visibility,omitempty"`
	// Used by ListOrgVariables and GetOrgVariables
	SelectedRepositoriesURL *string `json:"selected_repositories_url,omitempty"`
	// Used by UpdateOrgVariable and CreateOrgVariable
	SelectedRepositoryIDs *SelectedRepoIDs `json:"selected_repository_ids,omitempty"`
}

ActionsVariable represents a repository action variable.

func (*ActionsVariable) GetCreatedAt

func (a *ActionsVariable) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*ActionsVariable) GetSelectedRepositoriesURL

func (a *ActionsVariable) GetSelectedRepositoriesURL() string

GetSelectedRepositoriesURL returns the SelectedRepositoriesURL field if it's non-nil, zero value otherwise.

func (*ActionsVariable) GetSelectedRepositoryIDs

func (a *ActionsVariable) GetSelectedRepositoryIDs() *SelectedRepoIDs

GetSelectedRepositoryIDs returns the SelectedRepositoryIDs field.

func (*ActionsVariable) GetUpdatedAt

func (a *ActionsVariable) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*ActionsVariable) GetVisibility

func (a *ActionsVariable) GetVisibility() string

GetVisibility returns the Visibility field if it's non-nil, zero value otherwise.

type ActionsVariables

type ActionsVariables struct {
	TotalCount int                `json:"total_count"`
	Variables  []*ActionsVariable `json:"variables"`
}

ActionsVariables represents one item from the ListVariables response.

type ActiveCommitters

type ActiveCommitters struct {
	TotalAdvancedSecurityCommitters     int                           `json:"total_advanced_security_committers"`
	TotalCount                          int                           `json:"total_count"`
	MaximumAdvancedSecurityCommitters   int                           `json:"maximum_advanced_security_committers"`
	PurchasedAdvancedSecurityCommitters int                           `json:"purchased_advanced_security_committers"`
	Repositories                        []*RepositoryActiveCommitters `json:"repositories,omitempty"`
}

ActiveCommitters represents the total active committers across all repositories in an Organization.

type ActivityListStarredOptions

type ActivityListStarredOptions struct {
	// How to sort the repository list. Possible values are: created, updated,
	// pushed, full_name. Default is "full_name".
	Sort string `url:"sort,omitempty"`

	// Direction in which to sort repositories. Possible values are: asc, desc.
	// Default is "asc" when sort is "full_name", otherwise default is "desc".
	Direction string `url:"direction,omitempty"`

	ListOptions
}

ActivityListStarredOptions specifies the optional parameters to the ActivityService.ListStarred method.

type ActivityService

type ActivityService service

ActivityService handles communication with the activity related methods of the GitHub API.

GitHub API docs: https://docs.github.com/rest/activity/

func (*ActivityService) DeleteRepositorySubscription

func (s *ActivityService) DeleteRepositorySubscription(ctx context.Context, owner, repo string) (*Response, error)

DeleteRepositorySubscription deletes the subscription for the specified repository for the authenticated user.

This is used to stop watching a repository. To control whether or not to receive notifications from a repository, use SetRepositorySubscription.

GitHub API docs: https://docs.github.com/rest/activity/watching#delete-a-repository-subscription

func (*ActivityService) DeleteThreadSubscription

func (s *ActivityService) DeleteThreadSubscription(ctx context.Context, id string) (*Response, error)

DeleteThreadSubscription deletes the subscription for the specified thread for the authenticated user.

GitHub API docs: https://docs.github.com/rest/activity/notifications#delete-a-thread-subscription

func (*ActivityService) GetRepositorySubscription

func (s *ActivityService) GetRepositorySubscription(ctx context.Context, owner, repo string) (*Subscription, *Response, error)

GetRepositorySubscription returns the subscription for the specified repository for the authenticated user. If the authenticated user is not watching the repository, a nil Subscription is returned.

GitHub API docs: https://docs.github.com/rest/activity/watching#get-a-repository-subscription

func (*ActivityService) GetThread

func (s *ActivityService) GetThread(ctx context.Context, id string) (*Notification, *Response, error)

GetThread gets the specified notification thread.

GitHub API docs: https://docs.github.com/rest/activity/notifications#get-a-thread

func (*ActivityService) GetThreadSubscription

func (s *ActivityService) GetThreadSubscription(ctx context.Context, id string) (*Subscription, *Response, error)

GetThreadSubscription checks to see if the authenticated user is subscribed to a thread.

GitHub API docs: https://docs.github.com/rest/activity/notifications#get-a-thread-subscription-for-the-authenticated-user

func (*ActivityService) IsStarred

func (s *ActivityService) IsStarred(ctx context.Context, owner, repo string) (bool, *Response, error)

IsStarred checks if a repository is starred by authenticated user.

GitHub API docs: https://docs.github.com/rest/activity/starring#check-if-a-repository-is-starred-by-the-authenticated-user

func (*ActivityService) ListEvents

func (s *ActivityService) ListEvents(ctx context.Context, opts *ListOptions) ([]*Event, *Response, error)

ListEvents drinks from the firehose of all public events across GitHub.

GitHub API docs: https://docs.github.com/rest/activity/events#list-public-events

func (*ActivityService) ListEventsForOrganization

func (s *ActivityService) ListEventsForOrganization(ctx context.Context, org string, opts *ListOptions) ([]*Event, *Response, error)

ListEventsForOrganization lists public events for an organization.

GitHub API docs: https://docs.github.com/rest/activity/events#list-public-organization-events

func (*ActivityService) ListEventsForRepoNetwork

func (s *ActivityService) ListEventsForRepoNetwork(ctx context.Context, owner, repo string, opts *ListOptions) ([]*Event, *Response, error)

ListEventsForRepoNetwork lists public events for a network of repositories.

GitHub API docs: https://docs.github.com/rest/activity/events#list-public-events-for-a-network-of-repositories

func (*ActivityService) ListEventsPerformedByUser

func (s *ActivityService) ListEventsPerformedByUser(ctx context.Context, user string, publicOnly bool, opts *ListOptions) ([]*Event, *Response, error)

ListEventsPerformedByUser lists the events performed by a user. If publicOnly is true, only public events will be returned.

GitHub API docs: https://docs.github.com/rest/activity/events#list-events-for-the-authenticated-user GitHub API docs: https://docs.github.com/rest/activity/events#list-public-events-for-a-user

func (*ActivityService) ListEventsReceivedByUser

func (s *ActivityService) ListEventsReceivedByUser(ctx context.Context, user string, publicOnly bool, opts *ListOptions) ([]*Event, *Response, error)

ListEventsReceivedByUser lists the events received by a user. If publicOnly is true, only public events will be returned.

GitHub API docs: https://docs.github.com/rest/activity/events#list-events-received-by-the-authenticated-user GitHub API docs: https://docs.github.com/rest/activity/events#list-public-events-received-by-a-user

func (*ActivityService) ListFeeds

func (s *ActivityService) ListFeeds(ctx context.Context) (*Feeds, *Response, error)

ListFeeds lists all the feeds available to the authenticated user.

GitHub provides several timeline resources in Atom format:

Timeline: The GitHub global public timeline
User: The public timeline for any user, using URI template
Current user public: The public timeline for the authenticated user
Current user: The private timeline for the authenticated user
Current user actor: The private timeline for activity created by the
    authenticated user
Current user organizations: The private timeline for the organizations
    the authenticated user is a member of.

Note: Private feeds are only returned when authenticating via Basic Auth since current feed URIs use the older, non revocable auth tokens.

GitHub API docs: https://docs.github.com/rest/activity/feeds#get-feeds

func (*ActivityService) ListIssueEventsForRepository

func (s *ActivityService) ListIssueEventsForRepository(ctx context.Context, owner, repo string, opts *ListOptions) ([]*IssueEvent, *Response, error)

ListIssueEventsForRepository lists issue events for a repository.

GitHub API docs: https://docs.github.com/rest/issues/events#list-issue-events-for-a-repository

func (*ActivityService) ListNotifications

func (s *ActivityService) ListNotifications(ctx context.Context, opts *NotificationListOptions) ([]*Notification, *Response, error)

ListNotifications lists all notifications for the authenticated user.

GitHub API docs: https://docs.github.com/rest/activity/notifications#list-notifications-for-the-authenticated-user

func (*ActivityService) ListRepositoryEvents

func (s *ActivityService) ListRepositoryEvents(ctx context.Context, owner, repo string, opts *ListOptions) ([]*Event, *Response, error)

ListRepositoryEvents lists events for a repository.

GitHub API docs: https://docs.github.com/rest/activity/events#list-repository-events

func (*ActivityService) ListRepositoryNotifications

func (s *ActivityService) ListRepositoryNotifications(ctx context.Context, owner, repo string, opts *NotificationListOptions) ([]*Notification, *Response, error)

ListRepositoryNotifications lists all notifications in a given repository for the authenticated user.

GitHub API docs: https://docs.github.com/rest/activity/notifications#list-repository-notifications-for-the-authenticated-user

func (*ActivityService) ListStargazers

func (s *ActivityService) ListStargazers(ctx context.Context, owner, repo string, opts *ListOptions) ([]*Stargazer, *Response, error)

ListStargazers lists people who have starred the specified repo.

GitHub API docs: https://docs.github.com/rest/activity/starring#list-stargazers

func (*ActivityService) ListStarred

ListStarred lists all the repos starred by a user. Passing the empty string will list the starred repositories for the authenticated user.

GitHub API docs: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-a-user GitHub API docs: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-the-authenticated-user

func (*ActivityService) ListUserEventsForOrganization

func (s *ActivityService) ListUserEventsForOrganization(ctx context.Context, org, user string, opts *ListOptions) ([]*Event, *Response, error)

ListUserEventsForOrganization provides the user’s organization dashboard. You must be authenticated as the user to view this.

GitHub API docs: https://docs.github.com/rest/activity/events#list-organization-events-for-the-authenticated-user

func (*ActivityService) ListWatched

func (s *ActivityService) ListWatched(ctx context.Context, user string, opts *ListOptions) ([]*Repository, *Response, error)

ListWatched lists the repositories the specified user is watching. Passing the empty string will fetch watched repos for the authenticated user.

GitHub API docs: https://docs.github.com/rest/activity/watching#list-repositories-watched-by-a-user GitHub API docs: https://docs.github.com/rest/activity/watching#list-repositories-watched-by-the-authenticated-user

func (*ActivityService) ListWatchers

func (s *ActivityService) ListWatchers(ctx context.Context, owner, repo string, opts *ListOptions) ([]*User, *Response, error)

ListWatchers lists watchers of a particular repo.

GitHub API docs: https://docs.github.com/rest/activity/watching#list-watchers

func (*ActivityService) MarkNotificationsRead

func (s *ActivityService) MarkNotificationsRead(ctx context.Context, lastRead Timestamp) (*Response, error)

MarkNotificationsRead marks all notifications up to lastRead as read.

GitHub API docs: https://docs.github.com/rest/activity/notifications#mark-notifications-as-read

func (*ActivityService) MarkRepositoryNotificationsRead

func (s *ActivityService) MarkRepositoryNotificationsRead(ctx context.Context, owner, repo string, lastRead Timestamp) (*Response, error)

MarkRepositoryNotificationsRead marks all notifications up to lastRead in the specified repository as read.

GitHub API docs: https://docs.github.com/rest/activity/notifications#mark-repository-notifications-as-read

func (*ActivityService) MarkThreadDone

func (s *ActivityService) MarkThreadDone(ctx context.Context, id int64) (*Response, error)

MarkThreadDone marks the specified thread as done. Marking a thread as "done" is equivalent to marking a notification in your notification inbox on GitHub as done.

GitHub API docs: https://docs.github.com/rest/activity/notifications#mark-a-thread-as-done

func (*ActivityService) MarkThreadRead

func (s *ActivityService) MarkThreadRead(ctx context.Context, id string) (*Response, error)

MarkThreadRead marks the specified thread as read.

GitHub API docs: https://docs.github.com/rest/activity/notifications#mark-a-thread-as-read

func (*ActivityService) SetRepositorySubscription

func (s *ActivityService) SetRepositorySubscription(ctx context.Context, owner, repo string, subscription *Subscription) (*Subscription, *Response, error)

SetRepositorySubscription sets the subscription for the specified repository for the authenticated user.

To watch a repository, set subscription.Subscribed to true. To ignore notifications made within a repository, set subscription.Ignored to true. To stop watching a repository, use DeleteRepositorySubscription.

GitHub API docs: https://docs.github.com/rest/activity/watching#set-a-repository-subscription

func (*ActivityService) SetThreadSubscription

func (s *ActivityService) SetThreadSubscription(ctx context.Context, id string, subscription *Subscription) (*Subscription, *Response, error)

SetThreadSubscription sets the subscription for the specified thread for the authenticated user.

GitHub API docs: https://docs.github.com/rest/activity/notifications#set-a-thread-subscription

func (*ActivityService) Star

func (s *ActivityService) Star(ctx context.Context, owner, repo string) (*Response, error)

Star a repository as the authenticated user.

GitHub API docs: https://docs.github.com/rest/activity/starring#star-a-repository-for-the-authenticated-user

func (*ActivityService) Unstar

func (s *ActivityService) Unstar(ctx context.Context, owner, repo string) (*Response, error)

Unstar a repository as the authenticated user.

GitHub API docs: https://docs.github.com/rest/activity/starring#unstar-a-repository-for-the-authenticated-user

type ActorLocation

type ActorLocation struct {
	CountryCode *string `json:"country_code,omitempty"`
}

ActorLocation contains information about reported location for an actor.

func (*ActorLocation) GetCountryCode

func (a *ActorLocation) GetCountryCode() string

GetCountryCode returns the CountryCode field if it's non-nil, zero value otherwise.

type AdminEnforcedChanges

type AdminEnforcedChanges struct {
	From *bool `json:"from,omitempty"`
}

AdminEnforcedChanges represents the changes made to the AdminEnforced policy.

func (*AdminEnforcedChanges) GetFrom

func (a *AdminEnforcedChanges) GetFrom() bool

GetFrom returns the From field if it's non-nil, zero value otherwise.

type AdminEnforcement

type AdminEnforcement struct {
	URL     *string `json:"url,omitempty"`
	Enabled bool    `json:"enabled"`
}

AdminEnforcement represents the configuration to enforce required status checks for repository administrators.

func (*AdminEnforcement) GetURL

func (a *AdminEnforcement) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

type AdminService

type AdminService service

AdminService handles communication with the admin related methods of the GitHub API. These API routes are normally only accessible for GitHub Enterprise installations.

GitHub API docs: https://docs.github.com/rest/enterprise-admin

func (*AdminService) CreateOrg

func (s *AdminService) CreateOrg(ctx context.Context, org *Organization, admin string) (*Organization, *Response, error)

CreateOrg creates a new organization in GitHub Enterprise.

Note that only a subset of the org fields are used and org must not be nil.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/orgs#create-an-organization

func (*AdminService) CreateUser

func (s *AdminService) CreateUser(ctx context.Context, userReq CreateUserRequest) (*User, *Response, error)

CreateUser creates a new user in GitHub Enterprise.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#create-a-user

func (*AdminService) CreateUserImpersonation

func (s *AdminService) CreateUserImpersonation(ctx context.Context, username string, opts *ImpersonateUserOptions) (*UserAuthorization, *Response, error)

CreateUserImpersonation creates an impersonation OAuth token.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#create-an-impersonation-oauth-token

func (*AdminService) DeleteUser

func (s *AdminService) DeleteUser(ctx context.Context, username string) (*Response, error)

DeleteUser deletes a user in GitHub Enterprise.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#delete-a-user

func (*AdminService) DeleteUserImpersonation

func (s *AdminService) DeleteUserImpersonation(ctx context.Context, username string) (*Response, error)

DeleteUserImpersonation deletes an impersonation OAuth token.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#delete-an-impersonation-oauth-token

func (*AdminService) GetAdminStats

func (s *AdminService) GetAdminStats(ctx context.Context) (*AdminStats, *Response, error)

GetAdminStats returns a variety of metrics about a GitHub Enterprise installation.

Please note that this is only available to site administrators, otherwise it will error with a 404 not found (instead of 401 or 403).

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-all-statistics

func (*AdminService) RenameOrg

func (s *AdminService) RenameOrg(ctx context.Context, org *Organization, newName string) (*RenameOrgResponse, *Response, error)

RenameOrg renames an organization in GitHub Enterprise.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/orgs#update-an-organization-name

func (*AdminService) RenameOrgByName

func (s *AdminService) RenameOrgByName(ctx context.Context, org, newName string) (*RenameOrgResponse, *Response, error)

RenameOrgByName renames an organization in GitHub Enterprise using its current name.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/orgs#update-an-organization-name

func (*AdminService) UpdateTeamLDAPMapping

func (s *AdminService) UpdateTeamLDAPMapping(ctx context.Context, team int64, mapping *TeamLDAPMapping) (*TeamLDAPMapping, *Response, error)

UpdateTeamLDAPMapping updates the mapping between a GitHub team and an LDAP group.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/ldap#update-ldap-mapping-for-a-team

func (*AdminService) UpdateUserLDAPMapping

func (s *AdminService) UpdateUserLDAPMapping(ctx context.Context, user string, mapping *UserLDAPMapping) (*UserLDAPMapping, *Response, error)

UpdateUserLDAPMapping updates the mapping between a GitHub user and an LDAP user.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/ldap#update-ldap-mapping-for-a-user

type AdminStats

type AdminStats struct {
	Issues     *IssueStats     `json:"issues,omitempty"`
	Hooks      *HookStats      `json:"hooks,omitempty"`
	Milestones *MilestoneStats `json:"milestones,omitempty"`
	Orgs       *OrgStats       `json:"orgs,omitempty"`
	Comments   *CommentStats   `json:"comments,omitempty"`
	Pages      *PageStats      `json:"pages,omitempty"`
	Users      *UserStats      `json:"users,omitempty"`
	Gists      *GistStats      `json:"gists,omitempty"`
	Pulls      *PullStats      `json:"pulls,omitempty"`
	Repos      *RepoStats      `json:"repos,omitempty"`
}

AdminStats represents a variety of stats of a GitHub Enterprise installation.

func (*AdminStats) GetComments

func (a *AdminStats) GetComments() *CommentStats

GetComments returns the Comments field.

func (*AdminStats) GetGists

func (a *AdminStats) GetGists() *GistStats

GetGists returns the Gists field.

func (*AdminStats) GetHooks

func (a *AdminStats) GetHooks() *HookStats

GetHooks returns the Hooks field.

func (*AdminStats) GetIssues

func (a *AdminStats) GetIssues() *IssueStats

GetIssues returns the Issues field.

func (*AdminStats) GetMilestones

func (a *AdminStats) GetMilestones() *MilestoneStats

GetMilestones returns the Milestones field.

func (*AdminStats) GetOrgs

func (a *AdminStats) GetOrgs() *OrgStats

GetOrgs returns the Orgs field.

func (*AdminStats) GetPages

func (a *AdminStats) GetPages() *PageStats

GetPages returns the Pages field.

func (*AdminStats) GetPulls

func (a *AdminStats) GetPulls() *PullStats

GetPulls returns the Pulls field.

func (*AdminStats) GetRepos

func (a *AdminStats) GetRepos() *RepoStats

GetRepos returns the Repos field.

func (*AdminStats) GetUsers

func (a *AdminStats) GetUsers() *UserStats

GetUsers returns the Users field.

func (AdminStats) String

func (s AdminStats) String() string

type AdvancedSecurity

type AdvancedSecurity struct {
	Status *string `json:"status,omitempty"`
}

AdvancedSecurity specifies the state of advanced security on a repository.

GitHub API docs: https://docs.github.com/github/getting-started-with-github/learning-about-github/about-github-advanced-security

func (*AdvancedSecurity) GetStatus

func (a *AdvancedSecurity) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

func (AdvancedSecurity) String

func (a AdvancedSecurity) String() string

type AdvancedSecurityCommittersBreakdown

type AdvancedSecurityCommittersBreakdown struct {
	UserLogin      *string `json:"user_login,omitempty"`
	LastPushedDate *string `json:"last_pushed_date,omitempty"`
}

AdvancedSecurityCommittersBreakdown represents the user activity breakdown for ActiveCommitters.

func (*AdvancedSecurityCommittersBreakdown) GetLastPushedDate

func (a *AdvancedSecurityCommittersBreakdown) GetLastPushedDate() string

GetLastPushedDate returns the LastPushedDate field if it's non-nil, zero value otherwise.

func (*AdvancedSecurityCommittersBreakdown) GetUserLogin

func (a *AdvancedSecurityCommittersBreakdown) GetUserLogin() string

GetUserLogin returns the UserLogin field if it's non-nil, zero value otherwise.

type AdvisoryCVSS

type AdvisoryCVSS struct {
	Score        *float64 `json:"score,omitempty"`
	VectorString *string  `json:"vector_string,omitempty"`
}

AdvisoryCVSS represents the advisory pertaining to the Common Vulnerability Scoring System.

func (*AdvisoryCVSS) GetScore

func (a *AdvisoryCVSS) GetScore() *float64

GetScore returns the Score field.

func (*AdvisoryCVSS) GetVectorString

func (a *AdvisoryCVSS) GetVectorString() string

GetVectorString returns the VectorString field if it's non-nil, zero value otherwise.

type AdvisoryCWEs

type AdvisoryCWEs struct {
	CWEID *string `json:"cwe_id,omitempty"`
	Name  *string `json:"name,omitempty"`
}

AdvisoryCWEs represent the advisory pertaining to Common Weakness Enumeration.

func (*AdvisoryCWEs) GetCWEID

func (a *AdvisoryCWEs) GetCWEID() string

GetCWEID returns the CWEID field if it's non-nil, zero value otherwise.

func (*AdvisoryCWEs) GetName

func (a *AdvisoryCWEs) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

type AdvisoryIdentifier

type AdvisoryIdentifier struct {
	Value *string `json:"value,omitempty"`
	Type  *string `json:"type,omitempty"`
}

AdvisoryIdentifier represents the identifier for a Security Advisory.

func (*AdvisoryIdentifier) GetType

func (a *AdvisoryIdentifier) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

func (*AdvisoryIdentifier) GetValue

func (a *AdvisoryIdentifier) GetValue() string

GetValue returns the Value field if it's non-nil, zero value otherwise.

type AdvisoryReference

type AdvisoryReference struct {
	URL *string `json:"url,omitempty"`
}

AdvisoryReference represents the reference url for the security advisory.

func (*AdvisoryReference) GetURL

func (a *AdvisoryReference) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

type AdvisoryVulnerability

type AdvisoryVulnerability struct {
	Package                *VulnerabilityPackage `json:"package,omitempty"`
	Severity               *string               `json:"severity,omitempty"`
	VulnerableVersionRange *string               `json:"vulnerable_version_range,omitempty"`
	FirstPatchedVersion    *FirstPatchedVersion  `json:"first_patched_version,omitempty"`

	// PatchedVersions and VulnerableFunctions are used in the following APIs:
	// - https://docs.github.com/rest/security-advisories/repository-advisories#list-repository-security-advisories-for-an-organization
	// - https://docs.github.com/rest/security-advisories/repository-advisories#list-repository-security-advisories
	PatchedVersions     *string  `json:"patched_versions,omitempty"`
	VulnerableFunctions []string `json:"vulnerable_functions,omitempty"`
}

AdvisoryVulnerability represents the vulnerability object for a Security Advisory.

func (*AdvisoryVulnerability) GetFirstPatchedVersion

func (a *AdvisoryVulnerability) GetFirstPatchedVersion() *FirstPatchedVersion

GetFirstPatchedVersion returns the FirstPatchedVersion field.

func (*AdvisoryVulnerability) GetPackage

GetPackage returns the Package field.

func (*AdvisoryVulnerability) GetPatchedVersions

func (a *AdvisoryVulnerability) GetPatchedVersions() string

GetPatchedVersions returns the PatchedVersions field if it's non-nil, zero value otherwise.

func (*AdvisoryVulnerability) GetSeverity

func (a *AdvisoryVulnerability) GetSeverity() string

GetSeverity returns the Severity field if it's non-nil, zero value otherwise.

func (*AdvisoryVulnerability) GetVulnerableVersionRange

func (a *AdvisoryVulnerability) GetVulnerableVersionRange() string

GetVulnerableVersionRange returns the VulnerableVersionRange field if it's non-nil, zero value otherwise.

type Alert

type Alert struct {
	Number             *int                  `json:"number,omitempty"`
	Repository         *Repository           `json:"repository,omitempty"`
	RuleID             *string               `json:"rule_id,omitempty"`
	RuleSeverity       *string               `json:"rule_severity,omitempty"`
	RuleDescription    *string               `json:"rule_description,omitempty"`
	Rule               *Rule                 `json:"rule,omitempty"`
	Tool               *Tool                 `json:"tool,omitempty"`
	CreatedAt          *Timestamp            `json:"created_at,omitempty"`
	UpdatedAt          *Timestamp            `json:"updated_at,omitempty"`
	FixedAt            *Timestamp            `json:"fixed_at,omitempty"`
	State              *string               `json:"state,omitempty"`
	ClosedBy           *User                 `json:"closed_by,omitempty"`
	ClosedAt           *Timestamp            `json:"closed_at,omitempty"`
	URL                *string               `json:"url,omitempty"`
	HTMLURL            *string               `json:"html_url,omitempty"`
	MostRecentInstance *MostRecentInstance   `json:"most_recent_instance,omitempty"`
	Instances          []*MostRecentInstance `json:"instances,omitempty"`
	DismissedBy        *User                 `json:"dismissed_by,omitempty"`
	DismissedAt        *Timestamp            `json:"dismissed_at,omitempty"`
	DismissedReason    *string               `json:"dismissed_reason,omitempty"`
	DismissedComment   *string               `json:"dismissed_comment,omitempty"`
	InstancesURL       *string               `json:"instances_url,omitempty"`
}

Alert represents an individual GitHub Code Scanning Alert on a single repository.

GitHub API docs: https://docs.github.com/rest/code-scanning

func (*Alert) GetClosedAt

func (a *Alert) GetClosedAt() Timestamp

GetClosedAt returns the ClosedAt field if it's non-nil, zero value otherwise.

func (*Alert) GetClosedBy

func (a *Alert) GetClosedBy() *User

GetClosedBy returns the ClosedBy field.

func (*Alert) GetCreatedAt

func (a *Alert) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Alert) GetDismissedAt

func (a *Alert) GetDismissedAt() Timestamp

GetDismissedAt returns the DismissedAt field if it's non-nil, zero value otherwise.

func (*Alert) GetDismissedBy

func (a *Alert) GetDismissedBy() *User

GetDismissedBy returns the DismissedBy field.

func (*Alert) GetDismissedComment

func (a *Alert) GetDismissedComment() string

GetDismissedComment returns the DismissedComment field if it's non-nil, zero value otherwise.

func (*Alert) GetDismissedReason

func (a *Alert) GetDismissedReason() string

GetDismissedReason returns the DismissedReason field if it's non-nil, zero value otherwise.

func (*Alert) GetFixedAt

func (a *Alert) GetFixedAt() Timestamp

GetFixedAt returns the FixedAt field if it's non-nil, zero value otherwise.

func (*Alert) GetHTMLURL

func (a *Alert) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Alert) GetInstancesURL

func (a *Alert) GetInstancesURL() string

GetInstancesURL returns the InstancesURL field if it's non-nil, zero value otherwise.

func (*Alert) GetMostRecentInstance

func (a *Alert) GetMostRecentInstance() *MostRecentInstance

GetMostRecentInstance returns the MostRecentInstance field.

func (*Alert) GetNumber

func (a *Alert) GetNumber() int

GetNumber returns the Number field if it's non-nil, zero value otherwise.

func (*Alert) GetRepository

func (a *Alert) GetRepository() *Repository

GetRepository returns the Repository field.

func (*Alert) GetRule

func (a *Alert) GetRule() *Rule

GetRule returns the Rule field.

func (*Alert) GetRuleDescription

func (a *Alert) GetRuleDescription() string

GetRuleDescription returns the RuleDescription field if it's non-nil, zero value otherwise.

func (*Alert) GetRuleID

func (a *Alert) GetRuleID() string

GetRuleID returns the RuleID field if it's non-nil, zero value otherwise.

func (*Alert) GetRuleSeverity

func (a *Alert) GetRuleSeverity() string

GetRuleSeverity returns the RuleSeverity field if it's non-nil, zero value otherwise.

func (*Alert) GetState

func (a *Alert) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

func (*Alert) GetTool

func (a *Alert) GetTool() *Tool

GetTool returns the Tool field.

func (*Alert) GetURL

func (a *Alert) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Alert) GetUpdatedAt

func (a *Alert) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*Alert) ID

func (a *Alert) ID() int64

ID returns the ID associated with an alert. It is the number at the end of the security alert's URL.

type AlertInstancesListOptions

type AlertInstancesListOptions struct {
	// Return code scanning alert instances for a specific branch reference.
	// The ref can be formatted as refs/heads/<branch name> or simply <branch name>. To reference a pull request use refs/pull/<number>/merge
	Ref string `url:"ref,omitempty"`

	ListOptions
}

AlertInstancesListOptions specifies optional parameters to the CodeScanningService.ListAlertInstances method.

type AlertListOptions

type AlertListOptions struct {
	// State of the code scanning alerts to list. Set to closed to list only closed code scanning alerts. Default: open
	State string `url:"state,omitempty"`

	// Return code scanning alerts for a specific branch reference.
	// The ref can be formatted as refs/heads/<branch name> or simply <branch name>. To reference a pull request use refs/pull/<number>/merge
	Ref string `url:"ref,omitempty"`

	// If specified, only code scanning alerts with this severity will be returned. Possible values are: critical, high, medium, low, warning, note, error.
	Severity string `url:"severity,omitempty"`

	// The name of a code scanning tool. Only results by this tool will be listed.
	ToolName string `url:"tool_name,omitempty"`

	// The GUID of a code scanning tool. Only results by this tool will be listed.
	ToolGUID string `url:"tool_guid,omitempty"`

	// The direction to sort the results by. Possible values are: asc, desc. Default: desc.
	Direction string `url:"direction,omitempty"`

	// The property by which to sort the results. Possible values are: created, updated. Default: created.
	Sort string `url:"sort,omitempty"`

	ListCursorOptions

	// Add ListOptions so offset pagination with integer type "page" query parameter is accepted
	// since ListCursorOptions accepts "page" as string only.
	ListOptions
}

AlertListOptions specifies optional parameters to the CodeScanningService.ListAlerts method.

type AllowDeletions

type AllowDeletions struct {
	Enabled bool `json:"enabled"`
}

AllowDeletions represents the configuration to accept deletion of protected branches.

type AllowDeletionsEnforcementLevelChanges

type AllowDeletionsEnforcementLevelChanges struct {
	From *string `json:"from,omitempty"`
}

AllowDeletionsEnforcementLevelChanges represents the changes made to the AllowDeletionsEnforcementLevel policy.

func (*AllowDeletionsEnforcementLevelChanges) GetFrom

GetFrom returns the From field if it's non-nil, zero value otherwise.

type AllowForcePushes

type AllowForcePushes struct {
	Enabled bool `json:"enabled"`
}

AllowForcePushes represents the configuration to accept forced pushes on protected branches.

type AllowForkSyncing

type AllowForkSyncing struct {
	Enabled *bool `json:"enabled,omitempty"`
}

AllowForkSyncing represents whether users can pull changes from upstream when the branch is locked.

func (*AllowForkSyncing) GetEnabled

func (a *AllowForkSyncing) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

type AnalysesListOptions

type AnalysesListOptions struct {
	// Return code scanning analyses belonging to the same SARIF upload.
	SarifID *string `url:"sarif_id,omitempty"`

	// Return code scanning analyses for a specific branch reference.
	// The ref can be formatted as refs/heads/<branch name> or simply <branch name>. To reference a pull request use refs/pull/<number>/merge
	Ref *string `url:"ref,omitempty"`

	ListOptions
}

AnalysesListOptions specifies optional parameters to the CodeScanningService.ListAnalysesForRepo method.

func (*AnalysesListOptions) GetRef

func (a *AnalysesListOptions) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*AnalysesListOptions) GetSarifID

func (a *AnalysesListOptions) GetSarifID() string

GetSarifID returns the SarifID field if it's non-nil, zero value otherwise.

type App

type App struct {
	ID                 *int64                   `json:"id,omitempty"`
	Slug               *string                  `json:"slug,omitempty"`
	NodeID             *string                  `json:"node_id,omitempty"`
	Owner              *User                    `json:"owner,omitempty"`
	Name               *string                  `json:"name,omitempty"`
	Description        *string                  `json:"description,omitempty"`
	ExternalURL        *string                  `json:"external_url,omitempty"`
	HTMLURL            *string                  `json:"html_url,omitempty"`
	CreatedAt          *Timestamp               `json:"created_at,omitempty"`
	UpdatedAt          *Timestamp               `json:"updated_at,omitempty"`
	Permissions        *InstallationPermissions `json:"permissions,omitempty"`
	Events             []string                 `json:"events,omitempty"`
	InstallationsCount *int                     `json:"installations_count,omitempty"`
}

App represents a GitHub App.

func (*App) GetCreatedAt

func (a *App) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*App) GetDescription

func (a *App) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*App) GetExternalURL

func (a *App) GetExternalURL() string

GetExternalURL returns the ExternalURL field if it's non-nil, zero value otherwise.

func (*App) GetHTMLURL

func (a *App) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*App) GetID

func (a *App) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*App) GetInstallationsCount

func (a *App) GetInstallationsCount() int

GetInstallationsCount returns the InstallationsCount field if it's non-nil, zero value otherwise.

func (*App) GetName

func (a *App) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*App) GetNodeID

func (a *App) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*App) GetOwner

func (a *App) GetOwner() *User

GetOwner returns the Owner field.

func (*App) GetPermissions

func (a *App) GetPermissions() *InstallationPermissions

GetPermissions returns the Permissions field.

func (*App) GetSlug

func (a *App) GetSlug() string

GetSlug returns the Slug field if it's non-nil, zero value otherwise.

func (*App) GetUpdatedAt

func (a *App) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type AppConfig

type AppConfig struct {
	ID            *int64     `json:"id,omitempty"`
	Slug          *string    `json:"slug,omitempty"`
	NodeID        *string    `json:"node_id,omitempty"`
	Owner         *User      `json:"owner,omitempty"`
	Name          *string    `json:"name,omitempty"`
	Description   *string    `json:"description,omitempty"`
	ExternalURL   *string    `json:"external_url,omitempty"`
	HTMLURL       *string    `json:"html_url,omitempty"`
	CreatedAt     *Timestamp `json:"created_at,omitempty"`
	UpdatedAt     *Timestamp `json:"updated_at,omitempty"`
	ClientID      *string    `json:"client_id,omitempty"`
	ClientSecret  *string    `json:"client_secret,omitempty"`
	WebhookSecret *string    `json:"webhook_secret,omitempty"`
	PEM           *string    `json:"pem,omitempty"`
}

AppConfig describes the configuration of a GitHub App.

func (*AppConfig) GetClientID

func (a *AppConfig) GetClientID() string

GetClientID returns the ClientID field if it's non-nil, zero value otherwise.

func (*AppConfig) GetClientSecret

func (a *AppConfig) GetClientSecret() string

GetClientSecret returns the ClientSecret field if it's non-nil, zero value otherwise.

func (*AppConfig) GetCreatedAt

func (a *AppConfig) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*AppConfig) GetDescription

func (a *AppConfig) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*AppConfig) GetExternalURL

func (a *AppConfig) GetExternalURL() string

GetExternalURL returns the ExternalURL field if it's non-nil, zero value otherwise.

func (*AppConfig) GetHTMLURL

func (a *AppConfig) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*AppConfig) GetID

func (a *AppConfig) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*AppConfig) GetName

func (a *AppConfig) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*AppConfig) GetNodeID

func (a *AppConfig) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*AppConfig) GetOwner

func (a *AppConfig) GetOwner() *User

GetOwner returns the Owner field.

func (*AppConfig) GetPEM

func (a *AppConfig) GetPEM() string

GetPEM returns the PEM field if it's non-nil, zero value otherwise.

func (*AppConfig) GetSlug

func (a *AppConfig) GetSlug() string

GetSlug returns the Slug field if it's non-nil, zero value otherwise.

func (*AppConfig) GetUpdatedAt

func (a *AppConfig) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*AppConfig) GetWebhookSecret

func (a *AppConfig) GetWebhookSecret() string

GetWebhookSecret returns the WebhookSecret field if it's non-nil, zero value otherwise.

type AppsService

type AppsService service

AppsService provides access to the installation related functions in the GitHub API.

GitHub API docs: https://docs.github.com/rest/apps/

func (*AppsService) AddRepository

func (s *AppsService) AddRepository(ctx context.Context, instID, repoID int64) (*Repository, *Response, error)

AddRepository adds a single repository to an installation.

GitHub API docs: https://docs.github.com/rest/apps/installations#add-a-repository-to-an-app-installation

func (*AppsService) CompleteAppManifest

func (s *AppsService) CompleteAppManifest(ctx context.Context, code string) (*AppConfig, *Response, error)

CompleteAppManifest completes the App manifest handshake flow for the given code.

GitHub API docs: https://docs.github.com/rest/apps/apps#create-a-github-app-from-a-manifest

func (*AppsService) CreateAttachment

func (s *AppsService) CreateAttachment(ctx context.Context, contentReferenceID int64, title, body string) (*Attachment, *Response, error)

CreateAttachment creates a new attachment on user comment containing a url.

GitHub API docs: https://docs.github.com/enterprise-server@3.3/rest/reference/apps#create-a-content-attachment

func (*AppsService) CreateInstallationToken

func (s *AppsService) CreateInstallationToken(ctx context.Context, id int64, opts *InstallationTokenOptions) (*InstallationToken, *Response, error)

CreateInstallationToken creates a new installation token.

GitHub API docs: https://docs.github.com/rest/apps/apps#create-an-installation-access-token-for-an-app

func (*AppsService) CreateInstallationTokenListRepos

func (s *AppsService) CreateInstallationTokenListRepos(ctx context.Context, id int64, opts *InstallationTokenListRepoOptions) (*InstallationToken, *Response, error)

CreateInstallationTokenListRepos creates a new installation token with a list of all repositories in an installation which is not possible with CreateInstallationToken.

It differs from CreateInstallationToken by taking InstallationTokenListRepoOptions as a parameter which does not omit RepositoryIDs if that field is nil or an empty array.

GitHub API docs: https://docs.github.com/rest/apps/apps#create-an-installation-access-token-for-an-app

func (*AppsService) DeleteInstallation

func (s *AppsService) DeleteInstallation(ctx context.Context, id int64) (*Response, error)

DeleteInstallation deletes the specified installation.

GitHub API docs: https://docs.github.com/rest/apps/apps#delete-an-installation-for-the-authenticated-app

func (*AppsService) FindOrganizationInstallation

func (s *AppsService) FindOrganizationInstallation(ctx context.Context, org string) (*Installation, *Response, error)

FindOrganizationInstallation finds the organization's installation information.

GitHub API docs: https://docs.github.com/rest/apps/apps#get-an-organization-installation-for-the-authenticated-app

func (*AppsService) FindRepositoryInstallation

func (s *AppsService) FindRepositoryInstallation(ctx context.Context, owner, repo string) (*Installation, *Response, error)

FindRepositoryInstallation finds the repository's installation information.

GitHub API docs: https://docs.github.com/rest/apps/apps#get-a-repository-installation-for-the-authenticated-app

func (*AppsService) FindRepositoryInstallationByID

func (s *AppsService) FindRepositoryInstallationByID(ctx context.Context, id int64) (*Installation, *Response, error)

FindRepositoryInstallationByID finds the repository's installation information.

Note: FindRepositoryInstallationByID uses the undocumented GitHub API endpoint "GET /repositories/{repository_id}/installation".

func (*AppsService) FindUserInstallation

func (s *AppsService) FindUserInstallation(ctx context.Context, user string) (*Installation, *Response, error)

FindUserInstallation finds the user's installation information.

GitHub API docs: https://docs.github.com/rest/apps/apps#get-a-user-installation-for-the-authenticated-app

func (*AppsService) Get

func (s *AppsService) Get(ctx context.Context, appSlug string) (*App, *Response, error)

Get a single GitHub App. Passing the empty string will get the authenticated GitHub App.

Note: appSlug is just the URL-friendly name of your GitHub App. You can find this on the settings page for your GitHub App (e.g., https://github.com/settings/apps/:app_slug).

GitHub API docs: https://docs.github.com/rest/apps/apps#get-an-app GitHub API docs: https://docs.github.com/rest/apps/apps#get-the-authenticated-app

func (*AppsService) GetHookConfig

func (s *AppsService) GetHookConfig(ctx context.Context) (*HookConfig, *Response, error)

GetHookConfig returns the webhook configuration for a GitHub App. The underlying transport must be authenticated as an app.

GitHub API docs: https://docs.github.com/rest/apps/webhooks#get-a-webhook-configuration-for-an-app

func (*AppsService) GetHookDelivery

func (s *AppsService) GetHookDelivery(ctx context.Context, deliveryID int64) (*HookDelivery, *Response, error)

GetHookDelivery returns the App webhook delivery with the specified ID.

GitHub API docs: https://docs.github.com/rest/apps/webhooks#get-a-delivery-for-an-app-webhook

func (*AppsService) GetInstallation

func (s *AppsService) GetInstallation(ctx context.Context, id int64) (*Installation, *Response, error)

GetInstallation returns the specified installation.

GitHub API docs: https://docs.github.com/rest/apps/apps#get-an-installation-for-the-authenticated-app

func (*AppsService) ListHookDeliveries

func (s *AppsService) ListHookDeliveries(ctx context.Context, opts *ListCursorOptions) ([]*HookDelivery, *Response, error)

ListHookDeliveries lists deliveries of an App webhook.

GitHub API docs: https://docs.github.com/rest/apps/webhooks#list-deliveries-for-an-app-webhook

func (*AppsService) ListInstallationRequests

func (s *AppsService) ListInstallationRequests(ctx context.Context, opts *ListOptions) ([]*InstallationRequest, *Response, error)

ListInstallationRequests lists the pending installation requests that the current GitHub App has.

GitHub API docs: https://docs.github.com/rest/apps/apps#list-installation-requests-for-the-authenticated-app

func (*AppsService) ListInstallations

func (s *AppsService) ListInstallations(ctx context.Context, opts *ListOptions) ([]*Installation, *Response, error)

ListInstallations lists the installations that the current GitHub App has.

GitHub API docs: https://docs.github.com/rest/apps/apps#list-installations-for-the-authenticated-app

func (*AppsService) ListRepos

func (s *AppsService) ListRepos(ctx context.Context, opts *ListOptions) (*ListRepositories, *Response, error)

ListRepos lists the repositories that are accessible to the authenticated installation.

GitHub API docs: https://docs.github.com/rest/apps/installations#list-repositories-accessible-to-the-app-installation

func (*AppsService) ListUserInstallations

func (s *AppsService) ListUserInstallations(ctx context.Context, opts *ListOptions) ([]*Installation, *Response, error)

ListUserInstallations lists installations that are accessible to the authenticated user.

GitHub API docs: https://docs.github.com/rest/apps/installations#list-app-installations-accessible-to-the-user-access-token

func (*AppsService) ListUserRepos

func (s *AppsService) ListUserRepos(ctx context.Context, id int64, opts *ListOptions) (*ListRepositories, *Response, error)

ListUserRepos lists repositories that are accessible to the authenticated user for an installation.

GitHub API docs: https://docs.github.com/rest/apps/installations#list-repositories-accessible-to-the-user-access-token

func (*AppsService) RedeliverHookDelivery

func (s *AppsService) RedeliverHookDelivery(ctx context.Context, deliveryID int64) (*HookDelivery, *Response, error)

RedeliverHookDelivery redelivers a delivery for an App webhook.

GitHub API docs: https://docs.github.com/rest/apps/webhooks#redeliver-a-delivery-for-an-app-webhook

func (*AppsService) RemoveRepository

func (s *AppsService) RemoveRepository(ctx context.Context, instID, repoID int64) (*Response, error)

RemoveRepository removes a single repository from an installation.

GitHub API docs: https://docs.github.com/rest/apps/installations#remove-a-repository-from-an-app-installation

func (*AppsService) RevokeInstallationToken

func (s *AppsService) RevokeInstallationToken(ctx context.Context) (*Response, error)

RevokeInstallationToken revokes an installation token.

GitHub API docs: https://docs.github.com/rest/apps/installations#revoke-an-installation-access-token

func (*AppsService) SuspendInstallation

func (s *AppsService) SuspendInstallation(ctx context.Context, id int64) (*Response, error)

SuspendInstallation suspends the specified installation.

GitHub API docs: https://docs.github.com/rest/apps/apps#suspend-an-app-installation

func (*AppsService) UnsuspendInstallation

func (s *AppsService) UnsuspendInstallation(ctx context.Context, id int64) (*Response, error)

UnsuspendInstallation unsuspends the specified installation.

GitHub API docs: https://docs.github.com/rest/apps/apps#unsuspend-an-app-installation

func (*AppsService) UpdateHookConfig

func (s *AppsService) UpdateHookConfig(ctx context.Context, config *HookConfig) (*HookConfig, *Response, error)

UpdateHookConfig updates the webhook configuration for a GitHub App. The underlying transport must be authenticated as an app.

GitHub API docs: https://docs.github.com/rest/apps/webhooks#update-a-webhook-configuration-for-an-app

type ArchiveFormat

type ArchiveFormat string

ArchiveFormat is used to define the archive type when calling GetArchiveLink.

const (
	// Tarball specifies an archive in gzipped tar format.
	Tarball ArchiveFormat = "tarball"

	// Zipball specifies an archive in zip format.
	Zipball ArchiveFormat = "zipball"
)

type ArchivedAt

type ArchivedAt struct {
	From *Timestamp `json:"from,omitempty"`
	To   *Timestamp `json:"to,omitempty"`
}

ArchivedAt represents an archiving date change.

func (*ArchivedAt) GetFrom

func (a *ArchivedAt) GetFrom() Timestamp

GetFrom returns the From field if it's non-nil, zero value otherwise.

func (*ArchivedAt) GetTo

func (a *ArchivedAt) GetTo() Timestamp

GetTo returns the To field if it's non-nil, zero value otherwise.

type Artifact

type Artifact struct {
	ID                 *int64               `json:"id,omitempty"`
	NodeID             *string              `json:"node_id,omitempty"`
	Name               *string              `json:"name,omitempty"`
	SizeInBytes        *int64               `json:"size_in_bytes,omitempty"`
	URL                *string              `json:"url,omitempty"`
	ArchiveDownloadURL *string              `json:"archive_download_url,omitempty"`
	Expired            *bool                `json:"expired,omitempty"`
	CreatedAt          *Timestamp           `json:"created_at,omitempty"`
	UpdatedAt          *Timestamp           `json:"updated_at,omitempty"`
	ExpiresAt          *Timestamp           `json:"expires_at,omitempty"`
	WorkflowRun        *ArtifactWorkflowRun `json:"workflow_run,omitempty"`
}

Artifact represents a GitHub artifact. Artifacts allow sharing data between jobs in a workflow and provide storage for data once a workflow is complete.

GitHub API docs: https://docs.github.com/rest/actions/artifacts

func (*Artifact) GetArchiveDownloadURL

func (a *Artifact) GetArchiveDownloadURL() string

GetArchiveDownloadURL returns the ArchiveDownloadURL field if it's non-nil, zero value otherwise.

func (*Artifact) GetCreatedAt

func (a *Artifact) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Artifact) GetExpired

func (a *Artifact) GetExpired() bool

GetExpired returns the Expired field if it's non-nil, zero value otherwise.

func (*Artifact) GetExpiresAt

func (a *Artifact) GetExpiresAt() Timestamp

GetExpiresAt returns the ExpiresAt field if it's non-nil, zero value otherwise.

func (*Artifact) GetID

func (a *Artifact) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Artifact) GetName

func (a *Artifact) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*Artifact) GetNodeID

func (a *Artifact) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Artifact) GetSizeInBytes

func (a *Artifact) GetSizeInBytes() int64

GetSizeInBytes returns the SizeInBytes field if it's non-nil, zero value otherwise.

func (*Artifact) GetURL

func (a *Artifact) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Artifact) GetUpdatedAt

func (a *Artifact) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*Artifact) GetWorkflowRun

func (a *Artifact) GetWorkflowRun() *ArtifactWorkflowRun

GetWorkflowRun returns the WorkflowRun field.

type ArtifactList

type ArtifactList struct {
	TotalCount *int64      `json:"total_count,omitempty"`
	Artifacts  []*Artifact `json:"artifacts,omitempty"`
}

ArtifactList represents a list of GitHub artifacts.

GitHub API docs: https://docs.github.com/rest/actions/artifacts#artifacts

func (*ArtifactList) GetTotalCount

func (a *ArtifactList) GetTotalCount() int64

GetTotalCount returns the TotalCount field if it's non-nil, zero value otherwise.

type ArtifactWorkflowRun

type ArtifactWorkflowRun struct {
	ID               *int64  `json:"id,omitempty"`
	RepositoryID     *int64  `json:"repository_id,omitempty"`
	HeadRepositoryID *int64  `json:"head_repository_id,omitempty"`
	HeadBranch       *string `json:"head_branch,omitempty"`
	HeadSHA          *string `json:"head_sha,omitempty"`
}

ArtifactWorkflowRun represents a GitHub artifact's workflow run.

GitHub API docs: https://docs.github.com/rest/actions/artifacts

func (*ArtifactWorkflowRun) GetHeadBranch

func (a *ArtifactWorkflowRun) GetHeadBranch() string

GetHeadBranch returns the HeadBranch field if it's non-nil, zero value otherwise.

func (*ArtifactWorkflowRun) GetHeadRepositoryID

func (a *ArtifactWorkflowRun) GetHeadRepositoryID() int64

GetHeadRepositoryID returns the HeadRepositoryID field if it's non-nil, zero value otherwise.

func (*ArtifactWorkflowRun) GetHeadSHA

func (a *ArtifactWorkflowRun) GetHeadSHA() string

GetHeadSHA returns the HeadSHA field if it's non-nil, zero value otherwise.

func (*ArtifactWorkflowRun) GetID

func (a *ArtifactWorkflowRun) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*ArtifactWorkflowRun) GetRepositoryID

func (a *ArtifactWorkflowRun) GetRepositoryID() int64

GetRepositoryID returns the RepositoryID field if it's non-nil, zero value otherwise.

type Attachment

type Attachment struct {
	ID    *int64  `json:"id,omitempty"`
	Title *string `json:"title,omitempty"`
	Body  *string `json:"body,omitempty"`
}

Attachment represents a GitHub Apps attachment.

func (*Attachment) GetBody

func (a *Attachment) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*Attachment) GetID

func (a *Attachment) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Attachment) GetTitle

func (a *Attachment) GetTitle() string

GetTitle returns the Title field if it's non-nil, zero value otherwise.

type Attestation

type Attestation struct {
	// The attestation's Sigstore Bundle.
	// Refer to the sigstore bundle specification for more info:
	// https://github.com/sigstore/protobuf-specs/blob/main/protos/sigstore_bundle.proto
	Bundle       json.RawMessage `json:"bundle"`
	RepositoryID int64           `json:"repository_id"`
}

Attestation represents an artifact attestation associated with a repository. The provided bundle can be used to verify the provenance of artifacts.

https://docs.github.com/en/actions/security-for-github-actions/using-artifact-attestations/using-artifact-attestations-to-establish-provenance-for-builds

type AttestationsResponse

type AttestationsResponse struct {
	Attestations []*Attestation `json:"attestations"`
}

AttestationsResponse represents a collection of artifact attestations.

type AuditEntry

type AuditEntry struct {
	Action                   *string        `json:"action,omitempty"` // The name of the action that was performed, for example `user.login` or `repo.create`.
	Actor                    *string        `json:"actor,omitempty"`  // The actor who performed the action.
	ActorID                  *int64         `json:"actor_id,omitempty"`
	ActorLocation            *ActorLocation `json:"actor_location,omitempty"`
	Business                 *string        `json:"business,omitempty"`
	BusinessID               *int64         `json:"business_id,omitempty"`
	CreatedAt                *Timestamp     `json:"created_at,omitempty"`
	DocumentID               *string        `json:"_document_id,omitempty"`
	ExternalIdentityNameID   *string        `json:"external_identity_nameid,omitempty"`
	ExternalIdentityUsername *string        `json:"external_identity_username,omitempty"`
	HashedToken              *string        `json:"hashed_token,omitempty"`
	Org                      *string        `json:"org,omitempty"`
	OrgID                    *int64         `json:"org_id,omitempty"`
	Timestamp                *Timestamp     `json:"@timestamp,omitempty"` // The time the audit log event occurred, given as a [Unix timestamp](http://en.wikipedia.org/wiki/Unix_time).
	TokenID                  *int64         `json:"token_id,omitempty"`
	TokenScopes              *string        `json:"token_scopes,omitempty"`
	User                     *string        `json:"user,omitempty"` // The user that was affected by the action performed (if available).
	UserID                   *int64         `json:"user_id,omitempty"`

	// Some events types have a data field that contains additional information about the event.
	Data map[string]interface{} `json:"data,omitempty"`

	// All fields that are not explicitly defined in the struct are captured here.
	AdditionalFields map[string]interface{} `json:"-"`
}

AuditEntry describes the fields that may be represented by various audit-log "action" entries. There are many other fields that may be present depending on the action. You can access those in AdditionalFields. For a list of actions see - https://docs.github.com/github/setting-up-and-managing-organizations-and-teams/reviewing-the-audit-log-for-your-organization#audit-log-actions

func (*AuditEntry) GetAction

func (a *AuditEntry) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetActor

func (a *AuditEntry) GetActor() string

GetActor returns the Actor field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetActorID

func (a *AuditEntry) GetActorID() int64

GetActorID returns the ActorID field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetActorLocation

func (a *AuditEntry) GetActorLocation() *ActorLocation

GetActorLocation returns the ActorLocation field.

func (*AuditEntry) GetBusiness

func (a *AuditEntry) GetBusiness() string

GetBusiness returns the Business field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetBusinessID

func (a *AuditEntry) GetBusinessID() int64

GetBusinessID returns the BusinessID field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetCreatedAt

func (a *AuditEntry) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetDocumentID

func (a *AuditEntry) GetDocumentID() string

GetDocumentID returns the DocumentID field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetExternalIdentityNameID

func (a *AuditEntry) GetExternalIdentityNameID() string

GetExternalIdentityNameID returns the ExternalIdentityNameID field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetExternalIdentityUsername

func (a *AuditEntry) GetExternalIdentityUsername() string

GetExternalIdentityUsername returns the ExternalIdentityUsername field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetHashedToken

func (a *AuditEntry) GetHashedToken() string

GetHashedToken returns the HashedToken field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetOrg

func (a *AuditEntry) GetOrg() string

GetOrg returns the Org field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetOrgID

func (a *AuditEntry) GetOrgID() int64

GetOrgID returns the OrgID field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetTimestamp

func (a *AuditEntry) GetTimestamp() Timestamp

GetTimestamp returns the Timestamp field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetTokenID

func (a *AuditEntry) GetTokenID() int64

GetTokenID returns the TokenID field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetTokenScopes

func (a *AuditEntry) GetTokenScopes() string

GetTokenScopes returns the TokenScopes field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetUser

func (a *AuditEntry) GetUser() string

GetUser returns the User field if it's non-nil, zero value otherwise.

func (*AuditEntry) GetUserID

func (a *AuditEntry) GetUserID() int64

GetUserID returns the UserID field if it's non-nil, zero value otherwise.

func (*AuditEntry) MarshalJSON

func (a *AuditEntry) MarshalJSON() ([]byte, error)

func (*AuditEntry) UnmarshalJSON

func (a *AuditEntry) UnmarshalJSON(data []byte) error

type Authorization

type Authorization struct {
	ID             *int64            `json:"id,omitempty"`
	URL            *string           `json:"url,omitempty"`
	Scopes         []Scope           `json:"scopes,omitempty"`
	Token          *string           `json:"token,omitempty"`
	TokenLastEight *string           `json:"token_last_eight,omitempty"`
	HashedToken    *string           `json:"hashed_token,omitempty"`
	App            *AuthorizationApp `json:"app,omitempty"`
	Note           *string           `json:"note,omitempty"`
	NoteURL        *string           `json:"note_url,omitempty"`
	UpdatedAt      *Timestamp        `json:"updated_at,omitempty"`
	CreatedAt      *Timestamp        `json:"created_at,omitempty"`
	Fingerprint    *string           `json:"fingerprint,omitempty"`

	// User is only populated by the Check and Reset methods.
	User *User `json:"user,omitempty"`
}

Authorization represents an individual GitHub authorization.

func (*Authorization) GetApp

func (a *Authorization) GetApp() *AuthorizationApp

GetApp returns the App field.

func (*Authorization) GetCreatedAt

func (a *Authorization) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Authorization) GetFingerprint

func (a *Authorization) GetFingerprint() string

GetFingerprint returns the Fingerprint field if it's non-nil, zero value otherwise.

func (*Authorization) GetHashedToken

func (a *Authorization) GetHashedToken() string

GetHashedToken returns the HashedToken field if it's non-nil, zero value otherwise.

func (*Authorization) GetID

func (a *Authorization) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Authorization) GetNote

func (a *Authorization) GetNote() string

GetNote returns the Note field if it's non-nil, zero value otherwise.

func (*Authorization) GetNoteURL

func (a *Authorization) GetNoteURL() string

GetNoteURL returns the NoteURL field if it's non-nil, zero value otherwise.

func (*Authorization) GetToken

func (a *Authorization) GetToken() string

GetToken returns the Token field if it's non-nil, zero value otherwise.

func (*Authorization) GetTokenLastEight

func (a *Authorization) GetTokenLastEight() string

GetTokenLastEight returns the TokenLastEight field if it's non-nil, zero value otherwise.

func (*Authorization) GetURL

func (a *Authorization) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Authorization) GetUpdatedAt

func (a *Authorization) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*Authorization) GetUser

func (a *Authorization) GetUser() *User

GetUser returns the User field.

func (Authorization) String

func (a Authorization) String() string

type AuthorizationApp

type AuthorizationApp struct {
	URL      *string `json:"url,omitempty"`
	Name     *string `json:"name,omitempty"`
	ClientID *string `json:"client_id,omitempty"`
}

AuthorizationApp represents an individual GitHub app (in the context of authorization).

func (*AuthorizationApp) GetClientID

func (a *AuthorizationApp) GetClientID() string

GetClientID returns the ClientID field if it's non-nil, zero value otherwise.

func (*AuthorizationApp) GetName

func (a *AuthorizationApp) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*AuthorizationApp) GetURL

func (a *AuthorizationApp) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (AuthorizationApp) String

func (a AuthorizationApp) String() string

type AuthorizationRequest

type AuthorizationRequest struct {
	Scopes       []Scope `json:"scopes,omitempty"`
	Note         *string `json:"note,omitempty"`
	NoteURL      *string `json:"note_url,omitempty"`
	ClientID     *string `json:"client_id,omitempty"`
	ClientSecret *string `json:"client_secret,omitempty"`
	Fingerprint  *string `json:"fingerprint,omitempty"`
}

AuthorizationRequest represents a request to create an authorization.

func (*AuthorizationRequest) GetClientID

func (a *AuthorizationRequest) GetClientID() string

GetClientID returns the ClientID field if it's non-nil, zero value otherwise.

func (*AuthorizationRequest) GetClientSecret

func (a *AuthorizationRequest) GetClientSecret() string

GetClientSecret returns the ClientSecret field if it's non-nil, zero value otherwise.

func (*AuthorizationRequest) GetFingerprint

func (a *AuthorizationRequest) GetFingerprint() string

GetFingerprint returns the Fingerprint field if it's non-nil, zero value otherwise.

func (*AuthorizationRequest) GetNote

func (a *AuthorizationRequest) GetNote() string

GetNote returns the Note field if it's non-nil, zero value otherwise.

func (*AuthorizationRequest) GetNoteURL

func (a *AuthorizationRequest) GetNoteURL() string

GetNoteURL returns the NoteURL field if it's non-nil, zero value otherwise.

func (AuthorizationRequest) String

func (a AuthorizationRequest) String() string

type AuthorizationUpdateRequest

type AuthorizationUpdateRequest struct {
	Scopes       []string `json:"scopes,omitempty"`
	AddScopes    []string `json:"add_scopes,omitempty"`
	RemoveScopes []string `json:"remove_scopes,omitempty"`
	Note         *string  `json:"note,omitempty"`
	NoteURL      *string  `json:"note_url,omitempty"`
	Fingerprint  *string  `json:"fingerprint,omitempty"`
}

AuthorizationUpdateRequest represents a request to update an authorization.

Note that for any one update, you must only provide one of the "scopes" fields. That is, you may provide only one of "Scopes", or "AddScopes", or "RemoveScopes".

GitHub API docs: https://docs.github.com/rest/oauth-authorizations#update-an-existing-authorization

func (*AuthorizationUpdateRequest) GetFingerprint

func (a *AuthorizationUpdateRequest) GetFingerprint() string

GetFingerprint returns the Fingerprint field if it's non-nil, zero value otherwise.

func (*AuthorizationUpdateRequest) GetNote

func (a *AuthorizationUpdateRequest) GetNote() string

GetNote returns the Note field if it's non-nil, zero value otherwise.

func (*AuthorizationUpdateRequest) GetNoteURL

func (a *AuthorizationUpdateRequest) GetNoteURL() string

GetNoteURL returns the NoteURL field if it's non-nil, zero value otherwise.

func (AuthorizationUpdateRequest) String

type AuthorizationsService

type AuthorizationsService service

AuthorizationsService handles communication with the authorization related methods of the GitHub API.

This service requires HTTP Basic Authentication; it cannot be accessed using an OAuth token.

GitHub API docs: https://docs.github.com/rest/oauth-authorizations

func (*AuthorizationsService) Check

func (s *AuthorizationsService) Check(ctx context.Context, clientID, accessToken string) (*Authorization, *Response, error)

Check if an OAuth token is valid for a specific app.

Note that this operation requires the use of BasicAuth, but where the username is the OAuth application clientID, and the password is its clientSecret. Invalid tokens will return a 404 Not Found.

The returned Authorization.User field will be populated.

GitHub API docs: https://docs.github.com/rest/apps/oauth-applications#check-a-token

func (*AuthorizationsService) CreateImpersonation

func (s *AuthorizationsService) CreateImpersonation(ctx context.Context, username string, authReq *AuthorizationRequest) (*Authorization, *Response, error)

CreateImpersonation creates an impersonation OAuth token.

This requires admin permissions. With the returned Authorization.Token you can e.g. create or delete a user's public SSH key. NOTE: creating a new token automatically revokes an existing one.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#create-an-impersonation-oauth-token

func (*AuthorizationsService) DeleteGrant

func (s *AuthorizationsService) DeleteGrant(ctx context.Context, clientID, accessToken string) (*Response, error)

DeleteGrant deletes an OAuth application grant. Deleting an application's grant will also delete all OAuth tokens associated with the application for the user.

GitHub API docs: https://docs.github.com/rest/apps/oauth-applications#delete-an-app-authorization

func (*AuthorizationsService) DeleteImpersonation

func (s *AuthorizationsService) DeleteImpersonation(ctx context.Context, username string) (*Response, error)

DeleteImpersonation deletes an impersonation OAuth token.

NOTE: there can be only one at a time.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#delete-an-impersonation-oauth-token

func (*AuthorizationsService) Reset

func (s *AuthorizationsService) Reset(ctx context.Context, clientID, accessToken string) (*Authorization, *Response, error)

Reset is used to reset a valid OAuth token without end user involvement. Applications must save the "token" property in the response, because changes take effect immediately.

Note that this operation requires the use of BasicAuth, but where the username is the OAuth application clientID, and the password is its clientSecret. Invalid tokens will return a 404 Not Found.

The returned Authorization.User field will be populated.

GitHub API docs: https://docs.github.com/rest/apps/oauth-applications#reset-a-token

func (*AuthorizationsService) Revoke

func (s *AuthorizationsService) Revoke(ctx context.Context, clientID, accessToken string) (*Response, error)

Revoke an authorization for an application.

Note that this operation requires the use of BasicAuth, but where the username is the OAuth application clientID, and the password is its clientSecret. Invalid tokens will return a 404 Not Found.

GitHub API docs: https://docs.github.com/rest/apps/oauth-applications#delete-an-app-token

type AuthorizedActorNames

type AuthorizedActorNames struct {
	From []string `json:"from,omitempty"`
}

AuthorizedActorNames represents who are authorized to edit the branch protection rules.

type AuthorizedActorsOnly

type AuthorizedActorsOnly struct {
	From *bool `json:"from,omitempty"`
}

AuthorizedActorsOnly represents if the branch rule can be edited by authorized actors only.

func (*AuthorizedActorsOnly) GetFrom

func (a *AuthorizedActorsOnly) GetFrom() bool

GetFrom returns the From field if it's non-nil, zero value otherwise.

type AuthorizedDismissalActorsOnlyChanges

type AuthorizedDismissalActorsOnlyChanges struct {
	From *bool `json:"from,omitempty"`
}

AuthorizedDismissalActorsOnlyChanges represents the changes made to the AuthorizedDismissalActorsOnly policy.

func (*AuthorizedDismissalActorsOnlyChanges) GetFrom

GetFrom returns the From field if it's non-nil, zero value otherwise.

type AutoTriggerCheck

type AutoTriggerCheck struct {
	AppID   *int64 `json:"app_id,omitempty"`  // The id of the GitHub App. (Required.)
	Setting *bool  `json:"setting,omitempty"` // Set to "true" to enable automatic creation of CheckSuite events upon pushes to the repository, or "false" to disable them. Default: "true" (Required.)
}

AutoTriggerCheck enables or disables automatic creation of CheckSuite events upon pushes to the repository.

func (*AutoTriggerCheck) GetAppID

func (a *AutoTriggerCheck) GetAppID() int64

GetAppID returns the AppID field if it's non-nil, zero value otherwise.

func (*AutoTriggerCheck) GetSetting

func (a *AutoTriggerCheck) GetSetting() bool

GetSetting returns the Setting field if it's non-nil, zero value otherwise.

type Autolink struct {
	ID             *int64  `json:"id,omitempty"`
	KeyPrefix      *string `json:"key_prefix,omitempty"`
	URLTemplate    *string `json:"url_template,omitempty"`
	IsAlphanumeric *bool   `json:"is_alphanumeric,omitempty"`
}

Autolink represents autolinks to external resources like JIRA issues and Zendesk tickets.

func (*Autolink) GetID

func (a *Autolink) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Autolink) GetIsAlphanumeric

func (a *Autolink) GetIsAlphanumeric() bool

GetIsAlphanumeric returns the IsAlphanumeric field if it's non-nil, zero value otherwise.

func (*Autolink) GetKeyPrefix

func (a *Autolink) GetKeyPrefix() string

GetKeyPrefix returns the KeyPrefix field if it's non-nil, zero value otherwise.

func (*Autolink) GetURLTemplate

func (a *Autolink) GetURLTemplate() string

GetURLTemplate returns the URLTemplate field if it's non-nil, zero value otherwise.

type AutolinkOptions

type AutolinkOptions struct {
	KeyPrefix      *string `json:"key_prefix,omitempty"`
	URLTemplate    *string `json:"url_template,omitempty"`
	IsAlphanumeric *bool   `json:"is_alphanumeric,omitempty"`
}

AutolinkOptions specifies parameters for RepositoriesService.AddAutolink method.

func (*AutolinkOptions) GetIsAlphanumeric

func (a *AutolinkOptions) GetIsAlphanumeric() bool

GetIsAlphanumeric returns the IsAlphanumeric field if it's non-nil, zero value otherwise.

func (*AutolinkOptions) GetKeyPrefix

func (a *AutolinkOptions) GetKeyPrefix() string

GetKeyPrefix returns the KeyPrefix field if it's non-nil, zero value otherwise.

func (*AutolinkOptions) GetURLTemplate

func (a *AutolinkOptions) GetURLTemplate() string

GetURLTemplate returns the URLTemplate field if it's non-nil, zero value otherwise.

type AutomatedSecurityFixes

type AutomatedSecurityFixes struct {
	Enabled *bool `json:"enabled"`
	Paused  *bool `json:"paused"`
}

AutomatedSecurityFixes represents their status.

func (*AutomatedSecurityFixes) GetEnabled

func (a *AutomatedSecurityFixes) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

func (*AutomatedSecurityFixes) GetPaused

func (a *AutomatedSecurityFixes) GetPaused() bool

GetPaused returns the Paused field if it's non-nil, zero value otherwise.

type BasicAuthTransport

type BasicAuthTransport struct {
	Username string // GitHub username
	Password string // GitHub password
	OTP      string // one-time password for users with two-factor auth enabled

	// Transport is the underlying HTTP transport to use when making requests.
	// It will default to http.DefaultTransport if nil.
	Transport http.RoundTripper
}

BasicAuthTransport is an http.RoundTripper that authenticates all requests using HTTP Basic Authentication with the provided username and password. It additionally supports users who have two-factor authentication enabled on their GitHub account.

func (*BasicAuthTransport) Client

func (t *BasicAuthTransport) Client() *http.Client

Client returns an *http.Client that makes requests that are authenticated using HTTP Basic Authentication.

func (*BasicAuthTransport) RoundTrip

func (t *BasicAuthTransport) RoundTrip(req *http.Request) (*http.Response, error)

RoundTrip implements the RoundTripper interface.

type BillingService

type BillingService service

BillingService provides access to the billing related functions in the GitHub API.

GitHub API docs: https://docs.github.com/rest/billing

func (*BillingService) GetActionsBillingOrg

func (s *BillingService) GetActionsBillingOrg(ctx context.Context, org string) (*ActionBilling, *Response, error)

GetActionsBillingOrg returns the summary of the free and paid GitHub Actions minutes used for an Org.

GitHub API docs: https://docs.github.com/rest/billing/billing#get-github-actions-billing-for-an-organization

func (*BillingService) GetActionsBillingUser

func (s *BillingService) GetActionsBillingUser(ctx context.Context, user string) (*ActionBilling, *Response, error)

GetActionsBillingUser returns the summary of the free and paid GitHub Actions minutes used for a user.

GitHub API docs: https://docs.github.com/rest/billing/billing#get-github-actions-billing-for-a-user

func (*BillingService) GetAdvancedSecurityActiveCommittersOrg

func (s *BillingService) GetAdvancedSecurityActiveCommittersOrg(ctx context.Context, org string, opts *ListOptions) (*ActiveCommitters, *Response, error)

GetAdvancedSecurityActiveCommittersOrg returns the GitHub Advanced Security active committers for an organization per repository.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/billing/billing#get-github-advanced-security-active-committers-for-an-organization

func (*BillingService) GetPackagesBillingOrg

func (s *BillingService) GetPackagesBillingOrg(ctx context.Context, org string) (*PackageBilling, *Response, error)

GetPackagesBillingOrg returns the free and paid storage used for GitHub Packages in gigabytes for an Org.

GitHub API docs: https://docs.github.com/rest/billing/billing#get-github-packages-billing-for-an-organization

func (*BillingService) GetPackagesBillingUser

func (s *BillingService) GetPackagesBillingUser(ctx context.Context, user string) (*PackageBilling, *Response, error)

GetPackagesBillingUser returns the free and paid storage used for GitHub Packages in gigabytes for a user.

GitHub API docs: https://docs.github.com/rest/billing/billing#get-github-packages-billing-for-a-user

func (*BillingService) GetStorageBillingOrg

func (s *BillingService) GetStorageBillingOrg(ctx context.Context, org string) (*StorageBilling, *Response, error)

GetStorageBillingOrg returns the estimated paid and estimated total storage used for GitHub Actions and GitHub Packages in gigabytes for an Org.

GitHub API docs: https://docs.github.com/rest/billing/billing#get-shared-storage-billing-for-an-organization

func (*BillingService) GetStorageBillingUser

func (s *BillingService) GetStorageBillingUser(ctx context.Context, user string) (*StorageBilling, *Response, error)

GetStorageBillingUser returns the estimated paid and estimated total storage used for GitHub Actions and GitHub Packages in gigabytes for a user.

GitHub API docs: https://docs.github.com/rest/billing/billing#get-shared-storage-billing-for-a-user

type Blob

type Blob struct {
	Content  *string `json:"content,omitempty"`
	Encoding *string `json:"encoding,omitempty"`
	SHA      *string `json:"sha,omitempty"`
	Size     *int    `json:"size,omitempty"`
	URL      *string `json:"url,omitempty"`
	NodeID   *string `json:"node_id,omitempty"`
}

Blob represents a blob object.

func (*Blob) GetContent

func (b *Blob) GetContent() string

GetContent returns the Content field if it's non-nil, zero value otherwise.

func (*Blob) GetEncoding

func (b *Blob) GetEncoding() string

GetEncoding returns the Encoding field if it's non-nil, zero value otherwise.

func (*Blob) GetNodeID

func (b *Blob) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Blob) GetSHA

func (b *Blob) GetSHA() string

GetSHA returns the SHA field if it's non-nil, zero value otherwise.

func (*Blob) GetSize

func (b *Blob) GetSize() int

GetSize returns the Size field if it's non-nil, zero value otherwise.

func (*Blob) GetURL

func (b *Blob) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

type BlockCreations

type BlockCreations struct {
	Enabled *bool `json:"enabled,omitempty"`
}

BlockCreations represents whether users can push changes that create branches. If this is true, this setting blocks pushes that create new branches, unless the push is initiated by a user, team, or app which has the ability to push.

func (*BlockCreations) GetEnabled

func (b *BlockCreations) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

type Branch

type Branch struct {
	Name      *string           `json:"name,omitempty"`
	Commit    *RepositoryCommit `json:"commit,omitempty"`
	Protected *bool             `json:"protected,omitempty"`

	// Protection will always be included in APIs which return the
	// 'Branch With Protection' schema such as 'Get a branch', but may
	// not be included in APIs that return the `Short Branch` schema
	// such as 'List branches'. In such cases, if branch protection is
	// enabled, Protected will be `true` but this will be nil, and
	// additional protection details can be obtained by calling GetBranch().
	Protection *Protection `json:"protection,omitempty"`
}

Branch represents a repository branch.

func (*Branch) GetCommit

func (b *Branch) GetCommit() *RepositoryCommit

GetCommit returns the Commit field.

func (*Branch) GetName

func (b *Branch) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*Branch) GetProtected

func (b *Branch) GetProtected() bool

GetProtected returns the Protected field if it's non-nil, zero value otherwise.

func (*Branch) GetProtection

func (b *Branch) GetProtection() *Protection

GetProtection returns the Protection field.

type BranchCommit

type BranchCommit struct {
	Name      *string `json:"name,omitempty"`
	Commit    *Commit `json:"commit,omitempty"`
	Protected *bool   `json:"protected,omitempty"`
}

BranchCommit is the result of listing branches with commit SHA.

func (*BranchCommit) GetCommit

func (b *BranchCommit) GetCommit() *Commit

GetCommit returns the Commit field.

func (*BranchCommit) GetName

func (b *BranchCommit) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*BranchCommit) GetProtected

func (b *BranchCommit) GetProtected() bool

GetProtected returns the Protected field if it's non-nil, zero value otherwise.

type BranchListOptions

type BranchListOptions struct {
	// Setting to true returns only protected branches.
	// When set to false, only unprotected branches are returned.
	// Omitting this parameter returns all branches.
	// Default: nil
	Protected *bool `url:"protected,omitempty"`

	ListOptions
}

BranchListOptions specifies the optional parameters to the RepositoriesService.ListBranches method.

func (*BranchListOptions) GetProtected

func (b *BranchListOptions) GetProtected() bool

GetProtected returns the Protected field if it's non-nil, zero value otherwise.

type BranchPolicy

type BranchPolicy struct {
	ProtectedBranches    *bool `json:"protected_branches,omitempty"`
	CustomBranchPolicies *bool `json:"custom_branch_policies,omitempty"`
}

BranchPolicy represents the options for whether a branch deployment policy is applied to this environment.

func (*BranchPolicy) GetCustomBranchPolicies

func (b *BranchPolicy) GetCustomBranchPolicies() bool

GetCustomBranchPolicies returns the CustomBranchPolicies field if it's non-nil, zero value otherwise.

func (*BranchPolicy) GetProtectedBranches

func (b *BranchPolicy) GetProtectedBranches() bool

GetProtectedBranches returns the ProtectedBranches field if it's non-nil, zero value otherwise.

type BranchProtectionConfigurationEvent

type BranchProtectionConfigurationEvent struct {
	Action       *string       `json:"action,omitempty"`
	Repo         *Repository   `json:"repository,omitempty"`
	Org          *Organization `json:"organization,omitempty"`
	Enterprise   *Enterprise   `json:"enterprise,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
}

BranchProtectionConfigurationEvent is triggered when there is a change to branch protection configurations for a repository. The Webhook event name is "branch_protection_configuration".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#branch_protection_configuration

func (*BranchProtectionConfigurationEvent) GetAction

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*BranchProtectionConfigurationEvent) GetEnterprise

func (b *BranchProtectionConfigurationEvent) GetEnterprise() *Enterprise

GetEnterprise returns the Enterprise field.

func (*BranchProtectionConfigurationEvent) GetInstallation

func (b *BranchProtectionConfigurationEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*BranchProtectionConfigurationEvent) GetOrg

GetOrg returns the Org field.

func (*BranchProtectionConfigurationEvent) GetRepo

GetRepo returns the Repo field.

func (*BranchProtectionConfigurationEvent) GetSender

func (b *BranchProtectionConfigurationEvent) GetSender() *User

GetSender returns the Sender field.

type BranchProtectionRule

type BranchProtectionRule struct {
	ID                                       *int64     `json:"id,omitempty"`
	RepositoryID                             *int64     `json:"repository_id,omitempty"`
	Name                                     *string    `json:"name,omitempty"`
	CreatedAt                                *Timestamp `json:"created_at,omitempty"`
	UpdatedAt                                *Timestamp `json:"updated_at,omitempty"`
	PullRequestReviewsEnforcementLevel       *string    `json:"pull_request_reviews_enforcement_level,omitempty"`
	RequiredApprovingReviewCount             *int       `json:"required_approving_review_count,omitempty"`
	DismissStaleReviewsOnPush                *bool      `json:"dismiss_stale_reviews_on_push,omitempty"`
	AuthorizedDismissalActorsOnly            *bool      `json:"authorized_dismissal_actors_only,omitempty"`
	IgnoreApprovalsFromContributors          *bool      `json:"ignore_approvals_from_contributors,omitempty"`
	RequireCodeOwnerReview                   *bool      `json:"require_code_owner_review,omitempty"`
	RequiredStatusChecks                     []string   `json:"required_status_checks,omitempty"`
	RequiredStatusChecksEnforcementLevel     *string    `json:"required_status_checks_enforcement_level,omitempty"`
	StrictRequiredStatusChecksPolicy         *bool      `json:"strict_required_status_checks_policy,omitempty"`
	SignatureRequirementEnforcementLevel     *string    `json:"signature_requirement_enforcement_level,omitempty"`
	LinearHistoryRequirementEnforcementLevel *string    `json:"linear_history_requirement_enforcement_level,omitempty"`
	AdminEnforced                            *bool      `json:"admin_enforced,omitempty"`
	AllowForcePushesEnforcementLevel         *string    `json:"allow_force_pushes_enforcement_level,omitempty"`
	AllowDeletionsEnforcementLevel           *string    `json:"allow_deletions_enforcement_level,omitempty"`
	MergeQueueEnforcementLevel               *string    `json:"merge_queue_enforcement_level,omitempty"`
	RequiredDeploymentsEnforcementLevel      *string    `json:"required_deployments_enforcement_level,omitempty"`
	RequiredConversationResolutionLevel      *string    `json:"required_conversation_resolution_level,omitempty"`
	AuthorizedActorsOnly                     *bool      `json:"authorized_actors_only,omitempty"`
	AuthorizedActorNames                     []string   `json:"authorized_actor_names,omitempty"`
}

BranchProtectionRule represents the rule applied to a repositories branch.

func (*BranchProtectionRule) GetAdminEnforced

func (b *BranchProtectionRule) GetAdminEnforced() bool

GetAdminEnforced returns the AdminEnforced field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetAllowDeletionsEnforcementLevel

func (b *BranchProtectionRule) GetAllowDeletionsEnforcementLevel() string

GetAllowDeletionsEnforcementLevel returns the AllowDeletionsEnforcementLevel field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetAllowForcePushesEnforcementLevel

func (b *BranchProtectionRule) GetAllowForcePushesEnforcementLevel() string

GetAllowForcePushesEnforcementLevel returns the AllowForcePushesEnforcementLevel field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetAuthorizedActorsOnly

func (b *BranchProtectionRule) GetAuthorizedActorsOnly() bool

GetAuthorizedActorsOnly returns the AuthorizedActorsOnly field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetAuthorizedDismissalActorsOnly

func (b *BranchProtectionRule) GetAuthorizedDismissalActorsOnly() bool

GetAuthorizedDismissalActorsOnly returns the AuthorizedDismissalActorsOnly field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetCreatedAt

func (b *BranchProtectionRule) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetDismissStaleReviewsOnPush

func (b *BranchProtectionRule) GetDismissStaleReviewsOnPush() bool

GetDismissStaleReviewsOnPush returns the DismissStaleReviewsOnPush field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetID

func (b *BranchProtectionRule) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetIgnoreApprovalsFromContributors

func (b *BranchProtectionRule) GetIgnoreApprovalsFromContributors() bool

GetIgnoreApprovalsFromContributors returns the IgnoreApprovalsFromContributors field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetLinearHistoryRequirementEnforcementLevel

func (b *BranchProtectionRule) GetLinearHistoryRequirementEnforcementLevel() string

GetLinearHistoryRequirementEnforcementLevel returns the LinearHistoryRequirementEnforcementLevel field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetMergeQueueEnforcementLevel

func (b *BranchProtectionRule) GetMergeQueueEnforcementLevel() string

GetMergeQueueEnforcementLevel returns the MergeQueueEnforcementLevel field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetName

func (b *BranchProtectionRule) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetPullRequestReviewsEnforcementLevel

func (b *BranchProtectionRule) GetPullRequestReviewsEnforcementLevel() string

GetPullRequestReviewsEnforcementLevel returns the PullRequestReviewsEnforcementLevel field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetRepositoryID

func (b *BranchProtectionRule) GetRepositoryID() int64

GetRepositoryID returns the RepositoryID field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetRequireCodeOwnerReview

func (b *BranchProtectionRule) GetRequireCodeOwnerReview() bool

GetRequireCodeOwnerReview returns the RequireCodeOwnerReview field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetRequiredApprovingReviewCount

func (b *BranchProtectionRule) GetRequiredApprovingReviewCount() int

GetRequiredApprovingReviewCount returns the RequiredApprovingReviewCount field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetRequiredConversationResolutionLevel

func (b *BranchProtectionRule) GetRequiredConversationResolutionLevel() string

GetRequiredConversationResolutionLevel returns the RequiredConversationResolutionLevel field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetRequiredDeploymentsEnforcementLevel

func (b *BranchProtectionRule) GetRequiredDeploymentsEnforcementLevel() string

GetRequiredDeploymentsEnforcementLevel returns the RequiredDeploymentsEnforcementLevel field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetRequiredStatusChecksEnforcementLevel

func (b *BranchProtectionRule) GetRequiredStatusChecksEnforcementLevel() string

GetRequiredStatusChecksEnforcementLevel returns the RequiredStatusChecksEnforcementLevel field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetSignatureRequirementEnforcementLevel

func (b *BranchProtectionRule) GetSignatureRequirementEnforcementLevel() string

GetSignatureRequirementEnforcementLevel returns the SignatureRequirementEnforcementLevel field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetStrictRequiredStatusChecksPolicy

func (b *BranchProtectionRule) GetStrictRequiredStatusChecksPolicy() bool

GetStrictRequiredStatusChecksPolicy returns the StrictRequiredStatusChecksPolicy field if it's non-nil, zero value otherwise.

func (*BranchProtectionRule) GetUpdatedAt

func (b *BranchProtectionRule) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type BranchProtectionRuleEvent

type BranchProtectionRuleEvent struct {
	Action       *string               `json:"action,omitempty"`
	Rule         *BranchProtectionRule `json:"rule,omitempty"`
	Changes      *ProtectionChanges    `json:"changes,omitempty"`
	Repo         *Repository           `json:"repository,omitempty"`
	Org          *Organization         `json:"organization,omitempty"`
	Sender       *User                 `json:"sender,omitempty"`
	Installation *Installation         `json:"installation,omitempty"`
}

BranchProtectionRuleEvent triggered when a check suite is "created", "edited", or "deleted". The Webhook event name is "branch_protection_rule".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#branch_protection_rule

func (*BranchProtectionRuleEvent) GetAction

func (b *BranchProtectionRuleEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*BranchProtectionRuleEvent) GetChanges

GetChanges returns the Changes field.

func (*BranchProtectionRuleEvent) GetInstallation

func (b *BranchProtectionRuleEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*BranchProtectionRuleEvent) GetOrg

GetOrg returns the Org field.

func (*BranchProtectionRuleEvent) GetRepo

func (b *BranchProtectionRuleEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*BranchProtectionRuleEvent) GetRule

GetRule returns the Rule field.

func (*BranchProtectionRuleEvent) GetSender

func (b *BranchProtectionRuleEvent) GetSender() *User

GetSender returns the Sender field.

type BranchRestrictions

type BranchRestrictions struct {
	// The list of user logins with push access.
	Users []*User `json:"users"`
	// The list of team slugs with push access.
	Teams []*Team `json:"teams"`
	// The list of app slugs with push access.
	Apps []*App `json:"apps"`
}

BranchRestrictions represents the restriction that only certain users or teams may push to a branch.

type BranchRestrictionsRequest

type BranchRestrictionsRequest struct {
	// The list of user logins with push access. (Required; use []string{} instead of nil for empty list.)
	Users []string `json:"users"`
	// The list of team slugs with push access. (Required; use []string{} instead of nil for empty list.)
	Teams []string `json:"teams"`
	// The list of app slugs with push access.
	Apps []string `json:"apps"`
}

BranchRestrictionsRequest represents the request to create/edit the restriction that only certain users or teams may push to a branch. It is separate from BranchRestrictions above because the request structure is different from the response structure.

type BranchRuleMetadata

type BranchRuleMetadata struct {
	RulesetSourceType RulesetSourceType `json:"ruleset_source_type"`
	RulesetSource     string            `json:"ruleset_source"`
	RulesetID         int64             `json:"ruleset_id"`
}

BranchRuleMetadata represents the metadata for a branch rule.

type BranchRules

type BranchRules struct {
	Creation                 []*BranchRuleMetadata
	Update                   []*UpdateBranchRule
	Deletion                 []*BranchRuleMetadata
	RequiredLinearHistory    []*BranchRuleMetadata
	MergeQueue               []*MergeQueueBranchRule
	RequiredDeployments      []*RequiredDeploymentsBranchRule
	RequiredSignatures       []*BranchRuleMetadata
	PullRequest              []*PullRequestBranchRule
	RequiredStatusChecks     []*RequiredStatusChecksBranchRule
	NonFastForward           []*BranchRuleMetadata
	CommitMessagePattern     []*PatternBranchRule
	CommitAuthorEmailPattern []*PatternBranchRule
	CommitterEmailPattern    []*PatternBranchRule
	BranchNamePattern        []*PatternBranchRule
	TagNamePattern           []*PatternBranchRule
	FilePathRestriction      []*FilePathRestrictionBranchRule
	MaxFilePathLength        []*MaxFilePathLengthBranchRule
	FileExtensionRestriction []*FileExtensionRestrictionBranchRule
	MaxFileSize              []*MaxFileSizeBranchRule
	Workflows                []*WorkflowsBranchRule
	CodeScanning             []*CodeScanningBranchRule
}

BranchRules represents the rules active for a GitHub repository branch. This type doesn't have JSON annotations as it uses custom marshaling.

func (*BranchRules) UnmarshalJSON

func (r *BranchRules) UnmarshalJSON(data []byte) error

UnmarshalJSON is a custom JSON unmarshaler for BranchRules.

type BypassActor

type BypassActor struct {
	ActorID    *int64           `json:"actor_id,omitempty"`
	ActorType  *BypassActorType `json:"actor_type,omitempty"`
	BypassMode *BypassMode      `json:"bypass_mode,omitempty"`
}

BypassActor represents the bypass actors from a ruleset.

func (*BypassActor) GetActorID

func (b *BypassActor) GetActorID() int64

GetActorID returns the ActorID field if it's non-nil, zero value otherwise.

func (*BypassActor) GetActorType

func (b *BypassActor) GetActorType() *BypassActorType

GetActorType returns the ActorType field.

func (*BypassActor) GetBypassMode

func (b *BypassActor) GetBypassMode() *BypassMode

GetBypassMode returns the BypassMode field.

type BypassActorType

type BypassActorType string

BypassActorType represents a GitHub ruleset bypass actor type.

const (
	BypassActorTypeIntegration       BypassActorType = "Integration"
	BypassActorTypeOrganizationAdmin BypassActorType = "OrganizationAdmin"
	BypassActorTypeRepositoryRole    BypassActorType = "RepositoryRole"
	BypassActorTypeTeam              BypassActorType = "Team"
	BypassActorTypeDeployKey         BypassActorType = "DeployKey"
)

This is the set of GitHub ruleset bypass actor types.

type BypassMode

type BypassMode string

BypassMode represents a GitHub ruleset bypass mode.

const (
	BypassModeAlways      BypassMode = "always"
	BypassModePullRequest BypassMode = "pull_request"
	BypassModeNever       BypassMode = "never"
)

This is the set of GitHub ruleset bypass modes.

type BypassPullRequestAllowances

type BypassPullRequestAllowances struct {
	// The list of users allowed to bypass pull request requirements.
	Users []*User `json:"users"`
	// The list of teams allowed to bypass pull request requirements.
	Teams []*Team `json:"teams"`
	// The list of apps allowed to bypass pull request requirements.
	Apps []*App `json:"apps"`
}

BypassPullRequestAllowances represents the people, teams, or apps who are allowed to bypass required pull requests.

type BypassPullRequestAllowancesRequest

type BypassPullRequestAllowancesRequest struct {
	// The list of user logins allowed to bypass pull request requirements.
	Users []string `json:"users"`
	// The list of team slugs allowed to bypass pull request requirements.
	Teams []string `json:"teams"`
	// The list of app slugs allowed to bypass pull request requirements.
	Apps []string `json:"apps"`
}

BypassPullRequestAllowancesRequest represents the people, teams, or apps who are allowed to bypass required pull requests. It is separate from BypassPullRequestAllowances above because the request structure is different from the response structure.

type CheckRun

type CheckRun struct {
	ID           *int64          `json:"id,omitempty"`
	NodeID       *string         `json:"node_id,omitempty"`
	HeadSHA      *string         `json:"head_sha,omitempty"`
	ExternalID   *string         `json:"external_id,omitempty"`
	URL          *string         `json:"url,omitempty"`
	HTMLURL      *string         `json:"html_url,omitempty"`
	DetailsURL   *string         `json:"details_url,omitempty"`
	Status       *string         `json:"status,omitempty"`
	Conclusion   *string         `json:"conclusion,omitempty"`
	StartedAt    *Timestamp      `json:"started_at,omitempty"`
	CompletedAt  *Timestamp      `json:"completed_at,omitempty"`
	Output       *CheckRunOutput `json:"output,omitempty"`
	Name         *string         `json:"name,omitempty"`
	CheckSuite   *CheckSuite     `json:"check_suite,omitempty"`
	App          *App            `json:"app,omitempty"`
	PullRequests []*PullRequest  `json:"pull_requests,omitempty"`
}

CheckRun represents a GitHub check run on a repository associated with a GitHub app.

func (*CheckRun) GetApp

func (c *CheckRun) GetApp() *App

GetApp returns the App field.

func (*CheckRun) GetCheckSuite

func (c *CheckRun) GetCheckSuite() *CheckSuite

GetCheckSuite returns the CheckSuite field.

func (*CheckRun) GetCompletedAt

func (c *CheckRun) GetCompletedAt() Timestamp

GetCompletedAt returns the CompletedAt field if it's non-nil, zero value otherwise.

func (*CheckRun) GetConclusion

func (c *CheckRun) GetConclusion() string

GetConclusion returns the Conclusion field if it's non-nil, zero value otherwise.

func (*CheckRun) GetDetailsURL

func (c *CheckRun) GetDetailsURL() string

GetDetailsURL returns the DetailsURL field if it's non-nil, zero value otherwise.

func (*CheckRun) GetExternalID

func (c *CheckRun) GetExternalID() string

GetExternalID returns the ExternalID field if it's non-nil, zero value otherwise.

func (*CheckRun) GetHTMLURL

func (c *CheckRun) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*CheckRun) GetHeadSHA

func (c *CheckRun) GetHeadSHA() string

GetHeadSHA returns the HeadSHA field if it's non-nil, zero value otherwise.

func (*CheckRun) GetID

func (c *CheckRun) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CheckRun) GetName

func (c *CheckRun) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CheckRun) GetNodeID

func (c *CheckRun) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*CheckRun) GetOutput

func (c *CheckRun) GetOutput() *CheckRunOutput

GetOutput returns the Output field.

func (*CheckRun) GetStartedAt

func (c *CheckRun) GetStartedAt() Timestamp

GetStartedAt returns the StartedAt field if it's non-nil, zero value otherwise.

func (*CheckRun) GetStatus

func (c *CheckRun) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

func (*CheckRun) GetURL

func (c *CheckRun) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (CheckRun) String

func (c CheckRun) String() string

type CheckRunAction

type CheckRunAction struct {
	Label       string `json:"label"`       // The text to be displayed on a button in the web UI. The maximum size is 20 characters. (Required.)
	Description string `json:"description"` // A short explanation of what this action would do. The maximum size is 40 characters. (Required.)
	Identifier  string `json:"identifier"`  // A reference for the action on the integrator's system. The maximum size is 20 characters. (Required.)
}

CheckRunAction exposes further actions the integrator can perform, which a user may trigger.

type CheckRunAnnotation

type CheckRunAnnotation struct {
	Path            *string `json:"path,omitempty"`
	StartLine       *int    `json:"start_line,omitempty"`
	EndLine         *int    `json:"end_line,omitempty"`
	StartColumn     *int    `json:"start_column,omitempty"`
	EndColumn       *int    `json:"end_column,omitempty"`
	AnnotationLevel *string `json:"annotation_level,omitempty"`
	Message         *string `json:"message,omitempty"`
	Title           *string `json:"title,omitempty"`
	RawDetails      *string `json:"raw_details,omitempty"`
}

CheckRunAnnotation represents an annotation object for a CheckRun output.

func (*CheckRunAnnotation) GetAnnotationLevel

func (c *CheckRunAnnotation) GetAnnotationLevel() string

GetAnnotationLevel returns the AnnotationLevel field if it's non-nil, zero value otherwise.

func (*CheckRunAnnotation) GetEndColumn

func (c *CheckRunAnnotation) GetEndColumn() int

GetEndColumn returns the EndColumn field if it's non-nil, zero value otherwise.

func (*CheckRunAnnotation) GetEndLine

func (c *CheckRunAnnotation) GetEndLine() int

GetEndLine returns the EndLine field if it's non-nil, zero value otherwise.

func (*CheckRunAnnotation) GetMessage

func (c *CheckRunAnnotation) GetMessage() string

GetMessage returns the Message field if it's non-nil, zero value otherwise.

func (*CheckRunAnnotation) GetPath

func (c *CheckRunAnnotation) GetPath() string

GetPath returns the Path field if it's non-nil, zero value otherwise.

func (*CheckRunAnnotation) GetRawDetails

func (c *CheckRunAnnotation) GetRawDetails() string

GetRawDetails returns the RawDetails field if it's non-nil, zero value otherwise.

func (*CheckRunAnnotation) GetStartColumn

func (c *CheckRunAnnotation) GetStartColumn() int

GetStartColumn returns the StartColumn field if it's non-nil, zero value otherwise.

func (*CheckRunAnnotation) GetStartLine

func (c *CheckRunAnnotation) GetStartLine() int

GetStartLine returns the StartLine field if it's non-nil, zero value otherwise.

func (*CheckRunAnnotation) GetTitle

func (c *CheckRunAnnotation) GetTitle() string

GetTitle returns the Title field if it's non-nil, zero value otherwise.

type CheckRunEvent

type CheckRunEvent struct {
	CheckRun *CheckRun `json:"check_run,omitempty"`
	// The action performed. Possible values are: "created", "completed", "rerequested" or "requested_action".
	Action *string `json:"action,omitempty"`

	// The following fields are only populated by Webhook events.
	Repo         *Repository   `json:"repository,omitempty"`
	Org          *Organization `json:"organization,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`

	// The action requested by the user. Populated when the Action is "requested_action".
	RequestedAction *RequestedAction `json:"requested_action,omitempty"` //
}

CheckRunEvent is triggered when a check run is "created", "completed", or "rerequested". The Webhook event name is "check_run".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#check_run

func (*CheckRunEvent) GetAction

func (c *CheckRunEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*CheckRunEvent) GetCheckRun

func (c *CheckRunEvent) GetCheckRun() *CheckRun

GetCheckRun returns the CheckRun field.

func (*CheckRunEvent) GetInstallation

func (c *CheckRunEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*CheckRunEvent) GetOrg

func (c *CheckRunEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*CheckRunEvent) GetRepo

func (c *CheckRunEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*CheckRunEvent) GetRequestedAction

func (c *CheckRunEvent) GetRequestedAction() *RequestedAction

GetRequestedAction returns the RequestedAction field.

func (*CheckRunEvent) GetSender

func (c *CheckRunEvent) GetSender() *User

GetSender returns the Sender field.

type CheckRunImage

type CheckRunImage struct {
	Alt      *string `json:"alt,omitempty"`
	ImageURL *string `json:"image_url,omitempty"`
	Caption  *string `json:"caption,omitempty"`
}

CheckRunImage represents an image object for a CheckRun output.

func (*CheckRunImage) GetAlt

func (c *CheckRunImage) GetAlt() string

GetAlt returns the Alt field if it's non-nil, zero value otherwise.

func (*CheckRunImage) GetCaption

func (c *CheckRunImage) GetCaption() string

GetCaption returns the Caption field if it's non-nil, zero value otherwise.

func (*CheckRunImage) GetImageURL

func (c *CheckRunImage) GetImageURL() string

GetImageURL returns the ImageURL field if it's non-nil, zero value otherwise.

type CheckRunOutput

type CheckRunOutput struct {
	Title            *string               `json:"title,omitempty"`
	Summary          *string               `json:"summary,omitempty"`
	Text             *string               `json:"text,omitempty"`
	AnnotationsCount *int                  `json:"annotations_count,omitempty"`
	AnnotationsURL   *string               `json:"annotations_url,omitempty"`
	Annotations      []*CheckRunAnnotation `json:"annotations,omitempty"`
	Images           []*CheckRunImage      `json:"images,omitempty"`
}

CheckRunOutput represents the output of a CheckRun.

func (*CheckRunOutput) GetAnnotationsCount

func (c *CheckRunOutput) GetAnnotationsCount() int

GetAnnotationsCount returns the AnnotationsCount field if it's non-nil, zero value otherwise.

func (*CheckRunOutput) GetAnnotationsURL

func (c *CheckRunOutput) GetAnnotationsURL() string

GetAnnotationsURL returns the AnnotationsURL field if it's non-nil, zero value otherwise.

func (*CheckRunOutput) GetSummary

func (c *CheckRunOutput) GetSummary() string

GetSummary returns the Summary field if it's non-nil, zero value otherwise.

func (*CheckRunOutput) GetText

func (c *CheckRunOutput) GetText() string

GetText returns the Text field if it's non-nil, zero value otherwise.

func (*CheckRunOutput) GetTitle

func (c *CheckRunOutput) GetTitle() string

GetTitle returns the Title field if it's non-nil, zero value otherwise.

type CheckSuite

type CheckSuite struct {
	ID           *int64         `json:"id,omitempty"`
	NodeID       *string        `json:"node_id,omitempty"`
	HeadBranch   *string        `json:"head_branch,omitempty"`
	HeadSHA      *string        `json:"head_sha,omitempty"`
	URL          *string        `json:"url,omitempty"`
	BeforeSHA    *string        `json:"before,omitempty"`
	AfterSHA     *string        `json:"after,omitempty"`
	Status       *string        `json:"status,omitempty"`
	Conclusion   *string        `json:"conclusion,omitempty"`
	CreatedAt    *Timestamp     `json:"created_at,omitempty"`
	UpdatedAt    *Timestamp     `json:"updated_at,omitempty"`
	App          *App           `json:"app,omitempty"`
	Repository   *Repository    `json:"repository,omitempty"`
	PullRequests []*PullRequest `json:"pull_requests,omitempty"`

	// The following fields are only populated by Webhook events.
	HeadCommit           *Commit `json:"head_commit,omitempty"`
	LatestCheckRunsCount *int64  `json:"latest_check_runs_count,omitempty"`
	Rerequestable        *bool   `json:"rerequestable,omitempty"`
	RunsRerequestable    *bool   `json:"runs_rerequestable,omitempty"`
}

CheckSuite represents a suite of check runs.

func (*CheckSuite) GetAfterSHA

func (c *CheckSuite) GetAfterSHA() string

GetAfterSHA returns the AfterSHA field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetApp

func (c *CheckSuite) GetApp() *App

GetApp returns the App field.

func (*CheckSuite) GetBeforeSHA

func (c *CheckSuite) GetBeforeSHA() string

GetBeforeSHA returns the BeforeSHA field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetConclusion

func (c *CheckSuite) GetConclusion() string

GetConclusion returns the Conclusion field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetCreatedAt

func (c *CheckSuite) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetHeadBranch

func (c *CheckSuite) GetHeadBranch() string

GetHeadBranch returns the HeadBranch field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetHeadCommit

func (c *CheckSuite) GetHeadCommit() *Commit

GetHeadCommit returns the HeadCommit field.

func (*CheckSuite) GetHeadSHA

func (c *CheckSuite) GetHeadSHA() string

GetHeadSHA returns the HeadSHA field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetID

func (c *CheckSuite) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetLatestCheckRunsCount

func (c *CheckSuite) GetLatestCheckRunsCount() int64

GetLatestCheckRunsCount returns the LatestCheckRunsCount field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetNodeID

func (c *CheckSuite) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetRepository

func (c *CheckSuite) GetRepository() *Repository

GetRepository returns the Repository field.

func (*CheckSuite) GetRerequestable

func (c *CheckSuite) GetRerequestable() bool

GetRerequestable returns the Rerequestable field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetRunsRerequestable

func (c *CheckSuite) GetRunsRerequestable() bool

GetRunsRerequestable returns the RunsRerequestable field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetStatus

func (c *CheckSuite) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetURL

func (c *CheckSuite) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*CheckSuite) GetUpdatedAt

func (c *CheckSuite) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (CheckSuite) String

func (c CheckSuite) String() string

type CheckSuiteEvent

type CheckSuiteEvent struct {
	CheckSuite *CheckSuite `json:"check_suite,omitempty"`
	// The action performed. Possible values are: "completed", "requested" or "rerequested".
	Action *string `json:"action,omitempty"`

	// The following fields are only populated by Webhook events.
	Repo         *Repository   `json:"repository,omitempty"`
	Org          *Organization `json:"organization,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
}

CheckSuiteEvent is triggered when a check suite is "completed", "requested", or "rerequested". The Webhook event name is "check_suite".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#check_suite

func (*CheckSuiteEvent) GetAction

func (c *CheckSuiteEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*CheckSuiteEvent) GetCheckSuite

func (c *CheckSuiteEvent) GetCheckSuite() *CheckSuite

GetCheckSuite returns the CheckSuite field.

func (*CheckSuiteEvent) GetInstallation

func (c *CheckSuiteEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*CheckSuiteEvent) GetOrg

func (c *CheckSuiteEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*CheckSuiteEvent) GetRepo

func (c *CheckSuiteEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*CheckSuiteEvent) GetSender

func (c *CheckSuiteEvent) GetSender() *User

GetSender returns the Sender field.

type CheckSuitePreferenceOptions

type CheckSuitePreferenceOptions struct {
	AutoTriggerChecks []*AutoTriggerCheck `json:"auto_trigger_checks,omitempty"` // A slice of auto trigger checks that can be set for a check suite in a repository.
}

CheckSuitePreferenceOptions set options for check suite preferences for a repository.

type CheckSuitePreferenceResults

type CheckSuitePreferenceResults struct {
	Preferences *PreferenceList `json:"preferences,omitempty"`
	Repository  *Repository     `json:"repository,omitempty"`
}

CheckSuitePreferenceResults represents the results of the preference set operation.

func (*CheckSuitePreferenceResults) GetPreferences

func (c *CheckSuitePreferenceResults) GetPreferences() *PreferenceList

GetPreferences returns the Preferences field.

func (*CheckSuitePreferenceResults) GetRepository

func (c *CheckSuitePreferenceResults) GetRepository() *Repository

GetRepository returns the Repository field.

type ChecksService

type ChecksService service

ChecksService provides access to the Checks API in the GitHub API.

GitHub API docs: https://docs.github.com/rest/checks/

func (*ChecksService) CreateCheckRun

func (s *ChecksService) CreateCheckRun(ctx context.Context, owner, repo string, opts CreateCheckRunOptions) (*CheckRun, *Response, error)

CreateCheckRun creates a check run for repository.

GitHub API docs: https://docs.github.com/rest/checks/runs#create-a-check-run

func (*ChecksService) CreateCheckSuite

func (s *ChecksService) CreateCheckSuite(ctx context.Context, owner, repo string, opts CreateCheckSuiteOptions) (*CheckSuite, *Response, error)

CreateCheckSuite manually creates a check suite for a repository.

GitHub API docs: https://docs.github.com/rest/checks/suites#create-a-check-suite

func (*ChecksService) GetCheckRun

func (s *ChecksService) GetCheckRun(ctx context.Context, owner, repo string, checkRunID int64) (*CheckRun, *Response, error)

GetCheckRun gets a check-run for a repository.

GitHub API docs: https://docs.github.com/rest/checks/runs#get-a-check-run

func (*ChecksService) GetCheckSuite

func (s *ChecksService) GetCheckSuite(ctx context.Context, owner, repo string, checkSuiteID int64) (*CheckSuite, *Response, error)

GetCheckSuite gets a single check suite.

GitHub API docs: https://docs.github.com/rest/checks/suites#get-a-check-suite

func (*ChecksService) ListCheckRunAnnotations

func (s *ChecksService) ListCheckRunAnnotations(ctx context.Context, owner, repo string, checkRunID int64, opts *ListOptions) ([]*CheckRunAnnotation, *Response, error)

ListCheckRunAnnotations lists the annotations for a check run.

GitHub API docs: https://docs.github.com/rest/checks/runs#list-check-run-annotations

func (*ChecksService) ListCheckRunsCheckSuite

func (s *ChecksService) ListCheckRunsCheckSuite(ctx context.Context, owner, repo string, checkSuiteID int64, opts *ListCheckRunsOptions) (*ListCheckRunsResults, *Response, error)

ListCheckRunsCheckSuite lists check runs for a check suite.

GitHub API docs: https://docs.github.com/rest/checks/runs#list-check-runs-in-a-check-suite

func (*ChecksService) ListCheckRunsForRef

func (s *ChecksService) ListCheckRunsForRef(ctx context.Context, owner, repo, ref string, opts *ListCheckRunsOptions) (*ListCheckRunsResults, *Response, error)

ListCheckRunsForRef lists check runs for a specific ref.

GitHub API docs: https://docs.github.com/rest/checks/runs#list-check-runs-for-a-git-reference

func (*ChecksService) ListCheckSuitesForRef

func (s *ChecksService) ListCheckSuitesForRef(ctx context.Context, owner, repo, ref string, opts *ListCheckSuiteOptions) (*ListCheckSuiteResults, *Response, error)

ListCheckSuitesForRef lists check suite for a specific ref.

GitHub API docs: https://docs.github.com/rest/checks/suites#list-check-suites-for-a-git-reference

func (*ChecksService) ReRequestCheckRun

func (s *ChecksService) ReRequestCheckRun(ctx context.Context, owner, repo string, checkRunID int64) (*Response, error)

ReRequestCheckRun triggers GitHub to rerequest an existing check run.

GitHub API docs: https://docs.github.com/rest/checks/runs#rerequest-a-check-run

func (*ChecksService) ReRequestCheckSuite

func (s *ChecksService) ReRequestCheckSuite(ctx context.Context, owner, repo string, checkSuiteID int64) (*Response, error)

ReRequestCheckSuite triggers GitHub to rerequest an existing check suite, without pushing new code to a repository.

GitHub API docs: https://docs.github.com/rest/checks/suites#rerequest-a-check-suite

func (*ChecksService) SetCheckSuitePreferences

func (s *ChecksService) SetCheckSuitePreferences(ctx context.Context, owner, repo string, opts CheckSuitePreferenceOptions) (*CheckSuitePreferenceResults, *Response, error)

SetCheckSuitePreferences changes the default automatic flow when creating check suites.

GitHub API docs: https://docs.github.com/rest/checks/suites#update-repository-preferences-for-check-suites

func (*ChecksService) UpdateCheckRun

func (s *ChecksService) UpdateCheckRun(ctx context.Context, owner, repo string, checkRunID int64, opts UpdateCheckRunOptions) (*CheckRun, *Response, error)

UpdateCheckRun updates a check run for a specific commit in a repository.

GitHub API docs: https://docs.github.com/rest/checks/runs#update-a-check-run

type Client

type Client struct {

	// Base URL for API requests. Defaults to the public GitHub API, but can be
	// set to a domain endpoint to use with GitHub Enterprise. BaseURL should
	// always be specified with a trailing slash.
	BaseURL *url.URL

	// Base URL for uploading files.
	UploadURL *url.URL

	// User agent used when communicating with the GitHub API.
	UserAgent string

	// If specified, Client will block requests for at most this duration in case of reaching a secondary
	// rate limit
	MaxSecondaryRateLimitRetryAfterDuration time.Duration

	// Whether to respect rate limit headers on endpoints that return 302 redirections to artifacts
	RateLimitRedirectionalEndpoints bool

	// Services used for talking to different parts of the GitHub API.
	Actions            *ActionsService
	Activity           *ActivityService
	Admin              *AdminService
	Apps               *AppsService
	Authorizations     *AuthorizationsService
	Billing            *BillingService
	Checks             *ChecksService
	CodeScanning       *CodeScanningService
	CodesOfConduct     *CodesOfConductService
	Codespaces         *CodespacesService
	Copilot            *CopilotService
	Dependabot         *DependabotService
	DependencyGraph    *DependencyGraphService
	Emojis             *EmojisService
	Enterprise         *EnterpriseService
	Gists              *GistsService
	Git                *GitService
	Gitignores         *GitignoresService
	Interactions       *InteractionsService
	IssueImport        *IssueImportService
	Issues             *IssuesService
	Licenses           *LicensesService
	Markdown           *MarkdownService
	Marketplace        *MarketplaceService
	Meta               *MetaService
	Migrations         *MigrationService
	Organizations      *OrganizationsService
	PullRequests       *PullRequestsService
	RateLimit          *RateLimitService
	Reactions          *ReactionsService
	Repositories       *RepositoriesService
	SCIM               *SCIMService
	Search             *SearchService
	SecretScanning     *SecretScanningService
	SecurityAdvisories *SecurityAdvisoriesService
	Teams              *TeamsService
	Users              *UsersService
	// contains filtered or unexported fields
}

A Client manages communication with the GitHub API.

func NewClient

func NewClient(httpClient *http.Client) *Client

NewClient returns a new GitHub API client. If a nil httpClient is provided, a new http.Client will be used. To use API methods which require authentication, either use Client.WithAuthToken or provide NewClient with an http.Client that will perform the authentication for you (such as that provided by the golang.org/x/oauth2 library).

func NewClientWithEnvProxy

func NewClientWithEnvProxy() *Client

NewClientWithEnvProxy enhances NewClient with the HttpProxy env.

func NewEnterpriseClient deprecated

func NewEnterpriseClient(baseURL, uploadURL string, httpClient *http.Client) (*Client, error)

NewEnterpriseClient returns a new GitHub API client with provided base URL and upload URL (often is your GitHub Enterprise hostname).

Deprecated: Use NewClient(httpClient).WithEnterpriseURLs(baseURL, uploadURL) instead.

func NewTokenClient

func NewTokenClient(_ context.Context, token string) *Client

NewTokenClient returns a new GitHub API client authenticated with the provided token. Deprecated: Use NewClient(nil).WithAuthToken(token) instead.

func (*Client) APIMeta deprecated

func (c *Client) APIMeta(ctx context.Context) (*APIMeta, *Response, error)

APIMeta returns information about GitHub.com.

Deprecated: Use MetaService.Get instead.

func (*Client) BareDo

func (c *Client) BareDo(ctx context.Context, req *http.Request) (*Response, error)

BareDo sends an API request and lets you handle the api response. If an error or API Error occurs, the error will contain more information. Otherwise you are supposed to read and close the response's Body. If rate limit is exceeded and reset time is in the future, BareDo returns *RateLimitError immediately without making a network API call.

The provided ctx must be non-nil, if it is nil an error is returned. If it is canceled or times out, ctx.Err() will be returned.

func (*Client) Client

func (c *Client) Client() *http.Client

Client returns the http.Client used by this GitHub client. This should only be used for requests to the GitHub API because request headers will contain an authorization token.

func (*Client) Do

func (c *Client) Do(ctx context.Context, req *http.Request, v interface{}) (*Response, error)

Do sends an API request and returns the API response. The API response is JSON decoded and stored in the value pointed to by v, or returned as an error if an API error has occurred. If v implements the io.Writer interface, the raw response body will be written to v, without attempting to first decode it. If v is nil, and no error happens, the response is returned as is. If rate limit is exceeded and reset time is in the future, Do returns *RateLimitError immediately without making a network API call.

The provided ctx must be non-nil, if it is nil an error is returned. If it is canceled or times out, ctx.Err() will be returned.

func (*Client) GetCodeOfConduct deprecated

func (c *Client) GetCodeOfConduct(ctx context.Context, key string) (*CodeOfConduct, *Response, error)

GetCodeOfConduct returns an individual code of conduct.

Deprecated: Use CodesOfConductService.Get instead.

func (*Client) ListCodesOfConduct deprecated

func (c *Client) ListCodesOfConduct(ctx context.Context) ([]*CodeOfConduct, *Response, error)

ListCodesOfConduct returns all codes of conduct.

Deprecated: Use CodesOfConductService.List instead.

func (*Client) ListEmojis deprecated

func (c *Client) ListEmojis(ctx context.Context) (map[string]string, *Response, error)

ListEmojis returns the emojis available to use on GitHub.

Deprecated: Use EmojisService.List instead.

func (*Client) NewFormRequest

func (c *Client) NewFormRequest(urlStr string, body io.Reader, opts ...RequestOption) (*http.Request, error)

NewFormRequest creates an API request. A relative URL can be provided in urlStr, in which case it is resolved relative to the BaseURL of the Client. Relative URLs should always be specified without a preceding slash. Body is sent with Content-Type: application/x-www-form-urlencoded.

func (*Client) NewRequest

func (c *Client) NewRequest(method, urlStr string, body interface{}, opts ...RequestOption) (*http.Request, error)

NewRequest creates an API request. A relative URL can be provided in urlStr, in which case it is resolved relative to the BaseURL of the Client. Relative URLs should always be specified without a preceding slash. If specified, the value pointed to by body is JSON encoded and included as the request body.

func (*Client) NewUploadRequest

func (c *Client) NewUploadRequest(urlStr string, reader io.Reader, size int64, mediaType string, opts ...RequestOption) (*http.Request, error)

NewUploadRequest creates an upload request. A relative URL can be provided in urlStr, in which case it is resolved relative to the UploadURL of the Client. Relative URLs should always be specified without a preceding slash.

func (*Client) Octocat deprecated

func (c *Client) Octocat(ctx context.Context, message string) (string, *Response, error)

Octocat returns an ASCII art octocat with the specified message in a speech bubble. If message is empty, a random zen phrase is used.

Deprecated: Use MetaService.Octocat instead.

func (*Client) RateLimits deprecated

func (c *Client) RateLimits(ctx context.Context) (*RateLimits, *Response, error)

RateLimits returns the rate limits for the current client.

Deprecated: Use RateLimitService.Get instead.

func (*Client) WithAuthToken

func (c *Client) WithAuthToken(token string) *Client

WithAuthToken returns a copy of the client configured to use the provided token for the Authorization header.

func (*Client) WithEnterpriseURLs

func (c *Client) WithEnterpriseURLs(baseURL, uploadURL string) (*Client, error)

WithEnterpriseURLs returns a copy of the client configured to use the provided base and upload URLs. If the base URL does not have the suffix "/api/v3/", it will be added automatically. If the upload URL does not have the suffix "/api/uploads", it will be added automatically.

Note that WithEnterpriseURLs is a convenience helper only; its behavior is equivalent to setting the BaseURL and UploadURL fields.

Another important thing is that by default, the GitHub Enterprise URL format should be http(s)://[hostname]/api/v3/ or you will always receive the 406 status code. The upload URL format should be http(s)://[hostname]/api/uploads/.

func (*Client) Zen deprecated

func (c *Client) Zen(ctx context.Context) (string, *Response, error)

Zen returns a random line from The Zen of GitHub.

Deprecated: Use MetaService.Zen instead.

type ClusterSSHKey

type ClusterSSHKey struct {
	Key         *string `json:"key,omitempty"`
	Fingerprint *string `json:"fingerprint,omitempty"`
}

ClusterSSHKey represents the SSH keys configured for the instance.

func (*ClusterSSHKey) GetFingerprint

func (c *ClusterSSHKey) GetFingerprint() string

GetFingerprint returns the Fingerprint field if it's non-nil, zero value otherwise.

func (*ClusterSSHKey) GetKey

func (c *ClusterSSHKey) GetKey() string

GetKey returns the Key field if it's non-nil, zero value otherwise.

type ClusterStatus

type ClusterStatus struct {
	Status *string              `json:"status,omitempty"`
	Nodes  []*ClusterStatusNode `json:"nodes"`
}

ClusterStatus represents a response from the ClusterStatus and ReplicationStatus methods.

func (*ClusterStatus) GetStatus

func (c *ClusterStatus) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

type ClusterStatusNode

type ClusterStatusNode struct {
	Hostname *string                         `json:"hostname,omitempty"`
	Status   *string                         `json:"status,omitempty"`
	Services []*ClusterStatusNodeServiceItem `json:"services"`
}

ClusterStatusNode represents the status of a cluster node.

func (*ClusterStatusNode) GetHostname

func (c *ClusterStatusNode) GetHostname() string

GetHostname returns the Hostname field if it's non-nil, zero value otherwise.

func (*ClusterStatusNode) GetStatus

func (c *ClusterStatusNode) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

type ClusterStatusNodeServiceItem

type ClusterStatusNodeServiceItem struct {
	Status  *string `json:"status,omitempty"`
	Name    *string `json:"name,omitempty"`
	Details *string `json:"details,omitempty"`
}

ClusterStatusNodeServiceItem represents the status of a service running on a cluster node.

func (*ClusterStatusNodeServiceItem) GetDetails

func (c *ClusterStatusNodeServiceItem) GetDetails() string

GetDetails returns the Details field if it's non-nil, zero value otherwise.

func (*ClusterStatusNodeServiceItem) GetName

func (c *ClusterStatusNodeServiceItem) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*ClusterStatusNodeServiceItem) GetStatus

func (c *ClusterStatusNodeServiceItem) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

type CodeOfConduct

type CodeOfConduct struct {
	Name *string `json:"name,omitempty"`
	Key  *string `json:"key,omitempty"`
	URL  *string `json:"url,omitempty"`
	Body *string `json:"body,omitempty"`
}

CodeOfConduct represents a code of conduct.

func (*CodeOfConduct) GetBody

func (c *CodeOfConduct) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*CodeOfConduct) GetKey

func (c *CodeOfConduct) GetKey() string

GetKey returns the Key field if it's non-nil, zero value otherwise.

func (*CodeOfConduct) GetName

func (c *CodeOfConduct) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CodeOfConduct) GetURL

func (c *CodeOfConduct) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*CodeOfConduct) String

func (c *CodeOfConduct) String() string

type CodeQLDatabase

type CodeQLDatabase struct {
	ID          *int64     `json:"id,omitempty"`
	Name        *string    `json:"name,omitempty"`
	Language    *string    `json:"language,omitempty"`
	Uploader    *User      `json:"uploader,omitempty"`
	ContentType *string    `json:"content_type,omitempty"`
	Size        *int64     `json:"size,omitempty"`
	CreatedAt   *Timestamp `json:"created_at,omitempty"`
	UpdatedAt   *Timestamp `json:"updated_at,omitempty"`
	URL         *string    `json:"url,omitempty"`
}

CodeQLDatabase represents a metadata about the CodeQL database.

GitHub API docs: https://docs.github.com/rest/code-scanning

func (*CodeQLDatabase) GetContentType

func (c *CodeQLDatabase) GetContentType() string

GetContentType returns the ContentType field if it's non-nil, zero value otherwise.

func (*CodeQLDatabase) GetCreatedAt

func (c *CodeQLDatabase) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*CodeQLDatabase) GetID

func (c *CodeQLDatabase) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CodeQLDatabase) GetLanguage

func (c *CodeQLDatabase) GetLanguage() string

GetLanguage returns the Language field if it's non-nil, zero value otherwise.

func (*CodeQLDatabase) GetName

func (c *CodeQLDatabase) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CodeQLDatabase) GetSize

func (c *CodeQLDatabase) GetSize() int64

GetSize returns the Size field if it's non-nil, zero value otherwise.

func (*CodeQLDatabase) GetURL

func (c *CodeQLDatabase) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*CodeQLDatabase) GetUpdatedAt

func (c *CodeQLDatabase) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*CodeQLDatabase) GetUploader

func (c *CodeQLDatabase) GetUploader() *User

GetUploader returns the Uploader field.

type CodeResult

type CodeResult struct {
	Name        *string      `json:"name,omitempty"`
	Path        *string      `json:"path,omitempty"`
	SHA         *string      `json:"sha,omitempty"`
	HTMLURL     *string      `json:"html_url,omitempty"`
	Repository  *Repository  `json:"repository,omitempty"`
	TextMatches []*TextMatch `json:"text_matches,omitempty"`
}

CodeResult represents a single search result.

func (*CodeResult) GetHTMLURL

func (c *CodeResult) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*CodeResult) GetName

func (c *CodeResult) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CodeResult) GetPath

func (c *CodeResult) GetPath() string

GetPath returns the Path field if it's non-nil, zero value otherwise.

func (*CodeResult) GetRepository

func (c *CodeResult) GetRepository() *Repository

GetRepository returns the Repository field.

func (*CodeResult) GetSHA

func (c *CodeResult) GetSHA() string

GetSHA returns the SHA field if it's non-nil, zero value otherwise.

func (CodeResult) String

func (c CodeResult) String() string

type CodeScanningAlertEvent

type CodeScanningAlertEvent struct {
	Action *string `json:"action,omitempty"`
	Alert  *Alert  `json:"alert,omitempty"`
	Ref    *string `json:"ref,omitempty"`
	// CommitOID is the commit SHA of the code scanning alert
	CommitOID *string       `json:"commit_oid,omitempty"`
	Repo      *Repository   `json:"repository,omitempty"`
	Org       *Organization `json:"organization,omitempty"`
	Sender    *User         `json:"sender,omitempty"`

	Installation *Installation `json:"installation,omitempty"`
}

CodeScanningAlertEvent is triggered when a code scanning finds a potential vulnerability or error in your code.

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#code_scanning_alert

func (*CodeScanningAlertEvent) GetAction

func (c *CodeScanningAlertEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*CodeScanningAlertEvent) GetAlert

func (c *CodeScanningAlertEvent) GetAlert() *Alert

GetAlert returns the Alert field.

func (*CodeScanningAlertEvent) GetCommitOID

func (c *CodeScanningAlertEvent) GetCommitOID() string

GetCommitOID returns the CommitOID field if it's non-nil, zero value otherwise.

func (*CodeScanningAlertEvent) GetInstallation

func (c *CodeScanningAlertEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*CodeScanningAlertEvent) GetOrg

func (c *CodeScanningAlertEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*CodeScanningAlertEvent) GetRef

func (c *CodeScanningAlertEvent) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*CodeScanningAlertEvent) GetRepo

func (c *CodeScanningAlertEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*CodeScanningAlertEvent) GetSender

func (c *CodeScanningAlertEvent) GetSender() *User

GetSender returns the Sender field.

type CodeScanningAlertState

type CodeScanningAlertState struct {
	// State sets the state of the code scanning alert and is a required field.
	// You must also provide DismissedReason when you set the state to "dismissed".
	// State can be one of: "open", "dismissed".
	State string `json:"state"`
	// DismissedReason represents the reason for dismissing or closing the alert.
	// It is required when the state is "dismissed".
	// It can be one of: "false positive", "won't fix", "used in tests".
	DismissedReason *string `json:"dismissed_reason,omitempty"`
	// DismissedComment is associated with the dismissal of the alert.
	DismissedComment *string `json:"dismissed_comment,omitempty"`
}

CodeScanningAlertState specifies the state of a code scanning alert.

GitHub API docs: https://docs.github.com/rest/code-scanning

func (*CodeScanningAlertState) GetDismissedComment

func (c *CodeScanningAlertState) GetDismissedComment() string

GetDismissedComment returns the DismissedComment field if it's non-nil, zero value otherwise.

func (*CodeScanningAlertState) GetDismissedReason

func (c *CodeScanningAlertState) GetDismissedReason() string

GetDismissedReason returns the DismissedReason field if it's non-nil, zero value otherwise.

type CodeScanningAlertsThreshold

type CodeScanningAlertsThreshold string

CodeScanningAlertsThreshold models a GitHub code scanning alerts threshold.

const (
	CodeScanningAlertsThresholdNone              CodeScanningAlertsThreshold = "none"
	CodeScanningAlertsThresholdErrors            CodeScanningAlertsThreshold = "errors"
	CodeScanningAlertsThresholdErrorsAndWarnings CodeScanningAlertsThreshold = "errors_and_warnings"
	CodeScanningAlertsThresholdAll               CodeScanningAlertsThreshold = "all"
)

This is the set of GitHub code scanning alerts thresholds.

type CodeScanningBranchRule

type CodeScanningBranchRule struct {
	BranchRuleMetadata
	Parameters CodeScanningRuleParameters `json:"parameters"`
}

CodeScanningBranchRule represents a code scanning branch rule.

type CodeScanningRuleParameters

type CodeScanningRuleParameters struct {
	CodeScanningTools []*RuleCodeScanningTool `json:"code_scanning_tools"`
}

CodeScanningRuleParameters represents the code scanning rule parameters.

type CodeScanningSecurityAlertsThreshold

type CodeScanningSecurityAlertsThreshold string

CodeScanningSecurityAlertsThreshold models a GitHub code scanning security alerts threshold.

const (
	CodeScanningSecurityAlertsThresholdNone           CodeScanningSecurityAlertsThreshold = "none"
	CodeScanningSecurityAlertsThresholdCritical       CodeScanningSecurityAlertsThreshold = "critical"
	CodeScanningSecurityAlertsThresholdHighOrHigher   CodeScanningSecurityAlertsThreshold = "high_or_higher"
	CodeScanningSecurityAlertsThresholdMediumOrHigher CodeScanningSecurityAlertsThreshold = "medium_or_higher"
	CodeScanningSecurityAlertsThresholdAll            CodeScanningSecurityAlertsThreshold = "all"
)

This is the set of GitHub code scanning security alerts thresholds.

type CodeScanningService

type CodeScanningService service

CodeScanningService handles communication with the code scanning related methods of the GitHub API.

GitHub API docs: https://docs.github.com/rest/code-scanning

func (*CodeScanningService) DeleteAnalysis

func (s *CodeScanningService) DeleteAnalysis(ctx context.Context, owner, repo string, id int64) (*DeleteAnalysis, *Response, error)

DeleteAnalysis deletes a single code scanning analysis from a repository.

You must use an access token with the repo scope to use this endpoint. GitHub Apps must have the security_events read permission to use this endpoint.

The security analysis_id is the ID of the analysis, as returned from the ListAnalysesForRepo operation.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#delete-a-code-scanning-analysis-from-a-repository

func (*CodeScanningService) GetAlert

func (s *CodeScanningService) GetAlert(ctx context.Context, owner, repo string, id int64) (*Alert, *Response, error)

GetAlert gets a single code scanning alert for a repository.

You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events read permission to use this endpoint.

The security alert_id is the number at the end of the security alert's URL.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#get-a-code-scanning-alert

func (*CodeScanningService) GetAnalysis

func (s *CodeScanningService) GetAnalysis(ctx context.Context, owner, repo string, id int64) (*ScanningAnalysis, *Response, error)

GetAnalysis gets a single code scanning analysis for a repository.

You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events read permission to use this endpoint.

The security analysis_id is the ID of the analysis, as returned from the ListAnalysesForRepo operation.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#get-a-code-scanning-analysis-for-a-repository

func (*CodeScanningService) GetCodeQLDatabase

func (s *CodeScanningService) GetCodeQLDatabase(ctx context.Context, owner, repo, language string) (*CodeQLDatabase, *Response, error)

GetCodeQLDatabase gets a CodeQL database for a language in a repository.

You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the contents read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#get-a-codeql-database-for-a-repository

func (*CodeScanningService) GetDefaultSetupConfiguration

func (s *CodeScanningService) GetDefaultSetupConfiguration(ctx context.Context, owner, repo string) (*DefaultSetupConfiguration, *Response, error)

GetDefaultSetupConfiguration gets a code scanning default setup configuration.

You must use an access token with the repo scope to use this endpoint with private repos or the public_repo scope for public repos. GitHub Apps must have the repo write permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#get-a-code-scanning-default-setup-configuration

func (*CodeScanningService) GetSARIF

func (s *CodeScanningService) GetSARIF(ctx context.Context, owner, repo, sarifID string) (*SARIFUpload, *Response, error)

GetSARIF gets information about a SARIF upload.

You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#get-information-about-a-sarif-upload

func (*CodeScanningService) ListAlertInstances

func (s *CodeScanningService) ListAlertInstances(ctx context.Context, owner, repo string, id int64, opts *AlertInstancesListOptions) ([]*MostRecentInstance, *Response, error)

ListAlertInstances lists instances of a code scanning alert.

You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#list-instances-of-a-code-scanning-alert

func (*CodeScanningService) ListAlertsForOrg

func (s *CodeScanningService) ListAlertsForOrg(ctx context.Context, org string, opts *AlertListOptions) ([]*Alert, *Response, error)

ListAlertsForOrg lists code scanning alerts for an org.

You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#list-code-scanning-alerts-for-an-organization

func (*CodeScanningService) ListAlertsForRepo

func (s *CodeScanningService) ListAlertsForRepo(ctx context.Context, owner, repo string, opts *AlertListOptions) ([]*Alert, *Response, error)

ListAlertsForRepo lists code scanning alerts for a repository.

Lists all open code scanning alerts for the default branch (usually master) and protected branches in a repository. You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#list-code-scanning-alerts-for-a-repository

func (*CodeScanningService) ListAnalysesForRepo

func (s *CodeScanningService) ListAnalysesForRepo(ctx context.Context, owner, repo string, opts *AnalysesListOptions) ([]*ScanningAnalysis, *Response, error)

ListAnalysesForRepo lists code scanning analyses for a repository.

Lists the details of all code scanning analyses for a repository, starting with the most recent. You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#list-code-scanning-analyses-for-a-repository

func (*CodeScanningService) ListCodeQLDatabases

func (s *CodeScanningService) ListCodeQLDatabases(ctx context.Context, owner, repo string) ([]*CodeQLDatabase, *Response, error)

ListCodeQLDatabases lists the CodeQL databases that are available in a repository.

You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the contents read permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#list-codeql-databases-for-a-repository

func (*CodeScanningService) UpdateAlert

func (s *CodeScanningService) UpdateAlert(ctx context.Context, owner, repo string, id int64, stateInfo *CodeScanningAlertState) (*Alert, *Response, error)

UpdateAlert updates the state of a single code scanning alert for a repository.

You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events read permission to use this endpoint.

The security alert_id is the number at the end of the security alert's URL.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-alert

func (*CodeScanningService) UpdateDefaultSetupConfiguration

UpdateDefaultSetupConfiguration updates a code scanning default setup configuration.

You must use an access token with the repo scope to use this endpoint with private repos or the public_repo scope for public repos. GitHub Apps must have the repo write permission to use this endpoint.

This method might return an AcceptedError and a status code of 202. This is because this is the status that GitHub returns to signify that it has now scheduled the update of the pull request branch in a background task.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-default-setup-configuration

func (*CodeScanningService) UploadSarif

func (s *CodeScanningService) UploadSarif(ctx context.Context, owner, repo string, sarif *SarifAnalysis) (*SarifID, *Response, error)

UploadSarif uploads the result of code scanning job to GitHub.

For the parameter sarif, you must first compress your SARIF file using gzip and then translate the contents of the file into a Base64 encoding string. You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events write permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/code-scanning/code-scanning#upload-an-analysis-as-sarif-data

type CodeSearchResult

type CodeSearchResult struct {
	Total             *int          `json:"total_count,omitempty"`
	IncompleteResults *bool         `json:"incomplete_results,omitempty"`
	CodeResults       []*CodeResult `json:"items,omitempty"`
}

CodeSearchResult represents the result of a code search.

func (*CodeSearchResult) GetIncompleteResults

func (c *CodeSearchResult) GetIncompleteResults() bool

GetIncompleteResults returns the IncompleteResults field if it's non-nil, zero value otherwise.

func (*CodeSearchResult) GetTotal

func (c *CodeSearchResult) GetTotal() int

GetTotal returns the Total field if it's non-nil, zero value otherwise.

type CodeSecurityConfiguration

type CodeSecurityConfiguration struct {
	ID                                     *int64                                  `json:"id,omitempty"`
	TargetType                             *string                                 `json:"target_type,omitempty"`
	Name                                   *string                                 `json:"name"`
	Description                            *string                                 `json:"description,omitempty"`
	AdvancedSecurity                       *string                                 `json:"advanced_security,omitempty"`
	DependencyGraph                        *string                                 `json:"dependency_graph,omitempty"`
	DependencyGraphAutosubmitAction        *string                                 `json:"dependency_graph_autosubmit_action,omitempty"`
	DependencyGraphAutosubmitActionOptions *DependencyGraphAutosubmitActionOptions `json:"dependency_graph_autosubmit_action_options,omitempty"`
	DependabotAlerts                       *string                                 `json:"dependabot_alerts,omitempty"`
	DependabotSecurityUpdates              *string                                 `json:"dependabot_security_updates,omitempty"`
	CodeScanningDefaultSetup               *string                                 `json:"code_scanning_default_setup,omitempty"`
	SecretScanning                         *string                                 `json:"secret_scanning,omitempty"`
	SecretScanningPushProtection           *string                                 `json:"secret_scanning_push_protection,omitempty"`
	SecretScanningValidityChecks           *string                                 `json:"secret_scanning_validity_checks,omitempty"`
	SecretScanningNonProviderPatterns      *string                                 `json:"secret_scanning_non_provider_patterns,omitempty"`
	PrivateVulnerabilityReporting          *string                                 `json:"private_vulnerability_reporting,omitempty"`
	Enforcement                            *string                                 `json:"enforcement,omitempty"`
	URL                                    *string                                 `json:"url,omitempty"`
	HTMLURL                                *string                                 `json:"html_url,omitempty"`
	CreatedAt                              *Timestamp                              `json:"created_at,omitempty"`
	UpdatedAt                              *Timestamp                              `json:"updated_at,omitempty"`
}

CodeSecurityConfiguration represents a code security configuration.

func (*CodeSecurityConfiguration) GetAdvancedSecurity

func (c *CodeSecurityConfiguration) GetAdvancedSecurity() string

GetAdvancedSecurity returns the AdvancedSecurity field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetCodeScanningDefaultSetup

func (c *CodeSecurityConfiguration) GetCodeScanningDefaultSetup() string

GetCodeScanningDefaultSetup returns the CodeScanningDefaultSetup field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetCreatedAt

func (c *CodeSecurityConfiguration) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetDependabotAlerts

func (c *CodeSecurityConfiguration) GetDependabotAlerts() string

GetDependabotAlerts returns the DependabotAlerts field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetDependabotSecurityUpdates

func (c *CodeSecurityConfiguration) GetDependabotSecurityUpdates() string

GetDependabotSecurityUpdates returns the DependabotSecurityUpdates field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetDependencyGraph

func (c *CodeSecurityConfiguration) GetDependencyGraph() string

GetDependencyGraph returns the DependencyGraph field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetDependencyGraphAutosubmitAction

func (c *CodeSecurityConfiguration) GetDependencyGraphAutosubmitAction() string

GetDependencyGraphAutosubmitAction returns the DependencyGraphAutosubmitAction field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetDependencyGraphAutosubmitActionOptions

func (c *CodeSecurityConfiguration) GetDependencyGraphAutosubmitActionOptions() *DependencyGraphAutosubmitActionOptions

GetDependencyGraphAutosubmitActionOptions returns the DependencyGraphAutosubmitActionOptions field.

func (*CodeSecurityConfiguration) GetDescription

func (c *CodeSecurityConfiguration) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetEnforcement

func (c *CodeSecurityConfiguration) GetEnforcement() string

GetEnforcement returns the Enforcement field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetHTMLURL

func (c *CodeSecurityConfiguration) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetID

func (c *CodeSecurityConfiguration) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetName

func (c *CodeSecurityConfiguration) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetPrivateVulnerabilityReporting

func (c *CodeSecurityConfiguration) GetPrivateVulnerabilityReporting() string

GetPrivateVulnerabilityReporting returns the PrivateVulnerabilityReporting field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetSecretScanning

func (c *CodeSecurityConfiguration) GetSecretScanning() string

GetSecretScanning returns the SecretScanning field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetSecretScanningNonProviderPatterns

func (c *CodeSecurityConfiguration) GetSecretScanningNonProviderPatterns() string

GetSecretScanningNonProviderPatterns returns the SecretScanningNonProviderPatterns field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetSecretScanningPushProtection

func (c *CodeSecurityConfiguration) GetSecretScanningPushProtection() string

GetSecretScanningPushProtection returns the SecretScanningPushProtection field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetSecretScanningValidityChecks

func (c *CodeSecurityConfiguration) GetSecretScanningValidityChecks() string

GetSecretScanningValidityChecks returns the SecretScanningValidityChecks field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetTargetType

func (c *CodeSecurityConfiguration) GetTargetType() string

GetTargetType returns the TargetType field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetURL

func (c *CodeSecurityConfiguration) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*CodeSecurityConfiguration) GetUpdatedAt

func (c *CodeSecurityConfiguration) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type CodeSecurityConfigurationWithDefaultForNewRepos

type CodeSecurityConfigurationWithDefaultForNewRepos struct {
	Configuration      *CodeSecurityConfiguration `json:"configuration"`
	DefaultForNewRepos *string                    `json:"default_for_new_repos"`
}

CodeSecurityConfigurationWithDefaultForNewRepos represents a code security configuration with default for new repos param.

func (*CodeSecurityConfigurationWithDefaultForNewRepos) GetConfiguration

GetConfiguration returns the Configuration field.

func (*CodeSecurityConfigurationWithDefaultForNewRepos) GetDefaultForNewRepos

func (c *CodeSecurityConfigurationWithDefaultForNewRepos) GetDefaultForNewRepos() string

GetDefaultForNewRepos returns the DefaultForNewRepos field if it's non-nil, zero value otherwise.

type CodeownersError

type CodeownersError struct {
	Line       int     `json:"line"`
	Column     int     `json:"column"`
	Kind       string  `json:"kind"`
	Source     string  `json:"source"`
	Suggestion *string `json:"suggestion,omitempty"`
	Message    string  `json:"message"`
	Path       string  `json:"path"`
}

CodeownersError represents a syntax error detected in the CODEOWNERS file.

func (*CodeownersError) GetSuggestion

func (c *CodeownersError) GetSuggestion() string

GetSuggestion returns the Suggestion field if it's non-nil, zero value otherwise.

type CodeownersErrors

type CodeownersErrors struct {
	Errors []*CodeownersError `json:"errors"`
}

CodeownersErrors represents a list of syntax errors detected in the CODEOWNERS file.

type CodesOfConductService

type CodesOfConductService service

CodesOfConductService provides access to code-of-conduct-related functions in the GitHub API.

func (*CodesOfConductService) Get

Get returns an individual code of conduct.

GitHub API docs: https://docs.github.com/rest/codes-of-conduct/codes-of-conduct#get-a-code-of-conduct

func (*CodesOfConductService) List

List returns all codes of conduct.

GitHub API docs: https://docs.github.com/rest/codes-of-conduct/codes-of-conduct#get-all-codes-of-conduct

type Codespace

type Codespace struct {
	ID                             *int64                        `json:"id,omitempty"`
	Name                           *string                       `json:"name,omitempty"`
	DisplayName                    *string                       `json:"display_name,omitempty"`
	EnvironmentID                  *string                       `json:"environment_id,omitempty"`
	Owner                          *User                         `json:"owner,omitempty"`
	BillableOwner                  *User                         `json:"billable_owner,omitempty"`
	Repository                     *Repository                   `json:"repository,omitempty"`
	Machine                        *CodespacesMachine            `json:"machine,omitempty"`
	DevcontainerPath               *string                       `json:"devcontainer_path,omitempty"`
	Prebuild                       *bool                         `json:"prebuild,omitempty"`
	CreatedAt                      *Timestamp                    `json:"created_at,omitempty"`
	UpdatedAt                      *Timestamp                    `json:"updated_at,omitempty"`
	LastUsedAt                     *Timestamp                    `json:"last_used_at,omitempty"`
	State                          *string                       `json:"state,omitempty"`
	URL                            *string                       `json:"url,omitempty"`
	GitStatus                      *CodespacesGitStatus          `json:"git_status,omitempty"`
	Location                       *string                       `json:"location,omitempty"`
	IdleTimeoutMinutes             *int                          `json:"idle_timeout_minutes,omitempty"`
	WebURL                         *string                       `json:"web_url,omitempty"`
	MachinesURL                    *string                       `json:"machines_url,omitempty"`
	StartURL                       *string                       `json:"start_url,omitempty"`
	StopURL                        *string                       `json:"stop_url,omitempty"`
	PullsURL                       *string                       `json:"pulls_url,omitempty"`
	RecentFolders                  []string                      `json:"recent_folders,omitempty"`
	RuntimeConstraints             *CodespacesRuntimeConstraints `json:"runtime_constraints,omitempty"`
	PendingOperation               *bool                         `json:"pending_operation,omitempty"`
	PendingOperationDisabledReason *string                       `json:"pending_operation_disabled_reason,omitempty"`
	IdleTimeoutNotice              *string                       `json:"idle_timeout_notice,omitempty"`
	RetentionPeriodMinutes         *int                          `json:"retention_period_minutes,omitempty"`
	RetentionExpiresAt             *Timestamp                    `json:"retention_expires_at,omitempty"`
	LastKnownStopNotice            *string                       `json:"last_known_stop_notice,omitempty"`
}

Codespace represents a codespace.

GitHub API docs: https://docs.github.com/rest/codespaces

func (*Codespace) GetBillableOwner

func (c *Codespace) GetBillableOwner() *User

GetBillableOwner returns the BillableOwner field.

func (*Codespace) GetCreatedAt

func (c *Codespace) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Codespace) GetDevcontainerPath

func (c *Codespace) GetDevcontainerPath() string

GetDevcontainerPath returns the DevcontainerPath field if it's non-nil, zero value otherwise.

func (*Codespace) GetDisplayName

func (c *Codespace) GetDisplayName() string

GetDisplayName returns the DisplayName field if it's non-nil, zero value otherwise.

func (*Codespace) GetEnvironmentID

func (c *Codespace) GetEnvironmentID() string

GetEnvironmentID returns the EnvironmentID field if it's non-nil, zero value otherwise.

func (*Codespace) GetGitStatus

func (c *Codespace) GetGitStatus() *CodespacesGitStatus

GetGitStatus returns the GitStatus field.

func (*Codespace) GetID

func (c *Codespace) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Codespace) GetIdleTimeoutMinutes

func (c *Codespace) GetIdleTimeoutMinutes() int

GetIdleTimeoutMinutes returns the IdleTimeoutMinutes field if it's non-nil, zero value otherwise.

func (*Codespace) GetIdleTimeoutNotice

func (c *Codespace) GetIdleTimeoutNotice() string

GetIdleTimeoutNotice returns the IdleTimeoutNotice field if it's non-nil, zero value otherwise.

func (*Codespace) GetLastKnownStopNotice

func (c *Codespace) GetLastKnownStopNotice() string

GetLastKnownStopNotice returns the LastKnownStopNotice field if it's non-nil, zero value otherwise.

func (*Codespace) GetLastUsedAt

func (c *Codespace) GetLastUsedAt() Timestamp

GetLastUsedAt returns the LastUsedAt field if it's non-nil, zero value otherwise.

func (*Codespace) GetLocation

func (c *Codespace) GetLocation() string

GetLocation returns the Location field if it's non-nil, zero value otherwise.

func (*Codespace) GetMachine

func (c *Codespace) GetMachine() *CodespacesMachine

GetMachine returns the Machine field.

func (*Codespace) GetMachinesURL

func (c *Codespace) GetMachinesURL() string

GetMachinesURL returns the MachinesURL field if it's non-nil, zero value otherwise.

func (*Codespace) GetName

func (c *Codespace) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*Codespace) GetOwner

func (c *Codespace) GetOwner() *User

GetOwner returns the Owner field.

func (*Codespace) GetPendingOperation

func (c *Codespace) GetPendingOperation() bool

GetPendingOperation returns the PendingOperation field if it's non-nil, zero value otherwise.

func (*Codespace) GetPendingOperationDisabledReason

func (c *Codespace) GetPendingOperationDisabledReason() string

GetPendingOperationDisabledReason returns the PendingOperationDisabledReason field if it's non-nil, zero value otherwise.

func (*Codespace) GetPrebuild

func (c *Codespace) GetPrebuild() bool

GetPrebuild returns the Prebuild field if it's non-nil, zero value otherwise.

func (*Codespace) GetPullsURL

func (c *Codespace) GetPullsURL() string

GetPullsURL returns the PullsURL field if it's non-nil, zero value otherwise.

func (*Codespace) GetRepository

func (c *Codespace) GetRepository() *Repository

GetRepository returns the Repository field.

func (*Codespace) GetRetentionExpiresAt

func (c *Codespace) GetRetentionExpiresAt() Timestamp

GetRetentionExpiresAt returns the RetentionExpiresAt field if it's non-nil, zero value otherwise.

func (*Codespace) GetRetentionPeriodMinutes

func (c *Codespace) GetRetentionPeriodMinutes() int

GetRetentionPeriodMinutes returns the RetentionPeriodMinutes field if it's non-nil, zero value otherwise.

func (*Codespace) GetRuntimeConstraints

func (c *Codespace) GetRuntimeConstraints() *CodespacesRuntimeConstraints

GetRuntimeConstraints returns the RuntimeConstraints field.

func (*Codespace) GetStartURL

func (c *Codespace) GetStartURL() string

GetStartURL returns the StartURL field if it's non-nil, zero value otherwise.

func (*Codespace) GetState

func (c *Codespace) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

func (*Codespace) GetStopURL

func (c *Codespace) GetStopURL() string

GetStopURL returns the StopURL field if it's non-nil, zero value otherwise.

func (*Codespace) GetURL

func (c *Codespace) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Codespace) GetUpdatedAt

func (c *Codespace) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*Codespace) GetWebURL

func (c *Codespace) GetWebURL() string

GetWebURL returns the WebURL field if it's non-nil, zero value otherwise.

type CodespacesGitStatus

type CodespacesGitStatus struct {
	Ahead                 *int    `json:"ahead,omitempty"`
	Behind                *int    `json:"behind,omitempty"`
	HasUnpushedChanges    *bool   `json:"has_unpushed_changes,omitempty"`
	HasUncommittedChanges *bool   `json:"has_uncommitted_changes,omitempty"`
	Ref                   *string `json:"ref,omitempty"`
}

CodespacesGitStatus represents the git status of a codespace.

func (*CodespacesGitStatus) GetAhead

func (c *CodespacesGitStatus) GetAhead() int

GetAhead returns the Ahead field if it's non-nil, zero value otherwise.

func (*CodespacesGitStatus) GetBehind

func (c *CodespacesGitStatus) GetBehind() int

GetBehind returns the Behind field if it's non-nil, zero value otherwise.

func (*CodespacesGitStatus) GetHasUncommittedChanges

func (c *CodespacesGitStatus) GetHasUncommittedChanges() bool

GetHasUncommittedChanges returns the HasUncommittedChanges field if it's non-nil, zero value otherwise.

func (*CodespacesGitStatus) GetHasUnpushedChanges

func (c *CodespacesGitStatus) GetHasUnpushedChanges() bool

GetHasUnpushedChanges returns the HasUnpushedChanges field if it's non-nil, zero value otherwise.

func (*CodespacesGitStatus) GetRef

func (c *CodespacesGitStatus) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

type CodespacesMachine

type CodespacesMachine struct {
	Name                 *string `json:"name,omitempty"`
	DisplayName          *string `json:"display_name,omitempty"`
	OperatingSystem      *string `json:"operating_system,omitempty"`
	StorageInBytes       *int64  `json:"storage_in_bytes,omitempty"`
	MemoryInBytes        *int64  `json:"memory_in_bytes,omitempty"`
	CPUs                 *int    `json:"cpus,omitempty"`
	PrebuildAvailability *string `json:"prebuild_availability,omitempty"`
}

CodespacesMachine represents the machine type of a codespace.

func (*CodespacesMachine) GetCPUs

func (c *CodespacesMachine) GetCPUs() int

GetCPUs returns the CPUs field if it's non-nil, zero value otherwise.

func (*CodespacesMachine) GetDisplayName

func (c *CodespacesMachine) GetDisplayName() string

GetDisplayName returns the DisplayName field if it's non-nil, zero value otherwise.

func (*CodespacesMachine) GetMemoryInBytes

func (c *CodespacesMachine) GetMemoryInBytes() int64

GetMemoryInBytes returns the MemoryInBytes field if it's non-nil, zero value otherwise.

func (*CodespacesMachine) GetName

func (c *CodespacesMachine) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CodespacesMachine) GetOperatingSystem

func (c *CodespacesMachine) GetOperatingSystem() string

GetOperatingSystem returns the OperatingSystem field if it's non-nil, zero value otherwise.

func (*CodespacesMachine) GetPrebuildAvailability

func (c *CodespacesMachine) GetPrebuildAvailability() string

GetPrebuildAvailability returns the PrebuildAvailability field if it's non-nil, zero value otherwise.

func (*CodespacesMachine) GetStorageInBytes

func (c *CodespacesMachine) GetStorageInBytes() int64

GetStorageInBytes returns the StorageInBytes field if it's non-nil, zero value otherwise.

type CodespacesRuntimeConstraints

type CodespacesRuntimeConstraints struct {
	AllowedPortPrivacySettings []string `json:"allowed_port_privacy_settings,omitempty"`
}

CodespacesRuntimeConstraints represents the runtime constraints of a codespace.

type CodespacesService

type CodespacesService service

CodespacesService handles communication with the Codespaces related methods of the GitHub API.

GitHub API docs: https://docs.github.com/rest/codespaces/

func (*CodespacesService) AddSelectedRepoToOrgSecret

func (s *CodespacesService) AddSelectedRepoToOrgSecret(ctx context.Context, org, name string, repo *Repository) (*Response, error)

AddSelectedRepoToOrgSecret adds a repository to the list of repositories that have been granted the ability to use an organization's codespace secret.

Adds a repository to an organization secret when the visibility for repository access is set to selected. The visibility is set when you Create or update an organization secret. You must authenticate using an access token with the admin:org scope to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/organization-secrets#add-selected-repository-to-an-organization-secret

func (*CodespacesService) AddSelectedRepoToUserSecret

func (s *CodespacesService) AddSelectedRepoToUserSecret(ctx context.Context, name string, repo *Repository) (*Response, error)

AddSelectedRepoToUserSecret adds a repository to the list of repositories that have been granted the ability to use a user's codespace secret.

Adds a repository to the selected repositories for a user's codespace secret. You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must have Codespaces access to use this endpoint. GitHub Apps must have write access to the codespaces_user_secrets user permission and write access to the codespaces_secrets repository permission on the referenced repository to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/secrets#add-a-selected-repository-to-a-user-secret

func (*CodespacesService) CreateInRepo

func (s *CodespacesService) CreateInRepo(ctx context.Context, owner, repo string, request *CreateCodespaceOptions) (*Codespace, *Response, error)

CreateInRepo creates a codespace in a repository.

Creates a codespace owned by the authenticated user in the specified repository. You must authenticate using an access token with the codespace scope to use this endpoint. GitHub Apps must have write access to the codespaces repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/codespaces#create-a-codespace-in-a-repository

func (*CodespacesService) CreateOrUpdateOrgSecret

func (s *CodespacesService) CreateOrUpdateOrgSecret(ctx context.Context, org string, eSecret *EncryptedSecret) (*Response, error)

CreateOrUpdateOrgSecret creates or updates an orgs codespace secret

Creates or updates an organization secret with an encrypted value. Encrypt your secret using LibSodium. You must authenticate using an access token with the admin:org scope to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/organization-secrets#create-or-update-an-organization-secret

func (*CodespacesService) CreateOrUpdateRepoSecret

func (s *CodespacesService) CreateOrUpdateRepoSecret(ctx context.Context, owner, repo string, eSecret *EncryptedSecret) (*Response, error)

CreateOrUpdateRepoSecret creates or updates a repos codespace secret

Creates or updates a repository secret with an encrypted value. Encrypt your secret using LibSodium. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have write access to the codespaces_secrets repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/repository-secrets#create-or-update-a-repository-secret

func (*CodespacesService) CreateOrUpdateUserSecret

func (s *CodespacesService) CreateOrUpdateUserSecret(ctx context.Context, eSecret *EncryptedSecret) (*Response, error)

CreateOrUpdateUserSecret creates or updates a users codespace secret

Creates or updates a secret for a user's codespace with an encrypted value. Encrypt your secret using LibSodium. You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must also have Codespaces access to use this endpoint. GitHub Apps must have write access to the codespaces_user_secrets user permission and codespaces_secrets repository permission on all referenced repositories to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/secrets#create-or-update-a-secret-for-the-authenticated-user

func (*CodespacesService) Delete

func (s *CodespacesService) Delete(ctx context.Context, codespaceName string) (*Response, error)

Delete deletes a codespace.

You must authenticate using an access token with the codespace scope to use this endpoint. GitHub Apps must have write access to the codespaces repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/codespaces#delete-a-codespace-for-the-authenticated-user

func (*CodespacesService) DeleteOrgSecret

func (s *CodespacesService) DeleteOrgSecret(ctx context.Context, org, name string) (*Response, error)

DeleteOrgSecret deletes an orgs codespace secret

Deletes an organization secret using the secret name. You must authenticate using an access token with the admin:org scope to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/organization-secrets#delete-an-organization-secret

func (*CodespacesService) DeleteRepoSecret

func (s *CodespacesService) DeleteRepoSecret(ctx context.Context, owner, repo, name string) (*Response, error)

DeleteRepoSecret deletes a repos codespace secret

Deletes a secret in a repository using the secret name. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have write access to the codespaces_secrets repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/repository-secrets#delete-a-repository-secret

func (*CodespacesService) DeleteUserSecret

func (s *CodespacesService) DeleteUserSecret(ctx context.Context, name string) (*Response, error)

DeleteUserSecret deletes a users codespace secret

Deletes a secret from a user's codespaces using the secret name. Deleting the secret will remove access from all codespaces that were allowed to access the secret. You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must have Codespaces access to use this endpoint. GitHub Apps must have write access to the codespaces_user_secrets user permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/secrets#delete-a-secret-for-the-authenticated-user

func (*CodespacesService) GetOrgPublicKey

func (s *CodespacesService) GetOrgPublicKey(ctx context.Context, org string) (*PublicKey, *Response, error)

GetOrgPublicKey gets the org public key for encrypting codespace secrets

Gets a public key for an organization, which is required in order to encrypt secrets. You need to encrypt the value of a secret before you can create or update secrets. You must authenticate using an access token with the admin:org scope to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/organization-secrets#get-an-organization-public-key

func (*CodespacesService) GetOrgSecret

func (s *CodespacesService) GetOrgSecret(ctx context.Context, org, name string) (*Secret, *Response, error)

GetOrgSecret gets an org codespace secret

Gets an organization secret without revealing its encrypted value. You must authenticate using an access token with the admin:org scope to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/organization-secrets#get-an-organization-secret

func (*CodespacesService) GetRepoPublicKey

func (s *CodespacesService) GetRepoPublicKey(ctx context.Context, owner, repo string) (*PublicKey, *Response, error)

GetRepoPublicKey gets the repo public key for encrypting codespace secrets

Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the repo scope. GitHub Apps must have write access to the codespaces_secrets repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/repository-secrets#get-a-repository-public-key

func (*CodespacesService) GetRepoSecret

func (s *CodespacesService) GetRepoSecret(ctx context.Context, owner, repo, name string) (*Secret, *Response, error)

GetRepoSecret gets a repo codespace secret

Gets a single repository secret without revealing its encrypted value. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have write access to the codespaces_secrets repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/repository-secrets#get-a-repository-secret

func (*CodespacesService) GetUserPublicKey

func (s *CodespacesService) GetUserPublicKey(ctx context.Context) (*PublicKey, *Response, error)

GetUserPublicKey gets the users public key for encrypting codespace secrets

Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets. You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must have Codespaces access to use this endpoint. GitHub Apps must have read access to the codespaces_user_secrets user permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/secrets#get-public-key-for-the-authenticated-user

func (*CodespacesService) GetUserSecret

func (s *CodespacesService) GetUserSecret(ctx context.Context, name string) (*Secret, *Response, error)

GetUserSecret gets a users codespace secret

Gets a secret available to a user's codespaces without revealing its encrypted value. You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must have Codespaces access to use this endpoint. GitHub Apps must have read access to the codespaces_user_secrets user permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/secrets#get-a-secret-for-the-authenticated-user

func (*CodespacesService) List

List lists codespaces for an authenticated user.

Lists the authenticated user's codespaces. You must authenticate using an access token with the codespace scope to use this endpoint. GitHub Apps must have read access to the codespaces repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/codespaces#list-codespaces-for-the-authenticated-user

func (*CodespacesService) ListInRepo

func (s *CodespacesService) ListInRepo(ctx context.Context, owner, repo string, opts *ListOptions) (*ListCodespaces, *Response, error)

ListInRepo lists codespaces for a user in a repository.

Lists the codespaces associated with a specified repository and the authenticated user. You must authenticate using an access token with the codespace scope to use this endpoint. GitHub Apps must have read access to the codespaces repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/codespaces#list-codespaces-in-a-repository-for-the-authenticated-user

func (*CodespacesService) ListOrgSecrets

func (s *CodespacesService) ListOrgSecrets(ctx context.Context, org string, opts *ListOptions) (*Secrets, *Response, error)

ListOrgSecrets list all secrets available to an org

Lists all Codespaces secrets available at the organization-level without revealing their encrypted values. You must authenticate using an access token with the admin:org scope to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/organization-secrets#list-organization-secrets

func (*CodespacesService) ListRepoSecrets

func (s *CodespacesService) ListRepoSecrets(ctx context.Context, owner, repo string, opts *ListOptions) (*Secrets, *Response, error)

ListRepoSecrets list all secrets available to a repo

Lists all secrets available in a repository without revealing their encrypted values. You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have write access to the codespaces_secrets repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/repository-secrets#list-repository-secrets

func (*CodespacesService) ListSelectedReposForOrgSecret

func (s *CodespacesService) ListSelectedReposForOrgSecret(ctx context.Context, org, name string, opts *ListOptions) (*SelectedReposList, *Response, error)

ListSelectedReposForOrgSecret lists the repositories that have been granted the ability to use an organization's codespace secret.

Lists all repositories that have been selected when the visibility for repository access to a secret is set to selected. You must authenticate using an access token with the admin:org scope to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/organization-secrets#list-selected-repositories-for-an-organization-secret

func (*CodespacesService) ListSelectedReposForUserSecret

func (s *CodespacesService) ListSelectedReposForUserSecret(ctx context.Context, name string, opts *ListOptions) (*SelectedReposList, *Response, error)

ListSelectedReposForUserSecret lists the repositories that have been granted the ability to use a user's codespace secret.

You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must have Codespaces access to use this endpoint. GitHub Apps must have read access to the codespaces_user_secrets user permission and write access to the codespaces_secrets repository permission on all referenced repositories to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/secrets#list-selected-repositories-for-a-user-secret

func (*CodespacesService) ListUserSecrets

func (s *CodespacesService) ListUserSecrets(ctx context.Context, opts *ListOptions) (*Secrets, *Response, error)

ListUserSecrets list all secrets available for a users codespace

Lists all secrets available for a user's Codespaces without revealing their encrypted values You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must have Codespaces access to use this endpoint GitHub Apps must have read access to the codespaces_user_secrets user permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/secrets#list-secrets-for-the-authenticated-user

func (*CodespacesService) RemoveSelectedRepoFromOrgSecret

func (s *CodespacesService) RemoveSelectedRepoFromOrgSecret(ctx context.Context, org, name string, repo *Repository) (*Response, error)

RemoveSelectedRepoFromOrgSecret removes a repository from the list of repositories that have been granted the ability to use an organization's codespace secret.

Removes a repository from an organization secret when the visibility for repository access is set to selected. The visibility is set when you Create or update an organization secret. You must authenticate using an access token with the admin:org scope to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/organization-secrets#remove-selected-repository-from-an-organization-secret

func (*CodespacesService) RemoveSelectedRepoFromUserSecret

func (s *CodespacesService) RemoveSelectedRepoFromUserSecret(ctx context.Context, name string, repo *Repository) (*Response, error)

RemoveSelectedRepoFromUserSecret removes a repository from the list of repositories that have been granted the ability to use a user's codespace secret.

Removes a repository from the selected repositories for a user's codespace secret. You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must have Codespaces access to use this endpoint. GitHub Apps must have write access to the codespaces_user_secrets user permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/secrets#remove-a-selected-repository-from-a-user-secret

func (*CodespacesService) SetSelectedReposForOrgSecret

func (s *CodespacesService) SetSelectedReposForOrgSecret(ctx context.Context, org, name string, ids SelectedRepoIDs) (*Response, error)

SetSelectedReposForOrgSecret sets the repositories that have been granted the ability to use a user's codespace secret.

Replaces all repositories for an organization secret when the visibility for repository access is set to selected. The visibility is set when you Create or update an organization secret. You must authenticate using an access token with the admin:org scope to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/organization-secrets#set-selected-repositories-for-an-organization-secret

func (*CodespacesService) SetSelectedReposForUserSecret

func (s *CodespacesService) SetSelectedReposForUserSecret(ctx context.Context, name string, ids SelectedRepoIDs) (*Response, error)

SetSelectedReposForUserSecret sets the repositories that have been granted the ability to use a user's codespace secret.

You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must have Codespaces access to use this endpoint. GitHub Apps must have write access to the codespaces_user_secrets user permission and write access to the codespaces_secrets repository permission on all referenced repositories to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/secrets#set-selected-repositories-for-a-user-secret

func (*CodespacesService) Start

func (s *CodespacesService) Start(ctx context.Context, codespaceName string) (*Codespace, *Response, error)

Start starts a codespace.

You must authenticate using an access token with the codespace scope to use this endpoint. GitHub Apps must have write access to the codespaces_lifecycle_admin repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/codespaces#start-a-codespace-for-the-authenticated-user

func (*CodespacesService) Stop

func (s *CodespacesService) Stop(ctx context.Context, codespaceName string) (*Codespace, *Response, error)

Stop stops a codespace.

You must authenticate using an access token with the codespace scope to use this endpoint. GitHub Apps must have write access to the codespaces_lifecycle_admin repository permission to use this endpoint.

GitHub API docs: https://docs.github.com/rest/codespaces/codespaces#stop-a-codespace-for-the-authenticated-user

type CollaboratorInvitation

type CollaboratorInvitation struct {
	ID          *int64      `json:"id,omitempty"`
	Repo        *Repository `json:"repository,omitempty"`
	Invitee     *User       `json:"invitee,omitempty"`
	Inviter     *User       `json:"inviter,omitempty"`
	Permissions *string     `json:"permissions,omitempty"`
	CreatedAt   *Timestamp  `json:"created_at,omitempty"`
	URL         *string     `json:"url,omitempty"`
	HTMLURL     *string     `json:"html_url,omitempty"`
}

CollaboratorInvitation represents an invitation created when adding a collaborator. GitHub API docs: https://docs.github.com/rest/repos/collaborators/#response-when-a-new-invitation-is-created

func (*CollaboratorInvitation) GetCreatedAt

func (c *CollaboratorInvitation) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*CollaboratorInvitation) GetHTMLURL

func (c *CollaboratorInvitation) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*CollaboratorInvitation) GetID

func (c *CollaboratorInvitation) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CollaboratorInvitation) GetInvitee

func (c *CollaboratorInvitation) GetInvitee() *User

GetInvitee returns the Invitee field.

func (*CollaboratorInvitation) GetInviter

func (c *CollaboratorInvitation) GetInviter() *User

GetInviter returns the Inviter field.

func (*CollaboratorInvitation) GetPermissions

func (c *CollaboratorInvitation) GetPermissions() string

GetPermissions returns the Permissions field if it's non-nil, zero value otherwise.

func (*CollaboratorInvitation) GetRepo

func (c *CollaboratorInvitation) GetRepo() *Repository

GetRepo returns the Repo field.

func (*CollaboratorInvitation) GetURL

func (c *CollaboratorInvitation) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

type CombinedStatus

type CombinedStatus struct {
	// State is the combined state of the repository. Possible values are:
	// failure, pending, or success.
	State *string `json:"state,omitempty"`

	Name       *string       `json:"name,omitempty"`
	SHA        *string       `json:"sha,omitempty"`
	TotalCount *int          `json:"total_count,omitempty"`
	Statuses   []*RepoStatus `json:"statuses,omitempty"`

	CommitURL     *string `json:"commit_url,omitempty"`
	RepositoryURL *string `json:"repository_url,omitempty"`
}

CombinedStatus represents the combined status of a repository at a particular reference.

func (*CombinedStatus) GetCommitURL

func (c *CombinedStatus) GetCommitURL() string

GetCommitURL returns the CommitURL field if it's non-nil, zero value otherwise.

func (*CombinedStatus) GetName

func (c *CombinedStatus) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CombinedStatus) GetRepositoryURL

func (c *CombinedStatus) GetRepositoryURL() string

GetRepositoryURL returns the RepositoryURL field if it's non-nil, zero value otherwise.

func (*CombinedStatus) GetSHA

func (c *CombinedStatus) GetSHA() string

GetSHA returns the SHA field if it's non-nil, zero value otherwise.

func (*CombinedStatus) GetState

func (c *CombinedStatus) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

func (*CombinedStatus) GetTotalCount

func (c *CombinedStatus) GetTotalCount() int

GetTotalCount returns the TotalCount field if it's non-nil, zero value otherwise.

func (CombinedStatus) String

func (s CombinedStatus) String() string

type Comment

type Comment struct {
	CreatedAt *Timestamp `json:"created_at,omitempty"`
	Body      string     `json:"body"`
}

Comment represents comments of issue to import.

func (*Comment) GetCreatedAt

func (c *Comment) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

type CommentDiscussion

type CommentDiscussion struct {
	AuthorAssociation *string    `json:"author_association,omitempty"`
	Body              *string    `json:"body,omitempty"`
	ChildCommentCount *int       `json:"child_comment_count,omitempty"`
	CreatedAt         *Timestamp `json:"created_at,omitempty"`
	DiscussionID      *int64     `json:"discussion_id,omitempty"`
	HTMLURL           *string    `json:"html_url,omitempty"`
	ID                *int64     `json:"id,omitempty"`
	NodeID            *string    `json:"node_id,omitempty"`
	ParentID          *int64     `json:"parent_id,omitempty"`
	Reactions         *Reactions `json:"reactions,omitempty"`
	RepositoryURL     *string    `json:"repository_url,omitempty"`
	UpdatedAt         *Timestamp `json:"updated_at,omitempty"`
	User              *User      `json:"user,omitempty"`
}

CommentDiscussion represents a comment in a GitHub DiscussionCommentEvent.

func (*CommentDiscussion) GetAuthorAssociation

func (c *CommentDiscussion) GetAuthorAssociation() string

GetAuthorAssociation returns the AuthorAssociation field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetBody

func (c *CommentDiscussion) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetChildCommentCount

func (c *CommentDiscussion) GetChildCommentCount() int

GetChildCommentCount returns the ChildCommentCount field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetCreatedAt

func (c *CommentDiscussion) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetDiscussionID

func (c *CommentDiscussion) GetDiscussionID() int64

GetDiscussionID returns the DiscussionID field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetHTMLURL

func (c *CommentDiscussion) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetID

func (c *CommentDiscussion) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetNodeID

func (c *CommentDiscussion) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetParentID

func (c *CommentDiscussion) GetParentID() int64

GetParentID returns the ParentID field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetReactions

func (c *CommentDiscussion) GetReactions() *Reactions

GetReactions returns the Reactions field.

func (*CommentDiscussion) GetRepositoryURL

func (c *CommentDiscussion) GetRepositoryURL() string

GetRepositoryURL returns the RepositoryURL field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetUpdatedAt

func (c *CommentDiscussion) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*CommentDiscussion) GetUser

func (c *CommentDiscussion) GetUser() *User

GetUser returns the User field.

type CommentStats

type CommentStats struct {
	TotalCommitComments      *int `json:"total_commit_comments,omitempty"`
	TotalGistComments        *int `json:"total_gist_comments,omitempty"`
	TotalIssueComments       *int `json:"total_issue_comments,omitempty"`
	TotalPullRequestComments *int `json:"total_pull_request_comments,omitempty"`
}

CommentStats represents the number of total comments on commits, gists, issues and pull requests.

func (*CommentStats) GetTotalCommitComments

func (c *CommentStats) GetTotalCommitComments() int

GetTotalCommitComments returns the TotalCommitComments field if it's non-nil, zero value otherwise.

func (*CommentStats) GetTotalGistComments

func (c *CommentStats) GetTotalGistComments() int

GetTotalGistComments returns the TotalGistComments field if it's non-nil, zero value otherwise.

func (*CommentStats) GetTotalIssueComments

func (c *CommentStats) GetTotalIssueComments() int

GetTotalIssueComments returns the TotalIssueComments field if it's non-nil, zero value otherwise.

func (*CommentStats) GetTotalPullRequestComments

func (c *CommentStats) GetTotalPullRequestComments() int

GetTotalPullRequestComments returns the TotalPullRequestComments field if it's non-nil, zero value otherwise.

func (CommentStats) String

func (s CommentStats) String() string

type Commit

type Commit struct {
	SHA          *string                `json:"sha,omitempty"`
	Author       *CommitAuthor          `json:"author,omitempty"`
	Committer    *CommitAuthor          `json:"committer,omitempty"`
	Message      *string                `json:"message,omitempty"`
	Tree         *Tree                  `json:"tree,omitempty"`
	Parents      []*Commit              `json:"parents,omitempty"`
	HTMLURL      *string                `json:"html_url,omitempty"`
	URL          *string                `json:"url,omitempty"`
	Verification *SignatureVerification `json:"verification,omitempty"`
	NodeID       *string                `json:"node_id,omitempty"`

	// CommentCount is the number of GitHub comments on the commit. This
	// is only populated for requests that fetch GitHub data like
	// Pulls.ListCommits, Repositories.ListCommits, etc.
	CommentCount *int `json:"comment_count,omitempty"`
}

Commit represents a GitHub commit.

func (*Commit) GetAuthor

func (c *Commit) GetAuthor() *CommitAuthor

GetAuthor returns the Author field.

func (*Commit) GetCommentCount

func (c *Commit) GetCommentCount() int

GetCommentCount returns the CommentCount field if it's non-nil, zero value otherwise.

func (*Commit) GetCommitter

func (c *Commit) GetCommitter() *CommitAuthor

GetCommitter returns the Committer field.

func (*Commit) GetHTMLURL

func (c *Commit) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Commit) GetMessage

func (c *Commit) GetMessage() string

GetMessage returns the Message field if it's non-nil, zero value otherwise.

func (*Commit) GetNodeID

func (c *Commit) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Commit) GetSHA

func (c *Commit) GetSHA() string

GetSHA returns the SHA field if it's non-nil, zero value otherwise.

func (*Commit) GetTree

func (c *Commit) GetTree() *Tree

GetTree returns the Tree field.

func (*Commit) GetURL

func (c *Commit) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Commit) GetVerification

func (c *Commit) GetVerification() *SignatureVerification

GetVerification returns the Verification field.

func (Commit) String

func (c Commit) String() string

type CommitAuthor

type CommitAuthor struct {
	Date  *Timestamp `json:"date,omitempty"`
	Name  *string    `json:"name,omitempty"`
	Email *string    `json:"email,omitempty"`

	// The following fields are only populated by Webhook events.
	Login *string `json:"username,omitempty"` // Renamed for go-github consistency.
}

CommitAuthor represents the author or committer of a commit. The commit author may not correspond to a GitHub User.

func (*CommitAuthor) GetDate

func (c *CommitAuthor) GetDate() Timestamp

GetDate returns the Date field if it's non-nil, zero value otherwise.

func (*CommitAuthor) GetEmail

func (c *CommitAuthor) GetEmail() string

GetEmail returns the Email field if it's non-nil, zero value otherwise.

func (*CommitAuthor) GetLogin

func (c *CommitAuthor) GetLogin() string

GetLogin returns the Login field if it's non-nil, zero value otherwise.

func (*CommitAuthor) GetName

func (c *CommitAuthor) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (CommitAuthor) String

func (c CommitAuthor) String() string

type CommitCommentEvent

type CommitCommentEvent struct {
	Comment *RepositoryComment `json:"comment,omitempty"`

	// The following fields are only populated by Webhook events.
	Action       *string       `json:"action,omitempty"`
	Repo         *Repository   `json:"repository,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Org *Organization `json:"organization,omitempty"`
}

CommitCommentEvent is triggered when a commit comment is created. The Webhook event name is "commit_comment".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#commit_comment

func (*CommitCommentEvent) GetAction

func (c *CommitCommentEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*CommitCommentEvent) GetComment

func (c *CommitCommentEvent) GetComment() *RepositoryComment

GetComment returns the Comment field.

func (*CommitCommentEvent) GetInstallation

func (c *CommitCommentEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*CommitCommentEvent) GetOrg

func (c *CommitCommentEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*CommitCommentEvent) GetRepo

func (c *CommitCommentEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*CommitCommentEvent) GetSender

func (c *CommitCommentEvent) GetSender() *User

GetSender returns the Sender field.

type CommitFile

type CommitFile struct {
	SHA              *string `json:"sha,omitempty"`
	Filename         *string `json:"filename,omitempty"`
	Additions        *int    `json:"additions,omitempty"`
	Deletions        *int    `json:"deletions,omitempty"`
	Changes          *int    `json:"changes,omitempty"`
	Status           *string `json:"status,omitempty"`
	Patch            *string `json:"patch,omitempty"`
	BlobURL          *string `json:"blob_url,omitempty"`
	RawURL           *string `json:"raw_url,omitempty"`
	ContentsURL      *string `json:"contents_url,omitempty"`
	PreviousFilename *string `json:"previous_filename,omitempty"`
}

CommitFile represents a file modified in a commit.

func (*CommitFile) GetAdditions

func (c *CommitFile) GetAdditions() int

GetAdditions returns the Additions field if it's non-nil, zero value otherwise.

func (*CommitFile) GetBlobURL

func (c *CommitFile) GetBlobURL() string

GetBlobURL returns the BlobURL field if it's non-nil, zero value otherwise.

func (*CommitFile) GetChanges

func (c *CommitFile) GetChanges() int

GetChanges returns the Changes field if it's non-nil, zero value otherwise.

func (*CommitFile) GetContentsURL

func (c *CommitFile) GetContentsURL() string

GetContentsURL returns the ContentsURL field if it's non-nil, zero value otherwise.

func (*CommitFile) GetDeletions

func (c *CommitFile) GetDeletions() int

GetDeletions returns the Deletions field if it's non-nil, zero value otherwise.

func (*CommitFile) GetFilename

func (c *CommitFile) GetFilename() string

GetFilename returns the Filename field if it's non-nil, zero value otherwise.

func (*CommitFile) GetPatch

func (c *CommitFile) GetPatch() string

GetPatch returns the Patch field if it's non-nil, zero value otherwise.

func (*CommitFile) GetPreviousFilename

func (c *CommitFile) GetPreviousFilename() string

GetPreviousFilename returns the PreviousFilename field if it's non-nil, zero value otherwise.

func (*CommitFile) GetRawURL

func (c *CommitFile) GetRawURL() string

GetRawURL returns the RawURL field if it's non-nil, zero value otherwise.

func (*CommitFile) GetSHA

func (c *CommitFile) GetSHA() string

GetSHA returns the SHA field if it's non-nil, zero value otherwise.

func (*CommitFile) GetStatus

func (c *CommitFile) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

func (CommitFile) String

func (c CommitFile) String() string

type CommitResult

type CommitResult struct {
	SHA         *string   `json:"sha,omitempty"`
	Commit      *Commit   `json:"commit,omitempty"`
	Author      *User     `json:"author,omitempty"`
	Committer   *User     `json:"committer,omitempty"`
	Parents     []*Commit `json:"parents,omitempty"`
	HTMLURL     *string   `json:"html_url,omitempty"`
	URL         *string   `json:"url,omitempty"`
	CommentsURL *string   `json:"comments_url,omitempty"`

	Repository *Repository `json:"repository,omitempty"`
	Score      *float64    `json:"score,omitempty"`
}

CommitResult represents a commit object as returned in commit search endpoint response.

func (*CommitResult) GetAuthor

func (c *CommitResult) GetAuthor() *User

GetAuthor returns the Author field.

func (*CommitResult) GetCommentsURL

func (c *CommitResult) GetCommentsURL() string

GetCommentsURL returns the CommentsURL field if it's non-nil, zero value otherwise.

func (*CommitResult) GetCommit

func (c *CommitResult) GetCommit() *Commit

GetCommit returns the Commit field.

func (*CommitResult) GetCommitter

func (c *CommitResult) GetCommitter() *User

GetCommitter returns the Committer field.

func (*CommitResult) GetHTMLURL

func (c *CommitResult) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*CommitResult) GetRepository

func (c *CommitResult) GetRepository() *Repository

GetRepository returns the Repository field.

func (*CommitResult) GetSHA

func (c *CommitResult) GetSHA() string

GetSHA returns the SHA field if it's non-nil, zero value otherwise.

func (*CommitResult) GetScore

func (c *CommitResult) GetScore() *float64

GetScore returns the Score field.

func (*CommitResult) GetURL

func (c *CommitResult) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

type CommitStats

type CommitStats struct {
	Additions *int `json:"additions,omitempty"`
	Deletions *int `json:"deletions,omitempty"`
	Total     *int `json:"total,omitempty"`
}

CommitStats represents the number of additions / deletions from a file in a given RepositoryCommit or GistCommit.

func (*CommitStats) GetAdditions

func (c *CommitStats) GetAdditions() int

GetAdditions returns the Additions field if it's non-nil, zero value otherwise.

func (*CommitStats) GetDeletions

func (c *CommitStats) GetDeletions() int

GetDeletions returns the Deletions field if it's non-nil, zero value otherwise.

func (*CommitStats) GetTotal

func (c *CommitStats) GetTotal() int

GetTotal returns the Total field if it's non-nil, zero value otherwise.

func (CommitStats) String

func (c CommitStats) String() string

type CommitsComparison

type CommitsComparison struct {
	BaseCommit      *RepositoryCommit `json:"base_commit,omitempty"`
	MergeBaseCommit *RepositoryCommit `json:"merge_base_commit,omitempty"`

	// Head can be 'behind' or 'ahead'
	Status       *string `json:"status,omitempty"`
	AheadBy      *int    `json:"ahead_by,omitempty"`
	BehindBy     *int    `json:"behind_by,omitempty"`
	TotalCommits *int    `json:"total_commits,omitempty"`

	Commits []*RepositoryCommit `json:"commits,omitempty"`

	Files []*CommitFile `json:"files,omitempty"`

	HTMLURL      *string `json:"html_url,omitempty"`
	PermalinkURL *string `json:"permalink_url,omitempty"`
	DiffURL      *string `json:"diff_url,omitempty"`
	PatchURL     *string `json:"patch_url,omitempty"`
	URL          *string `json:"url,omitempty"` // API URL.
}

CommitsComparison is the result of comparing two commits. See CompareCommits() for details.

func (*CommitsComparison) GetAheadBy

func (c *CommitsComparison) GetAheadBy() int

GetAheadBy returns the AheadBy field if it's non-nil, zero value otherwise.

func (*CommitsComparison) GetBaseCommit

func (c *CommitsComparison) GetBaseCommit() *RepositoryCommit

GetBaseCommit returns the BaseCommit field.

func (*CommitsComparison) GetBehindBy

func (c *CommitsComparison) GetBehindBy() int

GetBehindBy returns the BehindBy field if it's non-nil, zero value otherwise.

func (*CommitsComparison) GetDiffURL

func (c *CommitsComparison) GetDiffURL() string

GetDiffURL returns the DiffURL field if it's non-nil, zero value otherwise.

func (*CommitsComparison) GetHTMLURL

func (c *CommitsComparison) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*CommitsComparison) GetMergeBaseCommit

func (c *CommitsComparison) GetMergeBaseCommit() *RepositoryCommit

GetMergeBaseCommit returns the MergeBaseCommit field.

func (*CommitsComparison) GetPatchURL

func (c *CommitsComparison) GetPatchURL() string

GetPatchURL returns the PatchURL field if it's non-nil, zero value otherwise.

func (*CommitsComparison) GetPermalinkURL

func (c *CommitsComparison) GetPermalinkURL() string

GetPermalinkURL returns the PermalinkURL field if it's non-nil, zero value otherwise.

func (*CommitsComparison) GetStatus

func (c *CommitsComparison) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

func (*CommitsComparison) GetTotalCommits

func (c *CommitsComparison) GetTotalCommits() int

GetTotalCommits returns the TotalCommits field if it's non-nil, zero value otherwise.

func (*CommitsComparison) GetURL

func (c *CommitsComparison) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (CommitsComparison) String

func (c CommitsComparison) String() string

type CommitsListOptions

type CommitsListOptions struct {
	// SHA or branch to start listing Commits from.
	SHA string `url:"sha,omitempty"`

	// Path that should be touched by the returned Commits.
	Path string `url:"path,omitempty"`

	// Author of by which to filter Commits.
	Author string `url:"author,omitempty"`

	// Since when should Commits be included in the response.
	Since time.Time `url:"since,omitempty"`

	// Until when should Commits be included in the response.
	Until time.Time `url:"until,omitempty"`

	ListOptions
}

CommitsListOptions specifies the optional parameters to the RepositoriesService.ListCommits method.

type CommitsSearchResult

type CommitsSearchResult struct {
	Total             *int            `json:"total_count,omitempty"`
	IncompleteResults *bool           `json:"incomplete_results,omitempty"`
	Commits           []*CommitResult `json:"items,omitempty"`
}

CommitsSearchResult represents the result of a commits search.

func (*CommitsSearchResult) GetIncompleteResults

func (c *CommitsSearchResult) GetIncompleteResults() bool

GetIncompleteResults returns the IncompleteResults field if it's non-nil, zero value otherwise.

func (*CommitsSearchResult) GetTotal

func (c *CommitsSearchResult) GetTotal() int

GetTotal returns the Total field if it's non-nil, zero value otherwise.

type CommunityHealthFiles

type CommunityHealthFiles struct {
	CodeOfConduct       *Metric `json:"code_of_conduct"`
	CodeOfConductFile   *Metric `json:"code_of_conduct_file"`
	Contributing        *Metric `json:"contributing"`
	IssueTemplate       *Metric `json:"issue_template"`
	PullRequestTemplate *Metric `json:"pull_request_template"`
	License             *Metric `json:"license"`
	Readme              *Metric `json:"readme"`
}

CommunityHealthFiles represents the different files in the community health metrics response.

func (*CommunityHealthFiles) GetCodeOfConduct

func (c *CommunityHealthFiles) GetCodeOfConduct() *Metric

GetCodeOfConduct returns the CodeOfConduct field.

func (*CommunityHealthFiles) GetCodeOfConductFile

func (c *CommunityHealthFiles) GetCodeOfConductFile() *Metric

GetCodeOfConductFile returns the CodeOfConductFile field.

func (*CommunityHealthFiles) GetContributing

func (c *CommunityHealthFiles) GetContributing() *Metric

GetContributing returns the Contributing field.

func (*CommunityHealthFiles) GetIssueTemplate

func (c *CommunityHealthFiles) GetIssueTemplate() *Metric

GetIssueTemplate returns the IssueTemplate field.

func (*CommunityHealthFiles) GetLicense

func (c *CommunityHealthFiles) GetLicense() *Metric

GetLicense returns the License field.

func (*CommunityHealthFiles) GetPullRequestTemplate

func (c *CommunityHealthFiles) GetPullRequestTemplate() *Metric

GetPullRequestTemplate returns the PullRequestTemplate field.

func (*CommunityHealthFiles) GetReadme

func (c *CommunityHealthFiles) GetReadme() *Metric

GetReadme returns the Readme field.

type CommunityHealthMetrics

type CommunityHealthMetrics struct {
	HealthPercentage      *int                  `json:"health_percentage"`
	Description           *string               `json:"description"`
	Documentation         *string               `json:"documentation"`
	Files                 *CommunityHealthFiles `json:"files"`
	UpdatedAt             *Timestamp            `json:"updated_at"`
	ContentReportsEnabled *bool                 `json:"content_reports_enabled"`
}

CommunityHealthMetrics represents a response containing the community metrics of a repository.

func (*CommunityHealthMetrics) GetContentReportsEnabled

func (c *CommunityHealthMetrics) GetContentReportsEnabled() bool

GetContentReportsEnabled returns the ContentReportsEnabled field if it's non-nil, zero value otherwise.

func (*CommunityHealthMetrics) GetDescription

func (c *CommunityHealthMetrics) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*CommunityHealthMetrics) GetDocumentation

func (c *CommunityHealthMetrics) GetDocumentation() string

GetDocumentation returns the Documentation field if it's non-nil, zero value otherwise.

func (*CommunityHealthMetrics) GetFiles

GetFiles returns the Files field.

func (*CommunityHealthMetrics) GetHealthPercentage

func (c *CommunityHealthMetrics) GetHealthPercentage() int

GetHealthPercentage returns the HealthPercentage field if it's non-nil, zero value otherwise.

func (*CommunityHealthMetrics) GetUpdatedAt

func (c *CommunityHealthMetrics) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type ConfigApplyEvents

type ConfigApplyEvents struct {
	Nodes []*ConfigApplyEventsNode `json:"nodes"`
}

ConfigApplyEvents is a struct to hold the response from the ConfigApplyEvents API.

type ConfigApplyEventsNode

type ConfigApplyEventsNode struct {
	Node          *string                       `json:"node,omitempty"`
	LastRequestID *string                       `json:"last_request_id,omitempty"`
	Events        []*ConfigApplyEventsNodeEvent `json:"events"`
}

ConfigApplyEventsNode is a struct to hold the response from the ConfigApplyEvents API.

func (*ConfigApplyEventsNode) GetLastRequestID

func (c *ConfigApplyEventsNode) GetLastRequestID() string

GetLastRequestID returns the LastRequestID field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNode) GetNode

func (c *ConfigApplyEventsNode) GetNode() string

GetNode returns the Node field if it's non-nil, zero value otherwise.

type ConfigApplyEventsNodeEvent

type ConfigApplyEventsNodeEvent struct {
	Timestamp    *Timestamp `json:"timestamp,omitempty"`
	SeverityText *string    `json:"severity_text,omitempty"`
	Body         *string    `json:"body,omitempty"`
	EventName    *string    `json:"event_name,omitempty"`
	Topology     *string    `json:"topology,omitempty"`
	Hostname     *string    `json:"hostname,omitempty"`
	ConfigRunID  *string    `json:"config_run_id,omitempty"`
	TraceID      *string    `json:"trace_id,omitempty"`
	SpanID       *string    `json:"span_id,omitempty"`
	SpanParentID *int64     `json:"span_parent_id,omitempty"`
	SpanDepth    *int       `json:"span_depth,omitempty"`
}

ConfigApplyEventsNodeEvent is a struct to hold the response from the ConfigApplyEvents API.

func (*ConfigApplyEventsNodeEvent) GetBody

func (c *ConfigApplyEventsNodeEvent) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetConfigRunID

func (c *ConfigApplyEventsNodeEvent) GetConfigRunID() string

GetConfigRunID returns the ConfigRunID field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetEventName

func (c *ConfigApplyEventsNodeEvent) GetEventName() string

GetEventName returns the EventName field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetHostname

func (c *ConfigApplyEventsNodeEvent) GetHostname() string

GetHostname returns the Hostname field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetSeverityText

func (c *ConfigApplyEventsNodeEvent) GetSeverityText() string

GetSeverityText returns the SeverityText field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetSpanDepth

func (c *ConfigApplyEventsNodeEvent) GetSpanDepth() int

GetSpanDepth returns the SpanDepth field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetSpanID

func (c *ConfigApplyEventsNodeEvent) GetSpanID() string

GetSpanID returns the SpanID field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetSpanParentID

func (c *ConfigApplyEventsNodeEvent) GetSpanParentID() int64

GetSpanParentID returns the SpanParentID field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetTimestamp

func (c *ConfigApplyEventsNodeEvent) GetTimestamp() Timestamp

GetTimestamp returns the Timestamp field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetTopology

func (c *ConfigApplyEventsNodeEvent) GetTopology() string

GetTopology returns the Topology field if it's non-nil, zero value otherwise.

func (*ConfigApplyEventsNodeEvent) GetTraceID

func (c *ConfigApplyEventsNodeEvent) GetTraceID() string

GetTraceID returns the TraceID field if it's non-nil, zero value otherwise.

type ConfigApplyEventsOptions

type ConfigApplyEventsOptions struct {
	LastRequestID *string `url:"last_request_id,omitempty"`
}

ConfigApplyEventsOptions is used to enable pagination.

func (*ConfigApplyEventsOptions) GetLastRequestID

func (c *ConfigApplyEventsOptions) GetLastRequestID() string

GetLastRequestID returns the LastRequestID field if it's non-nil, zero value otherwise.

type ConfigApplyOptions

type ConfigApplyOptions struct {
	// RunID is the ID of the run to get the status of. If empty a random one will be generated.
	RunID *string `json:"run_id,omitempty"`
}

ConfigApplyOptions is a struct to hold the options for the ConfigApply API and the response.

func (*ConfigApplyOptions) GetRunID

func (c *ConfigApplyOptions) GetRunID() string

GetRunID returns the RunID field if it's non-nil, zero value otherwise.

type ConfigApplyStatus

type ConfigApplyStatus struct {
	Running    *bool                    `json:"running,omitempty"`
	Successful *bool                    `json:"successful,omitempty"`
	Nodes      []*ConfigApplyStatusNode `json:"nodes"`
}

ConfigApplyStatus is a struct to hold the response from the ConfigApply API.

func (*ConfigApplyStatus) GetRunning

func (c *ConfigApplyStatus) GetRunning() bool

GetRunning returns the Running field if it's non-nil, zero value otherwise.

func (*ConfigApplyStatus) GetSuccessful

func (c *ConfigApplyStatus) GetSuccessful() bool

GetSuccessful returns the Successful field if it's non-nil, zero value otherwise.

type ConfigApplyStatusNode

type ConfigApplyStatusNode struct {
	Hostname   *string `json:"hostname,omitempty"`
	Running    *bool   `json:"running,omitempty"`
	Successful *bool   `json:"successful,omitempty"`
	RunID      *string `json:"run_id,omitempty"`
}

ConfigApplyStatusNode is a struct to hold the response from the ConfigApply API.

func (*ConfigApplyStatusNode) GetHostname

func (c *ConfigApplyStatusNode) GetHostname() string

GetHostname returns the Hostname field if it's non-nil, zero value otherwise.

func (*ConfigApplyStatusNode) GetRunID

func (c *ConfigApplyStatusNode) GetRunID() string

GetRunID returns the RunID field if it's non-nil, zero value otherwise.

func (*ConfigApplyStatusNode) GetRunning

func (c *ConfigApplyStatusNode) GetRunning() bool

GetRunning returns the Running field if it's non-nil, zero value otherwise.

func (*ConfigApplyStatusNode) GetSuccessful

func (c *ConfigApplyStatusNode) GetSuccessful() bool

GetSuccessful returns the Successful field if it's non-nil, zero value otherwise.

type ConfigSettings

type ConfigSettings struct {
	PrivateMode           *bool                          `json:"private_mode,omitempty"`
	PublicPages           *bool                          `json:"public_pages,omitempty"`
	SubdomainIsolation    *bool                          `json:"subdomain_isolation,omitempty"`
	SignupEnabled         *bool                          `json:"signup_enabled,omitempty"`
	GithubHostname        *string                        `json:"github_hostname,omitempty"`
	IdenticonsHost        *string                        `json:"identicons_host,omitempty"`
	HTTPProxy             *string                        `json:"http_proxy,omitempty"`
	AuthMode              *string                        `json:"auth_mode,omitempty"`
	ExpireSessions        *bool                          `json:"expire_sessions,omitempty"`
	AdminPassword         *string                        `json:"admin_password,omitempty"`
	ConfigurationID       *int64                         `json:"configuration_id,omitempty"`
	ConfigurationRunCount *int                           `json:"configuration_run_count,omitempty"`
	Avatar                *ConfigSettingsAvatar          `json:"avatar,omitempty"`
	Customer              *ConfigSettingsCustomer        `json:"customer,omitempty"`
	License               *ConfigSettingsLicenseSettings `json:"license,omitempty"`
	GithubSSL             *ConfigSettingsGithubSSL       `json:"github_ssl,omitempty"`
	LDAP                  *ConfigSettingsLDAP            `json:"ldap,omitempty"`
	CAS                   *ConfigSettingsCAS             `json:"cas,omitempty"`
	SAML                  *ConfigSettingsSAML            `json:"saml,omitempty"`
	GithubOAuth           *ConfigSettingsGithubOAuth     `json:"github_oauth,omitempty"`
	SMTP                  *ConfigSettingsSMTP            `json:"smtp,omitempty"`
	NTP                   *ConfigSettingsNTP             `json:"ntp,omitempty"`
	Timezone              *string                        `json:"timezone,omitempty"`
	SNMP                  *ConfigSettingsSNMP            `json:"snmp,omitempty"`
	Syslog                *ConfigSettingsSyslog          `json:"syslog,omitempty"`
	Assets                *string                        `json:"assets,omitempty"`
	Pages                 *ConfigSettingsPagesSettings   `json:"pages,omitempty"`
	Collectd              *ConfigSettingsCollectd        `json:"collectd,omitempty"`
	Mapping               *ConfigSettingsMapping         `json:"mapping,omitempty"`
	LoadBalancer          *string                        `json:"load_balancer,omitempty"`
}

ConfigSettings is a struct to hold the response from the Settings API. There are many fields that link to other structs.

func (*ConfigSettings) GetAdminPassword

func (c *ConfigSettings) GetAdminPassword() string

GetAdminPassword returns the AdminPassword field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetAssets

func (c *ConfigSettings) GetAssets() string

GetAssets returns the Assets field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetAuthMode

func (c *ConfigSettings) GetAuthMode() string

GetAuthMode returns the AuthMode field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetAvatar

func (c *ConfigSettings) GetAvatar() *ConfigSettingsAvatar

GetAvatar returns the Avatar field.

func (*ConfigSettings) GetCAS

func (c *ConfigSettings) GetCAS() *ConfigSettingsCAS

GetCAS returns the CAS field.

func (*ConfigSettings) GetCollectd

func (c *ConfigSettings) GetCollectd() *ConfigSettingsCollectd

GetCollectd returns the Collectd field.

func (*ConfigSettings) GetConfigurationID

func (c *ConfigSettings) GetConfigurationID() int64

GetConfigurationID returns the ConfigurationID field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetConfigurationRunCount

func (c *ConfigSettings) GetConfigurationRunCount() int

GetConfigurationRunCount returns the ConfigurationRunCount field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetCustomer

func (c *ConfigSettings) GetCustomer() *ConfigSettingsCustomer

GetCustomer returns the Customer field.

func (*ConfigSettings) GetExpireSessions

func (c *ConfigSettings) GetExpireSessions() bool

GetExpireSessions returns the ExpireSessions field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetGithubHostname

func (c *ConfigSettings) GetGithubHostname() string

GetGithubHostname returns the GithubHostname field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetGithubOAuth

func (c *ConfigSettings) GetGithubOAuth() *ConfigSettingsGithubOAuth

GetGithubOAuth returns the GithubOAuth field.

func (*ConfigSettings) GetGithubSSL

func (c *ConfigSettings) GetGithubSSL() *ConfigSettingsGithubSSL

GetGithubSSL returns the GithubSSL field.

func (*ConfigSettings) GetHTTPProxy

func (c *ConfigSettings) GetHTTPProxy() string

GetHTTPProxy returns the HTTPProxy field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetIdenticonsHost

func (c *ConfigSettings) GetIdenticonsHost() string

GetIdenticonsHost returns the IdenticonsHost field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetLDAP

func (c *ConfigSettings) GetLDAP() *ConfigSettingsLDAP

GetLDAP returns the LDAP field.

func (*ConfigSettings) GetLicense

GetLicense returns the License field.

func (*ConfigSettings) GetLoadBalancer

func (c *ConfigSettings) GetLoadBalancer() string

GetLoadBalancer returns the LoadBalancer field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetMapping

func (c *ConfigSettings) GetMapping() *ConfigSettingsMapping

GetMapping returns the Mapping field.

func (*ConfigSettings) GetNTP

func (c *ConfigSettings) GetNTP() *ConfigSettingsNTP

GetNTP returns the NTP field.

func (*ConfigSettings) GetPages

GetPages returns the Pages field.

func (*ConfigSettings) GetPrivateMode

func (c *ConfigSettings) GetPrivateMode() bool

GetPrivateMode returns the PrivateMode field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetPublicPages

func (c *ConfigSettings) GetPublicPages() bool

GetPublicPages returns the PublicPages field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetSAML

func (c *ConfigSettings) GetSAML() *ConfigSettingsSAML

GetSAML returns the SAML field.

func (*ConfigSettings) GetSMTP

func (c *ConfigSettings) GetSMTP() *ConfigSettingsSMTP

GetSMTP returns the SMTP field.

func (*ConfigSettings) GetSNMP

func (c *ConfigSettings) GetSNMP() *ConfigSettingsSNMP

GetSNMP returns the SNMP field.

func (*ConfigSettings) GetSignupEnabled

func (c *ConfigSettings) GetSignupEnabled() bool

GetSignupEnabled returns the SignupEnabled field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetSubdomainIsolation

func (c *ConfigSettings) GetSubdomainIsolation() bool

GetSubdomainIsolation returns the SubdomainIsolation field if it's non-nil, zero value otherwise.

func (*ConfigSettings) GetSyslog

func (c *ConfigSettings) GetSyslog() *ConfigSettingsSyslog

GetSyslog returns the Syslog field.

func (*ConfigSettings) GetTimezone

func (c *ConfigSettings) GetTimezone() string

GetTimezone returns the Timezone field if it's non-nil, zero value otherwise.

type ConfigSettingsAvatar

type ConfigSettingsAvatar struct {
	Enabled *bool   `json:"enabled,omitempty"`
	URI     *string `json:"uri,omitempty"`
}

ConfigSettingsAvatar is a struct to hold the response from the Settings API.

func (*ConfigSettingsAvatar) GetEnabled

func (c *ConfigSettingsAvatar) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

func (*ConfigSettingsAvatar) GetURI

func (c *ConfigSettingsAvatar) GetURI() string

GetURI returns the URI field if it's non-nil, zero value otherwise.

type ConfigSettingsCAS

type ConfigSettingsCAS struct {
	URL *string `json:"url,omitempty"`
}

ConfigSettingsCAS is a struct to hold the response from the Settings API.

func (*ConfigSettingsCAS) GetURL

func (c *ConfigSettingsCAS) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

type ConfigSettingsCollectd

type ConfigSettingsCollectd struct {
	Enabled    *bool   `json:"enabled,omitempty"`
	Server     *string `json:"server,omitempty"`
	Port       *int    `json:"port,omitempty"`
	Encryption *string `json:"encryption,omitempty"`
	Username   *string `json:"username,omitempty"`
	Password   *string `json:"password,omitempty"`
}

ConfigSettingsCollectd is a struct to hold the response from the Settings API.

func (*ConfigSettingsCollectd) GetEnabled

func (c *ConfigSettingsCollectd) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

func (*ConfigSettingsCollectd) GetEncryption

func (c *ConfigSettingsCollectd) GetEncryption() string

GetEncryption returns the Encryption field if it's non-nil, zero value otherwise.

func (*ConfigSettingsCollectd) GetPassword

func (c *ConfigSettingsCollectd) GetPassword() string

GetPassword returns the Password field if it's non-nil, zero value otherwise.

func (*ConfigSettingsCollectd) GetPort

func (c *ConfigSettingsCollectd) GetPort() int

GetPort returns the Port field if it's non-nil, zero value otherwise.

func (*ConfigSettingsCollectd) GetServer

func (c *ConfigSettingsCollectd) GetServer() string

GetServer returns the Server field if it's non-nil, zero value otherwise.

func (*ConfigSettingsCollectd) GetUsername

func (c *ConfigSettingsCollectd) GetUsername() string

GetUsername returns the Username field if it's non-nil, zero value otherwise.

type ConfigSettingsCustomer

type ConfigSettingsCustomer struct {
	Name          *string `json:"name,omitempty"`
	Email         *string `json:"email,omitempty"`
	UUID          *string `json:"uuid,omitempty"`
	Secret        *string `json:"secret,omitempty"`
	PublicKeyData *string `json:"public_key_data,omitempty"`
}

ConfigSettingsCustomer is a struct to hold the response from the Settings API.

func (*ConfigSettingsCustomer) GetEmail

func (c *ConfigSettingsCustomer) GetEmail() string

GetEmail returns the Email field if it's non-nil, zero value otherwise.

func (*ConfigSettingsCustomer) GetName

func (c *ConfigSettingsCustomer) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*ConfigSettingsCustomer) GetPublicKeyData

func (c *ConfigSettingsCustomer) GetPublicKeyData() string

GetPublicKeyData returns the PublicKeyData field if it's non-nil, zero value otherwise.

func (*ConfigSettingsCustomer) GetSecret

func (c *ConfigSettingsCustomer) GetSecret() string

GetSecret returns the Secret field if it's non-nil, zero value otherwise.

func (*ConfigSettingsCustomer) GetUUID

func (c *ConfigSettingsCustomer) GetUUID() string

GetUUID returns the UUID field if it's non-nil, zero value otherwise.

type ConfigSettingsGithubOAuth

type ConfigSettingsGithubOAuth struct {
	ClientID         *string `json:"client_id,omitempty"`
	ClientSecret     *string `json:"client_secret,omitempty"`
	OrganizationName *string `json:"organization_name,omitempty"`
	OrganizationTeam *string `json:"organization_team,omitempty"`
}

ConfigSettingsGithubOAuth is a struct to hold the response from the Settings API.

func (*ConfigSettingsGithubOAuth) GetClientID

func (c *ConfigSettingsGithubOAuth) GetClientID() string

GetClientID returns the ClientID field if it's non-nil, zero value otherwise.

func (*ConfigSettingsGithubOAuth) GetClientSecret

func (c *ConfigSettingsGithubOAuth) GetClientSecret() string

GetClientSecret returns the ClientSecret field if it's non-nil, zero value otherwise.

func (*ConfigSettingsGithubOAuth) GetOrganizationName

func (c *ConfigSettingsGithubOAuth) GetOrganizationName() string

GetOrganizationName returns the OrganizationName field if it's non-nil, zero value otherwise.

func (*ConfigSettingsGithubOAuth) GetOrganizationTeam

func (c *ConfigSettingsGithubOAuth) GetOrganizationTeam() string

GetOrganizationTeam returns the OrganizationTeam field if it's non-nil, zero value otherwise.

type ConfigSettingsGithubSSL

type ConfigSettingsGithubSSL struct {
	Enabled *bool   `json:"enabled,omitempty"`
	Cert    *string `json:"cert,omitempty"`
	Key     *string `json:"key,omitempty"`
}

ConfigSettingsGithubSSL is a struct to hold the response from the Settings API.

func (*ConfigSettingsGithubSSL) GetCert

func (c *ConfigSettingsGithubSSL) GetCert() string

GetCert returns the Cert field if it's non-nil, zero value otherwise.

func (*ConfigSettingsGithubSSL) GetEnabled

func (c *ConfigSettingsGithubSSL) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

func (*ConfigSettingsGithubSSL) GetKey

func (c *ConfigSettingsGithubSSL) GetKey() string

GetKey returns the Key field if it's non-nil, zero value otherwise.

type ConfigSettingsLDAP

type ConfigSettingsLDAP struct {
	Host                    *string                           `json:"host,omitempty"`
	Port                    *int                              `json:"port,omitempty"`
	Base                    []string                          `json:"base,omitempty"`
	UID                     *string                           `json:"uid,omitempty"`
	BindDN                  *string                           `json:"bind_dn,omitempty"`
	Password                *string                           `json:"password,omitempty"`
	Method                  *string                           `json:"method,omitempty"`
	SearchStrategy          *string                           `json:"search_strategy,omitempty"`
	UserGroups              []string                          `json:"user_groups,omitempty"`
	AdminGroup              *string                           `json:"admin_group,omitempty"`
	VirtualAttributeEnabled *bool                             `json:"virtual_attribute_enabled,omitempty"`
	RecursiveGroupSearch    *bool                             `json:"recursive_group_search,omitempty"`
	PosixSupport            *bool                             `json:"posix_support,omitempty"`
	UserSyncEmails          *bool                             `json:"user_sync_emails,omitempty"`
	UserSyncKeys            *bool                             `json:"user_sync_keys,omitempty"`
	UserSyncInterval        *int                              `json:"user_sync_interval,omitempty"`
	TeamSyncInterval        *int                              `json:"team_sync_interval,omitempty"`
	SyncEnabled             *bool                             `json:"sync_enabled,omitempty"`
	Reconciliation          *ConfigSettingsLDAPReconciliation `json:"reconciliation,omitempty"`
	Profile                 *ConfigSettingsLDAPProfile        `json:"profile,omitempty"`
}

ConfigSettingsLDAP is a struct to hold the response from the Settings API.

func (*ConfigSettingsLDAP) GetAdminGroup

func (c *ConfigSettingsLDAP) GetAdminGroup() string

GetAdminGroup returns the AdminGroup field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetBindDN

func (c *ConfigSettingsLDAP) GetBindDN() string

GetBindDN returns the BindDN field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetHost

func (c *ConfigSettingsLDAP) GetHost() string

GetHost returns the Host field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetMethod

func (c *ConfigSettingsLDAP) GetMethod() string

GetMethod returns the Method field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetPassword

func (c *ConfigSettingsLDAP) GetPassword() string

GetPassword returns the Password field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetPort

func (c *ConfigSettingsLDAP) GetPort() int

GetPort returns the Port field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetPosixSupport

func (c *ConfigSettingsLDAP) GetPosixSupport() bool

GetPosixSupport returns the PosixSupport field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetProfile

GetProfile returns the Profile field.

func (*ConfigSettingsLDAP) GetReconciliation

func (c *ConfigSettingsLDAP) GetReconciliation() *ConfigSettingsLDAPReconciliation

GetReconciliation returns the Reconciliation field.

func (*ConfigSettingsLDAP) GetRecursiveGroupSearch

func (c *ConfigSettingsLDAP) GetRecursiveGroupSearch() bool

GetRecursiveGroupSearch returns the RecursiveGroupSearch field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetSearchStrategy

func (c *ConfigSettingsLDAP) GetSearchStrategy() string

GetSearchStrategy returns the SearchStrategy field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetSyncEnabled

func (c *ConfigSettingsLDAP) GetSyncEnabled() bool

GetSyncEnabled returns the SyncEnabled field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetTeamSyncInterval

func (c *ConfigSettingsLDAP) GetTeamSyncInterval() int

GetTeamSyncInterval returns the TeamSyncInterval field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetUID

func (c *ConfigSettingsLDAP) GetUID() string

GetUID returns the UID field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetUserSyncEmails

func (c *ConfigSettingsLDAP) GetUserSyncEmails() bool

GetUserSyncEmails returns the UserSyncEmails field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetUserSyncInterval

func (c *ConfigSettingsLDAP) GetUserSyncInterval() int

GetUserSyncInterval returns the UserSyncInterval field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetUserSyncKeys

func (c *ConfigSettingsLDAP) GetUserSyncKeys() bool

GetUserSyncKeys returns the UserSyncKeys field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAP) GetVirtualAttributeEnabled

func (c *ConfigSettingsLDAP) GetVirtualAttributeEnabled() bool

GetVirtualAttributeEnabled returns the VirtualAttributeEnabled field if it's non-nil, zero value otherwise.

type ConfigSettingsLDAPProfile

type ConfigSettingsLDAPProfile struct {
	UID  *string `json:"uid,omitempty"`
	Name *string `json:"name,omitempty"`
	Mail *string `json:"mail,omitempty"`
	Key  *string `json:"key,omitempty"`
}

ConfigSettingsLDAPProfile is part of the ConfigSettingsLDAP struct.

func (*ConfigSettingsLDAPProfile) GetKey

func (c *ConfigSettingsLDAPProfile) GetKey() string

GetKey returns the Key field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAPProfile) GetMail

func (c *ConfigSettingsLDAPProfile) GetMail() string

GetMail returns the Mail field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAPProfile) GetName

func (c *ConfigSettingsLDAPProfile) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAPProfile) GetUID

func (c *ConfigSettingsLDAPProfile) GetUID() string

GetUID returns the UID field if it's non-nil, zero value otherwise.

type ConfigSettingsLDAPReconciliation

type ConfigSettingsLDAPReconciliation struct {
	User *string `json:"user,omitempty"`
	Org  *string `json:"org,omitempty"`
}

ConfigSettingsLDAPReconciliation is part of the ConfigSettingsLDAP struct.

func (*ConfigSettingsLDAPReconciliation) GetOrg

GetOrg returns the Org field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLDAPReconciliation) GetUser

GetUser returns the User field if it's non-nil, zero value otherwise.

type ConfigSettingsLicenseSettings

type ConfigSettingsLicenseSettings struct {
	Seats            *int       `json:"seats,omitempty"`
	Evaluation       *bool      `json:"evaluation,omitempty"`
	Perpetual        *bool      `json:"perpetual,omitempty"`
	UnlimitedSeating *bool      `json:"unlimited_seating,omitempty"`
	SupportKey       *string    `json:"support_key,omitempty"`
	SSHAllowed       *bool      `json:"ssh_allowed,omitempty"`
	ClusterSupport   *bool      `json:"cluster_support,omitempty"`
	ExpireAt         *Timestamp `json:"expire_at,omitempty"`
}

ConfigSettingsLicenseSettings is a struct to hold the response from the Settings API.

func (*ConfigSettingsLicenseSettings) GetClusterSupport

func (c *ConfigSettingsLicenseSettings) GetClusterSupport() bool

GetClusterSupport returns the ClusterSupport field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLicenseSettings) GetEvaluation

func (c *ConfigSettingsLicenseSettings) GetEvaluation() bool

GetEvaluation returns the Evaluation field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLicenseSettings) GetExpireAt

func (c *ConfigSettingsLicenseSettings) GetExpireAt() Timestamp

GetExpireAt returns the ExpireAt field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLicenseSettings) GetPerpetual

func (c *ConfigSettingsLicenseSettings) GetPerpetual() bool

GetPerpetual returns the Perpetual field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLicenseSettings) GetSSHAllowed

func (c *ConfigSettingsLicenseSettings) GetSSHAllowed() bool

GetSSHAllowed returns the SSHAllowed field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLicenseSettings) GetSeats

func (c *ConfigSettingsLicenseSettings) GetSeats() int

GetSeats returns the Seats field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLicenseSettings) GetSupportKey

func (c *ConfigSettingsLicenseSettings) GetSupportKey() string

GetSupportKey returns the SupportKey field if it's non-nil, zero value otherwise.

func (*ConfigSettingsLicenseSettings) GetUnlimitedSeating

func (c *ConfigSettingsLicenseSettings) GetUnlimitedSeating() bool

GetUnlimitedSeating returns the UnlimitedSeating field if it's non-nil, zero value otherwise.

type ConfigSettingsMapping

type ConfigSettingsMapping struct {
	Enabled    *bool   `json:"enabled,omitempty"`
	Tileserver *string `json:"tileserver,omitempty"`
	Basemap    *string `json:"basemap,omitempty"`
	Token      *string `json:"token,omitempty"`
}

ConfigSettingsMapping is a struct to hold the response from the Settings API.

func (*ConfigSettingsMapping) GetBasemap

func (c *ConfigSettingsMapping) GetBasemap() string

GetBasemap returns the Basemap field if it's non-nil, zero value otherwise.

func (*ConfigSettingsMapping) GetEnabled

func (c *ConfigSettingsMapping) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

func (*ConfigSettingsMapping) GetTileserver

func (c *ConfigSettingsMapping) GetTileserver() string

GetTileserver returns the Tileserver field if it's non-nil, zero value otherwise.

func (*ConfigSettingsMapping) GetToken

func (c *ConfigSettingsMapping) GetToken() string

GetToken returns the Token field if it's non-nil, zero value otherwise.

type ConfigSettingsNTP

type ConfigSettingsNTP struct {
	PrimaryServer   *string `json:"primary_server,omitempty"`
	SecondaryServer *string `json:"secondary_server,omitempty"`
}

ConfigSettingsNTP is a struct to hold the response from the Settings API.

func (*ConfigSettingsNTP) GetPrimaryServer

func (c *ConfigSettingsNTP) GetPrimaryServer() string

GetPrimaryServer returns the PrimaryServer field if it's non-nil, zero value otherwise.

func (*ConfigSettingsNTP) GetSecondaryServer

func (c *ConfigSettingsNTP) GetSecondaryServer() string

GetSecondaryServer returns the SecondaryServer field if it's non-nil, zero value otherwise.

type ConfigSettingsPagesSettings

type ConfigSettingsPagesSettings struct {
	Enabled *bool `json:"enabled,omitempty"`
}

ConfigSettingsPagesSettings is a struct to hold the response from the Settings API.

func (*ConfigSettingsPagesSettings) GetEnabled

func (c *ConfigSettingsPagesSettings) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

type ConfigSettingsSAML

type ConfigSettingsSAML struct {
	SSOURL             *string `json:"sso_url,omitempty"`
	Certificate        *string `json:"certificate,omitempty"`
	CertificatePath    *string `json:"certificate_path,omitempty"`
	Issuer             *string `json:"issuer,omitempty"`
	IDPInitiatedSSO    *bool   `json:"idp_initiated_sso,omitempty"`
	DisableAdminDemote *bool   `json:"disable_admin_demote,omitempty"`
}

ConfigSettingsSAML is a struct to hold the response from the Settings API.

func (*ConfigSettingsSAML) GetCertificate

func (c *ConfigSettingsSAML) GetCertificate() string

GetCertificate returns the Certificate field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSAML) GetCertificatePath

func (c *ConfigSettingsSAML) GetCertificatePath() string

GetCertificatePath returns the CertificatePath field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSAML) GetDisableAdminDemote

func (c *ConfigSettingsSAML) GetDisableAdminDemote() bool

GetDisableAdminDemote returns the DisableAdminDemote field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSAML) GetIDPInitiatedSSO

func (c *ConfigSettingsSAML) GetIDPInitiatedSSO() bool

GetIDPInitiatedSSO returns the IDPInitiatedSSO field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSAML) GetIssuer

func (c *ConfigSettingsSAML) GetIssuer() string

GetIssuer returns the Issuer field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSAML) GetSSOURL

func (c *ConfigSettingsSAML) GetSSOURL() string

GetSSOURL returns the SSOURL field if it's non-nil, zero value otherwise.

type ConfigSettingsSMTP

type ConfigSettingsSMTP struct {
	Enabled                 *bool   `json:"enabled,omitempty"`
	Address                 *string `json:"address,omitempty"`
	Authentication          *string `json:"authentication,omitempty"`
	Port                    *string `json:"port,omitempty"`
	Domain                  *string `json:"domain,omitempty"`
	Username                *string `json:"username,omitempty"`
	UserName                *string `json:"user_name,omitempty"`
	EnableStarttlsAuto      *bool   `json:"enable_starttls_auto,omitempty"`
	Password                *string `json:"password,omitempty"`
	DiscardToNoreplyAddress *bool   `json:"discard-to-noreply-address,omitempty"`
	SupportAddress          *string `json:"support_address,omitempty"`
	SupportAddressType      *string `json:"support_address_type,omitempty"`
	NoreplyAddress          *string `json:"noreply_address,omitempty"`
}

ConfigSettingsSMTP is a struct to hold the response from the Settings API.

func (*ConfigSettingsSMTP) GetAddress

func (c *ConfigSettingsSMTP) GetAddress() string

GetAddress returns the Address field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetAuthentication

func (c *ConfigSettingsSMTP) GetAuthentication() string

GetAuthentication returns the Authentication field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetDiscardToNoreplyAddress

func (c *ConfigSettingsSMTP) GetDiscardToNoreplyAddress() bool

GetDiscardToNoreplyAddress returns the DiscardToNoreplyAddress field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetDomain

func (c *ConfigSettingsSMTP) GetDomain() string

GetDomain returns the Domain field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetEnableStarttlsAuto

func (c *ConfigSettingsSMTP) GetEnableStarttlsAuto() bool

GetEnableStarttlsAuto returns the EnableStarttlsAuto field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetEnabled

func (c *ConfigSettingsSMTP) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetNoreplyAddress

func (c *ConfigSettingsSMTP) GetNoreplyAddress() string

GetNoreplyAddress returns the NoreplyAddress field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetPassword

func (c *ConfigSettingsSMTP) GetPassword() string

GetPassword returns the Password field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetPort

func (c *ConfigSettingsSMTP) GetPort() string

GetPort returns the Port field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetSupportAddress

func (c *ConfigSettingsSMTP) GetSupportAddress() string

GetSupportAddress returns the SupportAddress field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetSupportAddressType

func (c *ConfigSettingsSMTP) GetSupportAddressType() string

GetSupportAddressType returns the SupportAddressType field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetUserName

func (c *ConfigSettingsSMTP) GetUserName() string

GetUserName returns the UserName field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSMTP) GetUsername

func (c *ConfigSettingsSMTP) GetUsername() string

GetUsername returns the Username field if it's non-nil, zero value otherwise.

type ConfigSettingsSNMP

type ConfigSettingsSNMP struct {
	Enabled   *bool   `json:"enabled,omitempty"`
	Community *string `json:"community,omitempty"`
}

ConfigSettingsSNMP is a struct to hold the response from the Settings API.

func (*ConfigSettingsSNMP) GetCommunity

func (c *ConfigSettingsSNMP) GetCommunity() string

GetCommunity returns the Community field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSNMP) GetEnabled

func (c *ConfigSettingsSNMP) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

type ConfigSettingsSyslog

type ConfigSettingsSyslog struct {
	Enabled      *bool   `json:"enabled,omitempty"`
	Server       *string `json:"server,omitempty"`
	ProtocolName *string `json:"protocol_name,omitempty"`
}

ConfigSettingsSyslog is a struct to hold the response from the Settings API.

func (*ConfigSettingsSyslog) GetEnabled

func (c *ConfigSettingsSyslog) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSyslog) GetProtocolName

func (c *ConfigSettingsSyslog) GetProtocolName() string

GetProtocolName returns the ProtocolName field if it's non-nil, zero value otherwise.

func (*ConfigSettingsSyslog) GetServer

func (c *ConfigSettingsSyslog) GetServer() string

GetServer returns the Server field if it's non-nil, zero value otherwise.

type ConnectionServiceItem

type ConnectionServiceItem struct {
	Name   *string `json:"name,omitempty"`
	Number *int    `json:"number,omitempty"`
}

ConnectionServiceItem represents the connection services for the maintenance status.

func (*ConnectionServiceItem) GetName

func (c *ConnectionServiceItem) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*ConnectionServiceItem) GetNumber

func (c *ConnectionServiceItem) GetNumber() int

GetNumber returns the Number field if it's non-nil, zero value otherwise.

type ContentReference

type ContentReference struct {
	ID        *int64  `json:"id,omitempty"`
	NodeID    *string `json:"node_id,omitempty"`
	Reference *string `json:"reference,omitempty"`
}

ContentReference represents a reference to a URL in an issue or pull request.

func (*ContentReference) GetID

func (c *ContentReference) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*ContentReference) GetNodeID

func (c *ContentReference) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*ContentReference) GetReference

func (c *ContentReference) GetReference() string

GetReference returns the Reference field if it's non-nil, zero value otherwise.

type ContentReferenceEvent

type ContentReferenceEvent struct {
	Action           *string           `json:"action,omitempty"`
	ContentReference *ContentReference `json:"content_reference,omitempty"`
	Repo             *Repository       `json:"repository,omitempty"`
	Sender           *User             `json:"sender,omitempty"`
	Installation     *Installation     `json:"installation,omitempty"`
}

ContentReferenceEvent is triggered when the body or comment of an issue or pull request includes a URL that matches a configured content reference domain. The Webhook event name is "content_reference".

GitHub API docs: https://developer.github.com/webhooks/event-payloads/#content_reference

func (*ContentReferenceEvent) GetAction

func (c *ContentReferenceEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*ContentReferenceEvent) GetContentReference

func (c *ContentReferenceEvent) GetContentReference() *ContentReference

GetContentReference returns the ContentReference field.

func (*ContentReferenceEvent) GetInstallation

func (c *ContentReferenceEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*ContentReferenceEvent) GetRepo

func (c *ContentReferenceEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*ContentReferenceEvent) GetSender

func (c *ContentReferenceEvent) GetSender() *User

GetSender returns the Sender field.

type Contributor

type Contributor struct {
	Login             *string `json:"login,omitempty"`
	ID                *int64  `json:"id,omitempty"`
	NodeID            *string `json:"node_id,omitempty"`
	AvatarURL         *string `json:"avatar_url,omitempty"`
	GravatarID        *string `json:"gravatar_id,omitempty"`
	URL               *string `json:"url,omitempty"`
	HTMLURL           *string `json:"html_url,omitempty"`
	FollowersURL      *string `json:"followers_url,omitempty"`
	FollowingURL      *string `json:"following_url,omitempty"`
	GistsURL          *string `json:"gists_url,omitempty"`
	StarredURL        *string `json:"starred_url,omitempty"`
	SubscriptionsURL  *string `json:"subscriptions_url,omitempty"`
	OrganizationsURL  *string `json:"organizations_url,omitempty"`
	ReposURL          *string `json:"repos_url,omitempty"`
	EventsURL         *string `json:"events_url,omitempty"`
	ReceivedEventsURL *string `json:"received_events_url,omitempty"`
	Type              *string `json:"type,omitempty"`
	SiteAdmin         *bool   `json:"site_admin,omitempty"`
	Contributions     *int    `json:"contributions,omitempty"`
	Name              *string `json:"name,omitempty"`
	Email             *string `json:"email,omitempty"`
}

Contributor represents a repository contributor.

func (*Contributor) GetAvatarURL

func (c *Contributor) GetAvatarURL() string

GetAvatarURL returns the AvatarURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetContributions

func (c *Contributor) GetContributions() int

GetContributions returns the Contributions field if it's non-nil, zero value otherwise.

func (*Contributor) GetEmail

func (c *Contributor) GetEmail() string

GetEmail returns the Email field if it's non-nil, zero value otherwise.

func (*Contributor) GetEventsURL

func (c *Contributor) GetEventsURL() string

GetEventsURL returns the EventsURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetFollowersURL

func (c *Contributor) GetFollowersURL() string

GetFollowersURL returns the FollowersURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetFollowingURL

func (c *Contributor) GetFollowingURL() string

GetFollowingURL returns the FollowingURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetGistsURL

func (c *Contributor) GetGistsURL() string

GetGistsURL returns the GistsURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetGravatarID

func (c *Contributor) GetGravatarID() string

GetGravatarID returns the GravatarID field if it's non-nil, zero value otherwise.

func (*Contributor) GetHTMLURL

func (c *Contributor) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetID

func (c *Contributor) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Contributor) GetLogin

func (c *Contributor) GetLogin() string

GetLogin returns the Login field if it's non-nil, zero value otherwise.

func (*Contributor) GetName

func (c *Contributor) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*Contributor) GetNodeID

func (c *Contributor) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Contributor) GetOrganizationsURL

func (c *Contributor) GetOrganizationsURL() string

GetOrganizationsURL returns the OrganizationsURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetReceivedEventsURL

func (c *Contributor) GetReceivedEventsURL() string

GetReceivedEventsURL returns the ReceivedEventsURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetReposURL

func (c *Contributor) GetReposURL() string

GetReposURL returns the ReposURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetSiteAdmin

func (c *Contributor) GetSiteAdmin() bool

GetSiteAdmin returns the SiteAdmin field if it's non-nil, zero value otherwise.

func (*Contributor) GetStarredURL

func (c *Contributor) GetStarredURL() string

GetStarredURL returns the StarredURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetSubscriptionsURL

func (c *Contributor) GetSubscriptionsURL() string

GetSubscriptionsURL returns the SubscriptionsURL field if it's non-nil, zero value otherwise.

func (*Contributor) GetType

func (c *Contributor) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

func (*Contributor) GetURL

func (c *Contributor) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

type ContributorStats

type ContributorStats struct {
	Author *Contributor   `json:"author,omitempty"`
	Total  *int           `json:"total,omitempty"`
	Weeks  []*WeeklyStats `json:"weeks,omitempty"`
}

ContributorStats represents a contributor to a repository and their weekly contributions to a given repo.

func (*ContributorStats) GetAuthor

func (c *ContributorStats) GetAuthor() *Contributor

GetAuthor returns the Author field.

func (*ContributorStats) GetTotal

func (c *ContributorStats) GetTotal() int

GetTotal returns the Total field if it's non-nil, zero value otherwise.

func (ContributorStats) String

func (c ContributorStats) String() string

type CopilotDotcomChat

type CopilotDotcomChat struct {
	TotalEngagedUsers int                       `json:"total_engaged_users"`
	Models            []*CopilotDotcomChatModel `json:"models"`
}

CopilotDotcomChat represents Copilot usage metrics for Copilot Chat in the webbrowser, categorized by model.

type CopilotDotcomChatModel

type CopilotDotcomChatModel struct {
	Name                    string  `json:"name"`
	IsCustomModel           bool    `json:"is_custom_model"`
	CustomModelTrainingDate *string `json:"custom_model_training_date,omitempty"`
	TotalEngagedUsers       int     `json:"total_engaged_users"`
	TotalChats              int     `json:"total_chats"`
}

CopilotDotcomChatModel represents Copilot usage metrics for chatting with a model in the webbrowser.

func (*CopilotDotcomChatModel) GetCustomModelTrainingDate

func (c *CopilotDotcomChatModel) GetCustomModelTrainingDate() string

GetCustomModelTrainingDate returns the CustomModelTrainingDate field if it's non-nil, zero value otherwise.

type CopilotDotcomPullRequests

type CopilotDotcomPullRequests struct {
	TotalEngagedUsers int                                    `json:"total_engaged_users"`
	Repositories      []*CopilotDotcomPullRequestsRepository `json:"repositories"`
}

CopilotDotcomPullRequests represents Copilot usage metrics for pull requests in the webbrowser, categorized by repository and model.

type CopilotDotcomPullRequestsModel

type CopilotDotcomPullRequestsModel struct {
	Name                    string  `json:"name"`
	IsCustomModel           bool    `json:"is_custom_model"`
	CustomModelTrainingDate *string `json:"custom_model_training_date,omitempty"`
	TotalPRSummariesCreated int     `json:"total_pr_summaries_created"`
	TotalEngagedUsers       int     `json:"total_engaged_users"`
}

CopilotDotcomPullRequestsModel represents Copilot usage metrics for pull requests in the webbrowser, categorized by model.

func (*CopilotDotcomPullRequestsModel) GetCustomModelTrainingDate

func (c *CopilotDotcomPullRequestsModel) GetCustomModelTrainingDate() string

GetCustomModelTrainingDate returns the CustomModelTrainingDate field if it's non-nil, zero value otherwise.

type CopilotDotcomPullRequestsRepository

type CopilotDotcomPullRequestsRepository struct {
	Name              string                            `json:"name"`
	TotalEngagedUsers int                               `json:"total_engaged_users"`
	Models            []*CopilotDotcomPullRequestsModel `json:"models"`
}

CopilotDotcomPullRequestsRepository represents Copilot usage metrics for pull requests in the webbrowser, categorized by repository.

type CopilotIDEChat

type CopilotIDEChat struct {
	TotalEngagedUsers int                     `json:"total_engaged_users"`
	Editors           []*CopilotIDEChatEditor `json:"editors"`
}

CopilotIDEChat represents Copilot usage metrics for Copilot Chat in the IDE, categorized by editor and model.

type CopilotIDEChatEditor

type CopilotIDEChatEditor struct {
	Name              string                 `json:"name"`
	TotalEngagedUsers int                    `json:"total_engaged_users"`
	Models            []*CopilotIDEChatModel `json:"models"`
}

CopilotIDEChatEditor represents Copilot usage metrics for chatting with a model in the IDE, categorized by editor and model.

type CopilotIDEChatModel

type CopilotIDEChatModel struct {
	Name                     string  `json:"name"`
	IsCustomModel            bool    `json:"is_custom_model"`
	CustomModelTrainingDate  *string `json:"custom_model_training_date,omitempty"`
	TotalEngagedUsers        int     `json:"total_engaged_users"`
	TotalChats               int     `json:"total_chats"`
	TotalChatInsertionEvents int     `json:"total_chat_insertion_events"`
	TotalChatCopyEvents      int     `json:"total_chat_copy_events"`
}

CopilotIDEChatModel represents Copilot usage metrics for chatting with a model in the IDE.

func (*CopilotIDEChatModel) GetCustomModelTrainingDate

func (c *CopilotIDEChatModel) GetCustomModelTrainingDate() string

GetCustomModelTrainingDate returns the CustomModelTrainingDate field if it's non-nil, zero value otherwise.

type CopilotIDECodeCompletions

type CopilotIDECodeCompletions struct {
	TotalEngagedUsers int                                  `json:"total_engaged_users"`
	Languages         []*CopilotIDECodeCompletionsLanguage `json:"languages"`
	Editors           []*CopilotIDECodeCompletionsEditor   `json:"editors"`
}

CopilotIDECodeCompletions represents Copilot usage metrics for Copilot code completions in the IDE, categorized by editor, model and language.

type CopilotIDECodeCompletionsEditor

type CopilotIDECodeCompletionsEditor struct {
	Name              string                            `json:"name"`
	TotalEngagedUsers int                               `json:"total_engaged_users"`
	Models            []*CopilotIDECodeCompletionsModel `json:"models"`
}

CopilotIDECodeCompletionsEditor represents Copilot usage metrics for completions in the IDE for an editor.

type CopilotIDECodeCompletionsLanguage

type CopilotIDECodeCompletionsLanguage struct {
	Name              string `json:"name"`
	TotalEngagedUsers int    `json:"total_engaged_users"`
}

CopilotIDECodeCompletionsLanguage represents Copilot usage metrics for completions in the IDE for a language.

type CopilotIDECodeCompletionsModel

type CopilotIDECodeCompletionsModel struct {
	Name                    string                                    `json:"name"`
	IsCustomModel           bool                                      `json:"is_custom_model"`
	CustomModelTrainingDate *string                                   `json:"custom_model_training_date,omitempty"`
	TotalEngagedUsers       int                                       `json:"total_engaged_users"`
	Languages               []*CopilotIDECodeCompletionsModelLanguage `json:"languages"`
}

CopilotIDECodeCompletionsModel represents Copilot usage metrics for completions in the IDE for a model.

func (*CopilotIDECodeCompletionsModel) GetCustomModelTrainingDate

func (c *CopilotIDECodeCompletionsModel) GetCustomModelTrainingDate() string

GetCustomModelTrainingDate returns the CustomModelTrainingDate field if it's non-nil, zero value otherwise.

type CopilotIDECodeCompletionsModelLanguage

type CopilotIDECodeCompletionsModelLanguage struct {
	Name                    string `json:"name"`
	TotalEngagedUsers       int    `json:"total_engaged_users"`
	TotalCodeSuggestions    int    `json:"total_code_suggestions"`
	TotalCodeAcceptances    int    `json:"total_code_acceptances"`
	TotalCodeLinesSuggested int    `json:"total_code_lines_suggested"`
	TotalCodeLinesAccepted  int    `json:"total_code_lines_accepted"`
}

CopilotIDECodeCompletionsModelLanguage represents Copilot usage metrics for completions in the IDE for a model and language.

type CopilotMetrics

type CopilotMetrics struct {
	Date                      string                     `json:"date"`
	TotalActiveUsers          *int                       `json:"total_active_users,omitempty"`
	TotalEngagedUsers         *int                       `json:"total_engaged_users,omitempty"`
	CopilotIDECodeCompletions *CopilotIDECodeCompletions `json:"copilot_ide_code_completions,omitempty"`
	CopilotIDEChat            *CopilotIDEChat            `json:"copilot_ide_chat,omitempty"`
	CopilotDotcomChat         *CopilotDotcomChat         `json:"copilot_dotcom_chat,omitempty"`
	CopilotDotcomPullRequests *CopilotDotcomPullRequests `json:"copilot_dotcom_pull_requests,omitempty"`
}

CopilotMetrics represents Copilot usage metrics for a given day.

func (*CopilotMetrics) GetCopilotDotcomChat

func (c *CopilotMetrics) GetCopilotDotcomChat() *CopilotDotcomChat

GetCopilotDotcomChat returns the CopilotDotcomChat field.

func (*CopilotMetrics) GetCopilotDotcomPullRequests

func (c *CopilotMetrics) GetCopilotDotcomPullRequests() *CopilotDotcomPullRequests

GetCopilotDotcomPullRequests returns the CopilotDotcomPullRequests field.

func (*CopilotMetrics) GetCopilotIDEChat

func (c *CopilotMetrics) GetCopilotIDEChat() *CopilotIDEChat

GetCopilotIDEChat returns the CopilotIDEChat field.

func (*CopilotMetrics) GetCopilotIDECodeCompletions

func (c *CopilotMetrics) GetCopilotIDECodeCompletions() *CopilotIDECodeCompletions

GetCopilotIDECodeCompletions returns the CopilotIDECodeCompletions field.

func (*CopilotMetrics) GetTotalActiveUsers

func (c *CopilotMetrics) GetTotalActiveUsers() int

GetTotalActiveUsers returns the TotalActiveUsers field if it's non-nil, zero value otherwise.

func (*CopilotMetrics) GetTotalEngagedUsers

func (c *CopilotMetrics) GetTotalEngagedUsers() int

GetTotalEngagedUsers returns the TotalEngagedUsers field if it's non-nil, zero value otherwise.

type CopilotMetricsListOptions

type CopilotMetricsListOptions struct {
	Since *time.Time `url:"since,omitempty"`
	Until *time.Time `url:"until,omitempty"`

	ListOptions
}

CopilotMetricsListOptions represents the optional parameters to the CopilotService get metrics methods.

func (*CopilotMetricsListOptions) GetSince

func (c *CopilotMetricsListOptions) GetSince() time.Time

GetSince returns the Since field if it's non-nil, zero value otherwise.

func (*CopilotMetricsListOptions) GetUntil

func (c *CopilotMetricsListOptions) GetUntil() time.Time

GetUntil returns the Until field if it's non-nil, zero value otherwise.

type CopilotOrganizationDetails

type CopilotOrganizationDetails struct {
	SeatBreakdown         *CopilotSeatBreakdown `json:"seat_breakdown"`
	PublicCodeSuggestions string                `json:"public_code_suggestions"`
	CopilotChat           string                `json:"copilot_chat"`
	SeatManagementSetting string                `json:"seat_management_setting"`
}

CopilotOrganizationDetails represents the details of an organization's Copilot for Business subscription.

func (*CopilotOrganizationDetails) GetSeatBreakdown

func (c *CopilotOrganizationDetails) GetSeatBreakdown() *CopilotSeatBreakdown

GetSeatBreakdown returns the SeatBreakdown field.

type CopilotSeatBreakdown

type CopilotSeatBreakdown struct {
	Total               int `json:"total"`
	AddedThisCycle      int `json:"added_this_cycle"`
	PendingCancellation int `json:"pending_cancellation"`
	PendingInvitation   int `json:"pending_invitation"`
	ActiveThisCycle     int `json:"active_this_cycle"`
	InactiveThisCycle   int `json:"inactive_this_cycle"`
}

CopilotSeatBreakdown represents the breakdown of Copilot for Business seats for the organization.

type CopilotSeatDetails

type CopilotSeatDetails struct {
	// Assignee can either be a User, Team, or Organization.
	Assignee                interface{} `json:"assignee"`
	AssigningTeam           *Team       `json:"assigning_team,omitempty"`
	PendingCancellationDate *string     `json:"pending_cancellation_date,omitempty"`
	LastActivityAt          *Timestamp  `json:"last_activity_at,omitempty"`
	LastActivityEditor      *string     `json:"last_activity_editor,omitempty"`
	CreatedAt               *Timestamp  `json:"created_at"`
	UpdatedAt               *Timestamp  `json:"updated_at,omitempty"`
	PlanType                *string     `json:"plan_type,omitempty"`
}

CopilotSeatDetails represents the details of a Copilot for Business seat.

func (*CopilotSeatDetails) GetAssigningTeam

func (c *CopilotSeatDetails) GetAssigningTeam() *Team

GetAssigningTeam returns the AssigningTeam field.

func (*CopilotSeatDetails) GetCreatedAt

func (c *CopilotSeatDetails) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*CopilotSeatDetails) GetLastActivityAt

func (c *CopilotSeatDetails) GetLastActivityAt() Timestamp

GetLastActivityAt returns the LastActivityAt field if it's non-nil, zero value otherwise.

func (*CopilotSeatDetails) GetLastActivityEditor

func (c *CopilotSeatDetails) GetLastActivityEditor() string

GetLastActivityEditor returns the LastActivityEditor field if it's non-nil, zero value otherwise.

func (*CopilotSeatDetails) GetOrganization

func (cp *CopilotSeatDetails) GetOrganization() (*Organization, bool)

GetOrganization gets the Organization from the CopilotSeatDetails if the assignee is an organization.

func (*CopilotSeatDetails) GetPendingCancellationDate

func (c *CopilotSeatDetails) GetPendingCancellationDate() string

GetPendingCancellationDate returns the PendingCancellationDate field if it's non-nil, zero value otherwise.

func (*CopilotSeatDetails) GetPlanType

func (c *CopilotSeatDetails) GetPlanType() string

GetPlanType returns the PlanType field if it's non-nil, zero value otherwise.

func (*CopilotSeatDetails) GetTeam

func (cp *CopilotSeatDetails) GetTeam() (*Team, bool)

GetTeam gets the Team from the CopilotSeatDetails if the assignee is a team.

func (*CopilotSeatDetails) GetUpdatedAt

func (c *CopilotSeatDetails) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*CopilotSeatDetails) GetUser

func (cp *CopilotSeatDetails) GetUser() (*User, bool)

GetUser gets the User from the CopilotSeatDetails if the assignee is a user.

func (*CopilotSeatDetails) UnmarshalJSON

func (cp *CopilotSeatDetails) UnmarshalJSON(data []byte) error

type CopilotService

type CopilotService service

CopilotService provides access to the Copilot-related functions in the GitHub API.

GitHub API docs: https://docs.github.com/en/rest/copilot/

func (*CopilotService) AddCopilotTeams

func (s *CopilotService) AddCopilotTeams(ctx context.Context, org string, teamNames []string) (*SeatAssignments, *Response, error)

AddCopilotTeams adds teams to the Copilot for Business subscription for an organization.

GitHub API docs: https://docs.github.com/rest/copilot/copilot-user-management#add-teams-to-the-copilot-subscription-for-an-organization

func (*CopilotService) AddCopilotUsers

func (s *CopilotService) AddCopilotUsers(ctx context.Context, org string, users []string) (*SeatAssignments, *Response, error)

AddCopilotUsers adds users to the Copilot for Business subscription for an organization

GitHub API docs: https://docs.github.com/rest/copilot/copilot-user-management#add-users-to-the-copilot-subscription-for-an-organization

func (*CopilotService) GetCopilotBilling

func (s *CopilotService) GetCopilotBilling(ctx context.Context, org string) (*CopilotOrganizationDetails, *Response, error)

GetCopilotBilling gets Copilot for Business billing information and settings for an organization.

GitHub API docs: https://docs.github.com/rest/copilot/copilot-user-management#get-copilot-seat-information-and-settings-for-an-organization

func (*CopilotService) GetEnterpriseMetrics

func (s *CopilotService) GetEnterpriseMetrics(ctx context.Context, enterprise string, opts *CopilotMetricsListOptions) ([]*CopilotMetrics, *Response, error)

GetEnterpriseMetrics gets Copilot usage metrics for an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/copilot/copilot-metrics#get-copilot-metrics-for-an-enterprise

func (*CopilotService) GetEnterpriseTeamMetrics

func (s *CopilotService) GetEnterpriseTeamMetrics(ctx context.Context, enterprise, team string, opts *CopilotMetricsListOptions) ([]*CopilotMetrics, *Response, error)

GetEnterpriseTeamMetrics gets Copilot usage metrics for an enterprise team.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/copilot/copilot-metrics#get-copilot-metrics-for-an-enterprise-team

func (*CopilotService) GetOrganizationMetrics

func (s *CopilotService) GetOrganizationMetrics(ctx context.Context, org string, opts *CopilotMetricsListOptions) ([]*CopilotMetrics, *Response, error)

GetOrganizationMetrics gets Copilot usage metrics for an organization.

GitHub API docs: https://docs.github.com/rest/copilot/copilot-metrics#get-copilot-metrics-for-an-organization

func (*CopilotService) GetOrganizationTeamMetrics

func (s *CopilotService) GetOrganizationTeamMetrics(ctx context.Context, org, team string, opts *CopilotMetricsListOptions) ([]*CopilotMetrics, *Response, error)

GetOrganizationTeamMetrics gets Copilot usage metrics for an organization team.

GitHub API docs: https://docs.github.com/rest/copilot/copilot-metrics#get-copilot-metrics-for-a-team

func (*CopilotService) GetSeatDetails

func (s *CopilotService) GetSeatDetails(ctx context.Context, org, user string) (*CopilotSeatDetails, *Response, error)

GetSeatDetails gets Copilot for Business seat assignment details for a user.

GitHub API docs: https://docs.github.com/rest/copilot/copilot-user-management#get-copilot-seat-assignment-details-for-a-user

func (*CopilotService) ListCopilotEnterpriseSeats

func (s *CopilotService) ListCopilotEnterpriseSeats(ctx context.Context, enterprise string, opts *ListOptions) (*ListCopilotSeatsResponse, *Response, error)

ListCopilotEnterpriseSeats lists Copilot for Business seat assignments for an enterprise.

To paginate through all seats, populate 'Page' with the number of the last page.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/copilot/copilot-user-management#list-all-copilot-seat-assignments-for-an-enterprise

func (*CopilotService) ListCopilotSeats

func (s *CopilotService) ListCopilotSeats(ctx context.Context, org string, opts *ListOptions) (*ListCopilotSeatsResponse, *Response, error)

ListCopilotSeats lists Copilot for Business seat assignments for an organization.

To paginate through all seats, populate 'Page' with the number of the last page.

GitHub API docs: https://docs.github.com/rest/copilot/copilot-user-management#list-all-copilot-seat-assignments-for-an-organization

func (*CopilotService) RemoveCopilotTeams

func (s *CopilotService) RemoveCopilotTeams(ctx context.Context, org string, teamNames []string) (*SeatCancellations, *Response, error)

RemoveCopilotTeams removes teams from the Copilot for Business subscription for an organization.

GitHub API docs: https://docs.github.com/rest/copilot/copilot-user-management#remove-teams-from-the-copilot-subscription-for-an-organization

func (*CopilotService) RemoveCopilotUsers

func (s *CopilotService) RemoveCopilotUsers(ctx context.Context, org string, users []string) (*SeatCancellations, *Response, error)

RemoveCopilotUsers removes users from the Copilot for Business subscription for an organization.

GitHub API docs: https://docs.github.com/rest/copilot/copilot-user-management#remove-users-from-the-copilot-subscription-for-an-organization

type CreateCheckRunOptions

type CreateCheckRunOptions struct {
	Name        string            `json:"name"`                   // The name of the check (e.g., "code-coverage"). (Required.)
	HeadSHA     string            `json:"head_sha"`               // The SHA of the commit. (Required.)
	DetailsURL  *string           `json:"details_url,omitempty"`  // The URL of the integrator's site that has the full details of the check. (Optional.)
	ExternalID  *string           `json:"external_id,omitempty"`  // A reference for the run on the integrator's system. (Optional.)
	Status      *string           `json:"status,omitempty"`       // The current status. Can be one of "queued", "in_progress", or "completed". Default: "queued". (Optional.)
	Conclusion  *string           `json:"conclusion,omitempty"`   // Can be one of "success", "failure", "neutral", "cancelled", "skipped", "timed_out", or "action_required". (Optional. Required if you provide a status of "completed".)
	StartedAt   *Timestamp        `json:"started_at,omitempty"`   // The time that the check run began. (Optional.)
	CompletedAt *Timestamp        `json:"completed_at,omitempty"` // The time the check completed. (Optional. Required if you provide conclusion.)
	Output      *CheckRunOutput   `json:"output,omitempty"`       // Provide descriptive details about the run. (Optional)
	Actions     []*CheckRunAction `json:"actions,omitempty"`      // Possible further actions the integrator can perform, which a user may trigger. (Optional.)
}

CreateCheckRunOptions sets up parameters needed to create a CheckRun.

func (*CreateCheckRunOptions) GetCompletedAt

func (c *CreateCheckRunOptions) GetCompletedAt() Timestamp

GetCompletedAt returns the CompletedAt field if it's non-nil, zero value otherwise.

func (*CreateCheckRunOptions) GetConclusion

func (c *CreateCheckRunOptions) GetConclusion() string

GetConclusion returns the Conclusion field if it's non-nil, zero value otherwise.

func (*CreateCheckRunOptions) GetDetailsURL

func (c *CreateCheckRunOptions) GetDetailsURL() string

GetDetailsURL returns the DetailsURL field if it's non-nil, zero value otherwise.

func (*CreateCheckRunOptions) GetExternalID

func (c *CreateCheckRunOptions) GetExternalID() string

GetExternalID returns the ExternalID field if it's non-nil, zero value otherwise.

func (*CreateCheckRunOptions) GetOutput

func (c *CreateCheckRunOptions) GetOutput() *CheckRunOutput

GetOutput returns the Output field.

func (*CreateCheckRunOptions) GetStartedAt

func (c *CreateCheckRunOptions) GetStartedAt() Timestamp

GetStartedAt returns the StartedAt field if it's non-nil, zero value otherwise.

func (*CreateCheckRunOptions) GetStatus

func (c *CreateCheckRunOptions) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

type CreateCheckSuiteOptions

type CreateCheckSuiteOptions struct {
	HeadSHA    string  `json:"head_sha"`              // The sha of the head commit. (Required.)
	HeadBranch *string `json:"head_branch,omitempty"` // The name of the head branch where the code changes are implemented.
}

CreateCheckSuiteOptions sets up parameters to manually create a check suites.

func (*CreateCheckSuiteOptions) GetHeadBranch

func (c *CreateCheckSuiteOptions) GetHeadBranch() string

GetHeadBranch returns the HeadBranch field if it's non-nil, zero value otherwise.

type CreateCodespaceOptions

type CreateCodespaceOptions struct {
	Ref *string `json:"ref,omitempty"`
	// Geo represents the geographic area for this codespace.
	// If not specified, the value is assigned by IP.
	// This property replaces location, which is being deprecated.
	// Geo can be one of: `EuropeWest`, `SoutheastAsia`, `UsEast`, `UsWest`.
	Geo                        *string `json:"geo,omitempty"`
	ClientIP                   *string `json:"client_ip,omitempty"`
	Machine                    *string `json:"machine,omitempty"`
	DevcontainerPath           *string `json:"devcontainer_path,omitempty"`
	MultiRepoPermissionsOptOut *bool   `json:"multi_repo_permissions_opt_out,omitempty"`
	WorkingDirectory           *string `json:"working_directory,omitempty"`
	IdleTimeoutMinutes         *int    `json:"idle_timeout_minutes,omitempty"`
	DisplayName                *string `json:"display_name,omitempty"`
	// RetentionPeriodMinutes represents the duration in minutes after codespace has gone idle in which it will be deleted.
	// Must be integer minutes between 0 and 43200 (30 days).
	RetentionPeriodMinutes *int `json:"retention_period_minutes,omitempty"`
}

CreateCodespaceOptions represents options for the creation of a codespace in a repository.

func (*CreateCodespaceOptions) GetClientIP

func (c *CreateCodespaceOptions) GetClientIP() string

GetClientIP returns the ClientIP field if it's non-nil, zero value otherwise.

func (*CreateCodespaceOptions) GetDevcontainerPath

func (c *CreateCodespaceOptions) GetDevcontainerPath() string

GetDevcontainerPath returns the DevcontainerPath field if it's non-nil, zero value otherwise.

func (*CreateCodespaceOptions) GetDisplayName

func (c *CreateCodespaceOptions) GetDisplayName() string

GetDisplayName returns the DisplayName field if it's non-nil, zero value otherwise.

func (*CreateCodespaceOptions) GetGeo

func (c *CreateCodespaceOptions) GetGeo() string

GetGeo returns the Geo field if it's non-nil, zero value otherwise.

func (*CreateCodespaceOptions) GetIdleTimeoutMinutes

func (c *CreateCodespaceOptions) GetIdleTimeoutMinutes() int

GetIdleTimeoutMinutes returns the IdleTimeoutMinutes field if it's non-nil, zero value otherwise.

func (*CreateCodespaceOptions) GetMachine

func (c *CreateCodespaceOptions) GetMachine() string

GetMachine returns the Machine field if it's non-nil, zero value otherwise.

func (*CreateCodespaceOptions) GetMultiRepoPermissionsOptOut

func (c *CreateCodespaceOptions) GetMultiRepoPermissionsOptOut() bool

GetMultiRepoPermissionsOptOut returns the MultiRepoPermissionsOptOut field if it's non-nil, zero value otherwise.

func (*CreateCodespaceOptions) GetRef

func (c *CreateCodespaceOptions) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*CreateCodespaceOptions) GetRetentionPeriodMinutes

func (c *CreateCodespaceOptions) GetRetentionPeriodMinutes() int

GetRetentionPeriodMinutes returns the RetentionPeriodMinutes field if it's non-nil, zero value otherwise.

func (*CreateCodespaceOptions) GetWorkingDirectory

func (c *CreateCodespaceOptions) GetWorkingDirectory() string

GetWorkingDirectory returns the WorkingDirectory field if it's non-nil, zero value otherwise.

type CreateCommitOptions

type CreateCommitOptions struct {
	// CreateCommit will sign the commit with this signer. See MessageSigner doc for more details.
	// Ignored on commits where Verification.Signature is defined.
	Signer MessageSigner
}

type CreateEnterpriseRunnerGroupRequest

type CreateEnterpriseRunnerGroupRequest struct {
	Name       *string `json:"name,omitempty"`
	Visibility *string `json:"visibility,omitempty"`
	// List of organization IDs that can access the runner group.
	SelectedOrganizationIDs []int64 `json:"selected_organization_ids,omitempty"`
	// Runners represent a list of runner IDs to add to the runner group.
	Runners []int64 `json:"runners,omitempty"`
	// If set to True, public repos can use this runner group
	AllowsPublicRepositories *bool `json:"allows_public_repositories,omitempty"`
	// If true, the runner group will be restricted to running only the workflows specified in the SelectedWorkflows slice.
	RestrictedToWorkflows *bool `json:"restricted_to_workflows,omitempty"`
	// List of workflows the runner group should be allowed to run. This setting will be ignored unless RestrictedToWorkflows is set to true.
	SelectedWorkflows []string `json:"selected_workflows,omitempty"`
}

CreateEnterpriseRunnerGroupRequest represents a request to create a Runner group for an enterprise.

func (*CreateEnterpriseRunnerGroupRequest) GetAllowsPublicRepositories

func (c *CreateEnterpriseRunnerGroupRequest) GetAllowsPublicRepositories() bool

GetAllowsPublicRepositories returns the AllowsPublicRepositories field if it's non-nil, zero value otherwise.

func (*CreateEnterpriseRunnerGroupRequest) GetName

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CreateEnterpriseRunnerGroupRequest) GetRestrictedToWorkflows

func (c *CreateEnterpriseRunnerGroupRequest) GetRestrictedToWorkflows() bool

GetRestrictedToWorkflows returns the RestrictedToWorkflows field if it's non-nil, zero value otherwise.

func (*CreateEnterpriseRunnerGroupRequest) GetVisibility

func (c *CreateEnterpriseRunnerGroupRequest) GetVisibility() string

GetVisibility returns the Visibility field if it's non-nil, zero value otherwise.

type CreateEvent

type CreateEvent struct {
	Ref *string `json:"ref,omitempty"`
	// RefType is the object that was created. Possible values are: "repository", "branch", "tag".
	RefType      *string `json:"ref_type,omitempty"`
	MasterBranch *string `json:"master_branch,omitempty"`
	Description  *string `json:"description,omitempty"`
	PusherType   *string `json:"pusher_type,omitempty"`

	// The following fields are only populated by Webhook events.
	Repo         *Repository   `json:"repository,omitempty"`
	Org          *Organization `json:"organization,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
}

CreateEvent represents a created repository, branch, or tag. The Webhook event name is "create".

Note: webhooks will not receive this event for created repositories. Additionally, webhooks will not receive this event for tags if more than three tags are pushed at once.

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/github-event-types#createevent

func (*CreateEvent) GetDescription

func (c *CreateEvent) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*CreateEvent) GetInstallation

func (c *CreateEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*CreateEvent) GetMasterBranch

func (c *CreateEvent) GetMasterBranch() string

GetMasterBranch returns the MasterBranch field if it's non-nil, zero value otherwise.

func (*CreateEvent) GetOrg

func (c *CreateEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*CreateEvent) GetPusherType

func (c *CreateEvent) GetPusherType() string

GetPusherType returns the PusherType field if it's non-nil, zero value otherwise.

func (*CreateEvent) GetRef

func (c *CreateEvent) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*CreateEvent) GetRefType

func (c *CreateEvent) GetRefType() string

GetRefType returns the RefType field if it's non-nil, zero value otherwise.

func (*CreateEvent) GetRepo

func (c *CreateEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*CreateEvent) GetSender

func (c *CreateEvent) GetSender() *User

GetSender returns the Sender field.

type CreateOrUpdateCustomRepoRoleOptions

type CreateOrUpdateCustomRepoRoleOptions struct {
	Name        *string  `json:"name,omitempty"`
	Description *string  `json:"description,omitempty"`
	BaseRole    *string  `json:"base_role,omitempty"`
	Permissions []string `json:"permissions"`
}

CreateOrUpdateCustomRepoRoleOptions represents options required to create or update a custom repository role.

func (*CreateOrUpdateCustomRepoRoleOptions) GetBaseRole

GetBaseRole returns the BaseRole field if it's non-nil, zero value otherwise.

func (*CreateOrUpdateCustomRepoRoleOptions) GetDescription

func (c *CreateOrUpdateCustomRepoRoleOptions) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*CreateOrUpdateCustomRepoRoleOptions) GetName

GetName returns the Name field if it's non-nil, zero value otherwise.

type CreateOrUpdateOrgRoleOptions

type CreateOrUpdateOrgRoleOptions struct {
	Name        *string  `json:"name,omitempty"`
	Description *string  `json:"description,omitempty"`
	Permissions []string `json:"permissions"`
	BaseRole    *string  `json:"base_role,omitempty"`
}

CreateOrUpdateOrgRoleOptions represents options required to create or update a custom organization role.

func (*CreateOrUpdateOrgRoleOptions) GetBaseRole

func (c *CreateOrUpdateOrgRoleOptions) GetBaseRole() string

GetBaseRole returns the BaseRole field if it's non-nil, zero value otherwise.

func (*CreateOrUpdateOrgRoleOptions) GetDescription

func (c *CreateOrUpdateOrgRoleOptions) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*CreateOrUpdateOrgRoleOptions) GetName

func (c *CreateOrUpdateOrgRoleOptions) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

type CreateOrgInvitationOptions

type CreateOrgInvitationOptions struct {
	// GitHub user ID for the person you are inviting. Not required if you provide Email.
	InviteeID *int64 `json:"invitee_id,omitempty"`
	// Email address of the person you are inviting, which can be an existing GitHub user.
	// Not required if you provide InviteeID
	Email *string `json:"email,omitempty"`
	// Specify role for new member. Can be one of:
	// * admin - Organization owners with full administrative rights to the
	// 	 organization and complete access to all repositories and teams.
	// * direct_member - Non-owner organization members with ability to see
	//   other members and join teams by invitation.
	// * billing_manager - Non-owner organization members with ability to
	//   manage the billing settings of your organization.
	// Default is "direct_member".
	Role   *string `json:"role,omitempty"`
	TeamID []int64 `json:"team_ids,omitempty"`
}

CreateOrgInvitationOptions specifies the parameters to the OrganizationService.Invite method.

func (*CreateOrgInvitationOptions) GetEmail

func (c *CreateOrgInvitationOptions) GetEmail() string

GetEmail returns the Email field if it's non-nil, zero value otherwise.

func (*CreateOrgInvitationOptions) GetInviteeID

func (c *CreateOrgInvitationOptions) GetInviteeID() int64

GetInviteeID returns the InviteeID field if it's non-nil, zero value otherwise.

func (*CreateOrgInvitationOptions) GetRole

func (c *CreateOrgInvitationOptions) GetRole() string

GetRole returns the Role field if it's non-nil, zero value otherwise.

type CreateProtectedChanges

type CreateProtectedChanges struct {
	From *bool `json:"from,omitempty"`
}

CreateProtectedChanges represents the changes made to the CreateProtected policy.

func (*CreateProtectedChanges) GetFrom

func (c *CreateProtectedChanges) GetFrom() bool

GetFrom returns the From field if it's non-nil, zero value otherwise.

type CreateRunnerGroupRequest

type CreateRunnerGroupRequest struct {
	Name       *string `json:"name,omitempty"`
	Visibility *string `json:"visibility,omitempty"`
	// List of repository IDs that can access the runner group.
	SelectedRepositoryIDs []int64 `json:"selected_repository_ids,omitempty"`
	// Runners represent a list of runner IDs to add to the runner group.
	Runners []int64 `json:"runners,omitempty"`
	// If set to True, public repos can use this runner group
	AllowsPublicRepositories *bool `json:"allows_public_repositories,omitempty"`
	// If true, the runner group will be restricted to running only the workflows specified in the SelectedWorkflows slice.
	RestrictedToWorkflows *bool `json:"restricted_to_workflows,omitempty"`
	// List of workflows the runner group should be allowed to run. This setting will be ignored unless RestrictedToWorkflows is set to true.
	SelectedWorkflows []string `json:"selected_workflows,omitempty"`
}

CreateRunnerGroupRequest represents a request to create a Runner group for an organization.

func (*CreateRunnerGroupRequest) GetAllowsPublicRepositories

func (c *CreateRunnerGroupRequest) GetAllowsPublicRepositories() bool

GetAllowsPublicRepositories returns the AllowsPublicRepositories field if it's non-nil, zero value otherwise.

func (*CreateRunnerGroupRequest) GetName

func (c *CreateRunnerGroupRequest) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CreateRunnerGroupRequest) GetRestrictedToWorkflows

func (c *CreateRunnerGroupRequest) GetRestrictedToWorkflows() bool

GetRestrictedToWorkflows returns the RestrictedToWorkflows field if it's non-nil, zero value otherwise.

func (*CreateRunnerGroupRequest) GetVisibility

func (c *CreateRunnerGroupRequest) GetVisibility() string

GetVisibility returns the Visibility field if it's non-nil, zero value otherwise.

type CreateUpdateEnvironment

type CreateUpdateEnvironment struct {
	WaitTimer              *int            `json:"wait_timer"`
	Reviewers              []*EnvReviewers `json:"reviewers"`
	CanAdminsBypass        *bool           `json:"can_admins_bypass"`
	DeploymentBranchPolicy *BranchPolicy   `json:"deployment_branch_policy"`
	PreventSelfReview      *bool           `json:"prevent_self_review,omitempty"`
}

CreateUpdateEnvironment represents the fields required for the create/update operation following the Create/Update release example. See https://github.com/google/go-github/issues/992 for more information. Removed omitempty here as the API expects null values for reviewers and deployment_branch_policy to clear them.

func (*CreateUpdateEnvironment) GetCanAdminsBypass

func (c *CreateUpdateEnvironment) GetCanAdminsBypass() bool

GetCanAdminsBypass returns the CanAdminsBypass field if it's non-nil, zero value otherwise.

func (*CreateUpdateEnvironment) GetDeploymentBranchPolicy

func (c *CreateUpdateEnvironment) GetDeploymentBranchPolicy() *BranchPolicy

GetDeploymentBranchPolicy returns the DeploymentBranchPolicy field.

func (*CreateUpdateEnvironment) GetPreventSelfReview

func (c *CreateUpdateEnvironment) GetPreventSelfReview() bool

GetPreventSelfReview returns the PreventSelfReview field if it's non-nil, zero value otherwise.

func (*CreateUpdateEnvironment) GetWaitTimer

func (c *CreateUpdateEnvironment) GetWaitTimer() int

GetWaitTimer returns the WaitTimer field if it's non-nil, zero value otherwise.

func (*CreateUpdateEnvironment) MarshalJSON

func (c *CreateUpdateEnvironment) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaler interface. As the only way to clear a WaitTimer is to set it to 0, a missing WaitTimer object should default to 0, not null. As the default value for CanAdminsBypass is true, a nil value here marshals to true.

type CreateUpdateRequiredWorkflowOptions

type CreateUpdateRequiredWorkflowOptions struct {
	WorkflowFilePath      *string          `json:"workflow_file_path,omitempty"`
	RepositoryID          *int64           `json:"repository_id,omitempty"`
	Scope                 *string          `json:"scope,omitempty"`
	SelectedRepositoryIDs *SelectedRepoIDs `json:"selected_repository_ids,omitempty"`
}

CreateUpdateRequiredWorkflowOptions represents the input object used to create or update required workflows.

func (*CreateUpdateRequiredWorkflowOptions) GetRepositoryID

func (c *CreateUpdateRequiredWorkflowOptions) GetRepositoryID() int64

GetRepositoryID returns the RepositoryID field if it's non-nil, zero value otherwise.

func (*CreateUpdateRequiredWorkflowOptions) GetScope

GetScope returns the Scope field if it's non-nil, zero value otherwise.

func (*CreateUpdateRequiredWorkflowOptions) GetSelectedRepositoryIDs

func (c *CreateUpdateRequiredWorkflowOptions) GetSelectedRepositoryIDs() *SelectedRepoIDs

GetSelectedRepositoryIDs returns the SelectedRepositoryIDs field.

func (*CreateUpdateRequiredWorkflowOptions) GetWorkflowFilePath

func (c *CreateUpdateRequiredWorkflowOptions) GetWorkflowFilePath() string

GetWorkflowFilePath returns the WorkflowFilePath field if it's non-nil, zero value otherwise.

type CreateUserRequest

type CreateUserRequest struct {
	Login     string  `json:"login"`
	Email     *string `json:"email,omitempty"`
	Suspended *bool   `json:"suspended,omitempty"`
}

CreateUserRequest represents the fields sent to the `CreateUser` endpoint. Note that `Login` is a required field.

func (*CreateUserRequest) GetEmail

func (c *CreateUserRequest) GetEmail() string

GetEmail returns the Email field if it's non-nil, zero value otherwise.

func (*CreateUserRequest) GetSuspended

func (c *CreateUserRequest) GetSuspended() bool

GetSuspended returns the Suspended field if it's non-nil, zero value otherwise.

type CreateWorkflowDispatchEventRequest

type CreateWorkflowDispatchEventRequest struct {
	// Ref represents the reference of the workflow run.
	// The reference can be a branch or a tag.
	// Ref is required when creating a workflow dispatch event.
	Ref string `json:"ref"`
	// Inputs represents input keys and values configured in the workflow file.
	// The maximum number of properties is 10.
	// Default: Any default properties configured in the workflow file will be used when `inputs` are omitted.
	Inputs map[string]interface{} `json:"inputs,omitempty"`
}

CreateWorkflowDispatchEventRequest represents a request to create a workflow dispatch event.

type CreationInfo

type CreationInfo struct {
	Created  *Timestamp `json:"created,omitempty"`
	Creators []string   `json:"creators,omitempty"`
}

CreationInfo represents when the SBOM was created and who created it.

func (*CreationInfo) GetCreated

func (c *CreationInfo) GetCreated() Timestamp

GetCreated returns the Created field if it's non-nil, zero value otherwise.

type CredentialAuthorization

type CredentialAuthorization struct {
	// User login that owns the underlying credential.
	Login *string `json:"login,omitempty"`

	// Unique identifier for the credential.
	CredentialID *int64 `json:"credential_id,omitempty"`

	// Human-readable description of the credential type.
	CredentialType *string `json:"credential_type,omitempty"`

	// Last eight characters of the credential.
	// Only included in responses with credential_type of personal access token.
	TokenLastEight *string `json:"token_last_eight,omitempty"`

	// Date when the credential was authorized for use.
	CredentialAuthorizedAt *Timestamp `json:"credential_authorized_at,omitempty"`

	// Date when the credential was last accessed.
	// May be null if it was never accessed.
	CredentialAccessedAt *Timestamp `json:"credential_accessed_at,omitempty"`

	// List of oauth scopes the token has been granted.
	Scopes []string `json:"scopes,omitempty"`

	// Unique string to distinguish the credential.
	// Only included in responses with credential_type of SSH Key.
	Fingerprint *string `json:"fingerprint,omitempty"`

	AuthorizedCredentialID *int64 `json:"authorized_credential_id,omitempty"`

	// The title given to the ssh key.
	// This will only be present when the credential is an ssh key.
	AuthorizedCredentialTitle *string `json:"authorized_credential_title,omitempty"`

	// The note given to the token.
	// This will only be present when the credential is a token.
	AuthorizedCredentialNote *string `json:"authorized_credential_note,omitempty"`

	// The expiry for the token.
	// This will only be present when the credential is a token.
	AuthorizedCredentialExpiresAt *Timestamp `json:"authorized_credential_expires_at,omitempty"`
}

CredentialAuthorization represents a credential authorized through SAML SSO.

func (*CredentialAuthorization) GetAuthorizedCredentialExpiresAt

func (c *CredentialAuthorization) GetAuthorizedCredentialExpiresAt() Timestamp

GetAuthorizedCredentialExpiresAt returns the AuthorizedCredentialExpiresAt field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetAuthorizedCredentialID

func (c *CredentialAuthorization) GetAuthorizedCredentialID() int64

GetAuthorizedCredentialID returns the AuthorizedCredentialID field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetAuthorizedCredentialNote

func (c *CredentialAuthorization) GetAuthorizedCredentialNote() string

GetAuthorizedCredentialNote returns the AuthorizedCredentialNote field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetAuthorizedCredentialTitle

func (c *CredentialAuthorization) GetAuthorizedCredentialTitle() string

GetAuthorizedCredentialTitle returns the AuthorizedCredentialTitle field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetCredentialAccessedAt

func (c *CredentialAuthorization) GetCredentialAccessedAt() Timestamp

GetCredentialAccessedAt returns the CredentialAccessedAt field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetCredentialAuthorizedAt

func (c *CredentialAuthorization) GetCredentialAuthorizedAt() Timestamp

GetCredentialAuthorizedAt returns the CredentialAuthorizedAt field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetCredentialID

func (c *CredentialAuthorization) GetCredentialID() int64

GetCredentialID returns the CredentialID field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetCredentialType

func (c *CredentialAuthorization) GetCredentialType() string

GetCredentialType returns the CredentialType field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetFingerprint

func (c *CredentialAuthorization) GetFingerprint() string

GetFingerprint returns the Fingerprint field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetLogin

func (c *CredentialAuthorization) GetLogin() string

GetLogin returns the Login field if it's non-nil, zero value otherwise.

func (*CredentialAuthorization) GetTokenLastEight

func (c *CredentialAuthorization) GetTokenLastEight() string

GetTokenLastEight returns the TokenLastEight field if it's non-nil, zero value otherwise.

type CredentialAuthorizationsListOptions

type CredentialAuthorizationsListOptions struct {
	ListOptions
	// For credentials authorizations for an organization, limit the list of authorizations to a specific login (aka github username)
	Login string `url:"login,omitempty"`
}

CredentialAuthorizationsListOptions adds the Login option as supported by the list SAML SSO authorizations for organizations endpoint alongside paging options such as Page and PerPage. GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/orgs/orgs#list-saml-sso-authorizations-for-an-organization

type Credit

type Credit struct {
	User *User   `json:"user,omitempty"`
	Type *string `json:"type,omitempty"`
}

Credit represents the credit object for a global security advisory.

func (*Credit) GetType

func (c *Credit) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

func (*Credit) GetUser

func (c *Credit) GetUser() *User

GetUser returns the User field.

type CustomDeploymentProtectionRule

type CustomDeploymentProtectionRule struct {
	ID      *int64                             `json:"id,omitempty"`
	NodeID  *string                            `json:"node_id,omitempty"`
	Enabled *bool                              `json:"enabled,omitempty"`
	App     *CustomDeploymentProtectionRuleApp `json:"app,omitempty"`
}

CustomDeploymentProtectionRule represents a single deployment protection rule for an environment.

func (*CustomDeploymentProtectionRule) GetApp

GetApp returns the App field.

func (*CustomDeploymentProtectionRule) GetEnabled

func (c *CustomDeploymentProtectionRule) GetEnabled() bool

GetEnabled returns the Enabled field if it's non-nil, zero value otherwise.

func (*CustomDeploymentProtectionRule) GetID

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CustomDeploymentProtectionRule) GetNodeID

func (c *CustomDeploymentProtectionRule) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

type CustomDeploymentProtectionRuleApp

type CustomDeploymentProtectionRuleApp struct {
	ID             *int64  `json:"id,omitempty"`
	Slug           *string `json:"slug,omitempty"`
	IntegrationURL *string `json:"integration_url,omitempty"`
	NodeID         *string `json:"node_id,omitempty"`
}

CustomDeploymentProtectionRuleApp represents a single deployment protection rule app for an environment.

func (*CustomDeploymentProtectionRuleApp) GetID

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CustomDeploymentProtectionRuleApp) GetIntegrationURL

func (c *CustomDeploymentProtectionRuleApp) GetIntegrationURL() string

GetIntegrationURL returns the IntegrationURL field if it's non-nil, zero value otherwise.

func (*CustomDeploymentProtectionRuleApp) GetNodeID

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*CustomDeploymentProtectionRuleApp) GetSlug

GetSlug returns the Slug field if it's non-nil, zero value otherwise.

type CustomDeploymentProtectionRuleRequest

type CustomDeploymentProtectionRuleRequest struct {
	IntegrationID *int64 `json:"integration_id,omitempty"`
}

CustomDeploymentProtectionRuleRequest represents a deployment protection rule request.

func (*CustomDeploymentProtectionRuleRequest) GetIntegrationID

func (c *CustomDeploymentProtectionRuleRequest) GetIntegrationID() int64

GetIntegrationID returns the IntegrationID field if it's non-nil, zero value otherwise.

type CustomOrgRoles

type CustomOrgRoles struct {
	ID          *int64        `json:"id,omitempty"`
	Name        *string       `json:"name,omitempty"`
	Description *string       `json:"description,omitempty"`
	Permissions []string      `json:"permissions,omitempty"`
	Org         *Organization `json:"organization,omitempty"`
	CreatedAt   *Timestamp    `json:"created_at,omitempty"`
	UpdatedAt   *Timestamp    `json:"updated_at,omitempty"`
	Source      *string       `json:"source,omitempty"`
	BaseRole    *string       `json:"base_role,omitempty"`
}

CustomOrgRoles represents custom organization role available in specified organization.

func (*CustomOrgRoles) GetBaseRole

func (c *CustomOrgRoles) GetBaseRole() string

GetBaseRole returns the BaseRole field if it's non-nil, zero value otherwise.

func (*CustomOrgRoles) GetCreatedAt

func (c *CustomOrgRoles) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*CustomOrgRoles) GetDescription

func (c *CustomOrgRoles) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*CustomOrgRoles) GetID

func (c *CustomOrgRoles) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CustomOrgRoles) GetName

func (c *CustomOrgRoles) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CustomOrgRoles) GetOrg

func (c *CustomOrgRoles) GetOrg() *Organization

GetOrg returns the Org field.

func (*CustomOrgRoles) GetSource

func (c *CustomOrgRoles) GetSource() string

GetSource returns the Source field if it's non-nil, zero value otherwise.

func (*CustomOrgRoles) GetUpdatedAt

func (c *CustomOrgRoles) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type CustomProperty

type CustomProperty struct {
	// PropertyName is required for most endpoints except when calling CreateOrUpdateCustomProperty;
	// where this is sent in the path and thus can be omitted.
	PropertyName *string `json:"property_name,omitempty"`
	// SourceType is the source type of the property where it has been created. Can be one of: organization, enterprise.
	SourceType *string `json:"source_type,omitempty"`
	// The type of the value for the property. Can be one of: string, single_select, multi_select, true_false.
	ValueType string `json:"value_type"`
	// Whether the property is required.
	Required *bool `json:"required,omitempty"`
	// Default value of the property.
	DefaultValue *string `json:"default_value,omitempty"`
	// Short description of the property.
	Description *string `json:"description,omitempty"`
	// An ordered list of the allowed values of the property. The property can have up to 200
	// allowed values.
	AllowedValues []string `json:"allowed_values,omitempty"`
	// Who can edit the values of the property. Can be one of: org_actors, org_and_repo_actors, nil (null).
	ValuesEditableBy *string `json:"values_editable_by,omitempty"`
}

CustomProperty represents an organization custom property object.

func (*CustomProperty) GetDefaultValue

func (c *CustomProperty) GetDefaultValue() string

GetDefaultValue returns the DefaultValue field if it's non-nil, zero value otherwise.

func (*CustomProperty) GetDescription

func (c *CustomProperty) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*CustomProperty) GetPropertyName

func (c *CustomProperty) GetPropertyName() string

GetPropertyName returns the PropertyName field if it's non-nil, zero value otherwise.

func (*CustomProperty) GetRequired

func (c *CustomProperty) GetRequired() bool

GetRequired returns the Required field if it's non-nil, zero value otherwise.

func (*CustomProperty) GetSourceType

func (c *CustomProperty) GetSourceType() string

GetSourceType returns the SourceType field if it's non-nil, zero value otherwise.

func (*CustomProperty) GetValuesEditableBy

func (c *CustomProperty) GetValuesEditableBy() string

GetValuesEditableBy returns the ValuesEditableBy field if it's non-nil, zero value otherwise.

type CustomPropertyEvent

type CustomPropertyEvent struct {
	// Action possible values are: "created", "deleted", "updated".
	Action     *string         `json:"action,omitempty"`
	Definition *CustomProperty `json:"definition,omitempty"`

	// The following fields are only populated by Webhook events.
	Enterprise   *Enterprise   `json:"enterprise,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
	Org          *Organization `json:"organization,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
}

CustomPropertyEvent represents a created, deleted or updated custom property. The Webhook event name is "custom_property".

Note: this is related to custom property configuration at the enterprise or organization level. See CustomPropertyValuesEvent for activity related to custom property values for a repository.

GitHub API docs: https://docs.github.com/en/webhooks/webhook-events-and-payloads#custom_property

func (*CustomPropertyEvent) GetAction

func (c *CustomPropertyEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*CustomPropertyEvent) GetDefinition

func (c *CustomPropertyEvent) GetDefinition() *CustomProperty

GetDefinition returns the Definition field.

func (*CustomPropertyEvent) GetEnterprise

func (c *CustomPropertyEvent) GetEnterprise() *Enterprise

GetEnterprise returns the Enterprise field.

func (*CustomPropertyEvent) GetInstallation

func (c *CustomPropertyEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*CustomPropertyEvent) GetOrg

func (c *CustomPropertyEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*CustomPropertyEvent) GetSender

func (c *CustomPropertyEvent) GetSender() *User

GetSender returns the Sender field.

type CustomPropertyValue

type CustomPropertyValue struct {
	PropertyName string      `json:"property_name"`
	Value        interface{} `json:"value"`
}

CustomPropertyValue represents a custom property value.

func (*CustomPropertyValue) UnmarshalJSON

func (cpv *CustomPropertyValue) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaler interface. This helps us handle the fact that Value can be either a string, []string, or nil.

type CustomPropertyValuesEvent

type CustomPropertyValuesEvent struct {
	// Action possible values are: "updated".
	Action            *string                `json:"action,omitempty"`
	NewPropertyValues []*CustomPropertyValue `json:"new_property_values,omitempty"`
	OldPropertyValues []*CustomPropertyValue `json:"old_property_values,omitempty"`

	// The following fields are only populated by Webhook events.
	Enterprise   *Enterprise   `json:"enterprise,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
	Repo         *Repository   `json:"repository,omitempty"`
	Org          *Organization `json:"organization,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
}

CustomPropertyValuesEvent represents an update to a custom property. The Webhook event name is "custom_property_values".

GitHub API docs: https://docs.github.com/en/webhooks/webhook-events-and-payloads#custom_property_values

func (*CustomPropertyValuesEvent) GetAction

func (c *CustomPropertyValuesEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*CustomPropertyValuesEvent) GetEnterprise

func (c *CustomPropertyValuesEvent) GetEnterprise() *Enterprise

GetEnterprise returns the Enterprise field.

func (*CustomPropertyValuesEvent) GetInstallation

func (c *CustomPropertyValuesEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*CustomPropertyValuesEvent) GetOrg

GetOrg returns the Org field.

func (*CustomPropertyValuesEvent) GetRepo

func (c *CustomPropertyValuesEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*CustomPropertyValuesEvent) GetSender

func (c *CustomPropertyValuesEvent) GetSender() *User

GetSender returns the Sender field.

type CustomRepoRoles

type CustomRepoRoles struct {
	ID          *int64        `json:"id,omitempty"`
	Name        *string       `json:"name,omitempty"`
	Description *string       `json:"description,omitempty"`
	BaseRole    *string       `json:"base_role,omitempty"`
	Permissions []string      `json:"permissions,omitempty"`
	Org         *Organization `json:"organization,omitempty"`
	CreatedAt   *Timestamp    `json:"created_at,omitempty"`
	UpdatedAt   *Timestamp    `json:"updated_at,omitempty"`
}

CustomRepoRoles represents custom repository roles for an organization. See https://docs.github.com/enterprise-cloud@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization for more information.

func (*CustomRepoRoles) GetBaseRole

func (c *CustomRepoRoles) GetBaseRole() string

GetBaseRole returns the BaseRole field if it's non-nil, zero value otherwise.

func (*CustomRepoRoles) GetCreatedAt

func (c *CustomRepoRoles) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*CustomRepoRoles) GetDescription

func (c *CustomRepoRoles) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*CustomRepoRoles) GetID

func (c *CustomRepoRoles) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*CustomRepoRoles) GetName

func (c *CustomRepoRoles) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*CustomRepoRoles) GetOrg

func (c *CustomRepoRoles) GetOrg() *Organization

GetOrg returns the Org field.

func (*CustomRepoRoles) GetUpdatedAt

func (c *CustomRepoRoles) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type DefaultSetupConfiguration

type DefaultSetupConfiguration struct {
	State      *string    `json:"state,omitempty"`
	Languages  []string   `json:"languages,omitempty"`
	QuerySuite *string    `json:"query_suite,omitempty"`
	UpdatedAt  *Timestamp `json:"updated_at,omitempty"`
}

DefaultSetupConfiguration represents a code scanning default setup configuration.

func (*DefaultSetupConfiguration) GetQuerySuite

func (d *DefaultSetupConfiguration) GetQuerySuite() string

GetQuerySuite returns the QuerySuite field if it's non-nil, zero value otherwise.

func (*DefaultSetupConfiguration) GetState

func (d *DefaultSetupConfiguration) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

func (*DefaultSetupConfiguration) GetUpdatedAt

func (d *DefaultSetupConfiguration) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type DefaultWorkflowPermissionEnterprise

type DefaultWorkflowPermissionEnterprise struct {
	DefaultWorkflowPermissions   *string `json:"default_workflow_permissions,omitempty"`
	CanApprovePullRequestReviews *bool   `json:"can_approve_pull_request_reviews,omitempty"`
}

DefaultWorkflowPermissionEnterprise represents the default permissions for GitHub Actions workflows for an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/permissions

func (*DefaultWorkflowPermissionEnterprise) GetCanApprovePullRequestReviews

func (d *DefaultWorkflowPermissionEnterprise) GetCanApprovePullRequestReviews() bool

GetCanApprovePullRequestReviews returns the CanApprovePullRequestReviews field if it's non-nil, zero value otherwise.

func (*DefaultWorkflowPermissionEnterprise) GetDefaultWorkflowPermissions

func (d *DefaultWorkflowPermissionEnterprise) GetDefaultWorkflowPermissions() string

GetDefaultWorkflowPermissions returns the DefaultWorkflowPermissions field if it's non-nil, zero value otherwise.

type DefaultWorkflowPermissionOrganization

type DefaultWorkflowPermissionOrganization struct {
	DefaultWorkflowPermissions   *string `json:"default_workflow_permissions,omitempty"`
	CanApprovePullRequestReviews *bool   `json:"can_approve_pull_request_reviews,omitempty"`
}

DefaultWorkflowPermissionOrganization represents the default permissions for GitHub Actions workflows for an organization.

GitHub API docs: https://docs.github.com/rest/actions/permissions

func (*DefaultWorkflowPermissionOrganization) GetCanApprovePullRequestReviews

func (d *DefaultWorkflowPermissionOrganization) GetCanApprovePullRequestReviews() bool

GetCanApprovePullRequestReviews returns the CanApprovePullRequestReviews field if it's non-nil, zero value otherwise.

func (*DefaultWorkflowPermissionOrganization) GetDefaultWorkflowPermissions

func (d *DefaultWorkflowPermissionOrganization) GetDefaultWorkflowPermissions() string

GetDefaultWorkflowPermissions returns the DefaultWorkflowPermissions field if it's non-nil, zero value otherwise.

type DefaultWorkflowPermissionRepository

type DefaultWorkflowPermissionRepository struct {
	DefaultWorkflowPermissions   *string `json:"default_workflow_permissions,omitempty"`
	CanApprovePullRequestReviews *bool   `json:"can_approve_pull_request_reviews,omitempty"`
}

DefaultWorkflowPermissionRepository represents the default permissions for GitHub Actions workflows for a repository.

GitHub API docs: https://docs.github.com/rest/actions/permissions

func (*DefaultWorkflowPermissionRepository) GetCanApprovePullRequestReviews

func (d *DefaultWorkflowPermissionRepository) GetCanApprovePullRequestReviews() bool

GetCanApprovePullRequestReviews returns the CanApprovePullRequestReviews field if it's non-nil, zero value otherwise.

func (*DefaultWorkflowPermissionRepository) GetDefaultWorkflowPermissions

func (d *DefaultWorkflowPermissionRepository) GetDefaultWorkflowPermissions() string

GetDefaultWorkflowPermissions returns the DefaultWorkflowPermissions field if it's non-nil, zero value otherwise.

type DeleteAnalysis

type DeleteAnalysis struct {
	// Next deletable analysis in chain, without last analysis deletion confirmation
	NextAnalysisURL *string `json:"next_analysis_url,omitempty"`
	// Next deletable analysis in chain, with last analysis deletion confirmation
	ConfirmDeleteURL *string `json:"confirm_delete_url,omitempty"`
}

DeleteAnalysis represents a successful deletion of a code scanning analysis.

func (*DeleteAnalysis) GetConfirmDeleteURL

func (d *DeleteAnalysis) GetConfirmDeleteURL() string

GetConfirmDeleteURL returns the ConfirmDeleteURL field if it's non-nil, zero value otherwise.

func (*DeleteAnalysis) GetNextAnalysisURL

func (d *DeleteAnalysis) GetNextAnalysisURL() string

GetNextAnalysisURL returns the NextAnalysisURL field if it's non-nil, zero value otherwise.

type DeleteEvent

type DeleteEvent struct {
	Ref *string `json:"ref,omitempty"`
	// RefType is the object that was deleted. Possible values are: "branch", "tag".
	RefType *string `json:"ref_type,omitempty"`

	// The following fields are only populated by Webhook events.
	PusherType   *string       `json:"pusher_type,omitempty"`
	Repo         *Repository   `json:"repository,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Org *Organization `json:"organization,omitempty"`
}

DeleteEvent represents a deleted branch or tag. The Webhook event name is "delete".

Note: webhooks will not receive this event for tags if more than three tags are deleted at once.

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/github-event-types#deleteevent

func (*DeleteEvent) GetInstallation

func (d *DeleteEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*DeleteEvent) GetOrg

func (d *DeleteEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*DeleteEvent) GetPusherType

func (d *DeleteEvent) GetPusherType() string

GetPusherType returns the PusherType field if it's non-nil, zero value otherwise.

func (*DeleteEvent) GetRef

func (d *DeleteEvent) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*DeleteEvent) GetRefType

func (d *DeleteEvent) GetRefType() string

GetRefType returns the RefType field if it's non-nil, zero value otherwise.

func (*DeleteEvent) GetRepo

func (d *DeleteEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*DeleteEvent) GetSender

func (d *DeleteEvent) GetSender() *User

GetSender returns the Sender field.

type DependabotAlert

type DependabotAlert struct {
	Number                *int                        `json:"number,omitempty"`
	State                 *string                     `json:"state,omitempty"`
	Dependency            *Dependency                 `json:"dependency,omitempty"`
	SecurityAdvisory      *DependabotSecurityAdvisory `json:"security_advisory,omitempty"`
	SecurityVulnerability *AdvisoryVulnerability      `json:"security_vulnerability,omitempty"`
	URL                   *string                     `json:"url,omitempty"`
	HTMLURL               *string                     `json:"html_url,omitempty"`
	CreatedAt             *Timestamp                  `json:"created_at,omitempty"`
	UpdatedAt             *Timestamp                  `json:"updated_at,omitempty"`
	DismissedAt           *Timestamp                  `json:"dismissed_at,omitempty"`
	DismissedBy           *User                       `json:"dismissed_by,omitempty"`
	DismissedReason       *string                     `json:"dismissed_reason,omitempty"`
	DismissedComment      *string                     `json:"dismissed_comment,omitempty"`
	FixedAt               *Timestamp                  `json:"fixed_at,omitempty"`
	AutoDismissedAt       *Timestamp                  `json:"auto_dismissed_at,omitempty"`
	// The repository is always empty for events
	Repository *Repository `json:"repository,omitempty"`
}

DependabotAlert represents a Dependabot alert.

func (*DependabotAlert) GetAutoDismissedAt

func (d *DependabotAlert) GetAutoDismissedAt() Timestamp

GetAutoDismissedAt returns the AutoDismissedAt field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetCreatedAt

func (d *DependabotAlert) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetDependency

func (d *DependabotAlert) GetDependency() *Dependency

GetDependency returns the Dependency field.

func (*DependabotAlert) GetDismissedAt

func (d *DependabotAlert) GetDismissedAt() Timestamp

GetDismissedAt returns the DismissedAt field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetDismissedBy

func (d *DependabotAlert) GetDismissedBy() *User

GetDismissedBy returns the DismissedBy field.

func (*DependabotAlert) GetDismissedComment

func (d *DependabotAlert) GetDismissedComment() string

GetDismissedComment returns the DismissedComment field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetDismissedReason

func (d *DependabotAlert) GetDismissedReason() string

GetDismissedReason returns the DismissedReason field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetFixedAt

func (d *DependabotAlert) GetFixedAt() Timestamp

GetFixedAt returns the FixedAt field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetHTMLURL

func (d *DependabotAlert) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetNumber

func (d *DependabotAlert) GetNumber() int

GetNumber returns the Number field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetRepository

func (d *DependabotAlert) GetRepository() *Repository

GetRepository returns the Repository field.

func (*DependabotAlert) GetSecurityAdvisory

func (d *DependabotAlert) GetSecurityAdvisory() *DependabotSecurityAdvisory

GetSecurityAdvisory returns the SecurityAdvisory field.

func (*DependabotAlert) GetSecurityVulnerability

func (d *DependabotAlert) GetSecurityVulnerability() *AdvisoryVulnerability

GetSecurityVulnerability returns the SecurityVulnerability field.

func (*DependabotAlert) GetState

func (d *DependabotAlert) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetURL

func (d *DependabotAlert) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*DependabotAlert) GetUpdatedAt

func (d *DependabotAlert) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type DependabotAlertEvent

type DependabotAlertEvent struct {
	Action *string          `json:"action,omitempty"`
	Alert  *DependabotAlert `json:"alert,omitempty"`

	// The following fields are only populated by Webhook events.
	Installation *Installation `json:"installation,omitempty"`
	Enterprise   *Enterprise   `json:"enterprise,omitempty"`
	Repo         *Repository   `json:"repository,omitempty"`
	Sender       *User         `json:"sender,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Organization *Organization `json:"organization,omitempty"`
}

DependabotAlertEvent is triggered when there is activity relating to Dependabot alerts. The Webhook event name is "dependabot_alert".

GitHub API docs: https://docs.github.com/webhooks-and-events/webhooks/webhook-events-and-payloads#dependabot_alert

func (*DependabotAlertEvent) GetAction

func (d *DependabotAlertEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*DependabotAlertEvent) GetAlert

func (d *DependabotAlertEvent) GetAlert() *DependabotAlert

GetAlert returns the Alert field.

func (*DependabotAlertEvent) GetEnterprise

func (d *DependabotAlertEvent) GetEnterprise() *Enterprise

GetEnterprise returns the Enterprise field.

func (*DependabotAlertEvent) GetInstallation

func (d *DependabotAlertEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*DependabotAlertEvent) GetOrganization

func (d *DependabotAlertEvent) GetOrganization() *Organization

GetOrganization returns the Organization field.

func (*DependabotAlertEvent) GetRepo

func (d *DependabotAlertEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*DependabotAlertEvent) GetSender

func (d *DependabotAlertEvent) GetSender() *User

GetSender returns the Sender field.

type DependabotAlertState

type DependabotAlertState struct {
	// The state of the Dependabot alert. A dismissed_reason must be provided when setting the state to dismissed.
	State string `json:"state"`
	// Required when state is dismissed. A reason for dismissing the alert.
	// Can be one of: fix_started, inaccurate, no_bandwidth, not_used, tolerable_risk
	DismissedReason *string `json:"dismissed_reason,omitempty"`
	// An optional comment associated with dismissing the alert.
	DismissedComment *string `json:"dismissed_comment,omitempty"`
}

DependabotAlertState represents the state of a Dependabot alert to update.

func (*DependabotAlertState) GetDismissedComment

func (d *DependabotAlertState) GetDismissedComment() string

GetDismissedComment returns the DismissedComment field if it's non-nil, zero value otherwise.

func (*DependabotAlertState) GetDismissedReason

func (d *DependabotAlertState) GetDismissedReason() string

GetDismissedReason returns the DismissedReason field if it's non-nil, zero value otherwise.

type DependabotEncryptedSecret

type DependabotEncryptedSecret struct {
	Name                  string                           `json:"-"`
	KeyID                 string                           `json:"key_id"`
	EncryptedValue        string                           `json:"encrypted_value"`
	Visibility            string                           `json:"visibility,omitempty"`
	SelectedRepositoryIDs DependabotSecretsSelectedRepoIDs `json:"selected_repository_ids,omitempty"`
}

DependabotEncryptedSecret represents a secret that is encrypted using a public key for Dependabot.

The value of EncryptedValue must be your secret, encrypted with LibSodium (see documentation here: https://libsodium.gitbook.io/doc/bindings_for_other_languages) using the public key retrieved using the GetPublicKey method.

type DependabotSecretsSelectedRepoIDs

type DependabotSecretsSelectedRepoIDs []int64

DependabotSecretsSelectedRepoIDs are the repository IDs that have access to the dependabot secrets.

type DependabotSecurityAdvisory

type DependabotSecurityAdvisory struct {
	GHSAID          *string                  `json:"ghsa_id,omitempty"`
	CVEID           *string                  `json:"cve_id,omitempty"`
	Summary         *string                  `json:"summary,omitempty"`
	Description     *string                  `json:"description,omitempty"`
	Vulnerabilities []*AdvisoryVulnerability `json:"vulnerabilities,omitempty"`
	Severity        *string                  `json:"severity,omitempty"`
	CVSS            *AdvisoryCVSS            `json:"cvss,omitempty"`
	CWEs            []*AdvisoryCWEs          `json:"cwes,omitempty"`
	Identifiers     []*AdvisoryIdentifier    `json:"identifiers,omitempty"`
	References      []*AdvisoryReference     `json:"references,omitempty"`
	PublishedAt     *Timestamp               `json:"published_at,omitempty"`
	UpdatedAt       *Timestamp               `json:"updated_at,omitempty"`
	WithdrawnAt     *Timestamp               `json:"withdrawn_at,omitempty"`
}

DependabotSecurityAdvisory represents the GitHub Security Advisory.

func (*DependabotSecurityAdvisory) GetCVEID

func (d *DependabotSecurityAdvisory) GetCVEID() string

GetCVEID returns the CVEID field if it's non-nil, zero value otherwise.

func (*DependabotSecurityAdvisory) GetCVSS

GetCVSS returns the CVSS field.

func (*DependabotSecurityAdvisory) GetDescription

func (d *DependabotSecurityAdvisory) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*DependabotSecurityAdvisory) GetGHSAID

func (d *DependabotSecurityAdvisory) GetGHSAID() string

GetGHSAID returns the GHSAID field if it's non-nil, zero value otherwise.

func (*DependabotSecurityAdvisory) GetPublishedAt

func (d *DependabotSecurityAdvisory) GetPublishedAt() Timestamp

GetPublishedAt returns the PublishedAt field if it's non-nil, zero value otherwise.

func (*DependabotSecurityAdvisory) GetSeverity

func (d *DependabotSecurityAdvisory) GetSeverity() string

GetSeverity returns the Severity field if it's non-nil, zero value otherwise.

func (*DependabotSecurityAdvisory) GetSummary

func (d *DependabotSecurityAdvisory) GetSummary() string

GetSummary returns the Summary field if it's non-nil, zero value otherwise.

func (*DependabotSecurityAdvisory) GetUpdatedAt

func (d *DependabotSecurityAdvisory) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*DependabotSecurityAdvisory) GetWithdrawnAt

func (d *DependabotSecurityAdvisory) GetWithdrawnAt() Timestamp

GetWithdrawnAt returns the WithdrawnAt field if it's non-nil, zero value otherwise.

type DependabotSecurityUpdates

type DependabotSecurityUpdates struct {
	Status *string `json:"status,omitempty"`
}

DependabotSecurityUpdates specifies the state of Dependabot security updates on a repository.

GitHub API docs: https://docs.github.com/code-security/dependabot/dependabot-security-updates/about-dependabot-security-updates

func (*DependabotSecurityUpdates) GetStatus

func (d *DependabotSecurityUpdates) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

func (DependabotSecurityUpdates) String

func (d DependabotSecurityUpdates) String() string

type DependabotService

type DependabotService service

DependabotService handles communication with the Dependabot related methods of the GitHub API.

GitHub API docs: https://docs.github.com/rest/dependabot/

func (*DependabotService) AddSelectedRepoToOrgSecret

func (s *DependabotService) AddSelectedRepoToOrgSecret(ctx context.Context, org, name string, repo *Repository) (*Response, error)

AddSelectedRepoToOrgSecret adds a repository to an organization Dependabot secret.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#add-selected-repository-to-an-organization-secret

func (*DependabotService) CreateOrUpdateOrgSecret

func (s *DependabotService) CreateOrUpdateOrgSecret(ctx context.Context, org string, eSecret *DependabotEncryptedSecret) (*Response, error)

CreateOrUpdateOrgSecret creates or updates an organization Dependabot secret with an encrypted value.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#create-or-update-an-organization-secret

func (*DependabotService) CreateOrUpdateRepoSecret

func (s *DependabotService) CreateOrUpdateRepoSecret(ctx context.Context, owner, repo string, eSecret *DependabotEncryptedSecret) (*Response, error)

CreateOrUpdateRepoSecret creates or updates a repository Dependabot secret with an encrypted value.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#create-or-update-a-repository-secret

func (*DependabotService) DeleteOrgSecret

func (s *DependabotService) DeleteOrgSecret(ctx context.Context, org, name string) (*Response, error)

DeleteOrgSecret deletes a Dependabot secret in an organization using the secret name.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#delete-an-organization-secret

func (*DependabotService) DeleteRepoSecret

func (s *DependabotService) DeleteRepoSecret(ctx context.Context, owner, repo, name string) (*Response, error)

DeleteRepoSecret deletes a Dependabot secret in a repository using the secret name.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#delete-a-repository-secret

func (*DependabotService) GetOrgPublicKey

func (s *DependabotService) GetOrgPublicKey(ctx context.Context, org string) (*PublicKey, *Response, error)

GetOrgPublicKey gets a public key that should be used for Dependabot secret encryption.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#get-an-organization-public-key

func (*DependabotService) GetOrgSecret

func (s *DependabotService) GetOrgSecret(ctx context.Context, org, name string) (*Secret, *Response, error)

GetOrgSecret gets a single organization Dependabot secret without revealing its encrypted value.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#get-an-organization-secret

func (*DependabotService) GetRepoAlert

func (s *DependabotService) GetRepoAlert(ctx context.Context, owner, repo string, number int) (*DependabotAlert, *Response, error)

GetRepoAlert gets a single repository Dependabot alert.

GitHub API docs: https://docs.github.com/rest/dependabot/alerts#get-a-dependabot-alert

func (*DependabotService) GetRepoPublicKey

func (s *DependabotService) GetRepoPublicKey(ctx context.Context, owner, repo string) (*PublicKey, *Response, error)

GetRepoPublicKey gets a public key that should be used for Dependabot secret encryption.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#get-a-repository-public-key

func (*DependabotService) GetRepoSecret

func (s *DependabotService) GetRepoSecret(ctx context.Context, owner, repo, name string) (*Secret, *Response, error)

GetRepoSecret gets a single repository Dependabot secret without revealing its encrypted value.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#get-a-repository-secret

func (*DependabotService) ListOrgAlerts

func (s *DependabotService) ListOrgAlerts(ctx context.Context, org string, opts *ListAlertsOptions) ([]*DependabotAlert, *Response, error)

ListOrgAlerts lists all Dependabot alerts of an organization.

GitHub API docs: https://docs.github.com/rest/dependabot/alerts#list-dependabot-alerts-for-an-organization

func (*DependabotService) ListOrgSecrets

func (s *DependabotService) ListOrgSecrets(ctx context.Context, org string, opts *ListOptions) (*Secrets, *Response, error)

ListOrgSecrets lists all Dependabot secrets available in an organization without revealing their encrypted values.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#list-organization-secrets

func (*DependabotService) ListRepoAlerts

func (s *DependabotService) ListRepoAlerts(ctx context.Context, owner, repo string, opts *ListAlertsOptions) ([]*DependabotAlert, *Response, error)

ListRepoAlerts lists all Dependabot alerts of a repository.

GitHub API docs: https://docs.github.com/rest/dependabot/alerts#list-dependabot-alerts-for-a-repository

func (*DependabotService) ListRepoSecrets

func (s *DependabotService) ListRepoSecrets(ctx context.Context, owner, repo string, opts *ListOptions) (*Secrets, *Response, error)

ListRepoSecrets lists all Dependabot secrets available in a repository without revealing their encrypted values.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#list-repository-secrets

func (*DependabotService) ListSelectedReposForOrgSecret

func (s *DependabotService) ListSelectedReposForOrgSecret(ctx context.Context, org, name string, opts *ListOptions) (*SelectedReposList, *Response, error)

ListSelectedReposForOrgSecret lists all repositories that have access to a Dependabot secret.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#list-selected-repositories-for-an-organization-secret

func (*DependabotService) RemoveSelectedRepoFromOrgSecret

func (s *DependabotService) RemoveSelectedRepoFromOrgSecret(ctx context.Context, org, name string, repo *Repository) (*Response, error)

RemoveSelectedRepoFromOrgSecret removes a repository from an organization Dependabot secret.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#remove-selected-repository-from-an-organization-secret

func (*DependabotService) SetSelectedReposForOrgSecret

func (s *DependabotService) SetSelectedReposForOrgSecret(ctx context.Context, org, name string, ids DependabotSecretsSelectedRepoIDs) (*Response, error)

SetSelectedReposForOrgSecret sets the repositories that have access to a Dependabot secret.

GitHub API docs: https://docs.github.com/rest/dependabot/secrets#set-selected-repositories-for-an-organization-secret

func (*DependabotService) UpdateAlert

func (s *DependabotService) UpdateAlert(ctx context.Context, owner, repo string, number int, stateInfo *DependabotAlertState) (*DependabotAlert, *Response, error)

UpdateAlert updates a Dependabot alert.

GitHub API docs: https://docs.github.com/rest/dependabot/alerts#update-a-dependabot-alert

type Dependency

type Dependency struct {
	Package      *VulnerabilityPackage `json:"package,omitempty"`
	ManifestPath *string               `json:"manifest_path,omitempty"`
	Scope        *string               `json:"scope,omitempty"`
}

Dependency represents the vulnerable dependency.

func (*Dependency) GetManifestPath

func (d *Dependency) GetManifestPath() string

GetManifestPath returns the ManifestPath field if it's non-nil, zero value otherwise.

func (*Dependency) GetPackage

func (d *Dependency) GetPackage() *VulnerabilityPackage

GetPackage returns the Package field.

func (*Dependency) GetScope

func (d *Dependency) GetScope() string

GetScope returns the Scope field if it's non-nil, zero value otherwise.

type DependencyGraphAutosubmitActionOptions

type DependencyGraphAutosubmitActionOptions struct {
	LabeledRunners *bool `json:"labeled_runners,omitempty"`
}

DependencyGraphAutosubmitActionOptions represents the options for the DependencyGraphAutosubmitAction.

func (*DependencyGraphAutosubmitActionOptions) GetLabeledRunners

func (d *DependencyGraphAutosubmitActionOptions) GetLabeledRunners() bool

GetLabeledRunners returns the LabeledRunners field if it's non-nil, zero value otherwise.

type DependencyGraphService

type DependencyGraphService service

func (*DependencyGraphService) CreateSnapshot

func (s *DependencyGraphService) CreateSnapshot(ctx context.Context, owner, repo string, dependencyGraphSnapshot *DependencyGraphSnapshot) (*DependencyGraphSnapshotCreationData, *Response, error)

CreateSnapshot creates a new snapshot of a repository's dependencies.

GitHub API docs: https://docs.github.com/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository

func (*DependencyGraphService) GetSBOM

func (s *DependencyGraphService) GetSBOM(ctx context.Context, owner, repo string) (*SBOM, *Response, error)

GetSBOM fetches the software bill of materials for a repository.

GitHub API docs: https://docs.github.com/rest/dependency-graph/sboms#export-a-software-bill-of-materials-sbom-for-a-repository

type DependencyGraphSnapshot

type DependencyGraphSnapshot struct {
	Version   int                                         `json:"version"`
	Sha       *string                                     `json:"sha,omitempty"`
	Ref       *string                                     `json:"ref,omitempty"`
	Job       *DependencyGraphSnapshotJob                 `json:"job,omitempty"`
	Detector  *DependencyGraphSnapshotDetector            `json:"detector,omitempty"`
	Scanned   *Timestamp                                  `json:"scanned,omitempty"`
	Manifests map[string]*DependencyGraphSnapshotManifest `json:"manifests,omitempty"`
}

DependencyGraphSnapshot represent a snapshot of a repository's dependencies.

GitHub API docs: https://docs.github.com/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository

func (*DependencyGraphSnapshot) GetDetector

GetDetector returns the Detector field.

func (*DependencyGraphSnapshot) GetJob

GetJob returns the Job field.

func (*DependencyGraphSnapshot) GetRef

func (d *DependencyGraphSnapshot) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshot) GetScanned

func (d *DependencyGraphSnapshot) GetScanned() Timestamp

GetScanned returns the Scanned field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshot) GetSha

func (d *DependencyGraphSnapshot) GetSha() string

GetSha returns the Sha field if it's non-nil, zero value otherwise.

type DependencyGraphSnapshotCreationData

type DependencyGraphSnapshotCreationData struct {
	ID        int64      `json:"id"`
	CreatedAt *Timestamp `json:"created_at,omitempty"`
	Message   *string    `json:"message,omitempty"`
	// Represents the snapshot creation result.
	// Can have the following values:
	//   - "SUCCESS": indicates that the snapshot was successfully created and the repository's dependencies were updated.
	//   - "ACCEPTED": indicates that the snapshot was successfully created, but the repository's dependencies were not updated.
	//   - "INVALID": indicates that the snapshot was malformed.
	Result *string `json:"result,omitempty"`
}

DependencyGraphSnapshotCreationData represents the dependency snapshot's creation result.

GitHub API docs: https://docs.github.com/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository

func (*DependencyGraphSnapshotCreationData) GetCreatedAt

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshotCreationData) GetMessage

GetMessage returns the Message field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshotCreationData) GetResult

GetResult returns the Result field if it's non-nil, zero value otherwise.

type DependencyGraphSnapshotDetector

type DependencyGraphSnapshotDetector struct {
	Name    *string `json:"name,omitempty"`
	Version *string `json:"version,omitempty"`
	URL     *string `json:"url,omitempty"`
}

DependencyGraphSnapshotDetector represents a description of the detector used.

GitHub API docs: https://docs.github.com/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository

func (*DependencyGraphSnapshotDetector) GetName

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshotDetector) GetURL

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshotDetector) GetVersion

func (d *DependencyGraphSnapshotDetector) GetVersion() string

GetVersion returns the Version field if it's non-nil, zero value otherwise.

type DependencyGraphSnapshotJob

type DependencyGraphSnapshotJob struct {
	Correlator *string `json:"correlator,omitempty"`
	ID         *string `json:"id,omitempty"`
	HTMLURL    *string `json:"html_url,omitempty"`
}

DependencyGraphSnapshotJob represents the job that created the snapshot.

GitHub API docs: https://docs.github.com/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository

func (*DependencyGraphSnapshotJob) GetCorrelator

func (d *DependencyGraphSnapshotJob) GetCorrelator() string

GetCorrelator returns the Correlator field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshotJob) GetHTMLURL

func (d *DependencyGraphSnapshotJob) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshotJob) GetID

GetID returns the ID field if it's non-nil, zero value otherwise.

type DependencyGraphSnapshotManifest

type DependencyGraphSnapshotManifest struct {
	Name     *string                                               `json:"name,omitempty"`
	File     *DependencyGraphSnapshotManifestFile                  `json:"file,omitempty"`
	Resolved map[string]*DependencyGraphSnapshotResolvedDependency `json:"resolved,omitempty"`
}

DependencyGraphSnapshotManifest represents a collection of related dependencies declared in a file or representing a logical group of dependencies.

GitHub API docs: https://docs.github.com/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository

func (*DependencyGraphSnapshotManifest) GetFile

GetFile returns the File field.

func (*DependencyGraphSnapshotManifest) GetName

GetName returns the Name field if it's non-nil, zero value otherwise.

type DependencyGraphSnapshotManifestFile

type DependencyGraphSnapshotManifestFile struct {
	SourceLocation *string `json:"source_location,omitempty"`
}

DependencyGraphSnapshotManifestFile represents the file declaring the repository's dependencies.

GitHub API docs: https://docs.github.com/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository

func (*DependencyGraphSnapshotManifestFile) GetSourceLocation

func (d *DependencyGraphSnapshotManifestFile) GetSourceLocation() string

GetSourceLocation returns the SourceLocation field if it's non-nil, zero value otherwise.

type DependencyGraphSnapshotResolvedDependency

type DependencyGraphSnapshotResolvedDependency struct {
	PackageURL *string `json:"package_url,omitempty"`
	// Represents whether the dependency is requested directly by the manifest or is a dependency of another dependency.
	// Can have the following values:
	//   - "direct": indicates that the dependency is requested directly by the manifest.
	//   - "indirect": indicates that the dependency is a dependency of another dependency.
	Relationship *string `json:"relationship,omitempty"`
	// Represents whether the dependency is required for the primary build artifact or is only used for development.
	// Can have the following values:
	//   - "runtime": indicates that the dependency is required for the primary build artifact.
	//   - "development": indicates that the dependency is only used for development.
	Scope        *string  `json:"scope,omitempty"`
	Dependencies []string `json:"dependencies,omitempty"`
}

DependencyGraphSnapshotResolvedDependency represents a resolved dependency in a dependency graph snapshot.

GitHub API docs: https://docs.github.com/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository

func (*DependencyGraphSnapshotResolvedDependency) GetPackageURL

GetPackageURL returns the PackageURL field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshotResolvedDependency) GetRelationship

GetRelationship returns the Relationship field if it's non-nil, zero value otherwise.

func (*DependencyGraphSnapshotResolvedDependency) GetScope

GetScope returns the Scope field if it's non-nil, zero value otherwise.

type DeployKeyEvent

type DeployKeyEvent struct {
	// Action is the action that was performed. Possible values are:
	// "created" or "deleted".
	Action *string `json:"action,omitempty"`

	// The deploy key resource.
	Key *Key `json:"key,omitempty"`

	// The Repository where the event occurred
	Repo *Repository `json:"repository,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Organization *Organization `json:"organization,omitempty"`

	// The following fields are only populated by Webhook events.
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
}

DeployKeyEvent is triggered when a deploy key is added or removed from a repository. The Webhook event name is "deploy_key".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#deploy_key

func (*DeployKeyEvent) GetAction

func (d *DeployKeyEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*DeployKeyEvent) GetInstallation

func (d *DeployKeyEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*DeployKeyEvent) GetKey

func (d *DeployKeyEvent) GetKey() *Key

GetKey returns the Key field.

func (*DeployKeyEvent) GetOrganization

func (d *DeployKeyEvent) GetOrganization() *Organization

GetOrganization returns the Organization field.

func (*DeployKeyEvent) GetRepo

func (d *DeployKeyEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*DeployKeyEvent) GetSender

func (d *DeployKeyEvent) GetSender() *User

GetSender returns the Sender field.

type Deployment

type Deployment struct {
	URL           *string         `json:"url,omitempty"`
	ID            *int64          `json:"id,omitempty"`
	SHA           *string         `json:"sha,omitempty"`
	Ref           *string         `json:"ref,omitempty"`
	Task          *string         `json:"task,omitempty"`
	Payload       json.RawMessage `json:"payload,omitempty"`
	Environment   *string         `json:"environment,omitempty"`
	Description   *string         `json:"description,omitempty"`
	Creator       *User           `json:"creator,omitempty"`
	CreatedAt     *Timestamp      `json:"created_at,omitempty"`
	UpdatedAt     *Timestamp      `json:"updated_at,omitempty"`
	StatusesURL   *string         `json:"statuses_url,omitempty"`
	RepositoryURL *string         `json:"repository_url,omitempty"`
	NodeID        *string         `json:"node_id,omitempty"`
}

Deployment represents a deployment in a repo.

func (*Deployment) GetCreatedAt

func (d *Deployment) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Deployment) GetCreator

func (d *Deployment) GetCreator() *User

GetCreator returns the Creator field.

func (*Deployment) GetDescription

func (d *Deployment) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*Deployment) GetEnvironment

func (d *Deployment) GetEnvironment() string

GetEnvironment returns the Environment field if it's non-nil, zero value otherwise.

func (*Deployment) GetID

func (d *Deployment) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Deployment) GetNodeID

func (d *Deployment) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Deployment) GetRef

func (d *Deployment) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*Deployment) GetRepositoryURL

func (d *Deployment) GetRepositoryURL() string

GetRepositoryURL returns the RepositoryURL field if it's non-nil, zero value otherwise.

func (*Deployment) GetSHA

func (d *Deployment) GetSHA() string

GetSHA returns the SHA field if it's non-nil, zero value otherwise.

func (*Deployment) GetStatusesURL

func (d *Deployment) GetStatusesURL() string

GetStatusesURL returns the StatusesURL field if it's non-nil, zero value otherwise.

func (*Deployment) GetTask

func (d *Deployment) GetTask() string

GetTask returns the Task field if it's non-nil, zero value otherwise.

func (*Deployment) GetURL

func (d *Deployment) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Deployment) GetUpdatedAt

func (d *Deployment) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type DeploymentBranchPolicy

type DeploymentBranchPolicy struct {
	Name   *string `json:"name,omitempty"`
	ID     *int64  `json:"id,omitempty"`
	NodeID *string `json:"node_id,omitempty"`
	Type   *string `json:"type,omitempty"`
}

DeploymentBranchPolicy represents a single deployment branch policy for an environment.

func (*DeploymentBranchPolicy) GetID

func (d *DeploymentBranchPolicy) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*DeploymentBranchPolicy) GetName

func (d *DeploymentBranchPolicy) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*DeploymentBranchPolicy) GetNodeID

func (d *DeploymentBranchPolicy) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*DeploymentBranchPolicy) GetType

func (d *DeploymentBranchPolicy) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

type DeploymentBranchPolicyRequest

type DeploymentBranchPolicyRequest struct {
	Name *string `json:"name,omitempty"`
	Type *string `json:"type,omitempty"`
}

DeploymentBranchPolicyRequest represents a deployment branch policy request.

func (*DeploymentBranchPolicyRequest) GetName

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*DeploymentBranchPolicyRequest) GetType

GetType returns the Type field if it's non-nil, zero value otherwise.

type DeploymentBranchPolicyResponse

type DeploymentBranchPolicyResponse struct {
	TotalCount     *int                      `json:"total_count,omitempty"`
	BranchPolicies []*DeploymentBranchPolicy `json:"branch_policies,omitempty"`
}

DeploymentBranchPolicyResponse represents the slightly different format of response that comes back when you list deployment branch policies.

func (*DeploymentBranchPolicyResponse) GetTotalCount

func (d *DeploymentBranchPolicyResponse) GetTotalCount() int

GetTotalCount returns the TotalCount field if it's non-nil, zero value otherwise.

type DeploymentEvent

type DeploymentEvent struct {
	Deployment  *Deployment  `json:"deployment,omitempty"`
	Repo        *Repository  `json:"repository,omitempty"`
	Workflow    *Workflow    `json:"workflow,omitempty"`
	WorkflowRun *WorkflowRun `json:"workflow_run,omitempty"`

	// The following fields are only populated by Webhook events.
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Org *Organization `json:"organization,omitempty"`
}

DeploymentEvent represents a deployment. The Webhook event name is "deployment".

Events of this type are not visible in timelines, they are only used to trigger hooks.

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#deployment

func (*DeploymentEvent) GetDeployment

func (d *DeploymentEvent) GetDeployment() *Deployment

GetDeployment returns the Deployment field.

func (*DeploymentEvent) GetInstallation

func (d *DeploymentEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*DeploymentEvent) GetOrg

func (d *DeploymentEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*DeploymentEvent) GetRepo

func (d *DeploymentEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*DeploymentEvent) GetSender

func (d *DeploymentEvent) GetSender() *User

GetSender returns the Sender field.

func (*DeploymentEvent) GetWorkflow

func (d *DeploymentEvent) GetWorkflow() *Workflow

GetWorkflow returns the Workflow field.

func (*DeploymentEvent) GetWorkflowRun

func (d *DeploymentEvent) GetWorkflowRun() *WorkflowRun

GetWorkflowRun returns the WorkflowRun field.

type DeploymentProtectionRuleEvent

type DeploymentProtectionRuleEvent struct {
	Action      *string `json:"action,omitempty"`
	Environment *string `json:"environment,omitempty"`
	Event       *string `json:"event,omitempty"`

	// The URL Github provides for a third-party to use in order to pass/fail a deployment gate
	DeploymentCallbackURL *string        `json:"deployment_callback_url,omitempty"`
	Deployment            *Deployment    `json:"deployment,omitempty"`
	Repo                  *Repository    `json:"repository,omitempty"`
	Organization          *Organization  `json:"organization,omitempty"`
	PullRequests          []*PullRequest `json:"pull_requests,omitempty"`
	Sender                *User          `json:"sender,omitempty"`
	Installation          *Installation  `json:"installation,omitempty"`
}

DeploymentProtectionRuleEvent represents a deployment protection rule event. The Webhook event name is "deployment_protection_rule".

GitHub API docs: https://docs.github.com/webhooks-and-events/webhooks/webhook-events-and-payloads#deployment_protection_rule

func (*DeploymentProtectionRuleEvent) GetAction

func (d *DeploymentProtectionRuleEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*DeploymentProtectionRuleEvent) GetDeployment

func (d *DeploymentProtectionRuleEvent) GetDeployment() *Deployment

GetDeployment returns the Deployment field.

func (*DeploymentProtectionRuleEvent) GetDeploymentCallbackURL

func (d *DeploymentProtectionRuleEvent) GetDeploymentCallbackURL() string

GetDeploymentCallbackURL returns the DeploymentCallbackURL field if it's non-nil, zero value otherwise.

func (*DeploymentProtectionRuleEvent) GetEnvironment

func (d *DeploymentProtectionRuleEvent) GetEnvironment() string

GetEnvironment returns the Environment field if it's non-nil, zero value otherwise.

func (*DeploymentProtectionRuleEvent) GetEvent

func (d *DeploymentProtectionRuleEvent) GetEvent() string

GetEvent returns the Event field if it's non-nil, zero value otherwise.

func (*DeploymentProtectionRuleEvent) GetInstallation

func (d *DeploymentProtectionRuleEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*DeploymentProtectionRuleEvent) GetOrganization

func (d *DeploymentProtectionRuleEvent) GetOrganization() *Organization

GetOrganization returns the Organization field.

func (*DeploymentProtectionRuleEvent) GetRepo

GetRepo returns the Repo field.

func (*DeploymentProtectionRuleEvent) GetRunID added in v69.2.0

func (e *DeploymentProtectionRuleEvent) GetRunID() (int64, error)

GetRunID is a Helper Function used to extract the workflow RunID from the *DeploymentProtectionRuleEvent.DeploymentCallBackURL.

func (*DeploymentProtectionRuleEvent) GetSender

func (d *DeploymentProtectionRuleEvent) GetSender() *User

GetSender returns the Sender field.

type DeploymentRequest

type DeploymentRequest struct {
	Ref                   *string     `json:"ref,omitempty"`
	Task                  *string     `json:"task,omitempty"`
	AutoMerge             *bool       `json:"auto_merge,omitempty"`
	RequiredContexts      *[]string   `json:"required_contexts,omitempty"`
	Payload               interface{} `json:"payload,omitempty"`
	Environment           *string     `json:"environment,omitempty"`
	Description           *string     `json:"description,omitempty"`
	TransientEnvironment  *bool       `json:"transient_environment,omitempty"`
	ProductionEnvironment *bool       `json:"production_environment,omitempty"`
}

DeploymentRequest represents a deployment request.

func (*DeploymentRequest) GetAutoMerge

func (d *DeploymentRequest) GetAutoMerge() bool

GetAutoMerge returns the AutoMerge field if it's non-nil, zero value otherwise.

func (*DeploymentRequest) GetDescription

func (d *DeploymentRequest) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*DeploymentRequest) GetEnvironment

func (d *DeploymentRequest) GetEnvironment() string

GetEnvironment returns the Environment field if it's non-nil, zero value otherwise.

func (*DeploymentRequest) GetProductionEnvironment

func (d *DeploymentRequest) GetProductionEnvironment() bool

GetProductionEnvironment returns the ProductionEnvironment field if it's non-nil, zero value otherwise.

func (*DeploymentRequest) GetRef

func (d *DeploymentRequest) GetRef() string

GetRef returns the Ref field if it's non-nil, zero value otherwise.

func (*DeploymentRequest) GetRequiredContexts

func (d *DeploymentRequest) GetRequiredContexts() []string

GetRequiredContexts returns the RequiredContexts field if it's non-nil, zero value otherwise.

func (*DeploymentRequest) GetTask

func (d *DeploymentRequest) GetTask() string

GetTask returns the Task field if it's non-nil, zero value otherwise.

func (*DeploymentRequest) GetTransientEnvironment

func (d *DeploymentRequest) GetTransientEnvironment() bool

GetTransientEnvironment returns the TransientEnvironment field if it's non-nil, zero value otherwise.

type DeploymentReviewEvent

type DeploymentReviewEvent struct {
	// The action performed. Possible values are: "requested", "approved", or "rejected".
	Action *string `json:"action,omitempty"`

	// The following will be populated only if requested.
	Requester   *User   `json:"requester,omitempty"`
	Environment *string `json:"environment,omitempty"`

	// The following will be populated only if approved or rejected.
	Approver        *User             `json:"approver,omitempty"`
	Comment         *string           `json:"comment,omitempty"`
	WorkflowJobRuns []*WorkflowJobRun `json:"workflow_job_runs,omitempty"`

	Enterprise     *Enterprise         `json:"enterprise,omitempty"`
	Installation   *Installation       `json:"installation,omitempty"`
	Organization   *Organization       `json:"organization,omitempty"`
	Repo           *Repository         `json:"repository,omitempty"`
	Reviewers      []*RequiredReviewer `json:"reviewers,omitempty"`
	Sender         *User               `json:"sender,omitempty"`
	Since          *string             `json:"since,omitempty"`
	WorkflowJobRun *WorkflowJobRun     `json:"workflow_job_run,omitempty"`
	WorkflowRun    *WorkflowRun        `json:"workflow_run,omitempty"`
}

DeploymentReviewEvent represents a deployment review event. The Webhook event name is "deployment_review".

GitHub API docs: https://docs.github.com/webhooks-and-events/webhooks/webhook-events-and-payloads?#deployment_review

func (*DeploymentReviewEvent) GetAction

func (d *DeploymentReviewEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*DeploymentReviewEvent) GetApprover

func (d *DeploymentReviewEvent) GetApprover() *User

GetApprover returns the Approver field.

func (*DeploymentReviewEvent) GetComment

func (d *DeploymentReviewEvent) GetComment() string

GetComment returns the Comment field if it's non-nil, zero value otherwise.

func (*DeploymentReviewEvent) GetEnterprise

func (d *DeploymentReviewEvent) GetEnterprise() *Enterprise

GetEnterprise returns the Enterprise field.

func (*DeploymentReviewEvent) GetEnvironment

func (d *DeploymentReviewEvent) GetEnvironment() string

GetEnvironment returns the Environment field if it's non-nil, zero value otherwise.

func (*DeploymentReviewEvent) GetInstallation

func (d *DeploymentReviewEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*DeploymentReviewEvent) GetOrganization

func (d *DeploymentReviewEvent) GetOrganization() *Organization

GetOrganization returns the Organization field.

func (*DeploymentReviewEvent) GetRepo

func (d *DeploymentReviewEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*DeploymentReviewEvent) GetRequester

func (d *DeploymentReviewEvent) GetRequester() *User

GetRequester returns the Requester field.

func (*DeploymentReviewEvent) GetSender

func (d *DeploymentReviewEvent) GetSender() *User

GetSender returns the Sender field.

func (*DeploymentReviewEvent) GetSince

func (d *DeploymentReviewEvent) GetSince() string

GetSince returns the Since field if it's non-nil, zero value otherwise.

func (*DeploymentReviewEvent) GetWorkflowJobRun

func (d *DeploymentReviewEvent) GetWorkflowJobRun() *WorkflowJobRun

GetWorkflowJobRun returns the WorkflowJobRun field.

func (*DeploymentReviewEvent) GetWorkflowRun

func (d *DeploymentReviewEvent) GetWorkflowRun() *WorkflowRun

GetWorkflowRun returns the WorkflowRun field.

type DeploymentStatus

type DeploymentStatus struct {
	ID *int64 `json:"id,omitempty"`
	// State is the deployment state.
	// Possible values are: "pending", "success", "failure", "error",
	// "inactive", "in_progress", "queued".
	State          *string    `json:"state,omitempty"`
	Creator        *User      `json:"creator,omitempty"`
	Description    *string    `json:"description,omitempty"`
	Environment    *string    `json:"environment,omitempty"`
	NodeID         *string    `json:"node_id,omitempty"`
	CreatedAt      *Timestamp `json:"created_at,omitempty"`
	UpdatedAt      *Timestamp `json:"updated_at,omitempty"`
	TargetURL      *string    `json:"target_url,omitempty"`
	DeploymentURL  *string    `json:"deployment_url,omitempty"`
	RepositoryURL  *string    `json:"repository_url,omitempty"`
	EnvironmentURL *string    `json:"environment_url,omitempty"`
	LogURL         *string    `json:"log_url,omitempty"`
	URL            *string    `json:"url,omitempty"`
}

DeploymentStatus represents the status of a particular deployment.

func (*DeploymentStatus) GetCreatedAt

func (d *DeploymentStatus) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetCreator

func (d *DeploymentStatus) GetCreator() *User

GetCreator returns the Creator field.

func (*DeploymentStatus) GetDeploymentURL

func (d *DeploymentStatus) GetDeploymentURL() string

GetDeploymentURL returns the DeploymentURL field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetDescription

func (d *DeploymentStatus) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetEnvironment

func (d *DeploymentStatus) GetEnvironment() string

GetEnvironment returns the Environment field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetEnvironmentURL

func (d *DeploymentStatus) GetEnvironmentURL() string

GetEnvironmentURL returns the EnvironmentURL field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetID

func (d *DeploymentStatus) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetLogURL

func (d *DeploymentStatus) GetLogURL() string

GetLogURL returns the LogURL field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetNodeID

func (d *DeploymentStatus) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetRepositoryURL

func (d *DeploymentStatus) GetRepositoryURL() string

GetRepositoryURL returns the RepositoryURL field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetState

func (d *DeploymentStatus) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetTargetURL

func (d *DeploymentStatus) GetTargetURL() string

GetTargetURL returns the TargetURL field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetURL

func (d *DeploymentStatus) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*DeploymentStatus) GetUpdatedAt

func (d *DeploymentStatus) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type DeploymentStatusEvent

type DeploymentStatusEvent struct {
	Action           *string           `json:"action,omitempty"`
	Deployment       *Deployment       `json:"deployment,omitempty"`
	DeploymentStatus *DeploymentStatus `json:"deployment_status,omitempty"`
	Repo             *Repository       `json:"repository,omitempty"`

	// The following fields are only populated by Webhook events.
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Org *Organization `json:"organization,omitempty"`
}

DeploymentStatusEvent represents a deployment status. The Webhook event name is "deployment_status".

Events of this type are not visible in timelines, they are only used to trigger hooks.

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#deployment_status

func (*DeploymentStatusEvent) GetAction

func (d *DeploymentStatusEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*DeploymentStatusEvent) GetDeployment

func (d *DeploymentStatusEvent) GetDeployment() *Deployment

GetDeployment returns the Deployment field.

func (*DeploymentStatusEvent) GetDeploymentStatus

func (d *DeploymentStatusEvent) GetDeploymentStatus() *DeploymentStatus

GetDeploymentStatus returns the DeploymentStatus field.

func (*DeploymentStatusEvent) GetInstallation

func (d *DeploymentStatusEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*DeploymentStatusEvent) GetOrg

func (d *DeploymentStatusEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*DeploymentStatusEvent) GetRepo

func (d *DeploymentStatusEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*DeploymentStatusEvent) GetSender

func (d *DeploymentStatusEvent) GetSender() *User

GetSender returns the Sender field.

type DeploymentStatusRequest

type DeploymentStatusRequest struct {
	State          *string `json:"state,omitempty"`
	LogURL         *string `json:"log_url,omitempty"`
	Description    *string `json:"description,omitempty"`
	Environment    *string `json:"environment,omitempty"`
	EnvironmentURL *string `json:"environment_url,omitempty"`
	AutoInactive   *bool   `json:"auto_inactive,omitempty"`
}

DeploymentStatusRequest represents a deployment request.

func (*DeploymentStatusRequest) GetAutoInactive

func (d *DeploymentStatusRequest) GetAutoInactive() bool

GetAutoInactive returns the AutoInactive field if it's non-nil, zero value otherwise.

func (*DeploymentStatusRequest) GetDescription

func (d *DeploymentStatusRequest) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*DeploymentStatusRequest) GetEnvironment

func (d *DeploymentStatusRequest) GetEnvironment() string

GetEnvironment returns the Environment field if it's non-nil, zero value otherwise.

func (*DeploymentStatusRequest) GetEnvironmentURL

func (d *DeploymentStatusRequest) GetEnvironmentURL() string

GetEnvironmentURL returns the EnvironmentURL field if it's non-nil, zero value otherwise.

func (*DeploymentStatusRequest) GetLogURL

func (d *DeploymentStatusRequest) GetLogURL() string

GetLogURL returns the LogURL field if it's non-nil, zero value otherwise.

func (*DeploymentStatusRequest) GetState

func (d *DeploymentStatusRequest) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

type DeploymentsListOptions

type DeploymentsListOptions struct {
	// SHA of the Deployment.
	SHA string `url:"sha,omitempty"`

	// List deployments for a given ref.
	Ref string `url:"ref,omitempty"`

	// List deployments for a given task.
	Task string `url:"task,omitempty"`

	// List deployments for a given environment.
	Environment string `url:"environment,omitempty"`

	ListOptions
}

DeploymentsListOptions specifies the optional parameters to the RepositoriesService.ListDeployments method.

type Discussion

type Discussion struct {
	RepositoryURL      *string             `json:"repository_url,omitempty"`
	DiscussionCategory *DiscussionCategory `json:"category,omitempty"`
	AnswerHTMLURL      *string             `json:"answer_html_url,omitempty"`
	AnswerChosenAt     *Timestamp          `json:"answer_chosen_at,omitempty"`
	AnswerChosenBy     *string             `json:"answer_chosen_by,omitempty"`
	HTMLURL            *string             `json:"html_url,omitempty"`
	ID                 *int64              `json:"id,omitempty"`
	NodeID             *string             `json:"node_id,omitempty"`
	Number             *int                `json:"number,omitempty"`
	Title              *string             `json:"title,omitempty"`
	User               *User               `json:"user,omitempty"`
	State              *string             `json:"state,omitempty"`
	Locked             *bool               `json:"locked,omitempty"`
	Comments           *int                `json:"comments,omitempty"`
	CreatedAt          *Timestamp          `json:"created_at,omitempty"`
	UpdatedAt          *Timestamp          `json:"updated_at,omitempty"`
	AuthorAssociation  *string             `json:"author_association,omitempty"`
	ActiveLockReason   *string             `json:"active_lock_reason,omitempty"`
	Body               *string             `json:"body,omitempty"`
}

Discussion represents a discussion in a GitHub DiscussionEvent.

func (*Discussion) GetActiveLockReason

func (d *Discussion) GetActiveLockReason() string

GetActiveLockReason returns the ActiveLockReason field if it's non-nil, zero value otherwise.

func (*Discussion) GetAnswerChosenAt

func (d *Discussion) GetAnswerChosenAt() Timestamp

GetAnswerChosenAt returns the AnswerChosenAt field if it's non-nil, zero value otherwise.

func (*Discussion) GetAnswerChosenBy

func (d *Discussion) GetAnswerChosenBy() string

GetAnswerChosenBy returns the AnswerChosenBy field if it's non-nil, zero value otherwise.

func (*Discussion) GetAnswerHTMLURL

func (d *Discussion) GetAnswerHTMLURL() string

GetAnswerHTMLURL returns the AnswerHTMLURL field if it's non-nil, zero value otherwise.

func (*Discussion) GetAuthorAssociation

func (d *Discussion) GetAuthorAssociation() string

GetAuthorAssociation returns the AuthorAssociation field if it's non-nil, zero value otherwise.

func (*Discussion) GetBody

func (d *Discussion) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*Discussion) GetComments

func (d *Discussion) GetComments() int

GetComments returns the Comments field if it's non-nil, zero value otherwise.

func (*Discussion) GetCreatedAt

func (d *Discussion) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Discussion) GetDiscussionCategory

func (d *Discussion) GetDiscussionCategory() *DiscussionCategory

GetDiscussionCategory returns the DiscussionCategory field.

func (*Discussion) GetHTMLURL

func (d *Discussion) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Discussion) GetID

func (d *Discussion) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Discussion) GetLocked

func (d *Discussion) GetLocked() bool

GetLocked returns the Locked field if it's non-nil, zero value otherwise.

func (*Discussion) GetNodeID

func (d *Discussion) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Discussion) GetNumber

func (d *Discussion) GetNumber() int

GetNumber returns the Number field if it's non-nil, zero value otherwise.

func (*Discussion) GetRepositoryURL

func (d *Discussion) GetRepositoryURL() string

GetRepositoryURL returns the RepositoryURL field if it's non-nil, zero value otherwise.

func (*Discussion) GetState

func (d *Discussion) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

func (*Discussion) GetTitle

func (d *Discussion) GetTitle() string

GetTitle returns the Title field if it's non-nil, zero value otherwise.

func (*Discussion) GetUpdatedAt

func (d *Discussion) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*Discussion) GetUser

func (d *Discussion) GetUser() *User

GetUser returns the User field.

type DiscussionCategory

type DiscussionCategory struct {
	ID           *int64     `json:"id,omitempty"`
	NodeID       *string    `json:"node_id,omitempty"`
	RepositoryID *int64     `json:"repository_id,omitempty"`
	Emoji        *string    `json:"emoji,omitempty"`
	Name         *string    `json:"name,omitempty"`
	Description  *string    `json:"description,omitempty"`
	CreatedAt    *Timestamp `json:"created_at,omitempty"`
	UpdatedAt    *Timestamp `json:"updated_at,omitempty"`
	Slug         *string    `json:"slug,omitempty"`
	IsAnswerable *bool      `json:"is_answerable,omitempty"`
}

DiscussionCategory represents a discussion category in a GitHub DiscussionEvent.

func (*DiscussionCategory) GetCreatedAt

func (d *DiscussionCategory) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*DiscussionCategory) GetDescription

func (d *DiscussionCategory) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*DiscussionCategory) GetEmoji

func (d *DiscussionCategory) GetEmoji() string

GetEmoji returns the Emoji field if it's non-nil, zero value otherwise.

func (*DiscussionCategory) GetID

func (d *DiscussionCategory) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*DiscussionCategory) GetIsAnswerable

func (d *DiscussionCategory) GetIsAnswerable() bool

GetIsAnswerable returns the IsAnswerable field if it's non-nil, zero value otherwise.

func (*DiscussionCategory) GetName

func (d *DiscussionCategory) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*DiscussionCategory) GetNodeID

func (d *DiscussionCategory) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*DiscussionCategory) GetRepositoryID

func (d *DiscussionCategory) GetRepositoryID() int64

GetRepositoryID returns the RepositoryID field if it's non-nil, zero value otherwise.

func (*DiscussionCategory) GetSlug

func (d *DiscussionCategory) GetSlug() string

GetSlug returns the Slug field if it's non-nil, zero value otherwise.

func (*DiscussionCategory) GetUpdatedAt

func (d *DiscussionCategory) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type DiscussionComment

type DiscussionComment struct {
	Author        *User      `json:"author,omitempty"`
	Body          *string    `json:"body,omitempty"`
	BodyHTML      *string    `json:"body_html,omitempty"`
	BodyVersion   *string    `json:"body_version,omitempty"`
	CreatedAt     *Timestamp `json:"created_at,omitempty"`
	LastEditedAt  *Timestamp `json:"last_edited_at,omitempty"`
	DiscussionURL *string    `json:"discussion_url,omitempty"`
	HTMLURL       *string    `json:"html_url,omitempty"`
	NodeID        *string    `json:"node_id,omitempty"`
	Number        *int       `json:"number,omitempty"`
	UpdatedAt     *Timestamp `json:"updated_at,omitempty"`
	URL           *string    `json:"url,omitempty"`
	Reactions     *Reactions `json:"reactions,omitempty"`
}

DiscussionComment represents a GitHub discussion in a team.

func (*DiscussionComment) GetAuthor

func (d *DiscussionComment) GetAuthor() *User

GetAuthor returns the Author field.

func (*DiscussionComment) GetBody

func (d *DiscussionComment) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetBodyHTML

func (d *DiscussionComment) GetBodyHTML() string

GetBodyHTML returns the BodyHTML field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetBodyVersion

func (d *DiscussionComment) GetBodyVersion() string

GetBodyVersion returns the BodyVersion field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetCreatedAt

func (d *DiscussionComment) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetDiscussionURL

func (d *DiscussionComment) GetDiscussionURL() string

GetDiscussionURL returns the DiscussionURL field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetHTMLURL

func (d *DiscussionComment) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetLastEditedAt

func (d *DiscussionComment) GetLastEditedAt() Timestamp

GetLastEditedAt returns the LastEditedAt field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetNodeID

func (d *DiscussionComment) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetNumber

func (d *DiscussionComment) GetNumber() int

GetNumber returns the Number field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetReactions

func (d *DiscussionComment) GetReactions() *Reactions

GetReactions returns the Reactions field.

func (*DiscussionComment) GetURL

func (d *DiscussionComment) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*DiscussionComment) GetUpdatedAt

func (d *DiscussionComment) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (DiscussionComment) String

func (c DiscussionComment) String() string

type DiscussionCommentEvent

type DiscussionCommentEvent struct {
	// Action is the action that was performed on the comment.
	// Possible values are: "created", "edited", "deleted". ** check what all can be added
	Action       *string            `json:"action,omitempty"`
	Discussion   *Discussion        `json:"discussion,omitempty"`
	Comment      *CommentDiscussion `json:"comment,omitempty"`
	Repo         *Repository        `json:"repository,omitempty"`
	Org          *Organization      `json:"organization,omitempty"`
	Sender       *User              `json:"sender,omitempty"`
	Installation *Installation      `json:"installation,omitempty"`
}

DiscussionCommentEvent represents a webhook event for a comment on discussion. The Webhook event name is "discussion_comment".

GitHub API docs: https://docs.github.com/webhooks-and-events/webhooks/webhook-events-and-payloads#discussion_comment

func (*DiscussionCommentEvent) GetAction

func (d *DiscussionCommentEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*DiscussionCommentEvent) GetComment

func (d *DiscussionCommentEvent) GetComment() *CommentDiscussion

GetComment returns the Comment field.

func (*DiscussionCommentEvent) GetDiscussion

func (d *DiscussionCommentEvent) GetDiscussion() *Discussion

GetDiscussion returns the Discussion field.

func (*DiscussionCommentEvent) GetInstallation

func (d *DiscussionCommentEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*DiscussionCommentEvent) GetOrg

func (d *DiscussionCommentEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*DiscussionCommentEvent) GetRepo

func (d *DiscussionCommentEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*DiscussionCommentEvent) GetSender

func (d *DiscussionCommentEvent) GetSender() *User

GetSender returns the Sender field.

type DiscussionCommentListOptions

type DiscussionCommentListOptions struct {
	// Sorts the discussion comments by the date they were created.
	// Accepted values are asc and desc. Default is desc.
	Direction string `url:"direction,omitempty"`
	ListOptions
}

DiscussionCommentListOptions specifies optional parameters to the TeamServices.ListComments method.

type DiscussionEvent

type DiscussionEvent struct {
	// Action is the action that was performed. Possible values are:
	// created, edited, deleted, pinned, unpinned, locked, unlocked,
	// transferred, category_changed, answered, or unanswered.
	Action       *string       `json:"action,omitempty"`
	Discussion   *Discussion   `json:"discussion,omitempty"`
	Repo         *Repository   `json:"repository,omitempty"`
	Org          *Organization `json:"organization,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
}

DiscussionEvent represents a webhook event for a discussion. The Webhook event name is "discussion".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#discussion

func (*DiscussionEvent) GetAction

func (d *DiscussionEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*DiscussionEvent) GetDiscussion

func (d *DiscussionEvent) GetDiscussion() *Discussion

GetDiscussion returns the Discussion field.

func (*DiscussionEvent) GetInstallation

func (d *DiscussionEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*DiscussionEvent) GetOrg

func (d *DiscussionEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*DiscussionEvent) GetRepo

func (d *DiscussionEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*DiscussionEvent) GetSender

func (d *DiscussionEvent) GetSender() *User

GetSender returns the Sender field.

type DiscussionListOptions

type DiscussionListOptions struct {
	// Sorts the discussion by the date they were created.
	// Accepted values are asc and desc. Default is desc.
	Direction string `url:"direction,omitempty"`

	ListOptions
}

DiscussionListOptions specifies optional parameters to the TeamServices.ListDiscussions method.

type DismissStaleReviewsOnPushChanges

type DismissStaleReviewsOnPushChanges struct {
	From *bool `json:"from,omitempty"`
}

DismissStaleReviewsOnPushChanges represents the changes made to the DismissStaleReviewsOnPushChanges policy.

func (*DismissStaleReviewsOnPushChanges) GetFrom

GetFrom returns the From field if it's non-nil, zero value otherwise.

type DismissalRestrictions

type DismissalRestrictions struct {
	// The list of users who can dismiss pull request reviews.
	Users []*User `json:"users"`
	// The list of teams which can dismiss pull request reviews.
	Teams []*Team `json:"teams"`
	// The list of apps which can dismiss pull request reviews.
	Apps []*App `json:"apps"`
}

DismissalRestrictions specifies which users and teams can dismiss pull request reviews.

type DismissalRestrictionsRequest

type DismissalRestrictionsRequest struct {
	// The list of user logins who can dismiss pull request reviews. (Required; use nil to disable dismissal_restrictions or &[]string{} otherwise.)
	Users *[]string `json:"users,omitempty"`
	// The list of team slugs which can dismiss pull request reviews. (Required; use nil to disable dismissal_restrictions or &[]string{} otherwise.)
	Teams *[]string `json:"teams,omitempty"`
	// The list of app slugs which can dismiss pull request reviews. (Required; use nil to disable dismissal_restrictions or &[]string{} otherwise.)
	Apps *[]string `json:"apps,omitempty"`
}

DismissalRestrictionsRequest represents the request to create/edit the restriction to allows only specific users, teams or apps to dismiss pull request reviews. It is separate from DismissalRestrictions above because the request structure is different from the response structure. Note: Both Users and Teams must be nil, or both must be non-nil.

func (*DismissalRestrictionsRequest) GetApps

func (d *DismissalRestrictionsRequest) GetApps() []string

GetApps returns the Apps field if it's non-nil, zero value otherwise.

func (*DismissalRestrictionsRequest) GetTeams

func (d *DismissalRestrictionsRequest) GetTeams() []string

GetTeams returns the Teams field if it's non-nil, zero value otherwise.

func (*DismissalRestrictionsRequest) GetUsers

func (d *DismissalRestrictionsRequest) GetUsers() []string

GetUsers returns the Users field if it's non-nil, zero value otherwise.

type DismissedReview

type DismissedReview struct {
	// State represents the state of the dismissed review.
	// Possible values are: "commented", "approved", and "changes_requested".
	State             *string `json:"state,omitempty"`
	ReviewID          *int64  `json:"review_id,omitempty"`
	DismissalMessage  *string `json:"dismissal_message,omitempty"`
	DismissalCommitID *string `json:"dismissal_commit_id,omitempty"`
}

DismissedReview represents details for 'dismissed_review' events.

func (*DismissedReview) GetDismissalCommitID

func (d *DismissedReview) GetDismissalCommitID() string

GetDismissalCommitID returns the DismissalCommitID field if it's non-nil, zero value otherwise.

func (*DismissedReview) GetDismissalMessage

func (d *DismissedReview) GetDismissalMessage() string

GetDismissalMessage returns the DismissalMessage field if it's non-nil, zero value otherwise.

func (*DismissedReview) GetReviewID

func (d *DismissedReview) GetReviewID() int64

GetReviewID returns the ReviewID field if it's non-nil, zero value otherwise.

func (*DismissedReview) GetState

func (d *DismissedReview) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

type DispatchRequestOptions

type DispatchRequestOptions struct {
	// EventType is a custom webhook event name. (Required.)
	EventType string `json:"event_type"`
	// ClientPayload is a custom JSON payload with extra information about the webhook event.
	// Defaults to an empty JSON object.
	ClientPayload *json.RawMessage `json:"client_payload,omitempty"`
}

DispatchRequestOptions represents a request to trigger a repository_dispatch event.

func (*DispatchRequestOptions) GetClientPayload

func (d *DispatchRequestOptions) GetClientPayload() json.RawMessage

GetClientPayload returns the ClientPayload field if it's non-nil, zero value otherwise.

type DraftReviewComment

type DraftReviewComment struct {
	Path     *string `json:"path,omitempty"`
	Position *int    `json:"position,omitempty"`
	Body     *string `json:"body,omitempty"`

	// The new comfort-fade-preview fields
	StartSide *string `json:"start_side,omitempty"`
	Side      *string `json:"side,omitempty"`
	StartLine *int    `json:"start_line,omitempty"`
	Line      *int    `json:"line,omitempty"`
}

DraftReviewComment represents a comment part of the review.

func (*DraftReviewComment) GetBody

func (d *DraftReviewComment) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*DraftReviewComment) GetLine

func (d *DraftReviewComment) GetLine() int

GetLine returns the Line field if it's non-nil, zero value otherwise.

func (*DraftReviewComment) GetPath

func (d *DraftReviewComment) GetPath() string

GetPath returns the Path field if it's non-nil, zero value otherwise.

func (*DraftReviewComment) GetPosition

func (d *DraftReviewComment) GetPosition() int

GetPosition returns the Position field if it's non-nil, zero value otherwise.

func (*DraftReviewComment) GetSide

func (d *DraftReviewComment) GetSide() string

GetSide returns the Side field if it's non-nil, zero value otherwise.

func (*DraftReviewComment) GetStartLine

func (d *DraftReviewComment) GetStartLine() int

GetStartLine returns the StartLine field if it's non-nil, zero value otherwise.

func (*DraftReviewComment) GetStartSide

func (d *DraftReviewComment) GetStartSide() string

GetStartSide returns the StartSide field if it's non-nil, zero value otherwise.

func (DraftReviewComment) String

func (c DraftReviewComment) String() string

type EditBase

type EditBase struct {
	Ref *EditRef `json:"ref,omitempty"`
	SHA *EditSHA `json:"sha,omitempty"`
}

EditBase represents the change of a pull-request base branch.

func (*EditBase) GetRef

func (e *EditBase) GetRef() *EditRef

GetRef returns the Ref field.

func (*EditBase) GetSHA

func (e *EditBase) GetSHA() *EditSHA

GetSHA returns the SHA field.

type EditBody

type EditBody struct {
	From *string `json:"from,omitempty"`
}

EditBody represents a change of pull-request body.

func (*EditBody) GetFrom

func (e *EditBody) GetFrom() string

GetFrom returns the From field if it's non-nil, zero value otherwise.

type EditChange

type EditChange struct {
	Title         *EditTitle         `json:"title,omitempty"`
	Body          *EditBody          `json:"body,omitempty"`
	Base          *EditBase          `json:"base,omitempty"`
	Repo          *EditRepo          `json:"repository,omitempty"`
	Owner         *EditOwner         `json:"owner,omitempty"`
	DefaultBranch *EditDefaultBranch `json:"default_branch,omitempty"`
	Topics        *EditTopics        `json:"topics,omitempty"`
}

EditChange represents the changes when an issue, pull request, comment, or repository has been edited.

func (*EditChange) GetBase

func (e *EditChange) GetBase() *EditBase

GetBase returns the Base field.

func (*EditChange) GetBody

func (e *EditChange) GetBody() *EditBody

GetBody returns the Body field.

func (*EditChange) GetDefaultBranch

func (e *EditChange) GetDefaultBranch() *EditDefaultBranch

GetDefaultBranch returns the DefaultBranch field.

func (*EditChange) GetOwner

func (e *EditChange) GetOwner() *EditOwner

GetOwner returns the Owner field.

func (*EditChange) GetRepo

func (e *EditChange) GetRepo() *EditRepo

GetRepo returns the Repo field.

func (*EditChange) GetTitle

func (e *EditChange) GetTitle() *EditTitle

GetTitle returns the Title field.

func (*EditChange) GetTopics

func (e *EditChange) GetTopics() *EditTopics

GetTopics returns the Topics field.

type EditDefaultBranch

type EditDefaultBranch struct {
	From *string `json:"from,omitempty"`
}

EditDefaultBranch represents a change of repository's default branch name.

func (*EditDefaultBranch) GetFrom

func (e *EditDefaultBranch) GetFrom() string

GetFrom returns the From field if it's non-nil, zero value otherwise.

type EditOwner

type EditOwner struct {
	OwnerInfo *OwnerInfo `json:"from,omitempty"`
}

EditOwner represents a change of repository ownership.

func (*EditOwner) GetOwnerInfo

func (e *EditOwner) GetOwnerInfo() *OwnerInfo

GetOwnerInfo returns the OwnerInfo field.

type EditRef

type EditRef struct {
	From *string `json:"from,omitempty"`
}

EditRef represents a ref change of a pull-request.

func (*EditRef) GetFrom

func (e *EditRef) GetFrom() string

GetFrom returns the From field if it's non-nil, zero value otherwise.

type EditRepo

type EditRepo struct {
	Name *RepoName `json:"name,omitempty"`
}

EditRepo represents a change of repository name.

func (*EditRepo) GetName

func (e *EditRepo) GetName() *RepoName

GetName returns the Name field.

type EditSHA

type EditSHA struct {
	From *string `json:"from,omitempty"`
}

EditSHA represents a sha change of a pull-request.

func (*EditSHA) GetFrom

func (e *EditSHA) GetFrom() string

GetFrom returns the From field if it's non-nil, zero value otherwise.

type EditTitle

type EditTitle struct {
	From *string `json:"from,omitempty"`
}

EditTitle represents a pull-request title change.

func (*EditTitle) GetFrom

func (e *EditTitle) GetFrom() string

GetFrom returns the From field if it's non-nil, zero value otherwise.

type EditTopics

type EditTopics struct {
	From []string `json:"from,omitempty"`
}

EditTopics represents a change of repository topics.

type EmojisService

type EmojisService service

EmojisService provides access to emoji-related functions in the GitHub API.

func (*EmojisService) List

func (s *EmojisService) List(ctx context.Context) (map[string]string, *Response, error)

List returns the emojis available to use on GitHub.

GitHub API docs: https://docs.github.com/rest/emojis/emojis#get-emojis

type EmptyRuleParameters

type EmptyRuleParameters struct{}

EmptyRuleParameters represents the parameters for a rule with no options.

type EncryptedSecret

type EncryptedSecret struct {
	Name                  string          `json:"-"`
	KeyID                 string          `json:"key_id"`
	EncryptedValue        string          `json:"encrypted_value"`
	Visibility            string          `json:"visibility,omitempty"`
	SelectedRepositoryIDs SelectedRepoIDs `json:"selected_repository_ids,omitempty"`
}

EncryptedSecret represents a secret that is encrypted using a public key.

The value of EncryptedValue must be your secret, encrypted with LibSodium (see documentation here: https://libsodium.gitbook.io/doc/bindings_for_other_languages) using the public key retrieved using the GetPublicKey method.

type Enterprise

type Enterprise struct {
	ID          *int       `json:"id,omitempty"`
	Slug        *string    `json:"slug,omitempty"`
	Name        *string    `json:"name,omitempty"`
	NodeID      *string    `json:"node_id,omitempty"`
	AvatarURL   *string    `json:"avatar_url,omitempty"`
	Description *string    `json:"description,omitempty"`
	WebsiteURL  *string    `json:"website_url,omitempty"`
	HTMLURL     *string    `json:"html_url,omitempty"`
	CreatedAt   *Timestamp `json:"created_at,omitempty"`
	UpdatedAt   *Timestamp `json:"updated_at,omitempty"`
}

Enterprise represents the GitHub enterprise profile.

func (*Enterprise) GetAvatarURL

func (e *Enterprise) GetAvatarURL() string

GetAvatarURL returns the AvatarURL field if it's non-nil, zero value otherwise.

func (*Enterprise) GetCreatedAt

func (e *Enterprise) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Enterprise) GetDescription

func (e *Enterprise) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*Enterprise) GetHTMLURL

func (e *Enterprise) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Enterprise) GetID

func (e *Enterprise) GetID() int

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Enterprise) GetName

func (e *Enterprise) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*Enterprise) GetNodeID

func (e *Enterprise) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Enterprise) GetSlug

func (e *Enterprise) GetSlug() string

GetSlug returns the Slug field if it's non-nil, zero value otherwise.

func (*Enterprise) GetUpdatedAt

func (e *Enterprise) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*Enterprise) GetWebsiteURL

func (e *Enterprise) GetWebsiteURL() string

GetWebsiteURL returns the WebsiteURL field if it's non-nil, zero value otherwise.

func (Enterprise) String

func (m Enterprise) String() string

type EnterpriseRunnerGroup

type EnterpriseRunnerGroup struct {
	ID                           *int64   `json:"id,omitempty"`
	Name                         *string  `json:"name,omitempty"`
	Visibility                   *string  `json:"visibility,omitempty"`
	Default                      *bool    `json:"default,omitempty"`
	SelectedOrganizationsURL     *string  `json:"selected_organizations_url,omitempty"`
	RunnersURL                   *string  `json:"runners_url,omitempty"`
	Inherited                    *bool    `json:"inherited,omitempty"`
	AllowsPublicRepositories     *bool    `json:"allows_public_repositories,omitempty"`
	RestrictedToWorkflows        *bool    `json:"restricted_to_workflows,omitempty"`
	SelectedWorkflows            []string `json:"selected_workflows,omitempty"`
	WorkflowRestrictionsReadOnly *bool    `json:"workflow_restrictions_read_only,omitempty"`
}

EnterpriseRunnerGroup represents a self-hosted runner group configured in an enterprise.

func (*EnterpriseRunnerGroup) GetAllowsPublicRepositories

func (e *EnterpriseRunnerGroup) GetAllowsPublicRepositories() bool

GetAllowsPublicRepositories returns the AllowsPublicRepositories field if it's non-nil, zero value otherwise.

func (*EnterpriseRunnerGroup) GetDefault

func (e *EnterpriseRunnerGroup) GetDefault() bool

GetDefault returns the Default field if it's non-nil, zero value otherwise.

func (*EnterpriseRunnerGroup) GetID

func (e *EnterpriseRunnerGroup) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*EnterpriseRunnerGroup) GetInherited

func (e *EnterpriseRunnerGroup) GetInherited() bool

GetInherited returns the Inherited field if it's non-nil, zero value otherwise.

func (*EnterpriseRunnerGroup) GetName

func (e *EnterpriseRunnerGroup) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*EnterpriseRunnerGroup) GetRestrictedToWorkflows

func (e *EnterpriseRunnerGroup) GetRestrictedToWorkflows() bool

GetRestrictedToWorkflows returns the RestrictedToWorkflows field if it's non-nil, zero value otherwise.

func (*EnterpriseRunnerGroup) GetRunnersURL

func (e *EnterpriseRunnerGroup) GetRunnersURL() string

GetRunnersURL returns the RunnersURL field if it's non-nil, zero value otherwise.

func (*EnterpriseRunnerGroup) GetSelectedOrganizationsURL

func (e *EnterpriseRunnerGroup) GetSelectedOrganizationsURL() string

GetSelectedOrganizationsURL returns the SelectedOrganizationsURL field if it's non-nil, zero value otherwise.

func (*EnterpriseRunnerGroup) GetVisibility

func (e *EnterpriseRunnerGroup) GetVisibility() string

GetVisibility returns the Visibility field if it's non-nil, zero value otherwise.

func (*EnterpriseRunnerGroup) GetWorkflowRestrictionsReadOnly

func (e *EnterpriseRunnerGroup) GetWorkflowRestrictionsReadOnly() bool

GetWorkflowRestrictionsReadOnly returns the WorkflowRestrictionsReadOnly field if it's non-nil, zero value otherwise.

type EnterpriseRunnerGroups

type EnterpriseRunnerGroups struct {
	TotalCount   *int                     `json:"total_count,omitempty"`
	RunnerGroups []*EnterpriseRunnerGroup `json:"runner_groups"`
}

EnterpriseRunnerGroups represents a collection of self-hosted runner groups configured for an enterprise.

func (*EnterpriseRunnerGroups) GetTotalCount

func (e *EnterpriseRunnerGroups) GetTotalCount() int

GetTotalCount returns the TotalCount field if it's non-nil, zero value otherwise.

type EnterpriseSecurityAnalysisSettings

type EnterpriseSecurityAnalysisSettings struct {
	AdvancedSecurityEnabledForNewRepositories             *bool   `json:"advanced_security_enabled_for_new_repositories,omitempty"`
	SecretScanningEnabledForNewRepositories               *bool   `json:"secret_scanning_enabled_for_new_repositories,omitempty"`
	SecretScanningPushProtectionEnabledForNewRepositories *bool   `json:"secret_scanning_push_protection_enabled_for_new_repositories,omitempty"`
	SecretScanningPushProtectionCustomLink                *string `json:"secret_scanning_push_protection_custom_link,omitempty"`
	SecretScanningValidityChecksEnabled                   *bool   `json:"secret_scanning_validity_checks_enabled,omitempty"`
}

EnterpriseSecurityAnalysisSettings represents security analysis settings for an enterprise.

func (*EnterpriseSecurityAnalysisSettings) GetAdvancedSecurityEnabledForNewRepositories

func (e *EnterpriseSecurityAnalysisSettings) GetAdvancedSecurityEnabledForNewRepositories() bool

GetAdvancedSecurityEnabledForNewRepositories returns the AdvancedSecurityEnabledForNewRepositories field if it's non-nil, zero value otherwise.

func (*EnterpriseSecurityAnalysisSettings) GetSecretScanningEnabledForNewRepositories

func (e *EnterpriseSecurityAnalysisSettings) GetSecretScanningEnabledForNewRepositories() bool

GetSecretScanningEnabledForNewRepositories returns the SecretScanningEnabledForNewRepositories field if it's non-nil, zero value otherwise.

func (e *EnterpriseSecurityAnalysisSettings) GetSecretScanningPushProtectionCustomLink() string

GetSecretScanningPushProtectionCustomLink returns the SecretScanningPushProtectionCustomLink field if it's non-nil, zero value otherwise.

func (*EnterpriseSecurityAnalysisSettings) GetSecretScanningPushProtectionEnabledForNewRepositories

func (e *EnterpriseSecurityAnalysisSettings) GetSecretScanningPushProtectionEnabledForNewRepositories() bool

GetSecretScanningPushProtectionEnabledForNewRepositories returns the SecretScanningPushProtectionEnabledForNewRepositories field if it's non-nil, zero value otherwise.

func (*EnterpriseSecurityAnalysisSettings) GetSecretScanningValidityChecksEnabled

func (e *EnterpriseSecurityAnalysisSettings) GetSecretScanningValidityChecksEnabled() bool

GetSecretScanningValidityChecksEnabled returns the SecretScanningValidityChecksEnabled field if it's non-nil, zero value otherwise.

type EnterpriseService

type EnterpriseService service

EnterpriseService provides access to the enterprise related functions in the GitHub API.

GitHub API docs: https://docs.github.com/rest/enterprise-admin/

func (*EnterpriseService) AddOrganizationAccessRunnerGroup

func (s *EnterpriseService) AddOrganizationAccessRunnerGroup(ctx context.Context, enterprise string, groupID, orgID int64) (*Response, error)

AddOrganizationAccessRunnerGroup adds an organization to the list of selected organizations that can access a self-hosted runner group. The runner group must have visibility set to 'selected'.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#add-organization-access-to-a-self-hosted-runner-group-in-an-enterprise

func (*EnterpriseService) AddRunnerGroupRunners

func (s *EnterpriseService) AddRunnerGroupRunners(ctx context.Context, enterprise string, groupID, runnerID int64) (*Response, error)

AddRunnerGroupRunners adds a self-hosted runner to a runner group configured in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#add-a-self-hosted-runner-to-a-group-for-an-enterprise

func (*EnterpriseService) CheckSystemRequirements

func (s *EnterpriseService) CheckSystemRequirements(ctx context.Context) (*SystemRequirements, *Response, error)

CheckSystemRequirements checks if GHES system nodes meet the system requirements.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-system-requirement-check-results-for-configured-cluster-nodes

func (*EnterpriseService) ClusterStatus

func (s *EnterpriseService) ClusterStatus(ctx context.Context) (*ClusterStatus, *Response, error)

ClusterStatus gets the status of all services running on each cluster node.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-status-of-services-running-on-all-cluster-nodes

func (*EnterpriseService) ConfigApply

ConfigApply triggers a configuration apply run on the GitHub Enterprise instance.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#trigger-a-ghe-config-apply-run

func (*EnterpriseService) ConfigApplyEvents

ConfigApplyEvents gets events from the command ghe-config-apply.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#list-events-from-ghe-config-apply

func (*EnterpriseService) ConfigApplyStatus

func (s *EnterpriseService) ConfigApplyStatus(ctx context.Context, opts *ConfigApplyOptions) (*ConfigApplyStatus, *Response, error)

ConfigApplyStatus gets the status of a ghe-config-apply run on the GitHub Enterprise instance. You can request lat one or specific id one.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-status-of-a-ghe-config-apply-run

func (*EnterpriseService) CreateEnterpriseRunnerGroup

func (s *EnterpriseService) CreateEnterpriseRunnerGroup(ctx context.Context, enterprise string, createReq CreateEnterpriseRunnerGroupRequest) (*EnterpriseRunnerGroup, *Response, error)

CreateEnterpriseRunnerGroup creates a new self-hosted runner group for an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#create-a-self-hosted-runner-group-for-an-enterprise

func (*EnterpriseService) CreateMaintenance

func (s *EnterpriseService) CreateMaintenance(ctx context.Context, enable bool, opts *MaintenanceOptions) ([]*MaintenanceOperationStatus, *Response, error)

CreateMaintenance sets the maintenance mode for the instance. With the enable parameter we can control to put instance into maintenance mode or not. With false we can disable the maintenance mode.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#set-the-status-of-maintenance-mode

func (*EnterpriseService) CreateOrUpdateCustomProperties

func (s *EnterpriseService) CreateOrUpdateCustomProperties(ctx context.Context, enterprise string, properties []*CustomProperty) ([]*CustomProperty, *Response, error)

CreateOrUpdateCustomProperties creates new or updates existing custom properties that are defined for the specified enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/custom-properties#create-or-update-custom-properties-for-an-enterprise

func (*EnterpriseService) CreateOrUpdateCustomProperty

func (s *EnterpriseService) CreateOrUpdateCustomProperty(ctx context.Context, enterprise, customPropertyName string, property *CustomProperty) (*CustomProperty, *Response, error)

CreateOrUpdateCustomProperty creates a new or updates an existing custom property that is defined for the specified enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/custom-properties#create-or-update-a-custom-property-for-an-enterprise

func (*EnterpriseService) CreateRegistrationToken

func (s *EnterpriseService) CreateRegistrationToken(ctx context.Context, enterprise string) (*RegistrationToken, *Response, error)

CreateRegistrationToken creates a token that can be used to add a self-hosted runner.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runners#create-a-registration-token-for-an-enterprise

func (*EnterpriseService) CreateRepositoryRuleset

func (s *EnterpriseService) CreateRepositoryRuleset(ctx context.Context, enterprise string, ruleset RepositoryRuleset) (*RepositoryRuleset, *Response, error)

CreateRepositoryRuleset creates a repository ruleset for the specified enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/rules#create-an-enterprise-repository-ruleset

func (*EnterpriseService) CreateSSHKey

func (s *EnterpriseService) CreateSSHKey(ctx context.Context, key string) ([]*SSHKeyStatus, *Response, error)

CreateSSHKey adds a new SSH key to the instance.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#set-a-new-ssh-key

func (*EnterpriseService) DeleteEnterpriseRunnerGroup

func (s *EnterpriseService) DeleteEnterpriseRunnerGroup(ctx context.Context, enterprise string, groupID int64) (*Response, error)

DeleteEnterpriseRunnerGroup deletes a self-hosted runner group from an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#delete-a-self-hosted-runner-group-from-an-enterprise

func (*EnterpriseService) DeleteRepositoryRuleset

func (s *EnterpriseService) DeleteRepositoryRuleset(ctx context.Context, enterprise string, rulesetID int64) (*Response, error)

DeleteRepositoryRuleset deletes a repository ruleset from the specified enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/rules#delete-an-enterprise-repository-ruleset

func (*EnterpriseService) DeleteSSHKey

func (s *EnterpriseService) DeleteSSHKey(ctx context.Context, key string) ([]*SSHKeyStatus, *Response, error)

DeleteSSHKey deletes the SSH key from the instance.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#delete-a-ssh-key

func (*EnterpriseService) EnableDisableSecurityFeature

func (s *EnterpriseService) EnableDisableSecurityFeature(ctx context.Context, enterprise, securityProduct, enablement string) (*Response, error)

EnableDisableSecurityFeature enables or disables a security feature for all repositories in an enterprise.

Valid values for securityProduct: "advanced_security", "secret_scanning", "secret_scanning_push_protection". Valid values for enablement: "enable_all", "disable_all".

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/code-security-and-analysis#enable-or-disable-a-security-feature

func (*EnterpriseService) GenerateEnterpriseJITConfig

func (s *EnterpriseService) GenerateEnterpriseJITConfig(ctx context.Context, enterprise string, request *GenerateJITConfigRequest) (*JITRunnerConfig, *Response, error)

GenerateEnterpriseJITConfig generates a just-in-time configuration for an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runners#create-configuration-for-a-just-in-time-runner-for-an-enterprise

func (*EnterpriseService) GetAllCustomProperties

func (s *EnterpriseService) GetAllCustomProperties(ctx context.Context, enterprise string) ([]*CustomProperty, *Response, error)

GetAllCustomProperties gets all custom properties that are defined for the specified enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/custom-properties#get-custom-properties-for-an-enterprise

func (*EnterpriseService) GetAuditLog

func (s *EnterpriseService) GetAuditLog(ctx context.Context, enterprise string, opts *GetAuditLogOptions) ([]*AuditEntry, *Response, error)

GetAuditLog gets the audit-log entries for an organization.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/audit-log#get-the-audit-log-for-an-enterprise

func (*EnterpriseService) GetCodeSecurityAndAnalysis

func (s *EnterpriseService) GetCodeSecurityAndAnalysis(ctx context.Context, enterprise string) (*EnterpriseSecurityAnalysisSettings, *Response, error)

GetCodeSecurityAndAnalysis gets code security and analysis features for an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/code-security-and-analysis#get-code-security-and-analysis-features-for-an-enterprise

func (*EnterpriseService) GetCustomProperty

func (s *EnterpriseService) GetCustomProperty(ctx context.Context, enterprise, customPropertyName string) (*CustomProperty, *Response, error)

GetCustomProperty gets a custom property that is defined for the specified enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/custom-properties#get-a-custom-property-for-an-enterprise

func (*EnterpriseService) GetEnterpriseRunnerGroup

func (s *EnterpriseService) GetEnterpriseRunnerGroup(ctx context.Context, enterprise string, groupID int64) (*EnterpriseRunnerGroup, *Response, error)

GetEnterpriseRunnerGroup gets a specific self-hosted runner group for an enterprise using its RunnerGroup ID.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#get-a-self-hosted-runner-group-for-an-enterprise

func (*EnterpriseService) GetMaintenanceStatus

func (s *EnterpriseService) GetMaintenanceStatus(ctx context.Context, opts *NodeQueryOptions) ([]*MaintenanceStatus, *Response, error)

GetMaintenanceStatus gets the status of maintenance mode for all nodes.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-status-of-maintenance-mode

func (*EnterpriseService) GetNodeReleaseVersions

func (s *EnterpriseService) GetNodeReleaseVersions(ctx context.Context, opts *NodeQueryOptions) ([]*NodeReleaseVersion, *Response, error)

GetNodeReleaseVersions gets the version information deployed to each node.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-all-ghes-release-versions-for-all-nodes

func (*EnterpriseService) GetRepositoryRuleset

func (s *EnterpriseService) GetRepositoryRuleset(ctx context.Context, enterprise string, rulesetID int64) (*RepositoryRuleset, *Response, error)

GetRepositoryRuleset gets a repository ruleset for the specified enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/rules#get-an-enterprise-repository-ruleset

func (*EnterpriseService) GetRunner

func (s *EnterpriseService) GetRunner(ctx context.Context, enterprise string, runnerID int64) (*Runner, *Response, error)

GetRunner gets a specific self-hosted runner configured in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runners#get-a-self-hosted-runner-for-an-enterprise

func (*EnterpriseService) GetSSHKey

func (s *EnterpriseService) GetSSHKey(ctx context.Context) ([]*ClusterSSHKey, *Response, error)

GetSSHKey gets the SSH keys configured for the instance.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-configured-ssh-keys

func (*EnterpriseService) InitialConfig

func (s *EnterpriseService) InitialConfig(ctx context.Context, license, password string) (*Response, error)

InitialConfig initializes the GitHub Enterprise instance with a license and password. After initializing the instance, you need to run an apply to apply the configuration.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#initialize-instance-configuration-with-license-and-password

func (*EnterpriseService) License

func (s *EnterpriseService) License(ctx context.Context) ([]*LicenseStatus, *Response, error)

License gets the current license information for the GitHub Enterprise instance.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-enterprise-license-information

func (*EnterpriseService) LicenseStatus

func (s *EnterpriseService) LicenseStatus(ctx context.Context) ([]*LicenseCheck, *Response, error)

LicenseStatus gets the current license status for the GitHub Enterprise instance.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#check-a-license

func (*EnterpriseService) ListOrganizationAccessRunnerGroup

func (s *EnterpriseService) ListOrganizationAccessRunnerGroup(ctx context.Context, enterprise string, groupID int64, opts *ListOptions) (*ListOrganizations, *Response, error)

ListOrganizationAccessRunnerGroup lists the organizations with access to a self-hosted runner group configured in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#list-organization-access-to-a-self-hosted-runner-group-in-an-enterprise

func (*EnterpriseService) ListRunnerApplicationDownloads

func (s *EnterpriseService) ListRunnerApplicationDownloads(ctx context.Context, enterprise string) ([]*RunnerApplicationDownload, *Response, error)

ListRunnerApplicationDownloads lists self-hosted runner application binaries that can be downloaded and run.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runners#list-runner-applications-for-an-enterprise

func (*EnterpriseService) ListRunnerGroupRunners

func (s *EnterpriseService) ListRunnerGroupRunners(ctx context.Context, enterprise string, groupID int64, opts *ListOptions) (*Runners, *Response, error)

ListRunnerGroupRunners lists self-hosted runners that are in a specific enterprise group.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#list-self-hosted-runners-in-a-group-for-an-enterprise

func (*EnterpriseService) ListRunnerGroups

ListRunnerGroups lists all self-hosted runner groups configured in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#list-self-hosted-runner-groups-for-an-enterprise

func (*EnterpriseService) ListRunners

func (s *EnterpriseService) ListRunners(ctx context.Context, enterprise string, opts *ListRunnersOptions) (*Runners, *Response, error)

ListRunners lists all the self-hosted runners for a enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runners#list-self-hosted-runners-for-an-enterprise

func (*EnterpriseService) NodeMetadata

NodeMetadata gets the metadata for all nodes in the GitHub Enterprise instance. This is required for clustered setups.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-ghes-node-metadata-for-all-nodes

func (*EnterpriseService) RemoveCustomProperty

func (s *EnterpriseService) RemoveCustomProperty(ctx context.Context, enterprise, customPropertyName string) (*Response, error)

RemoveCustomProperty removes a custom property that is defined for the specified enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/custom-properties#remove-a-custom-property-for-an-enterprise

func (*EnterpriseService) RemoveOrganizationAccessRunnerGroup

func (s *EnterpriseService) RemoveOrganizationAccessRunnerGroup(ctx context.Context, enterprise string, groupID, orgID int64) (*Response, error)

RemoveOrganizationAccessRunnerGroup removes an organization from the list of selected organizations that can access a self-hosted runner group. The runner group must have visibility set to 'selected'.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#remove-organization-access-to-a-self-hosted-runner-group-in-an-enterprise

func (*EnterpriseService) RemoveRunner

func (s *EnterpriseService) RemoveRunner(ctx context.Context, enterprise string, runnerID int64) (*Response, error)

RemoveRunner forces the removal of a self-hosted runner from an enterprise using the runner id.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runners#delete-a-self-hosted-runner-from-an-enterprise

func (*EnterpriseService) RemoveRunnerGroupRunners

func (s *EnterpriseService) RemoveRunnerGroupRunners(ctx context.Context, enterprise string, groupID, runnerID int64) (*Response, error)

RemoveRunnerGroupRunners removes a self-hosted runner from a group configured in an enterprise. The runner is then returned to the default group.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#remove-a-self-hosted-runner-from-a-group-for-an-enterprise

func (*EnterpriseService) ReplicationStatus

func (s *EnterpriseService) ReplicationStatus(ctx context.Context, opts *NodeQueryOptions) (*ClusterStatus, *Response, error)

ReplicationStatus gets the status of all services running on each replica node.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-status-of-services-running-on-all-replica-nodes

func (*EnterpriseService) SetOrganizationAccessRunnerGroup

func (s *EnterpriseService) SetOrganizationAccessRunnerGroup(ctx context.Context, enterprise string, groupID int64, ids SetOrgAccessRunnerGroupRequest) (*Response, error)

SetOrganizationAccessRunnerGroup replaces the list of organizations that have access to a self-hosted runner group configured in an enterprise with a new List of organizations.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#set-organization-access-for-a-self-hosted-runner-group-in-an-enterprise

func (*EnterpriseService) SetRunnerGroupRunners

func (s *EnterpriseService) SetRunnerGroupRunners(ctx context.Context, enterprise string, groupID int64, ids SetRunnerGroupRunnersRequest) (*Response, error)

SetRunnerGroupRunners replaces the list of self-hosted runners that are part of an enterprise runner group with a new list of runners.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#set-self-hosted-runners-in-a-group-for-an-enterprise

func (*EnterpriseService) Settings

Settings gets the current configuration settings for the GitHub Enterprise instance.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-ghes-settings

func (*EnterpriseService) UpdateCodeSecurityAndAnalysis

func (s *EnterpriseService) UpdateCodeSecurityAndAnalysis(ctx context.Context, enterprise string, settings *EnterpriseSecurityAnalysisSettings) (*Response, error)

UpdateCodeSecurityAndAnalysis updates code security and analysis features for new repositories in an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/code-security-and-analysis#update-code-security-and-analysis-features-for-an-enterprise

func (*EnterpriseService) UpdateEnterpriseRunnerGroup

func (s *EnterpriseService) UpdateEnterpriseRunnerGroup(ctx context.Context, enterprise string, groupID int64, updateReq UpdateEnterpriseRunnerGroupRequest) (*EnterpriseRunnerGroup, *Response, error)

UpdateEnterpriseRunnerGroup updates a self-hosted runner group for an enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/self-hosted-runner-groups#update-a-self-hosted-runner-group-for-an-enterprise

func (*EnterpriseService) UpdateRepositoryRuleset

func (s *EnterpriseService) UpdateRepositoryRuleset(ctx context.Context, enterprise string, rulesetID int64, ruleset RepositoryRuleset) (*RepositoryRuleset, *Response, error)

UpdateRepositoryRuleset updates a repository ruleset for the specified enterprise.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/rules#update-an-enterprise-repository-ruleset

func (*EnterpriseService) UpdateRepositoryRulesetClearBypassActor

func (s *EnterpriseService) UpdateRepositoryRulesetClearBypassActor(ctx context.Context, enterprise string, rulesetID int64) (*Response, error)

UpdateRepositoryRulesetClearBypassActor clears the bypass actors for a repository ruleset for the specified enterprise.

This function is necessary as the UpdateRepositoryRuleset function does not marshal ByPassActor if passed as an empty array.

GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/enterprise-admin/rules#update-an-enterprise-repository-ruleset

func (*EnterpriseService) UpdateSettings

func (s *EnterpriseService) UpdateSettings(ctx context.Context, opts *ConfigSettings) (*Response, error)

UpdateSettings updates the configuration settings for the GitHub Enterprise instance.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#set-settings

func (*EnterpriseService) UploadLicense

func (s *EnterpriseService) UploadLicense(ctx context.Context, license string) (*Response, error)

UploadLicense uploads a new license to the GitHub Enterprise instance.

GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#upload-an-enterprise-license

type EnvResponse

type EnvResponse struct {
	TotalCount   *int           `json:"total_count,omitempty"`
	Environments []*Environment `json:"environments,omitempty"`
}

EnvResponse represents the slightly different format of response that comes back when you list an environment.

func (*EnvResponse) GetTotalCount

func (e *EnvResponse) GetTotalCount() int

GetTotalCount returns the TotalCount field if it's non-nil, zero value otherwise.

type EnvReviewers

type EnvReviewers struct {
	Type *string `json:"type,omitempty"`
	ID   *int64  `json:"id,omitempty"`
}

EnvReviewers represents a single environment reviewer entry.

func (*EnvReviewers) GetID

func (e *EnvReviewers) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*EnvReviewers) GetType

func (e *EnvReviewers) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

type Environment

type Environment struct {
	Owner                  *string         `json:"owner,omitempty"`
	Repo                   *string         `json:"repo,omitempty"`
	EnvironmentName        *string         `json:"environment_name,omitempty"`
	WaitTimer              *int            `json:"wait_timer,omitempty"`
	Reviewers              []*EnvReviewers `json:"reviewers,omitempty"`
	DeploymentBranchPolicy *BranchPolicy   `json:"deployment_branch_policy,omitempty"`
	// Return/response only values
	ID              *int64            `json:"id,omitempty"`
	NodeID          *string           `json:"node_id,omitempty"`
	Name            *string           `json:"name,omitempty"`
	URL             *string           `json:"url,omitempty"`
	HTMLURL         *string           `json:"html_url,omitempty"`
	CreatedAt       *Timestamp        `json:"created_at,omitempty"`
	UpdatedAt       *Timestamp        `json:"updated_at,omitempty"`
	CanAdminsBypass *bool             `json:"can_admins_bypass,omitempty"`
	ProtectionRules []*ProtectionRule `json:"protection_rules,omitempty"`
}

Environment represents a single environment in a repository.

func (*Environment) GetCanAdminsBypass

func (e *Environment) GetCanAdminsBypass() bool

GetCanAdminsBypass returns the CanAdminsBypass field if it's non-nil, zero value otherwise.

func (*Environment) GetCreatedAt

func (e *Environment) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Environment) GetDeploymentBranchPolicy

func (e *Environment) GetDeploymentBranchPolicy() *BranchPolicy

GetDeploymentBranchPolicy returns the DeploymentBranchPolicy field.

func (*Environment) GetEnvironmentName

func (e *Environment) GetEnvironmentName() string

GetEnvironmentName returns the EnvironmentName field if it's non-nil, zero value otherwise.

func (*Environment) GetHTMLURL

func (e *Environment) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Environment) GetID

func (e *Environment) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Environment) GetName

func (e *Environment) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*Environment) GetNodeID

func (e *Environment) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Environment) GetOwner

func (e *Environment) GetOwner() string

GetOwner returns the Owner field if it's non-nil, zero value otherwise.

func (*Environment) GetRepo

func (e *Environment) GetRepo() string

GetRepo returns the Repo field if it's non-nil, zero value otherwise.

func (*Environment) GetURL

func (e *Environment) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Environment) GetUpdatedAt

func (e *Environment) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*Environment) GetWaitTimer

func (e *Environment) GetWaitTimer() int

GetWaitTimer returns the WaitTimer field if it's non-nil, zero value otherwise.

type EnvironmentListOptions

type EnvironmentListOptions struct {
	ListOptions
}

EnvironmentListOptions specifies the optional parameters to the RepositoriesService.ListEnvironments method.

type Error

type Error struct {
	Resource string `json:"resource"` // resource on which the error occurred
	Field    string `json:"field"`    // field on which the error occurred
	Code     string `json:"code"`     // validation error code
	Message  string `json:"message"`  // Message describing the error. Errors with Code == "custom" will always have this set.
}

An Error reports more details on an individual error in an ErrorResponse. These are the possible validation error codes:

missing:
    resource does not exist
missing_field:
    a required field on a resource has not been set
invalid:
    the formatting of a field is invalid
already_exists:
    another resource has the same valid as this field
custom:
    some resources return this (e.g. github.User.CreateKey()), additional
    information is set in the Message field of the Error

GitHub error responses structure are often undocumented and inconsistent. Sometimes error is just a simple string (Issue #540). In such cases, Message represents an error message as a workaround.

GitHub API docs: https://docs.github.com/rest/#client-errors

func (*Error) Error

func (e *Error) Error() string

func (*Error) UnmarshalJSON

func (e *Error) UnmarshalJSON(data []byte) error

type ErrorBlock

type ErrorBlock struct {
	Reason    string     `json:"reason,omitempty"`
	CreatedAt *Timestamp `json:"created_at,omitempty"`
}

ErrorBlock contains a further explanation for the reason of an error. See https://developer.github.com/changes/2016-03-17-the-451-status-code-is-now-supported/ for more information.

func (*ErrorBlock) GetCreatedAt

func (e *ErrorBlock) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

type ErrorResponse

type ErrorResponse struct {
	Response *http.Response `json:"-"`       // HTTP response that caused this error
	Message  string         `json:"message"` // error message
	//nolint:sliceofpointers
	Errors []Error `json:"errors"` // more detail on individual errors
	// Block is only populated on certain types of errors such as code 451.
	Block *ErrorBlock `json:"block,omitempty"`
	// Most errors will also include a documentation_url field pointing
	// to some content that might help you resolve the error, see
	// https://docs.github.com/rest/#client-errors
	DocumentationURL string `json:"documentation_url,omitempty"`
}

An ErrorResponse reports one or more errors caused by an API request.

GitHub API docs: https://docs.github.com/rest/#client-errors

func (*ErrorResponse) Error

func (r *ErrorResponse) Error() string

func (*ErrorResponse) GetBlock

func (e *ErrorResponse) GetBlock() *ErrorBlock

GetBlock returns the Block field.

func (*ErrorResponse) Is

func (r *ErrorResponse) Is(target error) bool

Is returns whether the provided error equals this error.

type Event

type Event struct {
	Type       *string          `json:"type,omitempty"`
	Public     *bool            `json:"public,omitempty"`
	RawPayload *json.RawMessage `json:"payload,omitempty"`
	Repo       *Repository      `json:"repo,omitempty"`
	Actor      *User            `json:"actor,omitempty"`
	Org        *Organization    `json:"org,omitempty"`
	CreatedAt  *Timestamp       `json:"created_at,omitempty"`
	ID         *string          `json:"id,omitempty"`
}

Event represents a GitHub event.

func (*Event) GetActor

func (e *Event) GetActor() *User

GetActor returns the Actor field.

func (*Event) GetCreatedAt

func (e *Event) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Event) GetID

func (e *Event) GetID() string

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Event) GetOrg

func (e *Event) GetOrg() *Organization

GetOrg returns the Org field.

func (*Event) GetPublic

func (e *Event) GetPublic() bool

GetPublic returns the Public field if it's non-nil, zero value otherwise.

func (*Event) GetRawPayload

func (e *Event) GetRawPayload() json.RawMessage

GetRawPayload returns the RawPayload field if it's non-nil, zero value otherwise.

func (*Event) GetRepo

func (e *Event) GetRepo() *Repository

GetRepo returns the Repo field.

func (*Event) GetType

func (e *Event) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

func (*Event) ParsePayload

func (e *Event) ParsePayload() (interface{}, error)

ParsePayload parses the event payload. For recognized event types, a value of the corresponding struct type will be returned.

func (*Event) Payload deprecated

func (e *Event) Payload() (payload interface{})

Payload returns the parsed event payload. For recognized event types, a value of the corresponding struct type will be returned.

Deprecated: Use ParsePayload instead, which returns an error rather than panics if JSON unmarshaling raw payload fails.

func (Event) String

func (e Event) String() string

type ExternalGroup

type ExternalGroup struct {
	GroupID   *int64                 `json:"group_id,omitempty"`
	GroupName *string                `json:"group_name,omitempty"`
	UpdatedAt *Timestamp             `json:"updated_at,omitempty"`
	Teams     []*ExternalGroupTeam   `json:"teams,omitempty"`
	Members   []*ExternalGroupMember `json:"members,omitempty"`
}

ExternalGroup represents an external group.

func (*ExternalGroup) GetGroupID

func (e *ExternalGroup) GetGroupID() int64

GetGroupID returns the GroupID field if it's non-nil, zero value otherwise.

func (*ExternalGroup) GetGroupName

func (e *ExternalGroup) GetGroupName() string

GetGroupName returns the GroupName field if it's non-nil, zero value otherwise.

func (*ExternalGroup) GetUpdatedAt

func (e *ExternalGroup) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type ExternalGroupList

type ExternalGroupList struct {
	Groups []*ExternalGroup `json:"groups"`
}

ExternalGroupList represents a list of external groups.

type ExternalGroupMember

type ExternalGroupMember struct {
	MemberID    *int64  `json:"member_id,omitempty"`
	MemberLogin *string `json:"member_login,omitempty"`
	MemberName  *string `json:"member_name,omitempty"`
	MemberEmail *string `json:"member_email,omitempty"`
}

ExternalGroupMember represents a member of an external group.

func (*ExternalGroupMember) GetMemberEmail

func (e *ExternalGroupMember) GetMemberEmail() string

GetMemberEmail returns the MemberEmail field if it's non-nil, zero value otherwise.

func (*ExternalGroupMember) GetMemberID

func (e *ExternalGroupMember) GetMemberID() int64

GetMemberID returns the MemberID field if it's non-nil, zero value otherwise.

func (*ExternalGroupMember) GetMemberLogin

func (e *ExternalGroupMember) GetMemberLogin() string

GetMemberLogin returns the MemberLogin field if it's non-nil, zero value otherwise.

func (*ExternalGroupMember) GetMemberName

func (e *ExternalGroupMember) GetMemberName() string

GetMemberName returns the MemberName field if it's non-nil, zero value otherwise.

type ExternalGroupTeam

type ExternalGroupTeam struct {
	TeamID   *int64  `json:"team_id,omitempty"`
	TeamName *string `json:"team_name,omitempty"`
}

ExternalGroupTeam represents a team connected to an external group.

func (*ExternalGroupTeam) GetTeamID

func (e *ExternalGroupTeam) GetTeamID() int64

GetTeamID returns the TeamID field if it's non-nil, zero value otherwise.

func (*ExternalGroupTeam) GetTeamName

func (e *ExternalGroupTeam) GetTeamName() string

GetTeamName returns the TeamName field if it's non-nil, zero value otherwise.

type FeedLink struct {
	HRef *string `json:"href,omitempty"`
	Type *string `json:"type,omitempty"`
}

FeedLink represents a link to a related resource.

func (*FeedLink) GetHRef

func (f *FeedLink) GetHRef() string

GetHRef returns the HRef field if it's non-nil, zero value otherwise.

func (*FeedLink) GetType

func (f *FeedLink) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

type FeedLinks struct {
	Timeline                 *FeedLink   `json:"timeline,omitempty"`
	User                     *FeedLink   `json:"user,omitempty"`
	CurrentUserPublic        *FeedLink   `json:"current_user_public,omitempty"`
	CurrentUser              *FeedLink   `json:"current_user,omitempty"`
	CurrentUserActor         *FeedLink   `json:"current_user_actor,omitempty"`
	CurrentUserOrganization  *FeedLink   `json:"current_user_organization,omitempty"`
	CurrentUserOrganizations []*FeedLink `json:"current_user_organizations,omitempty"`
}

FeedLinks represents the links in a Feed.

func (*FeedLinks) GetCurrentUser

func (f *FeedLinks) GetCurrentUser() *FeedLink

GetCurrentUser returns the CurrentUser field.

func (*FeedLinks) GetCurrentUserActor

func (f *FeedLinks) GetCurrentUserActor() *FeedLink

GetCurrentUserActor returns the CurrentUserActor field.

func (*FeedLinks) GetCurrentUserOrganization

func (f *FeedLinks) GetCurrentUserOrganization() *FeedLink

GetCurrentUserOrganization returns the CurrentUserOrganization field.

func (*FeedLinks) GetCurrentUserPublic

func (f *FeedLinks) GetCurrentUserPublic() *FeedLink

GetCurrentUserPublic returns the CurrentUserPublic field.

func (*FeedLinks) GetTimeline

func (f *FeedLinks) GetTimeline() *FeedLink

GetTimeline returns the Timeline field.

func (*FeedLinks) GetUser

func (f *FeedLinks) GetUser() *FeedLink

GetUser returns the User field.

type Feeds

type Feeds struct {
	TimelineURL                 *string    `json:"timeline_url,omitempty"`
	UserURL                     *string    `json:"user_url,omitempty"`
	CurrentUserPublicURL        *string    `json:"current_user_public_url,omitempty"`
	CurrentUserURL              *string    `json:"current_user_url,omitempty"`
	CurrentUserActorURL         *string    `json:"current_user_actor_url,omitempty"`
	CurrentUserOrganizationURL  *string    `json:"current_user_organization_url,omitempty"`
	CurrentUserOrganizationURLs []string   `json:"current_user_organization_urls,omitempty"`
	Links                       *FeedLinks `json:"_links,omitempty"`
}

Feeds represents timeline resources in Atom format.

func (*Feeds) GetCurrentUserActorURL

func (f *Feeds) GetCurrentUserActorURL() string

GetCurrentUserActorURL returns the CurrentUserActorURL field if it's non-nil, zero value otherwise.

func (*Feeds) GetCurrentUserOrganizationURL

func (f *Feeds) GetCurrentUserOrganizationURL() string

GetCurrentUserOrganizationURL returns the CurrentUserOrganizationURL field if it's non-nil, zero value otherwise.

func (*Feeds) GetCurrentUserPublicURL

func (f *Feeds) GetCurrentUserPublicURL() string

GetCurrentUserPublicURL returns the CurrentUserPublicURL field if it's non-nil, zero value otherwise.

func (*Feeds) GetCurrentUserURL

func (f *Feeds) GetCurrentUserURL() string

GetCurrentUserURL returns the CurrentUserURL field if it's non-nil, zero value otherwise.

func (f *Feeds) GetLinks() *FeedLinks

GetLinks returns the Links field.

func (*Feeds) GetTimelineURL

func (f *Feeds) GetTimelineURL() string

GetTimelineURL returns the TimelineURL field if it's non-nil, zero value otherwise.

func (*Feeds) GetUserURL

func (f *Feeds) GetUserURL() string

GetUserURL returns the UserURL field if it's non-nil, zero value otherwise.

type FileExtensionRestrictionBranchRule

type FileExtensionRestrictionBranchRule struct {
	BranchRuleMetadata
	Parameters FileExtensionRestrictionRuleParameters `json:"parameters"`
}

FileExtensionRestrictionBranchRule represents a file extension restriction branch rule.

type FileExtensionRestrictionRuleParameters

type FileExtensionRestrictionRuleParameters struct {
	RestrictedFileExtensions []string `json:"restricted_file_extensions"`
}

FileExtensionRestrictionRuleParameters represents the file extension restriction rule parameters.

type FilePathRestrictionBranchRule

type FilePathRestrictionBranchRule struct {
	BranchRuleMetadata
	Parameters FilePathRestrictionRuleParameters `json:"parameters"`
}

FilePathRestrictionBranchRule represents a file path restriction branch rule.

type FilePathRestrictionRuleParameters

type FilePathRestrictionRuleParameters struct {
	RestrictedFilePaths []string `json:"restricted_file_paths"`
}

FilePathRestrictionRuleParameters represents the file path restriction rule parameters.

type FirstPatchedVersion

type FirstPatchedVersion struct {
	Identifier *string `json:"identifier,omitempty"`
}

FirstPatchedVersion represents the identifier for the first patched version of that vulnerability.

func (*FirstPatchedVersion) GetIdentifier

func (f *FirstPatchedVersion) GetIdentifier() string

GetIdentifier returns the Identifier field if it's non-nil, zero value otherwise.

type ForkEvent

type ForkEvent struct {
	// Forkee is the created repository.
	Forkee *Repository `json:"forkee,omitempty"`

	// The following fields are only populated by Webhook events.
	Repo         *Repository   `json:"repository,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
}

ForkEvent is triggered when a user forks a repository. The Webhook event name is "fork".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#fork

func (*ForkEvent) GetForkee

func (f *ForkEvent) GetForkee() *Repository

GetForkee returns the Forkee field.

func (*ForkEvent) GetInstallation

func (f *ForkEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*ForkEvent) GetRepo

func (f *ForkEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*ForkEvent) GetSender

func (f *ForkEvent) GetSender() *User

GetSender returns the Sender field.

type GPGEmail

type GPGEmail struct {
	Email    *string `json:"email,omitempty"`
	Verified *bool   `json:"verified,omitempty"`
}

GPGEmail represents an email address associated to a GPG key.

func (*GPGEmail) GetEmail

func (g *GPGEmail) GetEmail() string

GetEmail returns the Email field if it's non-nil, zero value otherwise.

func (*GPGEmail) GetVerified

func (g *GPGEmail) GetVerified() bool

GetVerified returns the Verified field if it's non-nil, zero value otherwise.

type GPGKey

type GPGKey struct {
	ID                *int64      `json:"id,omitempty"`
	PrimaryKeyID      *int64      `json:"primary_key_id,omitempty"`
	KeyID             *string     `json:"key_id,omitempty"`
	RawKey            *string     `json:"raw_key,omitempty"`
	PublicKey         *string     `json:"public_key,omitempty"`
	Emails            []*GPGEmail `json:"emails,omitempty"`
	Subkeys           []*GPGKey   `json:"subkeys,omitempty"`
	CanSign           *bool       `json:"can_sign,omitempty"`
	CanEncryptComms   *bool       `json:"can_encrypt_comms,omitempty"`
	CanEncryptStorage *bool       `json:"can_encrypt_storage,omitempty"`
	CanCertify        *bool       `json:"can_certify,omitempty"`
	CreatedAt         *Timestamp  `json:"created_at,omitempty"`
	ExpiresAt         *Timestamp  `json:"expires_at,omitempty"`
}

GPGKey represents a GitHub user's public GPG key used to verify GPG signed commits and tags.

https://developer.github.com/changes/2016-04-04-git-signing-api-preview/

func (*GPGKey) GetCanCertify

func (g *GPGKey) GetCanCertify() bool

GetCanCertify returns the CanCertify field if it's non-nil, zero value otherwise.

func (*GPGKey) GetCanEncryptComms

func (g *GPGKey) GetCanEncryptComms() bool

GetCanEncryptComms returns the CanEncryptComms field if it's non-nil, zero value otherwise.

func (*GPGKey) GetCanEncryptStorage

func (g *GPGKey) GetCanEncryptStorage() bool

GetCanEncryptStorage returns the CanEncryptStorage field if it's non-nil, zero value otherwise.

func (*GPGKey) GetCanSign

func (g *GPGKey) GetCanSign() bool

GetCanSign returns the CanSign field if it's non-nil, zero value otherwise.

func (*GPGKey) GetCreatedAt

func (g *GPGKey) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*GPGKey) GetExpiresAt

func (g *GPGKey) GetExpiresAt() Timestamp

GetExpiresAt returns the ExpiresAt field if it's non-nil, zero value otherwise.

func (*GPGKey) GetID

func (g *GPGKey) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*GPGKey) GetKeyID

func (g *GPGKey) GetKeyID() string

GetKeyID returns the KeyID field if it's non-nil, zero value otherwise.

func (*GPGKey) GetPrimaryKeyID

func (g *GPGKey) GetPrimaryKeyID() int64

GetPrimaryKeyID returns the PrimaryKeyID field if it's non-nil, zero value otherwise.

func (*GPGKey) GetPublicKey

func (g *GPGKey) GetPublicKey() string

GetPublicKey returns the PublicKey field if it's non-nil, zero value otherwise.

func (*GPGKey) GetRawKey

func (g *GPGKey) GetRawKey() string

GetRawKey returns the RawKey field if it's non-nil, zero value otherwise.

func (GPGKey) String

func (k GPGKey) String() string

String stringifies a GPGKey.

type GenerateJITConfigRequest

type GenerateJITConfigRequest struct {
	Name          string  `json:"name"`
	RunnerGroupID int64   `json:"runner_group_id"`
	WorkFolder    *string `json:"work_folder,omitempty"`

	// Labels represents the names of the custom labels to add to the runner.
	// Minimum items: 1. Maximum items: 100.
	Labels []string `json:"labels"`
}

GenerateJITConfigRequest specifies body parameters to GenerateRepoJITConfig.

func (*GenerateJITConfigRequest) GetWorkFolder

func (g *GenerateJITConfigRequest) GetWorkFolder() string

GetWorkFolder returns the WorkFolder field if it's non-nil, zero value otherwise.

type GenerateNotesOptions

type GenerateNotesOptions struct {
	TagName         string  `json:"tag_name"`
	PreviousTagName *string `json:"previous_tag_name,omitempty"`
	TargetCommitish *string `json:"target_commitish,omitempty"`
}

GenerateNotesOptions represents the options to generate release notes.

func (*GenerateNotesOptions) GetPreviousTagName

func (g *GenerateNotesOptions) GetPreviousTagName() string

GetPreviousTagName returns the PreviousTagName field if it's non-nil, zero value otherwise.

func (*GenerateNotesOptions) GetTargetCommitish

func (g *GenerateNotesOptions) GetTargetCommitish() string

GetTargetCommitish returns the TargetCommitish field if it's non-nil, zero value otherwise.

type GetAuditLogOptions

type GetAuditLogOptions struct {
	Phrase  *string `url:"phrase,omitempty"`  // A search phrase. (Optional.)
	Include *string `url:"include,omitempty"` // Event type includes. Can be one of "web", "git", "all". Default: "web". (Optional.)
	Order   *string `url:"order,omitempty"`   // The order of audit log events. Can be one of "asc" or "desc". Default: "desc". (Optional.)

	ListCursorOptions
}

GetAuditLogOptions sets up optional parameters to query audit-log endpoint.

func (*GetAuditLogOptions) GetInclude

func (g *GetAuditLogOptions) GetInclude() string

GetInclude returns the Include field if it's non-nil, zero value otherwise.

func (*GetAuditLogOptions) GetOrder

func (g *GetAuditLogOptions) GetOrder() string

GetOrder returns the Order field if it's non-nil, zero value otherwise.

func (*GetAuditLogOptions) GetPhrase

func (g *GetAuditLogOptions) GetPhrase() string

GetPhrase returns the Phrase field if it's non-nil, zero value otherwise.

type GetCodeownersErrorsOptions

type GetCodeownersErrorsOptions struct {
	// A branch, tag or commit name used to determine which version of the CODEOWNERS file to use.
	// Default: the repository's default branch (e.g. main).
	Ref string `url:"ref,omitempty"`
}

GetCodeownersErrorsOptions specifies the optional parameters to the RepositoriesService.GetCodeownersErrors method.

type Gist

type Gist struct {
	ID          *string                   `json:"id,omitempty"`
	Description *string                   `json:"description,omitempty"`
	Public      *bool                     `json:"public,omitempty"`
	Owner       *User                     `json:"owner,omitempty"`
	Files       map[GistFilename]GistFile `json:"files,omitempty"`
	Comments    *int                      `json:"comments,omitempty"`
	HTMLURL     *string                   `json:"html_url,omitempty"`
	GitPullURL  *string                   `json:"git_pull_url,omitempty"`
	GitPushURL  *string                   `json:"git_push_url,omitempty"`
	CreatedAt   *Timestamp                `json:"created_at,omitempty"`
	UpdatedAt   *Timestamp                `json:"updated_at,omitempty"`
	NodeID      *string                   `json:"node_id,omitempty"`
}

Gist represents a GitHub's gist.

func (*Gist) GetComments

func (g *Gist) GetComments() int

GetComments returns the Comments field if it's non-nil, zero value otherwise.

func (*Gist) GetCreatedAt

func (g *Gist) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Gist) GetDescription

func (g *Gist) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*Gist) GetFiles

func (g *Gist) GetFiles() map[GistFilename]GistFile

GetFiles returns the Files map if it's non-nil, an empty map otherwise.

func (*Gist) GetGitPullURL

func (g *Gist) GetGitPullURL() string

GetGitPullURL returns the GitPullURL field if it's non-nil, zero value otherwise.

func (*Gist) GetGitPushURL

func (g *Gist) GetGitPushURL() string

GetGitPushURL returns the GitPushURL field if it's non-nil, zero value otherwise.

func (*Gist) GetHTMLURL

func (g *Gist) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Gist) GetID

func (g *Gist) GetID() string

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Gist) GetNodeID

func (g *Gist) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Gist) GetOwner

func (g *Gist) GetOwner() *User

GetOwner returns the Owner field.

func (*Gist) GetPublic

func (g *Gist) GetPublic() bool

GetPublic returns the Public field if it's non-nil, zero value otherwise.

func (*Gist) GetUpdatedAt

func (g *Gist) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (Gist) String

func (g Gist) String() string

type GistComment

type GistComment struct {
	ID        *int64     `json:"id,omitempty"`
	URL       *string    `json:"url,omitempty"`
	Body      *string    `json:"body,omitempty"`
	User      *User      `json:"user,omitempty"`
	CreatedAt *Timestamp `json:"created_at,omitempty"`
}

GistComment represents a Gist comment.

func (*GistComment) GetBody

func (g *GistComment) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*GistComment) GetCreatedAt

func (g *GistComment) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*GistComment) GetID

func (g *GistComment) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*GistComment) GetURL

func (g *GistComment) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*GistComment) GetUser

func (g *GistComment) GetUser() *User

GetUser returns the User field.

func (GistComment) String

func (g GistComment) String() string

type GistCommit

type GistCommit struct {
	URL          *string      `json:"url,omitempty"`
	Version      *string      `json:"version,omitempty"`
	User         *User        `json:"user,omitempty"`
	ChangeStatus *CommitStats `json:"change_status,omitempty"`
	CommittedAt  *Timestamp   `json:"committed_at,omitempty"`
	NodeID       *string      `json:"node_id,omitempty"`
}

GistCommit represents a commit on a gist.

func (*GistCommit) GetChangeStatus

func (g *GistCommit) GetChangeStatus() *CommitStats

GetChangeStatus returns the ChangeStatus field.

func (*GistCommit) GetCommittedAt

func (g *GistCommit) GetCommittedAt() Timestamp

GetCommittedAt returns the CommittedAt field if it's non-nil, zero value otherwise.

func (*GistCommit) GetNodeID

func (g *GistCommit) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*GistCommit) GetURL

func (g *GistCommit) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*GistCommit) GetUser

func (g *GistCommit) GetUser() *User

GetUser returns the User field.

func (*GistCommit) GetVersion

func (g *GistCommit) GetVersion() string

GetVersion returns the Version field if it's non-nil, zero value otherwise.

func (GistCommit) String

func (gc GistCommit) String() string

type GistFile

type GistFile struct {
	Size     *int    `json:"size,omitempty"`
	Filename *string `json:"filename,omitempty"`
	Language *string `json:"language,omitempty"`
	Type     *string `json:"type,omitempty"`
	RawURL   *string `json:"raw_url,omitempty"`
	Content  *string `json:"content,omitempty"`
}

GistFile represents a file on a gist.

func (*GistFile) GetContent

func (g *GistFile) GetContent() string

GetContent returns the Content field if it's non-nil, zero value otherwise.

func (*GistFile) GetFilename

func (g *GistFile) GetFilename() string

GetFilename returns the Filename field if it's non-nil, zero value otherwise.

func (*GistFile) GetLanguage

func (g *GistFile) GetLanguage() string

GetLanguage returns the Language field if it's non-nil, zero value otherwise.

func (*GistFile) GetRawURL

func (g *GistFile) GetRawURL() string

GetRawURL returns the RawURL field if it's non-nil, zero value otherwise.

func (*GistFile) GetSize

func (g *GistFile) GetSize() int

GetSize returns the Size field if it's non-nil, zero value otherwise.

func (*GistFile) GetType

func (g *GistFile) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

func (GistFile) String

func (g GistFile) String() string

type GistFilename

type GistFilename string

GistFilename represents filename on a gist.

type GistFork

type GistFork struct {
	URL       *string    `json:"url,omitempty"`
	User      *User      `json:"user,omitempty"`
	ID        *string    `json:"id,omitempty"`
	CreatedAt *Timestamp `json:"created_at,omitempty"`
	UpdatedAt *Timestamp `json:"updated_at,omitempty"`
	NodeID    *string    `json:"node_id,omitempty"`
}

GistFork represents a fork of a gist.

func (*GistFork) GetCreatedAt

func (g *GistFork) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*GistFork) GetID

func (g *GistFork) GetID() string

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*GistFork) GetNodeID

func (g *GistFork) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*GistFork) GetURL

func (g *GistFork) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*GistFork) GetUpdatedAt

func (g *GistFork) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*GistFork) GetUser

func (g *GistFork) GetUser() *User

GetUser returns the User field.

func (GistFork) String

func (gf GistFork) String() string

type GistListOptions

type GistListOptions struct {
	// Since filters Gists by time.
	Since time.Time `url:"since,omitempty"`

	ListOptions
}

GistListOptions specifies the optional parameters to the GistsService.List, GistsService.ListAll, and GistsService.ListStarred methods.

type GistStats

type GistStats struct {
	TotalGists   *int `json:"total_gists,omitempty"`
	PrivateGists *int `json:"private_gists,omitempty"`
	PublicGists  *int `json:"public_gists,omitempty"`
}

GistStats represents the number of total, private and public gists.

func (*GistStats) GetPrivateGists

func (g *GistStats) GetPrivateGists() int

GetPrivateGists returns the PrivateGists field if it's non-nil, zero value otherwise.

func (*GistStats) GetPublicGists

func (g *GistStats) GetPublicGists() int

GetPublicGists returns the PublicGists field if it's non-nil, zero value otherwise.

func (*GistStats) GetTotalGists

func (g *GistStats) GetTotalGists() int

GetTotalGists returns the TotalGists field if it's non-nil, zero value otherwise.

func (GistStats) String

func (s GistStats) String() string

type GistsService

type GistsService service

GistsService handles communication with the Gist related methods of the GitHub API.

GitHub API docs: https://docs.github.com/rest/gists

func (*GistsService) Create

func (s *GistsService) Create(ctx context.Context, gist *Gist) (*Gist, *Response, error)

Create a gist for authenticated user.

GitHub API docs: https://docs.github.com/rest/gists/gists#create-a-gist

func (*GistsService) CreateComment

func (s *GistsService) CreateComment(ctx context.Context, gistID string, comment *GistComment) (*GistComment, *Response, error)

CreateComment creates a comment for a gist.

GitHub API docs: https://docs.github.com/rest/gists/comments#create-a-gist-comment

func (*GistsService) Delete

func (s *GistsService) Delete(ctx context.Context, id string) (*Response, error)

Delete a gist.

GitHub API docs: https://docs.github.com/rest/gists/gists#delete-a-gist

func (*GistsService) DeleteComment

func (s *GistsService) DeleteComment(ctx context.Context, gistID string, commentID int64) (*Response, error)

DeleteComment deletes a gist comment.

GitHub API docs: https://docs.github.com/rest/gists/comments#delete-a-gist-comment

func (*GistsService) Edit

func (s *GistsService) Edit(ctx context.Context, id string, gist *Gist) (*Gist, *Response, error)

Edit a gist.

GitHub API docs: https://docs.github.com/rest/gists/gists#update-a-gist

func (*GistsService) EditComment

func (s *GistsService) EditComment(ctx context.Context, gistID string, commentID int64, comment *GistComment) (*GistComment, *Response, error)

EditComment edits an existing gist comment.

GitHub API docs: https://docs.github.com/rest/gists/comments#update-a-gist-comment

func (*GistsService) Fork

func (s *GistsService) Fork(ctx context.Context, id string) (*Gist, *Response, error)

Fork a gist.

GitHub API docs: https://docs.github.com/rest/gists/gists#fork-a-gist

func (*GistsService) Get

func (s *GistsService) Get(ctx context.Context, id string) (*Gist, *Response, error)

Get a single gist.

GitHub API docs: https://docs.github.com/rest/gists/gists#get-a-gist

func (*GistsService) GetComment

func (s *GistsService) GetComment(ctx context.Context, gistID string, commentID int64) (*GistComment, *Response, error)

GetComment retrieves a single comment from a gist.

GitHub API docs: https://docs.github.com/rest/gists/comments#get-a-gist-comment

func (*GistsService) GetRevision

func (s *GistsService) GetRevision(ctx context.Context, id, sha string) (*Gist, *Response, error)

GetRevision gets a specific revision of a gist.

GitHub API docs: https://docs.github.com/rest/gists/gists#get-a-gist-revision

func (*GistsService) IsStarred

func (s *GistsService) IsStarred(ctx context.Context, id string) (bool, *Response, error)

IsStarred checks if a gist is starred by authenticated user.

GitHub API docs: https://docs.github.com/rest/gists/gists#check-if-a-gist-is-starred

func (*GistsService) List

func (s *GistsService) List(ctx context.Context, user string, opts *GistListOptions) ([]*Gist, *Response, error)

List gists for a user. Passing the empty string will list all public gists if called anonymously. However, if the call is authenticated, it will returns all gists for the authenticated user.

GitHub API docs: https://docs.github.com/rest/gists/gists#list-gists-for-a-user GitHub API docs: https://docs.github.com/rest/gists/gists#list-gists-for-the-authenticated-user

func (*GistsService) ListAll

func (s *GistsService) ListAll(ctx context.Context, opts *GistListOptions) ([]*Gist, *Response, error)

ListAll lists all public gists.

GitHub API docs: https://docs.github.com/rest/gists/gists#list-public-gists

func (*GistsService) ListComments

func (s *GistsService) ListComments(ctx context.Context, gistID string, opts *ListOptions) ([]*GistComment, *Response, error)

ListComments lists all comments for a gist.

GitHub API docs: https://docs.github.com/rest/gists/comments#list-gist-comments

func (*GistsService) ListCommits

func (s *GistsService) ListCommits(ctx context.Context, id string, opts *ListOptions) ([]*GistCommit, *Response, error)

ListCommits lists commits of a gist.

GitHub API docs: https://docs.github.com/rest/gists/gists#list-gist-commits

func (*GistsService) ListForks

func (s *GistsService) ListForks(ctx context.Context, id string, opts *ListOptions) ([]*GistFork, *Response, error)

ListForks lists forks of a gist.

GitHub API docs: https://docs.github.com/rest/gists/gists#list-gist-forks

func (*GistsService) ListStarred

func (s *GistsService) ListStarred(ctx context.Context, opts *GistListOptions) ([]*Gist, *Response, error)

ListStarred lists starred gists of authenticated user.

GitHub API docs: https://docs.github.com/rest/gists/gists#list-starred-gists

func (*GistsService) Star

func (s *GistsService) Star(ctx context.Context, id string) (*Response, error)

Star a gist on behalf of authenticated user.

GitHub API docs: https://docs.github.com/rest/gists/gists#star-a-gist

func (*GistsService) Unstar

func (s *GistsService) Unstar(ctx context.Context, id string) (*Response, error)

Unstar a gist on a behalf of authenticated user.

GitHub API docs: https://docs.github.com/rest/gists/gists#unstar-a-gist

type GitHubAppAuthorizationEvent

type GitHubAppAuthorizationEvent struct {
	// The action performed. Possible value is: "revoked".
	Action *string `json:"action,omitempty"`

	// The following fields are only populated by Webhook events.
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
}

GitHubAppAuthorizationEvent is triggered when a user's authorization for a GitHub Application is revoked.

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#github_app_authorization

func (*GitHubAppAuthorizationEvent) GetAction

func (g *GitHubAppAuthorizationEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*GitHubAppAuthorizationEvent) GetInstallation

func (g *GitHubAppAuthorizationEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*GitHubAppAuthorizationEvent) GetSender

func (g *GitHubAppAuthorizationEvent) GetSender() *User

GetSender returns the Sender field.

type GitObject

type GitObject struct {
	Type *string `json:"type"`
	SHA  *string `json:"sha"`
	URL  *string `json:"url"`
}

GitObject represents a Git object.

func (*GitObject) GetSHA

func (g *GitObject) GetSHA() string

GetSHA returns the SHA field if it's non-nil, zero value otherwise.

func (*GitObject) GetType

func (g *GitObject) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

func (*GitObject) GetURL

func (g *GitObject) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (GitObject) String

func (o GitObject) String() string

type GitService

type GitService service

GitService handles communication with the git data related methods of the GitHub API.

GitHub API docs: https://docs.github.com/rest/git/

func (*GitService) CreateBlob

func (s *GitService) CreateBlob(ctx context.Context, owner string, repo string, blob *Blob) (*Blob, *Response, error)

CreateBlob creates a blob object.

GitHub API docs: https://docs.github.com/rest/git/blobs#create-a-blob

func (*GitService) CreateCommit

func (s *GitService) CreateCommit(ctx context.Context, owner string, repo string, commit *Commit, opts *CreateCommitOptions) (*Commit, *Response, error)

CreateCommit creates a new commit in a repository. commit must not be nil.

The commit.Committer is optional and will be filled with the commit.Author data if omitted. If the commit.Author is omitted, it will be filled in with the authenticated user’s information and the current date.

GitHub API docs: https://docs.github.com/rest/git/commits#create-a-commit

func (*GitService) CreateRef

func (s *GitService) CreateRef(ctx context.Context, owner string, repo string, ref *Reference) (*Reference, *Response, error)

CreateRef creates a new ref in a repository.

GitHub API docs: https://docs.github.com/rest/git/refs#create-a-reference

func (*GitService) CreateTag

func (s *GitService) CreateTag(ctx context.Context, owner string, repo string, tag *Tag) (*Tag, *Response, error)

CreateTag creates a tag object.

GitHub API docs: https://docs.github.com/rest/git/tags#create-a-tag-object

func (*GitService) CreateTree

func (s *GitService) CreateTree(ctx context.Context, owner string, repo string, baseTree string, entries []*TreeEntry) (*Tree, *Response, error)

CreateTree creates a new tree in a repository. If both a tree and a nested path modifying that tree are specified, it will overwrite the contents of that tree with the new path contents and write a new tree out.

GitHub API docs: https://docs.github.com/rest/git/trees#create-a-tree

func (*GitService) DeleteRef

func (s *GitService) DeleteRef(ctx context.Context, owner string, repo string, ref string) (*Response, error)

DeleteRef deletes a ref from a repository.

GitHub API docs: https://docs.github.com/rest/git/refs#delete-a-reference

func (*GitService) GetBlob

func (s *GitService) GetBlob(ctx context.Context, owner string, repo string, sha string) (*Blob, *Response, error)

GetBlob fetches a blob from a repo given a SHA.

GitHub API docs: https://docs.github.com/rest/git/blobs#get-a-blob

func (*GitService) GetBlobRaw

func (s *GitService) GetBlobRaw(ctx context.Context, owner, repo, sha string) ([]byte, *Response, error)

GetBlobRaw fetches a blob's contents from a repo. Unlike GetBlob, it returns the raw bytes rather than the base64-encoded data.

GitHub API docs: https://docs.github.com/rest/git/blobs#get-a-blob

func (*GitService) GetCommit

func (s *GitService) GetCommit(ctx context.Context, owner string, repo string, sha string) (*Commit, *Response, error)

GetCommit fetches the Commit object for a given SHA.

GitHub API docs: https://docs.github.com/rest/git/commits#get-a-commit-object

func (*GitService) GetRef

func (s *GitService) GetRef(ctx context.Context, owner string, repo string, ref string) (*Reference, *Response, error)

GetRef fetches a single reference in a repository.

GitHub API docs: https://docs.github.com/rest/git/refs#get-a-reference

func (*GitService) GetTag

func (s *GitService) GetTag(ctx context.Context, owner string, repo string, sha string) (*Tag, *Response, error)

GetTag fetches a tag from a repo given a SHA.

GitHub API docs: https://docs.github.com/rest/git/tags#get-a-tag

func (*GitService) GetTree

func (s *GitService) GetTree(ctx context.Context, owner string, repo string, sha string, recursive bool) (*Tree, *Response, error)

GetTree fetches the Tree object for a given sha hash from a repository.

GitHub API docs: https://docs.github.com/rest/git/trees#get-a-tree

func (*GitService) ListMatchingRefs

func (s *GitService) ListMatchingRefs(ctx context.Context, owner, repo string, opts *ReferenceListOptions) ([]*Reference, *Response, error)

ListMatchingRefs lists references in a repository that match a supplied ref. Use an empty ref to list all references.

GitHub API docs: https://docs.github.com/rest/git/refs#list-matching-references

func (*GitService) UpdateRef

func (s *GitService) UpdateRef(ctx context.Context, owner string, repo string, ref *Reference, force bool) (*Reference, *Response, error)

UpdateRef updates an existing ref in a repository.

GitHub API docs: https://docs.github.com/rest/git/refs#update-a-reference

type Gitignore

type Gitignore struct {
	Name   *string `json:"name,omitempty"`
	Source *string `json:"source,omitempty"`
}

Gitignore represents a .gitignore file as returned by the GitHub API.

func (*Gitignore) GetName

func (g *Gitignore) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*Gitignore) GetSource

func (g *Gitignore) GetSource() string

GetSource returns the Source field if it's non-nil, zero value otherwise.

func (Gitignore) String

func (g Gitignore) String() string

type GitignoresService

type GitignoresService service

GitignoresService provides access to the gitignore related functions in the GitHub API.

GitHub API docs: https://docs.github.com/rest/gitignore/

func (*GitignoresService) Get

Get a Gitignore by name.

GitHub API docs: https://docs.github.com/rest/gitignore/gitignore#get-a-gitignore-template

func (*GitignoresService) List

func (s *GitignoresService) List(ctx context.Context) ([]string, *Response, error)

List all available Gitignore templates.

GitHub API docs: https://docs.github.com/rest/gitignore/gitignore#get-all-gitignore-templates

type GlobalSecurityAdvisory

type GlobalSecurityAdvisory struct {
	SecurityAdvisory
	ID                    *int64                         `json:"id,omitempty"`
	RepositoryAdvisoryURL *string                        `json:"repository_advisory_url,omitempty"`
	Type                  *string                        `json:"type,omitempty"`
	SourceCodeLocation    *string                        `json:"source_code_location,omitempty"`
	References            []string                       `json:"references,omitempty"`
	Vulnerabilities       []*GlobalSecurityVulnerability `json:"vulnerabilities,omitempty"`
	GithubReviewedAt      *Timestamp                     `json:"github_reviewed_at,omitempty"`
	NVDPublishedAt        *Timestamp                     `json:"nvd_published_at,omitempty"`
	Credits               []*Credit                      `json:"credits,omitempty"`
}

GlobalSecurityAdvisory represents the global security advisory object response.

func (*GlobalSecurityAdvisory) GetGithubReviewedAt

func (g *GlobalSecurityAdvisory) GetGithubReviewedAt() Timestamp

GetGithubReviewedAt returns the GithubReviewedAt field if it's non-nil, zero value otherwise.

func (*GlobalSecurityAdvisory) GetID

func (g *GlobalSecurityAdvisory) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*GlobalSecurityAdvisory) GetNVDPublishedAt

func (g *GlobalSecurityAdvisory) GetNVDPublishedAt() Timestamp

GetNVDPublishedAt returns the NVDPublishedAt field if it's non-nil, zero value otherwise.

func (*GlobalSecurityAdvisory) GetRepositoryAdvisoryURL

func (g *GlobalSecurityAdvisory) GetRepositoryAdvisoryURL() string

GetRepositoryAdvisoryURL returns the RepositoryAdvisoryURL field if it's non-nil, zero value otherwise.

func (*GlobalSecurityAdvisory) GetSourceCodeLocation

func (g *GlobalSecurityAdvisory) GetSourceCodeLocation() string

GetSourceCodeLocation returns the SourceCodeLocation field if it's non-nil, zero value otherwise.

func (*GlobalSecurityAdvisory) GetType

func (g *GlobalSecurityAdvisory) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

type GlobalSecurityVulnerability

type GlobalSecurityVulnerability struct {
	Package                *VulnerabilityPackage `json:"package,omitempty"`
	FirstPatchedVersion    *string               `json:"first_patched_version,omitempty"`
	VulnerableVersionRange *string               `json:"vulnerable_version_range,omitempty"`
	VulnerableFunctions    []string              `json:"vulnerable_functions,omitempty"`
}

GlobalSecurityVulnerability represents a vulnerability for a global security advisory.

func (*GlobalSecurityVulnerability) GetFirstPatchedVersion

func (g *GlobalSecurityVulnerability) GetFirstPatchedVersion() string

GetFirstPatchedVersion returns the FirstPatchedVersion field if it's non-nil, zero value otherwise.

func (*GlobalSecurityVulnerability) GetPackage

GetPackage returns the Package field.

func (*GlobalSecurityVulnerability) GetVulnerableVersionRange

func (g *GlobalSecurityVulnerability) GetVulnerableVersionRange() string

GetVulnerableVersionRange returns the VulnerableVersionRange field if it's non-nil, zero value otherwise.

type GollumEvent

type GollumEvent struct {
	Pages []*Page `json:"pages,omitempty"`

	// The following fields are only populated by Webhook events.
	Repo         *Repository   `json:"repository,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Org *Organization `json:"organization,omitempty"`
}

GollumEvent is triggered when a Wiki page is created or updated. The Webhook event name is "gollum".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#gollum

func (*GollumEvent) GetInstallation

func (g *GollumEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*GollumEvent) GetOrg

func (g *GollumEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*GollumEvent) GetRepo

func (g *GollumEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*GollumEvent) GetSender

func (g *GollumEvent) GetSender() *User

GetSender returns the Sender field.

type Grant

type Grant struct {
	ID        *int64            `json:"id,omitempty"`
	URL       *string           `json:"url,omitempty"`
	App       *AuthorizationApp `json:"app,omitempty"`
	CreatedAt *Timestamp        `json:"created_at,omitempty"`
	UpdatedAt *Timestamp        `json:"updated_at,omitempty"`
	Scopes    []string          `json:"scopes,omitempty"`
}

Grant represents an OAuth application that has been granted access to an account.

func (*Grant) GetApp

func (g *Grant) GetApp() *AuthorizationApp

GetApp returns the App field.

func (*Grant) GetCreatedAt

func (g *Grant) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Grant) GetID

func (g *Grant) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Grant) GetURL

func (g *Grant) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Grant) GetUpdatedAt

func (g *Grant) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (Grant) String

func (g Grant) String() string

type HeadCommit

type HeadCommit struct {
	Message  *string       `json:"message,omitempty"`
	Author   *CommitAuthor `json:"author,omitempty"`
	URL      *string       `json:"url,omitempty"`
	Distinct *bool         `json:"distinct,omitempty"`

	// The following fields are only populated by Events API.
	SHA *string `json:"sha,omitempty"`

	// The following fields are only populated by Webhook events.
	ID        *string       `json:"id,omitempty"`
	TreeID    *string       `json:"tree_id,omitempty"`
	Timestamp *Timestamp    `json:"timestamp,omitempty"`
	Committer *CommitAuthor `json:"committer,omitempty"`
	Added     []string      `json:"added,omitempty"`
	Removed   []string      `json:"removed,omitempty"`
	Modified  []string      `json:"modified,omitempty"`
}

HeadCommit represents a git commit in a GitHub PushEvent.

func (*HeadCommit) GetAuthor

func (h *HeadCommit) GetAuthor() *CommitAuthor

GetAuthor returns the Author field.

func (*HeadCommit) GetCommitter

func (h *HeadCommit) GetCommitter() *CommitAuthor

GetCommitter returns the Committer field.

func (*HeadCommit) GetDistinct

func (h *HeadCommit) GetDistinct() bool

GetDistinct returns the Distinct field if it's non-nil, zero value otherwise.

func (*HeadCommit) GetID

func (h *HeadCommit) GetID() string

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*HeadCommit) GetMessage

func (h *HeadCommit) GetMessage() string

GetMessage returns the Message field if it's non-nil, zero value otherwise.

func (*HeadCommit) GetSHA

func (h *HeadCommit) GetSHA() string

GetSHA returns the SHA field if it's non-nil, zero value otherwise.

func (*HeadCommit) GetTimestamp

func (h *HeadCommit) GetTimestamp() Timestamp

GetTimestamp returns the Timestamp field if it's non-nil, zero value otherwise.

func (*HeadCommit) GetTreeID

func (h *HeadCommit) GetTreeID() string

GetTreeID returns the TreeID field if it's non-nil, zero value otherwise.

func (*HeadCommit) GetURL

func (h *HeadCommit) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (HeadCommit) String

func (h HeadCommit) String() string

type Hook

type Hook struct {
	CreatedAt    *Timestamp             `json:"created_at,omitempty"`
	UpdatedAt    *Timestamp             `json:"updated_at,omitempty"`
	URL          *string                `json:"url,omitempty"`
	ID           *int64                 `json:"id,omitempty"`
	Type         *string                `json:"type,omitempty"`
	Name         *string                `json:"name,omitempty"`
	TestURL      *string                `json:"test_url,omitempty"`
	PingURL      *string                `json:"ping_url,omitempty"`
	LastResponse map[string]interface{} `json:"last_response,omitempty"`

	// Only the following fields are used when creating a hook.
	// Config is required.
	Config *HookConfig `json:"config,omitempty"`
	Events []string    `json:"events,omitempty"`
	Active *bool       `json:"active,omitempty"`
}

Hook represents a GitHub (web and service) hook for a repository.

func (*Hook) GetActive

func (h *Hook) GetActive() bool

GetActive returns the Active field if it's non-nil, zero value otherwise.

func (*Hook) GetConfig

func (h *Hook) GetConfig() *HookConfig

GetConfig returns the Config field.

func (*Hook) GetCreatedAt

func (h *Hook) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Hook) GetID

func (h *Hook) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Hook) GetName

func (h *Hook) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*Hook) GetPingURL

func (h *Hook) GetPingURL() string

GetPingURL returns the PingURL field if it's non-nil, zero value otherwise.

func (*Hook) GetTestURL

func (h *Hook) GetTestURL() string

GetTestURL returns the TestURL field if it's non-nil, zero value otherwise.

func (*Hook) GetType

func (h *Hook) GetType() string

GetType returns the Type field if it's non-nil, zero value otherwise.

func (*Hook) GetURL

func (h *Hook) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Hook) GetUpdatedAt

func (h *Hook) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (Hook) String

func (h Hook) String() string

type HookConfig

type HookConfig struct {
	// The media type used to serialize the payloads
	// Possible values are `json` and `form`, the field is not specified the default is `form`
	ContentType *string `json:"content_type,omitempty"`
	// The possible values are 0 and 1.
	// Setting it to 1 will allow skip certificate verification for the host,
	// potentially exposing to MitM attacks: https://en.wikipedia.org/wiki/Man-in-the-middle_attack
	InsecureSSL *string `json:"insecure_ssl,omitempty"`
	URL         *string `json:"url,omitempty"`

	// Secret is returned obfuscated by GitHub, but it can be set for outgoing requests.
	Secret *string `json:"secret,omitempty"`
}

HookConfig describes metadata about a webhook configuration.

func (*HookConfig) GetContentType

func (h *HookConfig) GetContentType() string

GetContentType returns the ContentType field if it's non-nil, zero value otherwise.

func (*HookConfig) GetInsecureSSL

func (h *HookConfig) GetInsecureSSL() string

GetInsecureSSL returns the InsecureSSL field if it's non-nil, zero value otherwise.

func (*HookConfig) GetSecret

func (h *HookConfig) GetSecret() string

GetSecret returns the Secret field if it's non-nil, zero value otherwise.

func (*HookConfig) GetURL

func (h *HookConfig) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

type HookDelivery

type HookDelivery struct {
	ID             *int64     `json:"id,omitempty"`
	GUID           *string    `json:"guid,omitempty"`
	DeliveredAt    *Timestamp `json:"delivered_at,omitempty"`
	Redelivery     *bool      `json:"redelivery,omitempty"`
	Duration       *float64   `json:"duration,omitempty"`
	Status         *string    `json:"status,omitempty"`
	StatusCode     *int       `json:"status_code,omitempty"`
	Event          *string    `json:"event,omitempty"`
	Action         *string    `json:"action,omitempty"`
	InstallationID *int64     `json:"installation_id,omitempty"`
	RepositoryID   *int64     `json:"repository_id,omitempty"`

	// Request is populated by GetHookDelivery.
	Request *HookRequest `json:"request,omitempty"`
	// Response is populated by GetHookDelivery.
	Response *HookResponse `json:"response,omitempty"`
}

HookDelivery represents the data that is received from GitHub's Webhook Delivery API

GitHub API docs: - https://docs.github.com/rest/webhooks/repo-deliveries#list-deliveries-for-a-repository-webhook - https://docs.github.com/rest/webhooks/repo-deliveries#get-a-delivery-for-a-repository-webhook

func (*HookDelivery) GetAction

func (h *HookDelivery) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*HookDelivery) GetDeliveredAt

func (h *HookDelivery) GetDeliveredAt() Timestamp

GetDeliveredAt returns the DeliveredAt field if it's non-nil, zero value otherwise.

func (*HookDelivery) GetDuration

func (h *HookDelivery) GetDuration() *float64

GetDuration returns the Duration field.

func (*HookDelivery) GetEvent

func (h *HookDelivery) GetEvent() string

GetEvent returns the Event field if it's non-nil, zero value otherwise.

func (*HookDelivery) GetGUID

func (h *HookDelivery) GetGUID() string

GetGUID returns the GUID field if it's non-nil, zero value otherwise.

func (*HookDelivery) GetID

func (h *HookDelivery) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*HookDelivery) GetInstallationID

func (h *HookDelivery) GetInstallationID() int64

GetInstallationID returns the InstallationID field if it's non-nil, zero value otherwise.

func (*HookDelivery) GetRedelivery

func (h *HookDelivery) GetRedelivery() bool

GetRedelivery returns the Redelivery field if it's non-nil, zero value otherwise.

func (*HookDelivery) GetRepositoryID

func (h *HookDelivery) GetRepositoryID() int64

GetRepositoryID returns the RepositoryID field if it's non-nil, zero value otherwise.

func (*HookDelivery) GetRequest

func (h *HookDelivery) GetRequest() *HookRequest

GetRequest returns the Request field.

func (*HookDelivery) GetResponse

func (h *HookDelivery) GetResponse() *HookResponse

GetResponse returns the Response field.

func (*HookDelivery) GetStatus

func (h *HookDelivery) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

func (*HookDelivery) GetStatusCode

func (h *HookDelivery) GetStatusCode() int

GetStatusCode returns the StatusCode field if it's non-nil, zero value otherwise.

func (*HookDelivery) ParseRequestPayload

func (d *HookDelivery) ParseRequestPayload() (interface{}, error)

ParseRequestPayload parses the request payload. For recognized event types, a value of the corresponding struct type will be returned.

func (HookDelivery) String

func (d HookDelivery) String() string

type HookRequest

type HookRequest struct {
	Headers    map[string]string `json:"headers,omitempty"`
	RawPayload *json.RawMessage  `json:"payload,omitempty"`
}

HookRequest is a part of HookDelivery that contains the HTTP headers and the JSON payload of the webhook request.

func (*HookRequest) GetHeaders

func (h *HookRequest) GetHeaders() map[string]string

GetHeaders returns the Headers map if it's non-nil, an empty map otherwise.

func (*HookRequest) GetRawPayload

func (h *HookRequest) GetRawPayload() json.RawMessage

GetRawPayload returns the RawPayload field if it's non-nil, zero value otherwise.

func (HookRequest) String

func (r HookRequest) String() string

type HookResponse

type HookResponse struct {
	Headers    map[string]string `json:"headers,omitempty"`
	RawPayload *json.RawMessage  `json:"payload,omitempty"`
}

HookResponse is a part of HookDelivery that contains the HTTP headers and the response body served by the webhook endpoint.

func (*HookResponse) GetHeaders

func (h *HookResponse) GetHeaders() map[string]string

GetHeaders returns the Headers map if it's non-nil, an empty map otherwise.

func (*HookResponse) GetRawPayload

func (h *HookResponse) GetRawPayload() json.RawMessage

GetRawPayload returns the RawPayload field if it's non-nil, zero value otherwise.

func (HookResponse) String

func (r HookResponse) String() string

type HookStats

type HookStats struct {
	TotalHooks    *int `json:"total_hooks,omitempty"`
	ActiveHooks   *int `json:"active_hooks,omitempty"`
	InactiveHooks *int `json:"inactive_hooks,omitempty"`
}

HookStats represents the number of total, active and inactive hooks.

func (*HookStats) GetActiveHooks

func (h *HookStats) GetActiveHooks() int

GetActiveHooks returns the ActiveHooks field if it's non-nil, zero value otherwise.

func (*HookStats) GetInactiveHooks

func (h *HookStats) GetInactiveHooks() int

GetInactiveHooks returns the InactiveHooks field if it's non-nil, zero value otherwise.

func (*HookStats) GetTotalHooks

func (h *HookStats) GetTotalHooks() int

GetTotalHooks returns the TotalHooks field if it's non-nil, zero value otherwise.

func (HookStats) String

func (s HookStats) String() string

type Hovercard

type Hovercard struct {
	Contexts []*UserContext `json:"contexts,omitempty"`
}

Hovercard represents hovercard information about a user.

type HovercardOptions

type HovercardOptions struct {
	// SubjectType specifies the additional information to be received about the hovercard.
	// Possible values are: organization, repository, issue, pull_request. (Required when using subject_id.)
	SubjectType string `url:"subject_type"`

	// SubjectID specifies the ID for the SubjectType. (Required when using subject_type.)
	SubjectID string `url:"subject_id"`
}

HovercardOptions specifies optional parameters to the UsersService.GetHovercard method.

type IDPGroup

type IDPGroup struct {
	GroupID          *string `json:"group_id,omitempty"`
	GroupName        *string `json:"group_name,omitempty"`
	GroupDescription *string `json:"group_description,omitempty"`
}

IDPGroup represents an external identity provider (IDP) group.

func (*IDPGroup) GetGroupDescription

func (i *IDPGroup) GetGroupDescription() string

GetGroupDescription returns the GroupDescription field if it's non-nil, zero value otherwise.

func (*IDPGroup) GetGroupID

func (i *IDPGroup) GetGroupID() string

GetGroupID returns the GroupID field if it's non-nil, zero value otherwise.

func (*IDPGroup) GetGroupName

func (i *IDPGroup) GetGroupName() string

GetGroupName returns the GroupName field if it's non-nil, zero value otherwise.

type IDPGroupList

type IDPGroupList struct {
	Groups []*IDPGroup `json:"groups"`
}

IDPGroupList represents a list of external identity provider (IDP) groups.

type ImpersonateUserOptions

type ImpersonateUserOptions struct {
	Scopes []string `json:"scopes,omitempty"`
}

ImpersonateUserOptions represents the scoping for the OAuth token.

type Import

type Import struct {
	// The URL of the originating repository.
	VCSURL *string `json:"vcs_url,omitempty"`
	// The originating VCS type. Can be one of 'subversion', 'git',
	// 'mercurial', or 'tfvc'. Without this parameter, the import job will
	// take additional time to detect the VCS type before beginning the
	// import. This detection step will be reflected in the response.
	VCS *string `json:"vcs,omitempty"`
	// VCSUsername and VCSPassword are only used for StartImport calls that
	// are importing a password-protected repository.
	VCSUsername *string `json:"vcs_username,omitempty"`
	VCSPassword *string `json:"vcs_password,omitempty"`
	// For a tfvc import, the name of the project that is being imported.
	TFVCProject *string `json:"tfvc_project,omitempty"`

	// Describes whether the import has been opted in or out of using Git
	// LFS. The value can be 'opt_in', 'opt_out', or 'undecided' if no
	// action has been taken.
	UseLFS *string `json:"use_lfs,omitempty"`
	// Describes whether files larger than 100MB were found during the
	// importing step.
	HasLargeFiles *bool `json:"has_large_files,omitempty"`
	// The total size in gigabytes of files larger than 100MB found in the
	// originating repository.
	LargeFilesSize *int `json:"large_files_size,omitempty"`
	// The total number of files larger than 100MB found in the originating
	// repository. To see a list of these files, call LargeFiles.
	LargeFilesCount *int `json:"large_files_count,omitempty"`

	// Identifies the current status of an import. An import that does not
	// have errors will progress through these steps:
	//
	//     detecting - the "detection" step of the import is in progress
	//         because the request did not include a VCS parameter. The
	//         import is identifying the type of source control present at
	//         the URL.
	//     importing - the "raw" step of the import is in progress. This is
	//         where commit data is fetched from the original repository.
	//         The import progress response will include CommitCount (the
	//         total number of raw commits that will be imported) and
	//         Percent (0 - 100, the current progress through the import).
	//     mapping - the "rewrite" step of the import is in progress. This
	//         is where SVN branches are converted to Git branches, and
	//         where author updates are applied. The import progress
	//         response does not include progress information.
	//     pushing - the "push" step of the import is in progress. This is
	//         where the importer updates the repository on GitHub. The
	//         import progress response will include PushPercent, which is
	//         the percent value reported by git push when it is "Writing
	//         objects".
	//     complete - the import is complete, and the repository is ready
	//         on GitHub.
	//
	// If there are problems, you will see one of these in the status field:
	//
	//     auth_failed - the import requires authentication in order to
	//         connect to the original repository. Make an UpdateImport
	//         request, and include VCSUsername and VCSPassword.
	//     error - the import encountered an error. The import progress
	//         response will include the FailedStep and an error message.
	//         Contact GitHub support for more information.
	//     detection_needs_auth - the importer requires authentication for
	//         the originating repository to continue detection. Make an
	//         UpdateImport request, and include VCSUsername and
	//         VCSPassword.
	//     detection_found_nothing - the importer didn't recognize any
	//         source control at the URL.
	//     detection_found_multiple - the importer found several projects
	//         or repositories at the provided URL. When this is the case,
	//         the Import Progress response will also include a
	//         ProjectChoices field with the possible project choices as
	//         values. Make an UpdateImport request, and include VCS and
	//         (if applicable) TFVCProject.
	Status        *string `json:"status,omitempty"`
	CommitCount   *int    `json:"commit_count,omitempty"`
	StatusText    *string `json:"status_text,omitempty"`
	AuthorsCount  *int    `json:"authors_count,omitempty"`
	Percent       *int    `json:"percent,omitempty"`
	PushPercent   *int    `json:"push_percent,omitempty"`
	URL           *string `json:"url,omitempty"`
	HTMLURL       *string `json:"html_url,omitempty"`
	AuthorsURL    *string `json:"authors_url,omitempty"`
	RepositoryURL *string `json:"repository_url,omitempty"`
	Message       *string `json:"message,omitempty"`
	FailedStep    *string `json:"failed_step,omitempty"`

	// Human readable display name, provided when the Import appears as
	// part of ProjectChoices.
	HumanName *string `json:"human_name,omitempty"`

	// When the importer finds several projects or repositories at the
	// provided URLs, this will identify the available choices. Call
	// UpdateImport with the selected Import value.
	ProjectChoices []*Import `json:"project_choices,omitempty"`
}

Import represents a repository import request.

func (*Import) GetAuthorsCount

func (i *Import) GetAuthorsCount() int

GetAuthorsCount returns the AuthorsCount field if it's non-nil, zero value otherwise.

func (*Import) GetAuthorsURL

func (i *Import) GetAuthorsURL() string

GetAuthorsURL returns the AuthorsURL field if it's non-nil, zero value otherwise.

func (*Import) GetCommitCount

func (i *Import) GetCommitCount() int

GetCommitCount returns the CommitCount field if it's non-nil, zero value otherwise.

func (*Import) GetFailedStep

func (i *Import) GetFailedStep() string

GetFailedStep returns the FailedStep field if it's non-nil, zero value otherwise.

func (*Import) GetHTMLURL

func (i *Import) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Import) GetHasLargeFiles

func (i *Import) GetHasLargeFiles() bool

GetHasLargeFiles returns the HasLargeFiles field if it's non-nil, zero value otherwise.

func (*Import) GetHumanName

func (i *Import) GetHumanName() string

GetHumanName returns the HumanName field if it's non-nil, zero value otherwise.

func (*Import) GetLargeFilesCount

func (i *Import) GetLargeFilesCount() int

GetLargeFilesCount returns the LargeFilesCount field if it's non-nil, zero value otherwise.

func (*Import) GetLargeFilesSize

func (i *Import) GetLargeFilesSize() int

GetLargeFilesSize returns the LargeFilesSize field if it's non-nil, zero value otherwise.

func (*Import) GetMessage

func (i *Import) GetMessage() string

GetMessage returns the Message field if it's non-nil, zero value otherwise.

func (*Import) GetPercent

func (i *Import) GetPercent() int

GetPercent returns the Percent field if it's non-nil, zero value otherwise.

func (*Import) GetPushPercent

func (i *Import) GetPushPercent() int

GetPushPercent returns the PushPercent field if it's non-nil, zero value otherwise.

func (*Import) GetRepositoryURL

func (i *Import) GetRepositoryURL() string

GetRepositoryURL returns the RepositoryURL field if it's non-nil, zero value otherwise.

func (*Import) GetStatus

func (i *Import) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

func (*Import) GetStatusText

func (i *Import) GetStatusText() string

GetStatusText returns the StatusText field if it's non-nil, zero value otherwise.

func (*Import) GetTFVCProject

func (i *Import) GetTFVCProject() string

GetTFVCProject returns the TFVCProject field if it's non-nil, zero value otherwise.

func (*Import) GetURL

func (i *Import) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Import) GetUseLFS

func (i *Import) GetUseLFS() string

GetUseLFS returns the UseLFS field if it's non-nil, zero value otherwise.

func (*Import) GetVCS

func (i *Import) GetVCS() string

GetVCS returns the VCS field if it's non-nil, zero value otherwise.

func (*Import) GetVCSPassword

func (i *Import) GetVCSPassword() string

GetVCSPassword returns the VCSPassword field if it's non-nil, zero value otherwise.

func (*Import) GetVCSURL

func (i *Import) GetVCSURL() string

GetVCSURL returns the VCSURL field if it's non-nil, zero value otherwise.

func (*Import) GetVCSUsername

func (i *Import) GetVCSUsername() string

GetVCSUsername returns the VCSUsername field if it's non-nil, zero value otherwise.

func (Import) String

func (i Import) String() string

type InitialConfigOptions

type InitialConfigOptions struct {
	License  string `url:"license"`
	Password string `url:"password"`
}

InitialConfigOptions is a struct to hold the options for the InitialConfig API.

type Installation

type Installation struct {
	ID                     *int64                   `json:"id,omitempty"`
	NodeID                 *string                  `json:"node_id,omitempty"`
	AppID                  *int64                   `json:"app_id,omitempty"`
	AppSlug                *string                  `json:"app_slug,omitempty"`
	TargetID               *int64                   `json:"target_id,omitempty"`
	Account                *User                    `json:"account,omitempty"`
	AccessTokensURL        *string                  `json:"access_tokens_url,omitempty"`
	RepositoriesURL        *string                  `json:"repositories_url,omitempty"`
	HTMLURL                *string                  `json:"html_url,omitempty"`
	TargetType             *string                  `json:"target_type,omitempty"`
	SingleFileName         *string                  `json:"single_file_name,omitempty"`
	RepositorySelection    *string                  `json:"repository_selection,omitempty"`
	Events                 []string                 `json:"events,omitempty"`
	SingleFilePaths        []string                 `json:"single_file_paths,omitempty"`
	Permissions            *InstallationPermissions `json:"permissions,omitempty"`
	CreatedAt              *Timestamp               `json:"created_at,omitempty"`
	UpdatedAt              *Timestamp               `json:"updated_at,omitempty"`
	HasMultipleSingleFiles *bool                    `json:"has_multiple_single_files,omitempty"`
	SuspendedBy            *User                    `json:"suspended_by,omitempty"`
	SuspendedAt            *Timestamp               `json:"suspended_at,omitempty"`
}

Installation represents a GitHub Apps installation.

func (*Installation) GetAccessTokensURL

func (i *Installation) GetAccessTokensURL() string

GetAccessTokensURL returns the AccessTokensURL field if it's non-nil, zero value otherwise.

func (*Installation) GetAccount

func (i *Installation) GetAccount() *User

GetAccount returns the Account field.

func (*Installation) GetAppID

func (i *Installation) GetAppID() int64

GetAppID returns the AppID field if it's non-nil, zero value otherwise.

func (*Installation) GetAppSlug

func (i *Installation) GetAppSlug() string

GetAppSlug returns the AppSlug field if it's non-nil, zero value otherwise.

func (*Installation) GetCreatedAt

func (i *Installation) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Installation) GetHTMLURL

func (i *Installation) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Installation) GetHasMultipleSingleFiles

func (i *Installation) GetHasMultipleSingleFiles() bool

GetHasMultipleSingleFiles returns the HasMultipleSingleFiles field if it's non-nil, zero value otherwise.

func (*Installation) GetID

func (i *Installation) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Installation) GetNodeID

func (i *Installation) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Installation) GetPermissions

func (i *Installation) GetPermissions() *InstallationPermissions

GetPermissions returns the Permissions field.

func (*Installation) GetRepositoriesURL

func (i *Installation) GetRepositoriesURL() string

GetRepositoriesURL returns the RepositoriesURL field if it's non-nil, zero value otherwise.

func (*Installation) GetRepositorySelection

func (i *Installation) GetRepositorySelection() string

GetRepositorySelection returns the RepositorySelection field if it's non-nil, zero value otherwise.

func (*Installation) GetSingleFileName

func (i *Installation) GetSingleFileName() string

GetSingleFileName returns the SingleFileName field if it's non-nil, zero value otherwise.

func (*Installation) GetSuspendedAt

func (i *Installation) GetSuspendedAt() Timestamp

GetSuspendedAt returns the SuspendedAt field if it's non-nil, zero value otherwise.

func (*Installation) GetSuspendedBy

func (i *Installation) GetSuspendedBy() *User

GetSuspendedBy returns the SuspendedBy field.

func (*Installation) GetTargetID

func (i *Installation) GetTargetID() int64

GetTargetID returns the TargetID field if it's non-nil, zero value otherwise.

func (*Installation) GetTargetType

func (i *Installation) GetTargetType() string

GetTargetType returns the TargetType field if it's non-nil, zero value otherwise.

func (*Installation) GetUpdatedAt

func (i *Installation) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (Installation) String

func (i Installation) String() string

type InstallationChanges

type InstallationChanges struct {
	Login *InstallationLoginChange `json:"login,omitempty"`
	Slug  *InstallationSlugChange  `json:"slug,omitempty"`
}

InstallationChanges represents a change in slug or login on an installation.

func (*InstallationChanges) GetLogin

GetLogin returns the Login field.

func (*InstallationChanges) GetSlug

GetSlug returns the Slug field.

type InstallationEvent

type InstallationEvent struct {
	// The action that was performed. Can be either "created", "deleted", "suspend", "unsuspend" or "new_permissions_accepted".
	Action       *string       `json:"action,omitempty"`
	Repositories []*Repository `json:"repositories,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
	Requester    *User         `json:"requester,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Org *Organization `json:"organization,omitempty"`
}

InstallationEvent is triggered when a GitHub App has been installed, uninstalled, suspend, unsuspended or new permissions have been accepted. The Webhook event name is "installation".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#installation

func (*InstallationEvent) GetAction

func (i *InstallationEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*InstallationEvent) GetInstallation

func (i *InstallationEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*InstallationEvent) GetOrg

func (i *InstallationEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*InstallationEvent) GetRequester

func (i *InstallationEvent) GetRequester() *User

GetRequester returns the Requester field.

func (*InstallationEvent) GetSender

func (i *InstallationEvent) GetSender() *User

GetSender returns the Sender field.

type InstallationLoginChange

type InstallationLoginChange struct {
	From *string `json:"from,omitempty"`
}

InstallationLoginChange represents a change in login on an installation.

func (*InstallationLoginChange) GetFrom

func (i *InstallationLoginChange) GetFrom() string

GetFrom returns the From field if it's non-nil, zero value otherwise.

type InstallationPermissions

type InstallationPermissions struct {
	Actions                                 *string `json:"actions,omitempty"`
	ActionsVariables                        *string `json:"actions_variables,omitempty"`
	Administration                          *string `json:"administration,omitempty"`
	Attestations                            *string `json:"attestations,omitempty"`
	Blocking                                *string `json:"blocking,omitempty"`
	Checks                                  *string `json:"checks,omitempty"`
	Codespaces                              *string `json:"codespaces,omitempty"`
	CodespacesLifecycleAdmin                *string `json:"codespaces_lifecycle_admin,omitempty"`
	CodespacesMetadata                      *string `json:"codespaces_metadata,omitempty"`
	CodespacesSecrets                       *string `json:"codespaces_secrets,omitempty"`
	CodespacesUserSecrets                   *string `json:"codespaces_user_secrets,omitempty"`
	Contents                                *string `json:"contents,omitempty"`
	ContentReferences                       *string `json:"content_references,omitempty"`
	CopilotMessages                         *string `json:"copilot_messages,omitempty"`
	DependabotSecrets                       *string `json:"dependabot_secrets,omitempty"`
	Deployments                             *string `json:"deployments,omitempty"`
	Discussions                             *string `json:"discussions,omitempty"`
	Emails                                  *string `json:"emails,omitempty"`
	Environments                            *string `json:"environments,omitempty"`
	Followers                               *string `json:"followers,omitempty"`
	Gists                                   *string `json:"gists,omitempty"`
	GitSigningSSHPublicKeys                 *string `json:"git_signing_ssh_public_keys,omitempty"`
	GPGKeys                                 *string `json:"gpg_keys,omitempty"`
	InteractionLimits                       *string `json:"interaction_limits,omitempty"`
	Issues                                  *string `json:"issues,omitempty"`
	Keys                                    *string `json:"keys,omitempty"`
	Metadata                                *string `json:"metadata,omitempty"`
	Members                                 *string `json:"members,omitempty"`
	MergeQueues                             *string `json:"merge_queues,omitempty"`
	OrganizationActionsVariables            *string `json:"organization_actions_variables,omitempty"`
	OrganizationAdministration              *string `json:"organization_administration,omitempty"`
	OrganizationAnnouncementBanners         *string `json:"organization_announcement_banners,omitempty"`
	OrganizationAPIInsights                 *string `json:"organization_api_insights,omitempty"`
	OrganizationCodespaces                  *string `json:"organization_codespaces,omitempty"`
	OrganizationCodespacesSecrets           *string `json:"organization_codespaces_secrets,omitempty"`
	OrganizationCodespacesSettings          *string `json:"organization_codespaces_settings,omitempty"`
	OrganizationCopilotSeatManagement       *string `json:"organization_copilot_seat_management,omitempty"`
	OrganizationCustomProperties            *string `json:"organization_custom_properties,omitempty"`
	OrganizationCustomRoles                 *string `json:"organization_custom_roles,omitempty"`
	OrganizationCustomOrgRoles              *string `json:"organization_custom_org_roles,omitempty"`
	OrganizationDependabotSecrets           *string `json:"organization_dependabot_secrets,omitempty"`
	OrganizationEvents                      *string `json:"organization_events,omitempty"`
	OrganizationHooks                       *string `json:"organization_hooks,omitempty"`
	OrganizationKnowledgeBases              *string `json:"organization_knowledge_bases,omitempty"`
	OrganizationPackages                    *string `json:"organization_packages,omitempty"`
	OrganizationPersonalAccessTokens        *string `json:"organization_personal_access_tokens,omitempty"`
	OrganizationPersonalAccessTokenRequests *string `json:"organization_personal_access_token_requests,omitempty"`
	OrganizationPlan                        *string `json:"organization_plan,omitempty"`
	OrganizationPreReceiveHooks             *string `json:"organization_pre_receive_hooks,omitempty"`
	OrganizationProjects                    *string `json:"organization_projects,omitempty"`
	OrganizationSecrets                     *string `json:"organization_secrets,omitempty"`
	OrganizationSelfHostedRunners           *string `json:"organization_self_hosted_runners,omitempty"`
	OrganizationUserBlocking                *string `json:"organization_user_blocking,omitempty"`
	Packages                                *string `json:"packages,omitempty"`
	Pages                                   *string `json:"pages,omitempty"`
	Plan                                    *string `json:"plan,omitempty"`
	Profile                                 *string `json:"profile,omitempty"`
	PullRequests                            *string `json:"pull_requests,omitempty"`
	RepositoryAdvisories                    *string `json:"repository_advisories,omitempty"`
	RepositoryCustomProperties              *string `json:"repository_custom_properties,omitempty"`
	RepositoryHooks                         *string `json:"repository_hooks,omitempty"`
	RepositoryProjects                      *string `json:"repository_projects,omitempty"`
	RepositoryPreReceiveHooks               *string `json:"repository_pre_receive_hooks,omitempty"`
	Secrets                                 *string `json:"secrets,omitempty"`
	SecretScanningAlerts                    *string `json:"secret_scanning_alerts,omitempty"`
	SecurityEvents                          *string `json:"security_events,omitempty"`
	SingleFile                              *string `json:"single_file,omitempty"`
	Starring                                *string `json:"starring,omitempty"`
	Statuses                                *string `json:"statuses,omitempty"`
	TeamDiscussions                         *string `json:"team_discussions,omitempty"`
	UserEvents                              *string `json:"user_events,omitempty"`
	VulnerabilityAlerts                     *string `json:"vulnerability_alerts,omitempty"`
	Watching                                *string `json:"watching,omitempty"`
	Workflows                               *string `json:"workflows,omitempty"`
}

InstallationPermissions lists the repository and organization permissions for an installation.

Permission names taken from:

https://docs.github.com/enterprise-server@3.0/rest/apps#create-an-installation-access-token-for-an-app
https://docs.github.com/rest/apps#create-an-installation-access-token-for-an-app

func (*InstallationPermissions) GetActions

func (i *InstallationPermissions) GetActions() string

GetActions returns the Actions field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetActionsVariables

func (i *InstallationPermissions) GetActionsVariables() string

GetActionsVariables returns the ActionsVariables field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetAdministration

func (i *InstallationPermissions) GetAdministration() string

GetAdministration returns the Administration field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetAttestations

func (i *InstallationPermissions) GetAttestations() string

GetAttestations returns the Attestations field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetBlocking

func (i *InstallationPermissions) GetBlocking() string

GetBlocking returns the Blocking field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetChecks

func (i *InstallationPermissions) GetChecks() string

GetChecks returns the Checks field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetCodespaces

func (i *InstallationPermissions) GetCodespaces() string

GetCodespaces returns the Codespaces field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetCodespacesLifecycleAdmin

func (i *InstallationPermissions) GetCodespacesLifecycleAdmin() string

GetCodespacesLifecycleAdmin returns the CodespacesLifecycleAdmin field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetCodespacesMetadata

func (i *InstallationPermissions) GetCodespacesMetadata() string

GetCodespacesMetadata returns the CodespacesMetadata field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetCodespacesSecrets

func (i *InstallationPermissions) GetCodespacesSecrets() string

GetCodespacesSecrets returns the CodespacesSecrets field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetCodespacesUserSecrets

func (i *InstallationPermissions) GetCodespacesUserSecrets() string

GetCodespacesUserSecrets returns the CodespacesUserSecrets field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetContentReferences

func (i *InstallationPermissions) GetContentReferences() string

GetContentReferences returns the ContentReferences field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetContents

func (i *InstallationPermissions) GetContents() string

GetContents returns the Contents field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetCopilotMessages

func (i *InstallationPermissions) GetCopilotMessages() string

GetCopilotMessages returns the CopilotMessages field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetDependabotSecrets

func (i *InstallationPermissions) GetDependabotSecrets() string

GetDependabotSecrets returns the DependabotSecrets field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetDeployments

func (i *InstallationPermissions) GetDeployments() string

GetDeployments returns the Deployments field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetDiscussions

func (i *InstallationPermissions) GetDiscussions() string

GetDiscussions returns the Discussions field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetEmails

func (i *InstallationPermissions) GetEmails() string

GetEmails returns the Emails field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetEnvironments

func (i *InstallationPermissions) GetEnvironments() string

GetEnvironments returns the Environments field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetFollowers

func (i *InstallationPermissions) GetFollowers() string

GetFollowers returns the Followers field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetGPGKeys

func (i *InstallationPermissions) GetGPGKeys() string

GetGPGKeys returns the GPGKeys field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetGists

func (i *InstallationPermissions) GetGists() string

GetGists returns the Gists field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetGitSigningSSHPublicKeys

func (i *InstallationPermissions) GetGitSigningSSHPublicKeys() string

GetGitSigningSSHPublicKeys returns the GitSigningSSHPublicKeys field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetInteractionLimits

func (i *InstallationPermissions) GetInteractionLimits() string

GetInteractionLimits returns the InteractionLimits field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetIssues

func (i *InstallationPermissions) GetIssues() string

GetIssues returns the Issues field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetKeys

func (i *InstallationPermissions) GetKeys() string

GetKeys returns the Keys field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetMembers

func (i *InstallationPermissions) GetMembers() string

GetMembers returns the Members field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetMergeQueues

func (i *InstallationPermissions) GetMergeQueues() string

GetMergeQueues returns the MergeQueues field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetMetadata

func (i *InstallationPermissions) GetMetadata() string

GetMetadata returns the Metadata field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationAPIInsights

func (i *InstallationPermissions) GetOrganizationAPIInsights() string

GetOrganizationAPIInsights returns the OrganizationAPIInsights field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationActionsVariables

func (i *InstallationPermissions) GetOrganizationActionsVariables() string

GetOrganizationActionsVariables returns the OrganizationActionsVariables field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationAdministration

func (i *InstallationPermissions) GetOrganizationAdministration() string

GetOrganizationAdministration returns the OrganizationAdministration field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationAnnouncementBanners

func (i *InstallationPermissions) GetOrganizationAnnouncementBanners() string

GetOrganizationAnnouncementBanners returns the OrganizationAnnouncementBanners field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationCodespaces

func (i *InstallationPermissions) GetOrganizationCodespaces() string

GetOrganizationCodespaces returns the OrganizationCodespaces field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationCodespacesSecrets

func (i *InstallationPermissions) GetOrganizationCodespacesSecrets() string

GetOrganizationCodespacesSecrets returns the OrganizationCodespacesSecrets field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationCodespacesSettings

func (i *InstallationPermissions) GetOrganizationCodespacesSettings() string

GetOrganizationCodespacesSettings returns the OrganizationCodespacesSettings field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationCopilotSeatManagement

func (i *InstallationPermissions) GetOrganizationCopilotSeatManagement() string

GetOrganizationCopilotSeatManagement returns the OrganizationCopilotSeatManagement field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationCustomOrgRoles

func (i *InstallationPermissions) GetOrganizationCustomOrgRoles() string

GetOrganizationCustomOrgRoles returns the OrganizationCustomOrgRoles field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationCustomProperties

func (i *InstallationPermissions) GetOrganizationCustomProperties() string

GetOrganizationCustomProperties returns the OrganizationCustomProperties field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationCustomRoles

func (i *InstallationPermissions) GetOrganizationCustomRoles() string

GetOrganizationCustomRoles returns the OrganizationCustomRoles field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationDependabotSecrets

func (i *InstallationPermissions) GetOrganizationDependabotSecrets() string

GetOrganizationDependabotSecrets returns the OrganizationDependabotSecrets field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationEvents

func (i *InstallationPermissions) GetOrganizationEvents() string

GetOrganizationEvents returns the OrganizationEvents field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationHooks

func (i *InstallationPermissions) GetOrganizationHooks() string

GetOrganizationHooks returns the OrganizationHooks field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationKnowledgeBases

func (i *InstallationPermissions) GetOrganizationKnowledgeBases() string

GetOrganizationKnowledgeBases returns the OrganizationKnowledgeBases field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationPackages

func (i *InstallationPermissions) GetOrganizationPackages() string

GetOrganizationPackages returns the OrganizationPackages field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationPersonalAccessTokenRequests

func (i *InstallationPermissions) GetOrganizationPersonalAccessTokenRequests() string

GetOrganizationPersonalAccessTokenRequests returns the OrganizationPersonalAccessTokenRequests field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationPersonalAccessTokens

func (i *InstallationPermissions) GetOrganizationPersonalAccessTokens() string

GetOrganizationPersonalAccessTokens returns the OrganizationPersonalAccessTokens field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationPlan

func (i *InstallationPermissions) GetOrganizationPlan() string

GetOrganizationPlan returns the OrganizationPlan field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationPreReceiveHooks

func (i *InstallationPermissions) GetOrganizationPreReceiveHooks() string

GetOrganizationPreReceiveHooks returns the OrganizationPreReceiveHooks field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationProjects

func (i *InstallationPermissions) GetOrganizationProjects() string

GetOrganizationProjects returns the OrganizationProjects field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationSecrets

func (i *InstallationPermissions) GetOrganizationSecrets() string

GetOrganizationSecrets returns the OrganizationSecrets field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationSelfHostedRunners

func (i *InstallationPermissions) GetOrganizationSelfHostedRunners() string

GetOrganizationSelfHostedRunners returns the OrganizationSelfHostedRunners field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetOrganizationUserBlocking

func (i *InstallationPermissions) GetOrganizationUserBlocking() string

GetOrganizationUserBlocking returns the OrganizationUserBlocking field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetPackages

func (i *InstallationPermissions) GetPackages() string

GetPackages returns the Packages field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetPages

func (i *InstallationPermissions) GetPages() string

GetPages returns the Pages field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetPlan

func (i *InstallationPermissions) GetPlan() string

GetPlan returns the Plan field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetProfile

func (i *InstallationPermissions) GetProfile() string

GetProfile returns the Profile field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetPullRequests

func (i *InstallationPermissions) GetPullRequests() string

GetPullRequests returns the PullRequests field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetRepositoryAdvisories

func (i *InstallationPermissions) GetRepositoryAdvisories() string

GetRepositoryAdvisories returns the RepositoryAdvisories field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetRepositoryCustomProperties

func (i *InstallationPermissions) GetRepositoryCustomProperties() string

GetRepositoryCustomProperties returns the RepositoryCustomProperties field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetRepositoryHooks

func (i *InstallationPermissions) GetRepositoryHooks() string

GetRepositoryHooks returns the RepositoryHooks field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetRepositoryPreReceiveHooks

func (i *InstallationPermissions) GetRepositoryPreReceiveHooks() string

GetRepositoryPreReceiveHooks returns the RepositoryPreReceiveHooks field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetRepositoryProjects

func (i *InstallationPermissions) GetRepositoryProjects() string

GetRepositoryProjects returns the RepositoryProjects field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetSecretScanningAlerts

func (i *InstallationPermissions) GetSecretScanningAlerts() string

GetSecretScanningAlerts returns the SecretScanningAlerts field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetSecrets

func (i *InstallationPermissions) GetSecrets() string

GetSecrets returns the Secrets field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetSecurityEvents

func (i *InstallationPermissions) GetSecurityEvents() string

GetSecurityEvents returns the SecurityEvents field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetSingleFile

func (i *InstallationPermissions) GetSingleFile() string

GetSingleFile returns the SingleFile field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetStarring

func (i *InstallationPermissions) GetStarring() string

GetStarring returns the Starring field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetStatuses

func (i *InstallationPermissions) GetStatuses() string

GetStatuses returns the Statuses field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetTeamDiscussions

func (i *InstallationPermissions) GetTeamDiscussions() string

GetTeamDiscussions returns the TeamDiscussions field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetUserEvents

func (i *InstallationPermissions) GetUserEvents() string

GetUserEvents returns the UserEvents field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetVulnerabilityAlerts

func (i *InstallationPermissions) GetVulnerabilityAlerts() string

GetVulnerabilityAlerts returns the VulnerabilityAlerts field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetWatching

func (i *InstallationPermissions) GetWatching() string

GetWatching returns the Watching field if it's non-nil, zero value otherwise.

func (*InstallationPermissions) GetWorkflows

func (i *InstallationPermissions) GetWorkflows() string

GetWorkflows returns the Workflows field if it's non-nil, zero value otherwise.

type InstallationRepositoriesEvent

type InstallationRepositoriesEvent struct {
	// The action that was performed. Can be either "added" or "removed".
	Action              *string       `json:"action,omitempty"`
	RepositoriesAdded   []*Repository `json:"repositories_added,omitempty"`
	RepositoriesRemoved []*Repository `json:"repositories_removed,omitempty"`
	RepositorySelection *string       `json:"repository_selection,omitempty"`
	Sender              *User         `json:"sender,omitempty"`
	Installation        *Installation `json:"installation,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Org *Organization `json:"organization,omitempty"`
}

InstallationRepositoriesEvent is triggered when a repository is added or removed from an installation. The Webhook event name is "installation_repositories".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#installation_repositories

func (*InstallationRepositoriesEvent) GetAction

func (i *InstallationRepositoriesEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*InstallationRepositoriesEvent) GetInstallation

func (i *InstallationRepositoriesEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*InstallationRepositoriesEvent) GetOrg

GetOrg returns the Org field.

func (*InstallationRepositoriesEvent) GetRepositorySelection

func (i *InstallationRepositoriesEvent) GetRepositorySelection() string

GetRepositorySelection returns the RepositorySelection field if it's non-nil, zero value otherwise.

func (*InstallationRepositoriesEvent) GetSender

func (i *InstallationRepositoriesEvent) GetSender() *User

GetSender returns the Sender field.

type InstallationRequest

type InstallationRequest struct {
	ID        *int64     `json:"id,omitempty"`
	NodeID    *string    `json:"node_id,omitempty"`
	Account   *User      `json:"account,omitempty"`
	Requester *User      `json:"requester,omitempty"`
	CreatedAt *Timestamp `json:"created_at,omitempty"`
}

InstallationRequest represents a pending GitHub App installation request.

func (*InstallationRequest) GetAccount

func (i *InstallationRequest) GetAccount() *User

GetAccount returns the Account field.

func (*InstallationRequest) GetCreatedAt

func (i *InstallationRequest) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*InstallationRequest) GetID

func (i *InstallationRequest) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*InstallationRequest) GetNodeID

func (i *InstallationRequest) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*InstallationRequest) GetRequester

func (i *InstallationRequest) GetRequester() *User

GetRequester returns the Requester field.

type InstallationSlugChange

type InstallationSlugChange struct {
	From *string `json:"from,omitempty"`
}

InstallationSlugChange represents a change in slug on an installation.

func (*InstallationSlugChange) GetFrom

func (i *InstallationSlugChange) GetFrom() string

GetFrom returns the From field if it's non-nil, zero value otherwise.

type InstallationTargetEvent

type InstallationTargetEvent struct {
	Account      *User                `json:"account,omitempty"`
	Action       *string              `json:"action,omitempty"`
	Changes      *InstallationChanges `json:"changes,omitempty"`
	Enterprise   *Enterprise          `json:"enterprise,omitempty"`
	Installation *Installation        `json:"installation,omitempty"`
	Organization *Organization        `json:"organization,omitempty"`
	Repository   *Repository          `json:"repository,omitempty"`
	Sender       *User                `json:"sender,omitempty"`
	TargetType   *string              `json:"target_type,omitempty"`
}

InstallationTargetEvent is triggered when there is activity on an installation from a user or organization account. The Webhook event name is "installation_target".

GitHub API docs: https://docs.github.com/webhooks-and-events/webhooks/webhook-events-and-payloads#installation_target

func (*InstallationTargetEvent) GetAccount

func (i *InstallationTargetEvent) GetAccount() *User

GetAccount returns the Account field.

func (*InstallationTargetEvent) GetAction

func (i *InstallationTargetEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*InstallationTargetEvent) GetChanges

GetChanges returns the Changes field.

func (*InstallationTargetEvent) GetEnterprise

func (i *InstallationTargetEvent) GetEnterprise() *Enterprise

GetEnterprise returns the Enterprise field.

func (*InstallationTargetEvent) GetInstallation

func (i *InstallationTargetEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*InstallationTargetEvent) GetOrganization

func (i *InstallationTargetEvent) GetOrganization() *Organization

GetOrganization returns the Organization field.

func (*InstallationTargetEvent) GetRepository

func (i *InstallationTargetEvent) GetRepository() *Repository

GetRepository returns the Repository field.

func (*InstallationTargetEvent) GetSender

func (i *InstallationTargetEvent) GetSender() *User

GetSender returns the Sender field.

func (*InstallationTargetEvent) GetTargetType

func (i *InstallationTargetEvent) GetTargetType() string

GetTargetType returns the TargetType field if it's non-nil, zero value otherwise.

type InstallationToken

type InstallationToken struct {
	Token        *string                  `json:"token,omitempty"`
	ExpiresAt    *Timestamp               `json:"expires_at,omitempty"`
	Permissions  *InstallationPermissions `json:"permissions,omitempty"`
	Repositories []*Repository            `json:"repositories,omitempty"`
}

InstallationToken represents an installation token.

func (*InstallationToken) GetExpiresAt

func (i *InstallationToken) GetExpiresAt() Timestamp

GetExpiresAt returns the ExpiresAt field if it's non-nil, zero value otherwise.

func (*InstallationToken) GetPermissions

func (i *InstallationToken) GetPermissions() *InstallationPermissions

GetPermissions returns the Permissions field.

func (*InstallationToken) GetToken

func (i *InstallationToken) GetToken() string

GetToken returns the Token field if it's non-nil, zero value otherwise.

type InstallationTokenListRepoOptions

type InstallationTokenListRepoOptions struct {
	// The IDs of the repositories that the installation token can access.
	// Providing repository IDs restricts the access of an installation token to specific repositories.
	RepositoryIDs []int64 `json:"repository_ids"`

	// The names of the repositories that the installation token can access.
	// Providing repository names restricts the access of an installation token to specific repositories.
	Repositories []string `json:"repositories,omitempty"`

	// The permissions granted to the access token.
	// The permissions object includes the permission names and their access type.
	Permissions *InstallationPermissions `json:"permissions,omitempty"`
}

func (*InstallationTokenListRepoOptions) GetPermissions

GetPermissions returns the Permissions field.

type InstallationTokenOptions

type InstallationTokenOptions struct {
	// The IDs of the repositories that the installation token can access.
	// Providing repository IDs restricts the access of an installation token to specific repositories.
	RepositoryIDs []int64 `json:"repository_ids,omitempty"`

	// The names of the repositories that the installation token can access.
	// Providing repository names restricts the access of an installation token to specific repositories.
	Repositories []string `json:"repositories,omitempty"`

	// The permissions granted to the access token.
	// The permissions object includes the permission names and their access type.
	Permissions *InstallationPermissions `json:"permissions,omitempty"`
}

InstallationTokenOptions allow restricting a token's access to specific repositories.

func (*InstallationTokenOptions) GetPermissions

GetPermissions returns the Permissions field.

type InteractionRestriction

type InteractionRestriction struct {
	// Specifies the group of GitHub users who can
	// comment, open issues, or create pull requests for the given repository.
	// Possible values are: "existing_users", "contributors_only" and "collaborators_only".
	Limit *string `json:"limit,omitempty"`

	// Origin specifies the type of the resource to interact with.
	// Possible values are: "repository" and "organization".
	Origin *string `json:"origin,omitempty"`

	// ExpiresAt specifies the time after which the interaction restrictions expire.
	// The default expiry time is 24 hours from the time restriction is created.
	ExpiresAt *Timestamp `json:"expires_at,omitempty"`
}

InteractionRestriction represents the interaction restrictions for repository and organization.

func (*InteractionRestriction) GetExpiresAt

func (i *InteractionRestriction) GetExpiresAt() Timestamp

GetExpiresAt returns the ExpiresAt field if it's non-nil, zero value otherwise.

func (*InteractionRestriction) GetLimit

func (i *InteractionRestriction) GetLimit() string

GetLimit returns the Limit field if it's non-nil, zero value otherwise.

func (*InteractionRestriction) GetOrigin

func (i *InteractionRestriction) GetOrigin() string

GetOrigin returns the Origin field if it's non-nil, zero value otherwise.

type InteractionsService

type InteractionsService service

InteractionsService handles communication with the repository and organization related methods of the GitHub API.

GitHub API docs: https://docs.github.com/rest/interactions/

func (*InteractionsService) GetRestrictionsForOrg

func (s *InteractionsService) GetRestrictionsForOrg(ctx context.Context, organization string) (*InteractionRestriction, *Response, error)

GetRestrictionsForOrg fetches the interaction restrictions for an organization.

GitHub API docs: https://docs.github.com/rest/interactions/orgs#get-interaction-restrictions-for-an-organization

func (*InteractionsService) GetRestrictionsForRepo

func (s *InteractionsService) GetRestrictionsForRepo(ctx context.Context, owner, repo string) (*InteractionRestriction, *Response, error)

GetRestrictionsForRepo fetches the interaction restrictions for a repository.

GitHub API docs: https://docs.github.com/rest/interactions/repos#get-interaction-restrictions-for-a-repository

func (*InteractionsService) RemoveRestrictionsFromOrg

func (s *InteractionsService) RemoveRestrictionsFromOrg(ctx context.Context, organization string) (*Response, error)

RemoveRestrictionsFromOrg removes the interaction restrictions for an organization.

GitHub API docs: https://docs.github.com/rest/interactions/orgs#remove-interaction-restrictions-for-an-organization

func (*InteractionsService) RemoveRestrictionsFromRepo

func (s *InteractionsService) RemoveRestrictionsFromRepo(ctx context.Context, owner, repo string) (*Response, error)

RemoveRestrictionsFromRepo removes the interaction restrictions for a repository.

GitHub API docs: https://docs.github.com/rest/interactions/repos#remove-interaction-restrictions-for-a-repository

func (*InteractionsService) UpdateRestrictionsForOrg

func (s *InteractionsService) UpdateRestrictionsForOrg(ctx context.Context, organization, limit string) (*InteractionRestriction, *Response, error)

UpdateRestrictionsForOrg adds or updates the interaction restrictions for an organization.

limit specifies the group of GitHub users who can comment, open issues, or create pull requests in public repositories for the given organization. Possible values are: "existing_users", "contributors_only", "collaborators_only".

GitHub API docs: https://docs.github.com/rest/interactions/orgs#set-interaction-restrictions-for-an-organization

func (*InteractionsService) UpdateRestrictionsForRepo

func (s *InteractionsService) UpdateRestrictionsForRepo(ctx context.Context, owner, repo, limit string) (*InteractionRestriction, *Response, error)

UpdateRestrictionsForRepo adds or updates the interaction restrictions for a repository.

limit specifies the group of GitHub users who can comment, open issues, or create pull requests for the given repository. Possible values are: "existing_users", "contributors_only", "collaborators_only".

GitHub API docs: https://docs.github.com/rest/interactions/repos#set-interaction-restrictions-for-a-repository

type Invitation

type Invitation struct {
	ID     *int64  `json:"id,omitempty"`
	NodeID *string `json:"node_id,omitempty"`
	Login  *string `json:"login,omitempty"`
	Email  *string `json:"email,omitempty"`
	// Role can be one of the values - 'direct_member', 'admin', 'billing_manager', 'hiring_manager', or 'reinstate'.
	Role              *string    `json:"role,omitempty"`
	CreatedAt         *Timestamp `json:"created_at,omitempty"`
	Inviter           *User      `json:"inviter,omitempty"`
	TeamCount         *int       `json:"team_count,omitempty"`
	InvitationTeamURL *string    `json:"invitation_team_url,omitempty"`
	FailedAt          *Timestamp `json:"failed_at,omitempty"`
	FailedReason      *string    `json:"failed_reason,omitempty"`
}

Invitation represents a team member's invitation status.

func (*Invitation) GetCreatedAt

func (i *Invitation) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Invitation) GetEmail

func (i *Invitation) GetEmail() string

GetEmail returns the Email field if it's non-nil, zero value otherwise.

func (*Invitation) GetFailedAt

func (i *Invitation) GetFailedAt() Timestamp

GetFailedAt returns the FailedAt field if it's non-nil, zero value otherwise.

func (*Invitation) GetFailedReason

func (i *Invitation) GetFailedReason() string

GetFailedReason returns the FailedReason field if it's non-nil, zero value otherwise.

func (*Invitation) GetID

func (i *Invitation) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Invitation) GetInvitationTeamURL

func (i *Invitation) GetInvitationTeamURL() string

GetInvitationTeamURL returns the InvitationTeamURL field if it's non-nil, zero value otherwise.

func (*Invitation) GetInviter

func (i *Invitation) GetInviter() *User

GetInviter returns the Inviter field.

func (*Invitation) GetLogin

func (i *Invitation) GetLogin() string

GetLogin returns the Login field if it's non-nil, zero value otherwise.

func (*Invitation) GetNodeID

func (i *Invitation) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Invitation) GetRole

func (i *Invitation) GetRole() string

GetRole returns the Role field if it's non-nil, zero value otherwise.

func (*Invitation) GetTeamCount

func (i *Invitation) GetTeamCount() int

GetTeamCount returns the TeamCount field if it's non-nil, zero value otherwise.

func (Invitation) String

func (i Invitation) String() string

type Issue

type Issue struct {
	ID     *int64  `json:"id,omitempty"`
	Number *int    `json:"number,omitempty"`
	State  *string `json:"state,omitempty"`
	// StateReason can be one of: "completed", "not_planned", "reopened".
	StateReason       *string           `json:"state_reason,omitempty"`
	Locked            *bool             `json:"locked,omitempty"`
	Title             *string           `json:"title,omitempty"`
	Body              *string           `json:"body,omitempty"`
	AuthorAssociation *string           `json:"author_association,omitempty"`
	User              *User             `json:"user,omitempty"`
	Labels            []*Label          `json:"labels,omitempty"`
	Assignee          *User             `json:"assignee,omitempty"`
	Comments          *int              `json:"comments,omitempty"`
	ClosedAt          *Timestamp        `json:"closed_at,omitempty"`
	CreatedAt         *Timestamp        `json:"created_at,omitempty"`
	UpdatedAt         *Timestamp        `json:"updated_at,omitempty"`
	ClosedBy          *User             `json:"closed_by,omitempty"`
	URL               *string           `json:"url,omitempty"`
	HTMLURL           *string           `json:"html_url,omitempty"`
	CommentsURL       *string           `json:"comments_url,omitempty"`
	EventsURL         *string           `json:"events_url,omitempty"`
	LabelsURL         *string           `json:"labels_url,omitempty"`
	RepositoryURL     *string           `json:"repository_url,omitempty"`
	Milestone         *Milestone        `json:"milestone,omitempty"`
	PullRequestLinks  *PullRequestLinks `json:"pull_request,omitempty"`
	Repository        *Repository       `json:"repository,omitempty"`
	Reactions         *Reactions        `json:"reactions,omitempty"`
	Assignees         []*User           `json:"assignees,omitempty"`
	NodeID            *string           `json:"node_id,omitempty"`
	Draft             *bool             `json:"draft,omitempty"`
	Type              *IssueType        `json:"type,omitempty"`

	// TextMatches is only populated from search results that request text matches
	// See: search.go and https://docs.github.com/rest/search/#text-match-metadata
	TextMatches []*TextMatch `json:"text_matches,omitempty"`

	// ActiveLockReason is populated only when LockReason is provided while locking the issue.
	// Possible values are: "off-topic", "too heated", "resolved", and "spam".
	ActiveLockReason *string `json:"active_lock_reason,omitempty"`
}

Issue represents a GitHub issue on a repository.

Note: As far as the GitHub API is concerned, every pull request is an issue, but not every issue is a pull request. Some endpoints, events, and webhooks may also return pull requests via this struct. If PullRequestLinks is nil, this is an issue, and if PullRequestLinks is not nil, this is a pull request. The IsPullRequest helper method can be used to check that.

func (*Issue) GetActiveLockReason

func (i *Issue) GetActiveLockReason() string

GetActiveLockReason returns the ActiveLockReason field if it's non-nil, zero value otherwise.

func (*Issue) GetAssignee

func (i *Issue) GetAssignee() *User

GetAssignee returns the Assignee field.

func (*Issue) GetAuthorAssociation

func (i *Issue) GetAuthorAssociation() string

GetAuthorAssociation returns the AuthorAssociation field if it's non-nil, zero value otherwise.

func (*Issue) GetBody

func (i *Issue) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*Issue) GetClosedAt

func (i *Issue) GetClosedAt() Timestamp

GetClosedAt returns the ClosedAt field if it's non-nil, zero value otherwise.

func (*Issue) GetClosedBy

func (i *Issue) GetClosedBy() *User

GetClosedBy returns the ClosedBy field.

func (*Issue) GetComments

func (i *Issue) GetComments() int

GetComments returns the Comments field if it's non-nil, zero value otherwise.

func (*Issue) GetCommentsURL

func (i *Issue) GetCommentsURL() string

GetCommentsURL returns the CommentsURL field if it's non-nil, zero value otherwise.

func (*Issue) GetCreatedAt

func (i *Issue) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Issue) GetDraft

func (i *Issue) GetDraft() bool

GetDraft returns the Draft field if it's non-nil, zero value otherwise.

func (*Issue) GetEventsURL

func (i *Issue) GetEventsURL() string

GetEventsURL returns the EventsURL field if it's non-nil, zero value otherwise.

func (*Issue) GetHTMLURL

func (i *Issue) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*Issue) GetID

func (i *Issue) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Issue) GetLabelsURL

func (i *Issue) GetLabelsURL() string

GetLabelsURL returns the LabelsURL field if it's non-nil, zero value otherwise.

func (*Issue) GetLocked

func (i *Issue) GetLocked() bool

GetLocked returns the Locked field if it's non-nil, zero value otherwise.

func (*Issue) GetMilestone

func (i *Issue) GetMilestone() *Milestone

GetMilestone returns the Milestone field.

func (*Issue) GetNodeID

func (i *Issue) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Issue) GetNumber

func (i *Issue) GetNumber() int

GetNumber returns the Number field if it's non-nil, zero value otherwise.

func (i *Issue) GetPullRequestLinks() *PullRequestLinks

GetPullRequestLinks returns the PullRequestLinks field.

func (*Issue) GetReactions

func (i *Issue) GetReactions() *Reactions

GetReactions returns the Reactions field.

func (*Issue) GetRepository

func (i *Issue) GetRepository() *Repository

GetRepository returns the Repository field.

func (*Issue) GetRepositoryURL

func (i *Issue) GetRepositoryURL() string

GetRepositoryURL returns the RepositoryURL field if it's non-nil, zero value otherwise.

func (*Issue) GetState

func (i *Issue) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

func (*Issue) GetStateReason

func (i *Issue) GetStateReason() string

GetStateReason returns the StateReason field if it's non-nil, zero value otherwise.

func (*Issue) GetTitle

func (i *Issue) GetTitle() string

GetTitle returns the Title field if it's non-nil, zero value otherwise.

func (*Issue) GetType

func (i *Issue) GetType() *IssueType

GetType returns the Type field.

func (*Issue) GetURL

func (i *Issue) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Issue) GetUpdatedAt

func (i *Issue) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*Issue) GetUser

func (i *Issue) GetUser() *User

GetUser returns the User field.

func (Issue) IsPullRequest

func (i Issue) IsPullRequest() bool

IsPullRequest reports whether the issue is also a pull request. It uses the method recommended by GitHub's API documentation, which is to check whether PullRequestLinks is non-nil.

func (Issue) String

func (i Issue) String() string

type IssueComment

type IssueComment struct {
	ID        *int64     `json:"id,omitempty"`
	NodeID    *string    `json:"node_id,omitempty"`
	Body      *string    `json:"body,omitempty"`
	User      *User      `json:"user,omitempty"`
	Reactions *Reactions `json:"reactions,omitempty"`
	CreatedAt *Timestamp `json:"created_at,omitempty"`
	UpdatedAt *Timestamp `json:"updated_at,omitempty"`
	// AuthorAssociation is the comment author's relationship to the issue's repository.
	// Possible values are "COLLABORATOR", "CONTRIBUTOR", "FIRST_TIMER", "FIRST_TIME_CONTRIBUTOR", "MEMBER", "OWNER", or "NONE".
	AuthorAssociation *string `json:"author_association,omitempty"`
	URL               *string `json:"url,omitempty"`
	HTMLURL           *string `json:"html_url,omitempty"`
	IssueURL          *string `json:"issue_url,omitempty"`
}

IssueComment represents a comment left on an issue.

func (*IssueComment) GetAuthorAssociation

func (i *IssueComment) GetAuthorAssociation() string

GetAuthorAssociation returns the AuthorAssociation field if it's non-nil, zero value otherwise.

func (*IssueComment) GetBody

func (i *IssueComment) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*IssueComment) GetCreatedAt

func (i *IssueComment) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*IssueComment) GetHTMLURL

func (i *IssueComment) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*IssueComment) GetID

func (i *IssueComment) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*IssueComment) GetIssueURL

func (i *IssueComment) GetIssueURL() string

GetIssueURL returns the IssueURL field if it's non-nil, zero value otherwise.

func (*IssueComment) GetNodeID

func (i *IssueComment) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*IssueComment) GetReactions

func (i *IssueComment) GetReactions() *Reactions

GetReactions returns the Reactions field.

func (*IssueComment) GetURL

func (i *IssueComment) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*IssueComment) GetUpdatedAt

func (i *IssueComment) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

func (*IssueComment) GetUser

func (i *IssueComment) GetUser() *User

GetUser returns the User field.

func (IssueComment) String

func (i IssueComment) String() string

type IssueCommentEvent

type IssueCommentEvent struct {
	// Action is the action that was performed on the comment.
	// Possible values are: "created", "edited", "deleted".
	Action  *string       `json:"action,omitempty"`
	Issue   *Issue        `json:"issue,omitempty"`
	Comment *IssueComment `json:"comment,omitempty"`

	// The following fields are only populated by Webhook events.
	Changes      *EditChange   `json:"changes,omitempty"`
	Repo         *Repository   `json:"repository,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Organization *Organization `json:"organization,omitempty"`
}

IssueCommentEvent is triggered when an issue comment is created on an issue or pull request. The Webhook event name is "issue_comment".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#issue_comment

func (*IssueCommentEvent) GetAction

func (i *IssueCommentEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*IssueCommentEvent) GetChanges

func (i *IssueCommentEvent) GetChanges() *EditChange

GetChanges returns the Changes field.

func (*IssueCommentEvent) GetComment

func (i *IssueCommentEvent) GetComment() *IssueComment

GetComment returns the Comment field.

func (*IssueCommentEvent) GetInstallation

func (i *IssueCommentEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*IssueCommentEvent) GetIssue

func (i *IssueCommentEvent) GetIssue() *Issue

GetIssue returns the Issue field.

func (*IssueCommentEvent) GetOrganization

func (i *IssueCommentEvent) GetOrganization() *Organization

GetOrganization returns the Organization field.

func (*IssueCommentEvent) GetRepo

func (i *IssueCommentEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*IssueCommentEvent) GetSender

func (i *IssueCommentEvent) GetSender() *User

GetSender returns the Sender field.

type IssueEvent

type IssueEvent struct {
	ID  *int64  `json:"id,omitempty"`
	URL *string `json:"url,omitempty"`

	// The User that generated this event.
	Actor *User `json:"actor,omitempty"`

	// The action corresponding to the event.
	Action string `json:"action,omitempty"`

	// Event identifies the actual type of Event that occurred. Possible
	// values are:
	//
	//     closed
	//       The Actor closed the issue.
	//       If the issue was closed by commit message, CommitID holds the SHA1 hash of the commit.
	//
	//     merged
	//       The Actor merged into master a branch containing a commit mentioning the issue.
	//       CommitID holds the SHA1 of the merge commit.
	//
	//     referenced
	//       The Actor committed to master a commit mentioning the issue in its commit message.
	//       CommitID holds the SHA1 of the commit.
	//
	//     reopened, unlocked
	//       The Actor did that to the issue.
	//
	//     locked
	//       The Actor locked the issue.
	//       LockReason holds the reason of locking the issue (if provided while locking).
	//
	//     renamed
	//       The Actor changed the issue title from Rename.From to Rename.To.
	//
	//     mentioned
	//       Someone unspecified @mentioned the Actor [sic] in an issue comment body.
	//
	//     assigned, unassigned
	//       The Assigner assigned the issue to or removed the assignment from the Assignee.
	//
	//     labeled, unlabeled
	//       The Actor added or removed the Label from the issue.
	//
	//     milestoned, demilestoned
	//       The Actor added or removed the issue from the Milestone.
	//
	//     subscribed, unsubscribed
	//       The Actor subscribed to or unsubscribed from notifications for an issue.
	//
	//     head_ref_deleted, head_ref_restored
	//       The pull request’s branch was deleted or restored.
	//
	//    review_dismissed
	//       The review was dismissed and `DismissedReview` will be populated below.
	//
	//    review_requested, review_request_removed
	//       The Actor requested or removed the request for a review.
	//       RequestedReviewer or RequestedTeam, and ReviewRequester will be populated below.
	//
	Event *string `json:"event,omitempty"`

	CreatedAt *Timestamp `json:"created_at,omitempty"`
	Issue     *Issue     `json:"issue,omitempty"`

	// Only present on certain events; see above.
	Repository            *Repository      `json:"repository,omitempty"`
	Assignee              *User            `json:"assignee,omitempty"`
	Assigner              *User            `json:"assigner,omitempty"`
	CommitID              *string          `json:"commit_id,omitempty"`
	Milestone             *Milestone       `json:"milestone,omitempty"`
	Label                 *Label           `json:"label,omitempty"`
	Rename                *Rename          `json:"rename,omitempty"`
	LockReason            *string          `json:"lock_reason,omitempty"`
	DismissedReview       *DismissedReview `json:"dismissed_review,omitempty"`
	RequestedReviewer     *User            `json:"requested_reviewer,omitempty"`
	RequestedTeam         *Team            `json:"requested_team,omitempty"`
	ReviewRequester       *User            `json:"review_requester,omitempty"`
	PerformedViaGithubApp *App             `json:"performed_via_github_app,omitempty"`
}

IssueEvent represents an event that occurred around an Issue or Pull Request.

func (*IssueEvent) GetActor

func (i *IssueEvent) GetActor() *User

GetActor returns the Actor field.

func (*IssueEvent) GetAssignee

func (i *IssueEvent) GetAssignee() *User

GetAssignee returns the Assignee field.

func (*IssueEvent) GetAssigner

func (i *IssueEvent) GetAssigner() *User

GetAssigner returns the Assigner field.

func (*IssueEvent) GetCommitID

func (i *IssueEvent) GetCommitID() string

GetCommitID returns the CommitID field if it's non-nil, zero value otherwise.

func (*IssueEvent) GetCreatedAt

func (i *IssueEvent) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*IssueEvent) GetDismissedReview

func (i *IssueEvent) GetDismissedReview() *DismissedReview

GetDismissedReview returns the DismissedReview field.

func (*IssueEvent) GetEvent

func (i *IssueEvent) GetEvent() string

GetEvent returns the Event field if it's non-nil, zero value otherwise.

func (*IssueEvent) GetID

func (i *IssueEvent) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*IssueEvent) GetIssue

func (i *IssueEvent) GetIssue() *Issue

GetIssue returns the Issue field.

func (*IssueEvent) GetLabel

func (i *IssueEvent) GetLabel() *Label

GetLabel returns the Label field.

func (*IssueEvent) GetLockReason

func (i *IssueEvent) GetLockReason() string

GetLockReason returns the LockReason field if it's non-nil, zero value otherwise.

func (*IssueEvent) GetMilestone

func (i *IssueEvent) GetMilestone() *Milestone

GetMilestone returns the Milestone field.

func (*IssueEvent) GetPerformedViaGithubApp

func (i *IssueEvent) GetPerformedViaGithubApp() *App

GetPerformedViaGithubApp returns the PerformedViaGithubApp field.

func (*IssueEvent) GetRename

func (i *IssueEvent) GetRename() *Rename

GetRename returns the Rename field.

func (*IssueEvent) GetRepository

func (i *IssueEvent) GetRepository() *Repository

GetRepository returns the Repository field.

func (*IssueEvent) GetRequestedReviewer

func (i *IssueEvent) GetRequestedReviewer() *User

GetRequestedReviewer returns the RequestedReviewer field.

func (*IssueEvent) GetRequestedTeam

func (i *IssueEvent) GetRequestedTeam() *Team

GetRequestedTeam returns the RequestedTeam field.

func (*IssueEvent) GetReviewRequester

func (i *IssueEvent) GetReviewRequester() *User

GetReviewRequester returns the ReviewRequester field.

func (*IssueEvent) GetURL

func (i *IssueEvent) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

type IssueImport

type IssueImport struct {
	Title     string     `json:"title"`
	Body      string     `json:"body"`
	CreatedAt *Timestamp `json:"created_at,omitempty"`
	ClosedAt  *Timestamp `json:"closed_at,omitempty"`
	UpdatedAt *Timestamp `json:"updated_at,omitempty"`
	Assignee  *string    `json:"assignee,omitempty"`
	Milestone *int       `json:"milestone,omitempty"`
	Closed    *bool      `json:"closed,omitempty"`
	Labels    []string   `json:"labels,omitempty"`
}

IssueImport represents body of issue to import.

func (*IssueImport) GetAssignee

func (i *IssueImport) GetAssignee() string

GetAssignee returns the Assignee field if it's non-nil, zero value otherwise.

func (*IssueImport) GetClosed

func (i *IssueImport) GetClosed() bool

GetClosed returns the Closed field if it's non-nil, zero value otherwise.

func (*IssueImport) GetClosedAt

func (i *IssueImport) GetClosedAt() Timestamp

GetClosedAt returns the ClosedAt field if it's non-nil, zero value otherwise.

func (*IssueImport) GetCreatedAt

func (i *IssueImport) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*IssueImport) GetMilestone

func (i *IssueImport) GetMilestone() int

GetMilestone returns the Milestone field if it's non-nil, zero value otherwise.

func (*IssueImport) GetUpdatedAt

func (i *IssueImport) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type IssueImportError

type IssueImportError struct {
	Location *string `json:"location,omitempty"`
	Resource *string `json:"resource,omitempty"`
	Field    *string `json:"field,omitempty"`
	Value    *string `json:"value,omitempty"`
	Code     *string `json:"code,omitempty"`
}

IssueImportError represents errors of an issue import create request.

func (*IssueImportError) GetCode

func (i *IssueImportError) GetCode() string

GetCode returns the Code field if it's non-nil, zero value otherwise.

func (*IssueImportError) GetField

func (i *IssueImportError) GetField() string

GetField returns the Field field if it's non-nil, zero value otherwise.

func (*IssueImportError) GetLocation

func (i *IssueImportError) GetLocation() string

GetLocation returns the Location field if it's non-nil, zero value otherwise.

func (*IssueImportError) GetResource

func (i *IssueImportError) GetResource() string

GetResource returns the Resource field if it's non-nil, zero value otherwise.

func (*IssueImportError) GetValue

func (i *IssueImportError) GetValue() string

GetValue returns the Value field if it's non-nil, zero value otherwise.

type IssueImportRequest

type IssueImportRequest struct {
	IssueImport IssueImport `json:"issue"`
	Comments    []*Comment  `json:"comments,omitempty"`
}

IssueImportRequest represents a request to create an issue.

https://gist.github.com/jonmagic/5282384165e0f86ef105#supported-issue-and-comment-fields

type IssueImportResponse

type IssueImportResponse struct {
	ID               *int                `json:"id,omitempty"`
	Status           *string             `json:"status,omitempty"`
	URL              *string             `json:"url,omitempty"`
	ImportIssuesURL  *string             `json:"import_issues_url,omitempty"`
	RepositoryURL    *string             `json:"repository_url,omitempty"`
	CreatedAt        *Timestamp          `json:"created_at,omitempty"`
	UpdatedAt        *Timestamp          `json:"updated_at,omitempty"`
	Message          *string             `json:"message,omitempty"`
	DocumentationURL *string             `json:"documentation_url,omitempty"`
	Errors           []*IssueImportError `json:"errors,omitempty"`
}

IssueImportResponse represents the response of an issue import create request.

https://gist.github.com/jonmagic/5282384165e0f86ef105#import-issue-response

func (*IssueImportResponse) GetCreatedAt

func (i *IssueImportResponse) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*IssueImportResponse) GetDocumentationURL

func (i *IssueImportResponse) GetDocumentationURL() string

GetDocumentationURL returns the DocumentationURL field if it's non-nil, zero value otherwise.

func (*IssueImportResponse) GetID

func (i *IssueImportResponse) GetID() int

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*IssueImportResponse) GetImportIssuesURL

func (i *IssueImportResponse) GetImportIssuesURL() string

GetImportIssuesURL returns the ImportIssuesURL field if it's non-nil, zero value otherwise.

func (*IssueImportResponse) GetMessage

func (i *IssueImportResponse) GetMessage() string

GetMessage returns the Message field if it's non-nil, zero value otherwise.

func (*IssueImportResponse) GetRepositoryURL

func (i *IssueImportResponse) GetRepositoryURL() string

GetRepositoryURL returns the RepositoryURL field if it's non-nil, zero value otherwise.

func (*IssueImportResponse) GetStatus

func (i *IssueImportResponse) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

func (*IssueImportResponse) GetURL

func (i *IssueImportResponse) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*IssueImportResponse) GetUpdatedAt

func (i *IssueImportResponse) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type IssueImportService

type IssueImportService service

IssueImportService handles communication with the issue import related methods of the Issue Import GitHub API.

func (*IssueImportService) CheckStatus

func (s *IssueImportService) CheckStatus(ctx context.Context, owner, repo string, issueID int64) (*IssueImportResponse, *Response, error)

CheckStatus checks the status of an imported issue.

GitHub API docs: https://gist.github.com/jonmagic/5282384165e0f86ef105#import-status-request

func (*IssueImportService) CheckStatusSince

func (s *IssueImportService) CheckStatusSince(ctx context.Context, owner, repo string, since Timestamp) ([]*IssueImportResponse, *Response, error)

CheckStatusSince checks the status of multiple imported issues since a given date.

GitHub API docs: https://gist.github.com/jonmagic/5282384165e0f86ef105#check-status-of-multiple-issues

func (*IssueImportService) Create

Create a new imported issue on the specified repository.

GitHub API docs: https://gist.github.com/jonmagic/5282384165e0f86ef105#start-an-issue-import

type IssueListByRepoOptions

type IssueListByRepoOptions struct {
	// Milestone limits issues for the specified milestone. Possible values are
	// a milestone number, "none" for issues with no milestone, "*" for issues
	// with any milestone.
	Milestone string `url:"milestone,omitempty"`

	// State filters issues based on their state. Possible values are: open,
	// closed, all. Default is "open".
	State string `url:"state,omitempty"`

	// Assignee filters issues based on their assignee. Possible values are a
	// user name, "none" for issues that are not assigned, "*" for issues with
	// any assigned user.
	Assignee string `url:"assignee,omitempty"`

	// Creator filters issues based on their creator.
	Creator string `url:"creator,omitempty"`

	// Mentioned filters issues to those mentioned a specific user.
	Mentioned string `url:"mentioned,omitempty"`

	// Labels filters issues based on their label.
	Labels []string `url:"labels,omitempty,comma"`

	// Sort specifies how to sort issues. Possible values are: created, updated,
	// and comments. Default value is "created".
	Sort string `url:"sort,omitempty"`

	// Direction in which to sort issues. Possible values are: asc, desc.
	// Default is "desc".
	Direction string `url:"direction,omitempty"`

	// Since filters issues by time.
	Since time.Time `url:"since,omitempty"`

	ListOptions
}

IssueListByRepoOptions specifies the optional parameters to the IssuesService.ListByRepo method.

type IssueListCommentsOptions

type IssueListCommentsOptions struct {
	// Sort specifies how to sort comments. Possible values are: created, updated.
	Sort *string `url:"sort,omitempty"`

	// Direction in which to sort comments. Possible values are: asc, desc.
	Direction *string `url:"direction,omitempty"`

	// Since filters comments by time.
	Since *time.Time `url:"since,omitempty"`

	ListOptions
}

IssueListCommentsOptions specifies the optional parameters to the IssuesService.ListComments method.

func (*IssueListCommentsOptions) GetDirection

func (i *IssueListCommentsOptions) GetDirection() string

GetDirection returns the Direction field if it's non-nil, zero value otherwise.

func (*IssueListCommentsOptions) GetSince

func (i *IssueListCommentsOptions) GetSince() time.Time

GetSince returns the Since field if it's non-nil, zero value otherwise.

func (*IssueListCommentsOptions) GetSort

func (i *IssueListCommentsOptions) GetSort() string

GetSort returns the Sort field if it's non-nil, zero value otherwise.

type IssueListOptions

type IssueListOptions struct {
	// Filter specifies which issues to list. Possible values are: assigned,
	// created, mentioned, subscribed, all. Default is "assigned".
	Filter string `url:"filter,omitempty"`

	// State filters issues based on their state. Possible values are: open,
	// closed, all. Default is "open".
	State string `url:"state,omitempty"`

	// Labels filters issues based on their label.
	Labels []string `url:"labels,comma,omitempty"`

	// Sort specifies how to sort issues. Possible values are: created, updated,
	// and comments. Default value is "created".
	Sort string `url:"sort,omitempty"`

	// Direction in which to sort issues. Possible values are: asc, desc.
	// Default is "desc".
	Direction string `url:"direction,omitempty"`

	// Since filters issues by time.
	Since time.Time `url:"since,omitempty"`

	ListOptions
}

IssueListOptions specifies the optional parameters to the IssuesService.List and IssuesService.ListByOrg methods.

type IssueRequest

type IssueRequest struct {
	Title    *string   `json:"title,omitempty"`
	Body     *string   `json:"body,omitempty"`
	Labels   *[]string `json:"labels,omitempty"`
	Assignee *string   `json:"assignee,omitempty"`
	State    *string   `json:"state,omitempty"`
	// StateReason can be 'completed' or 'not_planned'.
	StateReason *string   `json:"state_reason,omitempty"`
	Milestone   *int      `json:"milestone,omitempty"`
	Assignees   *[]string `json:"assignees,omitempty"`
}

IssueRequest represents a request to create/edit an issue. It is separate from Issue above because otherwise Labels and Assignee fail to serialize to the correct JSON.

func (*IssueRequest) GetAssignee

func (i *IssueRequest) GetAssignee() string

GetAssignee returns the Assignee field if it's non-nil, zero value otherwise.

func (*IssueRequest) GetAssignees

func (i *IssueRequest) GetAssignees() []string

GetAssignees returns the Assignees field if it's non-nil, zero value otherwise.

func (*IssueRequest) GetBody

func (i *IssueRequest) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*IssueRequest) GetLabels

func (i *IssueRequest) GetLabels() []string

GetLabels returns the Labels field if it's non-nil, zero value otherwise.

func (*IssueRequest) GetMilestone

func (i *IssueRequest) GetMilestone() int

GetMilestone returns the Milestone field if it's non-nil, zero value otherwise.

func (*IssueRequest) GetState

func (i *IssueRequest) GetState() string

GetState returns the State field if it's non-nil, zero value otherwise.

func (*IssueRequest) GetStateReason

func (i *IssueRequest) GetStateReason() string

GetStateReason returns the StateReason field if it's non-nil, zero value otherwise.

func (*IssueRequest) GetTitle

func (i *IssueRequest) GetTitle() string

GetTitle returns the Title field if it's non-nil, zero value otherwise.

type IssueStats

type IssueStats struct {
	TotalIssues  *int `json:"total_issues,omitempty"`
	OpenIssues   *int `json:"open_issues,omitempty"`
	ClosedIssues *int `json:"closed_issues,omitempty"`
}

IssueStats represents the number of total, open and closed issues.

func (*IssueStats) GetClosedIssues

func (i *IssueStats) GetClosedIssues() int

GetClosedIssues returns the ClosedIssues field if it's non-nil, zero value otherwise.

func (*IssueStats) GetOpenIssues

func (i *IssueStats) GetOpenIssues() int

GetOpenIssues returns the OpenIssues field if it's non-nil, zero value otherwise.

func (*IssueStats) GetTotalIssues

func (i *IssueStats) GetTotalIssues() int

GetTotalIssues returns the TotalIssues field if it's non-nil, zero value otherwise.

func (IssueStats) String

func (s IssueStats) String() string

type IssueType

type IssueType struct {
	ID          *int64     `json:"id,omitempty"`
	NodeID      *string    `json:"node_id,omitempty"`
	Name        *string    `json:"name,omitempty"`
	Description *string    `json:"description,omitempty"`
	Color       *string    `json:"color,omitempty"`
	CreatedAt   *Timestamp `json:"created_at,omitempty"`
	UpdatedAt   *Timestamp `json:"updated_at,omitempty"`
}

IssueType represents the type of issue. For now it shows up when receiveing an Issue event.

func (*IssueType) GetColor

func (i *IssueType) GetColor() string

GetColor returns the Color field if it's non-nil, zero value otherwise.

func (*IssueType) GetCreatedAt

func (i *IssueType) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*IssueType) GetDescription

func (i *IssueType) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*IssueType) GetID

func (i *IssueType) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*IssueType) GetName

func (i *IssueType) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*IssueType) GetNodeID

func (i *IssueType) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*IssueType) GetUpdatedAt

func (i *IssueType) GetUpdatedAt() Timestamp

GetUpdatedAt returns the UpdatedAt field if it's non-nil, zero value otherwise.

type IssuesEvent

type IssuesEvent struct {
	// Action is the action that was performed. Possible values are: "opened",
	// "edited", "deleted", "transferred", "pinned", "unpinned", "closed", "reopened",
	// "assigned", "unassigned", "labeled", "unlabeled", "locked", "unlocked",
	// "milestoned", or "demilestoned".
	Action   *string `json:"action,omitempty"`
	Issue    *Issue  `json:"issue,omitempty"`
	Assignee *User   `json:"assignee,omitempty"`
	Label    *Label  `json:"label,omitempty"`

	// The following fields are only populated by Webhook events.
	Changes      *EditChange   `json:"changes,omitempty"`
	Repo         *Repository   `json:"repository,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
	Milestone    *Milestone    `json:"milestone,omitempty"`

	// The following field is only present when the webhook is triggered on
	// a repository belonging to an organization.
	Org *Organization `json:"organization,omitempty"`
}

IssuesEvent is triggered when an issue is opened, edited, deleted, transferred, pinned, unpinned, closed, reopened, assigned, unassigned, labeled, unlabeled, locked, unlocked, milestoned, or demilestoned. The Webhook event name is "issues".

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#issues

func (*IssuesEvent) GetAction

func (i *IssuesEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*IssuesEvent) GetAssignee

func (i *IssuesEvent) GetAssignee() *User

GetAssignee returns the Assignee field.

func (*IssuesEvent) GetChanges

func (i *IssuesEvent) GetChanges() *EditChange

GetChanges returns the Changes field.

func (*IssuesEvent) GetInstallation

func (i *IssuesEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*IssuesEvent) GetIssue

func (i *IssuesEvent) GetIssue() *Issue

GetIssue returns the Issue field.

func (*IssuesEvent) GetLabel

func (i *IssuesEvent) GetLabel() *Label

GetLabel returns the Label field.

func (*IssuesEvent) GetMilestone

func (i *IssuesEvent) GetMilestone() *Milestone

GetMilestone returns the Milestone field.

func (*IssuesEvent) GetOrg

func (i *IssuesEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*IssuesEvent) GetRepo

func (i *IssuesEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*IssuesEvent) GetSender

func (i *IssuesEvent) GetSender() *User

GetSender returns the Sender field.

type IssuesSearchResult

type IssuesSearchResult struct {
	Total             *int     `json:"total_count,omitempty"`
	IncompleteResults *bool    `json:"incomplete_results,omitempty"`
	Issues            []*Issue `json:"items,omitempty"`
}

IssuesSearchResult represents the result of an issues search.

func (*IssuesSearchResult) GetIncompleteResults

func (i *IssuesSearchResult) GetIncompleteResults() bool

GetIncompleteResults returns the IncompleteResults field if it's non-nil, zero value otherwise.

func (*IssuesSearchResult) GetTotal

func (i *IssuesSearchResult) GetTotal() int

GetTotal returns the Total field if it's non-nil, zero value otherwise.

type IssuesService

type IssuesService service

IssuesService handles communication with the issue related methods of the GitHub API.

GitHub API docs: https://docs.github.com/rest/issues/

func (*IssuesService) AddAssignees

func (s *IssuesService) AddAssignees(ctx context.Context, owner, repo string, number int, assignees []string) (*Issue, *Response, error)

AddAssignees adds the provided GitHub users as assignees to the issue.

GitHub API docs: https://docs.github.com/rest/issues/assignees#add-assignees-to-an-issue

func (*IssuesService) AddLabelsToIssue

func (s *IssuesService) AddLabelsToIssue(ctx context.Context, owner string, repo string, number int, labels []string) ([]*Label, *Response, error)

AddLabelsToIssue adds labels to an issue.

GitHub API docs: https://docs.github.com/rest/issues/labels#add-labels-to-an-issue

func (*IssuesService) Create

func (s *IssuesService) Create(ctx context.Context, owner string, repo string, issue *IssueRequest) (*Issue, *Response, error)

Create a new issue on the specified repository.

GitHub API docs: https://docs.github.com/rest/issues/issues#create-an-issue

func (*IssuesService) CreateComment

func (s *IssuesService) CreateComment(ctx context.Context, owner string, repo string, number int, comment *IssueComment) (*IssueComment, *Response, error)

CreateComment creates a new comment on the specified issue.

GitHub API docs: https://docs.github.com/rest/issues/comments#create-an-issue-comment

func (*IssuesService) CreateLabel

func (s *IssuesService) CreateLabel(ctx context.Context, owner string, repo string, label *Label) (*Label, *Response, error)

CreateLabel creates a new label on the specified repository.

GitHub API docs: https://docs.github.com/rest/issues/labels#create-a-label

func (*IssuesService) CreateMilestone

func (s *IssuesService) CreateMilestone(ctx context.Context, owner string, repo string, milestone *Milestone) (*Milestone, *Response, error)

CreateMilestone creates a new milestone on the specified repository.

GitHub API docs: https://docs.github.com/rest/issues/milestones#create-a-milestone

func (*IssuesService) DeleteComment

func (s *IssuesService) DeleteComment(ctx context.Context, owner string, repo string, commentID int64) (*Response, error)

DeleteComment deletes an issue comment.

GitHub API docs: https://docs.github.com/rest/issues/comments#delete-an-issue-comment

func (*IssuesService) DeleteLabel

func (s *IssuesService) DeleteLabel(ctx context.Context, owner string, repo string, name string) (*Response, error)

DeleteLabel deletes a label.

GitHub API docs: https://docs.github.com/rest/issues/labels#delete-a-label

func (*IssuesService) DeleteMilestone

func (s *IssuesService) DeleteMilestone(ctx context.Context, owner string, repo string, number int) (*Response, error)

DeleteMilestone deletes a milestone.

GitHub API docs: https://docs.github.com/rest/issues/milestones#delete-a-milestone

func (*IssuesService) Edit

func (s *IssuesService) Edit(ctx context.Context, owner string, repo string, number int, issue *IssueRequest) (*Issue, *Response, error)

Edit (update) an issue.

GitHub API docs: https://docs.github.com/rest/issues/issues#update-an-issue

func (*IssuesService) EditComment

func (s *IssuesService) EditComment(ctx context.Context, owner string, repo string, commentID int64, comment *IssueComment) (*IssueComment, *Response, error)

EditComment updates an issue comment. A non-nil comment.Body must be provided. Other comment fields should be left nil.

GitHub API docs: https://docs.github.com/rest/issues/comments#update-an-issue-comment

func (*IssuesService) EditLabel

func (s *IssuesService) EditLabel(ctx context.Context, owner string, repo string, name string, label *Label) (*Label, *Response, error)

EditLabel edits a label.

GitHub API docs: https://docs.github.com/rest/issues/labels#update-a-label

func (*IssuesService) EditMilestone

func (s *IssuesService) EditMilestone(ctx context.Context, owner string, repo string, number int, milestone *Milestone) (*Milestone, *Response, error)

EditMilestone edits a milestone.

GitHub API docs: https://docs.github.com/rest/issues/milestones#update-a-milestone

func (*IssuesService) Get

func (s *IssuesService) Get(ctx context.Context, owner string, repo string, number int) (*Issue, *Response, error)

Get a single issue.

GitHub API docs: https://docs.github.com/rest/issues/issues#get-an-issue

func (*IssuesService) GetComment

func (s *IssuesService) GetComment(ctx context.Context, owner string, repo string, commentID int64) (*IssueComment, *Response, error)

GetComment fetches the specified issue comment.

GitHub API docs: https://docs.github.com/rest/issues/comments#get-an-issue-comment

func (*IssuesService) GetEvent

func (s *IssuesService) GetEvent(ctx context.Context, owner, repo string, id int64) (*IssueEvent, *Response, error)

GetEvent returns the specified issue event.

GitHub API docs: https://docs.github.com/rest/issues/events#get-an-issue-event

func (*IssuesService) GetLabel

func (s *IssuesService) GetLabel(ctx context.Context, owner string, repo string, name string) (*Label, *Response, error)

GetLabel gets a single label.

GitHub API docs: https://docs.github.com/rest/issues/labels#get-a-label

func (*IssuesService) GetMilestone

func (s *IssuesService) GetMilestone(ctx context.Context, owner string, repo string, number int) (*Milestone, *Response, error)

GetMilestone gets a single milestone.

GitHub API docs: https://docs.github.com/rest/issues/milestones#get-a-milestone

func (*IssuesService) IsAssignee

func (s *IssuesService) IsAssignee(ctx context.Context, owner, repo, user string) (bool, *Response, error)

IsAssignee checks if a user is an assignee for the specified repository.

GitHub API docs: https://docs.github.com/rest/issues/assignees#check-if-a-user-can-be-assigned

func (*IssuesService) List

func (s *IssuesService) List(ctx context.Context, all bool, opts *IssueListOptions) ([]*Issue, *Response, error)

List the issues for the authenticated user. If all is true, list issues across all the user's visible repositories including owned, member, and organization repositories; if false, list only owned and member repositories.

GitHub API docs: https://docs.github.com/rest/issues/issues#list-issues-assigned-to-the-authenticated-user GitHub API docs: https://docs.github.com/rest/issues/issues#list-user-account-issues-assigned-to-the-authenticated-user

func (*IssuesService) ListAssignees

func (s *IssuesService) ListAssignees(ctx context.Context, owner, repo string, opts *ListOptions) ([]*User, *Response, error)

ListAssignees fetches all available assignees (owners and collaborators) to which issues may be assigned.

GitHub API docs: https://docs.github.com/rest/issues/assignees#list-assignees

func (*IssuesService) ListByOrg

func (s *IssuesService) ListByOrg(ctx context.Context, org string, opts *IssueListOptions) ([]*Issue, *Response, error)

ListByOrg fetches the issues in the specified organization for the authenticated user.

GitHub API docs: https://docs.github.com/rest/issues/issues#list-organization-issues-assigned-to-the-authenticated-user

func (*IssuesService) ListByRepo

func (s *IssuesService) ListByRepo(ctx context.Context, owner string, repo string, opts *IssueListByRepoOptions) ([]*Issue, *Response, error)

ListByRepo lists the issues for the specified repository.

GitHub API docs: https://docs.github.com/rest/issues/issues#list-repository-issues

func (*IssuesService) ListComments

func (s *IssuesService) ListComments(ctx context.Context, owner string, repo string, number int, opts *IssueListCommentsOptions) ([]*IssueComment, *Response, error)

ListComments lists all comments on the specified issue. Specifying an issue number of 0 will return all comments on all issues for the repository.

GitHub API docs: https://docs.github.com/rest/issues/comments#list-issue-comments GitHub API docs: https://docs.github.com/rest/issues/comments#list-issue-comments-for-a-repository

func (*IssuesService) ListIssueEvents

func (s *IssuesService) ListIssueEvents(ctx context.Context, owner, repo string, number int, opts *ListOptions) ([]*IssueEvent, *Response, error)

ListIssueEvents lists events for the specified issue.

GitHub API docs: https://docs.github.com/rest/issues/events#list-issue-events

func (*IssuesService) ListIssueTimeline

func (s *IssuesService) ListIssueTimeline(ctx context.Context, owner, repo string, number int, opts *ListOptions) ([]*Timeline, *Response, error)

ListIssueTimeline lists events for the specified issue.

GitHub API docs: https://docs.github.com/rest/issues/timeline#list-timeline-events-for-an-issue

func (*IssuesService) ListLabels

func (s *IssuesService) ListLabels(ctx context.Context, owner string, repo string, opts *ListOptions) ([]*Label, *Response, error)

ListLabels lists all labels for a repository.

GitHub API docs: https://docs.github.com/rest/issues/labels#list-labels-for-a-repository

func (*IssuesService) ListLabelsByIssue

func (s *IssuesService) ListLabelsByIssue(ctx context.Context, owner string, repo string, number int, opts *ListOptions) ([]*Label, *Response, error)

ListLabelsByIssue lists all labels for an issue.

GitHub API docs: https://docs.github.com/rest/issues/labels#list-labels-for-an-issue

func (*IssuesService) ListLabelsForMilestone

func (s *IssuesService) ListLabelsForMilestone(ctx context.Context, owner string, repo string, number int, opts *ListOptions) ([]*Label, *Response, error)

ListLabelsForMilestone lists labels for every issue in a milestone.

GitHub API docs: https://docs.github.com/rest/issues/labels#list-labels-for-issues-in-a-milestone

func (*IssuesService) ListMilestones

func (s *IssuesService) ListMilestones(ctx context.Context, owner string, repo string, opts *MilestoneListOptions) ([]*Milestone, *Response, error)

ListMilestones lists all milestones for a repository.

GitHub API docs: https://docs.github.com/rest/issues/milestones#list-milestones

func (*IssuesService) ListRepositoryEvents

func (s *IssuesService) ListRepositoryEvents(ctx context.Context, owner, repo string, opts *ListOptions) ([]*IssueEvent, *Response, error)

ListRepositoryEvents lists events for the specified repository.

GitHub API docs: https://docs.github.com/rest/issues/events#list-issue-events-for-a-repository

func (*IssuesService) Lock

func (s *IssuesService) Lock(ctx context.Context, owner string, repo string, number int, opts *LockIssueOptions) (*Response, error)

Lock an issue's conversation.

GitHub API docs: https://docs.github.com/rest/issues/issues#lock-an-issue

func (*IssuesService) RemoveAssignees

func (s *IssuesService) RemoveAssignees(ctx context.Context, owner, repo string, number int, assignees []string) (*Issue, *Response, error)

RemoveAssignees removes the provided GitHub users as assignees from the issue.

GitHub API docs: https://docs.github.com/rest/issues/assignees#remove-assignees-from-an-issue

func (*IssuesService) RemoveLabelForIssue

func (s *IssuesService) RemoveLabelForIssue(ctx context.Context, owner string, repo string, number int, label string) (*Response, error)

RemoveLabelForIssue removes a label for an issue.

GitHub API docs: https://docs.github.com/rest/issues/labels#remove-a-label-from-an-issue

func (*IssuesService) RemoveLabelsForIssue

func (s *IssuesService) RemoveLabelsForIssue(ctx context.Context, owner string, repo string, number int) (*Response, error)

RemoveLabelsForIssue removes all labels for an issue.

GitHub API docs: https://docs.github.com/rest/issues/labels#remove-all-labels-from-an-issue

func (*IssuesService) RemoveMilestone

func (s *IssuesService) RemoveMilestone(ctx context.Context, owner, repo string, issueNumber int) (*Issue, *Response, error)

RemoveMilestone removes a milestone from an issue.

This is a helper method to explicitly update an issue with a `null` milestone, thereby removing it.

GitHub API docs: https://docs.github.com/rest/issues/issues#update-an-issue

func (*IssuesService) ReplaceLabelsForIssue

func (s *IssuesService) ReplaceLabelsForIssue(ctx context.Context, owner string, repo string, number int, labels []string) ([]*Label, *Response, error)

ReplaceLabelsForIssue replaces all labels for an issue.

GitHub API docs: https://docs.github.com/rest/issues/labels#set-labels-for-an-issue

func (*IssuesService) Unlock

func (s *IssuesService) Unlock(ctx context.Context, owner string, repo string, number int) (*Response, error)

Unlock an issue's conversation.

GitHub API docs: https://docs.github.com/rest/issues/issues#unlock-an-issue

type JITRunnerConfig

type JITRunnerConfig struct {
	Runner           *Runner `json:"runner,omitempty"`
	EncodedJITConfig *string `json:"encoded_jit_config,omitempty"`
}

JITRunnerConfig represents encoded JIT configuration that can be used to bootstrap a self-hosted runner.

func (*JITRunnerConfig) GetEncodedJITConfig

func (j *JITRunnerConfig) GetEncodedJITConfig() string

GetEncodedJITConfig returns the EncodedJITConfig field if it's non-nil, zero value otherwise.

func (*JITRunnerConfig) GetRunner

func (j *JITRunnerConfig) GetRunner() *Runner

GetRunner returns the Runner field.

type Jobs

type Jobs struct {
	TotalCount *int           `json:"total_count,omitempty"`
	Jobs       []*WorkflowJob `json:"jobs,omitempty"`
}

Jobs represents a slice of repository action workflow job.

func (*Jobs) GetTotalCount

func (j *Jobs) GetTotalCount() int

GetTotalCount returns the TotalCount field if it's non-nil, zero value otherwise.

type Key

type Key struct {
	ID        *int64     `json:"id,omitempty"`
	Key       *string    `json:"key,omitempty"`
	URL       *string    `json:"url,omitempty"`
	Title     *string    `json:"title,omitempty"`
	ReadOnly  *bool      `json:"read_only,omitempty"`
	Verified  *bool      `json:"verified,omitempty"`
	CreatedAt *Timestamp `json:"created_at,omitempty"`
	AddedBy   *string    `json:"added_by,omitempty"`
	LastUsed  *Timestamp `json:"last_used,omitempty"`
}

Key represents a public SSH key used to authenticate a user or deploy script.

func (*Key) GetAddedBy

func (k *Key) GetAddedBy() string

GetAddedBy returns the AddedBy field if it's non-nil, zero value otherwise.

func (*Key) GetCreatedAt

func (k *Key) GetCreatedAt() Timestamp

GetCreatedAt returns the CreatedAt field if it's non-nil, zero value otherwise.

func (*Key) GetID

func (k *Key) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Key) GetKey

func (k *Key) GetKey() string

GetKey returns the Key field if it's non-nil, zero value otherwise.

func (*Key) GetLastUsed

func (k *Key) GetLastUsed() Timestamp

GetLastUsed returns the LastUsed field if it's non-nil, zero value otherwise.

func (*Key) GetReadOnly

func (k *Key) GetReadOnly() bool

GetReadOnly returns the ReadOnly field if it's non-nil, zero value otherwise.

func (*Key) GetTitle

func (k *Key) GetTitle() string

GetTitle returns the Title field if it's non-nil, zero value otherwise.

func (*Key) GetURL

func (k *Key) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (*Key) GetVerified

func (k *Key) GetVerified() bool

GetVerified returns the Verified field if it's non-nil, zero value otherwise.

func (Key) String

func (k Key) String() string

type Label

type Label struct {
	ID          *int64  `json:"id,omitempty"`
	URL         *string `json:"url,omitempty"`
	Name        *string `json:"name,omitempty"`
	Color       *string `json:"color,omitempty"`
	Description *string `json:"description,omitempty"`
	Default     *bool   `json:"default,omitempty"`
	NodeID      *string `json:"node_id,omitempty"`
}

Label represents a GitHub label on an Issue.

func (*Label) GetColor

func (l *Label) GetColor() string

GetColor returns the Color field if it's non-nil, zero value otherwise.

func (*Label) GetDefault

func (l *Label) GetDefault() bool

GetDefault returns the Default field if it's non-nil, zero value otherwise.

func (*Label) GetDescription

func (l *Label) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*Label) GetID

func (l *Label) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*Label) GetName

func (l *Label) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*Label) GetNodeID

func (l *Label) GetNodeID() string

GetNodeID returns the NodeID field if it's non-nil, zero value otherwise.

func (*Label) GetURL

func (l *Label) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (Label) String

func (l Label) String() string

type LabelEvent

type LabelEvent struct {
	// Action is the action that was performed. Possible values are:
	// "created", "edited", "deleted"
	Action  *string     `json:"action,omitempty"`
	Label   *Label      `json:"label,omitempty"`
	Changes *EditChange `json:"changes,omitempty"`

	// The following fields are only populated by Webhook events.
	Repo         *Repository   `json:"repository,omitempty"`
	Org          *Organization `json:"organization,omitempty"`
	Sender       *User         `json:"sender,omitempty"`
	Installation *Installation `json:"installation,omitempty"`
}

LabelEvent is triggered when a repository's label is created, edited, or deleted. The Webhook event name is "label"

GitHub API docs: https://docs.github.com/developers/webhooks-and-events/webhook-events-and-payloads#label

func (*LabelEvent) GetAction

func (l *LabelEvent) GetAction() string

GetAction returns the Action field if it's non-nil, zero value otherwise.

func (*LabelEvent) GetChanges

func (l *LabelEvent) GetChanges() *EditChange

GetChanges returns the Changes field.

func (*LabelEvent) GetInstallation

func (l *LabelEvent) GetInstallation() *Installation

GetInstallation returns the Installation field.

func (*LabelEvent) GetLabel

func (l *LabelEvent) GetLabel() *Label

GetLabel returns the Label field.

func (*LabelEvent) GetOrg

func (l *LabelEvent) GetOrg() *Organization

GetOrg returns the Org field.

func (*LabelEvent) GetRepo

func (l *LabelEvent) GetRepo() *Repository

GetRepo returns the Repo field.

func (*LabelEvent) GetSender

func (l *LabelEvent) GetSender() *User

GetSender returns the Sender field.

type LabelResult

type LabelResult struct {
	ID          *int64   `json:"id,omitempty"`
	URL         *string  `json:"url,omitempty"`
	Name        *string  `json:"name,omitempty"`
	Color       *string  `json:"color,omitempty"`
	Default     *bool    `json:"default,omitempty"`
	Description *string  `json:"description,omitempty"`
	Score       *float64 `json:"score,omitempty"`
}

LabelResult represents a single search result.

func (*LabelResult) GetColor

func (l *LabelResult) GetColor() string

GetColor returns the Color field if it's non-nil, zero value otherwise.

func (*LabelResult) GetDefault

func (l *LabelResult) GetDefault() bool

GetDefault returns the Default field if it's non-nil, zero value otherwise.

func (*LabelResult) GetDescription

func (l *LabelResult) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*LabelResult) GetID

func (l *LabelResult) GetID() int64

GetID returns the ID field if it's non-nil, zero value otherwise.

func (*LabelResult) GetName

func (l *LabelResult) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*LabelResult) GetScore

func (l *LabelResult) GetScore() *float64

GetScore returns the Score field.

func (*LabelResult) GetURL

func (l *LabelResult) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (LabelResult) String

func (l LabelResult) String() string

type LabelsSearchResult

type LabelsSearchResult struct {
	Total             *int           `json:"total_count,omitempty"`
	IncompleteResults *bool          `json:"incomplete_results,omitempty"`
	Labels            []*LabelResult `json:"items,omitempty"`
}

LabelsSearchResult represents the result of a code search.

func (*LabelsSearchResult) GetIncompleteResults

func (l *LabelsSearchResult) GetIncompleteResults() bool

GetIncompleteResults returns the IncompleteResults field if it's non-nil, zero value otherwise.

func (*LabelsSearchResult) GetTotal

func (l *LabelsSearchResult) GetTotal() int

GetTotal returns the Total field if it's non-nil, zero value otherwise.

type LargeFile

type LargeFile struct {
	RefName *string `json:"ref_name,omitempty"`
	Path    *string `json:"path,omitempty"`
	OID     *string `json:"oid,omitempty"`
	Size    *int    `json:"size,omitempty"`
}

LargeFile identifies a file larger than 100MB found during a repository import.

GitHub API docs: https://docs.github.com/rest/migration/source_imports/#get-large-files

func (*LargeFile) GetOID

func (l *LargeFile) GetOID() string

GetOID returns the OID field if it's non-nil, zero value otherwise.

func (*LargeFile) GetPath

func (l *LargeFile) GetPath() string

GetPath returns the Path field if it's non-nil, zero value otherwise.

func (*LargeFile) GetRefName

func (l *LargeFile) GetRefName() string

GetRefName returns the RefName field if it's non-nil, zero value otherwise.

func (*LargeFile) GetSize

func (l *LargeFile) GetSize() int

GetSize returns the Size field if it's non-nil, zero value otherwise.

func (LargeFile) String

func (f LargeFile) String() string

type License

type License struct {
	Key  *string `json:"key,omitempty"`
	Name *string `json:"name,omitempty"`
	URL  *string `json:"url,omitempty"`

	SPDXID         *string   `json:"spdx_id,omitempty"`
	HTMLURL        *string   `json:"html_url,omitempty"`
	Featured       *bool     `json:"featured,omitempty"`
	Description    *string   `json:"description,omitempty"`
	Implementation *string   `json:"implementation,omitempty"`
	Permissions    *[]string `json:"permissions,omitempty"`
	Conditions     *[]string `json:"conditions,omitempty"`
	Limitations    *[]string `json:"limitations,omitempty"`
	Body           *string   `json:"body,omitempty"`
}

License represents an open source license.

func (*License) GetBody

func (l *License) GetBody() string

GetBody returns the Body field if it's non-nil, zero value otherwise.

func (*License) GetConditions

func (l *License) GetConditions() []string

GetConditions returns the Conditions field if it's non-nil, zero value otherwise.

func (*License) GetDescription

func (l *License) GetDescription() string

GetDescription returns the Description field if it's non-nil, zero value otherwise.

func (*License) GetFeatured

func (l *License) GetFeatured() bool

GetFeatured returns the Featured field if it's non-nil, zero value otherwise.

func (*License) GetHTMLURL

func (l *License) GetHTMLURL() string

GetHTMLURL returns the HTMLURL field if it's non-nil, zero value otherwise.

func (*License) GetImplementation

func (l *License) GetImplementation() string

GetImplementation returns the Implementation field if it's non-nil, zero value otherwise.

func (*License) GetKey

func (l *License) GetKey() string

GetKey returns the Key field if it's non-nil, zero value otherwise.

func (*License) GetLimitations

func (l *License) GetLimitations() []string

GetLimitations returns the Limitations field if it's non-nil, zero value otherwise.

func (*License) GetName

func (l *License) GetName() string

GetName returns the Name field if it's non-nil, zero value otherwise.

func (*License) GetPermissions

func (l *License) GetPermissions() []string

GetPermissions returns the Permissions field if it's non-nil, zero value otherwise.

func (*License) GetSPDXID

func (l *License) GetSPDXID() string

GetSPDXID returns the SPDXID field if it's non-nil, zero value otherwise.

func (*License) GetURL

func (l *License) GetURL() string

GetURL returns the URL field if it's non-nil, zero value otherwise.

func (License) String

func (l License) String() string

type LicenseCheck

type LicenseCheck struct {
	Status *string `json:"status,omitempty"`
}

LicenseCheck is a struct to hold the response from the LicenseStatus API.

func (*LicenseCheck) GetStatus

func (l *LicenseCheck) GetStatus() string

GetStatus returns the Status field if it's non-nil, zero value otherwise.

type LicenseStatus

type LicenseStatus struct {
	AdvancedSecurityEnabled      *bool      `json:"advancedSecurityEnabled,omitempty"`
	AdvancedSecuritySeats        *int       `json:"advancedSecuritySeats,omitempty"`
	ClusterSupport               *bool      `json:"clusterSupport,omitempty"`
<