From ff58ec24779d97e8d1b046bc46df168a55fd7953 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Thu, 20 Feb 2025 23:10:15 +0300 Subject: [PATCH 01/17] feat(actions): add support for GitHub-hosted runner API endpoints Implement new methods for managing GitHub-hosted runners, including functionalities for creating, updating, deleting, and retrieving details about hosted runners. References: - GitHub REST API: https://docs.github.com/en/rest/actions/hosted-runners Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 333 +++++++++++ github/actions_hosted_runners_test.go | 789 ++++++++++++++++++++++++++ github/github-accessors.go | 104 ++++ github/github-accessors_test.go | 134 +++++ github/repos.go | 6 +- openapi_operations.yaml | 189 +++++- 6 files changed, 1548 insertions(+), 7 deletions(-) create mode 100644 github/actions_hosted_runners.go create mode 100644 github/actions_hosted_runners_test.go diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go new file mode 100644 index 00000000000..fd1bb05d380 --- /dev/null +++ b/github/actions_hosted_runners.go @@ -0,0 +1,333 @@ +// Copyright 2020 The go-github AUTHORS. All rights reserved. +// +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package github + +import ( + "context" + "fmt" +) + +// HostedRunnerPublicIP represents the details of a public IP for github-hosted runner. +type HostedRunnerPublicIP struct { + Enabled bool `json:"enabled"` + Prefix string `json:"prefix"` + Length int `json:"length"` +} + +// HostedRunnerMachineSpec represents the details of a particular machine specification for github-hosted runner. +type HostedRunnerMachineSpec struct { + ID string `json:"id"` + CPUCores int `json:"cpu_cores"` + MemoryGB int `json:"memory_gb"` + StorageGB int `json:"storage_gb"` +} + +// HostedRunner represents a single github-hosted runner with additional details. +type HostedRunner struct { + ID *int64 `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + RunnerGroupID *int64 `json:"runner_group_id,omitempty"` + Platform *string `json:"platform,omitempty"` + Image *HostedRunnerImageDetail `json:"image,omitempty"` + MachineSizeDetails *HostedRunnerMachineSpec `json:"machine_size_details,omitempty"` + Status *string `json:"status,omitempty"` + MaximumRunners *int64 `json:"maximum_runners,omitempty"` + PublicIPEnabled *bool `json:"public_ip_enabled,omitempty"` + PublicIPs []*HostedRunnerPublicIP `json:"public_ips,omitempty"` + LastActiveOn *string `json:"last_active_on,omitempty"` +} + +// HostedRunnerImageDetail represents the image details of a github-hosted runners. +type HostedRunnerImageDetail struct { + ID *string `json:"id,omitempty"` + Size *int `json:"size,omitempty"` +} + +// HostedRunners represents a collection of github-hosted runners for a organization. +type HostedRunners struct { + TotalCount int `json:"total_count"` + Runners []*HostedRunner `json:"runners"` +} + +// ListHostedRunners lists all the github-hosted runners for a organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#list-github-hosted-runners-for-an-organization +// +//meta:operation GET /orgs/{org}/actions/hosted-runners +func (s *ActionsService) ListHostedRunners(ctx context.Context, org string, opts *ListOptions) (*HostedRunners, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners", org) + u, err := addOptions(u, opts) + if err != nil { + return nil, nil, err + } + + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + runners := &HostedRunners{} + resp, err := s.client.Do(ctx, req, &runners) + if err != nil { + return nil, resp, err + } + + return runners, resp, nil +} + +// HostedRunnerImage represents the image of github-hosted runners +// To list all available images, use GET /actions/hosted-runners/images/github-owned or GET /actions/hosted-runners/images/partner +type HostedRunnerImage struct { + ID string `json:"id"` + Source string `json:"source"` + Version string `json:"version"` +} + +// CreateHostedRunnerRequest specifies body parameters to Hosted Runner configuration. +type CreateHostedRunnerRequest struct { + Name string `json:"name"` + Image HostedRunnerImage `json:"image"` + RunnerGroupID int64 `json:"runner_group_id"` + Size string `json:"size"` + MaximumRunners int64 `json:"maximum_runners,omitempty"` + EnableStaticIP bool `json:"enable_static_ip,omitempty"` +} + +// CreateHostedRunner creates a github-hosted runner for an organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-organization +// +//meta:operation POST /orgs/{org}/actions/hosted-runners +func (s *ActionsService) CreateHostedRunner(ctx context.Context, org string, request *CreateHostedRunnerRequest) (*HostedRunner, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners", org) + req, err := s.client.NewRequest("POST", u, request) + if err != nil { + return nil, nil, err + } + + hostedRunner := new(HostedRunner) + resp, err := s.client.Do(ctx, req, hostedRunner) + if err != nil { + return nil, resp, err + } + + return hostedRunner, resp, nil +} + +// HostedRunnerImageSpecs represents the details of a github-hosted runner image. +type HostedRunnerImageSpecs struct { + ID string `json:"id"` + Platform string `json:"platform"` + SizeGB int `json:"size_gb"` + DisplayName string `json:"display_name"` + Source string `json:"source"` +} + +// HostedRunnerImages represents the response containing the total count and details of runner images. +type HostedRunnerImages struct { + TotalCount int `json:"total_count"` + Images []*HostedRunnerImageSpecs `json:"images"` +} + +// GetHostedRunnerGithubOwnedImages gets the list of GitHub-owned images available for github-hosted runners for an organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-github-owned-images-for-github-hosted-runners-in-an-organization +// +//meta:operation GET /orgs/{org}/actions/hosted-runners/images/github-owned +func (s *ActionsService) GetHostedRunnerGithubOwnedImages(ctx context.Context, org string) (*HostedRunnerImages, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners/images/github-owned", org) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + hostedRunnerImages := new(HostedRunnerImages) + resp, err := s.client.Do(ctx, req, hostedRunnerImages) + if err != nil { + return nil, resp, err + } + + return hostedRunnerImages, resp, nil +} + +// GetHostedRunnerPartnerImages gets the list of partner images available for github-hosted runners for an organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-partner-images-for-github-hosted-runners-in-an-organization +// +//meta:operation GET /orgs/{org}/actions/hosted-runners/images/partner +func (s *ActionsService) GetHostedRunnerPartnerImages(ctx context.Context, org string) (*HostedRunnerImages, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners/images/partner", org) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + hostedRunnerImages := new(HostedRunnerImages) + resp, err := s.client.Do(ctx, req, hostedRunnerImages) + if err != nil { + return nil, resp, err + } + + return hostedRunnerImages, resp, nil +} + +// HostedRunnerPublicIPLimits represents the static public IP limits for github-hosted runners. +type HostedRunnerPublicIPLimits struct { + PublicIPs *PublicIPUsage `json:"public_ips"` +} + +// PublicIPUsage provides details of static public IP limits for github-hosted runners. +type PublicIPUsage struct { + Maximum int `json:"maximum"` + CurrentUsage int `json:"current_usage"` +} + +// GetHostedRunnerLimits gets the github-hosted runners Static public IP Limits for an organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-limits-on-github-hosted-runners-for-an-organization +// +//meta:operation GET /orgs/{org}/actions/hosted-runners/limits +func (s *ActionsService) GetHostedRunnerLimits(ctx context.Context, org string) (*HostedRunnerPublicIPLimits, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners/limits", org) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + publicIPLimits := new(HostedRunnerPublicIPLimits) + resp, err := s.client.Do(ctx, req, publicIPLimits) + if err != nil { + return nil, resp, err + } + + return publicIPLimits, resp, nil +} + +// HostedRunnerMachineSpecs represents the response containing the total count and details of machine specs for github-hosted runners. +type HostedRunnerMachineSpecs struct { + TotalCount int `json:"total_count"` + MachineSpecs []*HostedRunnerMachineSpec `json:"machine_specs"` +} + +// GetHostedRunnerMachineSpecs gets the list of machine specs available for github-hosted runners for an organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-github-hosted-runners-machine-specs-for-an-organization +// +//meta:operation GET /orgs/{org}/actions/hosted-runners/machine-sizes +func (s *ActionsService) GetHostedRunnerMachineSpecs(ctx context.Context, org string) (*HostedRunnerMachineSpecs, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners/machine-sizes", org) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + machineSpecs := new(HostedRunnerMachineSpecs) + resp, err := s.client.Do(ctx, req, machineSpecs) + if err != nil { + return nil, resp, err + } + + return machineSpecs, resp, nil +} + +// HostedRunnerPlatforms represents the response containing the total count and platforms for github-hosted runners. +type HostedRunnerPlatforms struct { + TotalCount int `json:"total_count"` + Platforms []string `json:"platforms"` +} + +// GetHostedRunnerPlatforms gets list of platforms available for github-hosted runners for an organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-platforms-for-github-hosted-runners-in-an-organization +// +//meta:operation GET /orgs/{org}/actions/hosted-runners/platforms +func (s *ActionsService) GetHostedRunnerPlatforms(ctx context.Context, org string) (*HostedRunnerPlatforms, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners/platforms", org) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + platforms := new(HostedRunnerPlatforms) + resp, err := s.client.Do(ctx, req, platforms) + if err != nil { + return nil, resp, err + } + + return platforms, resp, nil +} + +// GetHostedRunner gets a github-hosted runner in an organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-a-github-hosted-runner-for-an-organization +// +//meta:operation GET /orgs/{org}/actions/hosted-runners/{hosted_runner_id} +func (s *ActionsService) GetHostedRunner(ctx context.Context, org string, runnerID int64) (*HostedRunner, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners/%v", org, runnerID) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + hostedRunner := new(HostedRunner) + resp, err := s.client.Do(ctx, req, hostedRunner) + if err != nil { + return nil, resp, err + } + + return hostedRunner, resp, nil +} + +// UpdateHostedRunnerRequest specifies the parameters for updating a runner specifications. +type UpdateHostedRunnerRequest struct { + Name string `json:"name"` + RunnerGroupID int64 `json:"runner_group_id"` + MaximumRunners int64 `json:"maximum_runners"` + EnableStaticIP bool `json:"enable_static_ip"` + ImageVersion string `json:"image_version"` +} + +// UpdateHostedRunner updates a github-hosted runner for an organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-organization +// +//meta:operation PATCH /orgs/{org}/actions/hosted-runners/{hosted_runner_id} +func (s *ActionsService) UpdateHostedRunner(ctx context.Context, org string, runnerID int64, updateReq UpdateHostedRunnerRequest) (*HostedRunner, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners/%v", org, runnerID) + req, err := s.client.NewRequest("PATCH", u, updateReq) + if err != nil { + return nil, nil, err + } + + hostedRunner := new(HostedRunner) + resp, err := s.client.Do(ctx, req, hostedRunner) + if err != nil { + return nil, resp, err + } + + return hostedRunner, resp, nil +} + +// DeleteHostedRunner deletes github-hosted runner from an organization. +// +// GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#delete-a-github-hosted-runner-for-an-organization +// +//meta:operation DELETE /orgs/{org}/actions/hosted-runners/{hosted_runner_id} +func (s *ActionsService) DeleteHostedRunner(ctx context.Context, org string, runnerID int64) (*HostedRunner, *Response, error) { + u := fmt.Sprintf("orgs/%v/actions/hosted-runners/%v", org, runnerID) + req, err := s.client.NewRequest("DELETE", u, nil) + if err != nil { + return nil, nil, err + } + + hostedRunner := new(HostedRunner) + resp, err := s.client.Do(ctx, req, hostedRunner) + if err != nil { + return nil, resp, err + } + + return hostedRunner, resp, nil +} diff --git a/github/actions_hosted_runners_test.go b/github/actions_hosted_runners_test.go new file mode 100644 index 00000000000..4c79dab02bc --- /dev/null +++ b/github/actions_hosted_runners_test.go @@ -0,0 +1,789 @@ +// Copyright 2020 The go-github AUTHORS. All rights reserved. +// +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package github + +import ( + "context" + "fmt" + "net/http" + "testing" + + "github.com/google/go-cmp/cmp" +) + +func TestActionsService_ListHostedRunners(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 2, + "runners": [ + { + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2022-10-09T23:39:01Z" + }, + { + "id": 7, + "name": "My hosted Windows runner", + "runner_group_id": 2, + "platform": "win-x64", + "image": { + "id": "windows-latest", + "size": 256 + }, + "machine_size_details": { + "id": "8-core", + "cpu_cores": 8, + "memory_gb": 32, + "storage_gb": 300 + }, + "status": "Ready", + "maximum_runners": 20, + "public_ip_enabled": false, + "public_ips": [], + "last_active_on": "2023-04-26T15:23:37Z" + } + ] + }`) + }) + opts := &ListOptions{Page: 1, PerPage: 1} + ctx := context.Background() + hostedRunners, _, err := client.Actions.ListHostedRunners(ctx, "o", opts) + if err != nil { + t.Errorf("Actions.ListHostedRunners returned error: %v", err) + } + + want := &HostedRunners{ + TotalCount: 2, + Runners: []*HostedRunner{ + { + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + Size: Ptr(86), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + }, + { + ID: Ptr(int64(7)), + Name: Ptr("My hosted Windows runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("win-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("windows-latest"), + Size: Ptr(256), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "8-core", + CPUCores: 8, + MemoryGB: 32, + StorageGB: 300, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(20)), + PublicIPEnabled: Ptr(false), + PublicIPs: []*HostedRunnerPublicIP{}, + LastActiveOn: Ptr("2023-04-26T15:23:37Z"), + }, + }, + } + if !cmp.Equal(hostedRunners, want) { + t.Errorf("Actions.ListHostedRunners returned %+v, want %+v", hostedRunners, want) + } + + const methodName = "ListHostedRunners" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.ListHostedRunners(ctx, "\n", opts) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.ListHostedRunners(ctx, "o", opts) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestActionsService_CreateHostedRunner(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "POST") + fmt.Fprint(w, `{ + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2022-10-09T23:39:01Z" + }`) + }) + + ctx := context.Background() + req := &CreateHostedRunnerRequest{ + Name: "My Hosted runner", + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + RunnerGroupID: 1, + Size: "4-core", + MaximumRunners: 50, + EnableStaticIP: false, + } + hostedRunner, _, err := client.Actions.CreateHostedRunner(ctx, "o", req) + if err != nil { + t.Errorf("Actions.CreateHostedRunner returned error: %v", err) + } + + want := &HostedRunner{ + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + Size: Ptr(86), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + } + + if !cmp.Equal(hostedRunner, want) { + t.Errorf("Actions.CreateHostedRunner returned %+v, want %+v", hostedRunner, want) + } + + const methodName = "CreateHostedRunner" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.CreateHostedRunner(ctx, "\n", req) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.CreateHostedRunner(ctx, "o", req) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestActionsService_GetHostedRunnerGithubOwnedImages(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners/images/github-owned", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 1, + "images": [ + { + "id": "ubuntu-20.04", + "platform": "linux-x64", + "size_gb": 86, + "display_name": "20.04", + "source": "github" + } + ] + }`) + }) + + ctx := context.Background() + hostedRunnerImages, _, err := client.Actions.GetHostedRunnerGithubOwnedImages(ctx, "o") + if err != nil { + t.Errorf("Actions.GetHostedRunnerGithubOwnedImages returned error: %v", err) + } + + want := &HostedRunnerImages{ + TotalCount: 1, + Images: []*HostedRunnerImageSpecs{ + { + ID: "ubuntu-20.04", + Platform: "linux-x64", + SizeGB: 86, + DisplayName: "20.04", + Source: "github", + }, + }, + } + + if !cmp.Equal(hostedRunnerImages, want) { + t.Errorf("Actions.GetHostedRunnerGithubOwnedImages returned %+v, want %+v", hostedRunnerImages, want) + } + + const methodName = "GetHostedRunnerGithubOwnedImages" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.GetHostedRunnerGithubOwnedImages(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.GetHostedRunnerGithubOwnedImages(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestActionsService_GetHostedRunnerPartnerImages(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners/images/partner", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 1, + "images": [ + { + "id": "ubuntu-20.04", + "platform": "linux-x64", + "size_gb": 86, + "display_name": "20.04", + "source": "partner" + } + ] + }`) + }) + + ctx := context.Background() + hostedRunnerImages, _, err := client.Actions.GetHostedRunnerPartnerImages(ctx, "o") + if err != nil { + t.Errorf("Actions.GetHostedRunnerPartnerImages returned error: %v", err) + } + + want := &HostedRunnerImages{ + TotalCount: 1, + Images: []*HostedRunnerImageSpecs{ + { + ID: "ubuntu-20.04", + Platform: "linux-x64", + SizeGB: 86, + DisplayName: "20.04", + Source: "partner", + }, + }, + } + + if !cmp.Equal(hostedRunnerImages, want) { + t.Errorf("Actions.GetHostedRunnerPartnerImages returned %+v, want %+v", hostedRunnerImages, want) + } + + const methodName = "GetHostedRunnerPartnerImages" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.GetHostedRunnerPartnerImages(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.GetHostedRunnerPartnerImages(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestActionsService_GetHostedRunnerLimits(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners/limits", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "public_ips": { + "current_usage": 17, + "maximum": 50 + } + }`) + }) + + ctx := context.Background() + publicIPLimits, _, err := client.Actions.GetHostedRunnerLimits(ctx, "o") + if err != nil { + t.Errorf("Actions.GetPartnerImages returned error: %v", err) + } + + want := &HostedRunnerPublicIPLimits{ + PublicIPs: &PublicIPUsage{ + CurrentUsage: 17, + Maximum: 50, + }, + } + + if !cmp.Equal(publicIPLimits, want) { + t.Errorf("Actions.GetHostedRunnerLimits returned %+v, want %+v", publicIPLimits, want) + } + + const methodName = "GetHostedRunnerLimits" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.GetHostedRunnerLimits(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.GetHostedRunnerLimits(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestActionsService_GetHostedRunnerMachineSpecs(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners/machine-sizes", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 1, + "machine_specs": [ + { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + } + ] + }`) + }) + + ctx := context.Background() + machineSpecs, _, err := client.Actions.GetHostedRunnerMachineSpecs(ctx, "o") + if err != nil { + t.Errorf("Actions.GetHostedRunnerMachineSpecs returned error: %v", err) + } + want := &HostedRunnerMachineSpecs{ + TotalCount: 1, + MachineSpecs: []*HostedRunnerMachineSpec{ + { + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + }, + } + + if !cmp.Equal(machineSpecs, want) { + t.Errorf("Actions.GetHostedRunnerMachineSpecs returned %+v, want %+v", machineSpecs, want) + } + + const methodName = "GetHostedRunnerMachineSpecs" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.GetHostedRunnerMachineSpecs(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.GetHostedRunnerMachineSpecs(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestActionsService_GetHostedRunnerPlatforms(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners/platforms", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 1, + "platforms": [ + "linux-x64", + "win-x64" + ] + }`) + }) + + ctx := context.Background() + platforms, _, err := client.Actions.GetHostedRunnerPlatforms(ctx, "o") + if err != nil { + t.Errorf("Actions.GetHostedRunnerPlatforms returned error: %v", err) + } + want := &HostedRunnerPlatforms{ + TotalCount: 1, + Platforms: []string{ + "linux-x64", + "win-x64", + }, + } + + if !cmp.Equal(platforms, want) { + t.Errorf("Actions.GetHostedRunnerPlatforms returned %+v, want %+v", platforms, want) + } + + const methodName = "GetHostedRunnerPlatforms" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.GetHostedRunnerPlatforms(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.GetHostedRunnerPlatforms(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestActionsService_GetHostedRunner(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2022-10-09T23:39:01Z" + }`) + }) + + ctx := context.Background() + hostedRunner, _, err := client.Actions.GetHostedRunner(ctx, "o", 23) + if err != nil { + t.Errorf("Actions.GetHostedRunner returned error: %v", err) + } + + want := &HostedRunner{ + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + Size: Ptr(86), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + } + + if !cmp.Equal(hostedRunner, want) { + t.Errorf("Actions.GetHostedRunner returned %+v, want %+v", hostedRunner, want) + } + + const methodName = "GetHostedRunner" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.GetHostedRunner(ctx, "\n", 23) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.GetHostedRunner(ctx, "o", 23) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestActionsService_UpdateHostedRunner(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "PATCH") + fmt.Fprint(w, `{ + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2022-10-09T23:39:01Z" + }`) + }) + + ctx := context.Background() + req := UpdateHostedRunnerRequest{ + Name: "My larger runner", + RunnerGroupID: 1, + MaximumRunners: 50, + EnableStaticIP: false, + ImageVersion: "1.0.0", + } + hostedRunner, _, err := client.Actions.UpdateHostedRunner(ctx, "o", 23, req) + if err != nil { + t.Errorf("Actions.UpdateHostedRunner returned error: %v", err) + } + + want := &HostedRunner{ + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + Size: Ptr(86), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + } + + if !cmp.Equal(hostedRunner, want) { + t.Errorf("Actions.UpdateHostedRunner returned %+v, want %+v", hostedRunner, want) + } + + const methodName = "UpdateHostedRunner" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.UpdateHostedRunner(ctx, "\n", 23, req) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.UpdateHostedRunner(ctx, "o", 23, req) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestActionsService_DeleteHostedRunner(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "DELETE") + fmt.Fprint(w, `{ + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2022-10-09T23:39:01Z" + }`) + }) + + ctx := context.Background() + hostedRunner, _, err := client.Actions.DeleteHostedRunner(ctx, "o", 23) + if err != nil { + t.Errorf("Actions.GetHostedRunner returned error: %v", err) + } + + want := &HostedRunner{ + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + Size: Ptr(86), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + } + + if !cmp.Equal(hostedRunner, want) { + t.Errorf("Actions.DeleteHostedRunner returned %+v, want %+v", hostedRunner, want) + } + + const methodName = "DeleteHostedRunner" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Actions.DeleteHostedRunner(ctx, "\n", 23) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Actions.DeleteHostedRunner(ctx, "o", 23) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} diff --git a/github/github-accessors.go b/github/github-accessors.go index 6270bc1fc6c..d34cff14c53 100644 --- a/github/github-accessors.go +++ b/github/github-accessors.go @@ -10182,6 +10182,110 @@ func (h *HookStats) GetTotalHooks() int { return *h.TotalHooks } +// GetID returns the ID field if it's non-nil, zero value otherwise. +func (h *HostedRunner) GetID() int64 { + if h == nil || h.ID == nil { + return 0 + } + return *h.ID +} + +// GetImage returns the Image field. +func (h *HostedRunner) GetImage() *HostedRunnerImageDetail { + if h == nil { + return nil + } + return h.Image +} + +// GetLastActiveOn returns the LastActiveOn field if it's non-nil, zero value otherwise. +func (h *HostedRunner) GetLastActiveOn() string { + if h == nil || h.LastActiveOn == nil { + return "" + } + return *h.LastActiveOn +} + +// GetMachineSizeDetails returns the MachineSizeDetails field. +func (h *HostedRunner) GetMachineSizeDetails() *HostedRunnerMachineSpec { + if h == nil { + return nil + } + return h.MachineSizeDetails +} + +// GetMaximumRunners returns the MaximumRunners field if it's non-nil, zero value otherwise. +func (h *HostedRunner) GetMaximumRunners() int64 { + if h == nil || h.MaximumRunners == nil { + return 0 + } + return *h.MaximumRunners +} + +// GetName returns the Name field if it's non-nil, zero value otherwise. +func (h *HostedRunner) GetName() string { + if h == nil || h.Name == nil { + return "" + } + return *h.Name +} + +// GetPlatform returns the Platform field if it's non-nil, zero value otherwise. +func (h *HostedRunner) GetPlatform() string { + if h == nil || h.Platform == nil { + return "" + } + return *h.Platform +} + +// GetPublicIPEnabled returns the PublicIPEnabled field if it's non-nil, zero value otherwise. +func (h *HostedRunner) GetPublicIPEnabled() bool { + if h == nil || h.PublicIPEnabled == nil { + return false + } + return *h.PublicIPEnabled +} + +// GetRunnerGroupID returns the RunnerGroupID field if it's non-nil, zero value otherwise. +func (h *HostedRunner) GetRunnerGroupID() int64 { + if h == nil || h.RunnerGroupID == nil { + return 0 + } + return *h.RunnerGroupID +} + +// GetStatus returns the Status field if it's non-nil, zero value otherwise. +func (h *HostedRunner) GetStatus() string { + if h == nil || h.Status == nil { + return "" + } + return *h.Status +} + +// GetID returns the ID field if it's non-nil, zero value otherwise. +func (h *HostedRunnerImageDetail) GetID() string { + if h == nil || h.ID == nil { + return "" + } + return *h.ID +} + +// GetSize returns the Size field if it's non-nil, zero value otherwise. +func (h *HostedRunnerImageDetail) GetSize() int { + if h == nil || h.Size == nil { + return 0 + } + return *h.Size +} + +// GetPublicIPs returns the PublicIPs field. +func (h *HostedRunnerPublicIPLimits) GetPublicIPs() *PublicIPUsage { + if h == nil { + return nil + } + return h.PublicIPs +} + // GetGroupDescription returns the GroupDescription field if it's non-nil, zero value otherwise. func (i *IDPGroup) GetGroupDescription() string { if i == nil || i.GroupDescription == nil { diff --git a/github/github-accessors_test.go b/github/github-accessors_test.go index b3be0c11f27..7fa713c31b7 100644 --- a/github/github-accessors_test.go +++ b/github/github-accessors_test.go @@ -13180,6 +13180,140 @@ func TestHookStats_GetTotalHooks(tt *testing.T) { h.GetTotalHooks() } +func TestHostedRunner_GetID(tt *testing.T) { + tt.Parallel() + var zeroValue int64 + h := &HostedRunner{ID: &zeroValue} + h.GetID() + h = &HostedRunner{} + h.GetID() + h = nil + h.GetID() +} + +func TestHostedRunner_GetImage(tt *testing.T) { + tt.Parallel() + h := &HostedRunner{} + h.GetImage() + h = nil + h.GetImage() +} + +func TestHostedRunner_GetLastActiveOn(tt *testing.T) { + tt.Parallel() + var zeroValue string + h := &HostedRunner{LastActiveOn: &zeroValue} + h.GetLastActiveOn() + h = &HostedRunner{} + h.GetLastActiveOn() + h = nil + h.GetLastActiveOn() +} + +func TestHostedRunner_GetMachineSizeDetails(tt *testing.T) { + tt.Parallel() + h := &HostedRunner{} + h.GetMachineSizeDetails() + h = nil + h.GetMachineSizeDetails() +} + +func TestHostedRunner_GetMaximumRunners(tt *testing.T) { + tt.Parallel() + var zeroValue int64 + h := &HostedRunner{MaximumRunners: &zeroValue} + h.GetMaximumRunners() + h = &HostedRunner{} + h.GetMaximumRunners() + h = nil + h.GetMaximumRunners() +} + +func TestHostedRunner_GetName(tt *testing.T) { + tt.Parallel() + var zeroValue string + h := &HostedRunner{Name: &zeroValue} + h.GetName() + h = &HostedRunner{} + h.GetName() + h = nil + h.GetName() +} + +func TestHostedRunner_GetPlatform(tt *testing.T) { + tt.Parallel() + var zeroValue string + h := &HostedRunner{Platform: &zeroValue} + h.GetPlatform() + h = &HostedRunner{} + h.GetPlatform() + h = nil + h.GetPlatform() +} + +func TestHostedRunner_GetPublicIPEnabled(tt *testing.T) { + tt.Parallel() + var zeroValue bool + h := &HostedRunner{PublicIPEnabled: &zeroValue} + h.GetPublicIPEnabled() + h = &HostedRunner{} + h.GetPublicIPEnabled() + h = nil + h.GetPublicIPEnabled() +} + +func TestHostedRunner_GetRunnerGroupID(tt *testing.T) { + tt.Parallel() + var zeroValue int64 + h := &HostedRunner{RunnerGroupID: &zeroValue} + h.GetRunnerGroupID() + h = &HostedRunner{} + h.GetRunnerGroupID() + h = nil + h.GetRunnerGroupID() +} + +func TestHostedRunner_GetStatus(tt *testing.T) { + tt.Parallel() + var zeroValue string + h := &HostedRunner{Status: &zeroValue} + h.GetStatus() + h = &HostedRunner{} + h.GetStatus() + h = nil + h.GetStatus() +} + +func TestHostedRunnerImageDetail_GetID(tt *testing.T) { + tt.Parallel() + var zeroValue string + h := &HostedRunnerImageDetail{ID: &zeroValue} + h.GetID() + h = &HostedRunnerImageDetail{} + h.GetID() + h = nil + h.GetID() +} + +func TestHostedRunnerImageDetail_GetSize(tt *testing.T) { + tt.Parallel() + var zeroValue int + h := &HostedRunnerImageDetail{Size: &zeroValue} + h.GetSize() + h = &HostedRunnerImageDetail{} + h.GetSize() + h = nil + h.GetSize() +} + +func TestHostedRunnerPublicIPLimits_GetPublicIPs(tt *testing.T) { + tt.Parallel() + h := &HostedRunnerPublicIPLimits{} + h.GetPublicIPs() + h = nil + h.GetPublicIPs() +} + func TestIDPGroup_GetGroupDescription(tt *testing.T) { tt.Parallel() var zeroValue string diff --git a/github/repos.go b/github/repos.go index 9faed401f87..c4ef5d59877 100644 --- a/github/repos.go +++ b/github/repos.go @@ -833,7 +833,7 @@ func (s *RepositoriesService) DisableVulnerabilityAlerts(ctx context.Context, ow // GetAutomatedSecurityFixes checks if the automated security fixes for a repository are enabled. // -// GitHub API docs: https://docs.github.com/rest/repos/repos#check-if-automated-security-fixes-are-enabled-for-a-repository +// GitHub API docs: https://docs.github.com/rest/repos/repos#check-if-dependabot-security-updates-are-enabled-for-a-repository // //meta:operation GET /repos/{owner}/{repo}/automated-security-fixes func (s *RepositoriesService) GetAutomatedSecurityFixes(ctx context.Context, owner, repository string) (*AutomatedSecurityFixes, *Response, error) { @@ -854,7 +854,7 @@ func (s *RepositoriesService) GetAutomatedSecurityFixes(ctx context.Context, own // EnableAutomatedSecurityFixes enables the automated security fixes for a repository. // -// GitHub API docs: https://docs.github.com/rest/repos/repos#enable-automated-security-fixes +// GitHub API docs: https://docs.github.com/rest/repos/repos#enable-dependabot-security-updates // //meta:operation PUT /repos/{owner}/{repo}/automated-security-fixes func (s *RepositoriesService) EnableAutomatedSecurityFixes(ctx context.Context, owner, repository string) (*Response, error) { @@ -870,7 +870,7 @@ func (s *RepositoriesService) EnableAutomatedSecurityFixes(ctx context.Context, // DisableAutomatedSecurityFixes disables vulnerability alerts and the dependency graph for a repository. // -// GitHub API docs: https://docs.github.com/rest/repos/repos#disable-automated-security-fixes +// GitHub API docs: https://docs.github.com/rest/repos/repos#disable-dependabot-security-updates // //meta:operation DELETE /repos/{owner}/{repo}/automated-security-fixes func (s *RepositoriesService) DisableAutomatedSecurityFixes(ctx context.Context, owner, repository string) (*Response, error) { diff --git a/openapi_operations.yaml b/openapi_operations.yaml index d144ca7e38c..45207678377 100644 --- a/openapi_operations.yaml +++ b/openapi_operations.yaml @@ -47,7 +47,7 @@ operation_overrides: documentation_url: https://docs.github.com/rest/pages/pages#request-a-github-pages-build - name: GET /repos/{owner}/{repo}/pages/builds/{build_id} documentation_url: https://docs.github.com/rest/pages/pages#get-github-pages-build -openapi_commit: 8031023b31a852778532c5fa688b8bb6bcbab9d6 +openapi_commit: 2320d61e4c805300787f8551fda53076bb4fae8b openapi_operations: - name: GET / documentation_url: https://docs.github.com/rest/meta/meta#github-api-root @@ -504,6 +504,46 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-server@3.15/rest/actions/cache#set-github-actions-cache-usage-policy-for-an-enterprise openapi_files: - descriptions/ghes-3.15/ghes-3.15.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#list-github-hosted-runners-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: POST /enterprises/{enterprise}/actions/hosted-runners + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/images/github-owned + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-github-owned-images-for-github-hosted-runners-in-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/images/partner + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-partner-images-for-github-hosted-runners-in-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/limits + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-limits-on-github-hosted-runners-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/machine-sizes + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-github-hosted-runners-machine-specs-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/platforms + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-platforms-for-github-hosted-runners-in-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: DELETE /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#delete-a-github-hosted-runner-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-a-github-hosted-runner-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: PATCH /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json - name: PUT /enterprises/{enterprise}/actions/oidc/customization/issuer documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/oidc#set-the-github-actions-oidc-custom-issuer-policy-for-an-enterprise openapi_files: @@ -724,6 +764,10 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/audit-log#update-an-existing-audit-log-stream-configuration openapi_files: - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/bypass-requests/push-rules + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/bypass-requests#list-push-rule-bypass-requests-within-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json - name: GET /enterprises/{enterprise}/code-scanning/alerts documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/code-scanning/code-scanning#list-code-scanning-alerts-for-an-enterprise openapi_files: @@ -810,6 +854,30 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/license#get-a-license-sync-status openapi_files: - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/network-configurations + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#list-hosted-compute-network-configurations-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: POST /enterprises/{enterprise}/network-configurations + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#create-a-hosted-compute-network-configuration-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: DELETE /enterprises/{enterprise}/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#delete-a-hosted-compute-network-configuration-from-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#get-a-hosted-compute-network-configuration-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: PATCH /enterprises/{enterprise}/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#update-a-hosted-compute-network-configuration-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/network-settings/{network_settings_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#get-a-hosted-compute-network-settings-resource-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json - name: GET /enterprises/{enterprise}/properties/schema documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/custom-properties#get-custom-properties-for-an-enterprise openapi_files: @@ -846,6 +914,14 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/rules#update-an-enterprise-repository-ruleset openapi_files: - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/rulesets/{ruleset_id}/history + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/rules#get-enterprise-ruleset-history + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/rulesets/{ruleset_id}/history/{version_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/rules#get-enterprise-ruleset-version + openapi_files: + - descriptions/ghec/ghec.json - name: GET /enterprises/{enterprise}/secret-scanning/alerts documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-an-enterprise openapi_files: @@ -1296,6 +1372,56 @@ openapi_operations: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - descriptions/ghes-3.15/ghes-3.15.json + - name: GET /orgs/{org}/actions/hosted-runners + documentation_url: https://docs.github.com/rest/actions/hosted-runners#list-github-hosted-runners-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: POST /orgs/{org}/actions/hosted-runners + documentation_url: https://docs.github.com/rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/images/github-owned + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-github-owned-images-for-github-hosted-runners-in-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/images/partner + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-partner-images-for-github-hosted-runners-in-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/limits + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-limits-on-github-hosted-runners-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/machine-sizes + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-github-hosted-runners-machine-specs-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/platforms + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-platforms-for-github-hosted-runners-in-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: DELETE /orgs/{org}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/rest/actions/hosted-runners#delete-a-github-hosted-runner-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-a-github-hosted-runner-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: PATCH /orgs/{org}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/actions/oidc/customization/sub documentation_url: https://docs.github.com/rest/actions/oidc#get-the-customization-template-for-an-oidc-subject-claim-for-an-organization openapi_files: @@ -1398,6 +1524,11 @@ openapi_operations: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - descriptions/ghes-3.15/ghes-3.15.json + - name: GET /orgs/{org}/actions/runner-groups/{runner_group_id}/hosted-runners + documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#list-github-hosted-runners-in-a-group-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#list-repository-access-to-a-self-hosted-runner-group-in-an-organization openapi_files: @@ -2625,6 +2756,16 @@ openapi_operations: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - descriptions/ghes-3.15/ghes-3.15.json + - name: GET /orgs/{org}/rulesets/{ruleset_id}/history + documentation_url: https://docs.github.com/rest/orgs/rules#get-organization-ruleset-history + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/rulesets/{ruleset_id}/history/{version_id} + documentation_url: https://docs.github.com/rest/orgs/rules#get-organization-ruleset-version + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/secret-scanning/alerts documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-an-organization openapi_files: @@ -2674,6 +2815,36 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/settings/network-configurations + documentation_url: https://docs.github.com/rest/orgs/network-configurations#list-hosted-compute-network-configurations-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: POST /orgs/{org}/settings/network-configurations + documentation_url: https://docs.github.com/rest/orgs/network-configurations#create-a-hosted-compute-network-configuration-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: DELETE /orgs/{org}/settings/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/rest/orgs/network-configurations#delete-a-hosted-compute-network-configuration-from-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/settings/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/rest/orgs/network-configurations#get-a-hosted-compute-network-configuration-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: PATCH /orgs/{org}/settings/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/rest/orgs/network-configurations#update-a-hosted-compute-network-configuration-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/settings/network-settings/{network_settings_id} + documentation_url: https://docs.github.com/rest/orgs/network-configurations#get-a-hosted-compute-network-settings-resource-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/team-sync/groups documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/teams/team-sync#list-idp-groups-for-an-organization openapi_files: @@ -3558,18 +3729,18 @@ openapi_operations: - descriptions/ghec/ghec.json - descriptions/ghes-3.15/ghes-3.15.json - name: DELETE /repos/{owner}/{repo}/automated-security-fixes - documentation_url: https://docs.github.com/rest/repos/repos#disable-automated-security-fixes + documentation_url: https://docs.github.com/rest/repos/repos#disable-dependabot-security-updates openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - name: GET /repos/{owner}/{repo}/automated-security-fixes - documentation_url: https://docs.github.com/rest/repos/repos#check-if-automated-security-fixes-are-enabled-for-a-repository + documentation_url: https://docs.github.com/rest/repos/repos#check-if-dependabot-security-updates-are-enabled-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - descriptions/ghes-3.15/ghes-3.15.json - name: PUT /repos/{owner}/{repo}/automated-security-fixes - documentation_url: https://docs.github.com/rest/repos/repos#enable-automated-security-fixes + documentation_url: https://docs.github.com/rest/repos/repos#enable-dependabot-security-updates openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json @@ -5522,6 +5693,16 @@ openapi_operations: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - descriptions/ghes-3.15/ghes-3.15.json + - name: GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history + documentation_url: https://docs.github.com/rest/repos/rules#get-repository-ruleset-history + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id} + documentation_url: https://docs.github.com/rest/repos/rules#get-repository-ruleset-version + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /repos/{owner}/{repo}/secret-scanning/alerts documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-a-repository openapi_files: From b2f14c87bd62ad6f4c8879fd75eafe1b5a75cc90 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Thu, 20 Feb 2025 23:45:59 +0300 Subject: [PATCH 02/17] feat(actions): add support for GitHub-hosted runner API endpoints Implement new methods for managing GitHub-hosted runners, including functionalities for creating, updating, deleting, and retrieving details about hosted runners. References: - GitHub REST API: https://docs.github.com/en/rest/actions/hosted-runners Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go index fd1bb05d380..b84618f74c9 100644 --- a/github/actions_hosted_runners.go +++ b/github/actions_hosted_runners.go @@ -46,13 +46,13 @@ type HostedRunnerImageDetail struct { Size *int `json:"size,omitempty"` } -// HostedRunners represents a collection of github-hosted runners for a organization. +// HostedRunners represents a collection of github-hosted runners for an organization. type HostedRunners struct { TotalCount int `json:"total_count"` Runners []*HostedRunner `json:"runners"` } -// ListHostedRunners lists all the github-hosted runners for a organization. +// ListHostedRunners lists all the github-hosted runners for an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#list-github-hosted-runners-for-an-organization // From 5da58b1521f06d591ce396b12f8432aa1fdbc9b5 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Fri, 21 Feb 2025 14:21:30 +0300 Subject: [PATCH 03/17] feat(actions): add support for GitHub-hosted runner API endpoints Implement new methods for managing GitHub-hosted runners, including functionalities for creating, updating, deleting, and retrieving details about hosted runners. References: - GitHub REST API: https://docs.github.com/en/rest/actions/hosted-runners Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 67 +- github/actions_hosted_runners_test.go | 67 +- github/enterprise_actions_hosted_runners.go | 226 +++++ .../enterprise_actions_hosted_runners_test.go | 796 ++++++++++++++++++ .../enterprise_actions_runner_groups_test.go | 28 +- github/enterprise_actions_runners_test.go | 6 +- github/github-accessors.go | 36 +- github/github-accessors_test.go | 47 +- 8 files changed, 1181 insertions(+), 92 deletions(-) create mode 100644 github/enterprise_actions_hosted_runners.go create mode 100644 github/enterprise_actions_hosted_runners_test.go diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go index b84618f74c9..4575beba657 100644 --- a/github/actions_hosted_runners.go +++ b/github/actions_hosted_runners.go @@ -1,4 +1,4 @@ -// Copyright 2020 The go-github AUTHORS. All rights reserved. +// Copyright 2025 The go-github AUTHORS. All rights reserved. // // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. @@ -10,14 +10,14 @@ import ( "fmt" ) -// HostedRunnerPublicIP represents the details of a public IP for github-hosted runner. +// HostedRunnerPublicIP represents the details of a public IP for GitHub-hosted runner. type HostedRunnerPublicIP struct { - Enabled bool `json:"enabled"` - Prefix string `json:"prefix"` - Length int `json:"length"` + Enabled bool `json:"enabled"` // Whether public IP is enabled. + Prefix string `json:"prefix"` // The prefix for the public IP. Example: 20.80.208.150 + Length int `json:"length"` // The length of the IP prefix. Example: 28 } -// HostedRunnerMachineSpec represents the details of a particular machine specification for github-hosted runner. +// HostedRunnerMachineSpec represents the details of a particular machine specification for GitHub-hosted runner. type HostedRunnerMachineSpec struct { ID string `json:"id"` CPUCores int `json:"cpu_cores"` @@ -25,7 +25,7 @@ type HostedRunnerMachineSpec struct { StorageGB int `json:"storage_gb"` } -// HostedRunner represents a single github-hosted runner with additional details. +// HostedRunner represents a single GitHub-hosted runner with additional details. type HostedRunner struct { ID *int64 `json:"id,omitempty"` Name *string `json:"name,omitempty"` @@ -37,22 +37,25 @@ type HostedRunner struct { MaximumRunners *int64 `json:"maximum_runners,omitempty"` PublicIPEnabled *bool `json:"public_ip_enabled,omitempty"` PublicIPs []*HostedRunnerPublicIP `json:"public_ips,omitempty"` - LastActiveOn *string `json:"last_active_on,omitempty"` + LastActiveOn *Timestamp `json:"last_active_on,omitempty"` } -// HostedRunnerImageDetail represents the image details of a github-hosted runners. +// HostedRunnerImageDetail represents the image details of a GitHub-hosted runners. type HostedRunnerImageDetail struct { - ID *string `json:"id,omitempty"` - Size *int `json:"size,omitempty"` + ID *string `json:"id"` // The ID of the image. Use this ID for the `image` parameter when creating a new larger runner. Example: ubuntu-20.04 + SizeGB *int64 `json:"size_gb"` // Image size in GB. Example: 86 + DisplayName *string `json:"display_name"` // Display name for this image. Example: 20.04 + Source *string `json:"source"` // The image provider. Example: github, partner, custom + Version *string `json:"version"` // The image version of the hosted runner pool. Example: latest } -// HostedRunners represents a collection of github-hosted runners for an organization. +// HostedRunners represents a collection of GitHub-hosted runners for an organization. type HostedRunners struct { TotalCount int `json:"total_count"` Runners []*HostedRunner `json:"runners"` } -// ListHostedRunners lists all the github-hosted runners for an organization. +// ListHostedRunners lists all the GitHub-hosted runners for an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#list-github-hosted-runners-for-an-organization // @@ -78,8 +81,8 @@ func (s *ActionsService) ListHostedRunners(ctx context.Context, org string, opts return runners, resp, nil } -// HostedRunnerImage represents the image of github-hosted runners -// To list all available images, use GET /actions/hosted-runners/images/github-owned or GET /actions/hosted-runners/images/partner +// HostedRunnerImage represents the image of GitHub-hosted runners. +// To list all available images, use GET /actions/hosted-runners/images/github-owned or GET /actions/hosted-runners/images/partner. type HostedRunnerImage struct { ID string `json:"id"` Source string `json:"source"` @@ -96,7 +99,7 @@ type CreateHostedRunnerRequest struct { EnableStaticIP bool `json:"enable_static_ip,omitempty"` } -// CreateHostedRunner creates a github-hosted runner for an organization. +// CreateHostedRunner creates a GitHub-hosted runner for an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-organization // @@ -117,7 +120,7 @@ func (s *ActionsService) CreateHostedRunner(ctx context.Context, org string, req return hostedRunner, resp, nil } -// HostedRunnerImageSpecs represents the details of a github-hosted runner image. +// HostedRunnerImageSpecs represents the details of a GitHub-hosted runner image. type HostedRunnerImageSpecs struct { ID string `json:"id"` Platform string `json:"platform"` @@ -132,12 +135,12 @@ type HostedRunnerImages struct { Images []*HostedRunnerImageSpecs `json:"images"` } -// GetHostedRunnerGithubOwnedImages gets the list of GitHub-owned images available for github-hosted runners for an organization. +// GetHostedRunnerGitHubOwnedImages gets the list of GitHub-owned images available for GitHub-hosted runners for an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-github-owned-images-for-github-hosted-runners-in-an-organization // //meta:operation GET /orgs/{org}/actions/hosted-runners/images/github-owned -func (s *ActionsService) GetHostedRunnerGithubOwnedImages(ctx context.Context, org string) (*HostedRunnerImages, *Response, error) { +func (s *ActionsService) GetHostedRunnerGitHubOwnedImages(ctx context.Context, org string) (*HostedRunnerImages, *Response, error) { u := fmt.Sprintf("orgs/%v/actions/hosted-runners/images/github-owned", org) req, err := s.client.NewRequest("GET", u, nil) if err != nil { @@ -153,7 +156,7 @@ func (s *ActionsService) GetHostedRunnerGithubOwnedImages(ctx context.Context, o return hostedRunnerImages, resp, nil } -// GetHostedRunnerPartnerImages gets the list of partner images available for github-hosted runners for an organization. +// GetHostedRunnerPartnerImages gets the list of partner images available for GitHub-hosted runners for an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-partner-images-for-github-hosted-runners-in-an-organization // @@ -174,18 +177,18 @@ func (s *ActionsService) GetHostedRunnerPartnerImages(ctx context.Context, org s return hostedRunnerImages, resp, nil } -// HostedRunnerPublicIPLimits represents the static public IP limits for github-hosted runners. +// HostedRunnerPublicIPLimits represents the static public IP limits for GitHub-hosted runners. type HostedRunnerPublicIPLimits struct { PublicIPs *PublicIPUsage `json:"public_ips"` } -// PublicIPUsage provides details of static public IP limits for github-hosted runners. +// PublicIPUsage provides details of static public IP limits for GitHub-hosted runners. type PublicIPUsage struct { - Maximum int `json:"maximum"` - CurrentUsage int `json:"current_usage"` + Maximum int64 `json:"maximum"` // The maximum number of static public IP addresses that can be used for Hosted Runners. Example: 50 + CurrentUsage int64 `json:"current_usage"` // The current number of static public IP addresses in use by Hosted Runners. Example: 17 } -// GetHostedRunnerLimits gets the github-hosted runners Static public IP Limits for an organization. +// GetHostedRunnerLimits gets the GitHub-hosted runners Static public IP Limits for an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-limits-on-github-hosted-runners-for-an-organization // @@ -206,13 +209,13 @@ func (s *ActionsService) GetHostedRunnerLimits(ctx context.Context, org string) return publicIPLimits, resp, nil } -// HostedRunnerMachineSpecs represents the response containing the total count and details of machine specs for github-hosted runners. +// HostedRunnerMachineSpecs represents the response containing the total count and details of machine specs for GitHub-hosted runners. type HostedRunnerMachineSpecs struct { TotalCount int `json:"total_count"` MachineSpecs []*HostedRunnerMachineSpec `json:"machine_specs"` } -// GetHostedRunnerMachineSpecs gets the list of machine specs available for github-hosted runners for an organization. +// GetHostedRunnerMachineSpecs gets the list of machine specs available for GitHub-hosted runners for an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-github-hosted-runners-machine-specs-for-an-organization // @@ -233,13 +236,13 @@ func (s *ActionsService) GetHostedRunnerMachineSpecs(ctx context.Context, org st return machineSpecs, resp, nil } -// HostedRunnerPlatforms represents the response containing the total count and platforms for github-hosted runners. +// HostedRunnerPlatforms represents the response containing the total count and platforms for GitHub-hosted runners. type HostedRunnerPlatforms struct { TotalCount int `json:"total_count"` Platforms []string `json:"platforms"` } -// GetHostedRunnerPlatforms gets list of platforms available for github-hosted runners for an organization. +// GetHostedRunnerPlatforms gets list of platforms available for GitHub-hosted runners for an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-platforms-for-github-hosted-runners-in-an-organization // @@ -260,7 +263,7 @@ func (s *ActionsService) GetHostedRunnerPlatforms(ctx context.Context, org strin return platforms, resp, nil } -// GetHostedRunner gets a github-hosted runner in an organization. +// GetHostedRunner gets a GitHub-hosted runner in an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#get-a-github-hosted-runner-for-an-organization // @@ -290,7 +293,7 @@ type UpdateHostedRunnerRequest struct { ImageVersion string `json:"image_version"` } -// UpdateHostedRunner updates a github-hosted runner for an organization. +// UpdateHostedRunner updates a GitHub-hosted runner for an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-organization // @@ -311,7 +314,7 @@ func (s *ActionsService) UpdateHostedRunner(ctx context.Context, org string, run return hostedRunner, resp, nil } -// DeleteHostedRunner deletes github-hosted runner from an organization. +// DeleteHostedRunner deletes GitHub-hosted runner from an organization. // // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#delete-a-github-hosted-runner-for-an-organization // diff --git a/github/actions_hosted_runners_test.go b/github/actions_hosted_runners_test.go index 4c79dab02bc..ee31633ec0a 100644 --- a/github/actions_hosted_runners_test.go +++ b/github/actions_hosted_runners_test.go @@ -1,4 +1,4 @@ -// Copyright 2020 The go-github AUTHORS. All rights reserved. +// Copyright 2025 The go-github AUTHORS. All rights reserved. // // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. @@ -10,6 +10,7 @@ import ( "fmt" "net/http" "testing" + "time" "github.com/google/go-cmp/cmp" ) @@ -48,7 +49,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { "length": 31 } ], - "last_active_on": "2022-10-09T23:39:01Z" + "last_active_on": "2023-04-26T15:23:37Z" }, { "id": 7, @@ -81,6 +82,8 @@ func TestActionsService_ListHostedRunners(t *testing.T) { t.Errorf("Actions.ListHostedRunners returned error: %v", err) } + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} + want := &HostedRunners{ TotalCount: 2, Runners: []*HostedRunner{ @@ -90,8 +93,8 @@ func TestActionsService_ListHostedRunners(t *testing.T) { RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), Image: &HostedRunnerImageDetail{ - ID: Ptr("ubuntu-20.04"), - Size: Ptr(86), + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), }, MachineSizeDetails: &HostedRunnerMachineSpec{ ID: "4-core", @@ -109,7 +112,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { Length: 31, }, }, - LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + LastActiveOn: Ptr(lastActiveOn), }, { ID: Ptr(int64(7)), @@ -117,8 +120,8 @@ func TestActionsService_ListHostedRunners(t *testing.T) { RunnerGroupID: Ptr(int64(2)), Platform: Ptr("win-x64"), Image: &HostedRunnerImageDetail{ - ID: Ptr("windows-latest"), - Size: Ptr(256), + ID: Ptr("windows-latest"), + SizeGB: Ptr(int64(86)), }, MachineSizeDetails: &HostedRunnerMachineSpec{ ID: "8-core", @@ -130,7 +133,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { MaximumRunners: Ptr(int64(20)), PublicIPEnabled: Ptr(false), PublicIPs: []*HostedRunnerPublicIP{}, - LastActiveOn: Ptr("2023-04-26T15:23:37Z"), + LastActiveOn: Ptr(lastActiveOn), }, }, } @@ -184,7 +187,7 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { "length": 31 } ], - "last_active_on": "2022-10-09T23:39:01Z" + "last_active_on": "2023-04-26T15:23:37Z" }`) }) @@ -206,14 +209,15 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { t.Errorf("Actions.CreateHostedRunner returned error: %v", err) } + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} want := &HostedRunner{ ID: Ptr(int64(5)), Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), Image: &HostedRunnerImageDetail{ - ID: Ptr("ubuntu-20.04"), - Size: Ptr(86), + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), }, MachineSizeDetails: &HostedRunnerMachineSpec{ ID: "4-core", @@ -231,7 +235,7 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { Length: 31, }, }, - LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + LastActiveOn: Ptr(lastActiveOn), } if !cmp.Equal(hostedRunner, want) { @@ -274,9 +278,9 @@ func TestActionsService_GetHostedRunnerGithubOwnedImages(t *testing.T) { }) ctx := context.Background() - hostedRunnerImages, _, err := client.Actions.GetHostedRunnerGithubOwnedImages(ctx, "o") + hostedRunnerImages, _, err := client.Actions.GetHostedRunnerGitHubOwnedImages(ctx, "o") if err != nil { - t.Errorf("Actions.GetHostedRunnerGithubOwnedImages returned error: %v", err) + t.Errorf("Actions.GetHostedRunnerGitHubOwnedImages returned error: %v", err) } want := &HostedRunnerImages{ @@ -293,17 +297,17 @@ func TestActionsService_GetHostedRunnerGithubOwnedImages(t *testing.T) { } if !cmp.Equal(hostedRunnerImages, want) { - t.Errorf("Actions.GetHostedRunnerGithubOwnedImages returned %+v, want %+v", hostedRunnerImages, want) + t.Errorf("Actions.GetHostedRunnerGitHubOwnedImages returned %+v, want %+v", hostedRunnerImages, want) } - const methodName = "GetHostedRunnerGithubOwnedImages" + const methodName = "GetHostedRunnerGitHubOwnedImages" testBadOptions(t, methodName, func() (err error) { - _, _, err = client.Actions.GetHostedRunnerGithubOwnedImages(ctx, "\n") + _, _, err = client.Actions.GetHostedRunnerGitHubOwnedImages(ctx, "\n") return err }) testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { - got, resp, err := client.Actions.GetHostedRunnerGithubOwnedImages(ctx, "o") + got, resp, err := client.Actions.GetHostedRunnerGitHubOwnedImages(ctx, "o") if got != nil { t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) } @@ -548,7 +552,7 @@ func TestActionsService_GetHostedRunner(t *testing.T) { "length": 31 } ], - "last_active_on": "2022-10-09T23:39:01Z" + "last_active_on": "2023-04-26T15:23:37Z" }`) }) @@ -558,14 +562,15 @@ func TestActionsService_GetHostedRunner(t *testing.T) { t.Errorf("Actions.GetHostedRunner returned error: %v", err) } + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} want := &HostedRunner{ ID: Ptr(int64(5)), Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), Image: &HostedRunnerImageDetail{ - ID: Ptr("ubuntu-20.04"), - Size: Ptr(86), + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), }, MachineSizeDetails: &HostedRunnerMachineSpec{ ID: "4-core", @@ -583,7 +588,7 @@ func TestActionsService_GetHostedRunner(t *testing.T) { Length: 31, }, }, - LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + LastActiveOn: Ptr(lastActiveOn), } if !cmp.Equal(hostedRunner, want) { @@ -636,7 +641,7 @@ func TestActionsService_UpdateHostedRunner(t *testing.T) { "length": 31 } ], - "last_active_on": "2022-10-09T23:39:01Z" + "last_active_on": "2023-04-26T15:23:37Z" }`) }) @@ -653,14 +658,15 @@ func TestActionsService_UpdateHostedRunner(t *testing.T) { t.Errorf("Actions.UpdateHostedRunner returned error: %v", err) } + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} want := &HostedRunner{ ID: Ptr(int64(5)), Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), Image: &HostedRunnerImageDetail{ - ID: Ptr("ubuntu-20.04"), - Size: Ptr(86), + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), }, MachineSizeDetails: &HostedRunnerMachineSpec{ ID: "4-core", @@ -678,7 +684,7 @@ func TestActionsService_UpdateHostedRunner(t *testing.T) { Length: 31, }, }, - LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + LastActiveOn: Ptr(lastActiveOn), } if !cmp.Equal(hostedRunner, want) { @@ -731,7 +737,7 @@ func TestActionsService_DeleteHostedRunner(t *testing.T) { "length": 31 } ], - "last_active_on": "2022-10-09T23:39:01Z" + "last_active_on": "2023-04-26T15:23:37Z" }`) }) @@ -741,14 +747,15 @@ func TestActionsService_DeleteHostedRunner(t *testing.T) { t.Errorf("Actions.GetHostedRunner returned error: %v", err) } + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} want := &HostedRunner{ ID: Ptr(int64(5)), Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), Image: &HostedRunnerImageDetail{ - ID: Ptr("ubuntu-20.04"), - Size: Ptr(86), + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), }, MachineSizeDetails: &HostedRunnerMachineSpec{ ID: "4-core", @@ -766,7 +773,7 @@ func TestActionsService_DeleteHostedRunner(t *testing.T) { Length: 31, }, }, - LastActiveOn: Ptr("2022-10-09T23:39:01Z"), + LastActiveOn: Ptr(lastActiveOn), } if !cmp.Equal(hostedRunner, want) { diff --git a/github/enterprise_actions_hosted_runners.go b/github/enterprise_actions_hosted_runners.go new file mode 100644 index 00000000000..13ed650acc4 --- /dev/null +++ b/github/enterprise_actions_hosted_runners.go @@ -0,0 +1,226 @@ +// Copyright 2025 The go-github AUTHORS. All rights reserved. +// +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package github + +import ( + "context" + "fmt" +) + +// ListHostedRunners lists all the GitHub-hosted runners for an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#list-github-hosted-runners-for-an-enterprise +// +//meta:operation GET /enterprises/{enterprise}/actions/hosted-runners +func (s *EnterpriseService) ListHostedRunners(ctx context.Context, enterprise string, opts *ListOptions) (*HostedRunners, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners", enterprise) + u, err := addOptions(u, opts) + if err != nil { + return nil, nil, err + } + + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + runners := &HostedRunners{} + resp, err := s.client.Do(ctx, req, &runners) + if err != nil { + return nil, resp, err + } + + return runners, resp, nil +} + +// CreateHostedRunner creates a GitHub-hosted runner for an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-enterprise +// +//meta:operation POST /enterprises/{enterprise}/actions/hosted-runners +func (s *EnterpriseService) CreateHostedRunner(ctx context.Context, enterprise string, request *CreateHostedRunnerRequest) (*HostedRunner, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners", enterprise) + req, err := s.client.NewRequest("POST", u, request) + if err != nil { + return nil, nil, err + } + + hostedRunner := new(HostedRunner) + resp, err := s.client.Do(ctx, req, hostedRunner) + if err != nil { + return nil, resp, err + } + + return hostedRunner, resp, nil +} + +// GetHostedRunnerGitHubOwnedImages gets the list of GitHub-owned images available for GitHub-hosted runners for an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#get-github-owned-images-for-github-hosted-runners-in-an-enterprise +// +//meta:operation GET /enterprises/{enterprise}/actions/hosted-runners/images/github-owned +func (s *EnterpriseService) GetHostedRunnerGitHubOwnedImages(ctx context.Context, enterprise string) (*HostedRunnerImages, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/images/github-owned", enterprise) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + hostedRunnerImages := new(HostedRunnerImages) + resp, err := s.client.Do(ctx, req, hostedRunnerImages) + if err != nil { + return nil, resp, err + } + + return hostedRunnerImages, resp, nil +} + +// GetHostedRunnerPartnerImages gets the list of partner images available for GitHub-hosted runners for an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#get-partner-images-for-github-hosted-runners-in-an-enterprise +// +//meta:operation GET /enterprises/{enterprise}/actions/hosted-runners/images/partner +func (s *EnterpriseService) GetHostedRunnerPartnerImages(ctx context.Context, enterprise string) (*HostedRunnerImages, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/images/partner", enterprise) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + hostedRunnerImages := new(HostedRunnerImages) + resp, err := s.client.Do(ctx, req, hostedRunnerImages) + if err != nil { + return nil, resp, err + } + + return hostedRunnerImages, resp, nil +} + +// GetHostedRunnerLimits gets the GitHub-hosted runners Static public IP Limits for an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#get-limits-on-github-hosted-runners-for-an-enterprise +// +//meta:operation GET /enterprises/{enterprise}/actions/hosted-runners/limits +func (s *EnterpriseService) GetHostedRunnerLimits(ctx context.Context, enterprise string) (*HostedRunnerPublicIPLimits, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/limits", enterprise) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + publicIPLimits := new(HostedRunnerPublicIPLimits) + resp, err := s.client.Do(ctx, req, publicIPLimits) + if err != nil { + return nil, resp, err + } + + return publicIPLimits, resp, nil +} + +// GetHostedRunnerMachineSpecs gets the list of machine specs available for GitHub-hosted runners for an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#get-github-hosted-runners-machine-specs-for-an-enterprise +// +//meta:operation GET /enterprises/{enterprise}/actions/hosted-runners/machine-sizes +func (s *EnterpriseService) GetHostedRunnerMachineSpecs(ctx context.Context, enterprise string) (*HostedRunnerMachineSpecs, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/machine-sizes", enterprise) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + machineSpecs := new(HostedRunnerMachineSpecs) + resp, err := s.client.Do(ctx, req, machineSpecs) + if err != nil { + return nil, resp, err + } + + return machineSpecs, resp, nil +} + +// GetHostedRunnerPlatforms gets list of platforms available for GitHub-hosted runners for an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#get-platforms-for-github-hosted-runners-in-an-enterprise +// +//meta:operation GET /enterprises/{enterprise}/actions/hosted-runners/platforms +func (s *EnterpriseService) GetHostedRunnerPlatforms(ctx context.Context, enterprise string) (*HostedRunnerPlatforms, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/platforms", enterprise) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + platforms := new(HostedRunnerPlatforms) + resp, err := s.client.Do(ctx, req, platforms) + if err != nil { + return nil, resp, err + } + + return platforms, resp, nil +} + +// GetHostedRunner gets a GitHub-hosted runner in an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#get-a-github-hosted-runner-for-an-enterprise +// +//meta:operation GET /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} +func (s *EnterpriseService) GetHostedRunner(ctx context.Context, enterprise string, runnerID int64) (*HostedRunner, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/%v", enterprise, runnerID) + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + hostedRunner := new(HostedRunner) + resp, err := s.client.Do(ctx, req, hostedRunner) + if err != nil { + return nil, resp, err + } + + return hostedRunner, resp, nil +} + +// UpdateHostedRunner updates a GitHub-hosted runner for an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-enterprise +// +//meta:operation PATCH /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} +func (s *EnterpriseService) UpdateHostedRunner(ctx context.Context, enterprise string, runnerID int64, updateReq UpdateHostedRunnerRequest) (*HostedRunner, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/%v", enterprise, runnerID) + req, err := s.client.NewRequest("PATCH", u, updateReq) + if err != nil { + return nil, nil, err + } + + hostedRunner := new(HostedRunner) + resp, err := s.client.Do(ctx, req, hostedRunner) + if err != nil { + return nil, resp, err + } + + return hostedRunner, resp, nil +} + +// DeleteHostedRunner deletes GitHub-hosted runner from an enterprise. +// +// GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#delete-a-github-hosted-runner-for-an-enterprise +// +//meta:operation DELETE /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} +func (s *EnterpriseService) DeleteHostedRunner(ctx context.Context, enterprise string, runnerID int64) (*HostedRunner, *Response, error) { + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/%v", enterprise, runnerID) + req, err := s.client.NewRequest("DELETE", u, nil) + if err != nil { + return nil, nil, err + } + + hostedRunner := new(HostedRunner) + resp, err := s.client.Do(ctx, req, hostedRunner) + if err != nil { + return nil, resp, err + } + + return hostedRunner, resp, nil +} diff --git a/github/enterprise_actions_hosted_runners_test.go b/github/enterprise_actions_hosted_runners_test.go new file mode 100644 index 00000000000..caf0d762ec7 --- /dev/null +++ b/github/enterprise_actions_hosted_runners_test.go @@ -0,0 +1,796 @@ +// Copyright 2025 The go-github AUTHORS. All rights reserved. +// +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package github + +import ( + "context" + "fmt" + "net/http" + "testing" + "time" + + "github.com/google/go-cmp/cmp" +) + +func TestEnterpriseService_ListHostedRunners(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 2, + "runners": [ + { + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2023-04-26T15:23:37Z" + }, + { + "id": 7, + "name": "My hosted Windows runner", + "runner_group_id": 2, + "platform": "win-x64", + "image": { + "id": "windows-latest", + "size": 256 + }, + "machine_size_details": { + "id": "8-core", + "cpu_cores": 8, + "memory_gb": 32, + "storage_gb": 300 + }, + "status": "Ready", + "maximum_runners": 20, + "public_ip_enabled": false, + "public_ips": [], + "last_active_on": "2023-04-26T15:23:37Z" + } + ] + }`) + }) + opts := &ListOptions{Page: 1, PerPage: 1} + ctx := context.Background() + hostedRunners, _, err := client.Enterprise.ListHostedRunners(ctx, "o", opts) + if err != nil { + t.Errorf("Enterprise.ListHostedRunners returned error: %v", err) + } + + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} + + want := &HostedRunners{ + TotalCount: 2, + Runners: []*HostedRunner{ + { + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr(lastActiveOn), + }, + { + ID: Ptr(int64(7)), + Name: Ptr("My hosted Windows runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("win-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("windows-latest"), + SizeGB: Ptr(int64(86)), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "8-core", + CPUCores: 8, + MemoryGB: 32, + StorageGB: 300, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(20)), + PublicIPEnabled: Ptr(false), + PublicIPs: []*HostedRunnerPublicIP{}, + LastActiveOn: Ptr(lastActiveOn), + }, + }, + } + if !cmp.Equal(hostedRunners, want) { + t.Errorf("Enterprise.ListHostedRunners returned %+v, want %+v", hostedRunners, want) + } + + const methodName = "ListHostedRunners" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.ListHostedRunners(ctx, "\n", opts) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.ListHostedRunners(ctx, "o", opts) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestEnterpriseService_CreateHostedRunner(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "POST") + fmt.Fprint(w, `{ + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2023-04-26T15:23:37Z" + }`) + }) + + ctx := context.Background() + req := &CreateHostedRunnerRequest{ + Name: "My Hosted runner", + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + RunnerGroupID: 1, + Size: "4-core", + MaximumRunners: 50, + EnableStaticIP: false, + } + hostedRunner, _, err := client.Enterprise.CreateHostedRunner(ctx, "o", req) + if err != nil { + t.Errorf("Enterprise.CreateHostedRunner returned error: %v", err) + } + + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} + want := &HostedRunner{ + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr(lastActiveOn), + } + + if !cmp.Equal(hostedRunner, want) { + t.Errorf("Enterprise.CreateHostedRunner returned %+v, want %+v", hostedRunner, want) + } + + const methodName = "CreateHostedRunner" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.CreateHostedRunner(ctx, "\n", req) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.CreateHostedRunner(ctx, "o", req) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestEnterpriseService_GetHostedRunnerGithubOwnedImages(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners/images/github-owned", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 1, + "images": [ + { + "id": "ubuntu-20.04", + "platform": "linux-x64", + "size_gb": 86, + "display_name": "20.04", + "source": "github" + } + ] + }`) + }) + + ctx := context.Background() + hostedRunnerImages, _, err := client.Enterprise.GetHostedRunnerGitHubOwnedImages(ctx, "o") + if err != nil { + t.Errorf("Enterprise.GetHostedRunnerGitHubOwnedImages returned error: %v", err) + } + + want := &HostedRunnerImages{ + TotalCount: 1, + Images: []*HostedRunnerImageSpecs{ + { + ID: "ubuntu-20.04", + Platform: "linux-x64", + SizeGB: 86, + DisplayName: "20.04", + Source: "github", + }, + }, + } + + if !cmp.Equal(hostedRunnerImages, want) { + t.Errorf("Enterprise.GetHostedRunnerGitHubOwnedImages returned %+v, want %+v", hostedRunnerImages, want) + } + + const methodName = "GetHostedRunnerGitHubOwnedImages" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.GetHostedRunnerGitHubOwnedImages(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.GetHostedRunnerGitHubOwnedImages(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestEnterpriseService_GetHostedRunnerPartnerImages(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners/images/partner", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 1, + "images": [ + { + "id": "ubuntu-20.04", + "platform": "linux-x64", + "size_gb": 86, + "display_name": "20.04", + "source": "partner" + } + ] + }`) + }) + + ctx := context.Background() + hostedRunnerImages, _, err := client.Enterprise.GetHostedRunnerPartnerImages(ctx, "o") + if err != nil { + t.Errorf("Enterprise.GetHostedRunnerPartnerImages returned error: %v", err) + } + + want := &HostedRunnerImages{ + TotalCount: 1, + Images: []*HostedRunnerImageSpecs{ + { + ID: "ubuntu-20.04", + Platform: "linux-x64", + SizeGB: 86, + DisplayName: "20.04", + Source: "partner", + }, + }, + } + + if !cmp.Equal(hostedRunnerImages, want) { + t.Errorf("Enterprise.GetHostedRunnerPartnerImages returned %+v, want %+v", hostedRunnerImages, want) + } + + const methodName = "GetHostedRunnerPartnerImages" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.GetHostedRunnerPartnerImages(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.GetHostedRunnerPartnerImages(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestEnterpriseService_GetHostedRunnerLimits(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners/limits", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "public_ips": { + "current_usage": 17, + "maximum": 50 + } + }`) + }) + + ctx := context.Background() + publicIPLimits, _, err := client.Enterprise.GetHostedRunnerLimits(ctx, "o") + if err != nil { + t.Errorf("Enterprise.GetPartnerImages returned error: %v", err) + } + + want := &HostedRunnerPublicIPLimits{ + PublicIPs: &PublicIPUsage{ + CurrentUsage: 17, + Maximum: 50, + }, + } + + if !cmp.Equal(publicIPLimits, want) { + t.Errorf("Enterprise.GetHostedRunnerLimits returned %+v, want %+v", publicIPLimits, want) + } + + const methodName = "GetHostedRunnerLimits" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.GetHostedRunnerLimits(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.GetHostedRunnerLimits(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestEnterpriseService_GetHostedRunnerMachineSpecs(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners/machine-sizes", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 1, + "machine_specs": [ + { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + } + ] + }`) + }) + + ctx := context.Background() + machineSpecs, _, err := client.Enterprise.GetHostedRunnerMachineSpecs(ctx, "o") + if err != nil { + t.Errorf("Enterprise.GetHostedRunnerMachineSpecs returned error: %v", err) + } + want := &HostedRunnerMachineSpecs{ + TotalCount: 1, + MachineSpecs: []*HostedRunnerMachineSpec{ + { + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + }, + } + + if !cmp.Equal(machineSpecs, want) { + t.Errorf("Enterprise.GetHostedRunnerMachineSpecs returned %+v, want %+v", machineSpecs, want) + } + + const methodName = "GetHostedRunnerMachineSpecs" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.GetHostedRunnerMachineSpecs(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.GetHostedRunnerMachineSpecs(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestEnterpriseService_GetHostedRunnerPlatforms(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners/platforms", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "total_count": 1, + "platforms": [ + "linux-x64", + "win-x64" + ] + }`) + }) + + ctx := context.Background() + platforms, _, err := client.Enterprise.GetHostedRunnerPlatforms(ctx, "o") + if err != nil { + t.Errorf("Enterprise.GetHostedRunnerPlatforms returned error: %v", err) + } + want := &HostedRunnerPlatforms{ + TotalCount: 1, + Platforms: []string{ + "linux-x64", + "win-x64", + }, + } + + if !cmp.Equal(platforms, want) { + t.Errorf("Enterprise.GetHostedRunnerPlatforms returned %+v, want %+v", platforms, want) + } + + const methodName = "GetHostedRunnerPlatforms" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.GetHostedRunnerPlatforms(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.GetHostedRunnerPlatforms(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestEnterpriseService_GetHostedRunner(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `{ + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2023-04-26T15:23:37Z" + }`) + }) + + ctx := context.Background() + hostedRunner, _, err := client.Enterprise.GetHostedRunner(ctx, "o", 23) + if err != nil { + t.Errorf("Enterprise.GetHostedRunner returned error: %v", err) + } + + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} + want := &HostedRunner{ + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr(lastActiveOn), + } + + if !cmp.Equal(hostedRunner, want) { + t.Errorf("Enterprise.GetHostedRunner returned %+v, want %+v", hostedRunner, want) + } + + const methodName = "GetHostedRunner" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.GetHostedRunner(ctx, "\n", 23) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.GetHostedRunner(ctx, "o", 23) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestEnterpriseService_UpdateHostedRunner(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "PATCH") + fmt.Fprint(w, `{ + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2023-04-26T15:23:37Z" + }`) + }) + + ctx := context.Background() + req := UpdateHostedRunnerRequest{ + Name: "My larger runner", + RunnerGroupID: 1, + MaximumRunners: 50, + EnableStaticIP: false, + ImageVersion: "1.0.0", + } + hostedRunner, _, err := client.Enterprise.UpdateHostedRunner(ctx, "o", 23, req) + if err != nil { + t.Errorf("Enterprise.UpdateHostedRunner returned error: %v", err) + } + + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} + want := &HostedRunner{ + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr(lastActiveOn), + } + + if !cmp.Equal(hostedRunner, want) { + t.Errorf("Enterprise.UpdateHostedRunner returned %+v, want %+v", hostedRunner, want) + } + + const methodName = "UpdateHostedRunner" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.UpdateHostedRunner(ctx, "\n", 23, req) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.UpdateHostedRunner(ctx, "o", 23, req) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestEnterpriseService_DeleteHostedRunner(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/enterprises/e/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "DELETE") + fmt.Fprint(w, `{ + "id": 5, + "name": "My hosted ubuntu runner", + "runner_group_id": 2, + "platform": "linux-x64", + "image": { + "id": "ubuntu-20.04", + "size": 86 + }, + "machine_size_details": { + "id": "4-core", + "cpu_cores": 4, + "memory_gb": 16, + "storage_gb": 150 + }, + "status": "Ready", + "maximum_runners": 10, + "public_ip_enabled": true, + "public_ips": [ + { + "enabled": true, + "prefix": "20.80.208.150", + "length": 31 + } + ], + "last_active_on": "2023-04-26T15:23:37Z" + }`) + }) + + ctx := context.Background() + hostedRunner, _, err := client.Enterprise.DeleteHostedRunner(ctx, "o", 23) + if err != nil { + t.Errorf("Enterprise.GetHostedRunner returned error: %v", err) + } + + lastActiveOn := Timestamp{time.Date(2023, 4, 26, 15, 23, 37, 0, time.UTC)} + want := &HostedRunner{ + ID: Ptr(int64(5)), + Name: Ptr("My hosted ubuntu runner"), + RunnerGroupID: Ptr(int64(2)), + Platform: Ptr("linux-x64"), + Image: &HostedRunnerImageDetail{ + ID: Ptr("ubuntu-20.04"), + SizeGB: Ptr(int64(86)), + }, + MachineSizeDetails: &HostedRunnerMachineSpec{ + ID: "4-core", + CPUCores: 4, + MemoryGB: 16, + StorageGB: 150, + }, + Status: Ptr("Ready"), + MaximumRunners: Ptr(int64(10)), + PublicIPEnabled: Ptr(true), + PublicIPs: []*HostedRunnerPublicIP{ + { + Enabled: true, + Prefix: "20.80.208.150", + Length: 31, + }, + }, + LastActiveOn: Ptr(lastActiveOn), + } + + if !cmp.Equal(hostedRunner, want) { + t.Errorf("Enterprise.DeleteHostedRunner returned %+v, want %+v", hostedRunner, want) + } + + const methodName = "DeleteHostedRunner" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Enterprise.DeleteHostedRunner(ctx, "\n", 23) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Enterprise.DeleteHostedRunner(ctx, "o", 23) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} diff --git a/github/enterprise_actions_runner_groups_test.go b/github/enterprise_actions_runner_groups_test.go index e4d2bfffc2f..daf01ccd580 100644 --- a/github/enterprise_actions_runner_groups_test.go +++ b/github/enterprise_actions_runner_groups_test.go @@ -18,7 +18,7 @@ func TestEnterpriseService_ListRunnerGroups(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") testFormValues(t, r, values{"per_page": "2", "page": "2"}) fmt.Fprint(w, `{"total_count":3,"runner_groups":[{"id":1,"name":"Default","visibility":"all","default":true,"runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/1/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":true,"selected_workflows":["a","b"]},{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":true,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]},{"id":3,"name":"expensive-hardware","visibility":"private","default":false,"runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/3/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}]}`) @@ -62,7 +62,7 @@ func TestEnterpriseService_ListRunnerGroupsVisibleToOrganization(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") testFormValues(t, r, values{"per_page": "2", "page": "2", "visible_to_organization": "github"}) fmt.Fprint(w, `{"total_count":3,"runner_groups":[{"id":1,"name":"Default","visibility":"all","default":true,"runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/1/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]},{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":true,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]},{"id":3,"name":"expensive-hardware","visibility":"private","default":false,"runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/3/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}]}`) @@ -106,7 +106,7 @@ func TestEnterpriseService_GetRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}`) }) @@ -153,7 +153,7 @@ func TestEnterpriseService_DeleteRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "DELETE") }) @@ -178,7 +178,7 @@ func TestEnterpriseService_CreateRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "POST") fmt.Fprint(w, `{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}`) }) @@ -232,7 +232,7 @@ func TestEnterpriseService_UpdateRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PATCH") fmt.Fprint(w, `{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}`) }) @@ -286,7 +286,7 @@ func TestEnterpriseService_ListOrganizationAccessRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2/organizations", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2/organizations", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") testFormValues(t, r, values{"per_page": "1", "page": "1"}) fmt.Fprint(w, `{"total_count": 1, "organizations": [{"id": 43, "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", "name": "Hello-World", "login": "octocat"}]}`) @@ -328,7 +328,7 @@ func TestEnterpriseService_SetOrganizationAccessRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2/organizations", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2/organizations", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PUT") }) @@ -360,7 +360,7 @@ func TestEnterpriseService_AddOrganizationAccessRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2/organizations/42", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2/organizations/42", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PUT") }) @@ -385,7 +385,7 @@ func TestEnterpriseService_RemoveOrganizationAccessRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2/organizations/42", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2/organizations/42", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "DELETE") }) @@ -410,7 +410,7 @@ func TestEnterpriseService_ListEnterpriseRunnerGroupRunners(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2/runners", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2/runners", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") testFormValues(t, r, values{"per_page": "2", "page": "2"}) fmt.Fprint(w, `{"total_count":2,"runners":[{"id":23,"name":"MBP","os":"macos","status":"online"},{"id":24,"name":"iMac","os":"macos","status":"offline"}]}`) @@ -453,7 +453,7 @@ func TestEnterpriseService_SetEnterpriseRunnerGroupRunners(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2/runners", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2/runners", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PUT") }) @@ -485,7 +485,7 @@ func TestEnterpriseService_AddEnterpriseRunnerGroupRunners(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2/runners/42", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2/runners/42", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PUT") }) @@ -510,7 +510,7 @@ func TestEnterpriseService_RemoveEnterpriseRunnerGroupRunners(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runner-groups/2/runners/42", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runner-groups/2/runners/42", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "DELETE") }) diff --git a/github/enterprise_actions_runners_test.go b/github/enterprise_actions_runners_test.go index b3a5770b6ad..b41208f55ed 100644 --- a/github/enterprise_actions_runners_test.go +++ b/github/enterprise_actions_runners_test.go @@ -22,7 +22,7 @@ func TestEnterpriseService_GenerateEnterpriseJITConfig(t *testing.T) { input := &GenerateJITConfigRequest{Name: "test", RunnerGroupID: 1, Labels: []string{"one", "two"}} - mux.HandleFunc("/enterprises/o/actions/runners/generate-jitconfig", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runners/generate-jitconfig", func(w http.ResponseWriter, r *http.Request) { v := new(GenerateJITConfigRequest) err := json.NewDecoder(r.Body).Decode(v) if err != nil { @@ -189,7 +189,7 @@ func TestEnterpriseService_RemoveRunner(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runners/21", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runners/21", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "DELETE") }) @@ -214,7 +214,7 @@ func TestEnterpriseService_ListRunnerApplicationDownloads(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/o/actions/runners/downloads", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/e/actions/runners/downloads", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `[{"os":"osx","architecture":"x64","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-osx-x64-2.164.0.tar.gz","filename":"actions-runner-osx-x64-2.164.0.tar.gz"},{"os":"linux","architecture":"x64","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-x64-2.164.0.tar.gz","filename":"actions-runner-linux-x64-2.164.0.tar.gz"},{"os": "linux","architecture":"arm","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-arm-2.164.0.tar.gz","filename":"actions-runner-linux-arm-2.164.0.tar.gz"},{"os":"win","architecture":"x64","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-win-x64-2.164.0.zip","filename":"actions-runner-win-x64-2.164.0.zip"},{"os":"linux","architecture":"arm64","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-arm64-2.164.0.tar.gz","filename":"actions-runner-linux-arm64-2.164.0.tar.gz"}]`) }) diff --git a/github/github-accessors.go b/github/github-accessors.go index d34cff14c53..316d82144a9 100644 --- a/github/github-accessors.go +++ b/github/github-accessors.go @@ -10199,9 +10199,9 @@ func (h *HostedRunner) GetImage() *HostedRunnerImageDetail { } // GetLastActiveOn returns the LastActiveOn field if it's non-nil, zero value otherwise. -func (h *HostedRunner) GetLastActiveOn() string { +func (h *HostedRunner) GetLastActiveOn() Timestamp { if h == nil || h.LastActiveOn == nil { - return "" + return Timestamp{} } return *h.LastActiveOn } @@ -10262,6 +10262,14 @@ func (h *HostedRunner) GetStatus() string { return *h.Status } +// GetDisplayName returns the DisplayName field if it's non-nil, zero value otherwise. +func (h *HostedRunnerImageDetail) GetDisplayName() string { + if h == nil || h.DisplayName == nil { + return "" + } + return *h.DisplayName +} + // GetID returns the ID field if it's non-nil, zero value otherwise. func (h *HostedRunnerImageDetail) GetID() string { if h == nil || h.ID == nil { @@ -10270,12 +10278,28 @@ func (h *HostedRunnerImageDetail) GetID() string { return *h.ID } -// GetSize returns the Size field if it's non-nil, zero value otherwise. -func (h *HostedRunnerImageDetail) GetSize() int { - if h == nil || h.Size == nil { +// GetSizeGB returns the SizeGB field if it's non-nil, zero value otherwise. +func (h *HostedRunnerImageDetail) GetSizeGB() int64 { + if h == nil || h.SizeGB == nil { return 0 } - return *h.Size + return *h.SizeGB +} + +// GetSource returns the Source field if it's non-nil, zero value otherwise. +func (h *HostedRunnerImageDetail) GetSource() string { + if h == nil || h.Source == nil { + return "" + } + return *h.Source +} + +// GetVersion returns the Version field if it's non-nil, zero value otherwise. +func (h *HostedRunnerImageDetail) GetVersion() string { + if h == nil || h.Version == nil { + return "" + } + return *h.Version } // GetPublicIPs returns the PublicIPs field. diff --git a/github/github-accessors_test.go b/github/github-accessors_test.go index 7fa713c31b7..45596c7ab24 100644 --- a/github/github-accessors_test.go +++ b/github/github-accessors_test.go @@ -13201,7 +13201,7 @@ func TestHostedRunner_GetImage(tt *testing.T) { func TestHostedRunner_GetLastActiveOn(tt *testing.T) { tt.Parallel() - var zeroValue string + var zeroValue Timestamp h := &HostedRunner{LastActiveOn: &zeroValue} h.GetLastActiveOn() h = &HostedRunner{} @@ -13284,6 +13284,17 @@ func TestHostedRunner_GetStatus(tt *testing.T) { h.GetStatus() } +func TestHostedRunnerImageDetail_GetDisplayName(tt *testing.T) { + tt.Parallel() + var zeroValue string + h := &HostedRunnerImageDetail{DisplayName: &zeroValue} + h.GetDisplayName() + h = &HostedRunnerImageDetail{} + h.GetDisplayName() + h = nil + h.GetDisplayName() +} + func TestHostedRunnerImageDetail_GetID(tt *testing.T) { tt.Parallel() var zeroValue string @@ -13295,15 +13306,37 @@ func TestHostedRunnerImageDetail_GetID(tt *testing.T) { h.GetID() } -func TestHostedRunnerImageDetail_GetSize(tt *testing.T) { +func TestHostedRunnerImageDetail_GetSizeGB(tt *testing.T) { tt.Parallel() - var zeroValue int - h := &HostedRunnerImageDetail{Size: &zeroValue} - h.GetSize() + var zeroValue int64 + h := &HostedRunnerImageDetail{SizeGB: &zeroValue} + h.GetSizeGB() + h = &HostedRunnerImageDetail{} + h.GetSizeGB() + h = nil + h.GetSizeGB() +} + +func TestHostedRunnerImageDetail_GetSource(tt *testing.T) { + tt.Parallel() + var zeroValue string + h := &HostedRunnerImageDetail{Source: &zeroValue} + h.GetSource() + h = &HostedRunnerImageDetail{} + h.GetSource() + h = nil + h.GetSource() +} + +func TestHostedRunnerImageDetail_GetVersion(tt *testing.T) { + tt.Parallel() + var zeroValue string + h := &HostedRunnerImageDetail{Version: &zeroValue} + h.GetVersion() h = &HostedRunnerImageDetail{} - h.GetSize() + h.GetVersion() h = nil - h.GetSize() + h.GetVersion() } func TestHostedRunnerPublicIPLimits_GetPublicIPs(tt *testing.T) { From 0b1dc044cab9748fa24aaaa3591af3cfd8448507 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Fri, 21 Feb 2025 14:44:23 +0300 Subject: [PATCH 04/17] feat(actions): add support for GitHub-hosted runner API endpoints Implement new methods for managing GitHub-hosted runners, including functionalities for creating, updating, deleting, and retrieving details about hosted runners. References: - GitHub REST API: https://docs.github.com/en/rest/actions/hosted-runners Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go index 4575beba657..2304c43f9ae 100644 --- a/github/actions_hosted_runners.go +++ b/github/actions_hosted_runners.go @@ -19,10 +19,10 @@ type HostedRunnerPublicIP struct { // HostedRunnerMachineSpec represents the details of a particular machine specification for GitHub-hosted runner. type HostedRunnerMachineSpec struct { - ID string `json:"id"` - CPUCores int `json:"cpu_cores"` - MemoryGB int `json:"memory_gb"` - StorageGB int `json:"storage_gb"` + ID string `json:"id"` // The ID used for the `size` parameter when creating a new runner. Example: 8-core + CPUCores int `json:"cpu_cores"` // The number of cores. Example: 8 + MemoryGB int `json:"memory_gb"` // The available RAM for the machine spec. Example: 32 + StorageGB int `json:"storage_gb"` // The available SSD storage for the machine spec. Example: 300 } // HostedRunner represents a single GitHub-hosted runner with additional details. From f4ab50fca0f5c91423c8cd319fcb1e35d65c4918 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Fri, 21 Feb 2025 16:04:58 +0300 Subject: [PATCH 05/17] feat(actions): add support for GitHub-hosted runner API endpoints Implement new methods for managing GitHub-hosted runners, including functionalities for creating, updating, deleting, and retrieving details about hosted runners. References: - GitHub REST API: https://docs.github.com/en/rest/actions/hosted-runners Signed-off-by: atilsensalduz --- github/actions_hosted_runners_test.go | 14 ++++---- .../enterprise_actions_hosted_runners_test.go | 35 +++++++++---------- .../enterprise_actions_runner_groups_test.go | 28 +++++++-------- github/enterprise_actions_runners_test.go | 6 ++-- 4 files changed, 41 insertions(+), 42 deletions(-) diff --git a/github/actions_hosted_runners_test.go b/github/actions_hosted_runners_test.go index ee31633ec0a..87fc6b09b09 100644 --- a/github/actions_hosted_runners_test.go +++ b/github/actions_hosted_runners_test.go @@ -31,7 +31,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", @@ -58,7 +58,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { "platform": "win-x64", "image": { "id": "windows-latest", - "size": 256 + "size_gb": 256 }, "machine_size_details": { "id": "8-core", @@ -121,7 +121,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { Platform: Ptr("win-x64"), Image: &HostedRunnerImageDetail{ ID: Ptr("windows-latest"), - SizeGB: Ptr(int64(86)), + SizeGB: Ptr(int64(256)), }, MachineSizeDetails: &HostedRunnerMachineSpec{ ID: "8-core", @@ -169,7 +169,7 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", @@ -534,7 +534,7 @@ func TestActionsService_GetHostedRunner(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", @@ -623,7 +623,7 @@ func TestActionsService_UpdateHostedRunner(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", @@ -719,7 +719,7 @@ func TestActionsService_DeleteHostedRunner(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", diff --git a/github/enterprise_actions_hosted_runners_test.go b/github/enterprise_actions_hosted_runners_test.go index caf0d762ec7..b885646b077 100644 --- a/github/enterprise_actions_hosted_runners_test.go +++ b/github/enterprise_actions_hosted_runners_test.go @@ -19,7 +19,7 @@ func TestEnterpriseService_ListHostedRunners(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/hosted-runners", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `{ "total_count": 2, @@ -31,7 +31,7 @@ func TestEnterpriseService_ListHostedRunners(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", @@ -58,7 +58,7 @@ func TestEnterpriseService_ListHostedRunners(t *testing.T) { "platform": "win-x64", "image": { "id": "windows-latest", - "size": 256 + "size_gb": 256 }, "machine_size_details": { "id": "8-core", @@ -121,7 +121,7 @@ func TestEnterpriseService_ListHostedRunners(t *testing.T) { Platform: Ptr("win-x64"), Image: &HostedRunnerImageDetail{ ID: Ptr("windows-latest"), - SizeGB: Ptr(int64(86)), + SizeGB: Ptr(int64(256)), }, MachineSizeDetails: &HostedRunnerMachineSpec{ ID: "8-core", @@ -160,7 +160,7 @@ func TestEnterpriseService_CreateHostedRunner(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/hosted-runners", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "POST") fmt.Fprint(w, `{ "id": 5, @@ -169,7 +169,7 @@ func TestEnterpriseService_CreateHostedRunner(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", @@ -261,7 +261,7 @@ func TestEnterpriseService_GetHostedRunnerGithubOwnedImages(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/hosted-runners/images/github-owned", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners/images/github-owned", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `{ "total_count": 1, @@ -319,7 +319,7 @@ func TestEnterpriseService_GetHostedRunnerPartnerImages(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/hosted-runners/images/partner", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners/images/partner", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `{ "total_count": 1, @@ -376,8 +376,7 @@ func TestEnterpriseService_GetHostedRunnerPartnerImages(t *testing.T) { func TestEnterpriseService_GetHostedRunnerLimits(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - - mux.HandleFunc("/enterprises/e/actions/hosted-runners/limits", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners/limits", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `{ "public_ips": { @@ -423,7 +422,7 @@ func TestEnterpriseService_GetHostedRunnerMachineSpecs(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/hosted-runners/machine-sizes", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners/machine-sizes", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `{ "total_count": 1, @@ -478,7 +477,7 @@ func TestEnterpriseService_GetHostedRunnerPlatforms(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/hosted-runners/platforms", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners/platforms", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `{ "total_count": 1, @@ -525,7 +524,7 @@ func TestEnterpriseService_GetHostedRunner(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `{ "id": 5, @@ -534,7 +533,7 @@ func TestEnterpriseService_GetHostedRunner(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", @@ -614,7 +613,7 @@ func TestEnterpriseService_UpdateHostedRunner(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PATCH") fmt.Fprint(w, `{ "id": 5, @@ -623,7 +622,7 @@ func TestEnterpriseService_UpdateHostedRunner(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", @@ -710,7 +709,7 @@ func TestEnterpriseService_DeleteHostedRunner(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/hosted-runners/23", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "DELETE") fmt.Fprint(w, `{ "id": 5, @@ -719,7 +718,7 @@ func TestEnterpriseService_DeleteHostedRunner(t *testing.T) { "platform": "linux-x64", "image": { "id": "ubuntu-20.04", - "size": 86 + "size_gb": 86 }, "machine_size_details": { "id": "4-core", diff --git a/github/enterprise_actions_runner_groups_test.go b/github/enterprise_actions_runner_groups_test.go index daf01ccd580..e4d2bfffc2f 100644 --- a/github/enterprise_actions_runner_groups_test.go +++ b/github/enterprise_actions_runner_groups_test.go @@ -18,7 +18,7 @@ func TestEnterpriseService_ListRunnerGroups(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") testFormValues(t, r, values{"per_page": "2", "page": "2"}) fmt.Fprint(w, `{"total_count":3,"runner_groups":[{"id":1,"name":"Default","visibility":"all","default":true,"runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/1/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":true,"selected_workflows":["a","b"]},{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":true,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]},{"id":3,"name":"expensive-hardware","visibility":"private","default":false,"runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/3/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}]}`) @@ -62,7 +62,7 @@ func TestEnterpriseService_ListRunnerGroupsVisibleToOrganization(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") testFormValues(t, r, values{"per_page": "2", "page": "2", "visible_to_organization": "github"}) fmt.Fprint(w, `{"total_count":3,"runner_groups":[{"id":1,"name":"Default","visibility":"all","default":true,"runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/1/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]},{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":true,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]},{"id":3,"name":"expensive-hardware","visibility":"private","default":false,"runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/3/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}]}`) @@ -106,7 +106,7 @@ func TestEnterpriseService_GetRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}`) }) @@ -153,7 +153,7 @@ func TestEnterpriseService_DeleteRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "DELETE") }) @@ -178,7 +178,7 @@ func TestEnterpriseService_CreateRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "POST") fmt.Fprint(w, `{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}`) }) @@ -232,7 +232,7 @@ func TestEnterpriseService_UpdateRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PATCH") fmt.Fprint(w, `{"id":2,"name":"octo-runner-group","visibility":"selected","default":false,"selected_organizations_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/organizations","runners_url":"https://api.github.com/enterprises/octo-enterprise/actions/runner_groups/2/runners","inherited":false,"allows_public_repositories":true,"restricted_to_workflows":false,"selected_workflows":[]}`) }) @@ -286,7 +286,7 @@ func TestEnterpriseService_ListOrganizationAccessRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2/organizations", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2/organizations", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") testFormValues(t, r, values{"per_page": "1", "page": "1"}) fmt.Fprint(w, `{"total_count": 1, "organizations": [{"id": 43, "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", "name": "Hello-World", "login": "octocat"}]}`) @@ -328,7 +328,7 @@ func TestEnterpriseService_SetOrganizationAccessRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2/organizations", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2/organizations", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PUT") }) @@ -360,7 +360,7 @@ func TestEnterpriseService_AddOrganizationAccessRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2/organizations/42", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2/organizations/42", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PUT") }) @@ -385,7 +385,7 @@ func TestEnterpriseService_RemoveOrganizationAccessRunnerGroup(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2/organizations/42", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2/organizations/42", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "DELETE") }) @@ -410,7 +410,7 @@ func TestEnterpriseService_ListEnterpriseRunnerGroupRunners(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2/runners", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2/runners", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") testFormValues(t, r, values{"per_page": "2", "page": "2"}) fmt.Fprint(w, `{"total_count":2,"runners":[{"id":23,"name":"MBP","os":"macos","status":"online"},{"id":24,"name":"iMac","os":"macos","status":"offline"}]}`) @@ -453,7 +453,7 @@ func TestEnterpriseService_SetEnterpriseRunnerGroupRunners(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2/runners", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2/runners", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PUT") }) @@ -485,7 +485,7 @@ func TestEnterpriseService_AddEnterpriseRunnerGroupRunners(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2/runners/42", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2/runners/42", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "PUT") }) @@ -510,7 +510,7 @@ func TestEnterpriseService_RemoveEnterpriseRunnerGroupRunners(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runner-groups/2/runners/42", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runner-groups/2/runners/42", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "DELETE") }) diff --git a/github/enterprise_actions_runners_test.go b/github/enterprise_actions_runners_test.go index b41208f55ed..b3a5770b6ad 100644 --- a/github/enterprise_actions_runners_test.go +++ b/github/enterprise_actions_runners_test.go @@ -22,7 +22,7 @@ func TestEnterpriseService_GenerateEnterpriseJITConfig(t *testing.T) { input := &GenerateJITConfigRequest{Name: "test", RunnerGroupID: 1, Labels: []string{"one", "two"}} - mux.HandleFunc("/enterprises/e/actions/runners/generate-jitconfig", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runners/generate-jitconfig", func(w http.ResponseWriter, r *http.Request) { v := new(GenerateJITConfigRequest) err := json.NewDecoder(r.Body).Decode(v) if err != nil { @@ -189,7 +189,7 @@ func TestEnterpriseService_RemoveRunner(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runners/21", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runners/21", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "DELETE") }) @@ -214,7 +214,7 @@ func TestEnterpriseService_ListRunnerApplicationDownloads(t *testing.T) { t.Parallel() client, mux, _ := setup(t) - mux.HandleFunc("/enterprises/e/actions/runners/downloads", func(w http.ResponseWriter, r *http.Request) { + mux.HandleFunc("/enterprises/o/actions/runners/downloads", func(w http.ResponseWriter, r *http.Request) { testMethod(t, r, "GET") fmt.Fprint(w, `[{"os":"osx","architecture":"x64","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-osx-x64-2.164.0.tar.gz","filename":"actions-runner-osx-x64-2.164.0.tar.gz"},{"os":"linux","architecture":"x64","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-x64-2.164.0.tar.gz","filename":"actions-runner-linux-x64-2.164.0.tar.gz"},{"os": "linux","architecture":"arm","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-arm-2.164.0.tar.gz","filename":"actions-runner-linux-arm-2.164.0.tar.gz"},{"os":"win","architecture":"x64","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-win-x64-2.164.0.zip","filename":"actions-runner-win-x64-2.164.0.zip"},{"os":"linux","architecture":"arm64","download_url":"https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-arm64-2.164.0.tar.gz","filename":"actions-runner-linux-arm64-2.164.0.tar.gz"}]`) }) From 9b50e8210c80748f356dda683b60a39ef577593a Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Fri, 21 Feb 2025 17:53:29 +0300 Subject: [PATCH 06/17] feat(actions): add support for GitHub-hosted runner API endpoints Implement new methods for managing GitHub-hosted runners, including functionalities for creating, updating, deleting, and retrieving details about hosted runners. References: - GitHub REST API: https://docs.github.com/en/rest/actions/hosted-runners Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 2 +- github/actions_hosted_runners_test.go | 24 +++++++++---------- .../enterprise_actions_hosted_runners_test.go | 24 +++++++++---------- github/github-accessors.go | 6 ++--- github/github-accessors_test.go | 6 ++--- 5 files changed, 31 insertions(+), 31 deletions(-) diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go index 2304c43f9ae..67c4c443104 100644 --- a/github/actions_hosted_runners.go +++ b/github/actions_hosted_runners.go @@ -31,7 +31,7 @@ type HostedRunner struct { Name *string `json:"name,omitempty"` RunnerGroupID *int64 `json:"runner_group_id,omitempty"` Platform *string `json:"platform,omitempty"` - Image *HostedRunnerImageDetail `json:"image,omitempty"` + ImageDetails *HostedRunnerImageDetail `json:"image_details,omitempty"` MachineSizeDetails *HostedRunnerMachineSpec `json:"machine_size_details,omitempty"` Status *string `json:"status,omitempty"` MaximumRunners *int64 `json:"maximum_runners,omitempty"` diff --git a/github/actions_hosted_runners_test.go b/github/actions_hosted_runners_test.go index 87fc6b09b09..eab61fdcc4e 100644 --- a/github/actions_hosted_runners_test.go +++ b/github/actions_hosted_runners_test.go @@ -29,7 +29,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -56,7 +56,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { "name": "My hosted Windows runner", "runner_group_id": 2, "platform": "win-x64", - "image": { + "image_details": { "id": "windows-latest", "size_gb": 256 }, @@ -92,7 +92,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, @@ -119,7 +119,7 @@ func TestActionsService_ListHostedRunners(t *testing.T) { Name: Ptr("My hosted Windows runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("win-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("windows-latest"), SizeGB: Ptr(int64(256)), }, @@ -167,7 +167,7 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -215,7 +215,7 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, @@ -532,7 +532,7 @@ func TestActionsService_GetHostedRunner(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -568,7 +568,7 @@ func TestActionsService_GetHostedRunner(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, @@ -621,7 +621,7 @@ func TestActionsService_UpdateHostedRunner(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -664,7 +664,7 @@ func TestActionsService_UpdateHostedRunner(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, @@ -717,7 +717,7 @@ func TestActionsService_DeleteHostedRunner(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -753,7 +753,7 @@ func TestActionsService_DeleteHostedRunner(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, diff --git a/github/enterprise_actions_hosted_runners_test.go b/github/enterprise_actions_hosted_runners_test.go index b885646b077..1eb36e33fb3 100644 --- a/github/enterprise_actions_hosted_runners_test.go +++ b/github/enterprise_actions_hosted_runners_test.go @@ -29,7 +29,7 @@ func TestEnterpriseService_ListHostedRunners(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -56,7 +56,7 @@ func TestEnterpriseService_ListHostedRunners(t *testing.T) { "name": "My hosted Windows runner", "runner_group_id": 2, "platform": "win-x64", - "image": { + "image_details": { "id": "windows-latest", "size_gb": 256 }, @@ -92,7 +92,7 @@ func TestEnterpriseService_ListHostedRunners(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, @@ -119,7 +119,7 @@ func TestEnterpriseService_ListHostedRunners(t *testing.T) { Name: Ptr("My hosted Windows runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("win-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("windows-latest"), SizeGB: Ptr(int64(256)), }, @@ -167,7 +167,7 @@ func TestEnterpriseService_CreateHostedRunner(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -215,7 +215,7 @@ func TestEnterpriseService_CreateHostedRunner(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, @@ -531,7 +531,7 @@ func TestEnterpriseService_GetHostedRunner(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -567,7 +567,7 @@ func TestEnterpriseService_GetHostedRunner(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, @@ -620,7 +620,7 @@ func TestEnterpriseService_UpdateHostedRunner(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -663,7 +663,7 @@ func TestEnterpriseService_UpdateHostedRunner(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, @@ -716,7 +716,7 @@ func TestEnterpriseService_DeleteHostedRunner(t *testing.T) { "name": "My hosted ubuntu runner", "runner_group_id": 2, "platform": "linux-x64", - "image": { + "image_details": { "id": "ubuntu-20.04", "size_gb": 86 }, @@ -752,7 +752,7 @@ func TestEnterpriseService_DeleteHostedRunner(t *testing.T) { Name: Ptr("My hosted ubuntu runner"), RunnerGroupID: Ptr(int64(2)), Platform: Ptr("linux-x64"), - Image: &HostedRunnerImageDetail{ + ImageDetails: &HostedRunnerImageDetail{ ID: Ptr("ubuntu-20.04"), SizeGB: Ptr(int64(86)), }, diff --git a/github/github-accessors.go b/github/github-accessors.go index 316d82144a9..abe2fbabf66 100644 --- a/github/github-accessors.go +++ b/github/github-accessors.go @@ -10190,12 +10190,12 @@ func (h *HostedRunner) GetID() int64 { return *h.ID } -// GetImage returns the Image field. -func (h *HostedRunner) GetImage() *HostedRunnerImageDetail { +// GetImageDetails returns the ImageDetails field. +func (h *HostedRunner) GetImageDetails() *HostedRunnerImageDetail { if h == nil { return nil } - return h.Image + return h.ImageDetails } // GetLastActiveOn returns the LastActiveOn field if it's non-nil, zero value otherwise. diff --git a/github/github-accessors_test.go b/github/github-accessors_test.go index 45596c7ab24..2c0c86ca6a7 100644 --- a/github/github-accessors_test.go +++ b/github/github-accessors_test.go @@ -13191,12 +13191,12 @@ func TestHostedRunner_GetID(tt *testing.T) { h.GetID() } -func TestHostedRunner_GetImage(tt *testing.T) { +func TestHostedRunner_GetImageDetails(tt *testing.T) { tt.Parallel() h := &HostedRunner{} - h.GetImage() + h.GetImageDetails() h = nil - h.GetImage() + h.GetImageDetails() } func TestHostedRunner_GetLastActiveOn(tt *testing.T) { From 4f5c3ec9b8d1e6aa49467361f2909d13b23d4d3e Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Fri, 21 Feb 2025 20:42:17 +0300 Subject: [PATCH 07/17] feat(actions): add support for GitHub-hosted runner API endpoints Implement new methods for managing GitHub-hosted runners, including functionalities for creating, updating, deleting, and retrieving details about hosted runners. References: - GitHub REST API: https://docs.github.com/en/rest/actions/hosted-runners Signed-off-by: atilsensalduz --- github/actions_hosted_runners_test.go | 2 +- github/enterprise_actions_hosted_runners_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/github/actions_hosted_runners_test.go b/github/actions_hosted_runners_test.go index eab61fdcc4e..8b64a74977e 100644 --- a/github/actions_hosted_runners_test.go +++ b/github/actions_hosted_runners_test.go @@ -257,7 +257,7 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { }) } -func TestActionsService_GetHostedRunnerGithubOwnedImages(t *testing.T) { +func TestActionsService_GetHostedRunnerGitHubOwnedImages(t *testing.T) { t.Parallel() client, mux, _ := setup(t) diff --git a/github/enterprise_actions_hosted_runners_test.go b/github/enterprise_actions_hosted_runners_test.go index 1eb36e33fb3..2be620d1c36 100644 --- a/github/enterprise_actions_hosted_runners_test.go +++ b/github/enterprise_actions_hosted_runners_test.go @@ -257,7 +257,7 @@ func TestEnterpriseService_CreateHostedRunner(t *testing.T) { }) } -func TestEnterpriseService_GetHostedRunnerGithubOwnedImages(t *testing.T) { +func TestEnterpriseService_GetHostedRunnerGitHubOwnedImages(t *testing.T) { t.Parallel() client, mux, _ := setup(t) From 6ecf46911ef011b10665a6ae3beafd72d3f0a65e Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Tue, 25 Feb 2025 16:40:19 +0300 Subject: [PATCH 08/17] feat: Refactor hosted runner request handling: Use shared struct and add validation Unified the CreateHostedRunnerRequest and UpdateHostedRunnerRequest into a single HostedRunnerRequest struct. Added validation functions for HostedRunnerRequest. Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 67 +++++++-- github/actions_hosted_runners_test.go | 138 +++++++++++++++++- github/enterprise_actions_hosted_runners.go | 15 +- .../enterprise_actions_hosted_runners_test.go | 134 ++++++++++++++++- 4 files changed, 323 insertions(+), 31 deletions(-) diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go index 67c4c443104..4660dd7280b 100644 --- a/github/actions_hosted_runners.go +++ b/github/actions_hosted_runners.go @@ -7,6 +7,7 @@ package github import ( "context" + "errors" "fmt" ) @@ -89,14 +90,39 @@ type HostedRunnerImage struct { Version string `json:"version"` } -// CreateHostedRunnerRequest specifies body parameters to Hosted Runner configuration. -type CreateHostedRunnerRequest struct { - Name string `json:"name"` - Image HostedRunnerImage `json:"image"` - RunnerGroupID int64 `json:"runner_group_id"` - Size string `json:"size"` +// HostedRunnerRequest specifies body parameters to Hosted Runner configuration. +type HostedRunnerRequest struct { + Name string `json:"name,omitempty"` + Image HostedRunnerImage `json:"image,omitempty"` + RunnerGroupID int64 `json:"runner_group_id,omitempty"` + Size string `json:"size,omitempty"` MaximumRunners int64 `json:"maximum_runners,omitempty"` EnableStaticIP bool `json:"enable_static_ip,omitempty"` + ImageVersion string `json:"image_version,omitempty"` +} + +// validateCreateHostedRunnerRequest validates the provided HostedRunnerRequest to ensure +// that all required fields are properly set and that no invalid fields are present for hosted runner create request. +// +// If any of these conditions are violated, an appropriate error message is returned. +// Otherwise, nil is returned, indicating the request is valid. +func validateCreateHostedRunnerRequest(request *HostedRunnerRequest) error { + if request.Size == "" { + return errors.New("size is required for creating a hosted runner") + } + if request.Image == (HostedRunnerImage{}) { + return errors.New("image is required for creating a hosted runner") + } + if request.Name == "" { + return errors.New("name is required for creating a hosted runner") + } + if request.RunnerGroupID == 0 { + return errors.New("runner group ID is required for creating a hosted runner") + } + if request.ImageVersion != "" { + return errors.New("imageVersion should not be set directly; use the Image struct to specify image details") + } + return nil } // CreateHostedRunner creates a GitHub-hosted runner for an organization. @@ -104,7 +130,12 @@ type CreateHostedRunnerRequest struct { // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-organization // //meta:operation POST /orgs/{org}/actions/hosted-runners -func (s *ActionsService) CreateHostedRunner(ctx context.Context, org string, request *CreateHostedRunnerRequest) (*HostedRunner, *Response, error) { +func (s *ActionsService) CreateHostedRunner(ctx context.Context, org string, request *HostedRunnerRequest) (*HostedRunner, *Response, error) { + err := validateCreateHostedRunnerRequest(request) + if err != nil { + return nil, nil, errors.New("validation failed: " + err.Error()) + } + u := fmt.Sprintf("orgs/%v/actions/hosted-runners", org) req, err := s.client.NewRequest("POST", u, request) if err != nil { @@ -284,13 +315,14 @@ func (s *ActionsService) GetHostedRunner(ctx context.Context, org string, runner return hostedRunner, resp, nil } -// UpdateHostedRunnerRequest specifies the parameters for updating a runner specifications. -type UpdateHostedRunnerRequest struct { - Name string `json:"name"` - RunnerGroupID int64 `json:"runner_group_id"` - MaximumRunners int64 `json:"maximum_runners"` - EnableStaticIP bool `json:"enable_static_ip"` - ImageVersion string `json:"image_version"` +func validateUpdateHostedRunnerRequest(request *HostedRunnerRequest) error { + if request.Size != "" { + return errors.New("size cannot be updated, API does not support updating size") + } + if request.Image != (HostedRunnerImage{}) { + return errors.New("image struct should not be set directly; use the ImageVersion to specify version details") + } + return nil } // UpdateHostedRunner updates a GitHub-hosted runner for an organization. @@ -298,7 +330,12 @@ type UpdateHostedRunnerRequest struct { // GitHub API docs: https://docs.github.com/rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-organization // //meta:operation PATCH /orgs/{org}/actions/hosted-runners/{hosted_runner_id} -func (s *ActionsService) UpdateHostedRunner(ctx context.Context, org string, runnerID int64, updateReq UpdateHostedRunnerRequest) (*HostedRunner, *Response, error) { +func (s *ActionsService) UpdateHostedRunner(ctx context.Context, org string, runnerID int64, updateReq HostedRunnerRequest) (*HostedRunner, *Response, error) { + err := validateUpdateHostedRunnerRequest(&updateReq) + if err != nil { + return nil, nil, errors.New("validation failed: " + err.Error()) + } + u := fmt.Sprintf("orgs/%v/actions/hosted-runners/%v", org, runnerID) req, err := s.client.NewRequest("PATCH", u, updateReq) if err != nil { diff --git a/github/actions_hosted_runners_test.go b/github/actions_hosted_runners_test.go index 8b64a74977e..e1191ceb360 100644 --- a/github/actions_hosted_runners_test.go +++ b/github/actions_hosted_runners_test.go @@ -192,7 +192,8 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { }) ctx := context.Background() - req := &CreateHostedRunnerRequest{ + + validReq := &HostedRunnerRequest{ Name: "My Hosted runner", Image: HostedRunnerImage{ ID: "ubuntu-latest", @@ -204,7 +205,7 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { MaximumRunners: 50, EnableStaticIP: false, } - hostedRunner, _, err := client.Actions.CreateHostedRunner(ctx, "o", req) + hostedRunner, _, err := client.Actions.CreateHostedRunner(ctx, "o", validReq) if err != nil { t.Errorf("Actions.CreateHostedRunner returned error: %v", err) } @@ -242,14 +243,94 @@ func TestActionsService_CreateHostedRunner(t *testing.T) { t.Errorf("Actions.CreateHostedRunner returned %+v, want %+v", hostedRunner, want) } + // Validation tests + testCases := []struct { + name string + request *HostedRunnerRequest + expectedError string + }{ + { + name: "Missing Size", + request: &HostedRunnerRequest{ + Name: "My Hosted runner", + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + RunnerGroupID: 1, + }, + expectedError: "validation failed: size is required for creating a hosted runner", + }, + { + name: "Missing Image", + request: &HostedRunnerRequest{ + Name: "My Hosted runner", + RunnerGroupID: 1, + Size: "4-core", + }, + expectedError: "validation failed: image is required for creating a hosted runner", + }, + { + name: "Missing Name", + request: &HostedRunnerRequest{ + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + RunnerGroupID: 1, + Size: "4-core", + }, + expectedError: "validation failed: name is required for creating a hosted runner", + }, + { + name: "Missing RunnerGroupID", + request: &HostedRunnerRequest{ + Name: "My Hosted runner", + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + Size: "4-core", + }, + expectedError: "validation failed: runner group ID is required for creating a hosted runner", + }, + { + name: "ImageVersion Set Instead of Image Struct", + request: &HostedRunnerRequest{ + Name: "My Hosted runner", + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + RunnerGroupID: 1, + Size: "4-core", + ImageVersion: "1.0.0", + MaximumRunners: 50, + EnableStaticIP: false, + }, + expectedError: "validation failed: imageVersion should not be set directly; use the Image struct to specify image details", + }, + } + + for _, tt := range testCases { + _, _, err := client.Actions.CreateHostedRunner(ctx, "o", tt.request) + if err == nil || err.Error() != tt.expectedError { + t.Errorf("expected error: %v, got: %v", tt.expectedError, err) + } + } + const methodName = "CreateHostedRunner" testBadOptions(t, methodName, func() (err error) { - _, _, err = client.Actions.CreateHostedRunner(ctx, "\n", req) + _, _, err = client.Actions.CreateHostedRunner(ctx, "\n", validReq) return err }) testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { - got, resp, err := client.Actions.CreateHostedRunner(ctx, "o", req) + got, resp, err := client.Actions.CreateHostedRunner(ctx, "o", validReq) if got != nil { t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) } @@ -646,14 +727,14 @@ func TestActionsService_UpdateHostedRunner(t *testing.T) { }) ctx := context.Background() - req := UpdateHostedRunnerRequest{ + validReq := HostedRunnerRequest{ Name: "My larger runner", RunnerGroupID: 1, MaximumRunners: 50, EnableStaticIP: false, ImageVersion: "1.0.0", } - hostedRunner, _, err := client.Actions.UpdateHostedRunner(ctx, "o", 23, req) + hostedRunner, _, err := client.Actions.UpdateHostedRunner(ctx, "o", 23, validReq) if err != nil { t.Errorf("Actions.UpdateHostedRunner returned error: %v", err) } @@ -691,14 +772,55 @@ func TestActionsService_UpdateHostedRunner(t *testing.T) { t.Errorf("Actions.UpdateHostedRunner returned %+v, want %+v", hostedRunner, want) } + testCases := []struct { + name string + request HostedRunnerRequest + expectedError string + }{ + { + name: "Size Set in Update Request", + request: HostedRunnerRequest{ + Name: "My larger runner", + RunnerGroupID: 1, + MaximumRunners: 50, + EnableStaticIP: false, + ImageVersion: "1.0.0", + Size: "4-core", // Should cause validation error + }, + expectedError: "validation failed: size cannot be updated, API does not support updating size", + }, + { + name: "Image Set in Update Request", + request: HostedRunnerRequest{ + Name: "My larger runner", + RunnerGroupID: 1, + MaximumRunners: 50, + EnableStaticIP: false, + ImageVersion: "1.0.0", + Image: HostedRunnerImage{ // Should cause validation error + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + }, + expectedError: "validation failed: image struct should not be set directly; use the ImageVersion to specify version details", + }, + } + for _, tt := range testCases { + _, _, err := client.Enterprise.UpdateHostedRunner(ctx, "o", 23, tt.request) + if err == nil || err.Error() != tt.expectedError { + t.Errorf("expected error: %v, got: %v", tt.expectedError, err) + } + } + const methodName = "UpdateHostedRunner" testBadOptions(t, methodName, func() (err error) { - _, _, err = client.Actions.UpdateHostedRunner(ctx, "\n", 23, req) + _, _, err = client.Actions.UpdateHostedRunner(ctx, "\n", 23, validReq) return err }) testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { - got, resp, err := client.Actions.UpdateHostedRunner(ctx, "o", 23, req) + got, resp, err := client.Actions.UpdateHostedRunner(ctx, "o", 23, validReq) if got != nil { t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) } diff --git a/github/enterprise_actions_hosted_runners.go b/github/enterprise_actions_hosted_runners.go index 13ed650acc4..86e70248b5e 100644 --- a/github/enterprise_actions_hosted_runners.go +++ b/github/enterprise_actions_hosted_runners.go @@ -7,6 +7,7 @@ package github import ( "context" + "errors" "fmt" ) @@ -41,7 +42,12 @@ func (s *EnterpriseService) ListHostedRunners(ctx context.Context, enterprise st // GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-enterprise // //meta:operation POST /enterprises/{enterprise}/actions/hosted-runners -func (s *EnterpriseService) CreateHostedRunner(ctx context.Context, enterprise string, request *CreateHostedRunnerRequest) (*HostedRunner, *Response, error) { +func (s *EnterpriseService) CreateHostedRunner(ctx context.Context, enterprise string, request *HostedRunnerRequest) (*HostedRunner, *Response, error) { + err := validateCreateHostedRunnerRequest(request) + if err != nil { + return nil, nil, errors.New("validation failed: " + err.Error()) + } + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners", enterprise) req, err := s.client.NewRequest("POST", u, request) if err != nil { @@ -188,7 +194,12 @@ func (s *EnterpriseService) GetHostedRunner(ctx context.Context, enterprise stri // GitHub API docs: https://docs.github.com/enterprise-cloud@latest/rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-enterprise // //meta:operation PATCH /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} -func (s *EnterpriseService) UpdateHostedRunner(ctx context.Context, enterprise string, runnerID int64, updateReq UpdateHostedRunnerRequest) (*HostedRunner, *Response, error) { +func (s *EnterpriseService) UpdateHostedRunner(ctx context.Context, enterprise string, runnerID int64, updateReq HostedRunnerRequest) (*HostedRunner, *Response, error) { + err := validateUpdateHostedRunnerRequest(&updateReq) + if err != nil { + return nil, nil, errors.New("validation failed: " + err.Error()) + } + u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/%v", enterprise, runnerID) req, err := s.client.NewRequest("PATCH", u, updateReq) if err != nil { diff --git a/github/enterprise_actions_hosted_runners_test.go b/github/enterprise_actions_hosted_runners_test.go index 2be620d1c36..948dac938c4 100644 --- a/github/enterprise_actions_hosted_runners_test.go +++ b/github/enterprise_actions_hosted_runners_test.go @@ -192,7 +192,7 @@ func TestEnterpriseService_CreateHostedRunner(t *testing.T) { }) ctx := context.Background() - req := &CreateHostedRunnerRequest{ + req := &HostedRunnerRequest{ Name: "My Hosted runner", Image: HostedRunnerImage{ ID: "ubuntu-latest", @@ -242,6 +242,86 @@ func TestEnterpriseService_CreateHostedRunner(t *testing.T) { t.Errorf("Enterprise.CreateHostedRunner returned %+v, want %+v", hostedRunner, want) } + // Validation tests + testCases := []struct { + name string + request *HostedRunnerRequest + expectedError string + }{ + { + name: "Missing Size", + request: &HostedRunnerRequest{ + Name: "My Hosted runner", + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + RunnerGroupID: 1, + }, + expectedError: "validation failed: size is required for creating a hosted runner", + }, + { + name: "Missing Image", + request: &HostedRunnerRequest{ + Name: "My Hosted runner", + RunnerGroupID: 1, + Size: "4-core", + }, + expectedError: "validation failed: image is required for creating a hosted runner", + }, + { + name: "Missing Name", + request: &HostedRunnerRequest{ + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + RunnerGroupID: 1, + Size: "4-core", + }, + expectedError: "validation failed: name is required for creating a hosted runner", + }, + { + name: "Missing RunnerGroupID", + request: &HostedRunnerRequest{ + Name: "My Hosted runner", + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + Size: "4-core", + }, + expectedError: "validation failed: runner group ID is required for creating a hosted runner", + }, + { + name: "ImageVersion Set Instead of Image Struct", + request: &HostedRunnerRequest{ + Name: "My Hosted runner", + Image: HostedRunnerImage{ + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + RunnerGroupID: 1, + Size: "4-core", + ImageVersion: "1.0.0", + MaximumRunners: 50, + EnableStaticIP: false, + }, + expectedError: "validation failed: imageVersion should not be set directly; use the Image struct to specify image details", + }, + } + + for _, tt := range testCases { + _, _, err := client.Enterprise.CreateHostedRunner(ctx, "o", tt.request) + if err == nil || err.Error() != tt.expectedError { + t.Errorf("expected error: %v, got: %v", tt.expectedError, err) + } + } + const methodName = "CreateHostedRunner" testBadOptions(t, methodName, func() (err error) { _, _, err = client.Enterprise.CreateHostedRunner(ctx, "\n", req) @@ -641,18 +721,19 @@ func TestEnterpriseService_UpdateHostedRunner(t *testing.T) { } ], "last_active_on": "2023-04-26T15:23:37Z" - }`) + }`) }) + // Test for a valid update without `Size` ctx := context.Background() - req := UpdateHostedRunnerRequest{ + validReq := HostedRunnerRequest{ Name: "My larger runner", RunnerGroupID: 1, MaximumRunners: 50, EnableStaticIP: false, ImageVersion: "1.0.0", } - hostedRunner, _, err := client.Enterprise.UpdateHostedRunner(ctx, "o", 23, req) + hostedRunner, _, err := client.Enterprise.UpdateHostedRunner(ctx, "o", 23, validReq) if err != nil { t.Errorf("Enterprise.UpdateHostedRunner returned error: %v", err) } @@ -690,14 +771,55 @@ func TestEnterpriseService_UpdateHostedRunner(t *testing.T) { t.Errorf("Enterprise.UpdateHostedRunner returned %+v, want %+v", hostedRunner, want) } + testCases := []struct { + name string + request HostedRunnerRequest + expectedError string + }{ + { + name: "Size Set in Update Request", + request: HostedRunnerRequest{ + Name: "My larger runner", + RunnerGroupID: 1, + MaximumRunners: 50, + EnableStaticIP: false, + ImageVersion: "1.0.0", + Size: "4-core", // Should cause validation error + }, + expectedError: "validation failed: size cannot be updated, API does not support updating size", + }, + { + name: "Image Set in Update Request", + request: HostedRunnerRequest{ + Name: "My larger runner", + RunnerGroupID: 1, + MaximumRunners: 50, + EnableStaticIP: false, + ImageVersion: "1.0.0", + Image: HostedRunnerImage{ // Should cause validation error + ID: "ubuntu-latest", + Source: "github", + Version: "latest", + }, + }, + expectedError: "validation failed: image struct should not be set directly; use the ImageVersion to specify version details", + }, + } + for _, tt := range testCases { + _, _, err := client.Enterprise.UpdateHostedRunner(ctx, "o", 23, tt.request) + if err == nil || err.Error() != tt.expectedError { + t.Errorf("expected error: %v, got: %v", tt.expectedError, err) + } + } + const methodName = "UpdateHostedRunner" testBadOptions(t, methodName, func() (err error) { - _, _, err = client.Enterprise.UpdateHostedRunner(ctx, "\n", 23, req) + _, _, err = client.Enterprise.UpdateHostedRunner(ctx, "\n", 23, validReq) return err }) testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { - got, resp, err := client.Enterprise.UpdateHostedRunner(ctx, "o", 23, req) + got, resp, err := client.Enterprise.UpdateHostedRunner(ctx, "o", 23, validReq) if got != nil { t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) } From 5167f4531636caa07a95d8aa30d29320a2415ad0 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Tue, 25 Feb 2025 17:03:39 +0300 Subject: [PATCH 09/17] feat: Refactor hosted runner request handling: Use shared struct and add validation Unified the CreateHostedRunnerRequest and UpdateHostedRunnerRequest into a single HostedRunnerRequest struct. Added validation functions for HostedRunnerRequest. Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go index 4660dd7280b..0a5948850da 100644 --- a/github/actions_hosted_runners.go +++ b/github/actions_hosted_runners.go @@ -315,6 +315,12 @@ func (s *ActionsService) GetHostedRunner(ctx context.Context, org string, runner return hostedRunner, resp, nil } +// validateUpdateHostedRunnerRequest validates the provided HostedRunnerRequest to ensure +// that no disallowed updates are made for a hosted runner update request. +// +// If any of these conditions are violated, an appropriate error message is returned. +// Otherwise, nil is returned, indicating the request is valid for an update. + func validateUpdateHostedRunnerRequest(request *HostedRunnerRequest) error { if request.Size != "" { return errors.New("size cannot be updated, API does not support updating size") From 65910b7eaf0b4b8ac894261a6581cec961f7984a Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Tue, 25 Feb 2025 17:04:28 +0300 Subject: [PATCH 10/17] feat: Refactor hosted runner request handling: Use shared struct and add validation Unified the CreateHostedRunnerRequest and UpdateHostedRunnerRequest into a single HostedRunnerRequest struct. Added validation functions for HostedRunnerRequest. Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 1 - 1 file changed, 1 deletion(-) diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go index 0a5948850da..61af751ec7c 100644 --- a/github/actions_hosted_runners.go +++ b/github/actions_hosted_runners.go @@ -320,7 +320,6 @@ func (s *ActionsService) GetHostedRunner(ctx context.Context, org string, runner // // If any of these conditions are violated, an appropriate error message is returned. // Otherwise, nil is returned, indicating the request is valid for an update. - func validateUpdateHostedRunnerRequest(request *HostedRunnerRequest) error { if request.Size != "" { return errors.New("size cannot be updated, API does not support updating size") From 22d4aba0c893d9eb3e432a7c70eeda99aa2d11fd Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Wed, 26 Feb 2025 09:55:57 +0300 Subject: [PATCH 11/17] refactor: improve error handling by preserving the original error context, allowing for better error inspection and unwrapping. Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 4 ++-- github/enterprise_actions_hosted_runners.go | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go index 61af751ec7c..3a32ed1b7dc 100644 --- a/github/actions_hosted_runners.go +++ b/github/actions_hosted_runners.go @@ -133,7 +133,7 @@ func validateCreateHostedRunnerRequest(request *HostedRunnerRequest) error { func (s *ActionsService) CreateHostedRunner(ctx context.Context, org string, request *HostedRunnerRequest) (*HostedRunner, *Response, error) { err := validateCreateHostedRunnerRequest(request) if err != nil { - return nil, nil, errors.New("validation failed: " + err.Error()) + return nil, nil, fmt.Errorf("validation failed: %w", err) } u := fmt.Sprintf("orgs/%v/actions/hosted-runners", org) @@ -338,7 +338,7 @@ func validateUpdateHostedRunnerRequest(request *HostedRunnerRequest) error { func (s *ActionsService) UpdateHostedRunner(ctx context.Context, org string, runnerID int64, updateReq HostedRunnerRequest) (*HostedRunner, *Response, error) { err := validateUpdateHostedRunnerRequest(&updateReq) if err != nil { - return nil, nil, errors.New("validation failed: " + err.Error()) + return nil, nil, fmt.Errorf("validation failed: %w", err) } u := fmt.Sprintf("orgs/%v/actions/hosted-runners/%v", org, runnerID) diff --git a/github/enterprise_actions_hosted_runners.go b/github/enterprise_actions_hosted_runners.go index 86e70248b5e..8447e292a1d 100644 --- a/github/enterprise_actions_hosted_runners.go +++ b/github/enterprise_actions_hosted_runners.go @@ -7,7 +7,6 @@ package github import ( "context" - "errors" "fmt" ) @@ -45,7 +44,7 @@ func (s *EnterpriseService) ListHostedRunners(ctx context.Context, enterprise st func (s *EnterpriseService) CreateHostedRunner(ctx context.Context, enterprise string, request *HostedRunnerRequest) (*HostedRunner, *Response, error) { err := validateCreateHostedRunnerRequest(request) if err != nil { - return nil, nil, errors.New("validation failed: " + err.Error()) + return nil, nil, fmt.Errorf("validation failed: %w", err) } u := fmt.Sprintf("enterprises/%v/actions/hosted-runners", enterprise) @@ -197,7 +196,7 @@ func (s *EnterpriseService) GetHostedRunner(ctx context.Context, enterprise stri func (s *EnterpriseService) UpdateHostedRunner(ctx context.Context, enterprise string, runnerID int64, updateReq HostedRunnerRequest) (*HostedRunner, *Response, error) { err := validateUpdateHostedRunnerRequest(&updateReq) if err != nil { - return nil, nil, errors.New("validation failed: " + err.Error()) + return nil, nil, fmt.Errorf("validation failed: %w", err) } u := fmt.Sprintf("enterprises/%v/actions/hosted-runners/%v", enterprise, runnerID) From a2199bb2f0ba249a1912bbdd897e4541ed57ce86 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Wed, 26 Feb 2025 10:25:57 +0300 Subject: [PATCH 12/17] refactor: improve error handling by preserving the original error context, allowing for better error inspection and unwrapping. Signed-off-by: atilsensalduz --- github/actions_hosted_runners.go | 6 ++---- github/enterprise_actions_hosted_runners.go | 6 ++---- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/github/actions_hosted_runners.go b/github/actions_hosted_runners.go index 3a32ed1b7dc..dbe1f6b5b1e 100644 --- a/github/actions_hosted_runners.go +++ b/github/actions_hosted_runners.go @@ -131,8 +131,7 @@ func validateCreateHostedRunnerRequest(request *HostedRunnerRequest) error { // //meta:operation POST /orgs/{org}/actions/hosted-runners func (s *ActionsService) CreateHostedRunner(ctx context.Context, org string, request *HostedRunnerRequest) (*HostedRunner, *Response, error) { - err := validateCreateHostedRunnerRequest(request) - if err != nil { + if err := validateCreateHostedRunnerRequest(request); err != nil { return nil, nil, fmt.Errorf("validation failed: %w", err) } @@ -336,8 +335,7 @@ func validateUpdateHostedRunnerRequest(request *HostedRunnerRequest) error { // //meta:operation PATCH /orgs/{org}/actions/hosted-runners/{hosted_runner_id} func (s *ActionsService) UpdateHostedRunner(ctx context.Context, org string, runnerID int64, updateReq HostedRunnerRequest) (*HostedRunner, *Response, error) { - err := validateUpdateHostedRunnerRequest(&updateReq) - if err != nil { + if err := validateUpdateHostedRunnerRequest(&updateReq); err != nil { return nil, nil, fmt.Errorf("validation failed: %w", err) } diff --git a/github/enterprise_actions_hosted_runners.go b/github/enterprise_actions_hosted_runners.go index 8447e292a1d..e82ba9b806f 100644 --- a/github/enterprise_actions_hosted_runners.go +++ b/github/enterprise_actions_hosted_runners.go @@ -42,8 +42,7 @@ func (s *EnterpriseService) ListHostedRunners(ctx context.Context, enterprise st // //meta:operation POST /enterprises/{enterprise}/actions/hosted-runners func (s *EnterpriseService) CreateHostedRunner(ctx context.Context, enterprise string, request *HostedRunnerRequest) (*HostedRunner, *Response, error) { - err := validateCreateHostedRunnerRequest(request) - if err != nil { + if err := validateCreateHostedRunnerRequest(request); err != nil { return nil, nil, fmt.Errorf("validation failed: %w", err) } @@ -194,8 +193,7 @@ func (s *EnterpriseService) GetHostedRunner(ctx context.Context, enterprise stri // //meta:operation PATCH /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} func (s *EnterpriseService) UpdateHostedRunner(ctx context.Context, enterprise string, runnerID int64, updateReq HostedRunnerRequest) (*HostedRunner, *Response, error) { - err := validateUpdateHostedRunnerRequest(&updateReq) - if err != nil { + if err := validateUpdateHostedRunnerRequest(&updateReq); err != nil { return nil, nil, fmt.Errorf("validation failed: %w", err) } From 56f4c18654683416f7cbebc046e50ecf2f962ccc Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Thu, 20 Mar 2025 17:53:23 +0300 Subject: [PATCH 13/17] feat: add support for Issue Types API - Implement functions to interact with the Issue Types API: - ListIssueTypes: Retrieve all issue types for an organization. - CreateIssueType: Add a new issue type to an organization. - UpdateIssueType: Modify an existing issue type. - DeleteIssueType: Remove an issue type from an organization. - Add corresponding tests for each function to ensure reliability. References: - GitHub REST API documentation: https://docs.github.com/en/rest/orgs/issue-types - Related issue: https://github.com/google/go-github/issues/3523 Signed-off-by: atilsensalduz --- github/admin.go | 4 +- github/admin_orgs.go | 6 +- github/admin_stats.go | 2 +- github/admin_users.go | 8 +- github/authorizations.go | 4 +- github/enterprise_manage_ghes.go | 8 +- github/enterprise_manage_ghes_config.go | 20 +- github/enterprise_manage_ghes_maintenance.go | 4 +- github/enterprise_manage_ghes_ssh.go | 6 +- github/github-accessors.go | 40 + github/github-accessors_test.go | 55 + github/orgs_issue_types.go | 98 + github/orgs_issue_types_test.go | 238 ++ github/repos.go | 6 +- github/repos_prereceive_hooks.go | 8 +- github/users_administration.go | 8 +- openapi_operations.yaml | 2423 ++++++++++-------- 17 files changed, 1808 insertions(+), 1130 deletions(-) create mode 100644 github/orgs_issue_types.go create mode 100644 github/orgs_issue_types_test.go diff --git a/github/admin.go b/github/admin.go index adf55d64146..c15c413c578 100644 --- a/github/admin.go +++ b/github/admin.go @@ -82,7 +82,7 @@ func (m Enterprise) String() string { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/ldap#update-ldap-mapping-for-a-user // //meta:operation PATCH /admin/ldap/users/{username}/mapping func (s *AdminService) UpdateUserLDAPMapping(ctx context.Context, user string, mapping *UserLDAPMapping) (*UserLDAPMapping, *Response, error) { @@ -103,7 +103,7 @@ func (s *AdminService) UpdateUserLDAPMapping(ctx context.Context, user string, m // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/ldap#update-ldap-mapping-for-a-team // //meta:operation PATCH /admin/ldap/teams/{team_id}/mapping func (s *AdminService) UpdateTeamLDAPMapping(ctx context.Context, team int64, mapping *TeamLDAPMapping) (*TeamLDAPMapping, *Response, error) { diff --git a/github/admin_orgs.go b/github/admin_orgs.go index 8b50756b0d0..200834508db 100644 --- a/github/admin_orgs.go +++ b/github/admin_orgs.go @@ -22,7 +22,7 @@ type createOrgRequest struct { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/orgs#create-an-organization // //meta:operation POST /admin/organizations func (s *AdminService) CreateOrg(ctx context.Context, org *Organization, admin string) (*Organization, *Response, error) { @@ -61,7 +61,7 @@ type RenameOrgResponse struct { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/orgs#update-an-organization-name // //meta:operation PATCH /admin/organizations/{org} func (s *AdminService) RenameOrg(ctx context.Context, org *Organization, newName string) (*RenameOrgResponse, *Response, error) { @@ -70,7 +70,7 @@ func (s *AdminService) RenameOrg(ctx context.Context, org *Organization, newName // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/orgs#update-an-organization-name // //meta:operation PATCH /admin/organizations/{org} func (s *AdminService) RenameOrgByName(ctx context.Context, org, newName string) (*RenameOrgResponse, *Response, error) { diff --git a/github/admin_stats.go b/github/admin_stats.go index a6e406beca6..bdf51a66ce9 100644 --- a/github/admin_stats.go +++ b/github/admin_stats.go @@ -152,7 +152,7 @@ func (s RepoStats) String() string { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-all-statistics // //meta:operation GET /enterprise/stats/all func (s *AdminService) GetAdminStats(ctx context.Context) (*AdminStats, *Response, error) { diff --git a/github/admin_users.go b/github/admin_users.go index 6877cef460c..70a7b300442 100644 --- a/github/admin_users.go +++ b/github/admin_users.go @@ -20,7 +20,7 @@ type CreateUserRequest struct { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#create-a-user // //meta:operation POST /admin/users func (s *AdminService) CreateUser(ctx context.Context, userReq CreateUserRequest) (*User, *Response, error) { @@ -42,7 +42,7 @@ func (s *AdminService) CreateUser(ctx context.Context, userReq CreateUserRequest // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#delete-a-user // //meta:operation DELETE /admin/users/{username} func (s *AdminService) DeleteUser(ctx context.Context, username string) (*Response, error) { @@ -95,7 +95,7 @@ type UserAuthorization struct { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#create-an-impersonation-oauth-token // //meta:operation POST /admin/users/{username}/authorizations func (s *AdminService) CreateUserImpersonation(ctx context.Context, username string, opts *ImpersonateUserOptions) (*UserAuthorization, *Response, error) { @@ -117,7 +117,7 @@ func (s *AdminService) CreateUserImpersonation(ctx context.Context, username str // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#delete-an-impersonation-oauth-token // //meta:operation DELETE /admin/users/{username}/authorizations func (s *AdminService) DeleteUserImpersonation(ctx context.Context, username string) (*Response, error) { diff --git a/github/authorizations.go b/github/authorizations.go index 8b8a67d5524..7db45553292 100644 --- a/github/authorizations.go +++ b/github/authorizations.go @@ -257,7 +257,7 @@ func (s *AuthorizationsService) DeleteGrant(ctx context.Context, clientID, acces // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#create-an-impersonation-oauth-token // //meta:operation POST /admin/users/{username}/authorizations func (s *AuthorizationsService) CreateImpersonation(ctx context.Context, username string, authReq *AuthorizationRequest) (*Authorization, *Response, error) { @@ -279,7 +279,7 @@ func (s *AuthorizationsService) CreateImpersonation(ctx context.Context, usernam // // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#delete-an-impersonation-oauth-token // //meta:operation DELETE /admin/users/{username}/authorizations func (s *AuthorizationsService) DeleteImpersonation(ctx context.Context, username string) (*Response, error) { diff --git a/github/enterprise_manage_ghes.go b/github/enterprise_manage_ghes.go index e14836eb02e..a796791c42c 100644 --- a/github/enterprise_manage_ghes.go +++ b/github/enterprise_manage_ghes.go @@ -74,7 +74,7 @@ type ReleaseVersion struct { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-system-requirement-check-results-for-configured-cluster-nodes // //meta:operation GET /manage/v1/checks/system-requirements func (s *EnterpriseService) CheckSystemRequirements(ctx context.Context) (*SystemRequirements, *Response, error) { @@ -95,7 +95,7 @@ func (s *EnterpriseService) CheckSystemRequirements(ctx context.Context) (*Syste // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-status-of-services-running-on-all-cluster-nodes // //meta:operation GET /manage/v1/cluster/status func (s *EnterpriseService) ClusterStatus(ctx context.Context) (*ClusterStatus, *Response, error) { @@ -116,7 +116,7 @@ func (s *EnterpriseService) ClusterStatus(ctx context.Context) (*ClusterStatus, // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-status-of-services-running-on-all-replica-nodes // //meta:operation GET /manage/v1/replication/status func (s *EnterpriseService) ReplicationStatus(ctx context.Context, opts *NodeQueryOptions) (*ClusterStatus, *Response, error) { @@ -140,7 +140,7 @@ func (s *EnterpriseService) ReplicationStatus(ctx context.Context, opts *NodeQue // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-all-ghes-release-versions-for-all-nodes // //meta:operation GET /manage/v1/version func (s *EnterpriseService) GetNodeReleaseVersions(ctx context.Context, opts *NodeQueryOptions) ([]*NodeReleaseVersion, *Response, error) { diff --git a/github/enterprise_manage_ghes_config.go b/github/enterprise_manage_ghes_config.go index 10fb8590e4f..d675aeca07c 100644 --- a/github/enterprise_manage_ghes_config.go +++ b/github/enterprise_manage_ghes_config.go @@ -305,7 +305,7 @@ type NodeDetails struct { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#list-events-from-ghe-config-apply // //meta:operation GET /manage/v1/config/apply/events func (s *EnterpriseService) ConfigApplyEvents(ctx context.Context, opts *ConfigApplyEventsOptions) (*ConfigApplyEvents, *Response, error) { @@ -330,7 +330,7 @@ func (s *EnterpriseService) ConfigApplyEvents(ctx context.Context, opts *ConfigA // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#initialize-instance-configuration-with-license-and-password // //meta:operation POST /manage/v1/config/init func (s *EnterpriseService) InitialConfig(ctx context.Context, license, password string) (*Response, error) { @@ -351,7 +351,7 @@ func (s *EnterpriseService) InitialConfig(ctx context.Context, license, password // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-enterprise-license-information // //meta:operation GET /manage/v1/config/license func (s *EnterpriseService) License(ctx context.Context) ([]*LicenseStatus, *Response, error) { @@ -372,7 +372,7 @@ func (s *EnterpriseService) License(ctx context.Context) ([]*LicenseStatus, *Res // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#upload-an-enterprise-license // //meta:operation PUT /manage/v1/config/license func (s *EnterpriseService) UploadLicense(ctx context.Context, license string) (*Response, error) { @@ -390,7 +390,7 @@ func (s *EnterpriseService) UploadLicense(ctx context.Context, license string) ( // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#check-a-license // //meta:operation GET /manage/v1/config/license/check func (s *EnterpriseService) LicenseStatus(ctx context.Context) ([]*LicenseCheck, *Response, error) { @@ -412,7 +412,7 @@ func (s *EnterpriseService) LicenseStatus(ctx context.Context) ([]*LicenseCheck, // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-ghes-node-metadata-for-all-nodes // //meta:operation GET /manage/v1/config/nodes func (s *EnterpriseService) NodeMetadata(ctx context.Context, opts *NodeQueryOptions) (*NodeMetadataStatus, *Response, error) { @@ -436,7 +436,7 @@ func (s *EnterpriseService) NodeMetadata(ctx context.Context, opts *NodeQueryOpt // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-ghes-settings // //meta:operation GET /manage/v1/config/settings func (s *EnterpriseService) Settings(ctx context.Context) (*ConfigSettings, *Response, error) { @@ -457,7 +457,7 @@ func (s *EnterpriseService) Settings(ctx context.Context) (*ConfigSettings, *Res // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#set-settings // //meta:operation PUT /manage/v1/config/settings func (s *EnterpriseService) UpdateSettings(ctx context.Context, opts *ConfigSettings) (*Response, error) { @@ -476,7 +476,7 @@ func (s *EnterpriseService) UpdateSettings(ctx context.Context, opts *ConfigSett // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#trigger-a-ghe-config-apply-run // //meta:operation POST /manage/v1/config/apply func (s *EnterpriseService) ConfigApply(ctx context.Context, opts *ConfigApplyOptions) (*ConfigApplyOptions, *Response, error) { @@ -497,7 +497,7 @@ func (s *EnterpriseService) ConfigApply(ctx context.Context, opts *ConfigApplyOp // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-status-of-a-ghe-config-apply-run // //meta:operation GET /manage/v1/config/apply func (s *EnterpriseService) ConfigApplyStatus(ctx context.Context, opts *ConfigApplyOptions) (*ConfigApplyStatus, *Response, error) { diff --git a/github/enterprise_manage_ghes_maintenance.go b/github/enterprise_manage_ghes_maintenance.go index 3b1de92df13..2d7e76b4a16 100644 --- a/github/enterprise_manage_ghes_maintenance.go +++ b/github/enterprise_manage_ghes_maintenance.go @@ -46,7 +46,7 @@ type MaintenanceOptions struct { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-status-of-maintenance-mode // //meta:operation GET /manage/v1/maintenance func (s *EnterpriseService) GetMaintenanceStatus(ctx context.Context, opts *NodeQueryOptions) ([]*MaintenanceStatus, *Response, error) { @@ -71,7 +71,7 @@ func (s *EnterpriseService) GetMaintenanceStatus(ctx context.Context, opts *Node // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#set-the-status-of-maintenance-mode // //meta:operation POST /manage/v1/maintenance func (s *EnterpriseService) CreateMaintenance(ctx context.Context, enable bool, opts *MaintenanceOptions) ([]*MaintenanceOperationStatus, *Response, error) { diff --git a/github/enterprise_manage_ghes_ssh.go b/github/enterprise_manage_ghes_ssh.go index 77d25216593..e1f20a5c06a 100644 --- a/github/enterprise_manage_ghes_ssh.go +++ b/github/enterprise_manage_ghes_ssh.go @@ -31,7 +31,7 @@ type ClusterSSHKey struct { // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#delete-a-ssh-key // //meta:operation DELETE /manage/v1/access/ssh func (s *EnterpriseService) DeleteSSHKey(ctx context.Context, key string) ([]*SSHKeyStatus, *Response, error) { @@ -55,7 +55,7 @@ func (s *EnterpriseService) DeleteSSHKey(ctx context.Context, key string) ([]*SS // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-configured-ssh-keys // //meta:operation GET /manage/v1/access/ssh func (s *EnterpriseService) GetSSHKey(ctx context.Context) ([]*ClusterSSHKey, *Response, error) { @@ -76,7 +76,7 @@ func (s *EnterpriseService) GetSSHKey(ctx context.Context) ([]*ClusterSSHKey, *R // 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 +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#set-a-new-ssh-key // //meta:operation POST /manage/v1/access/ssh func (s *EnterpriseService) CreateSSHKey(ctx context.Context, key string) ([]*SSHKeyStatus, *Response, error) { diff --git a/github/github-accessors.go b/github/github-accessors.go index 6270bc1fc6c..7d378b1ec7d 100644 --- a/github/github-accessors.go +++ b/github/github-accessors.go @@ -5902,6 +5902,46 @@ func (c *CreateOrUpdateCustomRepoRoleOptions) GetName() string { return *c.Name } +// GetColor returns the Color field if it's non-nil, zero value otherwise. +func (c *CreateOrUpdateIssueTypesOptions) GetColor() string { + if c == nil || c.Color == nil { + return "" + } + return *c.Color +} + +// GetDescription returns the Description field if it's non-nil, zero value otherwise. +func (c *CreateOrUpdateIssueTypesOptions) GetDescription() string { + if c == nil || c.Description == nil { + return "" + } + return *c.Description +} + +// GetIsEnabled returns the IsEnabled field if it's non-nil, zero value otherwise. +func (c *CreateOrUpdateIssueTypesOptions) GetIsEnabled() bool { + if c == nil || c.IsEnabled == nil { + return false + } + return *c.IsEnabled +} + +// GetIsPrivate returns the IsPrivate field if it's non-nil, zero value otherwise. +func (c *CreateOrUpdateIssueTypesOptions) GetIsPrivate() bool { + if c == nil || c.IsPrivate == nil { + return false + } + return *c.IsPrivate +} + +// GetName returns the Name field if it's non-nil, zero value otherwise. +func (c *CreateOrUpdateIssueTypesOptions) GetName() string { + if c == nil || c.Name == nil { + return "" + } + return *c.Name +} + // GetBaseRole returns the BaseRole field if it's non-nil, zero value otherwise. func (c *CreateOrUpdateOrgRoleOptions) GetBaseRole() string { if c == nil || c.BaseRole == nil { diff --git a/github/github-accessors_test.go b/github/github-accessors_test.go index b3be0c11f27..a4995a16786 100644 --- a/github/github-accessors_test.go +++ b/github/github-accessors_test.go @@ -7688,6 +7688,61 @@ func TestCreateOrUpdateCustomRepoRoleOptions_GetName(tt *testing.T) { c.GetName() } +func TestCreateOrUpdateIssueTypesOptions_GetColor(tt *testing.T) { + tt.Parallel() + var zeroValue string + c := &CreateOrUpdateIssueTypesOptions{Color: &zeroValue} + c.GetColor() + c = &CreateOrUpdateIssueTypesOptions{} + c.GetColor() + c = nil + c.GetColor() +} + +func TestCreateOrUpdateIssueTypesOptions_GetDescription(tt *testing.T) { + tt.Parallel() + var zeroValue string + c := &CreateOrUpdateIssueTypesOptions{Description: &zeroValue} + c.GetDescription() + c = &CreateOrUpdateIssueTypesOptions{} + c.GetDescription() + c = nil + c.GetDescription() +} + +func TestCreateOrUpdateIssueTypesOptions_GetIsEnabled(tt *testing.T) { + tt.Parallel() + var zeroValue bool + c := &CreateOrUpdateIssueTypesOptions{IsEnabled: &zeroValue} + c.GetIsEnabled() + c = &CreateOrUpdateIssueTypesOptions{} + c.GetIsEnabled() + c = nil + c.GetIsEnabled() +} + +func TestCreateOrUpdateIssueTypesOptions_GetIsPrivate(tt *testing.T) { + tt.Parallel() + var zeroValue bool + c := &CreateOrUpdateIssueTypesOptions{IsPrivate: &zeroValue} + c.GetIsPrivate() + c = &CreateOrUpdateIssueTypesOptions{} + c.GetIsPrivate() + c = nil + c.GetIsPrivate() +} + +func TestCreateOrUpdateIssueTypesOptions_GetName(tt *testing.T) { + tt.Parallel() + var zeroValue string + c := &CreateOrUpdateIssueTypesOptions{Name: &zeroValue} + c.GetName() + c = &CreateOrUpdateIssueTypesOptions{} + c.GetName() + c = nil + c.GetName() +} + func TestCreateOrUpdateOrgRoleOptions_GetBaseRole(tt *testing.T) { tt.Parallel() var zeroValue string diff --git a/github/orgs_issue_types.go b/github/orgs_issue_types.go new file mode 100644 index 00000000000..101d4830fcf --- /dev/null +++ b/github/orgs_issue_types.go @@ -0,0 +1,98 @@ +// Copyright 2025 The go-github AUTHORS. All rights reserved. +// +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package github + +import ( + "context" + "fmt" +) + +type CreateOrUpdateIssueTypesOptions struct { + Name *string `json:"name"` // Name of the issue type. (Required.) + IsEnabled *bool `json:"is_enabled"` // Whether or not the issue type is enabled at the organization level. (Required.) + IsPrivate *bool `json:"is_private,omitempty"` // Whether or not the issue type is restricted to issues in private repositories. (Optional.) + Description *string `json:"description,omitempty"` // Description of the issue type. (Optional.) + Color *string `json:"color,omitempty"` // Color for the issue type. Can be one of "gray", "blue", green "orange", "red", "pink", "purple", "null". (Optional.) +} + +// ListIssueTypes lists all issue types for an organization. +// +// GitHub API docs: https://docs.github.com/rest/orgs/issue-types#list-issue-types-for-an-organization +// +//meta:operation GET /orgs/{org}/issue-types +func (s *OrganizationsService) ListIssueTypes(ctx context.Context, org string) ([]*IssueType, *Response, error) { + u := fmt.Sprintf("orgs/%v/issue-types", org) + + req, err := s.client.NewRequest("GET", u, nil) + if err != nil { + return nil, nil, err + } + + var issueTypes []*IssueType + resp, err := s.client.Do(ctx, req, &issueTypes) + if err != nil { + return nil, resp, err + } + + return issueTypes, resp, nil +} + +// CreateIssueType creates a new issue type for an organization. +// +// GitHub API docs: https://docs.github.com/rest/orgs/issue-types#create-issue-type-for-an-organization +// +//meta:operation POST /orgs/{org}/issue-types +func (s *OrganizationsService) CreateIssueType(ctx context.Context, org string, opt *CreateOrUpdateIssueTypesOptions) (*IssueType, *Response, error) { + u := fmt.Sprintf("orgs/%v/issue-types", org) + req, err := s.client.NewRequest("POST", u, opt) + if err != nil { + return nil, nil, err + } + + issueType := new(IssueType) + resp, err := s.client.Do(ctx, req, issueType) + if err != nil { + return nil, resp, err + } + + return issueType, resp, nil +} + +// UpdateIssueType updates GitHub Pages for the named repo. +// +// GitHub API docs: https://docs.github.com/rest/orgs/issue-types#update-issue-type-for-an-organization +// +//meta:operation PUT /orgs/{org}/issue-types/{issue_type_id} +func (s *OrganizationsService) UpdateIssueType(ctx context.Context, org string, issueTypeID int64, opt *CreateOrUpdateIssueTypesOptions) (*IssueType, *Response, error) { + u := fmt.Sprintf("orgs/%v/issue-types/%v", org, issueTypeID) + req, err := s.client.NewRequest("PUT", u, opt) + if err != nil { + return nil, nil, err + } + + issueType := new(IssueType) + resp, err := s.client.Do(ctx, req, issueType) + if err != nil { + return nil, resp, err + } + + return issueType, resp, nil +} + +// DeleteIssueType deletes an issue type for an organization. +// +// GitHub API docs: https://docs.github.com/rest/orgs/issue-types#delete-issue-type-for-an-organization +// +//meta:operation DELETE /orgs/{org}/issue-types/{issue_type_id} +func (s *OrganizationsService) DeleteIssueType(ctx context.Context, org string, issueTypeID int64) (*Response, error) { + u := fmt.Sprintf("orgs/%v/issue-types/%d", org, issueTypeID) + req, err := s.client.NewRequest("DELETE", u, nil) + if err != nil { + return nil, err + } + + return s.client.Do(ctx, req, nil) +} diff --git a/github/orgs_issue_types_test.go b/github/orgs_issue_types_test.go new file mode 100644 index 00000000000..b262f4da9a9 --- /dev/null +++ b/github/orgs_issue_types_test.go @@ -0,0 +1,238 @@ +// Copyright 2015 The go-github AUTHORS. All rights reserved. +// +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package github + +import ( + "context" + "encoding/json" + "fmt" + "net/http" + "testing" + "time" + + "github.com/google/go-cmp/cmp" +) + +func TestOrganizationsService_ListIssueTypes(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/issue-types", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "GET") + fmt.Fprint(w, `[ + { + "id": 410, + "node_id": "IT_kwDNAd3NAZo", + "name": "Task", + "description": "A specific piece of work", + "created_at": "2024-12-11T14:39:09Z", + "updated_at": "2024-12-11T14:39:09Z" + }, + { + "id": 411, + "node_id": "IT_kwDNAd3NAZs", + "name": "Bug", + "description": "An unexpected problem or behavior", + "created_at": "2024-12-11T14:39:09Z", + "updated_at": "2024-12-11T14:39:09Z" + } + ]`) + }) + + ctx := context.Background() + issueTypes, _, err := client.Organizations.ListIssueTypes(ctx, "o") + if err != nil { + t.Errorf("Organizations.ListIssueTypes returned error: %v", err) + } + + want := []*IssueType{ + { + ID: Ptr(int64(410)), + NodeID: Ptr("IT_kwDNAd3NAZo"), + Name: Ptr("Task"), + Description: Ptr("A specific piece of work"), + CreatedAt: Ptr(Timestamp{time.Date(2024, 12, 11, 14, 39, 9, 0, time.UTC)}), + UpdatedAt: Ptr(Timestamp{time.Date(2024, 12, 11, 14, 39, 9, 0, time.UTC)}), + }, + { + ID: Ptr(int64(411)), + NodeID: Ptr("IT_kwDNAd3NAZs"), + Name: Ptr("Bug"), + Description: Ptr("An unexpected problem or behavior"), + CreatedAt: Ptr(Timestamp{time.Date(2024, 12, 11, 14, 39, 9, 0, time.UTC)}), + UpdatedAt: Ptr(Timestamp{time.Date(2024, 12, 11, 14, 39, 9, 0, time.UTC)})}, + } + if !cmp.Equal(issueTypes, want) { + t.Errorf("Organizations.ListIssueTypes returned %+v, want %+v", issueTypes, want) + } + + const methodName = "ListIssueTypes" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Organizations.ListIssueTypes(ctx, "\n") + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Organizations.ListIssueTypes(ctx, "o") + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestOrganizationsService_CreateIssueType(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + input := &CreateOrUpdateIssueTypesOptions{ + Name: Ptr("Epic"), + Description: Ptr("An issue type for a multi-week tracking of work"), + IsEnabled: Ptr(true), + Color: Ptr("green"), + IsPrivate: Ptr(true), + } + + mux.HandleFunc("/orgs/o/issue-types", func(w http.ResponseWriter, r *http.Request) { + v := new(CreateOrUpdateIssueTypesOptions) + assertNilError(t, json.NewDecoder(r.Body).Decode(v)) + + testMethod(t, r, "POST") + if !cmp.Equal(v, input) { + t.Errorf("Request body = %+v, want %+v", v, input) + } + + fmt.Fprint(w, `{ + "id": 410, + "node_id": "IT_kwDNAd3NAZo", + "name": "Epic", + "description": "An issue type for a multi-week tracking of work", + "created_at": "2024-12-11T14:39:09Z", + "updated_at": "2024-12-11T14:39:09Z" + }`) + }) + + ctx := context.Background() + issueType, _, err := client.Organizations.CreateIssueType(ctx, "o", input) + if err != nil { + t.Errorf("Organizations.CreateIssueType returned error: %v", err) + } + want := &IssueType{ + ID: Ptr(int64(410)), + NodeID: Ptr("IT_kwDNAd3NAZo"), + Name: Ptr("Epic"), + Description: Ptr("An issue type for a multi-week tracking of work"), + CreatedAt: Ptr(Timestamp{time.Date(2024, 12, 11, 14, 39, 9, 0, time.UTC)}), + UpdatedAt: Ptr(Timestamp{time.Date(2024, 12, 11, 14, 39, 9, 0, time.UTC)}), + } + + if !cmp.Equal(issueType, want) { + t.Errorf("Organizations.CreateIssueType returned %+v, want %+v", issueType, want) + } + + const methodName = "CreateIssueType" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Organizations.CreateIssueType(ctx, "\n", input) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Organizations.CreateIssueType(ctx, "o", input) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestOrganizationsService_UpdateIssueType(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + input := &CreateOrUpdateIssueTypesOptions{ + Name: Ptr("Epic"), + Description: Ptr("An issue type for a multi-week tracking of work"), + IsEnabled: Ptr(true), + Color: Ptr("green"), + IsPrivate: Ptr(true), + } + + mux.HandleFunc("/orgs/o/issue-types/410", func(w http.ResponseWriter, r *http.Request) { + v := new(CreateOrUpdateIssueTypesOptions) + assertNilError(t, json.NewDecoder(r.Body).Decode(v)) + + testMethod(t, r, "PUT") + if !cmp.Equal(v, input) { + t.Errorf("Request body = %+v, want %+v", v, input) + } + + fmt.Fprint(w, `{ + "id": 410, + "node_id": "IT_kwDNAd3NAZo", + "name": "Epic", + "description": "An issue type for a multi-week tracking of work", + "created_at": "2024-12-11T14:39:09Z", + "updated_at": "2024-12-11T14:39:09Z" + }`) + }) + + ctx := context.Background() + issueType, _, err := client.Organizations.UpdateIssueType(ctx, "o", 410, input) + if err != nil { + t.Errorf("Organizations.UpdateIssueType returned error: %v", err) + } + want := &IssueType{ + ID: Ptr(int64(410)), + NodeID: Ptr("IT_kwDNAd3NAZo"), + Name: Ptr("Epic"), + Description: Ptr("An issue type for a multi-week tracking of work"), + CreatedAt: Ptr(Timestamp{time.Date(2024, 12, 11, 14, 39, 9, 0, time.UTC)}), + UpdatedAt: Ptr(Timestamp{time.Date(2024, 12, 11, 14, 39, 9, 0, time.UTC)}), + } + + if !cmp.Equal(issueType, want) { + t.Errorf("Organizations.UpdateIssueType returned %+v, want %+v", issueType, want) + } + + const methodName = "UpdateIssueType" + testBadOptions(t, methodName, func() (err error) { + _, _, err = client.Organizations.UpdateIssueType(ctx, "\n", -1, input) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + got, resp, err := client.Organizations.UpdateIssueType(ctx, "o", 410, input) + if got != nil { + t.Errorf("testNewRequestAndDoFailure %v = %#v, want nil", methodName, got) + } + return resp, err + }) +} + +func TestOrganizationsService_DeleteIssueType(t *testing.T) { + t.Parallel() + client, mux, _ := setup(t) + + mux.HandleFunc("/orgs/o/issue-types/410", func(w http.ResponseWriter, r *http.Request) { + testMethod(t, r, "DELETE") + }) + + ctx := context.Background() + _, err := client.Organizations.DeleteIssueType(ctx, "o", 410) + if err != nil { + t.Errorf("Organizations.DeleteHook returned error: %v", err) + } + + const methodName = "DeleteIssueType" + testBadOptions(t, methodName, func() (err error) { + _, err = client.Organizations.DeleteIssueType(ctx, "\n", -1) + return err + }) + + testNewRequestAndDoFailure(t, methodName, client, func() (*Response, error) { + return client.Organizations.DeleteIssueType(ctx, "o", 410) + }) +} diff --git a/github/repos.go b/github/repos.go index 9faed401f87..c4ef5d59877 100644 --- a/github/repos.go +++ b/github/repos.go @@ -833,7 +833,7 @@ func (s *RepositoriesService) DisableVulnerabilityAlerts(ctx context.Context, ow // GetAutomatedSecurityFixes checks if the automated security fixes for a repository are enabled. // -// GitHub API docs: https://docs.github.com/rest/repos/repos#check-if-automated-security-fixes-are-enabled-for-a-repository +// GitHub API docs: https://docs.github.com/rest/repos/repos#check-if-dependabot-security-updates-are-enabled-for-a-repository // //meta:operation GET /repos/{owner}/{repo}/automated-security-fixes func (s *RepositoriesService) GetAutomatedSecurityFixes(ctx context.Context, owner, repository string) (*AutomatedSecurityFixes, *Response, error) { @@ -854,7 +854,7 @@ func (s *RepositoriesService) GetAutomatedSecurityFixes(ctx context.Context, own // EnableAutomatedSecurityFixes enables the automated security fixes for a repository. // -// GitHub API docs: https://docs.github.com/rest/repos/repos#enable-automated-security-fixes +// GitHub API docs: https://docs.github.com/rest/repos/repos#enable-dependabot-security-updates // //meta:operation PUT /repos/{owner}/{repo}/automated-security-fixes func (s *RepositoriesService) EnableAutomatedSecurityFixes(ctx context.Context, owner, repository string) (*Response, error) { @@ -870,7 +870,7 @@ func (s *RepositoriesService) EnableAutomatedSecurityFixes(ctx context.Context, // DisableAutomatedSecurityFixes disables vulnerability alerts and the dependency graph for a repository. // -// GitHub API docs: https://docs.github.com/rest/repos/repos#disable-automated-security-fixes +// GitHub API docs: https://docs.github.com/rest/repos/repos#disable-dependabot-security-updates // //meta:operation DELETE /repos/{owner}/{repo}/automated-security-fixes func (s *RepositoriesService) DisableAutomatedSecurityFixes(ctx context.Context, owner, repository string) (*Response, error) { diff --git a/github/repos_prereceive_hooks.go b/github/repos_prereceive_hooks.go index e97075d020c..82f6ba0f729 100644 --- a/github/repos_prereceive_hooks.go +++ b/github/repos_prereceive_hooks.go @@ -24,7 +24,7 @@ func (p PreReceiveHook) String() string { // ListPreReceiveHooks lists all pre-receive hooks for the specified repository. // -// GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/repo-pre-receive-hooks#list-pre-receive-hooks-for-a-repository +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/repo-pre-receive-hooks#list-pre-receive-hooks-for-a-repository // //meta:operation GET /repos/{owner}/{repo}/pre-receive-hooks func (s *RepositoriesService) ListPreReceiveHooks(ctx context.Context, owner, repo string, opts *ListOptions) ([]*PreReceiveHook, *Response, error) { @@ -53,7 +53,7 @@ func (s *RepositoriesService) ListPreReceiveHooks(ctx context.Context, owner, re // GetPreReceiveHook returns a single specified pre-receive hook. // -// GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/repo-pre-receive-hooks#get-a-pre-receive-hook-for-a-repository +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/repo-pre-receive-hooks#get-a-pre-receive-hook-for-a-repository // //meta:operation GET /repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id} func (s *RepositoriesService) GetPreReceiveHook(ctx context.Context, owner, repo string, id int64) (*PreReceiveHook, *Response, error) { @@ -77,7 +77,7 @@ func (s *RepositoriesService) GetPreReceiveHook(ctx context.Context, owner, repo // UpdatePreReceiveHook updates a specified pre-receive hook. // -// GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/repo-pre-receive-hooks#update-pre-receive-hook-enforcement-for-a-repository +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/repo-pre-receive-hooks#update-pre-receive-hook-enforcement-for-a-repository // //meta:operation PATCH /repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id} func (s *RepositoriesService) UpdatePreReceiveHook(ctx context.Context, owner, repo string, id int64, hook *PreReceiveHook) (*PreReceiveHook, *Response, error) { @@ -101,7 +101,7 @@ func (s *RepositoriesService) UpdatePreReceiveHook(ctx context.Context, owner, r // DeletePreReceiveHook deletes a specified pre-receive hook. // -// GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/repo-pre-receive-hooks#remove-pre-receive-hook-enforcement-for-a-repository +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/repo-pre-receive-hooks#remove-pre-receive-hook-enforcement-for-a-repository // //meta:operation DELETE /repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id} func (s *RepositoriesService) DeletePreReceiveHook(ctx context.Context, owner, repo string, id int64) (*Response, error) { diff --git a/github/users_administration.go b/github/users_administration.go index c0aa3b6493d..67fef61faa4 100644 --- a/github/users_administration.go +++ b/github/users_administration.go @@ -12,7 +12,7 @@ import ( // PromoteSiteAdmin promotes a user to a site administrator of a GitHub Enterprise instance. // -// GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#promote-a-user-to-be-a-site-administrator +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#promote-a-user-to-be-a-site-administrator // //meta:operation PUT /users/{username}/site_admin func (s *UsersService) PromoteSiteAdmin(ctx context.Context, user string) (*Response, error) { @@ -28,7 +28,7 @@ func (s *UsersService) PromoteSiteAdmin(ctx context.Context, user string) (*Resp // DemoteSiteAdmin demotes a user from site administrator of a GitHub Enterprise instance. // -// GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#demote-a-site-administrator +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#demote-a-site-administrator // //meta:operation DELETE /users/{username}/site_admin func (s *UsersService) DemoteSiteAdmin(ctx context.Context, user string) (*Response, error) { @@ -49,7 +49,7 @@ type UserSuspendOptions struct { // Suspend a user on a GitHub Enterprise instance. // -// GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#suspend-a-user +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#suspend-a-user // //meta:operation PUT /users/{username}/suspended func (s *UsersService) Suspend(ctx context.Context, user string, opts *UserSuspendOptions) (*Response, error) { @@ -65,7 +65,7 @@ func (s *UsersService) Suspend(ctx context.Context, user string, opts *UserSuspe // Unsuspend a user on a GitHub Enterprise instance. // -// GitHub API docs: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#unsuspend-a-user +// GitHub API docs: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#unsuspend-a-user // //meta:operation DELETE /users/{username}/suspended func (s *UsersService) Unsuspend(ctx context.Context, user string) (*Response, error) { diff --git a/openapi_operations.yaml b/openapi_operations.yaml index d144ca7e38c..cf8ff0a26a9 100644 --- a/openapi_operations.yaml +++ b/openapi_operations.yaml @@ -47,260 +47,260 @@ operation_overrides: documentation_url: https://docs.github.com/rest/pages/pages#request-a-github-pages-build - name: GET /repos/{owner}/{repo}/pages/builds/{build_id} documentation_url: https://docs.github.com/rest/pages/pages#get-github-pages-build -openapi_commit: 8031023b31a852778532c5fa688b8bb6bcbab9d6 +openapi_commit: fd8b14666d8a4e34411bee8dbd103edc8b81d0e3 openapi_operations: - name: GET / documentation_url: https://docs.github.com/rest/meta/meta#github-api-root openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /admin/hooks - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/global-webhooks#list-global-webhooks + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/global-webhooks#list-global-webhooks openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/hooks - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/global-webhooks#create-a-global-webhook + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/global-webhooks#create-a-global-webhook openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /admin/hooks/{hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/global-webhooks#delete-a-global-webhook + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/global-webhooks#delete-a-global-webhook openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /admin/hooks/{hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/global-webhooks#get-a-global-webhook + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/global-webhooks#get-a-global-webhook openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /admin/hooks/{hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/global-webhooks#update-a-global-webhook + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/global-webhooks#update-a-global-webhook openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/hooks/{hook_id}/pings - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/global-webhooks#ping-a-global-webhook + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/global-webhooks#ping-a-global-webhook openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /admin/keys - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#list-public-keys + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#list-public-keys openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /admin/keys/{key_ids} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#delete-a-public-key + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#delete-a-public-key openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /admin/ldap/teams/{team_id}/mapping - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/ldap#update-ldap-mapping-for-a-team + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/ldap#update-ldap-mapping-for-a-team openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/ldap/teams/{team_id}/sync - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/ldap#sync-ldap-mapping-for-a-team + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/ldap#sync-ldap-mapping-for-a-team openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /admin/ldap/users/{username}/mapping - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/ldap#update-ldap-mapping-for-a-user + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/ldap#update-ldap-mapping-for-a-user openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/ldap/users/{username}/sync - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/ldap#sync-ldap-mapping-for-a-user + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/ldap#sync-ldap-mapping-for-a-user openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/organizations - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/orgs#create-an-organization + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/orgs#create-an-organization openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /admin/organizations/{org} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/orgs#update-an-organization-name + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/orgs#update-an-organization-name openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /admin/pre-receive-environments - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-environments#list-pre-receive-environments + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-environments#list-pre-receive-environments openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/pre-receive-environments - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-environments#create-a-pre-receive-environment + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-environments#create-a-pre-receive-environment openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /admin/pre-receive-environments/{pre_receive_environment_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-environments#delete-a-pre-receive-environment + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-environments#delete-a-pre-receive-environment openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /admin/pre-receive-environments/{pre_receive_environment_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-environments#get-a-pre-receive-environment + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-environments#get-a-pre-receive-environment openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /admin/pre-receive-environments/{pre_receive_environment_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-environments#update-a-pre-receive-environment + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-environments#update-a-pre-receive-environment openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/pre-receive-environments/{pre_receive_environment_id}/downloads - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-environments#start-a-pre-receive-environment-download + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-environments#start-a-pre-receive-environment-download openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /admin/pre-receive-environments/{pre_receive_environment_id}/downloads/latest - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-environments#get-the-download-status-for-a-pre-receive-environment + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-environments#get-the-download-status-for-a-pre-receive-environment openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /admin/pre-receive-hooks - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-hooks#list-pre-receive-hooks + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-hooks#list-pre-receive-hooks openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/pre-receive-hooks - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-hooks#create-a-pre-receive-hook + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-hooks#create-a-pre-receive-hook openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /admin/pre-receive-hooks/{pre_receive_hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-hooks#delete-a-pre-receive-hook + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-hooks#delete-a-pre-receive-hook openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /admin/pre-receive-hooks/{pre_receive_hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-hooks#get-a-pre-receive-hook + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-hooks#get-a-pre-receive-hook openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /admin/pre-receive-hooks/{pre_receive_hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/pre-receive-hooks#update-a-pre-receive-hook + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/pre-receive-hooks#update-a-pre-receive-hook openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /admin/tokens - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#list-personal-access-tokens + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#list-personal-access-tokens openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /admin/tokens/{token_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#delete-a-personal-access-token + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#delete-a-personal-access-token openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/users - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#create-a-user + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#create-a-user openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /admin/users/{username} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#delete-a-user + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#delete-a-user openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /admin/users/{username} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#update-the-username-for-a-user + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#update-the-username-for-a-user openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /admin/users/{username}/authorizations - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#delete-an-impersonation-oauth-token + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#delete-an-impersonation-oauth-token openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /admin/users/{username}/authorizations - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#create-an-impersonation-oauth-token + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#create-an-impersonation-oauth-token openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /advisories documentation_url: https://docs.github.com/rest/security-advisories/global-advisories#list-global-security-advisories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /advisories/{ghsa_id} documentation_url: https://docs.github.com/rest/security-advisories/global-advisories#get-a-global-security-advisory openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /app documentation_url: https://docs.github.com/rest/apps/apps#get-the-authenticated-app openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /app-manifests/{code}/conversions documentation_url: https://docs.github.com/rest/apps/apps#create-a-github-app-from-a-manifest openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /app/hook/config documentation_url: https://docs.github.com/rest/apps/webhooks#get-a-webhook-configuration-for-an-app openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /app/hook/config documentation_url: https://docs.github.com/rest/apps/webhooks#update-a-webhook-configuration-for-an-app openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /app/hook/deliveries documentation_url: https://docs.github.com/rest/apps/webhooks#list-deliveries-for-an-app-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /app/hook/deliveries/{delivery_id} documentation_url: https://docs.github.com/rest/apps/webhooks#get-a-delivery-for-an-app-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /app/hook/deliveries/{delivery_id}/attempts documentation_url: https://docs.github.com/rest/apps/webhooks#redeliver-a-delivery-for-an-app-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /app/installation-requests documentation_url: https://docs.github.com/rest/apps/apps#list-installation-requests-for-the-authenticated-app openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /app/installations documentation_url: https://docs.github.com/rest/apps/apps#list-installations-for-the-authenticated-app openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /app/installations/{installation_id} documentation_url: https://docs.github.com/rest/apps/apps#delete-an-installation-for-the-authenticated-app openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /app/installations/{installation_id} documentation_url: https://docs.github.com/rest/apps/apps#get-an-installation-for-the-authenticated-app openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /app/installations/{installation_id}/access_tokens documentation_url: https://docs.github.com/rest/apps/apps#create-an-installation-access-token-for-an-app openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /app/installations/{installation_id}/suspended documentation_url: https://docs.github.com/rest/apps/apps#unsuspend-an-app-installation openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /app/installations/{installation_id}/suspended documentation_url: https://docs.github.com/rest/apps/apps#suspend-an-app-installation openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /applications/grants - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#list-your-grants + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#list-your-grants openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /applications/grants/{grant_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#delete-a-grant + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#delete-a-grant openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /applications/grants/{grant_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#get-a-single-grant + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#get-a-single-grant openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /applications/{client_id}/grant documentation_url: https://docs.github.com/rest/apps/oauth-applications#delete-an-app-authorization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /applications/{client_id}/grants/{access_token} documentation_url: https://docs.github.com/enterprise-server@3.3/rest/reference/apps#revoke-a-grant-for-an-application openapi_files: @@ -310,25 +310,25 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /applications/{client_id}/token documentation_url: https://docs.github.com/rest/apps/oauth-applications#reset-a-token openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /applications/{client_id}/token documentation_url: https://docs.github.com/rest/apps/oauth-applications#check-a-token openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /applications/{client_id}/token/scoped documentation_url: https://docs.github.com/rest/apps/apps#create-a-scoped-access-token openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /applications/{client_id}/tokens/{access_token} documentation_url: https://docs.github.com/enterprise-server@3.3/rest/reference/apps#revoke-an-authorization-for-an-application openapi_files: @@ -346,7 +346,7 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /assignments/{assignment_id} documentation_url: https://docs.github.com/rest/classroom/classroom#get-an-assignment openapi_files: @@ -363,33 +363,33 @@ openapi_operations: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - name: GET /authorizations - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#list-your-authorizations + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#list-your-authorizations openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /authorizations - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#create-a-new-authorization + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#create-a-new-authorization openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /authorizations/clients/{client_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#get-or-create-an-authorization-for-a-specific-app + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#get-or-create-an-authorization-for-a-specific-app openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /authorizations/clients/{client_id}/{fingerprint} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#get-or-create-an-authorization-for-a-specific-app-and-fingerprint + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#get-or-create-an-authorization-for-a-specific-app-and-fingerprint openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /authorizations/{authorization_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#delete-an-authorization + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#delete-an-authorization openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /authorizations/{authorization_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#get-a-single-authorization + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#get-a-single-authorization openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /authorizations/{authorization_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/oauth-authorizations/oauth-authorizations#update-an-existing-authorization + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/oauth-authorizations/oauth-authorizations#update-an-existing-authorization openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /classrooms documentation_url: https://docs.github.com/rest/classroom/classroom#list-classrooms openapi_files: @@ -410,100 +410,140 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /codes_of_conduct/{key} documentation_url: https://docs.github.com/rest/codes-of-conduct/codes-of-conduct#get-a-code-of-conduct openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /emojis documentation_url: https://docs.github.com/rest/emojis/emojis#get-emojis openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise-installation/{enterprise_or_org}/server-statistics documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/admin-stats#get-github-enterprise-server-statistics openapi_files: - descriptions/ghec/ghec.json - name: DELETE /enterprise/announcement - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/announcement#remove-the-global-announcement-banner + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/announcement#remove-the-global-announcement-banner openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/announcement - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/announcement#get-the-global-announcement-banner + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/announcement#get-the-global-announcement-banner openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /enterprise/announcement - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/announcement#set-the-global-announcement-banner + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/announcement#set-the-global-announcement-banner openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/settings/license - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/license#get-license-information + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/license#get-license-information openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/all - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-all-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-all-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/comments - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-comment-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-comment-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/gists - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-gist-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-gist-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/hooks - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-hooks-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-hooks-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/issues - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-issue-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-issue-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/milestones - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-milestone-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-milestone-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/orgs - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-organization-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-organization-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/pages - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-pages-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-pages-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/pulls - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-pull-request-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-pull-request-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/repos - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-repository-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-repository-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/security-products - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-security-products-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-security-products-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprise/stats/users - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/admin-stats#get-users-statistics + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/admin-stats#get-users-statistics openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/cache/usage documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/cache#get-github-actions-cache-usage-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/cache/usage-policy - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/actions/cache#get-github-actions-cache-usage-policy-for-an-enterprise + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/actions/cache#get-github-actions-cache-usage-policy-for-an-enterprise openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /enterprises/{enterprise}/actions/cache/usage-policy - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/actions/cache#set-github-actions-cache-usage-policy-for-an-enterprise + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/actions/cache#set-github-actions-cache-usage-policy-for-an-enterprise openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#list-github-hosted-runners-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: POST /enterprises/{enterprise}/actions/hosted-runners + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/images/github-owned + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-github-owned-images-for-github-hosted-runners-in-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/images/partner + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-partner-images-for-github-hosted-runners-in-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/limits + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-limits-on-github-hosted-runners-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/machine-sizes + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-github-hosted-runners-machine-specs-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/platforms + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-platforms-for-github-hosted-runners-in-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: DELETE /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#delete-a-github-hosted-runner-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#get-a-github-hosted-runner-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: PATCH /enterprises/{enterprise}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json - name: PUT /enterprises/{enterprise}/actions/oidc/customization/issuer documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/oidc#set-the-github-actions-oidc-custom-issuer-policy-for-an-enterprise openapi_files: @@ -512,177 +552,177 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#get-github-actions-permissions-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/permissions documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#set-github-actions-permissions-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/permissions/organizations documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#list-selected-organizations-enabled-for-github-actions-in-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/permissions/organizations documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#set-selected-organizations-enabled-for-github-actions-in-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/actions/permissions/organizations/{org_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#disable-a-selected-organization-for-github-actions-in-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/permissions/organizations/{org_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#enable-a-selected-organization-for-github-actions-in-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/permissions/selected-actions documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#get-allowed-actions-and-reusable-workflows-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/permissions/selected-actions documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#set-allowed-actions-and-reusable-workflows-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/permissions/workflow documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#get-default-workflow-permissions-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/permissions/workflow documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/permissions#set-default-workflow-permissions-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/runner-groups documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runner-groups#list-self-hosted-runner-groups-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /enterprises/{enterprise}/actions/runner-groups documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runner-groups#create-a-self-hosted-runner-group-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/actions/runner-groups/{runner_group_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runner-groups#delete-a-self-hosted-runner-group-from-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runner-groups#get-a-self-hosted-runner-group-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /enterprises/{enterprise}/actions/runner-groups/{runner_group_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runner-groups#update-a-self-hosted-runner-group-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/organizations documentation_url: 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 openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/organizations documentation_url: 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 openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/organizations/{org_id} documentation_url: 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 openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/organizations/{org_id} documentation_url: 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 openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/runners documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runner-groups#list-self-hosted-runners-in-a-group-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/runners documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runner-groups#set-self-hosted-runners-in-a-group-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/runners/{runner_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runner-groups#remove-a-self-hosted-runner-from-a-group-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/runners/{runner_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runner-groups#add-a-self-hosted-runner-to-a-group-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/runners documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#list-self-hosted-runners-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/runners/downloads documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#list-runner-applications-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /enterprises/{enterprise}/actions/runners/generate-jitconfig documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#create-configuration-for-a-just-in-time-runner-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /enterprises/{enterprise}/actions/runners/registration-token documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#create-a-registration-token-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /enterprises/{enterprise}/actions/runners/remove-token documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#create-a-remove-token-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/actions/runners/{runner_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#delete-a-self-hosted-runner-from-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/runners/{runner_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#get-a-self-hosted-runner-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#remove-all-custom-labels-from-a-self-hosted-runner-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#list-labels-for-a-self-hosted-runner-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /enterprises/{enterprise}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#add-custom-labels-to-a-self-hosted-runner-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#set-custom-labels-for-a-self-hosted-runner-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/actions/runners/{runner_id}/labels/{name} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/actions/self-hosted-runners#remove-a-custom-label-from-a-self-hosted-runner-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/announcement documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/announcement-banners/enterprises#remove-announcement-banner-from-enterprise openapi_files: @@ -699,91 +739,110 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/audit-log#get-the-audit-log-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/audit-log/stream-key documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/audit-log#get-the-audit-log-stream-key-for-encrypting-secrets openapi_files: - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/audit-log/streams documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/audit-log#list-audit-log-stream-configurations-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /enterprises/{enterprise}/audit-log/streams documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/audit-log#create-an-audit-log-streaming-configuration-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/audit-log/streams/{stream_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/audit-log#delete-an-audit-log-streaming-configuration-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/audit-log/streams/{stream_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/audit-log#list-one-audit-log-streaming-configuration-via-a-stream-id openapi_files: - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/audit-log/streams/{stream_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/audit-log#update-an-existing-audit-log-stream-configuration + openapi_files: + - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json + - name: GET /enterprises/{enterprise}/bypass-requests/push-rules + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/bypass-requests#list-push-rule-bypass-requests-within-an-enterprise openapi_files: - descriptions/ghec/ghec.json - name: GET /enterprises/{enterprise}/code-scanning/alerts documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/code-scanning/code-scanning#list-code-scanning-alerts-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/code-security/configurations documentation_url: https://docs.github.com/rest/code-security/configurations#get-code-security-configurations-for-an-enterprise openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /enterprises/{enterprise}/code-security/configurations documentation_url: https://docs.github.com/rest/code-security/configurations#create-a-code-security-configuration-for-an-enterprise openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/code-security/configurations/defaults documentation_url: https://docs.github.com/rest/code-security/configurations#get-default-code-security-configurations-for-an-enterprise openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /enterprises/{enterprise}/code-security/configurations/{configuration_id} documentation_url: https://docs.github.com/rest/code-security/configurations#delete-a-code-security-configuration-for-an-enterprise openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/code-security/configurations/{configuration_id} documentation_url: https://docs.github.com/rest/code-security/configurations#retrieve-a-code-security-configuration-of-an-enterprise openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /enterprises/{enterprise}/code-security/configurations/{configuration_id} documentation_url: https://docs.github.com/rest/code-security/configurations#update-a-custom-code-security-configuration-for-an-enterprise openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /enterprises/{enterprise}/code-security/configurations/{configuration_id}/attach documentation_url: https://docs.github.com/rest/code-security/configurations#attach-an-enterprise-configuration-to-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /enterprises/{enterprise}/code-security/configurations/{configuration_id}/defaults documentation_url: https://docs.github.com/rest/code-security/configurations#set-a-code-security-configuration-as-a-default-for-an-enterprise openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories documentation_url: https://docs.github.com/rest/code-security/configurations#get-repositories-associated-with-an-enterprise-code-security-configuration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/code_security_and_analysis documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/code-security-and-analysis#get-code-security-and-analysis-features-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /enterprises/{enterprise}/code_security_and_analysis documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/code-security-and-analysis#update-code-security-and-analysis-features-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/consumed-licenses documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/license#list-enterprise-consumed-licenses openapi_files: @@ -805,11 +864,35 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/license-sync-status documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/license#get-a-license-sync-status openapi_files: - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/network-configurations + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#list-hosted-compute-network-configurations-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: POST /enterprises/{enterprise}/network-configurations + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#create-a-hosted-compute-network-configuration-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: DELETE /enterprises/{enterprise}/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#delete-a-hosted-compute-network-configuration-from-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#get-a-hosted-compute-network-configuration-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: PATCH /enterprises/{enterprise}/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#update-a-hosted-compute-network-configuration-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/network-settings/{network_settings_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/network-configurations#get-a-hosted-compute-network-settings-resource-for-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json - name: GET /enterprises/{enterprise}/properties/schema documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/custom-properties#get-custom-properties-for-an-enterprise openapi_files: @@ -818,6 +901,10 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/custom-properties#create-or-update-custom-properties-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json + - name: PUT /enterprises/{enterprise}/properties/schema/organizations/{org}/{custom_property_name}/promote + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/custom-properties#promote-a-custom-property-to-an-enterprise + openapi_files: + - descriptions/ghec/ghec.json - name: DELETE /enterprises/{enterprise}/properties/schema/{custom_property_name} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/custom-properties#remove-a-custom-property-for-an-enterprise openapi_files: @@ -846,12 +933,20 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/rules#update-an-enterprise-repository-ruleset openapi_files: - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/rulesets/{ruleset_id}/history + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/rules#get-enterprise-ruleset-history + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /enterprises/{enterprise}/rulesets/{ruleset_id}/history/{version_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/rules#get-enterprise-ruleset-version + openapi_files: + - descriptions/ghec/ghec.json - name: GET /enterprises/{enterprise}/secret-scanning/alerts documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-an-enterprise openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/settings/billing/actions documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/billing#get-github-actions-billing-for-an-enterprise openapi_files: @@ -860,7 +955,7 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/billing#get-github-advanced-security-active-committers-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /enterprises/{enterprise}/settings/billing/cost-centers documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/billing#get-all-cost-centers-for-an-enterprise openapi_files: @@ -897,263 +992,263 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/code-security-and-analysis#enable-or-disable-a-security-feature openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /events documentation_url: https://docs.github.com/rest/activity/events#list-public-events openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /feeds documentation_url: https://docs.github.com/rest/activity/feeds#get-feeds openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists documentation_url: https://docs.github.com/rest/gists/gists#list-gists-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /gists documentation_url: https://docs.github.com/rest/gists/gists#create-a-gist openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists/public documentation_url: https://docs.github.com/rest/gists/gists#list-public-gists openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists/starred documentation_url: https://docs.github.com/rest/gists/gists#list-starred-gists openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /gists/{gist_id} documentation_url: https://docs.github.com/rest/gists/gists#delete-a-gist openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists/{gist_id} documentation_url: https://docs.github.com/rest/gists/gists#get-a-gist openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /gists/{gist_id} documentation_url: https://docs.github.com/rest/gists/gists#update-a-gist openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists/{gist_id}/comments documentation_url: https://docs.github.com/rest/gists/comments#list-gist-comments openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /gists/{gist_id}/comments documentation_url: https://docs.github.com/rest/gists/comments#create-a-gist-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /gists/{gist_id}/comments/{comment_id} documentation_url: https://docs.github.com/rest/gists/comments#delete-a-gist-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists/{gist_id}/comments/{comment_id} documentation_url: https://docs.github.com/rest/gists/comments#get-a-gist-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /gists/{gist_id}/comments/{comment_id} documentation_url: https://docs.github.com/rest/gists/comments#update-a-gist-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists/{gist_id}/commits documentation_url: https://docs.github.com/rest/gists/gists#list-gist-commits openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists/{gist_id}/forks documentation_url: https://docs.github.com/rest/gists/gists#list-gist-forks openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /gists/{gist_id}/forks documentation_url: https://docs.github.com/rest/gists/gists#fork-a-gist openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /gists/{gist_id}/star documentation_url: https://docs.github.com/rest/gists/gists#unstar-a-gist openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists/{gist_id}/star documentation_url: https://docs.github.com/rest/gists/gists#check-if-a-gist-is-starred openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /gists/{gist_id}/star documentation_url: https://docs.github.com/rest/gists/gists#star-a-gist openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gists/{gist_id}/{sha} documentation_url: https://docs.github.com/rest/gists/gists#get-a-gist-revision openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gitignore/templates documentation_url: https://docs.github.com/rest/gitignore/gitignore#get-all-gitignore-templates openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /gitignore/templates/{name} documentation_url: https://docs.github.com/rest/gitignore/gitignore#get-a-gitignore-template openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /installation/repositories documentation_url: https://docs.github.com/rest/apps/installations#list-repositories-accessible-to-the-app-installation openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /installation/token documentation_url: https://docs.github.com/rest/apps/installations#revoke-an-installation-access-token openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /issues documentation_url: https://docs.github.com/rest/issues/issues#list-issues-assigned-to-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /licenses documentation_url: https://docs.github.com/rest/licenses/licenses#get-all-commonly-used-licenses openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /licenses/{license} documentation_url: https://docs.github.com/rest/licenses/licenses#get-a-license openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /manage/v1/access/ssh - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#delete-a-ssh-key + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#delete-a-ssh-key openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/access/ssh - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-configured-ssh-keys + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-configured-ssh-keys openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /manage/v1/access/ssh - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#set-a-new-ssh-key + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#set-a-new-ssh-key openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/checks/system-requirements - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-system-requirement-check-results-for-configured-cluster-nodes + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-system-requirement-check-results-for-configured-cluster-nodes openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/cluster/status - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-status-of-services-running-on-all-cluster-nodes + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-status-of-services-running-on-all-cluster-nodes openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/config/apply - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-status-of-a-ghe-config-apply-run + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-status-of-a-ghe-config-apply-run openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /manage/v1/config/apply - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#trigger-a-ghe-config-apply-run + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#trigger-a-ghe-config-apply-run openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/config/apply/events - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#list-events-from-ghe-config-apply + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#list-events-from-ghe-config-apply openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /manage/v1/config/init - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#initialize-instance-configuration-with-license-and-password + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#initialize-instance-configuration-with-license-and-password openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/config/license - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-enterprise-license-information + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-enterprise-license-information openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /manage/v1/config/license - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#upload-an-enterprise-license + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#upload-an-enterprise-license openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/config/license/check - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#check-a-license + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#check-a-license openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/config/nodes - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-ghes-node-metadata-for-all-nodes + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-ghes-node-metadata-for-all-nodes openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/config/settings - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-ghes-settings + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-ghes-settings openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /manage/v1/config/settings - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#set-settings + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#set-settings openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/maintenance - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-status-of-maintenance-mode + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-status-of-maintenance-mode openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /manage/v1/maintenance - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#set-the-status-of-maintenance-mode + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#set-the-status-of-maintenance-mode openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/replication/status - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-the-status-of-services-running-on-all-replica-nodes + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-the-status-of-services-running-on-all-replica-nodes openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /manage/v1/version - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/manage-ghes#get-all-ghes-release-versions-for-all-nodes + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/manage-ghes#get-all-ghes-release-versions-for-all-nodes openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /markdown documentation_url: https://docs.github.com/rest/markdown/markdown#render-a-markdown-document openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /markdown/raw documentation_url: https://docs.github.com/rest/markdown/markdown#render-a-markdown-document-in-raw-mode openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /marketplace_listing/accounts/{account_id} documentation_url: https://docs.github.com/rest/apps/marketplace#get-a-subscription-plan-for-an-account openapi_files: @@ -1189,78 +1284,78 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /networks/{owner}/{repo}/events documentation_url: https://docs.github.com/rest/activity/events#list-public-events-for-a-network-of-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /notifications documentation_url: https://docs.github.com/rest/activity/notifications#list-notifications-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /notifications documentation_url: https://docs.github.com/rest/activity/notifications#mark-notifications-as-read openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /notifications/threads/{thread_id} documentation_url: https://docs.github.com/rest/activity/notifications#mark-a-thread-as-done openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /notifications/threads/{thread_id} documentation_url: https://docs.github.com/rest/activity/notifications#get-a-thread openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /notifications/threads/{thread_id} documentation_url: https://docs.github.com/rest/activity/notifications#mark-a-thread-as-read openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /notifications/threads/{thread_id}/subscription documentation_url: https://docs.github.com/rest/activity/notifications#delete-a-thread-subscription openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /notifications/threads/{thread_id}/subscription documentation_url: https://docs.github.com/rest/activity/notifications#get-a-thread-subscription-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /notifications/threads/{thread_id}/subscription documentation_url: https://docs.github.com/rest/activity/notifications#set-a-thread-subscription openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /octocat documentation_url: https://docs.github.com/rest/meta/meta#get-octocat openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /organizations documentation_url: https://docs.github.com/rest/orgs/orgs#list-organizations openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /organizations/{organization_id}/custom_roles documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/custom-roles#closing-down---list-custom-repository-roles-in-an-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /organizations/{org}/settings/billing/usage documentation_url: https://docs.github.com/rest/billing/enhanced-billing#get-billing-usage-report-for-an-organization openapi_files: @@ -1271,376 +1366,431 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org} documentation_url: https://docs.github.com/rest/orgs/orgs#get-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org} documentation_url: https://docs.github.com/rest/orgs/orgs#update-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/cache/usage documentation_url: https://docs.github.com/rest/actions/cache#get-github-actions-cache-usage-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/cache/usage-by-repository documentation_url: https://docs.github.com/rest/actions/cache#list-repositories-with-github-actions-cache-usage-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json + - name: GET /orgs/{org}/actions/hosted-runners + documentation_url: https://docs.github.com/rest/actions/hosted-runners#list-github-hosted-runners-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: POST /orgs/{org}/actions/hosted-runners + documentation_url: https://docs.github.com/rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/images/github-owned + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-github-owned-images-for-github-hosted-runners-in-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/images/partner + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-partner-images-for-github-hosted-runners-in-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/limits + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-limits-on-github-hosted-runners-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/machine-sizes + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-github-hosted-runners-machine-specs-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/platforms + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-platforms-for-github-hosted-runners-in-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: DELETE /orgs/{org}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/rest/actions/hosted-runners#delete-a-github-hosted-runner-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/rest/actions/hosted-runners#get-a-github-hosted-runner-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: PATCH /orgs/{org}/actions/hosted-runners/{hosted_runner_id} + documentation_url: https://docs.github.com/rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/actions/oidc/customization/sub documentation_url: https://docs.github.com/rest/actions/oidc#get-the-customization-template-for-an-oidc-subject-claim-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/oidc/customization/sub documentation_url: https://docs.github.com/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/permissions documentation_url: https://docs.github.com/rest/actions/permissions#get-github-actions-permissions-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/permissions documentation_url: https://docs.github.com/rest/actions/permissions#set-github-actions-permissions-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/permissions/repositories documentation_url: https://docs.github.com/rest/actions/permissions#list-selected-repositories-enabled-for-github-actions-in-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/permissions/repositories documentation_url: https://docs.github.com/rest/actions/permissions#set-selected-repositories-enabled-for-github-actions-in-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/permissions/repositories/{repository_id} documentation_url: https://docs.github.com/rest/actions/permissions#disable-a-selected-repository-for-github-actions-in-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/permissions/repositories/{repository_id} documentation_url: https://docs.github.com/rest/actions/permissions#enable-a-selected-repository-for-github-actions-in-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/permissions/selected-actions documentation_url: https://docs.github.com/rest/actions/permissions#get-allowed-actions-and-reusable-workflows-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/permissions/selected-actions documentation_url: https://docs.github.com/rest/actions/permissions#set-allowed-actions-and-reusable-workflows-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/permissions/workflow documentation_url: https://docs.github.com/rest/actions/permissions#get-default-workflow-permissions-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/permissions/workflow documentation_url: https://docs.github.com/rest/actions/permissions#set-default-workflow-permissions-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/runner-groups documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#list-self-hosted-runner-groups-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/actions/runner-groups documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#create-a-self-hosted-runner-group-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/runner-groups/{runner_group_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#delete-a-self-hosted-runner-group-from-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/runner-groups/{runner_group_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#get-a-self-hosted-runner-group-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/actions/runner-groups/{runner_group_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#update-a-self-hosted-runner-group-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json + - name: GET /orgs/{org}/actions/runner-groups/{runner_group_id}/hosted-runners + documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#list-github-hosted-runners-in-a-group-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#list-repository-access-to-a-self-hosted-runner-group-in-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#set-repository-access-for-a-self-hosted-runner-group-in-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#remove-repository-access-to-a-self-hosted-runner-group-in-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#add-repository-access-to-a-self-hosted-runner-group-in-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/runner-groups/{runner_group_id}/runners documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#list-self-hosted-runners-in-a-group-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/runners documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#set-self-hosted-runners-in-a-group-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/runner-groups/{runner_group_id}/runners/{runner_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#remove-a-self-hosted-runner-from-a-group-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/runners/{runner_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runner-groups#add-a-self-hosted-runner-to-a-group-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/runners documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#list-self-hosted-runners-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/runners/downloads documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#list-runner-applications-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/actions/runners/generate-jitconfig documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#create-configuration-for-a-just-in-time-runner-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/actions/runners/registration-token documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#create-a-registration-token-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/actions/runners/remove-token documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#create-a-remove-token-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/runners/{runner_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#delete-a-self-hosted-runner-from-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/runners/{runner_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#get-a-self-hosted-runner-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#remove-all-custom-labels-from-a-self-hosted-runner-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#list-labels-for-a-self-hosted-runner-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#add-custom-labels-to-a-self-hosted-runner-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#set-custom-labels-for-a-self-hosted-runner-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name} documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#remove-a-custom-label-from-a-self-hosted-runner-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/secrets documentation_url: https://docs.github.com/rest/actions/secrets#list-organization-secrets openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/secrets/public-key documentation_url: https://docs.github.com/rest/actions/secrets#get-an-organization-public-key openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/secrets/{secret_name} documentation_url: https://docs.github.com/rest/actions/secrets#delete-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/secrets/{secret_name} documentation_url: https://docs.github.com/rest/actions/secrets#get-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/secrets/{secret_name} documentation_url: https://docs.github.com/rest/actions/secrets#create-or-update-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/secrets/{secret_name}/repositories documentation_url: https://docs.github.com/rest/actions/secrets#list-selected-repositories-for-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/secrets/{secret_name}/repositories documentation_url: https://docs.github.com/rest/actions/secrets#set-selected-repositories-for-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/actions/secrets#remove-selected-repository-from-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/actions/secrets#add-selected-repository-to-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/variables documentation_url: https://docs.github.com/rest/actions/variables#list-organization-variables openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/actions/variables documentation_url: https://docs.github.com/rest/actions/variables#create-an-organization-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/variables/{name} documentation_url: https://docs.github.com/rest/actions/variables#delete-an-organization-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/variables/{name} documentation_url: https://docs.github.com/rest/actions/variables#get-an-organization-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/actions/variables/{name} documentation_url: https://docs.github.com/rest/actions/variables#update-an-organization-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/actions/variables/{name}/repositories documentation_url: https://docs.github.com/rest/actions/variables#list-selected-repositories-for-an-organization-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/variables/{name}/repositories documentation_url: https://docs.github.com/rest/actions/variables#set-selected-repositories-for-an-organization-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/actions/variables#remove-selected-repository-from-an-organization-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/actions/variables#add-selected-repository-to-an-organization-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/announcement documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/announcement-banners/organizations#remove-announcement-banner-from-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/announcement documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/announcement-banners/organizations#get-announcement-banner-for-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/announcement documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/announcement-banners/organizations#set-announcement-banner-for-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/attestations/{subject_digest} documentation_url: https://docs.github.com/rest/orgs/orgs#list-attestations openapi_files: @@ -1650,7 +1800,7 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/orgs#get-the-audit-log-for-an-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/blocks documentation_url: https://docs.github.com/rest/orgs/blocking#list-users-blocked-by-an-organization openapi_files: @@ -1675,72 +1825,76 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/bypass-requests#list-push-rule-bypass-requests-within-an-organization openapi_files: - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/bypass-requests/secret-scanning + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/secret-scanning/delegated-bypass#list-bypass-requests-for-secret-scanning-for-an-org + openapi_files: + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/code-scanning/alerts documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#list-code-scanning-alerts-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/code-security/configurations documentation_url: https://docs.github.com/rest/code-security/configurations#get-code-security-configurations-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/code-security/configurations documentation_url: https://docs.github.com/rest/code-security/configurations#create-a-code-security-configuration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/code-security/configurations/defaults documentation_url: https://docs.github.com/rest/code-security/configurations#get-default-code-security-configurations openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/code-security/configurations/detach documentation_url: https://docs.github.com/rest/code-security/configurations#detach-configurations-from-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/code-security/configurations/{configuration_id} documentation_url: https://docs.github.com/rest/code-security/configurations#delete-a-code-security-configuration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/code-security/configurations/{configuration_id} documentation_url: https://docs.github.com/rest/code-security/configurations#get-a-code-security-configuration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/code-security/configurations/{configuration_id} documentation_url: https://docs.github.com/rest/code-security/configurations#update-a-code-security-configuration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/code-security/configurations/{configuration_id}/attach documentation_url: https://docs.github.com/rest/code-security/configurations#attach-a-configuration-to-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/code-security/configurations/{configuration_id}/defaults documentation_url: https://docs.github.com/rest/code-security/configurations#set-a-code-security-configuration-as-a-default-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/code-security/configurations/{configuration_id}/repositories documentation_url: https://docs.github.com/rest/code-security/configurations#get-repositories-associated-with-a-code-security-configuration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/codespaces documentation_url: https://docs.github.com/rest/codespaces/organizations#list-codespaces-for-the-organization openapi_files: @@ -1858,27 +2012,27 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/custom-roles#list-custom-repository-roles-in-an-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/custom-repository-roles documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/custom-roles#create-a-custom-repository-role openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/custom-repository-roles/{role_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/custom-roles#delete-a-custom-repository-role openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/custom-repository-roles/{role_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/custom-roles#get-a-custom-repository-role openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/custom-repository-roles/{role_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/custom-roles#update-a-custom-repository-role openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/custom_roles documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/custom-roles#closing-down---create-a-custom-role openapi_files: @@ -1900,83 +2054,83 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/dependabot/secrets documentation_url: https://docs.github.com/rest/dependabot/secrets#list-organization-secrets openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/dependabot/secrets/public-key documentation_url: https://docs.github.com/rest/dependabot/secrets#get-an-organization-public-key openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/dependabot/secrets/{secret_name} documentation_url: https://docs.github.com/rest/dependabot/secrets#delete-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/dependabot/secrets/{secret_name} documentation_url: https://docs.github.com/rest/dependabot/secrets#get-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/dependabot/secrets/{secret_name} documentation_url: https://docs.github.com/rest/dependabot/secrets#create-or-update-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories documentation_url: https://docs.github.com/rest/dependabot/secrets#list-selected-repositories-for-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories documentation_url: https://docs.github.com/rest/dependabot/secrets#set-selected-repositories-for-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/dependabot/secrets#remove-selected-repository-from-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/dependabot/secrets#add-selected-repository-to-an-organization-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/docker/conflicts documentation_url: https://docs.github.com/rest/packages/packages#get-list-of-conflicting-packages-during-docker-migration-for-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/events documentation_url: https://docs.github.com/rest/activity/events#list-public-organization-events openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/external-group/{group_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/teams/external-groups#get-an-external-group openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/external-groups documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/teams/external-groups#list-external-groups-in-an-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/failed_invitations documentation_url: https://docs.github.com/rest/orgs/members#list-failed-organization-invitations openapi_files: @@ -1991,67 +2145,67 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/hooks documentation_url: https://docs.github.com/rest/orgs/webhooks#create-an-organization-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/hooks/{hook_id} documentation_url: https://docs.github.com/rest/orgs/webhooks#delete-an-organization-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/hooks/{hook_id} documentation_url: https://docs.github.com/rest/orgs/webhooks#get-an-organization-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/hooks/{hook_id} documentation_url: https://docs.github.com/rest/orgs/webhooks#update-an-organization-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/hooks/{hook_id}/config documentation_url: https://docs.github.com/rest/orgs/webhooks#get-a-webhook-configuration-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/hooks/{hook_id}/config documentation_url: https://docs.github.com/rest/orgs/webhooks#update-a-webhook-configuration-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/hooks/{hook_id}/deliveries documentation_url: https://docs.github.com/rest/orgs/webhooks#list-deliveries-for-an-organization-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id} documentation_url: https://docs.github.com/rest/orgs/webhooks#get-a-webhook-delivery-for-an-organization-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts documentation_url: https://docs.github.com/rest/orgs/webhooks#redeliver-a-delivery-for-an-organization-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/hooks/{hook_id}/pings documentation_url: https://docs.github.com/rest/orgs/webhooks#ping-an-organization-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/insights/api/route-stats/{actor_type}/{actor_id} documentation_url: https://docs.github.com/rest/orgs/api-insights#get-route-stats-by-actor openapi_files: @@ -2102,13 +2256,13 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/installations documentation_url: https://docs.github.com/rest/orgs/orgs#list-app-installations-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/interaction-limits documentation_url: https://docs.github.com/rest/interactions/orgs#remove-interaction-restrictions-for-an-organization openapi_files: @@ -2144,30 +2298,50 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/issue-types + documentation_url: https://docs.github.com/rest/orgs/issue-types#list-issue-types-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: POST /orgs/{org}/issue-types + documentation_url: https://docs.github.com/rest/orgs/issue-types#create-issue-type-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: DELETE /orgs/{org}/issue-types/{issue_type_id} + documentation_url: https://docs.github.com/rest/orgs/issue-types#delete-issue-type-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: PUT /orgs/{org}/issue-types/{issue_type_id} + documentation_url: https://docs.github.com/rest/orgs/issue-types#update-issue-type-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/issues documentation_url: https://docs.github.com/rest/issues/issues#list-organization-issues-assigned-to-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/members documentation_url: https://docs.github.com/rest/orgs/members#list-organization-members openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/members/{username} documentation_url: https://docs.github.com/rest/orgs/members#remove-an-organization-member openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/members/{username} documentation_url: https://docs.github.com/rest/orgs/members#check-organization-membership-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/members/{username}/codespaces documentation_url: https://docs.github.com/rest/codespaces/organizations#list-codespaces-for-a-user-in-organization openapi_files: @@ -2193,444 +2367,460 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/memberships/{username} documentation_url: https://docs.github.com/rest/orgs/members#get-organization-membership-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/memberships/{username} documentation_url: https://docs.github.com/rest/orgs/members#set-organization-membership-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/migrations documentation_url: https://docs.github.com/rest/migrations/orgs#list-organization-migrations openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/migrations documentation_url: https://docs.github.com/rest/migrations/orgs#start-an-organization-migration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/migrations/{migration_id} documentation_url: https://docs.github.com/rest/migrations/orgs#get-an-organization-migration-status openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/migrations/{migration_id}/archive documentation_url: https://docs.github.com/rest/migrations/orgs#delete-an-organization-migration-archive openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/migrations/{migration_id}/archive documentation_url: https://docs.github.com/rest/migrations/orgs#download-an-organization-migration-archive openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock documentation_url: https://docs.github.com/rest/migrations/orgs#unlock-an-organization-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/migrations/{migration_id}/repositories documentation_url: https://docs.github.com/rest/migrations/orgs#list-repositories-in-an-organization-migration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/organization-fine-grained-permissions documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/organization-roles#list-organization-fine-grained-permissions-for-an-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/organization-roles documentation_url: https://docs.github.com/rest/orgs/organization-roles#get-all-organization-roles-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/organization-roles documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/organization-roles#create-a-custom-organization-role openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/organization-roles/teams/{team_slug} documentation_url: https://docs.github.com/rest/orgs/organization-roles#remove-all-organization-roles-for-a-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id} documentation_url: https://docs.github.com/rest/orgs/organization-roles#remove-an-organization-role-from-a-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id} documentation_url: https://docs.github.com/rest/orgs/organization-roles#assign-an-organization-role-to-a-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/organization-roles/users/{username} documentation_url: https://docs.github.com/rest/orgs/organization-roles#remove-all-organization-roles-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/organization-roles/users/{username}/{role_id} documentation_url: https://docs.github.com/rest/orgs/organization-roles#remove-an-organization-role-from-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/organization-roles/users/{username}/{role_id} documentation_url: https://docs.github.com/rest/orgs/organization-roles#assign-an-organization-role-to-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/organization-roles/{role_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/organization-roles#delete-a-custom-organization-role openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/organization-roles/{role_id} documentation_url: https://docs.github.com/rest/orgs/organization-roles#get-an-organization-role openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/organization-roles/{role_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/organization-roles#update-a-custom-organization-role openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/organization-roles/{role_id}/teams documentation_url: https://docs.github.com/rest/orgs/organization-roles#list-teams-that-are-assigned-to-an-organization-role openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/organization-roles/{role_id}/users documentation_url: https://docs.github.com/rest/orgs/organization-roles#list-users-that-are-assigned-to-an-organization-role openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/outside_collaborators documentation_url: https://docs.github.com/rest/orgs/outside-collaborators#list-outside-collaborators-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/outside_collaborators/{username} documentation_url: https://docs.github.com/rest/orgs/outside-collaborators#remove-outside-collaborator-from-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/outside_collaborators/{username} documentation_url: https://docs.github.com/rest/orgs/outside-collaborators#convert-an-organization-member-to-outside-collaborator openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/packages documentation_url: https://docs.github.com/rest/packages/packages#list-packages-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/packages/{package_type}/{package_name} documentation_url: https://docs.github.com/rest/packages/packages#delete-a-package-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/packages/{package_type}/{package_name} documentation_url: https://docs.github.com/rest/packages/packages#get-a-package-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/packages/{package_type}/{package_name}/restore documentation_url: https://docs.github.com/rest/packages/packages#restore-a-package-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/packages/{package_type}/{package_name}/versions documentation_url: https://docs.github.com/rest/packages/packages#list-package-versions-for-a-package-owned-by-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id} documentation_url: https://docs.github.com/rest/packages/packages#delete-package-version-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id} documentation_url: https://docs.github.com/rest/packages/packages#get-a-package-version-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore documentation_url: https://docs.github.com/rest/packages/packages#restore-package-version-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/personal-access-token-requests documentation_url: https://docs.github.com/rest/orgs/personal-access-tokens#list-requests-to-access-organization-resources-with-fine-grained-personal-access-tokens openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/personal-access-token-requests documentation_url: https://docs.github.com/rest/orgs/personal-access-tokens#review-requests-to-access-organization-resources-with-fine-grained-personal-access-tokens openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/personal-access-token-requests/{pat_request_id} documentation_url: https://docs.github.com/rest/orgs/personal-access-tokens#review-a-request-to-access-organization-resources-with-a-fine-grained-personal-access-token openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories documentation_url: https://docs.github.com/rest/orgs/personal-access-tokens#list-repositories-requested-to-be-accessed-by-a-fine-grained-personal-access-token openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/personal-access-tokens documentation_url: https://docs.github.com/rest/orgs/personal-access-tokens#list-fine-grained-personal-access-tokens-with-access-to-organization-resources openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/personal-access-tokens documentation_url: https://docs.github.com/rest/orgs/personal-access-tokens#update-the-access-to-organization-resources-via-fine-grained-personal-access-tokens openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/personal-access-tokens/{pat_id} documentation_url: https://docs.github.com/rest/orgs/personal-access-tokens#update-the-access-a-fine-grained-personal-access-token-has-to-organization-resources openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories documentation_url: https://docs.github.com/rest/orgs/personal-access-tokens#list-repositories-a-fine-grained-personal-access-token-has-access-to openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/pre-receive-hooks - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/org-pre-receive-hooks#list-pre-receive-hooks-for-an-organization + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/org-pre-receive-hooks#list-pre-receive-hooks-for-an-organization openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/pre-receive-hooks/{pre_receive_hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/org-pre-receive-hooks#remove-pre-receive-hook-enforcement-for-an-organization + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/org-pre-receive-hooks#remove-pre-receive-hook-enforcement-for-an-organization openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/pre-receive-hooks/{pre_receive_hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/org-pre-receive-hooks#get-a-pre-receive-hook-for-an-organization + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/org-pre-receive-hooks#get-a-pre-receive-hook-for-an-organization openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/pre-receive-hooks/{pre_receive_hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/org-pre-receive-hooks#update-pre-receive-hook-enforcement-for-an-organization + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/org-pre-receive-hooks#update-pre-receive-hook-enforcement-for-an-organization openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/private-registries documentation_url: https://docs.github.com/rest/private-registries/organization-configurations#list-private-registries-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/private-registries documentation_url: https://docs.github.com/rest/private-registries/organization-configurations#create-a-private-registry-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/private-registries/public-key documentation_url: https://docs.github.com/rest/private-registries/organization-configurations#get-private-registries-public-key-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/private-registries/{secret_name} documentation_url: https://docs.github.com/rest/private-registries/organization-configurations#delete-a-private-registry-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/private-registries/{secret_name} documentation_url: https://docs.github.com/rest/private-registries/organization-configurations#get-a-private-registry-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/private-registries/{secret_name} documentation_url: https://docs.github.com/rest/private-registries/organization-configurations#update-a-private-registry-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/projects documentation_url: https://docs.github.com/rest/projects/projects#list-organization-projects openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/projects documentation_url: https://docs.github.com/rest/projects/projects#create-an-organization-project openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/properties/schema documentation_url: https://docs.github.com/rest/orgs/custom-properties#get-all-custom-properties-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/properties/schema documentation_url: https://docs.github.com/rest/orgs/custom-properties#create-or-update-custom-properties-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/properties/schema/{custom_property_name} documentation_url: https://docs.github.com/rest/orgs/custom-properties#remove-a-custom-property-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/properties/schema/{custom_property_name} documentation_url: https://docs.github.com/rest/orgs/custom-properties#get-a-custom-property-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/properties/schema/{custom_property_name} documentation_url: https://docs.github.com/rest/orgs/custom-properties#create-or-update-a-custom-property-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/properties/values documentation_url: https://docs.github.com/rest/orgs/custom-properties#list-custom-property-values-for-organization-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/properties/values documentation_url: https://docs.github.com/rest/orgs/custom-properties#create-or-update-custom-property-values-for-organization-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/public_members documentation_url: https://docs.github.com/rest/orgs/members#list-public-organization-members openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/public_members/{username} documentation_url: https://docs.github.com/rest/orgs/members#remove-public-organization-membership-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/public_members/{username} documentation_url: https://docs.github.com/rest/orgs/members#check-public-organization-membership-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/public_members/{username} documentation_url: https://docs.github.com/rest/orgs/members#set-public-organization-membership-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/repos documentation_url: https://docs.github.com/rest/repos/repos#list-organization-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/repos documentation_url: https://docs.github.com/rest/repos/repos#create-an-organization-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/repository-fine-grained-permissions documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/orgs/custom-roles#list-repository-fine-grained-permissions-for-an-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/rulesets documentation_url: https://docs.github.com/rest/orgs/rules#get-all-organization-repository-rulesets openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/rulesets documentation_url: https://docs.github.com/rest/orgs/rules#create-an-organization-repository-ruleset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/rulesets/rule-suites documentation_url: https://docs.github.com/rest/orgs/rule-suites#list-organization-rule-suites openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id} documentation_url: https://docs.github.com/rest/orgs/rule-suites#get-an-organization-rule-suite openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/rulesets/{ruleset_id} documentation_url: https://docs.github.com/rest/orgs/rules#delete-an-organization-repository-ruleset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/rulesets/{ruleset_id} documentation_url: https://docs.github.com/rest/orgs/rules#get-an-organization-repository-ruleset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/rulesets/{ruleset_id} documentation_url: https://docs.github.com/rest/orgs/rules#update-an-organization-repository-ruleset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json + - name: GET /orgs/{org}/rulesets/{ruleset_id}/history + documentation_url: https://docs.github.com/rest/orgs/rules#get-organization-ruleset-history + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/rulesets/{ruleset_id}/history/{version_id} + documentation_url: https://docs.github.com/rest/orgs/rules#get-organization-ruleset-version + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/secret-scanning/alerts documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/security-advisories documentation_url: https://docs.github.com/rest/security-advisories/repository-advisories#list-repository-security-advisories-for-an-organization openapi_files: @@ -2641,19 +2831,19 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/security-managers/teams/{team_slug} documentation_url: https://docs.github.com/rest/orgs/security-managers#remove-a-security-manager-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/security-managers/teams/{team_slug} documentation_url: https://docs.github.com/rest/orgs/security-managers#add-a-security-manager-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/settings/billing/actions documentation_url: https://docs.github.com/rest/billing/billing#get-github-actions-billing-for-an-organization openapi_files: @@ -2663,7 +2853,7 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/billing/billing#get-github-advanced-security-active-committers-for-an-organization openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/settings/billing/packages documentation_url: https://docs.github.com/rest/billing/billing#get-github-packages-billing-for-an-organization openapi_files: @@ -2674,6 +2864,36 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/settings/network-configurations + documentation_url: https://docs.github.com/rest/orgs/network-configurations#list-hosted-compute-network-configurations-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: POST /orgs/{org}/settings/network-configurations + documentation_url: https://docs.github.com/rest/orgs/network-configurations#create-a-hosted-compute-network-configuration-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: DELETE /orgs/{org}/settings/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/rest/orgs/network-configurations#delete-a-hosted-compute-network-configuration-from-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/settings/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/rest/orgs/network-configurations#get-a-hosted-compute-network-configuration-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: PATCH /orgs/{org}/settings/network-configurations/{network_configuration_id} + documentation_url: https://docs.github.com/rest/orgs/network-configurations#update-a-hosted-compute-network-configuration-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /orgs/{org}/settings/network-settings/{network_settings_id} + documentation_url: https://docs.github.com/rest/orgs/network-configurations#get-a-hosted-compute-network-settings-resource-for-an-organization + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /orgs/{org}/team-sync/groups documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/teams/team-sync#list-idp-groups-for-an-organization openapi_files: @@ -2693,142 +2913,142 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/teams documentation_url: https://docs.github.com/rest/teams/teams#create-a-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/teams/{team_slug} documentation_url: https://docs.github.com/rest/teams/teams#delete-a-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug} documentation_url: https://docs.github.com/rest/teams/teams#get-a-team-by-name openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/teams/{team_slug} documentation_url: https://docs.github.com/rest/teams/teams#update-a-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/discussions documentation_url: https://docs.github.com/rest/teams/discussions#list-discussions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/teams/{team_slug}/discussions documentation_url: https://docs.github.com/rest/teams/discussions#create-a-discussion openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number} documentation_url: https://docs.github.com/rest/teams/discussions#delete-a-discussion openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number} documentation_url: https://docs.github.com/rest/teams/discussions#get-a-discussion openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number} documentation_url: https://docs.github.com/rest/teams/discussions#update-a-discussion openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments documentation_url: https://docs.github.com/rest/teams/discussion-comments#list-discussion-comments openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments documentation_url: https://docs.github.com/rest/teams/discussion-comments#create-a-discussion-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number} documentation_url: https://docs.github.com/rest/teams/discussion-comments#delete-a-discussion-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number} documentation_url: https://docs.github.com/rest/teams/discussion-comments#get-a-discussion-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number} documentation_url: https://docs.github.com/rest/teams/discussion-comments#update-a-discussion-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-team-discussion-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-team-discussion-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id} documentation_url: https://docs.github.com/rest/reactions/reactions#delete-team-discussion-comment-reaction openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-team-discussion openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-team-discussion openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id} documentation_url: https://docs.github.com/rest/reactions/reactions#delete-team-discussion-reaction openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/teams/{team_slug}/external-groups documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/teams/external-groups#remove-the-connection-between-an-external-group-and-a-team openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/external-groups documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/teams/external-groups#list-a-connection-between-an-external-group-and-a-team openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /orgs/{org}/teams/{team_slug}/external-groups documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/teams/external-groups#update-the-connection-between-an-external-group-and-a-team openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/invitations documentation_url: https://docs.github.com/rest/teams/members#list-pending-team-invitations openapi_files: @@ -2839,73 +3059,73 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/teams/{team_slug}/memberships/{username} documentation_url: https://docs.github.com/rest/teams/members#remove-team-membership-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/memberships/{username} documentation_url: https://docs.github.com/rest/teams/members#get-team-membership-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/teams/{team_slug}/memberships/{username} documentation_url: https://docs.github.com/rest/teams/members#add-or-update-team-membership-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/projects documentation_url: https://docs.github.com/rest/teams/teams#list-team-projects openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id} documentation_url: https://docs.github.com/rest/teams/teams#remove-a-project-from-a-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/projects/{project_id} documentation_url: https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-project openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/teams/{team_slug}/projects/{project_id} documentation_url: https://docs.github.com/rest/teams/teams#add-or-update-team-project-permissions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/repos documentation_url: https://docs.github.com/rest/teams/teams#list-team-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo} documentation_url: https://docs.github.com/rest/teams/teams#remove-a-repository-from-a-team openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo} documentation_url: https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo} documentation_url: https://docs.github.com/rest/teams/teams#add-or-update-team-repository-permissions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /orgs/{org}/teams/{team_slug}/team-sync/group-mappings documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/teams/team-sync#list-idp-groups-for-a-team openapi_files: @@ -2919,133 +3139,133 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /orgs/{org}/{security_product}/{enablement} documentation_url: https://docs.github.com/rest/orgs/orgs#enable-or-disable-a-security-feature-for-an-organization openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /projects/columns/cards/{card_id} documentation_url: https://docs.github.com/rest/projects/cards#delete-a-project-card openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /projects/columns/cards/{card_id} documentation_url: https://docs.github.com/rest/projects/cards#get-a-project-card openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /projects/columns/cards/{card_id} documentation_url: https://docs.github.com/rest/projects/cards#update-an-existing-project-card openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /projects/columns/cards/{card_id}/moves documentation_url: https://docs.github.com/rest/projects/cards#move-a-project-card openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /projects/columns/{column_id} documentation_url: https://docs.github.com/rest/projects/columns#delete-a-project-column openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /projects/columns/{column_id} documentation_url: https://docs.github.com/rest/projects/columns#get-a-project-column openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /projects/columns/{column_id} documentation_url: https://docs.github.com/rest/projects/columns#update-an-existing-project-column openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /projects/columns/{column_id}/cards documentation_url: https://docs.github.com/rest/projects/cards#list-project-cards openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /projects/columns/{column_id}/cards documentation_url: https://docs.github.com/rest/projects/cards#create-a-project-card openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /projects/columns/{column_id}/moves documentation_url: https://docs.github.com/rest/projects/columns#move-a-project-column openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /projects/{project_id} documentation_url: https://docs.github.com/rest/projects/projects#delete-a-project openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /projects/{project_id} documentation_url: https://docs.github.com/rest/projects/projects#get-a-project openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /projects/{project_id} documentation_url: https://docs.github.com/rest/projects/projects#update-a-project openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /projects/{project_id}/collaborators documentation_url: https://docs.github.com/rest/projects/collaborators#list-project-collaborators openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /projects/{project_id}/collaborators/{username} documentation_url: https://docs.github.com/rest/projects/collaborators#remove-user-as-a-collaborator openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /projects/{project_id}/collaborators/{username} documentation_url: https://docs.github.com/rest/projects/collaborators#add-project-collaborator openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /projects/{project_id}/collaborators/{username}/permission documentation_url: https://docs.github.com/rest/projects/collaborators#get-project-permission-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /projects/{project_id}/columns documentation_url: https://docs.github.com/rest/projects/columns#list-project-columns openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /projects/{project_id}/columns documentation_url: https://docs.github.com/rest/projects/columns#create-a-project-column openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /rate_limit documentation_url: https://docs.github.com/rest/rate-limit/rate-limit#get-rate-limit-status-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /reactions/{reaction_id} documentation_url: https://docs.github.com/enterprise-server@3.4/rest/reference/reactions/#delete-a-reaction-legacy openapi_files: @@ -3055,261 +3275,261 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo} documentation_url: https://docs.github.com/rest/repos/repos#get-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo} documentation_url: https://docs.github.com/rest/repos/repos#update-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/artifacts documentation_url: https://docs.github.com/rest/actions/artifacts#list-artifacts-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id} documentation_url: https://docs.github.com/rest/actions/artifacts#delete-an-artifact openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id} documentation_url: https://docs.github.com/rest/actions/artifacts#get-an-artifact openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format} documentation_url: https://docs.github.com/rest/actions/artifacts#download-an-artifact openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/cache/usage documentation_url: https://docs.github.com/rest/actions/cache#get-github-actions-cache-usage-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/cache/usage-policy - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/actions/cache#get-github-actions-cache-usage-policy-for-a-repository + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/actions/cache#get-github-actions-cache-usage-policy-for-a-repository openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/actions/cache/usage-policy - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/actions/cache#set-github-actions-cache-usage-policy-for-a-repository + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/actions/cache#set-github-actions-cache-usage-policy-for-a-repository openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/caches documentation_url: https://docs.github.com/rest/actions/cache#delete-github-actions-caches-for-a-repository-using-a-cache-key openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/caches documentation_url: https://docs.github.com/rest/actions/cache#list-github-actions-caches-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/caches/{cache_id} documentation_url: https://docs.github.com/rest/actions/cache#delete-a-github-actions-cache-for-a-repository-using-a-cache-id openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/jobs/{job_id} documentation_url: https://docs.github.com/rest/actions/workflow-jobs#get-a-job-for-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs documentation_url: https://docs.github.com/rest/actions/workflow-jobs#download-job-logs-for-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun documentation_url: https://docs.github.com/rest/actions/workflow-runs#re-run-a-job-from-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/oidc/customization/sub documentation_url: https://docs.github.com/rest/actions/oidc#get-the-customization-template-for-an-oidc-subject-claim-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/actions/oidc/customization/sub documentation_url: https://docs.github.com/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/organization-secrets documentation_url: https://docs.github.com/rest/actions/secrets#list-repository-organization-secrets openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/organization-variables documentation_url: https://docs.github.com/rest/actions/variables#list-repository-organization-variables openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/permissions documentation_url: https://docs.github.com/rest/actions/permissions#get-github-actions-permissions-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/actions/permissions documentation_url: https://docs.github.com/rest/actions/permissions#set-github-actions-permissions-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/permissions/access documentation_url: https://docs.github.com/rest/actions/permissions#get-the-level-of-access-for-workflows-outside-of-the-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/actions/permissions/access documentation_url: https://docs.github.com/rest/actions/permissions#set-the-level-of-access-for-workflows-outside-of-the-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/permissions/selected-actions documentation_url: https://docs.github.com/rest/actions/permissions#get-allowed-actions-and-reusable-workflows-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/actions/permissions/selected-actions documentation_url: https://docs.github.com/rest/actions/permissions#set-allowed-actions-and-reusable-workflows-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/permissions/workflow documentation_url: https://docs.github.com/rest/actions/permissions#get-default-workflow-permissions-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/actions/permissions/workflow documentation_url: https://docs.github.com/rest/actions/permissions#set-default-workflow-permissions-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runners documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#list-self-hosted-runners-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runners/downloads documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#list-runner-applications-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#create-configuration-for-a-just-in-time-runner-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runners/registration-token documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#create-a-registration-token-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runners/remove-token documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#create-a-remove-token-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/runners/{runner_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#delete-a-self-hosted-runner-from-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runners/{runner_id} documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#get-a-self-hosted-runner-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#remove-all-custom-labels-from-a-self-hosted-runner-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#list-labels-for-a-self-hosted-runner-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#add-custom-labels-to-a-self-hosted-runner-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#set-custom-labels-for-a-self-hosted-runner-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name} documentation_url: https://docs.github.com/rest/actions/self-hosted-runners#remove-a-custom-label-from-a-self-hosted-runner-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs documentation_url: https://docs.github.com/rest/actions/workflow-runs#list-workflow-runs-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/runs/{run_id} documentation_url: https://docs.github.com/rest/actions/workflow-runs#delete-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs/{run_id} documentation_url: https://docs.github.com/rest/actions/workflow-runs#get-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals documentation_url: https://docs.github.com/rest/actions/workflow-runs#get-the-review-history-for-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve documentation_url: https://docs.github.com/rest/actions/workflow-runs#approve-a-workflow-run-for-a-fork-pull-request openapi_files: @@ -3320,85 +3540,85 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number} documentation_url: https://docs.github.com/rest/actions/workflow-runs#get-a-workflow-run-attempt openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs documentation_url: https://docs.github.com/rest/actions/workflow-jobs#list-jobs-for-a-workflow-run-attempt openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs documentation_url: https://docs.github.com/rest/actions/workflow-runs#download-workflow-run-attempt-logs openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel documentation_url: https://docs.github.com/rest/actions/workflow-runs#cancel-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule documentation_url: https://docs.github.com/rest/actions/workflow-runs#review-custom-deployment-protection-rules-for-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel documentation_url: https://docs.github.com/rest/actions/workflow-runs#force-cancel-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs documentation_url: https://docs.github.com/rest/actions/workflow-jobs#list-jobs-for-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs documentation_url: https://docs.github.com/rest/actions/workflow-runs#delete-workflow-run-logs openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs documentation_url: https://docs.github.com/rest/actions/workflow-runs#download-workflow-run-logs openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments documentation_url: https://docs.github.com/rest/actions/workflow-runs#get-pending-deployments-for-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments documentation_url: https://docs.github.com/rest/actions/workflow-runs#review-pending-deployments-for-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun documentation_url: https://docs.github.com/rest/actions/workflow-runs#re-run-a-workflow openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs documentation_url: https://docs.github.com/rest/actions/workflow-runs#re-run-failed-jobs-from-a-workflow-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing documentation_url: https://docs.github.com/rest/actions/workflow-runs#get-workflow-run-usage openapi_files: @@ -3409,97 +3629,97 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/secrets/public-key documentation_url: https://docs.github.com/rest/actions/secrets#get-a-repository-public-key openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name} documentation_url: https://docs.github.com/rest/actions/secrets#delete-a-repository-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/secrets/{secret_name} documentation_url: https://docs.github.com/rest/actions/secrets#get-a-repository-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/actions/secrets/{secret_name} documentation_url: https://docs.github.com/rest/actions/secrets#create-or-update-a-repository-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/variables documentation_url: https://docs.github.com/rest/actions/variables#list-repository-variables openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/variables documentation_url: https://docs.github.com/rest/actions/variables#create-a-repository-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/actions/variables/{name} documentation_url: https://docs.github.com/rest/actions/variables#delete-a-repository-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/variables/{name} documentation_url: https://docs.github.com/rest/actions/variables#get-a-repository-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/actions/variables/{name} documentation_url: https://docs.github.com/rest/actions/variables#update-a-repository-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/workflows documentation_url: https://docs.github.com/rest/actions/workflows#list-repository-workflows openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/workflows/{workflow_id} documentation_url: https://docs.github.com/rest/actions/workflows#get-a-workflow openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable documentation_url: https://docs.github.com/rest/actions/workflows#disable-a-workflow openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches documentation_url: https://docs.github.com/rest/actions/workflows#create-a-workflow-dispatch-event openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable documentation_url: https://docs.github.com/rest/actions/workflows#enable-a-workflow openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs documentation_url: https://docs.github.com/rest/actions/workflow-runs#list-workflow-runs-for-a-workflow openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing documentation_url: https://docs.github.com/rest/actions/workflows#get-workflow-usage openapi_files: @@ -3510,19 +3730,19 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/assignees documentation_url: https://docs.github.com/rest/issues/assignees#list-assignees openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/assignees/{assignee} documentation_url: https://docs.github.com/rest/issues/assignees#check-if-a-user-can-be-assigned openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/attestations documentation_url: https://docs.github.com/rest/repos/repos#create-an-attestation openapi_files: @@ -3538,38 +3758,38 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/autolinks documentation_url: https://docs.github.com/rest/repos/autolinks#create-an-autolink-reference-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/autolinks/{autolink_id} documentation_url: https://docs.github.com/rest/repos/autolinks#delete-an-autolink-reference-from-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/autolinks/{autolink_id} documentation_url: https://docs.github.com/rest/repos/autolinks#get-an-autolink-reference-of-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/automated-security-fixes - documentation_url: https://docs.github.com/rest/repos/repos#disable-automated-security-fixes + documentation_url: https://docs.github.com/rest/repos/repos#disable-dependabot-security-updates openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - name: GET /repos/{owner}/{repo}/automated-security-fixes - documentation_url: https://docs.github.com/rest/repos/repos#check-if-automated-security-fixes-are-enabled-for-a-repository + documentation_url: https://docs.github.com/rest/repos/repos#check-if-dependabot-security-updates-are-enabled-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/automated-security-fixes - documentation_url: https://docs.github.com/rest/repos/repos#enable-automated-security-fixes + documentation_url: https://docs.github.com/rest/repos/repos#enable-dependabot-security-updates openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json @@ -3578,217 +3798,217 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch} documentation_url: https://docs.github.com/rest/branches/branches#get-a-branch openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection documentation_url: https://docs.github.com/rest/branches/branch-protection#delete-branch-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection documentation_url: https://docs.github.com/rest/branches/branch-protection#get-branch-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/branches/{branch}/protection documentation_url: https://docs.github.com/rest/branches/branch-protection#update-branch-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins documentation_url: https://docs.github.com/rest/branches/branch-protection#delete-admin-branch-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins documentation_url: https://docs.github.com/rest/branches/branch-protection#get-admin-branch-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins documentation_url: https://docs.github.com/rest/branches/branch-protection#set-admin-branch-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews documentation_url: https://docs.github.com/rest/branches/branch-protection#delete-pull-request-review-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews documentation_url: https://docs.github.com/rest/branches/branch-protection#get-pull-request-review-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews documentation_url: https://docs.github.com/rest/branches/branch-protection#update-pull-request-review-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures documentation_url: https://docs.github.com/rest/branches/branch-protection#delete-commit-signature-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures documentation_url: https://docs.github.com/rest/branches/branch-protection#get-commit-signature-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures documentation_url: https://docs.github.com/rest/branches/branch-protection#create-commit-signature-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks documentation_url: https://docs.github.com/rest/branches/branch-protection#remove-status-check-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks documentation_url: https://docs.github.com/rest/branches/branch-protection#get-status-checks-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks documentation_url: https://docs.github.com/rest/branches/branch-protection#update-status-check-protection openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts documentation_url: https://docs.github.com/rest/branches/branch-protection#remove-status-check-contexts openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts documentation_url: https://docs.github.com/rest/branches/branch-protection#get-all-status-check-contexts openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts documentation_url: https://docs.github.com/rest/branches/branch-protection#add-status-check-contexts openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts documentation_url: https://docs.github.com/rest/branches/branch-protection#set-status-check-contexts openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions documentation_url: https://docs.github.com/rest/branches/branch-protection#delete-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions documentation_url: https://docs.github.com/rest/branches/branch-protection#get-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps documentation_url: https://docs.github.com/rest/branches/branch-protection#remove-app-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps documentation_url: https://docs.github.com/rest/branches/branch-protection#get-apps-with-access-to-the-protected-branch openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps documentation_url: https://docs.github.com/rest/branches/branch-protection#add-app-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps documentation_url: https://docs.github.com/rest/branches/branch-protection#set-app-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams documentation_url: https://docs.github.com/rest/branches/branch-protection#remove-team-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams documentation_url: https://docs.github.com/rest/branches/branch-protection#get-teams-with-access-to-the-protected-branch openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams documentation_url: https://docs.github.com/rest/branches/branch-protection#add-team-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams documentation_url: https://docs.github.com/rest/branches/branch-protection#set-team-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users documentation_url: https://docs.github.com/rest/branches/branch-protection#remove-user-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users documentation_url: https://docs.github.com/rest/branches/branch-protection#get-users-with-access-to-the-protected-branch openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users documentation_url: https://docs.github.com/rest/branches/branch-protection#add-user-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users documentation_url: https://docs.github.com/rest/branches/branch-protection#set-user-access-restrictions openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/branches/{branch}/rename documentation_url: https://docs.github.com/rest/branches/branches#rename-a-branch openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/bypass-requests/push-rules documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/repos/bypass-requests#list-repository-push-rule-bypass-requests openapi_files: @@ -3797,84 +4017,100 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/repos/bypass-requests#get-a-repository-push-bypass-request openapi_files: - descriptions/ghec/ghec.json + - name: GET /repos/{owner}/{repo}/bypass-requests/secret-scanning + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/secret-scanning/delegated-bypass#list-bypass-requests-for-secret-scanning-for-a-repository + openapi_files: + - descriptions/ghec/ghec.json + - name: GET /repos/{owner}/{repo}/bypass-requests/secret-scanning/{bypass_request_number} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/secret-scanning/delegated-bypass#get-a-bypass-request-for-secret-scanning + openapi_files: + - descriptions/ghec/ghec.json + - name: PATCH /repos/{owner}/{repo}/bypass-requests/secret-scanning/{bypass_request_number} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/secret-scanning/delegated-bypass#review-a-bypass-request-for-secret-scanning + openapi_files: + - descriptions/ghec/ghec.json + - name: DELETE /repos/{owner}/{repo}/bypass-responses/secret-scanning/{bypass_response_id} + documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/secret-scanning/delegated-bypass#dismiss-a-response-on-a-bypass-request-for-secret-scanning + openapi_files: + - descriptions/ghec/ghec.json - name: POST /repos/{owner}/{repo}/check-runs documentation_url: https://docs.github.com/rest/checks/runs#create-a-check-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/check-runs/{check_run_id} documentation_url: https://docs.github.com/rest/checks/runs#get-a-check-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/check-runs/{check_run_id} documentation_url: https://docs.github.com/rest/checks/runs#update-a-check-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations documentation_url: https://docs.github.com/rest/checks/runs#list-check-run-annotations openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest documentation_url: https://docs.github.com/rest/checks/runs#rerequest-a-check-run openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/check-suites documentation_url: https://docs.github.com/rest/checks/suites#create-a-check-suite openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/check-suites/preferences documentation_url: https://docs.github.com/rest/checks/suites#update-repository-preferences-for-check-suites openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/check-suites/{check_suite_id} documentation_url: https://docs.github.com/rest/checks/suites#get-a-check-suite openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs documentation_url: https://docs.github.com/rest/checks/runs#list-check-runs-in-a-check-suite openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest documentation_url: https://docs.github.com/rest/checks/suites#rerequest-a-check-suite openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/code-scanning/alerts documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#list-code-scanning-alerts-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number} documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#get-a-code-scanning-alert openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number} documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-alert openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#get-the-status-of-an-autofix-for-a-code-scanning-alert openapi_files: @@ -3895,25 +4131,25 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/code-scanning/analyses documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#list-code-scanning-analyses-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id} documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#delete-a-code-scanning-analysis-from-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id} documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#get-a-code-scanning-analysis-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/code-scanning/codeql/databases documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#list-codeql-databases-for-a-repository openapi_files: @@ -3949,37 +4185,37 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/code-scanning/default-setup documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-default-setup-configuration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/code-scanning/sarifs documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#upload-an-analysis-as-sarif-data openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id} documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#get-information-about-a-sarif-upload openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/code-security-configuration documentation_url: https://docs.github.com/rest/code-security/configurations#get-the-code-security-configuration-associated-with-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/codeowners/errors documentation_url: https://docs.github.com/rest/repos/repos#list-codeowners-errors openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/codespaces documentation_url: https://docs.github.com/rest/codespaces/codespaces#list-codespaces-in-a-repository-for-the-authenticated-user openapi_files: @@ -4040,133 +4276,133 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/collaborators/{username} documentation_url: https://docs.github.com/rest/collaborators/collaborators#remove-a-repository-collaborator openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/collaborators/{username} documentation_url: https://docs.github.com/rest/collaborators/collaborators#check-if-a-user-is-a-repository-collaborator openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/collaborators/{username} documentation_url: https://docs.github.com/rest/collaborators/collaborators#add-a-repository-collaborator openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/collaborators/{username}/permission documentation_url: https://docs.github.com/rest/collaborators/collaborators#get-repository-permissions-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/comments documentation_url: https://docs.github.com/rest/commits/comments#list-commit-comments-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/comments/{comment_id} documentation_url: https://docs.github.com/rest/commits/comments#delete-a-commit-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/comments/{comment_id} documentation_url: https://docs.github.com/rest/commits/comments#get-a-commit-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/comments/{comment_id} documentation_url: https://docs.github.com/rest/commits/comments#update-a-commit-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/comments/{comment_id}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-commit-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/comments/{comment_id}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-commit-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id} documentation_url: https://docs.github.com/rest/reactions/reactions#delete-a-commit-comment-reaction openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/commits documentation_url: https://docs.github.com/rest/commits/commits#list-commits openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head documentation_url: https://docs.github.com/rest/commits/commits#list-branches-for-head-commit openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/commits/{commit_sha}/comments documentation_url: https://docs.github.com/rest/commits/comments#list-commit-comments openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/commits/{commit_sha}/comments documentation_url: https://docs.github.com/rest/commits/comments#create-a-commit-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls documentation_url: https://docs.github.com/rest/commits/commits#list-pull-requests-associated-with-a-commit openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/commits/{ref} documentation_url: https://docs.github.com/rest/commits/commits#get-a-commit openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/commits/{ref}/check-runs documentation_url: https://docs.github.com/rest/checks/runs#list-check-runs-for-a-git-reference openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/commits/{ref}/check-suites documentation_url: https://docs.github.com/rest/checks/suites#list-check-suites-for-a-git-reference openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/commits/{ref}/status documentation_url: https://docs.github.com/rest/commits/statuses#get-the-combined-status-for-a-specific-reference openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/commits/{ref}/statuses documentation_url: https://docs.github.com/rest/commits/statuses#list-commit-statuses-for-a-reference openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/community/profile documentation_url: https://docs.github.com/rest/metrics/community#get-community-profile-metrics openapi_files: @@ -4177,7 +4413,7 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/content_references/{content_reference_id}/attachments documentation_url: https://docs.github.com/enterprise-server@3.3/rest/reference/apps#create-a-content-attachment openapi_files: @@ -4187,451 +4423,451 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/contents/{path} documentation_url: https://docs.github.com/rest/repos/contents#get-repository-content openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/contents/{path} documentation_url: https://docs.github.com/rest/repos/contents#create-or-update-file-contents openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/contributors documentation_url: https://docs.github.com/rest/repos/repos#list-repository-contributors openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/dependabot/alerts documentation_url: https://docs.github.com/rest/dependabot/alerts#list-dependabot-alerts-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number} documentation_url: https://docs.github.com/rest/dependabot/alerts#get-a-dependabot-alert openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number} documentation_url: https://docs.github.com/rest/dependabot/alerts#update-a-dependabot-alert openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/dependabot/secrets documentation_url: https://docs.github.com/rest/dependabot/secrets#list-repository-secrets openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/dependabot/secrets/public-key documentation_url: https://docs.github.com/rest/dependabot/secrets#get-a-repository-public-key openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name} documentation_url: https://docs.github.com/rest/dependabot/secrets#delete-a-repository-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name} documentation_url: https://docs.github.com/rest/dependabot/secrets#get-a-repository-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name} documentation_url: https://docs.github.com/rest/dependabot/secrets#create-or-update-a-repository-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead} documentation_url: https://docs.github.com/rest/dependency-graph/dependency-review#get-a-diff-of-the-dependencies-between-commits openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/dependency-graph/sbom documentation_url: https://docs.github.com/rest/dependency-graph/sboms#export-a-software-bill-of-materials-sbom-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/dependency-graph/snapshots documentation_url: https://docs.github.com/rest/dependency-graph/dependency-submission#create-a-snapshot-of-dependencies-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/deployments documentation_url: https://docs.github.com/rest/deployments/deployments#list-deployments openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/deployments documentation_url: https://docs.github.com/rest/deployments/deployments#create-a-deployment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/deployments/{deployment_id} documentation_url: https://docs.github.com/rest/deployments/deployments#delete-a-deployment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/deployments/{deployment_id} documentation_url: https://docs.github.com/rest/deployments/deployments#get-a-deployment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses documentation_url: https://docs.github.com/rest/deployments/statuses#list-deployment-statuses openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses documentation_url: https://docs.github.com/rest/deployments/statuses#create-a-deployment-status openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id} documentation_url: https://docs.github.com/rest/deployments/statuses#get-a-deployment-status openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/dispatches documentation_url: https://docs.github.com/rest/repos/repos#create-a-repository-dispatch-event openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments documentation_url: https://docs.github.com/rest/deployments/environments#list-environments openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/environments/{environment_name} documentation_url: https://docs.github.com/rest/deployments/environments#delete-an-environment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name} documentation_url: https://docs.github.com/rest/deployments/environments#get-an-environment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/environments/{environment_name} documentation_url: https://docs.github.com/rest/deployments/environments#create-or-update-an-environment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies documentation_url: https://docs.github.com/rest/deployments/branch-policies#list-deployment-branch-policies openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies documentation_url: https://docs.github.com/rest/deployments/branch-policies#create-a-deployment-branch-policy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id} documentation_url: https://docs.github.com/rest/deployments/branch-policies#delete-a-deployment-branch-policy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id} documentation_url: https://docs.github.com/rest/deployments/branch-policies#get-a-deployment-branch-policy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id} documentation_url: https://docs.github.com/rest/deployments/branch-policies#update-a-deployment-branch-policy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules documentation_url: https://docs.github.com/rest/deployments/protection-rules#get-all-deployment-protection-rules-for-an-environment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules documentation_url: https://docs.github.com/rest/deployments/protection-rules#create-a-custom-deployment-protection-rule-on-an-environment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps documentation_url: https://docs.github.com/rest/deployments/protection-rules#list-custom-deployment-rule-integrations-available-for-an-environment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id} documentation_url: https://docs.github.com/rest/deployments/protection-rules#disable-a-custom-protection-rule-for-an-environment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id} documentation_url: https://docs.github.com/rest/deployments/protection-rules#get-a-custom-deployment-protection-rule openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/secrets documentation_url: https://docs.github.com/rest/actions/secrets#list-environment-secrets openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key documentation_url: https://docs.github.com/rest/actions/secrets#get-an-environment-public-key openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name} documentation_url: https://docs.github.com/rest/actions/secrets#delete-an-environment-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name} documentation_url: https://docs.github.com/rest/actions/secrets#get-an-environment-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name} documentation_url: https://docs.github.com/rest/actions/secrets#create-or-update-an-environment-secret openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/variables documentation_url: https://docs.github.com/rest/actions/variables#list-environment-variables openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/environments/{environment_name}/variables documentation_url: https://docs.github.com/rest/actions/variables#create-an-environment-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name} documentation_url: https://docs.github.com/rest/actions/variables#delete-an-environment-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name} documentation_url: https://docs.github.com/rest/actions/variables#get-an-environment-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name} documentation_url: https://docs.github.com/rest/actions/variables#update-an-environment-variable openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/events documentation_url: https://docs.github.com/rest/activity/events#list-repository-events openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/forks documentation_url: https://docs.github.com/rest/repos/forks#list-forks openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/forks documentation_url: https://docs.github.com/rest/repos/forks#create-a-fork openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/git/blobs documentation_url: https://docs.github.com/rest/git/blobs#create-a-blob openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/git/blobs/{file_sha} documentation_url: https://docs.github.com/rest/git/blobs#get-a-blob openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/git/commits documentation_url: https://docs.github.com/rest/git/commits#create-a-commit openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/git/commits/{commit_sha} documentation_url: https://docs.github.com/rest/git/commits#get-a-commit-object openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/git/matching-refs/{ref} documentation_url: https://docs.github.com/rest/git/refs#list-matching-references openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/git/ref/{ref} documentation_url: https://docs.github.com/rest/git/refs#get-a-reference openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/git/refs documentation_url: https://docs.github.com/rest/git/refs#create-a-reference openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/git/refs/{ref} documentation_url: https://docs.github.com/rest/git/refs#delete-a-reference openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/git/refs/{ref} documentation_url: https://docs.github.com/rest/git/refs#update-a-reference openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/git/tags documentation_url: https://docs.github.com/rest/git/tags#create-a-tag-object openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/git/tags/{tag_sha} documentation_url: https://docs.github.com/rest/git/tags#get-a-tag openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/git/trees documentation_url: https://docs.github.com/rest/git/trees#create-a-tree openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/git/trees/{tree_sha} documentation_url: https://docs.github.com/rest/git/trees#get-a-tree openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/hooks documentation_url: https://docs.github.com/rest/repos/webhooks#list-repository-webhooks openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/hooks documentation_url: https://docs.github.com/rest/repos/webhooks#create-a-repository-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/hooks/{hook_id} documentation_url: https://docs.github.com/rest/repos/webhooks#delete-a-repository-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/hooks/{hook_id} documentation_url: https://docs.github.com/rest/repos/webhooks#get-a-repository-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/hooks/{hook_id} documentation_url: https://docs.github.com/rest/repos/webhooks#update-a-repository-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/hooks/{hook_id}/config documentation_url: https://docs.github.com/rest/repos/webhooks#get-a-webhook-configuration-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config documentation_url: https://docs.github.com/rest/repos/webhooks#update-a-webhook-configuration-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries documentation_url: https://docs.github.com/rest/repos/webhooks#list-deliveries-for-a-repository-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id} documentation_url: https://docs.github.com/rest/repos/webhooks#get-a-delivery-for-a-repository-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts documentation_url: https://docs.github.com/rest/repos/webhooks#redeliver-a-delivery-for-a-repository-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/hooks/{hook_id}/pings documentation_url: https://docs.github.com/rest/repos/webhooks#ping-a-repository-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/hooks/{hook_id}/tests documentation_url: https://docs.github.com/rest/repos/webhooks#test-the-push-repository-webhook openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/import documentation_url: https://docs.github.com/rest/migrations/source-imports#cancel-an-import openapi_files: @@ -4677,7 +4913,7 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/interaction-limits documentation_url: https://docs.github.com/rest/interactions/repos#remove-interaction-restrictions-for-a-repository openapi_files: @@ -4698,193 +4934,193 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/invitations/{invitation_id} documentation_url: https://docs.github.com/rest/collaborators/invitations#delete-a-repository-invitation openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/invitations/{invitation_id} documentation_url: https://docs.github.com/rest/collaborators/invitations#update-a-repository-invitation openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues documentation_url: https://docs.github.com/rest/issues/issues#list-repository-issues openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/issues documentation_url: https://docs.github.com/rest/issues/issues#create-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/comments documentation_url: https://docs.github.com/rest/issues/comments#list-issue-comments-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/issues/comments/{comment_id} documentation_url: https://docs.github.com/rest/issues/comments#delete-an-issue-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/comments/{comment_id} documentation_url: https://docs.github.com/rest/issues/comments#get-an-issue-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/issues/comments/{comment_id} documentation_url: https://docs.github.com/rest/issues/comments#update-an-issue-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#list-reactions-for-an-issue-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#create-reaction-for-an-issue-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id} documentation_url: https://docs.github.com/rest/reactions/reactions#delete-an-issue-comment-reaction openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/events documentation_url: https://docs.github.com/rest/issues/events#list-issue-events-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/events/{event_id} documentation_url: https://docs.github.com/rest/issues/events#get-an-issue-event openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/{issue_number} documentation_url: https://docs.github.com/rest/issues/issues#get-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/issues/{issue_number} documentation_url: https://docs.github.com/rest/issues/issues#update-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees documentation_url: https://docs.github.com/rest/issues/assignees#remove-assignees-from-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/issues/{issue_number}/assignees documentation_url: https://docs.github.com/rest/issues/assignees#add-assignees-to-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee} documentation_url: https://docs.github.com/rest/issues/assignees#check-if-a-user-can-be-assigned-to-a-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/{issue_number}/comments documentation_url: https://docs.github.com/rest/issues/comments#list-issue-comments openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/issues/{issue_number}/comments documentation_url: https://docs.github.com/rest/issues/comments#create-an-issue-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/{issue_number}/events documentation_url: https://docs.github.com/rest/issues/events#list-issue-events openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels documentation_url: https://docs.github.com/rest/issues/labels#remove-all-labels-from-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/{issue_number}/labels documentation_url: https://docs.github.com/rest/issues/labels#list-labels-for-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/issues/{issue_number}/labels documentation_url: https://docs.github.com/rest/issues/labels#add-labels-to-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/issues/{issue_number}/labels documentation_url: https://docs.github.com/rest/issues/labels#set-labels-for-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name} documentation_url: https://docs.github.com/rest/issues/labels#remove-a-label-from-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock documentation_url: https://docs.github.com/rest/issues/issues#unlock-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/issues/{issue_number}/lock documentation_url: https://docs.github.com/rest/issues/issues#lock-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/issues/{issue_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#list-reactions-for-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/issues/{issue_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#create-reaction-for-an-issue openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id} documentation_url: https://docs.github.com/rest/reactions/reactions#delete-an-issue-reaction openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/issues/{issue_number}/sub_issue documentation_url: https://docs.github.com/rest/issues/sub-issues#remove-sub-issue openapi_files: @@ -4910,191 +5146,191 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/keys documentation_url: https://docs.github.com/rest/deploy-keys/deploy-keys#list-deploy-keys openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/keys documentation_url: https://docs.github.com/rest/deploy-keys/deploy-keys#create-a-deploy-key openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/keys/{key_id} documentation_url: https://docs.github.com/rest/deploy-keys/deploy-keys#delete-a-deploy-key openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/keys/{key_id} documentation_url: https://docs.github.com/rest/deploy-keys/deploy-keys#get-a-deploy-key openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/labels documentation_url: https://docs.github.com/rest/issues/labels#list-labels-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/labels documentation_url: https://docs.github.com/rest/issues/labels#create-a-label openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/labels/{name} documentation_url: https://docs.github.com/rest/issues/labels#delete-a-label openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/labels/{name} documentation_url: https://docs.github.com/rest/issues/labels#get-a-label openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/labels/{name} documentation_url: https://docs.github.com/rest/issues/labels#update-a-label openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/languages documentation_url: https://docs.github.com/rest/repos/repos#list-repository-languages openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/lfs documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/repos/lfs#disable-git-lfs-for-a-repository openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/lfs documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/repos/lfs#enable-git-lfs-for-a-repository openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/license documentation_url: https://docs.github.com/rest/licenses/licenses#get-the-license-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/merge-upstream documentation_url: https://docs.github.com/rest/branches/branches#sync-a-fork-branch-with-the-upstream-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/merges documentation_url: https://docs.github.com/rest/branches/branches#merge-a-branch openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/milestones documentation_url: https://docs.github.com/rest/issues/milestones#list-milestones openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/milestones documentation_url: https://docs.github.com/rest/issues/milestones#create-a-milestone openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/milestones/{milestone_number} documentation_url: https://docs.github.com/rest/issues/milestones#delete-a-milestone openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/milestones/{milestone_number} documentation_url: https://docs.github.com/rest/issues/milestones#get-a-milestone openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/milestones/{milestone_number} documentation_url: https://docs.github.com/rest/issues/milestones#update-a-milestone openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels documentation_url: https://docs.github.com/rest/issues/labels#list-labels-for-issues-in-a-milestone openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/notifications documentation_url: https://docs.github.com/rest/activity/notifications#list-repository-notifications-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/notifications documentation_url: https://docs.github.com/rest/activity/notifications#mark-repository-notifications-as-read openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/pages documentation_url: https://docs.github.com/rest/pages/pages#delete-a-apiname-pages-site openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pages documentation_url: https://docs.github.com/rest/pages/pages#get-a-apiname-pages-site openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pages documentation_url: https://docs.github.com/rest/pages/pages#create-a-apiname-pages-site openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/pages documentation_url: https://docs.github.com/rest/pages/pages#update-information-about-a-apiname-pages-site openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pages/builds documentation_url: https://docs.github.com/rest/pages/pages#list-apiname-pages-builds openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pages/builds documentation_url: https://docs.github.com/rest/pages/pages#request-a-apiname-pages-build openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pages/builds/latest documentation_url: https://docs.github.com/rest/pages/pages#get-latest-pages-build openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pages/builds/{build_id} documentation_url: https://docs.github.com/rest/pages/pages#get-apiname-pages-build openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pages/deployment documentation_url: https://docs.github.com/enterprise-server@3.7/rest/pages/pages#create-a-github-pages-deployment openapi_files: @@ -5104,40 +5340,40 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id} documentation_url: https://docs.github.com/rest/pages/pages#get-the-status-of-a-github-pages-deployment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel documentation_url: https://docs.github.com/rest/pages/pages#cancel-a-github-pages-deployment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pages/health documentation_url: https://docs.github.com/rest/pages/pages#get-a-dns-health-check-for-github-pages openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - name: GET /repos/{owner}/{repo}/pre-receive-hooks - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/repo-pre-receive-hooks#list-pre-receive-hooks-for-a-repository + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/repo-pre-receive-hooks#list-pre-receive-hooks-for-a-repository openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/repo-pre-receive-hooks#remove-pre-receive-hook-enforcement-for-a-repository + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/repo-pre-receive-hooks#remove-pre-receive-hook-enforcement-for-a-repository openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/repo-pre-receive-hooks#get-a-pre-receive-hook-for-a-repository + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/repo-pre-receive-hooks#get-a-pre-receive-hook-for-a-repository openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id} - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/repo-pre-receive-hooks#update-pre-receive-hook-enforcement-for-a-repository + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/repo-pre-receive-hooks#update-pre-receive-hook-enforcement-for-a-repository openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/private-vulnerability-reporting documentation_url: https://docs.github.com/rest/repos/repos#disable-private-vulnerability-reporting-for-a-repository openapi_files: @@ -5158,91 +5394,91 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/projects documentation_url: https://docs.github.com/rest/projects/projects#create-a-repository-project openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/properties/values documentation_url: https://docs.github.com/rest/repos/custom-properties#get-all-custom-property-values-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/properties/values documentation_url: https://docs.github.com/rest/repos/custom-properties#create-or-update-custom-property-values-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls documentation_url: https://docs.github.com/rest/pulls/pulls#list-pull-requests openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pulls documentation_url: https://docs.github.com/rest/pulls/pulls#create-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/comments documentation_url: https://docs.github.com/rest/pulls/comments#list-review-comments-in-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id} documentation_url: https://docs.github.com/rest/pulls/comments#delete-a-review-comment-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/comments/{comment_id} documentation_url: https://docs.github.com/rest/pulls/comments#get-a-review-comment-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id} documentation_url: https://docs.github.com/rest/pulls/comments#update-a-review-comment-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-pull-request-review-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-pull-request-review-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id} documentation_url: https://docs.github.com/rest/reactions/reactions#delete-a-pull-request-comment-reaction openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/{pull_number} documentation_url: https://docs.github.com/rest/pulls/pulls#get-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/pulls/{pull_number} documentation_url: https://docs.github.com/rest/pulls/pulls#update-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces documentation_url: https://docs.github.com/rest/codespaces/codespaces#create-a-codespace-from-a-pull-request openapi_files: @@ -5253,310 +5489,321 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pulls/{pull_number}/comments documentation_url: https://docs.github.com/rest/pulls/comments#create-a-review-comment-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies documentation_url: https://docs.github.com/rest/pulls/comments#create-a-reply-for-a-review-comment openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/{pull_number}/commits documentation_url: https://docs.github.com/rest/pulls/pulls#list-commits-on-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/{pull_number}/files documentation_url: https://docs.github.com/rest/pulls/pulls#list-pull-requests-files openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/{pull_number}/merge documentation_url: https://docs.github.com/rest/pulls/pulls#check-if-a-pull-request-has-been-merged openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge documentation_url: https://docs.github.com/rest/pulls/pulls#merge-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers documentation_url: https://docs.github.com/rest/pulls/review-requests#remove-requested-reviewers-from-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers documentation_url: https://docs.github.com/rest/pulls/review-requests#get-all-requested-reviewers-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers documentation_url: https://docs.github.com/rest/pulls/review-requests#request-reviewers-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews documentation_url: https://docs.github.com/rest/pulls/reviews#list-reviews-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews documentation_url: https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id} documentation_url: https://docs.github.com/rest/pulls/reviews#delete-a-pending-review-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id} documentation_url: https://docs.github.com/rest/pulls/reviews#get-a-review-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id} documentation_url: https://docs.github.com/rest/pulls/reviews#update-a-review-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments documentation_url: https://docs.github.com/rest/pulls/reviews#list-comments-for-a-pull-request-review openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals documentation_url: https://docs.github.com/rest/pulls/reviews#dismiss-a-review-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events documentation_url: https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch documentation_url: https://docs.github.com/rest/pulls/pulls#update-a-pull-request-branch openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/readme documentation_url: https://docs.github.com/rest/repos/contents#get-a-repository-readme openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/readme/{dir} documentation_url: https://docs.github.com/rest/repos/contents#get-a-repository-readme-for-a-directory openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/releases documentation_url: https://docs.github.com/rest/releases/releases#list-releases openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/releases documentation_url: https://docs.github.com/rest/releases/releases#create-a-release openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/releases/assets/{asset_id} documentation_url: https://docs.github.com/rest/releases/assets#delete-a-release-asset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/releases/assets/{asset_id} documentation_url: https://docs.github.com/rest/releases/assets#get-a-release-asset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/releases/assets/{asset_id} documentation_url: https://docs.github.com/rest/releases/assets#update-a-release-asset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/releases/generate-notes documentation_url: https://docs.github.com/rest/releases/releases#generate-release-notes-content-for-a-release openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/releases/latest documentation_url: https://docs.github.com/rest/releases/releases#get-the-latest-release openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/releases/tags/{tag} documentation_url: https://docs.github.com/rest/releases/releases#get-a-release-by-tag-name openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/releases/{release_id} documentation_url: https://docs.github.com/rest/releases/releases#delete-a-release openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/releases/{release_id} documentation_url: https://docs.github.com/rest/releases/releases#get-a-release openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/releases/{release_id} documentation_url: https://docs.github.com/rest/releases/releases#update-a-release openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/releases/{release_id}/assets documentation_url: https://docs.github.com/rest/releases/assets#list-release-assets openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/releases/{release_id}/assets documentation_url: https://docs.github.com/rest/releases/assets#upload-a-release-asset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/releases/{release_id}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-release openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/releases/{release_id}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-release openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id} documentation_url: https://docs.github.com/rest/reactions/reactions#delete-a-release-reaction openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/replicas/caches - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/repos/repos#list-repository-cache-replication-status + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/repos/repos#list-repository-cache-replication-status openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/rules/branches/{branch} documentation_url: https://docs.github.com/rest/repos/rules#get-rules-for-a-branch openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/rulesets documentation_url: https://docs.github.com/rest/repos/rules#get-all-repository-rulesets openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/rulesets documentation_url: https://docs.github.com/rest/repos/rules#create-a-repository-ruleset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/rulesets/rule-suites documentation_url: https://docs.github.com/rest/repos/rule-suites#list-repository-rule-suites openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id} documentation_url: https://docs.github.com/rest/repos/rule-suites#get-a-repository-rule-suite openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id} documentation_url: https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/rulesets/{ruleset_id} documentation_url: https://docs.github.com/rest/repos/rules#get-a-repository-ruleset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/rulesets/{ruleset_id} documentation_url: https://docs.github.com/rest/repos/rules#update-a-repository-ruleset openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json + - name: GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history + documentation_url: https://docs.github.com/rest/repos/rules#get-repository-ruleset-history + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json + - name: GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id} + documentation_url: https://docs.github.com/rest/repos/rules#get-repository-ruleset-version + openapi_files: + - descriptions/api.github.com/api.github.com.json + - descriptions/ghec/ghec.json - name: GET /repos/{owner}/{repo}/secret-scanning/alerts documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number} documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#get-a-secret-scanning-alert openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number} documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#update-a-secret-scanning-alert openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#list-locations-for-a-secret-scanning-alert openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/secret-scanning/push-protection-bypasses documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#create-a-push-protection-bypass openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/secret-scanning/scan-history documentation_url: https://docs.github.com/rest/secret-scanning/secret-scanning#get-secret-scanning-scan-history-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/security-advisories documentation_url: https://docs.github.com/rest/security-advisories/repository-advisories#list-repository-security-advisories openapi_files: @@ -5597,115 +5844,115 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/stats/code_frequency documentation_url: https://docs.github.com/rest/metrics/statistics#get-the-weekly-commit-activity openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/stats/commit_activity documentation_url: https://docs.github.com/rest/metrics/statistics#get-the-last-year-of-commit-activity openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/stats/contributors documentation_url: https://docs.github.com/rest/metrics/statistics#get-all-contributor-commit-activity openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/stats/participation documentation_url: https://docs.github.com/rest/metrics/statistics#get-the-weekly-commit-count openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/stats/punch_card documentation_url: https://docs.github.com/rest/metrics/statistics#get-the-hourly-commit-count-for-each-day openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/statuses/{sha} documentation_url: https://docs.github.com/rest/commits/statuses#create-a-commit-status openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/subscribers documentation_url: https://docs.github.com/rest/activity/watching#list-watchers openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/subscription documentation_url: https://docs.github.com/rest/activity/watching#delete-a-repository-subscription openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/subscription documentation_url: https://docs.github.com/rest/activity/watching#get-a-repository-subscription openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/subscription documentation_url: https://docs.github.com/rest/activity/watching#set-a-repository-subscription openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/tags documentation_url: https://docs.github.com/rest/repos/repos#list-repository-tags openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/tags/protection documentation_url: https://docs.github.com/rest/repos/tags#closing-down---list-tag-protection-states-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{owner}/{repo}/tags/protection documentation_url: https://docs.github.com/rest/repos/tags#closing-down---create-a-tag-protection-state-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id} documentation_url: https://docs.github.com/rest/repos/tags#closing-down---delete-a-tag-protection-state-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/tarball/{ref} documentation_url: https://docs.github.com/rest/repos/contents#download-a-repository-archive-tar openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/teams documentation_url: https://docs.github.com/rest/repos/repos#list-repository-teams openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/topics documentation_url: https://docs.github.com/rest/repos/repos#get-all-repository-topics openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/topics documentation_url: https://docs.github.com/rest/repos/repos#replace-all-repository-topics openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/traffic/clones documentation_url: https://docs.github.com/rest/metrics/traffic#get-repository-clones openapi_files: @@ -5731,43 +5978,43 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /repos/{owner}/{repo}/vulnerability-alerts documentation_url: https://docs.github.com/rest/repos/repos#disable-vulnerability-alerts openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/vulnerability-alerts documentation_url: https://docs.github.com/rest/repos/repos#check-if-vulnerability-alerts-are-enabled-for-a-repository openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /repos/{owner}/{repo}/vulnerability-alerts documentation_url: https://docs.github.com/rest/repos/repos#enable-vulnerability-alerts openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repos/{owner}/{repo}/zipball/{ref} documentation_url: https://docs.github.com/rest/repos/contents#download-a-repository-archive-zip openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /repos/{template_owner}/{template_repo}/generate documentation_url: https://docs.github.com/rest/repos/repos#create-a-repository-using-a-template openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repositories documentation_url: https://docs.github.com/rest/repos/repos#list-public-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /repositories/{repository_id}/environments/{environment_name}/secrets documentation_url: https://docs.github.com/enterprise-server@3.7/rest/actions/secrets#list-environment-secrets openapi_files: @@ -5840,62 +6087,62 @@ openapi_operations: documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#list-provisioned-scim-groups-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /scim/v2/enterprises/{enterprise}/Groups documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#provision-a-scim-enterprise-group openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /scim/v2/enterprises/{enterprise}/Groups/{scim_group_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#delete-a-scim-group-from-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /scim/v2/enterprises/{enterprise}/Groups/{scim_group_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#get-scim-provisioning-information-for-an-enterprise-group openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /scim/v2/enterprises/{enterprise}/Groups/{scim_group_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#update-an-attribute-for-a-scim-enterprise-group openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /scim/v2/enterprises/{enterprise}/Groups/{scim_group_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#set-scim-information-for-a-provisioned-enterprise-group openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /scim/v2/enterprises/{enterprise}/Users documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#list-scim-provisioned-identities-for-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /scim/v2/enterprises/{enterprise}/Users documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#provision-a-scim-enterprise-user openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /scim/v2/enterprises/{enterprise}/Users/{scim_user_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#delete-a-scim-user-from-an-enterprise openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /scim/v2/enterprises/{enterprise}/Users/{scim_user_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#get-scim-provisioning-information-for-an-enterprise-user openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /scim/v2/enterprises/{enterprise}/Users/{scim_user_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#update-an-attribute-for-a-scim-enterprise-user openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /scim/v2/enterprises/{enterprise}/Users/{scim_user_id} documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/enterprise-admin/scim#set-scim-information-for-a-provisioned-enterprise-user openapi_files: - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /scim/v2/organizations/{org}/Users documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/scim/scim#list-scim-provisioned-identities openapi_files: @@ -5925,43 +6172,43 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /search/commits documentation_url: https://docs.github.com/rest/search/search#search-commits openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /search/issues documentation_url: https://docs.github.com/rest/search/search#search-issues-and-pull-requests openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /search/labels documentation_url: https://docs.github.com/rest/search/search#search-labels openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /search/repositories documentation_url: https://docs.github.com/rest/search/search#search-repositories openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /search/topics documentation_url: https://docs.github.com/rest/search/search#search-topics openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /search/users documentation_url: https://docs.github.com/rest/search/search#search-users openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /setup/api/configcheck documentation_url: https://docs.github.com/enterprise-server@3.14/rest/enterprise-admin/management-console#get-the-configuration-status openapi_files: @@ -6011,103 +6258,103 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id} documentation_url: https://docs.github.com/rest/teams/teams#get-a-team-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /teams/{team_id} documentation_url: https://docs.github.com/rest/teams/teams#update-a-team-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/discussions documentation_url: https://docs.github.com/rest/teams/discussions#list-discussions-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /teams/{team_id}/discussions documentation_url: https://docs.github.com/rest/teams/discussions#create-a-discussion-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /teams/{team_id}/discussions/{discussion_number} documentation_url: https://docs.github.com/rest/teams/discussions#delete-a-discussion-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/discussions/{discussion_number} documentation_url: https://docs.github.com/rest/teams/discussions#get-a-discussion-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /teams/{team_id}/discussions/{discussion_number} documentation_url: https://docs.github.com/rest/teams/discussions#update-a-discussion-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/discussions/{discussion_number}/comments documentation_url: https://docs.github.com/rest/teams/discussion-comments#list-discussion-comments-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /teams/{team_id}/discussions/{discussion_number}/comments documentation_url: https://docs.github.com/rest/teams/discussion-comments#create-a-discussion-comment-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number} documentation_url: https://docs.github.com/rest/teams/discussion-comments#delete-a-discussion-comment-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number} documentation_url: https://docs.github.com/rest/teams/discussion-comments#get-a-discussion-comment-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number} documentation_url: https://docs.github.com/rest/teams/discussion-comments#update-a-discussion-comment-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-team-discussion-comment-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-team-discussion-comment-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/discussions/{discussion_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-team-discussion-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /teams/{team_id}/discussions/{discussion_number}/reactions documentation_url: https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-team-discussion-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/invitations documentation_url: https://docs.github.com/rest/teams/members#list-pending-team-invitations-legacy openapi_files: @@ -6118,91 +6365,91 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /teams/{team_id}/members/{username} documentation_url: https://docs.github.com/rest/teams/members#remove-team-member-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/members/{username} documentation_url: https://docs.github.com/rest/teams/members#get-team-member-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /teams/{team_id}/members/{username} documentation_url: https://docs.github.com/rest/teams/members#add-team-member-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /teams/{team_id}/memberships/{username} documentation_url: https://docs.github.com/rest/teams/members#remove-team-membership-for-a-user-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/memberships/{username} documentation_url: https://docs.github.com/rest/teams/members#get-team-membership-for-a-user-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /teams/{team_id}/memberships/{username} documentation_url: https://docs.github.com/rest/teams/members#add-or-update-team-membership-for-a-user-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/projects documentation_url: https://docs.github.com/rest/teams/teams#list-team-projects-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /teams/{team_id}/projects/{project_id} documentation_url: https://docs.github.com/rest/teams/teams#remove-a-project-from-a-team-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/projects/{project_id} documentation_url: https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-project-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /teams/{team_id}/projects/{project_id} documentation_url: https://docs.github.com/rest/teams/teams#add-or-update-team-project-permissions-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/repos documentation_url: https://docs.github.com/rest/teams/teams#list-team-repositories-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /teams/{team_id}/repos/{owner}/{repo} documentation_url: https://docs.github.com/rest/teams/teams#remove-a-repository-from-a-team-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/repos/{owner}/{repo} documentation_url: https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /teams/{team_id}/repos/{owner}/{repo} documentation_url: https://docs.github.com/rest/teams/teams#add-or-update-team-repository-permissions-legacy openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /teams/{team_id}/team-sync/group-mappings documentation_url: https://docs.github.com/enterprise-cloud@latest//rest/teams/team-sync#list-idp-groups-for-a-team-legacy openapi_files: @@ -6216,19 +6463,19 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user documentation_url: https://docs.github.com/rest/users/users#get-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /user documentation_url: https://docs.github.com/rest/users/users#update-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/blocks documentation_url: https://docs.github.com/rest/users/blocking#list-users-blocked-by-the-authenticated-user openapi_files: @@ -6354,7 +6601,7 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /user/email/visibility documentation_url: https://docs.github.com/rest/users/emails#set-primary-email-visibility-for-the-authenticated-user openapi_files: @@ -6365,97 +6612,97 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/emails documentation_url: https://docs.github.com/rest/users/emails#list-email-addresses-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/emails documentation_url: https://docs.github.com/rest/users/emails#add-an-email-address-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/followers documentation_url: https://docs.github.com/rest/users/followers#list-followers-of-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/following documentation_url: https://docs.github.com/rest/users/followers#list-the-people-the-authenticated-user-follows openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/following/{username} documentation_url: https://docs.github.com/rest/users/followers#unfollow-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/following/{username} documentation_url: https://docs.github.com/rest/users/followers#check-if-a-person-is-followed-by-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /user/following/{username} documentation_url: https://docs.github.com/rest/users/followers#follow-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/gpg_keys documentation_url: https://docs.github.com/rest/users/gpg-keys#list-gpg-keys-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/gpg_keys documentation_url: https://docs.github.com/rest/users/gpg-keys#create-a-gpg-key-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/gpg_keys/{gpg_key_id} documentation_url: https://docs.github.com/rest/users/gpg-keys#delete-a-gpg-key-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/gpg_keys/{gpg_key_id} documentation_url: https://docs.github.com/rest/users/gpg-keys#get-a-gpg-key-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/installations documentation_url: https://docs.github.com/rest/apps/installations#list-app-installations-accessible-to-the-user-access-token openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/installations/{installation_id}/repositories documentation_url: https://docs.github.com/rest/apps/installations#list-repositories-accessible-to-the-user-access-token openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/installations/{installation_id}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/apps/installations#remove-a-repository-from-an-app-installation openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /user/installations/{installation_id}/repositories/{repository_id} documentation_url: https://docs.github.com/rest/apps/installations#add-a-repository-to-an-app-installation openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/interaction-limits documentation_url: https://docs.github.com/rest/interactions/user#remove-interaction-restrictions-from-your-public-repositories openapi_files: @@ -6476,31 +6723,31 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/keys documentation_url: https://docs.github.com/rest/users/keys#list-public-ssh-keys-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/keys documentation_url: https://docs.github.com/rest/users/keys#create-a-public-ssh-key-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/keys/{key_id} documentation_url: https://docs.github.com/rest/users/keys#delete-a-public-ssh-key-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/keys/{key_id} documentation_url: https://docs.github.com/rest/users/keys#get-a-public-ssh-key-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/marketplace_purchases documentation_url: https://docs.github.com/rest/apps/marketplace#list-subscriptions-for-the-authenticated-user openapi_files: @@ -6516,31 +6763,31 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/memberships/orgs/{org} documentation_url: https://docs.github.com/rest/orgs/members#get-an-organization-membership-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /user/memberships/orgs/{org} documentation_url: https://docs.github.com/rest/orgs/members#update-an-organization-membership-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/migrations documentation_url: https://docs.github.com/rest/migrations/users#list-user-migrations openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/migrations documentation_url: https://docs.github.com/rest/migrations/users#start-a-user-migration openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/migrations/{migration_id} documentation_url: https://docs.github.com/rest/migrations/users#get-a-user-migration-status openapi_files: @@ -6556,7 +6803,7 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock documentation_url: https://docs.github.com/rest/migrations/users#unlock-a-user-repository openapi_files: @@ -6567,199 +6814,199 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/orgs documentation_url: https://docs.github.com/rest/orgs/orgs#list-organizations-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/packages documentation_url: https://docs.github.com/rest/packages/packages#list-packages-for-the-authenticated-users-namespace openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/packages/{package_type}/{package_name} documentation_url: https://docs.github.com/rest/packages/packages#delete-a-package-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/packages/{package_type}/{package_name} documentation_url: https://docs.github.com/rest/packages/packages#get-a-package-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/packages/{package_type}/{package_name}/restore documentation_url: https://docs.github.com/rest/packages/packages#restore-a-package-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/packages/{package_type}/{package_name}/versions documentation_url: https://docs.github.com/rest/packages/packages#list-package-versions-for-a-package-owned-by-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id} documentation_url: https://docs.github.com/rest/packages/packages#delete-a-package-version-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/packages/{package_type}/{package_name}/versions/{package_version_id} documentation_url: https://docs.github.com/rest/packages/packages#get-a-package-version-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore documentation_url: https://docs.github.com/rest/packages/packages#restore-a-package-version-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/projects documentation_url: https://docs.github.com/rest/projects/projects#create-a-user-project openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/public_emails documentation_url: https://docs.github.com/rest/users/emails#list-public-email-addresses-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/repos documentation_url: https://docs.github.com/rest/repos/repos#list-repositories-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/repos documentation_url: https://docs.github.com/rest/repos/repos#create-a-repository-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/repository_invitations documentation_url: https://docs.github.com/rest/collaborators/invitations#list-repository-invitations-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/repository_invitations/{invitation_id} documentation_url: https://docs.github.com/rest/collaborators/invitations#decline-a-repository-invitation openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PATCH /user/repository_invitations/{invitation_id} documentation_url: https://docs.github.com/rest/collaborators/invitations#accept-a-repository-invitation openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/social_accounts documentation_url: https://docs.github.com/rest/users/social-accounts#delete-social-accounts-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/social_accounts documentation_url: https://docs.github.com/rest/users/social-accounts#list-social-accounts-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/social_accounts documentation_url: https://docs.github.com/rest/users/social-accounts#add-social-accounts-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/ssh_signing_keys documentation_url: https://docs.github.com/rest/users/ssh-signing-keys#list-ssh-signing-keys-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /user/ssh_signing_keys documentation_url: https://docs.github.com/rest/users/ssh-signing-keys#create-a-ssh-signing-key-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/ssh_signing_keys/{ssh_signing_key_id} documentation_url: https://docs.github.com/rest/users/ssh-signing-keys#delete-an-ssh-signing-key-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/ssh_signing_keys/{ssh_signing_key_id} documentation_url: https://docs.github.com/rest/users/ssh-signing-keys#get-an-ssh-signing-key-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/starred documentation_url: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /user/starred/{owner}/{repo} documentation_url: https://docs.github.com/rest/activity/starring#unstar-a-repository-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/starred/{owner}/{repo} documentation_url: https://docs.github.com/rest/activity/starring#check-if-a-repository-is-starred-by-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /user/starred/{owner}/{repo} documentation_url: https://docs.github.com/rest/activity/starring#star-a-repository-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/subscriptions documentation_url: https://docs.github.com/rest/activity/watching#list-repositories-watched-by-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/teams documentation_url: https://docs.github.com/rest/teams/teams#list-teams-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /user/{account_id} documentation_url: https://docs.github.com/rest/users/users#get-a-user-using-their-id openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users documentation_url: https://docs.github.com/rest/users/users#list-users openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username} documentation_url: https://docs.github.com/rest/users/users#get-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/attestations/{subject_digest} documentation_url: https://docs.github.com/rest/users/attestations#list-attestations openapi_files: @@ -6770,151 +7017,151 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/events documentation_url: https://docs.github.com/rest/activity/events#list-events-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/events/orgs/{org} documentation_url: https://docs.github.com/rest/activity/events#list-organization-events-for-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/events/public documentation_url: https://docs.github.com/rest/activity/events#list-public-events-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/followers documentation_url: https://docs.github.com/rest/users/followers#list-followers-of-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/following documentation_url: https://docs.github.com/rest/users/followers#list-the-people-a-user-follows openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/following/{target_user} documentation_url: https://docs.github.com/rest/users/followers#check-if-a-user-follows-another-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/gists documentation_url: https://docs.github.com/rest/gists/gists#list-gists-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/gpg_keys documentation_url: https://docs.github.com/rest/users/gpg-keys#list-gpg-keys-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/hovercard documentation_url: https://docs.github.com/rest/users/users#get-contextual-information-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/installation documentation_url: https://docs.github.com/rest/apps/apps#get-a-user-installation-for-the-authenticated-app openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/keys documentation_url: https://docs.github.com/rest/users/keys#list-public-keys-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/orgs documentation_url: https://docs.github.com/rest/orgs/orgs#list-organizations-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/packages documentation_url: https://docs.github.com/rest/packages/packages#list-packages-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /users/{username}/packages/{package_type}/{package_name} documentation_url: https://docs.github.com/rest/packages/packages#delete-a-package-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/packages/{package_type}/{package_name} documentation_url: https://docs.github.com/rest/packages/packages#get-a-package-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /users/{username}/packages/{package_type}/{package_name}/restore documentation_url: https://docs.github.com/rest/packages/packages#restore-a-package-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/packages/{package_type}/{package_name}/versions documentation_url: https://docs.github.com/rest/packages/packages#list-package-versions-for-a-package-owned-by-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id} documentation_url: https://docs.github.com/rest/packages/packages#delete-package-version-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id} documentation_url: https://docs.github.com/rest/packages/packages#get-a-package-version-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore documentation_url: https://docs.github.com/rest/packages/packages#restore-package-version-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/projects documentation_url: https://docs.github.com/rest/projects/projects#list-user-projects openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/received_events documentation_url: https://docs.github.com/rest/activity/events#list-events-received-by-the-authenticated-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/received_events/public documentation_url: https://docs.github.com/rest/activity/events#list-public-events-received-by-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/repos documentation_url: https://docs.github.com/rest/repos/repos#list-repositories-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/settings/billing/actions documentation_url: https://docs.github.com/rest/billing/billing#get-github-actions-billing-for-a-user openapi_files: @@ -6931,45 +7178,45 @@ openapi_operations: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - name: DELETE /users/{username}/site_admin - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#demote-a-site-administrator + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#demote-a-site-administrator openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /users/{username}/site_admin - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#promote-a-user-to-be-a-site-administrator + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#promote-a-user-to-be-a-site-administrator openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/social_accounts documentation_url: https://docs.github.com/rest/users/social-accounts#list-social-accounts-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/ssh_signing_keys documentation_url: https://docs.github.com/rest/users/ssh-signing-keys#list-ssh-signing-keys-for-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/starred documentation_url: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /users/{username}/subscriptions documentation_url: https://docs.github.com/rest/activity/watching#list-repositories-watched-by-a-user openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: DELETE /users/{username}/suspended - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#unsuspend-a-user + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#unsuspend-a-user openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: PUT /users/{username}/suspended - documentation_url: https://docs.github.com/enterprise-server@3.15/rest/enterprise-admin/users#suspend-a-user + documentation_url: https://docs.github.com/enterprise-server@3.16/rest/enterprise-admin/users#suspend-a-user openapi_files: - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json - name: GET /versions documentation_url: https://docs.github.com/rest/meta/meta#get-all-api-versions openapi_files: @@ -6980,4 +7227,4 @@ openapi_operations: openapi_files: - descriptions/api.github.com/api.github.com.json - descriptions/ghec/ghec.json - - descriptions/ghes-3.15/ghes-3.15.json + - descriptions/ghes-3.16/ghes-3.16.json From cca495edc98f1cb63cb5a79b140958a8e8c85894 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Thu, 20 Mar 2025 17:56:29 +0300 Subject: [PATCH 14/17] feat: add support for Issue Types API - Implement functions to interact with the Issue Types API: - ListIssueTypes: Retrieve all issue types for an organization. - CreateIssueType: Add a new issue type to an organization. - UpdateIssueType: Modify an existing issue type. - DeleteIssueType: Remove an issue type from an organization. - Add corresponding tests for each function to ensure reliability. References: - GitHub REST API documentation: https://docs.github.com/en/rest/orgs/issue-types - Related issue: https://github.com/google/go-github/issues/3523 Signed-off-by: atilsensalduz --- github/orgs_issue_types_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/github/orgs_issue_types_test.go b/github/orgs_issue_types_test.go index b262f4da9a9..25aa510a9b9 100644 --- a/github/orgs_issue_types_test.go +++ b/github/orgs_issue_types_test.go @@ -1,4 +1,4 @@ -// Copyright 2015 The go-github AUTHORS. All rights reserved. +// Copyright 2025 The go-github AUTHORS. All rights reserved. // // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. From 15b891ea78f9e3e4b7ec8cf689e6861444ccca18 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Thu, 20 Mar 2025 18:04:59 +0300 Subject: [PATCH 15/17] feat: add support for Issue Types API - Implement functions to interact with the Issue Types API: - ListIssueTypes: Retrieve all issue types for an organization. - CreateIssueType: Add a new issue type to an organization. - UpdateIssueType: Modify an existing issue type. - DeleteIssueType: Remove an issue type from an organization. - Add corresponding tests for each function to ensure reliability. References: - GitHub REST API documentation: https://docs.github.com/en/rest/orgs/issue-types - Related issue: https://github.com/google/go-github/issues/3523 Signed-off-by: atilsensalduz --- github/orgs_issue_types_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/github/orgs_issue_types_test.go b/github/orgs_issue_types_test.go index 25aa510a9b9..4e7fdbf5af4 100644 --- a/github/orgs_issue_types_test.go +++ b/github/orgs_issue_types_test.go @@ -223,7 +223,7 @@ func TestOrganizationsService_DeleteIssueType(t *testing.T) { ctx := context.Background() _, err := client.Organizations.DeleteIssueType(ctx, "o", 410) if err != nil { - t.Errorf("Organizations.DeleteHook returned error: %v", err) + t.Errorf("Organizations.DeleteIssueType returned error: %v", err) } const methodName = "DeleteIssueType" From d39244cec41fad9c3a466afaa192e355892c1280 Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Thu, 20 Mar 2025 18:46:58 +0300 Subject: [PATCH 16/17] feat: add support for Issue Types API - Implement functions to interact with the Issue Types API: - ListIssueTypes: Retrieve all issue types for an organization. - CreateIssueType: Add a new issue type to an organization. - UpdateIssueType: Modify an existing issue type. - DeleteIssueType: Remove an issue type from an organization. - Add corresponding tests for each function to ensure reliability. References: - GitHub REST API documentation: https://docs.github.com/en/rest/orgs/issue-types - Related issue: https://github.com/google/go-github/issues/3523 Signed-off-by: atilsensalduz --- github/orgs_issue_types.go | 1 + 1 file changed, 1 insertion(+) diff --git a/github/orgs_issue_types.go b/github/orgs_issue_types.go index 101d4830fcf..c47b1cc066e 100644 --- a/github/orgs_issue_types.go +++ b/github/orgs_issue_types.go @@ -10,6 +10,7 @@ import ( "fmt" ) +// CreateOrUpdateIssueTypesOptions represents the parameters for creating or updating an issue type. type CreateOrUpdateIssueTypesOptions struct { Name *string `json:"name"` // Name of the issue type. (Required.) IsEnabled *bool `json:"is_enabled"` // Whether or not the issue type is enabled at the organization level. (Required.) From 8a6fa7d499db57a7f8a4910c0d9264e01c509c5a Mon Sep 17 00:00:00 2001 From: atilsensalduz Date: Thu, 20 Mar 2025 21:17:30 +0300 Subject: [PATCH 17/17] feat: add support for Issue Types API - Implement functions to interact with the Issue Types API: - ListIssueTypes: Retrieve all issue types for an organization. - CreateIssueType: Add a new issue type to an organization. - UpdateIssueType: Modify an existing issue type. - DeleteIssueType: Remove an issue type from an organization. - Add corresponding tests for each function to ensure reliability. References: - GitHub REST API documentation: https://docs.github.com/en/rest/orgs/issue-types - Related issue: https://github.com/google/go-github/issues/3523 Signed-off-by: atilsensalduz --- github/github-accessors.go | 16 ---------------- github/github-accessors_test.go | 22 ---------------------- github/orgs_issue_types.go | 4 ++-- github/orgs_issue_types_test.go | 8 ++++---- 4 files changed, 6 insertions(+), 44 deletions(-) diff --git a/github/github-accessors.go b/github/github-accessors.go index 80f68c63c79..689d78633e9 100644 --- a/github/github-accessors.go +++ b/github/github-accessors.go @@ -5918,14 +5918,6 @@ func (c *CreateOrUpdateIssueTypesOptions) GetDescription() string { return *c.Description } -// GetIsEnabled returns the IsEnabled field if it's non-nil, zero value otherwise. -func (c *CreateOrUpdateIssueTypesOptions) GetIsEnabled() bool { - if c == nil || c.IsEnabled == nil { - return false - } - return *c.IsEnabled -} - // GetIsPrivate returns the IsPrivate field if it's non-nil, zero value otherwise. func (c *CreateOrUpdateIssueTypesOptions) GetIsPrivate() bool { if c == nil || c.IsPrivate == nil { @@ -5934,14 +5926,6 @@ func (c *CreateOrUpdateIssueTypesOptions) GetIsPrivate() bool { return *c.IsPrivate } -// GetName returns the Name field if it's non-nil, zero value otherwise. -func (c *CreateOrUpdateIssueTypesOptions) GetName() string { - if c == nil || c.Name == nil { - return "" - } - return *c.Name -} - // GetBaseRole returns the BaseRole field if it's non-nil, zero value otherwise. func (c *CreateOrUpdateOrgRoleOptions) GetBaseRole() string { if c == nil || c.BaseRole == nil { diff --git a/github/github-accessors_test.go b/github/github-accessors_test.go index cb943e8e487..85647c6dd8c 100644 --- a/github/github-accessors_test.go +++ b/github/github-accessors_test.go @@ -7710,17 +7710,6 @@ func TestCreateOrUpdateIssueTypesOptions_GetDescription(tt *testing.T) { c.GetDescription() } -func TestCreateOrUpdateIssueTypesOptions_GetIsEnabled(tt *testing.T) { - tt.Parallel() - var zeroValue bool - c := &CreateOrUpdateIssueTypesOptions{IsEnabled: &zeroValue} - c.GetIsEnabled() - c = &CreateOrUpdateIssueTypesOptions{} - c.GetIsEnabled() - c = nil - c.GetIsEnabled() -} - func TestCreateOrUpdateIssueTypesOptions_GetIsPrivate(tt *testing.T) { tt.Parallel() var zeroValue bool @@ -7732,17 +7721,6 @@ func TestCreateOrUpdateIssueTypesOptions_GetIsPrivate(tt *testing.T) { c.GetIsPrivate() } -func TestCreateOrUpdateIssueTypesOptions_GetName(tt *testing.T) { - tt.Parallel() - var zeroValue string - c := &CreateOrUpdateIssueTypesOptions{Name: &zeroValue} - c.GetName() - c = &CreateOrUpdateIssueTypesOptions{} - c.GetName() - c = nil - c.GetName() -} - func TestCreateOrUpdateOrgRoleOptions_GetBaseRole(tt *testing.T) { tt.Parallel() var zeroValue string diff --git a/github/orgs_issue_types.go b/github/orgs_issue_types.go index c47b1cc066e..73e6f8d639a 100644 --- a/github/orgs_issue_types.go +++ b/github/orgs_issue_types.go @@ -12,8 +12,8 @@ import ( // CreateOrUpdateIssueTypesOptions represents the parameters for creating or updating an issue type. type CreateOrUpdateIssueTypesOptions struct { - Name *string `json:"name"` // Name of the issue type. (Required.) - IsEnabled *bool `json:"is_enabled"` // Whether or not the issue type is enabled at the organization level. (Required.) + Name string `json:"name"` // Name of the issue type. (Required.) + IsEnabled bool `json:"is_enabled"` // Whether or not the issue type is enabled at the organization level. (Required.) IsPrivate *bool `json:"is_private,omitempty"` // Whether or not the issue type is restricted to issues in private repositories. (Optional.) Description *string `json:"description,omitempty"` // Description of the issue type. (Optional.) Color *string `json:"color,omitempty"` // Color for the issue type. Can be one of "gray", "blue", green "orange", "red", "pink", "purple", "null". (Optional.) diff --git a/github/orgs_issue_types_test.go b/github/orgs_issue_types_test.go index 4e7fdbf5af4..7775b4f5ef2 100644 --- a/github/orgs_issue_types_test.go +++ b/github/orgs_issue_types_test.go @@ -89,9 +89,9 @@ func TestOrganizationsService_CreateIssueType(t *testing.T) { client, mux, _ := setup(t) input := &CreateOrUpdateIssueTypesOptions{ - Name: Ptr("Epic"), + Name: "Epic", Description: Ptr("An issue type for a multi-week tracking of work"), - IsEnabled: Ptr(true), + IsEnabled: true, Color: Ptr("green"), IsPrivate: Ptr(true), } @@ -153,9 +153,9 @@ func TestOrganizationsService_UpdateIssueType(t *testing.T) { client, mux, _ := setup(t) input := &CreateOrUpdateIssueTypesOptions{ - Name: Ptr("Epic"), + Name: "Epic", Description: Ptr("An issue type for a multi-week tracking of work"), - IsEnabled: Ptr(true), + IsEnabled: true, Color: Ptr("green"), IsPrivate: Ptr(true), }