jinxapi_github/v1_1_4/reqwest/
blocking.rs

1#![allow(non_snake_case)]
2
3use ::std::time::Duration;
4
5use ::authentic::{AuthenticationProtocol, AuthenticationProtocolConfigure, AuthenticError, WithAuthentication};
6
7use crate::v1_1_4::config::{Authentication, Configuration};
8
9pub enum AuthScheme {
10    None(::authentic::reqwest::blocking::NoAuthentication),
11    AccessToken(::authentic::reqwest::blocking::BearerAuthentication<::authentic::credential::TokenCredential>),
12    Basic(::authentic::reqwest::blocking::BasicAuthentication<::authentic::credential::UsernamePasswordCredential>),
13    JWT(::authentic::reqwest::blocking::BearerAuthentication<::authentic::credential::JsonWebTokenCredential>),
14}
15
16impl From<&Authentication> for AuthScheme {
17    fn from(authentication: &Authentication) -> Self {
18        match authentication {
19            Authentication::None => {
20                AuthScheme::None(::authentic::reqwest::blocking::NoAuthentication::new())
21            }
22            Authentication::AccessToken(credential) => {
23                AuthScheme::AccessToken(::authentic::reqwest::blocking::BearerAuthentication::new(credential.clone()).with_auth_scheme("token"))
24            }
25            Authentication::Basic(credential) => {
26                AuthScheme::Basic(::authentic::reqwest::blocking::BasicAuthentication::new(credential.clone()))
27            }
28            Authentication::JWT(credential) => {
29                AuthScheme::JWT(::authentic::reqwest::blocking::BearerAuthentication::new(credential.clone()))
30            }
31        }
32    }
33}
34
35impl AuthenticationProtocol for AuthScheme {
36    type Request = ::reqwest::blocking::Request;
37    type Response = ::reqwest::blocking::Response;
38    type Error = ::reqwest::Error;
39
40    fn step(&self) -> Result<Option<authentic::AuthenticationStep<Self::Request>>, AuthenticError> {
41        match self {
42            AuthScheme::None(scheme) => scheme.step(),
43            AuthScheme::AccessToken(scheme) => scheme.step(),
44            AuthScheme::Basic(scheme) => scheme.step(),
45            AuthScheme::JWT(scheme) => scheme.step(),
46        }
47    }
48
49    fn respond(&mut self, response: Result<Self::Response, Self::Error>) {
50        match self {
51            AuthScheme::None(scheme) => scheme.respond(response),
52            AuthScheme::AccessToken(scheme) => scheme.respond(response),
53            AuthScheme::Basic(scheme) => scheme.respond(response),
54            AuthScheme::JWT(scheme) => scheme.respond(response),
55        }
56    }
57
58    fn has_completed(
59        &mut self,
60        response: &Self::Response,
61    ) -> Result<bool, AuthenticError> {
62        match self {
63            AuthScheme::None(scheme) => scheme.has_completed(response),
64            AuthScheme::AccessToken(scheme) => scheme.has_completed(response),
65            AuthScheme::Basic(scheme) => scheme.has_completed(response),
66            AuthScheme::JWT(scheme) => scheme.has_completed(response),
67        }
68    }
69}
70
71impl AuthenticationProtocolConfigure<reqwest::blocking::Request> for AuthScheme
72{
73    fn configure(
74        &self,
75        builder: reqwest::blocking::Request,
76    ) -> Result<reqwest::blocking::Request, AuthenticError> {
77
78        match self {
79            AuthScheme::None(scheme) => scheme.configure(builder),
80            AuthScheme::AccessToken(scheme) => scheme.configure(builder),
81            AuthScheme::Basic(scheme) => scheme.configure(builder),
82            AuthScheme::JWT(scheme) => scheme.configure(builder),
83        }
84    }
85}
86
87pub struct Caller<Sleep>
88where
89    Sleep: Fn(Duration),
90{
91    client: ::reqwest::blocking::Client,
92    config: Configuration,
93    sleep: Sleep
94}
95
96impl<Sleep> Caller<Sleep>
97where
98    Sleep: Fn(Duration),
99{
100    pub fn new(
101        client: ::reqwest::blocking::Client,
102        config: Configuration,
103        sleep: Sleep,
104    ) -> Caller<Sleep> {
105        Caller {
106            client,
107            config,
108            sleep,
109        }
110    }
111
112    /// GitHub API Root
113    /// 
114    /// Get Hypermedia links to resources accessible in GitHub's REST API
115    /// 
116    /// [API method documentation](https://docs.github.com/rest/overview/resources-in-the-rest-api#root-endpoint)
117    pub fn meta_root(
118        &self,
119    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
120        let mut theScheme = AuthScheme::from(&self.config.authentication);
121
122        while let Some(auth_step) = theScheme.step()? {
123            match auth_step {
124                ::authentic::AuthenticationStep::Request(auth_request) => {
125                    theScheme.respond(self.client.execute(auth_request));
126                }
127                ::authentic::AuthenticationStep::WaitFor(duration) => {
128                    (self.sleep)(duration);
129                }
130            }
131        }
132        let theBuilder = crate::v1_1_4::request::meta_root::reqwest_blocking_builder(
133            self.config.base_url.as_ref(),
134            self.config.user_agent.as_ref(),
135            self.config.accept.as_deref(),
136        )?
137        .with_authentication(&theScheme)?;
138
139        let theRequest =
140            crate::v1_1_4::request::meta_root::reqwest_blocking_request(theBuilder)?;
141
142        ::log::debug!("HTTP request: {:?}", &theRequest);
143
144        let theResponse = self.client.execute(theRequest)?;
145
146        ::log::debug!("HTTP response: {:?}", &theResponse);
147
148        Ok(theResponse)
149    }
150
151    /// Get the authenticated app
152    /// 
153    /// Returns the GitHub App associated with the authentication credentials used. To see how many app installations are associated with this GitHub App, see the `installations_count` in the response. For more details about your app's installations, see the "[List installations for the authenticated app](https://docs.github.com/rest/reference/apps#list-installations-for-the-authenticated-app)" endpoint.
154    /// 
155    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
156    /// 
157    /// [API method documentation](https://docs.github.com/rest/reference/apps#get-the-authenticated-app)
158    pub fn apps_get_authenticated(
159        &self,
160    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
161        let mut theScheme = AuthScheme::from(&self.config.authentication);
162
163        while let Some(auth_step) = theScheme.step()? {
164            match auth_step {
165                ::authentic::AuthenticationStep::Request(auth_request) => {
166                    theScheme.respond(self.client.execute(auth_request));
167                }
168                ::authentic::AuthenticationStep::WaitFor(duration) => {
169                    (self.sleep)(duration);
170                }
171            }
172        }
173        let theBuilder = crate::v1_1_4::request::apps_get_authenticated::reqwest_blocking_builder(
174            self.config.base_url.as_ref(),
175            self.config.user_agent.as_ref(),
176            self.config.accept.as_deref(),
177        )?
178        .with_authentication(&theScheme)?;
179
180        let theRequest =
181            crate::v1_1_4::request::apps_get_authenticated::reqwest_blocking_request(theBuilder)?;
182
183        ::log::debug!("HTTP request: {:?}", &theRequest);
184
185        let theResponse = self.client.execute(theRequest)?;
186
187        ::log::debug!("HTTP response: {:?}", &theResponse);
188
189        Ok(theResponse)
190    }
191
192    /// Create a GitHub App from a manifest
193    /// 
194    /// Use this endpoint to complete the handshake necessary when implementing the [GitHub App Manifest flow](https://docs.github.com/apps/building-github-apps/creating-github-apps-from-a-manifest/). When you create a GitHub App with the manifest flow, you receive a temporary `code` used to retrieve the GitHub App's `id`, `pem` (private key), and `webhook_secret`.
195    /// 
196    /// [API method documentation](https://docs.github.com/rest/reference/apps#create-a-github-app-from-a-manifest)
197    pub fn apps_create_from_manifest(
198        &self,
199        code: &str,
200    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
201        let mut theScheme = AuthScheme::from(&self.config.authentication);
202
203        while let Some(auth_step) = theScheme.step()? {
204            match auth_step {
205                ::authentic::AuthenticationStep::Request(auth_request) => {
206                    theScheme.respond(self.client.execute(auth_request));
207                }
208                ::authentic::AuthenticationStep::WaitFor(duration) => {
209                    (self.sleep)(duration);
210                }
211            }
212        }
213        let theBuilder = crate::v1_1_4::request::apps_create_from_manifest::reqwest_blocking_builder(
214            self.config.base_url.as_ref(),
215            code,
216            self.config.user_agent.as_ref(),
217            self.config.accept.as_deref(),
218        )?
219        .with_authentication(&theScheme)?;
220
221        let theRequest =
222            crate::v1_1_4::request::apps_create_from_manifest::reqwest_blocking_request(theBuilder)?;
223
224        ::log::debug!("HTTP request: {:?}", &theRequest);
225
226        let theResponse = self.client.execute(theRequest)?;
227
228        ::log::debug!("HTTP response: {:?}", &theResponse);
229
230        Ok(theResponse)
231    }
232
233    /// Get a webhook configuration for an app
234    /// 
235    /// Returns the webhook configuration for a GitHub App. For more information about configuring a webhook for your app, see "[Creating a GitHub App](/developers/apps/creating-a-github-app)."
236    /// 
237    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
238    /// 
239    /// [API method documentation](https://docs.github.com/rest/reference/apps#get-a-webhook-configuration-for-an-app)
240    pub fn apps_get_webhook_config_for_app(
241        &self,
242    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
243        let mut theScheme = AuthScheme::from(&self.config.authentication);
244
245        while let Some(auth_step) = theScheme.step()? {
246            match auth_step {
247                ::authentic::AuthenticationStep::Request(auth_request) => {
248                    theScheme.respond(self.client.execute(auth_request));
249                }
250                ::authentic::AuthenticationStep::WaitFor(duration) => {
251                    (self.sleep)(duration);
252                }
253            }
254        }
255        let theBuilder = crate::v1_1_4::request::apps_get_webhook_config_for_app::reqwest_blocking_builder(
256            self.config.base_url.as_ref(),
257            self.config.user_agent.as_ref(),
258            self.config.accept.as_deref(),
259        )?
260        .with_authentication(&theScheme)?;
261
262        let theRequest =
263            crate::v1_1_4::request::apps_get_webhook_config_for_app::reqwest_blocking_request(theBuilder)?;
264
265        ::log::debug!("HTTP request: {:?}", &theRequest);
266
267        let theResponse = self.client.execute(theRequest)?;
268
269        ::log::debug!("HTTP response: {:?}", &theResponse);
270
271        Ok(theResponse)
272    }
273
274    /// Update a webhook configuration for an app
275    /// 
276    /// Updates the webhook configuration for a GitHub App. For more information about configuring a webhook for your app, see "[Creating a GitHub App](/developers/apps/creating-a-github-app)."
277    /// 
278    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
279    /// 
280    /// [API method documentation](https://docs.github.com/rest/reference/apps#update-a-webhook-configuration-for-an-app)
281    ///
282    /// # Content
283    ///
284    /// - [`&v1_1_4::request::apps_update_webhook_config_for_app::body::Json`](crate::v1_1_4::request::apps_update_webhook_config_for_app::body::Json)
285    pub fn apps_update_webhook_config_for_app<Content>(
286        &self,
287        theContent: Content,
288    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
289    where
290        Content: Copy + TryInto<crate::v1_1_4::request::apps_update_webhook_config_for_app::Content<::reqwest::blocking::Body>>,
291        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::apps_update_webhook_config_for_app::Content<::reqwest::blocking::Body>>>::Error>
292    {
293        let mut theScheme = AuthScheme::from(&self.config.authentication);
294
295        while let Some(auth_step) = theScheme.step()? {
296            match auth_step {
297                ::authentic::AuthenticationStep::Request(auth_request) => {
298                    theScheme.respond(self.client.execute(auth_request));
299                }
300                ::authentic::AuthenticationStep::WaitFor(duration) => {
301                    (self.sleep)(duration);
302                }
303            }
304        }
305        let theBuilder = crate::v1_1_4::request::apps_update_webhook_config_for_app::reqwest_blocking_builder(
306            self.config.base_url.as_ref(),
307            self.config.user_agent.as_ref(),
308            self.config.accept.as_deref(),
309        )?
310        .with_authentication(&theScheme)?;
311
312        let theRequest = crate::v1_1_4::request::apps_update_webhook_config_for_app::reqwest_blocking_request(
313            theBuilder,
314            theContent.try_into()?,
315        )?;
316
317        ::log::debug!("HTTP request: {:?}", &theRequest);
318
319        let theResponse = self.client.execute(theRequest)?;
320
321        ::log::debug!("HTTP response: {:?}", &theResponse);
322
323        Ok(theResponse)
324    }
325
326    /// List deliveries for an app webhook
327    /// 
328    /// Returns a list of webhook deliveries for the webhook configured for a GitHub App.
329    /// 
330    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
331    /// 
332    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-deliveries-for-an-app-webhook)
333    pub fn apps_list_webhook_deliveries(
334        &self,
335        per_page: ::std::option::Option<i64>,
336        cursor: ::std::option::Option<&str>,
337    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
338        let mut theScheme = AuthScheme::from(&self.config.authentication);
339
340        while let Some(auth_step) = theScheme.step()? {
341            match auth_step {
342                ::authentic::AuthenticationStep::Request(auth_request) => {
343                    theScheme.respond(self.client.execute(auth_request));
344                }
345                ::authentic::AuthenticationStep::WaitFor(duration) => {
346                    (self.sleep)(duration);
347                }
348            }
349        }
350        let theBuilder = crate::v1_1_4::request::apps_list_webhook_deliveries::reqwest_blocking_builder(
351            self.config.base_url.as_ref(),
352            per_page,
353            cursor,
354            self.config.user_agent.as_ref(),
355            self.config.accept.as_deref(),
356        )?
357        .with_authentication(&theScheme)?;
358
359        let theRequest =
360            crate::v1_1_4::request::apps_list_webhook_deliveries::reqwest_blocking_request(theBuilder)?;
361
362        ::log::debug!("HTTP request: {:?}", &theRequest);
363
364        let theResponse = self.client.execute(theRequest)?;
365
366        ::log::debug!("HTTP response: {:?}", &theResponse);
367
368        Ok(theResponse)
369    }
370
371    /// Get a delivery for an app webhook
372    /// 
373    /// Returns a delivery for the webhook configured for a GitHub App.
374    /// 
375    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
376    /// 
377    /// [API method documentation](https://docs.github.com/rest/reference/apps#get-a-delivery-for-an-app-webhook)
378    pub fn apps_get_webhook_delivery(
379        &self,
380        delivery_id: i64,
381    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
382        let mut theScheme = AuthScheme::from(&self.config.authentication);
383
384        while let Some(auth_step) = theScheme.step()? {
385            match auth_step {
386                ::authentic::AuthenticationStep::Request(auth_request) => {
387                    theScheme.respond(self.client.execute(auth_request));
388                }
389                ::authentic::AuthenticationStep::WaitFor(duration) => {
390                    (self.sleep)(duration);
391                }
392            }
393        }
394        let theBuilder = crate::v1_1_4::request::apps_get_webhook_delivery::reqwest_blocking_builder(
395            self.config.base_url.as_ref(),
396            delivery_id,
397            self.config.user_agent.as_ref(),
398            self.config.accept.as_deref(),
399        )?
400        .with_authentication(&theScheme)?;
401
402        let theRequest =
403            crate::v1_1_4::request::apps_get_webhook_delivery::reqwest_blocking_request(theBuilder)?;
404
405        ::log::debug!("HTTP request: {:?}", &theRequest);
406
407        let theResponse = self.client.execute(theRequest)?;
408
409        ::log::debug!("HTTP response: {:?}", &theResponse);
410
411        Ok(theResponse)
412    }
413
414    /// Redeliver a delivery for an app webhook
415    /// 
416    /// Redeliver a delivery for the webhook configured for a GitHub App.
417    /// 
418    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
419    /// 
420    /// [API method documentation](https://docs.github.com/rest/reference/apps#redeliver-a-delivery-for-an-app-webhook)
421    pub fn apps_redeliver_webhook_delivery(
422        &self,
423        delivery_id: i64,
424    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
425        let mut theScheme = AuthScheme::from(&self.config.authentication);
426
427        while let Some(auth_step) = theScheme.step()? {
428            match auth_step {
429                ::authentic::AuthenticationStep::Request(auth_request) => {
430                    theScheme.respond(self.client.execute(auth_request));
431                }
432                ::authentic::AuthenticationStep::WaitFor(duration) => {
433                    (self.sleep)(duration);
434                }
435            }
436        }
437        let theBuilder = crate::v1_1_4::request::apps_redeliver_webhook_delivery::reqwest_blocking_builder(
438            self.config.base_url.as_ref(),
439            delivery_id,
440            self.config.user_agent.as_ref(),
441            self.config.accept.as_deref(),
442        )?
443        .with_authentication(&theScheme)?;
444
445        let theRequest =
446            crate::v1_1_4::request::apps_redeliver_webhook_delivery::reqwest_blocking_request(theBuilder)?;
447
448        ::log::debug!("HTTP request: {:?}", &theRequest);
449
450        let theResponse = self.client.execute(theRequest)?;
451
452        ::log::debug!("HTTP response: {:?}", &theResponse);
453
454        Ok(theResponse)
455    }
456
457    /// List installations for the authenticated app
458    /// 
459    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
460    /// 
461    /// The permissions the installation has are included under the `permissions` key.
462    /// 
463    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-installations-for-the-authenticated-app)
464    pub fn apps_list_installations(
465        &self,
466        per_page: ::std::option::Option<i64>,
467        page: ::std::option::Option<i64>,
468        since: ::std::option::Option<&str>,
469        outdated: ::std::option::Option<&str>,
470    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
471        let mut theScheme = AuthScheme::from(&self.config.authentication);
472
473        while let Some(auth_step) = theScheme.step()? {
474            match auth_step {
475                ::authentic::AuthenticationStep::Request(auth_request) => {
476                    theScheme.respond(self.client.execute(auth_request));
477                }
478                ::authentic::AuthenticationStep::WaitFor(duration) => {
479                    (self.sleep)(duration);
480                }
481            }
482        }
483        let theBuilder = crate::v1_1_4::request::apps_list_installations::reqwest_blocking_builder(
484            self.config.base_url.as_ref(),
485            per_page,
486            page,
487            since,
488            outdated,
489            self.config.user_agent.as_ref(),
490            self.config.accept.as_deref(),
491        )?
492        .with_authentication(&theScheme)?;
493
494        let theRequest =
495            crate::v1_1_4::request::apps_list_installations::reqwest_blocking_request(theBuilder)?;
496
497        ::log::debug!("HTTP request: {:?}", &theRequest);
498
499        let theResponse = self.client.execute(theRequest)?;
500
501        ::log::debug!("HTTP response: {:?}", &theResponse);
502
503        Ok(theResponse)
504    }
505
506    /// Get an installation for the authenticated app
507    /// 
508    /// Enables an authenticated GitHub App to find an installation's information using the installation id.
509    /// 
510    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
511    /// 
512    /// [API method documentation](https://docs.github.com/rest/reference/apps#get-an-installation-for-the-authenticated-app)
513    pub fn apps_get_installation(
514        &self,
515        installation_id: i64,
516    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
517        let mut theScheme = AuthScheme::from(&self.config.authentication);
518
519        while let Some(auth_step) = theScheme.step()? {
520            match auth_step {
521                ::authentic::AuthenticationStep::Request(auth_request) => {
522                    theScheme.respond(self.client.execute(auth_request));
523                }
524                ::authentic::AuthenticationStep::WaitFor(duration) => {
525                    (self.sleep)(duration);
526                }
527            }
528        }
529        let theBuilder = crate::v1_1_4::request::apps_get_installation::reqwest_blocking_builder(
530            self.config.base_url.as_ref(),
531            installation_id,
532            self.config.user_agent.as_ref(),
533            self.config.accept.as_deref(),
534        )?
535        .with_authentication(&theScheme)?;
536
537        let theRequest =
538            crate::v1_1_4::request::apps_get_installation::reqwest_blocking_request(theBuilder)?;
539
540        ::log::debug!("HTTP request: {:?}", &theRequest);
541
542        let theResponse = self.client.execute(theRequest)?;
543
544        ::log::debug!("HTTP response: {:?}", &theResponse);
545
546        Ok(theResponse)
547    }
548
549    /// Delete an installation for the authenticated app
550    /// 
551    /// Uninstalls a GitHub App on a user, organization, or business account. If you prefer to temporarily suspend an app's access to your account's resources, then we recommend the "[Suspend an app installation](https://docs.github.com/rest/reference/apps/#suspend-an-app-installation)" endpoint.
552    /// 
553    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
554    /// 
555    /// [API method documentation](https://docs.github.com/rest/reference/apps#delete-an-installation-for-the-authenticated-app)
556    pub fn apps_delete_installation(
557        &self,
558        installation_id: i64,
559    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
560        let mut theScheme = AuthScheme::from(&self.config.authentication);
561
562        while let Some(auth_step) = theScheme.step()? {
563            match auth_step {
564                ::authentic::AuthenticationStep::Request(auth_request) => {
565                    theScheme.respond(self.client.execute(auth_request));
566                }
567                ::authentic::AuthenticationStep::WaitFor(duration) => {
568                    (self.sleep)(duration);
569                }
570            }
571        }
572        let theBuilder = crate::v1_1_4::request::apps_delete_installation::reqwest_blocking_builder(
573            self.config.base_url.as_ref(),
574            installation_id,
575            self.config.user_agent.as_ref(),
576            self.config.accept.as_deref(),
577        )?
578        .with_authentication(&theScheme)?;
579
580        let theRequest =
581            crate::v1_1_4::request::apps_delete_installation::reqwest_blocking_request(theBuilder)?;
582
583        ::log::debug!("HTTP request: {:?}", &theRequest);
584
585        let theResponse = self.client.execute(theRequest)?;
586
587        ::log::debug!("HTTP response: {:?}", &theResponse);
588
589        Ok(theResponse)
590    }
591
592    /// Create an installation access token for an app
593    /// 
594    /// Creates an installation access token that enables a GitHub App to make authenticated API requests for the app's installation on an organization or individual account. Installation tokens expire one hour from the time you create them. Using an expired token produces a status code of `401 - Unauthorized`, and requires creating a new installation token. By default the installation token has access to all repositories that the installation can access. To restrict the access to specific repositories, you can provide the `repository_ids` when creating the token. When you omit `repository_ids`, the response does not contain the `repositories` key.
595    /// 
596    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
597    /// 
598    /// [API method documentation](https://docs.github.com/rest/reference/apps/#create-an-installation-access-token-for-an-app)
599    ///
600    /// # Content
601    ///
602    /// - [`&v1_1_4::request::apps_create_installation_access_token::body::Json`](crate::v1_1_4::request::apps_create_installation_access_token::body::Json)
603    pub fn apps_create_installation_access_token<Content>(
604        &self,
605        installation_id: i64,
606        theContent: Content,
607    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
608    where
609        Content: Copy + TryInto<crate::v1_1_4::request::apps_create_installation_access_token::Content<::reqwest::blocking::Body>>,
610        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::apps_create_installation_access_token::Content<::reqwest::blocking::Body>>>::Error>
611    {
612        let mut theScheme = AuthScheme::from(&self.config.authentication);
613
614        while let Some(auth_step) = theScheme.step()? {
615            match auth_step {
616                ::authentic::AuthenticationStep::Request(auth_request) => {
617                    theScheme.respond(self.client.execute(auth_request));
618                }
619                ::authentic::AuthenticationStep::WaitFor(duration) => {
620                    (self.sleep)(duration);
621                }
622            }
623        }
624        let theBuilder = crate::v1_1_4::request::apps_create_installation_access_token::reqwest_blocking_builder(
625            self.config.base_url.as_ref(),
626            installation_id,
627            self.config.user_agent.as_ref(),
628            self.config.accept.as_deref(),
629        )?
630        .with_authentication(&theScheme)?;
631
632        let theRequest = crate::v1_1_4::request::apps_create_installation_access_token::reqwest_blocking_request(
633            theBuilder,
634            theContent.try_into()?,
635        )?;
636
637        ::log::debug!("HTTP request: {:?}", &theRequest);
638
639        let theResponse = self.client.execute(theRequest)?;
640
641        ::log::debug!("HTTP response: {:?}", &theResponse);
642
643        Ok(theResponse)
644    }
645
646    /// Suspend an app installation
647    /// 
648    /// Suspends a GitHub App on a user, organization, or business account, which blocks the app from accessing the account's resources. When a GitHub App is suspended, the app's access to the GitHub API or webhook events is blocked for that account.
649    /// 
650    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
651    /// 
652    /// [API method documentation](https://docs.github.com/rest/reference/apps#suspend-an-app-installation)
653    pub fn apps_suspend_installation(
654        &self,
655        installation_id: i64,
656    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
657        let mut theScheme = AuthScheme::from(&self.config.authentication);
658
659        while let Some(auth_step) = theScheme.step()? {
660            match auth_step {
661                ::authentic::AuthenticationStep::Request(auth_request) => {
662                    theScheme.respond(self.client.execute(auth_request));
663                }
664                ::authentic::AuthenticationStep::WaitFor(duration) => {
665                    (self.sleep)(duration);
666                }
667            }
668        }
669        let theBuilder = crate::v1_1_4::request::apps_suspend_installation::reqwest_blocking_builder(
670            self.config.base_url.as_ref(),
671            installation_id,
672            self.config.user_agent.as_ref(),
673            self.config.accept.as_deref(),
674        )?
675        .with_authentication(&theScheme)?;
676
677        let theRequest =
678            crate::v1_1_4::request::apps_suspend_installation::reqwest_blocking_request(theBuilder)?;
679
680        ::log::debug!("HTTP request: {:?}", &theRequest);
681
682        let theResponse = self.client.execute(theRequest)?;
683
684        ::log::debug!("HTTP response: {:?}", &theResponse);
685
686        Ok(theResponse)
687    }
688
689    /// Unsuspend an app installation
690    /// 
691    /// Removes a GitHub App installation suspension.
692    /// 
693    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
694    /// 
695    /// [API method documentation](https://docs.github.com/rest/reference/apps#unsuspend-an-app-installation)
696    pub fn apps_unsuspend_installation(
697        &self,
698        installation_id: i64,
699    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
700        let mut theScheme = AuthScheme::from(&self.config.authentication);
701
702        while let Some(auth_step) = theScheme.step()? {
703            match auth_step {
704                ::authentic::AuthenticationStep::Request(auth_request) => {
705                    theScheme.respond(self.client.execute(auth_request));
706                }
707                ::authentic::AuthenticationStep::WaitFor(duration) => {
708                    (self.sleep)(duration);
709                }
710            }
711        }
712        let theBuilder = crate::v1_1_4::request::apps_unsuspend_installation::reqwest_blocking_builder(
713            self.config.base_url.as_ref(),
714            installation_id,
715            self.config.user_agent.as_ref(),
716            self.config.accept.as_deref(),
717        )?
718        .with_authentication(&theScheme)?;
719
720        let theRequest =
721            crate::v1_1_4::request::apps_unsuspend_installation::reqwest_blocking_request(theBuilder)?;
722
723        ::log::debug!("HTTP request: {:?}", &theRequest);
724
725        let theResponse = self.client.execute(theRequest)?;
726
727        ::log::debug!("HTTP response: {:?}", &theResponse);
728
729        Ok(theResponse)
730    }
731
732    /// List your grants
733    /// 
734    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations/), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/developers/apps/authorizing-oauth-apps#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
735    /// 
736    /// You can use this API to list the set of OAuth applications that have been granted access to your account. Unlike the [list your authorizations](https://docs.github.com/rest/reference/oauth-authorizations#list-your-authorizations) API, this API does not manage individual tokens. This API will return one entry for each OAuth application that has been granted access to your account, regardless of the number of tokens an application has generated for your user. The list of OAuth applications returned matches what is shown on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized). The `scopes` returned are the union of scopes authorized for the application. For example, if an application has one token with `repo` scope and another token with `user` scope, the grant will return `["repo", "user"]`.
737    /// 
738    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#list-your-grants)
739    pub fn oauth_authorizations_list_grants(
740        &self,
741        per_page: ::std::option::Option<i64>,
742        page: ::std::option::Option<i64>,
743        client_id: ::std::option::Option<&str>,
744    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
745        let mut theScheme = AuthScheme::from(&self.config.authentication);
746
747        while let Some(auth_step) = theScheme.step()? {
748            match auth_step {
749                ::authentic::AuthenticationStep::Request(auth_request) => {
750                    theScheme.respond(self.client.execute(auth_request));
751                }
752                ::authentic::AuthenticationStep::WaitFor(duration) => {
753                    (self.sleep)(duration);
754                }
755            }
756        }
757        let theBuilder = crate::v1_1_4::request::oauth_authorizations_list_grants::reqwest_blocking_builder(
758            self.config.base_url.as_ref(),
759            per_page,
760            page,
761            client_id,
762            self.config.user_agent.as_ref(),
763            self.config.accept.as_deref(),
764        )?
765        .with_authentication(&theScheme)?;
766
767        let theRequest =
768            crate::v1_1_4::request::oauth_authorizations_list_grants::reqwest_blocking_request(theBuilder)?;
769
770        ::log::debug!("HTTP request: {:?}", &theRequest);
771
772        let theResponse = self.client.execute(theRequest)?;
773
774        ::log::debug!("HTTP response: {:?}", &theResponse);
775
776        Ok(theResponse)
777    }
778
779    /// Get a single grant
780    /// 
781    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
782    /// 
783    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#get-a-single-grant)
784    pub fn oauth_authorizations_get_grant(
785        &self,
786        grant_id: i64,
787    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
788        let mut theScheme = AuthScheme::from(&self.config.authentication);
789
790        while let Some(auth_step) = theScheme.step()? {
791            match auth_step {
792                ::authentic::AuthenticationStep::Request(auth_request) => {
793                    theScheme.respond(self.client.execute(auth_request));
794                }
795                ::authentic::AuthenticationStep::WaitFor(duration) => {
796                    (self.sleep)(duration);
797                }
798            }
799        }
800        let theBuilder = crate::v1_1_4::request::oauth_authorizations_get_grant::reqwest_blocking_builder(
801            self.config.base_url.as_ref(),
802            grant_id,
803            self.config.user_agent.as_ref(),
804            self.config.accept.as_deref(),
805        )?
806        .with_authentication(&theScheme)?;
807
808        let theRequest =
809            crate::v1_1_4::request::oauth_authorizations_get_grant::reqwest_blocking_request(theBuilder)?;
810
811        ::log::debug!("HTTP request: {:?}", &theRequest);
812
813        let theResponse = self.client.execute(theRequest)?;
814
815        ::log::debug!("HTTP response: {:?}", &theResponse);
816
817        Ok(theResponse)
818    }
819
820    /// Delete a grant
821    /// 
822    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations/), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/developers/apps/authorizing-oauth-apps#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations/) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
823    /// 
824    /// Deleting an OAuth application's grant will also delete all OAuth tokens associated with the application for your user. Once deleted, the application has no access to your account and is no longer listed on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized).
825    /// 
826    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#delete-a-grant)
827    pub fn oauth_authorizations_delete_grant(
828        &self,
829        grant_id: i64,
830    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
831        let mut theScheme = AuthScheme::from(&self.config.authentication);
832
833        while let Some(auth_step) = theScheme.step()? {
834            match auth_step {
835                ::authentic::AuthenticationStep::Request(auth_request) => {
836                    theScheme.respond(self.client.execute(auth_request));
837                }
838                ::authentic::AuthenticationStep::WaitFor(duration) => {
839                    (self.sleep)(duration);
840                }
841            }
842        }
843        let theBuilder = crate::v1_1_4::request::oauth_authorizations_delete_grant::reqwest_blocking_builder(
844            self.config.base_url.as_ref(),
845            grant_id,
846            self.config.user_agent.as_ref(),
847            self.config.accept.as_deref(),
848        )?
849        .with_authentication(&theScheme)?;
850
851        let theRequest =
852            crate::v1_1_4::request::oauth_authorizations_delete_grant::reqwest_blocking_request(theBuilder)?;
853
854        ::log::debug!("HTTP request: {:?}", &theRequest);
855
856        let theResponse = self.client.execute(theRequest)?;
857
858        ::log::debug!("HTTP response: {:?}", &theResponse);
859
860        Ok(theResponse)
861    }
862
863    /// Delete an app authorization
864    /// 
865    /// OAuth application owners can revoke a grant for their OAuth application and a specific user. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. You must also provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.
866    /// Deleting an OAuth application's grant will also delete all OAuth tokens associated with the application for the user. Once deleted, the application will have no access to the user's account and will no longer be listed on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized).
867    /// 
868    /// [API method documentation](https://docs.github.com/rest/reference/apps#delete-an-app-authorization)
869    ///
870    /// # Content
871    ///
872    /// - [`&v1_1_4::request::apps_delete_authorization::body::Json`](crate::v1_1_4::request::apps_delete_authorization::body::Json)
873    pub fn apps_delete_authorization<Content>(
874        &self,
875        client_id: &str,
876        theContent: Content,
877    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
878    where
879        Content: Copy + TryInto<crate::v1_1_4::request::apps_delete_authorization::Content<::reqwest::blocking::Body>>,
880        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::apps_delete_authorization::Content<::reqwest::blocking::Body>>>::Error>
881    {
882        let mut theScheme = AuthScheme::from(&self.config.authentication);
883
884        while let Some(auth_step) = theScheme.step()? {
885            match auth_step {
886                ::authentic::AuthenticationStep::Request(auth_request) => {
887                    theScheme.respond(self.client.execute(auth_request));
888                }
889                ::authentic::AuthenticationStep::WaitFor(duration) => {
890                    (self.sleep)(duration);
891                }
892            }
893        }
894        let theBuilder = crate::v1_1_4::request::apps_delete_authorization::reqwest_blocking_builder(
895            self.config.base_url.as_ref(),
896            client_id,
897            self.config.user_agent.as_ref(),
898            self.config.accept.as_deref(),
899        )?
900        .with_authentication(&theScheme)?;
901
902        let theRequest = crate::v1_1_4::request::apps_delete_authorization::reqwest_blocking_request(
903            theBuilder,
904            theContent.try_into()?,
905        )?;
906
907        ::log::debug!("HTTP request: {:?}", &theRequest);
908
909        let theResponse = self.client.execute(theRequest)?;
910
911        ::log::debug!("HTTP response: {:?}", &theResponse);
912
913        Ok(theResponse)
914    }
915
916    /// Check a token
917    /// 
918    /// OAuth applications can use a special API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) to use this endpoint, where the username is the OAuth application `client_id` and the password is its `client_secret`. Invalid tokens will return `404 NOT FOUND`.
919    /// 
920    /// [API method documentation](https://docs.github.com/rest/reference/apps#check-a-token)
921    ///
922    /// # Content
923    ///
924    /// - [`&v1_1_4::request::apps_check_token::body::Json`](crate::v1_1_4::request::apps_check_token::body::Json)
925    pub fn apps_check_token<Content>(
926        &self,
927        client_id: &str,
928        theContent: Content,
929    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
930    where
931        Content: Copy + TryInto<crate::v1_1_4::request::apps_check_token::Content<::reqwest::blocking::Body>>,
932        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::apps_check_token::Content<::reqwest::blocking::Body>>>::Error>
933    {
934        let mut theScheme = AuthScheme::from(&self.config.authentication);
935
936        while let Some(auth_step) = theScheme.step()? {
937            match auth_step {
938                ::authentic::AuthenticationStep::Request(auth_request) => {
939                    theScheme.respond(self.client.execute(auth_request));
940                }
941                ::authentic::AuthenticationStep::WaitFor(duration) => {
942                    (self.sleep)(duration);
943                }
944            }
945        }
946        let theBuilder = crate::v1_1_4::request::apps_check_token::reqwest_blocking_builder(
947            self.config.base_url.as_ref(),
948            client_id,
949            self.config.user_agent.as_ref(),
950            self.config.accept.as_deref(),
951        )?
952        .with_authentication(&theScheme)?;
953
954        let theRequest = crate::v1_1_4::request::apps_check_token::reqwest_blocking_request(
955            theBuilder,
956            theContent.try_into()?,
957        )?;
958
959        ::log::debug!("HTTP request: {:?}", &theRequest);
960
961        let theResponse = self.client.execute(theRequest)?;
962
963        ::log::debug!("HTTP response: {:?}", &theResponse);
964
965        Ok(theResponse)
966    }
967
968    /// Delete an app token
969    /// 
970    /// OAuth application owners can revoke a single token for an OAuth application. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password.
971    /// 
972    /// [API method documentation](https://docs.github.com/rest/reference/apps#delete-an-app-token)
973    ///
974    /// # Content
975    ///
976    /// - [`&v1_1_4::request::apps_delete_token::body::Json`](crate::v1_1_4::request::apps_delete_token::body::Json)
977    pub fn apps_delete_token<Content>(
978        &self,
979        client_id: &str,
980        theContent: Content,
981    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
982    where
983        Content: Copy + TryInto<crate::v1_1_4::request::apps_delete_token::Content<::reqwest::blocking::Body>>,
984        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::apps_delete_token::Content<::reqwest::blocking::Body>>>::Error>
985    {
986        let mut theScheme = AuthScheme::from(&self.config.authentication);
987
988        while let Some(auth_step) = theScheme.step()? {
989            match auth_step {
990                ::authentic::AuthenticationStep::Request(auth_request) => {
991                    theScheme.respond(self.client.execute(auth_request));
992                }
993                ::authentic::AuthenticationStep::WaitFor(duration) => {
994                    (self.sleep)(duration);
995                }
996            }
997        }
998        let theBuilder = crate::v1_1_4::request::apps_delete_token::reqwest_blocking_builder(
999            self.config.base_url.as_ref(),
1000            client_id,
1001            self.config.user_agent.as_ref(),
1002            self.config.accept.as_deref(),
1003        )?
1004        .with_authentication(&theScheme)?;
1005
1006        let theRequest = crate::v1_1_4::request::apps_delete_token::reqwest_blocking_request(
1007            theBuilder,
1008            theContent.try_into()?,
1009        )?;
1010
1011        ::log::debug!("HTTP request: {:?}", &theRequest);
1012
1013        let theResponse = self.client.execute(theRequest)?;
1014
1015        ::log::debug!("HTTP response: {:?}", &theResponse);
1016
1017        Ok(theResponse)
1018    }
1019
1020    /// Reset a token
1021    /// 
1022    /// OAuth applications can use this API method to reset a valid OAuth token without end-user involvement. Applications must save the "token" property in the response because changes take effect immediately. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. Invalid tokens will return `404 NOT FOUND`.
1023    /// 
1024    /// [API method documentation](https://docs.github.com/rest/reference/apps#reset-a-token)
1025    ///
1026    /// # Content
1027    ///
1028    /// - [`&v1_1_4::request::apps_reset_token::body::Json`](crate::v1_1_4::request::apps_reset_token::body::Json)
1029    pub fn apps_reset_token<Content>(
1030        &self,
1031        client_id: &str,
1032        theContent: Content,
1033    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
1034    where
1035        Content: Copy + TryInto<crate::v1_1_4::request::apps_reset_token::Content<::reqwest::blocking::Body>>,
1036        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::apps_reset_token::Content<::reqwest::blocking::Body>>>::Error>
1037    {
1038        let mut theScheme = AuthScheme::from(&self.config.authentication);
1039
1040        while let Some(auth_step) = theScheme.step()? {
1041            match auth_step {
1042                ::authentic::AuthenticationStep::Request(auth_request) => {
1043                    theScheme.respond(self.client.execute(auth_request));
1044                }
1045                ::authentic::AuthenticationStep::WaitFor(duration) => {
1046                    (self.sleep)(duration);
1047                }
1048            }
1049        }
1050        let theBuilder = crate::v1_1_4::request::apps_reset_token::reqwest_blocking_builder(
1051            self.config.base_url.as_ref(),
1052            client_id,
1053            self.config.user_agent.as_ref(),
1054            self.config.accept.as_deref(),
1055        )?
1056        .with_authentication(&theScheme)?;
1057
1058        let theRequest = crate::v1_1_4::request::apps_reset_token::reqwest_blocking_request(
1059            theBuilder,
1060            theContent.try_into()?,
1061        )?;
1062
1063        ::log::debug!("HTTP request: {:?}", &theRequest);
1064
1065        let theResponse = self.client.execute(theRequest)?;
1066
1067        ::log::debug!("HTTP response: {:?}", &theResponse);
1068
1069        Ok(theResponse)
1070    }
1071
1072    /// Create a scoped access token
1073    /// 
1074    /// Use a non-scoped user-to-server OAuth access token to create a repository scoped and/or permission scoped user-to-server OAuth access token. You can specify which repositories the token can access and which permissions are granted to the token. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. Invalid tokens will return `404 NOT FOUND`.
1075    /// 
1076    /// [API method documentation](https://docs.github.com/rest/reference/apps#create-a-scoped-access-token)
1077    ///
1078    /// # Content
1079    ///
1080    /// - [`&v1_1_4::request::apps_scope_token::body::Json`](crate::v1_1_4::request::apps_scope_token::body::Json)
1081    pub fn apps_scope_token<Content>(
1082        &self,
1083        client_id: &str,
1084        theContent: Content,
1085    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
1086    where
1087        Content: Copy + TryInto<crate::v1_1_4::request::apps_scope_token::Content<::reqwest::blocking::Body>>,
1088        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::apps_scope_token::Content<::reqwest::blocking::Body>>>::Error>
1089    {
1090        let mut theScheme = AuthScheme::from(&self.config.authentication);
1091
1092        while let Some(auth_step) = theScheme.step()? {
1093            match auth_step {
1094                ::authentic::AuthenticationStep::Request(auth_request) => {
1095                    theScheme.respond(self.client.execute(auth_request));
1096                }
1097                ::authentic::AuthenticationStep::WaitFor(duration) => {
1098                    (self.sleep)(duration);
1099                }
1100            }
1101        }
1102        let theBuilder = crate::v1_1_4::request::apps_scope_token::reqwest_blocking_builder(
1103            self.config.base_url.as_ref(),
1104            client_id,
1105            self.config.user_agent.as_ref(),
1106            self.config.accept.as_deref(),
1107        )?
1108        .with_authentication(&theScheme)?;
1109
1110        let theRequest = crate::v1_1_4::request::apps_scope_token::reqwest_blocking_request(
1111            theBuilder,
1112            theContent.try_into()?,
1113        )?;
1114
1115        ::log::debug!("HTTP request: {:?}", &theRequest);
1116
1117        let theResponse = self.client.execute(theRequest)?;
1118
1119        ::log::debug!("HTTP response: {:?}", &theResponse);
1120
1121        Ok(theResponse)
1122    }
1123
1124    /// Get an app
1125    /// 
1126    /// **Note**: The `:app_slug` is just the URL-friendly name of your GitHub App. You can find this on the settings page for your GitHub App (e.g., `https://github.com/settings/apps/:app_slug`).
1127    /// 
1128    /// If the GitHub App you specify is public, you can access this endpoint without authenticating. If the GitHub App you specify is private, you must authenticate with a [personal access token](https://docs.github.com/articles/creating-a-personal-access-token-for-the-command-line/) or an [installation access token](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation) to access this endpoint.
1129    /// 
1130    /// [API method documentation](https://docs.github.com/rest/reference/apps/#get-an-app)
1131    pub fn apps_get_by_slug(
1132        &self,
1133        app_slug: &str,
1134    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1135        let mut theScheme = AuthScheme::from(&self.config.authentication);
1136
1137        while let Some(auth_step) = theScheme.step()? {
1138            match auth_step {
1139                ::authentic::AuthenticationStep::Request(auth_request) => {
1140                    theScheme.respond(self.client.execute(auth_request));
1141                }
1142                ::authentic::AuthenticationStep::WaitFor(duration) => {
1143                    (self.sleep)(duration);
1144                }
1145            }
1146        }
1147        let theBuilder = crate::v1_1_4::request::apps_get_by_slug::reqwest_blocking_builder(
1148            self.config.base_url.as_ref(),
1149            app_slug,
1150            self.config.user_agent.as_ref(),
1151            self.config.accept.as_deref(),
1152        )?
1153        .with_authentication(&theScheme)?;
1154
1155        let theRequest =
1156            crate::v1_1_4::request::apps_get_by_slug::reqwest_blocking_request(theBuilder)?;
1157
1158        ::log::debug!("HTTP request: {:?}", &theRequest);
1159
1160        let theResponse = self.client.execute(theRequest)?;
1161
1162        ::log::debug!("HTTP response: {:?}", &theResponse);
1163
1164        Ok(theResponse)
1165    }
1166
1167    /// List your authorizations
1168    /// 
1169    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
1170    /// 
1171    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#list-your-authorizations)
1172    pub fn oauth_authorizations_list_authorizations(
1173        &self,
1174        per_page: ::std::option::Option<i64>,
1175        page: ::std::option::Option<i64>,
1176        client_id: ::std::option::Option<&str>,
1177    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1178        let mut theScheme = AuthScheme::from(&self.config.authentication);
1179
1180        while let Some(auth_step) = theScheme.step()? {
1181            match auth_step {
1182                ::authentic::AuthenticationStep::Request(auth_request) => {
1183                    theScheme.respond(self.client.execute(auth_request));
1184                }
1185                ::authentic::AuthenticationStep::WaitFor(duration) => {
1186                    (self.sleep)(duration);
1187                }
1188            }
1189        }
1190        let theBuilder = crate::v1_1_4::request::oauth_authorizations_list_authorizations::reqwest_blocking_builder(
1191            self.config.base_url.as_ref(),
1192            per_page,
1193            page,
1194            client_id,
1195            self.config.user_agent.as_ref(),
1196            self.config.accept.as_deref(),
1197        )?
1198        .with_authentication(&theScheme)?;
1199
1200        let theRequest =
1201            crate::v1_1_4::request::oauth_authorizations_list_authorizations::reqwest_blocking_request(theBuilder)?;
1202
1203        ::log::debug!("HTTP request: {:?}", &theRequest);
1204
1205        let theResponse = self.client.execute(theRequest)?;
1206
1207        ::log::debug!("HTTP response: {:?}", &theResponse);
1208
1209        Ok(theResponse)
1210    }
1211
1212    /// Create a new authorization
1213    /// 
1214    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/developers/apps/authorizing-oauth-apps#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
1215    /// 
1216    /// **Warning:** Apps must use the [web application flow](https://docs.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow) to obtain OAuth tokens that work with GitHub SAML organizations. OAuth tokens created using the Authorizations API will be unable to access GitHub SAML organizations. For more information, see the [blog post](https://developer.github.com/changes/2019-11-05-deprecated-passwords-and-authorizations-api).
1217    /// 
1218    /// Creates OAuth tokens using [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication). If you have two-factor authentication setup, Basic Authentication for this endpoint requires that you use a one-time password (OTP) and your username and password instead of tokens. For more information, see "[Working with two-factor authentication](https://docs.github.com/rest/overview/other-authentication-methods#working-with-two-factor-authentication)."
1219    /// 
1220    /// To create tokens for a particular OAuth application using this endpoint, you must authenticate as the user you want to create an authorization for and provide the app's client ID and secret, found on your OAuth application's settings page. If your OAuth application intends to create multiple tokens for one user, use `fingerprint` to differentiate between them.
1221    /// 
1222    /// You can also create tokens on GitHub from the [personal access tokens settings](https://github.com/settings/tokens) page. Read more about these tokens in [the GitHub Help documentation](https://docs.github.com/articles/creating-an-access-token-for-command-line-use).
1223    /// 
1224    /// Organizations that enforce SAML SSO require personal access tokens to be allowed. Read more about allowing tokens in [the GitHub Help documentation](https://docs.github.com/articles/about-identity-and-access-management-with-saml-single-sign-on).
1225    /// 
1226    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#create-a-new-authorization)
1227    ///
1228    /// # Content
1229    ///
1230    /// - [`&v1_1_4::request::oauth_authorizations_create_authorization::body::Json`](crate::v1_1_4::request::oauth_authorizations_create_authorization::body::Json)
1231    pub fn oauth_authorizations_create_authorization<Content>(
1232        &self,
1233        theContent: Content,
1234    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
1235    where
1236        Content: Copy + TryInto<crate::v1_1_4::request::oauth_authorizations_create_authorization::Content<::reqwest::blocking::Body>>,
1237        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::oauth_authorizations_create_authorization::Content<::reqwest::blocking::Body>>>::Error>
1238    {
1239        let mut theScheme = AuthScheme::from(&self.config.authentication);
1240
1241        while let Some(auth_step) = theScheme.step()? {
1242            match auth_step {
1243                ::authentic::AuthenticationStep::Request(auth_request) => {
1244                    theScheme.respond(self.client.execute(auth_request));
1245                }
1246                ::authentic::AuthenticationStep::WaitFor(duration) => {
1247                    (self.sleep)(duration);
1248                }
1249            }
1250        }
1251        let theBuilder = crate::v1_1_4::request::oauth_authorizations_create_authorization::reqwest_blocking_builder(
1252            self.config.base_url.as_ref(),
1253            self.config.user_agent.as_ref(),
1254            self.config.accept.as_deref(),
1255        )?
1256        .with_authentication(&theScheme)?;
1257
1258        let theRequest = crate::v1_1_4::request::oauth_authorizations_create_authorization::reqwest_blocking_request(
1259            theBuilder,
1260            theContent.try_into()?,
1261        )?;
1262
1263        ::log::debug!("HTTP request: {:?}", &theRequest);
1264
1265        let theResponse = self.client.execute(theRequest)?;
1266
1267        ::log::debug!("HTTP response: {:?}", &theResponse);
1268
1269        Ok(theResponse)
1270    }
1271
1272    /// Get-or-create an authorization for a specific app
1273    /// 
1274    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations/), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/developers/apps/authorizing-oauth-apps#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
1275    /// 
1276    /// **Warning:** Apps must use the [web application flow](https://docs.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow) to obtain OAuth tokens that work with GitHub SAML organizations. OAuth tokens created using the Authorizations API will be unable to access GitHub SAML organizations. For more information, see the [blog post](https://developer.github.com/changes/2019-11-05-deprecated-passwords-and-authorizations-api).
1277    /// 
1278    /// Creates a new authorization for the specified OAuth application, only if an authorization for that application doesn't already exist for the user. The URL includes the 20 character client ID for the OAuth app that is requesting the token. It returns the user's existing authorization for the application if one is present. Otherwise, it creates and returns a new one.
1279    /// 
1280    /// If you have two-factor authentication setup, Basic Authentication for this endpoint requires that you use a one-time password (OTP) and your username and password instead of tokens. For more information, see "[Working with two-factor authentication](https://docs.github.com/rest/overview/other-authentication-methods#working-with-two-factor-authentication)."
1281    /// 
1282    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations/), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/developers/apps/authorizing-oauth-apps#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
1283    /// 
1284    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#get-or-create-an-authorization-for-a-specific-app)
1285    ///
1286    /// # Content
1287    ///
1288    /// - [`&v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app::body::Json`](crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app::body::Json)
1289    pub fn oauth_authorizations_get_or_create_authorization_for_app<Content>(
1290        &self,
1291        client_id: &str,
1292        theContent: Content,
1293    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
1294    where
1295        Content: Copy + TryInto<crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app::Content<::reqwest::blocking::Body>>,
1296        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app::Content<::reqwest::blocking::Body>>>::Error>
1297    {
1298        let mut theScheme = AuthScheme::from(&self.config.authentication);
1299
1300        while let Some(auth_step) = theScheme.step()? {
1301            match auth_step {
1302                ::authentic::AuthenticationStep::Request(auth_request) => {
1303                    theScheme.respond(self.client.execute(auth_request));
1304                }
1305                ::authentic::AuthenticationStep::WaitFor(duration) => {
1306                    (self.sleep)(duration);
1307                }
1308            }
1309        }
1310        let theBuilder = crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app::reqwest_blocking_builder(
1311            self.config.base_url.as_ref(),
1312            client_id,
1313            self.config.user_agent.as_ref(),
1314            self.config.accept.as_deref(),
1315        )?
1316        .with_authentication(&theScheme)?;
1317
1318        let theRequest = crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app::reqwest_blocking_request(
1319            theBuilder,
1320            theContent.try_into()?,
1321        )?;
1322
1323        ::log::debug!("HTTP request: {:?}", &theRequest);
1324
1325        let theResponse = self.client.execute(theRequest)?;
1326
1327        ::log::debug!("HTTP response: {:?}", &theResponse);
1328
1329        Ok(theResponse)
1330    }
1331
1332    /// Get-or-create an authorization for a specific app and fingerprint
1333    /// 
1334    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations/), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/developers/apps/authorizing-oauth-apps#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
1335    /// 
1336    /// **Warning:** Apps must use the [web application flow](https://docs.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow) to obtain OAuth tokens that work with GitHub SAML organizations. OAuth tokens created using the Authorizations API will be unable to access GitHub SAML organizations. For more information, see the [blog post](https://developer.github.com/changes/2019-11-05-deprecated-passwords-and-authorizations-api).
1337    /// 
1338    /// This method will create a new authorization for the specified OAuth application, only if an authorization for that application and fingerprint do not already exist for the user. The URL includes the 20 character client ID for the OAuth app that is requesting the token. `fingerprint` is a unique string to distinguish an authorization from others created for the same client ID and user. It returns the user's existing authorization for the application if one is present. Otherwise, it creates and returns a new one.
1339    /// 
1340    /// If you have two-factor authentication setup, Basic Authentication for this endpoint requires that you use a one-time password (OTP) and your username and password instead of tokens. For more information, see "[Working with two-factor authentication](https://docs.github.com/rest/overview/other-authentication-methods#working-with-two-factor-authentication)."
1341    /// 
1342    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#get-or-create-an-authorization-for-a-specific-app-and-fingerprint)
1343    ///
1344    /// # Content
1345    ///
1346    /// - [`&v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app_and_fingerprint::body::Json`](crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app_and_fingerprint::body::Json)
1347    pub fn oauth_authorizations_get_or_create_authorization_for_app_and_fingerprint<Content>(
1348        &self,
1349        client_id: &str,
1350        fingerprint: &str,
1351        theContent: Content,
1352    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
1353    where
1354        Content: Copy + TryInto<crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app_and_fingerprint::Content<::reqwest::blocking::Body>>,
1355        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app_and_fingerprint::Content<::reqwest::blocking::Body>>>::Error>
1356    {
1357        let mut theScheme = AuthScheme::from(&self.config.authentication);
1358
1359        while let Some(auth_step) = theScheme.step()? {
1360            match auth_step {
1361                ::authentic::AuthenticationStep::Request(auth_request) => {
1362                    theScheme.respond(self.client.execute(auth_request));
1363                }
1364                ::authentic::AuthenticationStep::WaitFor(duration) => {
1365                    (self.sleep)(duration);
1366                }
1367            }
1368        }
1369        let theBuilder = crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app_and_fingerprint::reqwest_blocking_builder(
1370            self.config.base_url.as_ref(),
1371            client_id,
1372            fingerprint,
1373            self.config.user_agent.as_ref(),
1374            self.config.accept.as_deref(),
1375        )?
1376        .with_authentication(&theScheme)?;
1377
1378        let theRequest = crate::v1_1_4::request::oauth_authorizations_get_or_create_authorization_for_app_and_fingerprint::reqwest_blocking_request(
1379            theBuilder,
1380            theContent.try_into()?,
1381        )?;
1382
1383        ::log::debug!("HTTP request: {:?}", &theRequest);
1384
1385        let theResponse = self.client.execute(theRequest)?;
1386
1387        ::log::debug!("HTTP response: {:?}", &theResponse);
1388
1389        Ok(theResponse)
1390    }
1391
1392    /// Get a single authorization
1393    /// 
1394    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
1395    /// 
1396    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#get-a-single-authorization)
1397    pub fn oauth_authorizations_get_authorization(
1398        &self,
1399        authorization_id: i64,
1400    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1401        let mut theScheme = AuthScheme::from(&self.config.authentication);
1402
1403        while let Some(auth_step) = theScheme.step()? {
1404            match auth_step {
1405                ::authentic::AuthenticationStep::Request(auth_request) => {
1406                    theScheme.respond(self.client.execute(auth_request));
1407                }
1408                ::authentic::AuthenticationStep::WaitFor(duration) => {
1409                    (self.sleep)(duration);
1410                }
1411            }
1412        }
1413        let theBuilder = crate::v1_1_4::request::oauth_authorizations_get_authorization::reqwest_blocking_builder(
1414            self.config.base_url.as_ref(),
1415            authorization_id,
1416            self.config.user_agent.as_ref(),
1417            self.config.accept.as_deref(),
1418        )?
1419        .with_authentication(&theScheme)?;
1420
1421        let theRequest =
1422            crate::v1_1_4::request::oauth_authorizations_get_authorization::reqwest_blocking_request(theBuilder)?;
1423
1424        ::log::debug!("HTTP request: {:?}", &theRequest);
1425
1426        let theResponse = self.client.execute(theRequest)?;
1427
1428        ::log::debug!("HTTP response: {:?}", &theResponse);
1429
1430        Ok(theResponse)
1431    }
1432
1433    /// Delete an authorization
1434    /// 
1435    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
1436    /// 
1437    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#delete-an-authorization)
1438    pub fn oauth_authorizations_delete_authorization(
1439        &self,
1440        authorization_id: i64,
1441    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1442        let mut theScheme = AuthScheme::from(&self.config.authentication);
1443
1444        while let Some(auth_step) = theScheme.step()? {
1445            match auth_step {
1446                ::authentic::AuthenticationStep::Request(auth_request) => {
1447                    theScheme.respond(self.client.execute(auth_request));
1448                }
1449                ::authentic::AuthenticationStep::WaitFor(duration) => {
1450                    (self.sleep)(duration);
1451                }
1452            }
1453        }
1454        let theBuilder = crate::v1_1_4::request::oauth_authorizations_delete_authorization::reqwest_blocking_builder(
1455            self.config.base_url.as_ref(),
1456            authorization_id,
1457            self.config.user_agent.as_ref(),
1458            self.config.accept.as_deref(),
1459        )?
1460        .with_authentication(&theScheme)?;
1461
1462        let theRequest =
1463            crate::v1_1_4::request::oauth_authorizations_delete_authorization::reqwest_blocking_request(theBuilder)?;
1464
1465        ::log::debug!("HTTP request: {:?}", &theRequest);
1466
1467        let theResponse = self.client.execute(theRequest)?;
1468
1469        ::log::debug!("HTTP response: {:?}", &theResponse);
1470
1471        Ok(theResponse)
1472    }
1473
1474    /// Update an existing authorization
1475    /// 
1476    /// **Deprecation Notice:** GitHub will discontinue the [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations/), which is used by integrations to create personal access tokens and OAuth tokens, and you must now create these tokens using our [web application flow](https://docs.github.com/developers/apps/authorizing-oauth-apps#web-application-flow). The [OAuth Authorizations API](https://docs.github.com/rest/reference/oauth-authorizations) will be removed on November, 13, 2020. For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-auth-endpoint/).
1477    /// 
1478    /// If you have two-factor authentication setup, Basic Authentication for this endpoint requires that you use a one-time password (OTP) and your username and password instead of tokens. For more information, see "[Working with two-factor authentication](https://docs.github.com/rest/overview/other-authentication-methods#working-with-two-factor-authentication)."
1479    /// 
1480    /// You can only send one of these scope keys at a time.
1481    /// 
1482    /// [API method documentation](https://docs.github.com/rest/reference/oauth-authorizations#update-an-existing-authorization)
1483    ///
1484    /// # Content
1485    ///
1486    /// - [`&v1_1_4::request::oauth_authorizations_update_authorization::body::Json`](crate::v1_1_4::request::oauth_authorizations_update_authorization::body::Json)
1487    pub fn oauth_authorizations_update_authorization<Content>(
1488        &self,
1489        authorization_id: i64,
1490        theContent: Content,
1491    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
1492    where
1493        Content: Copy + TryInto<crate::v1_1_4::request::oauth_authorizations_update_authorization::Content<::reqwest::blocking::Body>>,
1494        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::oauth_authorizations_update_authorization::Content<::reqwest::blocking::Body>>>::Error>
1495    {
1496        let mut theScheme = AuthScheme::from(&self.config.authentication);
1497
1498        while let Some(auth_step) = theScheme.step()? {
1499            match auth_step {
1500                ::authentic::AuthenticationStep::Request(auth_request) => {
1501                    theScheme.respond(self.client.execute(auth_request));
1502                }
1503                ::authentic::AuthenticationStep::WaitFor(duration) => {
1504                    (self.sleep)(duration);
1505                }
1506            }
1507        }
1508        let theBuilder = crate::v1_1_4::request::oauth_authorizations_update_authorization::reqwest_blocking_builder(
1509            self.config.base_url.as_ref(),
1510            authorization_id,
1511            self.config.user_agent.as_ref(),
1512            self.config.accept.as_deref(),
1513        )?
1514        .with_authentication(&theScheme)?;
1515
1516        let theRequest = crate::v1_1_4::request::oauth_authorizations_update_authorization::reqwest_blocking_request(
1517            theBuilder,
1518            theContent.try_into()?,
1519        )?;
1520
1521        ::log::debug!("HTTP request: {:?}", &theRequest);
1522
1523        let theResponse = self.client.execute(theRequest)?;
1524
1525        ::log::debug!("HTTP response: {:?}", &theResponse);
1526
1527        Ok(theResponse)
1528    }
1529
1530    /// Get all codes of conduct
1531    /// 
1532    /// [API method documentation](https://docs.github.com/rest/reference/codes-of-conduct#get-all-codes-of-conduct)
1533    pub fn codes_of_conduct_get_all_codes_of_conduct(
1534        &self,
1535    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1536        let mut theScheme = AuthScheme::from(&self.config.authentication);
1537
1538        while let Some(auth_step) = theScheme.step()? {
1539            match auth_step {
1540                ::authentic::AuthenticationStep::Request(auth_request) => {
1541                    theScheme.respond(self.client.execute(auth_request));
1542                }
1543                ::authentic::AuthenticationStep::WaitFor(duration) => {
1544                    (self.sleep)(duration);
1545                }
1546            }
1547        }
1548        let theBuilder = crate::v1_1_4::request::codes_of_conduct_get_all_codes_of_conduct::reqwest_blocking_builder(
1549            self.config.base_url.as_ref(),
1550            self.config.user_agent.as_ref(),
1551            self.config.accept.as_deref(),
1552        )?
1553        .with_authentication(&theScheme)?;
1554
1555        let theRequest =
1556            crate::v1_1_4::request::codes_of_conduct_get_all_codes_of_conduct::reqwest_blocking_request(theBuilder)?;
1557
1558        ::log::debug!("HTTP request: {:?}", &theRequest);
1559
1560        let theResponse = self.client.execute(theRequest)?;
1561
1562        ::log::debug!("HTTP response: {:?}", &theResponse);
1563
1564        Ok(theResponse)
1565    }
1566
1567    /// Get a code of conduct
1568    /// 
1569    /// [API method documentation](https://docs.github.com/rest/reference/codes-of-conduct#get-a-code-of-conduct)
1570    pub fn codes_of_conduct_get_conduct_code(
1571        &self,
1572        key: &str,
1573    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1574        let mut theScheme = AuthScheme::from(&self.config.authentication);
1575
1576        while let Some(auth_step) = theScheme.step()? {
1577            match auth_step {
1578                ::authentic::AuthenticationStep::Request(auth_request) => {
1579                    theScheme.respond(self.client.execute(auth_request));
1580                }
1581                ::authentic::AuthenticationStep::WaitFor(duration) => {
1582                    (self.sleep)(duration);
1583                }
1584            }
1585        }
1586        let theBuilder = crate::v1_1_4::request::codes_of_conduct_get_conduct_code::reqwest_blocking_builder(
1587            self.config.base_url.as_ref(),
1588            key,
1589            self.config.user_agent.as_ref(),
1590            self.config.accept.as_deref(),
1591        )?
1592        .with_authentication(&theScheme)?;
1593
1594        let theRequest =
1595            crate::v1_1_4::request::codes_of_conduct_get_conduct_code::reqwest_blocking_request(theBuilder)?;
1596
1597        ::log::debug!("HTTP request: {:?}", &theRequest);
1598
1599        let theResponse = self.client.execute(theRequest)?;
1600
1601        ::log::debug!("HTTP response: {:?}", &theResponse);
1602
1603        Ok(theResponse)
1604    }
1605
1606    /// Get emojis
1607    /// 
1608    /// Lists all the emojis available to use on GitHub.
1609    /// 
1610    /// [API method documentation](https://docs.github.com/rest/reference/emojis#get-emojis)
1611    pub fn emojis_get(
1612        &self,
1613    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1614        let mut theScheme = AuthScheme::from(&self.config.authentication);
1615
1616        while let Some(auth_step) = theScheme.step()? {
1617            match auth_step {
1618                ::authentic::AuthenticationStep::Request(auth_request) => {
1619                    theScheme.respond(self.client.execute(auth_request));
1620                }
1621                ::authentic::AuthenticationStep::WaitFor(duration) => {
1622                    (self.sleep)(duration);
1623                }
1624            }
1625        }
1626        let theBuilder = crate::v1_1_4::request::emojis_get::reqwest_blocking_builder(
1627            self.config.base_url.as_ref(),
1628            self.config.user_agent.as_ref(),
1629            self.config.accept.as_deref(),
1630        )?
1631        .with_authentication(&theScheme)?;
1632
1633        let theRequest =
1634            crate::v1_1_4::request::emojis_get::reqwest_blocking_request(theBuilder)?;
1635
1636        ::log::debug!("HTTP request: {:?}", &theRequest);
1637
1638        let theResponse = self.client.execute(theRequest)?;
1639
1640        ::log::debug!("HTTP response: {:?}", &theResponse);
1641
1642        Ok(theResponse)
1643    }
1644
1645    /// Get GitHub Actions cache usage for an enterprise
1646    /// 
1647    /// Gets the total GitHub Actions cache usage for an enterprise.
1648    /// The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.
1649    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
1650    /// 
1651    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-github-actions-cache-usage-for-an-enterprise)
1652    pub fn actions_get_actions_cache_usage_for_enterprise(
1653        &self,
1654        enterprise: &str,
1655    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1656        let mut theScheme = AuthScheme::from(&self.config.authentication);
1657
1658        while let Some(auth_step) = theScheme.step()? {
1659            match auth_step {
1660                ::authentic::AuthenticationStep::Request(auth_request) => {
1661                    theScheme.respond(self.client.execute(auth_request));
1662                }
1663                ::authentic::AuthenticationStep::WaitFor(duration) => {
1664                    (self.sleep)(duration);
1665                }
1666            }
1667        }
1668        let theBuilder = crate::v1_1_4::request::actions_get_actions_cache_usage_for_enterprise::reqwest_blocking_builder(
1669            self.config.base_url.as_ref(),
1670            enterprise,
1671            self.config.user_agent.as_ref(),
1672            self.config.accept.as_deref(),
1673        )?
1674        .with_authentication(&theScheme)?;
1675
1676        let theRequest =
1677            crate::v1_1_4::request::actions_get_actions_cache_usage_for_enterprise::reqwest_blocking_request(theBuilder)?;
1678
1679        ::log::debug!("HTTP request: {:?}", &theRequest);
1680
1681        let theResponse = self.client.execute(theRequest)?;
1682
1683        ::log::debug!("HTTP response: {:?}", &theResponse);
1684
1685        Ok(theResponse)
1686    }
1687
1688    /// Get GitHub Actions permissions for an enterprise
1689    /// 
1690    /// Gets the GitHub Actions permissions policy for organizations and allowed actions and reusable workflows in an enterprise.
1691    /// 
1692    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
1693    /// 
1694    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-github-actions-permissions-for-an-enterprise)
1695    pub fn enterprise_admin_get_github_actions_permissions_enterprise(
1696        &self,
1697        enterprise: &str,
1698    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1699        let mut theScheme = AuthScheme::from(&self.config.authentication);
1700
1701        while let Some(auth_step) = theScheme.step()? {
1702            match auth_step {
1703                ::authentic::AuthenticationStep::Request(auth_request) => {
1704                    theScheme.respond(self.client.execute(auth_request));
1705                }
1706                ::authentic::AuthenticationStep::WaitFor(duration) => {
1707                    (self.sleep)(duration);
1708                }
1709            }
1710        }
1711        let theBuilder = crate::v1_1_4::request::enterprise_admin_get_github_actions_permissions_enterprise::reqwest_blocking_builder(
1712            self.config.base_url.as_ref(),
1713            enterprise,
1714            self.config.user_agent.as_ref(),
1715            self.config.accept.as_deref(),
1716        )?
1717        .with_authentication(&theScheme)?;
1718
1719        let theRequest =
1720            crate::v1_1_4::request::enterprise_admin_get_github_actions_permissions_enterprise::reqwest_blocking_request(theBuilder)?;
1721
1722        ::log::debug!("HTTP request: {:?}", &theRequest);
1723
1724        let theResponse = self.client.execute(theRequest)?;
1725
1726        ::log::debug!("HTTP response: {:?}", &theResponse);
1727
1728        Ok(theResponse)
1729    }
1730
1731    /// Set GitHub Actions permissions for an enterprise
1732    /// 
1733    /// Sets the GitHub Actions permissions policy for organizations and allowed actions and reusable workflows in an enterprise.
1734    /// 
1735    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
1736    /// 
1737    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-github-actions-permissions-for-an-enterprise)
1738    ///
1739    /// # Content
1740    ///
1741    /// - [`&v1_1_4::request::enterprise_admin_set_github_actions_permissions_enterprise::body::Json`](crate::v1_1_4::request::enterprise_admin_set_github_actions_permissions_enterprise::body::Json)
1742    pub fn enterprise_admin_set_github_actions_permissions_enterprise<Content>(
1743        &self,
1744        enterprise: &str,
1745        theContent: Content,
1746    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
1747    where
1748        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_set_github_actions_permissions_enterprise::Content<::reqwest::blocking::Body>>,
1749        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_set_github_actions_permissions_enterprise::Content<::reqwest::blocking::Body>>>::Error>
1750    {
1751        let mut theScheme = AuthScheme::from(&self.config.authentication);
1752
1753        while let Some(auth_step) = theScheme.step()? {
1754            match auth_step {
1755                ::authentic::AuthenticationStep::Request(auth_request) => {
1756                    theScheme.respond(self.client.execute(auth_request));
1757                }
1758                ::authentic::AuthenticationStep::WaitFor(duration) => {
1759                    (self.sleep)(duration);
1760                }
1761            }
1762        }
1763        let theBuilder = crate::v1_1_4::request::enterprise_admin_set_github_actions_permissions_enterprise::reqwest_blocking_builder(
1764            self.config.base_url.as_ref(),
1765            enterprise,
1766            self.config.user_agent.as_ref(),
1767            self.config.accept.as_deref(),
1768        )?
1769        .with_authentication(&theScheme)?;
1770
1771        let theRequest = crate::v1_1_4::request::enterprise_admin_set_github_actions_permissions_enterprise::reqwest_blocking_request(
1772            theBuilder,
1773            theContent.try_into()?,
1774        )?;
1775
1776        ::log::debug!("HTTP request: {:?}", &theRequest);
1777
1778        let theResponse = self.client.execute(theRequest)?;
1779
1780        ::log::debug!("HTTP response: {:?}", &theResponse);
1781
1782        Ok(theResponse)
1783    }
1784
1785    /// List selected organizations enabled for GitHub Actions in an enterprise
1786    /// 
1787    /// Lists the organizations that are selected to have GitHub Actions enabled in an enterprise. To use this endpoint, the enterprise permission policy for `enabled_organizations` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an enterprise](#set-github-actions-permissions-for-an-enterprise)."
1788    /// 
1789    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
1790    /// 
1791    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-selected-organizations-enabled-for-github-actions-in-an-enterprise)
1792    pub fn enterprise_admin_list_selected_organizations_enabled_github_actions_enterprise(
1793        &self,
1794        enterprise: &str,
1795        per_page: ::std::option::Option<i64>,
1796        page: ::std::option::Option<i64>,
1797    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1798        let mut theScheme = AuthScheme::from(&self.config.authentication);
1799
1800        while let Some(auth_step) = theScheme.step()? {
1801            match auth_step {
1802                ::authentic::AuthenticationStep::Request(auth_request) => {
1803                    theScheme.respond(self.client.execute(auth_request));
1804                }
1805                ::authentic::AuthenticationStep::WaitFor(duration) => {
1806                    (self.sleep)(duration);
1807                }
1808            }
1809        }
1810        let theBuilder = crate::v1_1_4::request::enterprise_admin_list_selected_organizations_enabled_github_actions_enterprise::reqwest_blocking_builder(
1811            self.config.base_url.as_ref(),
1812            enterprise,
1813            per_page,
1814            page,
1815            self.config.user_agent.as_ref(),
1816            self.config.accept.as_deref(),
1817        )?
1818        .with_authentication(&theScheme)?;
1819
1820        let theRequest =
1821            crate::v1_1_4::request::enterprise_admin_list_selected_organizations_enabled_github_actions_enterprise::reqwest_blocking_request(theBuilder)?;
1822
1823        ::log::debug!("HTTP request: {:?}", &theRequest);
1824
1825        let theResponse = self.client.execute(theRequest)?;
1826
1827        ::log::debug!("HTTP response: {:?}", &theResponse);
1828
1829        Ok(theResponse)
1830    }
1831
1832    /// Set selected organizations enabled for GitHub Actions in an enterprise
1833    /// 
1834    /// Replaces the list of selected organizations that are enabled for GitHub Actions in an enterprise. To use this endpoint, the enterprise permission policy for `enabled_organizations` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an enterprise](#set-github-actions-permissions-for-an-enterprise)."
1835    /// 
1836    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
1837    /// 
1838    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-selected-organizations-enabled-for-github-actions-in-an-enterprise)
1839    ///
1840    /// # Content
1841    ///
1842    /// - [`&v1_1_4::request::enterprise_admin_set_selected_organizations_enabled_github_actions_enterprise::body::Json`](crate::v1_1_4::request::enterprise_admin_set_selected_organizations_enabled_github_actions_enterprise::body::Json)
1843    pub fn enterprise_admin_set_selected_organizations_enabled_github_actions_enterprise<Content>(
1844        &self,
1845        enterprise: &str,
1846        theContent: Content,
1847    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
1848    where
1849        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_set_selected_organizations_enabled_github_actions_enterprise::Content<::reqwest::blocking::Body>>,
1850        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_set_selected_organizations_enabled_github_actions_enterprise::Content<::reqwest::blocking::Body>>>::Error>
1851    {
1852        let mut theScheme = AuthScheme::from(&self.config.authentication);
1853
1854        while let Some(auth_step) = theScheme.step()? {
1855            match auth_step {
1856                ::authentic::AuthenticationStep::Request(auth_request) => {
1857                    theScheme.respond(self.client.execute(auth_request));
1858                }
1859                ::authentic::AuthenticationStep::WaitFor(duration) => {
1860                    (self.sleep)(duration);
1861                }
1862            }
1863        }
1864        let theBuilder = crate::v1_1_4::request::enterprise_admin_set_selected_organizations_enabled_github_actions_enterprise::reqwest_blocking_builder(
1865            self.config.base_url.as_ref(),
1866            enterprise,
1867            self.config.user_agent.as_ref(),
1868            self.config.accept.as_deref(),
1869        )?
1870        .with_authentication(&theScheme)?;
1871
1872        let theRequest = crate::v1_1_4::request::enterprise_admin_set_selected_organizations_enabled_github_actions_enterprise::reqwest_blocking_request(
1873            theBuilder,
1874            theContent.try_into()?,
1875        )?;
1876
1877        ::log::debug!("HTTP request: {:?}", &theRequest);
1878
1879        let theResponse = self.client.execute(theRequest)?;
1880
1881        ::log::debug!("HTTP response: {:?}", &theResponse);
1882
1883        Ok(theResponse)
1884    }
1885
1886    /// Enable a selected organization for GitHub Actions in an enterprise
1887    /// 
1888    /// Adds an organization to the list of selected organizations that are enabled for GitHub Actions in an enterprise. To use this endpoint, the enterprise permission policy for `enabled_organizations` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an enterprise](#set-github-actions-permissions-for-an-enterprise)."
1889    /// 
1890    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
1891    /// 
1892    /// [API method documentation](https://docs.github.com/rest/reference/actions#enable-a-selected-organization-for-github-actions-in-an-enterprise)
1893    pub fn enterprise_admin_enable_selected_organization_github_actions_enterprise(
1894        &self,
1895        enterprise: &str,
1896        org_id: i64,
1897    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1898        let mut theScheme = AuthScheme::from(&self.config.authentication);
1899
1900        while let Some(auth_step) = theScheme.step()? {
1901            match auth_step {
1902                ::authentic::AuthenticationStep::Request(auth_request) => {
1903                    theScheme.respond(self.client.execute(auth_request));
1904                }
1905                ::authentic::AuthenticationStep::WaitFor(duration) => {
1906                    (self.sleep)(duration);
1907                }
1908            }
1909        }
1910        let theBuilder = crate::v1_1_4::request::enterprise_admin_enable_selected_organization_github_actions_enterprise::reqwest_blocking_builder(
1911            self.config.base_url.as_ref(),
1912            enterprise,
1913            org_id,
1914            self.config.user_agent.as_ref(),
1915            self.config.accept.as_deref(),
1916        )?
1917        .with_authentication(&theScheme)?;
1918
1919        let theRequest =
1920            crate::v1_1_4::request::enterprise_admin_enable_selected_organization_github_actions_enterprise::reqwest_blocking_request(theBuilder)?;
1921
1922        ::log::debug!("HTTP request: {:?}", &theRequest);
1923
1924        let theResponse = self.client.execute(theRequest)?;
1925
1926        ::log::debug!("HTTP response: {:?}", &theResponse);
1927
1928        Ok(theResponse)
1929    }
1930
1931    /// Disable a selected organization for GitHub Actions in an enterprise
1932    /// 
1933    /// Removes an organization from the list of selected organizations that are enabled for GitHub Actions in an enterprise. To use this endpoint, the enterprise permission policy for `enabled_organizations` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an enterprise](#set-github-actions-permissions-for-an-enterprise)."
1934    /// 
1935    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
1936    /// 
1937    /// [API method documentation](https://docs.github.com/rest/reference/actions#disable-a-selected-organization-for-github-actions-in-an-enterprise)
1938    pub fn enterprise_admin_disable_selected_organization_github_actions_enterprise(
1939        &self,
1940        enterprise: &str,
1941        org_id: i64,
1942    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1943        let mut theScheme = AuthScheme::from(&self.config.authentication);
1944
1945        while let Some(auth_step) = theScheme.step()? {
1946            match auth_step {
1947                ::authentic::AuthenticationStep::Request(auth_request) => {
1948                    theScheme.respond(self.client.execute(auth_request));
1949                }
1950                ::authentic::AuthenticationStep::WaitFor(duration) => {
1951                    (self.sleep)(duration);
1952                }
1953            }
1954        }
1955        let theBuilder = crate::v1_1_4::request::enterprise_admin_disable_selected_organization_github_actions_enterprise::reqwest_blocking_builder(
1956            self.config.base_url.as_ref(),
1957            enterprise,
1958            org_id,
1959            self.config.user_agent.as_ref(),
1960            self.config.accept.as_deref(),
1961        )?
1962        .with_authentication(&theScheme)?;
1963
1964        let theRequest =
1965            crate::v1_1_4::request::enterprise_admin_disable_selected_organization_github_actions_enterprise::reqwest_blocking_request(theBuilder)?;
1966
1967        ::log::debug!("HTTP request: {:?}", &theRequest);
1968
1969        let theResponse = self.client.execute(theRequest)?;
1970
1971        ::log::debug!("HTTP response: {:?}", &theResponse);
1972
1973        Ok(theResponse)
1974    }
1975
1976    /// Get allowed actions and reusable workflows for an enterprise
1977    /// 
1978    /// Gets the selected actions and reusable workflows that are allowed in an enterprise. To use this endpoint, the enterprise permission policy for `allowed_actions` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an enterprise](#set-github-actions-permissions-for-an-enterprise)."
1979    /// 
1980    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
1981    /// 
1982    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-allowed-actions-for-an-enterprise)
1983    pub fn enterprise_admin_get_allowed_actions_enterprise(
1984        &self,
1985        enterprise: &str,
1986    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
1987        let mut theScheme = AuthScheme::from(&self.config.authentication);
1988
1989        while let Some(auth_step) = theScheme.step()? {
1990            match auth_step {
1991                ::authentic::AuthenticationStep::Request(auth_request) => {
1992                    theScheme.respond(self.client.execute(auth_request));
1993                }
1994                ::authentic::AuthenticationStep::WaitFor(duration) => {
1995                    (self.sleep)(duration);
1996                }
1997            }
1998        }
1999        let theBuilder = crate::v1_1_4::request::enterprise_admin_get_allowed_actions_enterprise::reqwest_blocking_builder(
2000            self.config.base_url.as_ref(),
2001            enterprise,
2002            self.config.user_agent.as_ref(),
2003            self.config.accept.as_deref(),
2004        )?
2005        .with_authentication(&theScheme)?;
2006
2007        let theRequest =
2008            crate::v1_1_4::request::enterprise_admin_get_allowed_actions_enterprise::reqwest_blocking_request(theBuilder)?;
2009
2010        ::log::debug!("HTTP request: {:?}", &theRequest);
2011
2012        let theResponse = self.client.execute(theRequest)?;
2013
2014        ::log::debug!("HTTP response: {:?}", &theResponse);
2015
2016        Ok(theResponse)
2017    }
2018
2019    /// Set allowed actions and reusable workflows for an enterprise
2020    /// 
2021    /// Sets the actions and reusable workflows that are allowed in an enterprise. To use this endpoint, the enterprise permission policy for `allowed_actions` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an enterprise](#set-github-actions-permissions-for-an-enterprise)."
2022    /// 
2023    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
2024    /// 
2025    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-allowed-actions-for-an-enterprise)
2026    ///
2027    /// # Content
2028    ///
2029    /// - [`&v1_1_4::schema::SelectedActions`](crate::v1_1_4::schema::SelectedActions)
2030    pub fn enterprise_admin_set_allowed_actions_enterprise<Content>(
2031        &self,
2032        enterprise: &str,
2033        theContent: Content,
2034    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
2035    where
2036        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_set_allowed_actions_enterprise::Content<::reqwest::blocking::Body>>,
2037        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_set_allowed_actions_enterprise::Content<::reqwest::blocking::Body>>>::Error>
2038    {
2039        let mut theScheme = AuthScheme::from(&self.config.authentication);
2040
2041        while let Some(auth_step) = theScheme.step()? {
2042            match auth_step {
2043                ::authentic::AuthenticationStep::Request(auth_request) => {
2044                    theScheme.respond(self.client.execute(auth_request));
2045                }
2046                ::authentic::AuthenticationStep::WaitFor(duration) => {
2047                    (self.sleep)(duration);
2048                }
2049            }
2050        }
2051        let theBuilder = crate::v1_1_4::request::enterprise_admin_set_allowed_actions_enterprise::reqwest_blocking_builder(
2052            self.config.base_url.as_ref(),
2053            enterprise,
2054            self.config.user_agent.as_ref(),
2055            self.config.accept.as_deref(),
2056        )?
2057        .with_authentication(&theScheme)?;
2058
2059        let theRequest = crate::v1_1_4::request::enterprise_admin_set_allowed_actions_enterprise::reqwest_blocking_request(
2060            theBuilder,
2061            theContent.try_into()?,
2062        )?;
2063
2064        ::log::debug!("HTTP request: {:?}", &theRequest);
2065
2066        let theResponse = self.client.execute(theRequest)?;
2067
2068        ::log::debug!("HTTP response: {:?}", &theResponse);
2069
2070        Ok(theResponse)
2071    }
2072
2073    /// Get default workflow permissions for an enterprise
2074    /// 
2075    /// Gets the default workflow permissions granted to the `GITHUB_TOKEN` when running workflows in an enterprise,
2076    /// as well as whether GitHub Actions can submit approving pull request reviews. For more information, see
2077    /// "[Enforcing a policy for workflow permissions in your enterprise](https://docs.github.com/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-workflow-permissions-in-your-enterprise)."
2078    /// 
2079    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
2080    /// GitHub Apps must have the `enterprise_administration:write` permission to use this endpoint.
2081    /// 
2082    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-default-workflow-permissions-for-an-enterprise)
2083    pub fn actions_get_github_actions_default_workflow_permissions_enterprise(
2084        &self,
2085        enterprise: &str,
2086    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2087        let mut theScheme = AuthScheme::from(&self.config.authentication);
2088
2089        while let Some(auth_step) = theScheme.step()? {
2090            match auth_step {
2091                ::authentic::AuthenticationStep::Request(auth_request) => {
2092                    theScheme.respond(self.client.execute(auth_request));
2093                }
2094                ::authentic::AuthenticationStep::WaitFor(duration) => {
2095                    (self.sleep)(duration);
2096                }
2097            }
2098        }
2099        let theBuilder = crate::v1_1_4::request::actions_get_github_actions_default_workflow_permissions_enterprise::reqwest_blocking_builder(
2100            self.config.base_url.as_ref(),
2101            enterprise,
2102            self.config.user_agent.as_ref(),
2103            self.config.accept.as_deref(),
2104        )?
2105        .with_authentication(&theScheme)?;
2106
2107        let theRequest =
2108            crate::v1_1_4::request::actions_get_github_actions_default_workflow_permissions_enterprise::reqwest_blocking_request(theBuilder)?;
2109
2110        ::log::debug!("HTTP request: {:?}", &theRequest);
2111
2112        let theResponse = self.client.execute(theRequest)?;
2113
2114        ::log::debug!("HTTP response: {:?}", &theResponse);
2115
2116        Ok(theResponse)
2117    }
2118
2119    /// Set default workflow permissions for an enterprise
2120    /// 
2121    /// Sets the default workflow permissions granted to the `GITHUB_TOKEN` when running workflows in an enterprise, and sets
2122    /// whether GitHub Actions can submit approving pull request reviews. For more information, see
2123    /// "[Enforcing a policy for workflow permissions in your enterprise](https://docs.github.com/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-workflow-permissions-in-your-enterprise)."
2124    /// 
2125    /// You must authenticate using an access token with the `admin:enterprise` scope to use this endpoint.
2126    /// GitHub Apps must have the `enterprise_administration:write` permission to use this endpoint.
2127    /// 
2128    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-default-workflow-permissions-for-an-enterprise)
2129    ///
2130    /// # Content
2131    ///
2132    /// - [`&v1_1_4::schema::ActionsSetDefaultWorkflowPermissions`](crate::v1_1_4::schema::ActionsSetDefaultWorkflowPermissions)
2133    pub fn actions_set_github_actions_default_workflow_permissions_enterprise<Content>(
2134        &self,
2135        enterprise: &str,
2136        theContent: Content,
2137    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
2138    where
2139        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_enterprise::Content<::reqwest::blocking::Body>>,
2140        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_enterprise::Content<::reqwest::blocking::Body>>>::Error>
2141    {
2142        let mut theScheme = AuthScheme::from(&self.config.authentication);
2143
2144        while let Some(auth_step) = theScheme.step()? {
2145            match auth_step {
2146                ::authentic::AuthenticationStep::Request(auth_request) => {
2147                    theScheme.respond(self.client.execute(auth_request));
2148                }
2149                ::authentic::AuthenticationStep::WaitFor(duration) => {
2150                    (self.sleep)(duration);
2151                }
2152            }
2153        }
2154        let theBuilder = crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_enterprise::reqwest_blocking_builder(
2155            self.config.base_url.as_ref(),
2156            enterprise,
2157            self.config.user_agent.as_ref(),
2158            self.config.accept.as_deref(),
2159        )?
2160        .with_authentication(&theScheme)?;
2161
2162        let theRequest = crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_enterprise::reqwest_blocking_request(
2163            theBuilder,
2164            theContent.try_into()?,
2165        )?;
2166
2167        ::log::debug!("HTTP request: {:?}", &theRequest);
2168
2169        let theResponse = self.client.execute(theRequest)?;
2170
2171        ::log::debug!("HTTP response: {:?}", &theResponse);
2172
2173        Ok(theResponse)
2174    }
2175
2176    /// List self-hosted runner groups for an enterprise
2177    /// 
2178    /// Lists all self-hosted runner groups for an enterprise.
2179    /// 
2180    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2181    /// 
2182    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-self-hosted-runner-groups-for-an-enterprise)
2183    pub fn enterprise_admin_list_self_hosted_runner_groups_for_enterprise(
2184        &self,
2185        enterprise: &str,
2186        per_page: ::std::option::Option<i64>,
2187        page: ::std::option::Option<i64>,
2188        visible_to_organization: ::std::option::Option<&str>,
2189    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2190        let mut theScheme = AuthScheme::from(&self.config.authentication);
2191
2192        while let Some(auth_step) = theScheme.step()? {
2193            match auth_step {
2194                ::authentic::AuthenticationStep::Request(auth_request) => {
2195                    theScheme.respond(self.client.execute(auth_request));
2196                }
2197                ::authentic::AuthenticationStep::WaitFor(duration) => {
2198                    (self.sleep)(duration);
2199                }
2200            }
2201        }
2202        let theBuilder = crate::v1_1_4::request::enterprise_admin_list_self_hosted_runner_groups_for_enterprise::reqwest_blocking_builder(
2203            self.config.base_url.as_ref(),
2204            enterprise,
2205            per_page,
2206            page,
2207            visible_to_organization,
2208            self.config.user_agent.as_ref(),
2209            self.config.accept.as_deref(),
2210        )?
2211        .with_authentication(&theScheme)?;
2212
2213        let theRequest =
2214            crate::v1_1_4::request::enterprise_admin_list_self_hosted_runner_groups_for_enterprise::reqwest_blocking_request(theBuilder)?;
2215
2216        ::log::debug!("HTTP request: {:?}", &theRequest);
2217
2218        let theResponse = self.client.execute(theRequest)?;
2219
2220        ::log::debug!("HTTP response: {:?}", &theResponse);
2221
2222        Ok(theResponse)
2223    }
2224
2225    /// Create a self-hosted runner group for an enterprise
2226    /// 
2227    /// Creates a new self-hosted runner group for an enterprise.
2228    /// 
2229    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2230    /// 
2231    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-self-hosted-runner-group-for-an-enterprise)
2232    ///
2233    /// # Content
2234    ///
2235    /// - [`&v1_1_4::request::enterprise_admin_create_self_hosted_runner_group_for_enterprise::body::Json`](crate::v1_1_4::request::enterprise_admin_create_self_hosted_runner_group_for_enterprise::body::Json)
2236    pub fn enterprise_admin_create_self_hosted_runner_group_for_enterprise<Content>(
2237        &self,
2238        enterprise: &str,
2239        theContent: Content,
2240    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
2241    where
2242        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_create_self_hosted_runner_group_for_enterprise::Content<::reqwest::blocking::Body>>,
2243        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_create_self_hosted_runner_group_for_enterprise::Content<::reqwest::blocking::Body>>>::Error>
2244    {
2245        let mut theScheme = AuthScheme::from(&self.config.authentication);
2246
2247        while let Some(auth_step) = theScheme.step()? {
2248            match auth_step {
2249                ::authentic::AuthenticationStep::Request(auth_request) => {
2250                    theScheme.respond(self.client.execute(auth_request));
2251                }
2252                ::authentic::AuthenticationStep::WaitFor(duration) => {
2253                    (self.sleep)(duration);
2254                }
2255            }
2256        }
2257        let theBuilder = crate::v1_1_4::request::enterprise_admin_create_self_hosted_runner_group_for_enterprise::reqwest_blocking_builder(
2258            self.config.base_url.as_ref(),
2259            enterprise,
2260            self.config.user_agent.as_ref(),
2261            self.config.accept.as_deref(),
2262        )?
2263        .with_authentication(&theScheme)?;
2264
2265        let theRequest = crate::v1_1_4::request::enterprise_admin_create_self_hosted_runner_group_for_enterprise::reqwest_blocking_request(
2266            theBuilder,
2267            theContent.try_into()?,
2268        )?;
2269
2270        ::log::debug!("HTTP request: {:?}", &theRequest);
2271
2272        let theResponse = self.client.execute(theRequest)?;
2273
2274        ::log::debug!("HTTP response: {:?}", &theResponse);
2275
2276        Ok(theResponse)
2277    }
2278
2279    /// Get a self-hosted runner group for an enterprise
2280    /// 
2281    /// Gets a specific self-hosted runner group for an enterprise.
2282    /// 
2283    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2284    /// 
2285    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-self-hosted-runner-group-for-an-enterprise)
2286    pub fn enterprise_admin_get_self_hosted_runner_group_for_enterprise(
2287        &self,
2288        enterprise: &str,
2289        runner_group_id: i64,
2290    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2291        let mut theScheme = AuthScheme::from(&self.config.authentication);
2292
2293        while let Some(auth_step) = theScheme.step()? {
2294            match auth_step {
2295                ::authentic::AuthenticationStep::Request(auth_request) => {
2296                    theScheme.respond(self.client.execute(auth_request));
2297                }
2298                ::authentic::AuthenticationStep::WaitFor(duration) => {
2299                    (self.sleep)(duration);
2300                }
2301            }
2302        }
2303        let theBuilder = crate::v1_1_4::request::enterprise_admin_get_self_hosted_runner_group_for_enterprise::reqwest_blocking_builder(
2304            self.config.base_url.as_ref(),
2305            enterprise,
2306            runner_group_id,
2307            self.config.user_agent.as_ref(),
2308            self.config.accept.as_deref(),
2309        )?
2310        .with_authentication(&theScheme)?;
2311
2312        let theRequest =
2313            crate::v1_1_4::request::enterprise_admin_get_self_hosted_runner_group_for_enterprise::reqwest_blocking_request(theBuilder)?;
2314
2315        ::log::debug!("HTTP request: {:?}", &theRequest);
2316
2317        let theResponse = self.client.execute(theRequest)?;
2318
2319        ::log::debug!("HTTP response: {:?}", &theResponse);
2320
2321        Ok(theResponse)
2322    }
2323
2324    /// Delete a self-hosted runner group from an enterprise
2325    /// 
2326    /// Deletes a self-hosted runner group for an enterprise.
2327    /// 
2328    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2329    /// 
2330    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-a-self-hosted-runner-group-from-an-enterprise)
2331    pub fn enterprise_admin_delete_self_hosted_runner_group_from_enterprise(
2332        &self,
2333        enterprise: &str,
2334        runner_group_id: i64,
2335    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2336        let mut theScheme = AuthScheme::from(&self.config.authentication);
2337
2338        while let Some(auth_step) = theScheme.step()? {
2339            match auth_step {
2340                ::authentic::AuthenticationStep::Request(auth_request) => {
2341                    theScheme.respond(self.client.execute(auth_request));
2342                }
2343                ::authentic::AuthenticationStep::WaitFor(duration) => {
2344                    (self.sleep)(duration);
2345                }
2346            }
2347        }
2348        let theBuilder = crate::v1_1_4::request::enterprise_admin_delete_self_hosted_runner_group_from_enterprise::reqwest_blocking_builder(
2349            self.config.base_url.as_ref(),
2350            enterprise,
2351            runner_group_id,
2352            self.config.user_agent.as_ref(),
2353            self.config.accept.as_deref(),
2354        )?
2355        .with_authentication(&theScheme)?;
2356
2357        let theRequest =
2358            crate::v1_1_4::request::enterprise_admin_delete_self_hosted_runner_group_from_enterprise::reqwest_blocking_request(theBuilder)?;
2359
2360        ::log::debug!("HTTP request: {:?}", &theRequest);
2361
2362        let theResponse = self.client.execute(theRequest)?;
2363
2364        ::log::debug!("HTTP response: {:?}", &theResponse);
2365
2366        Ok(theResponse)
2367    }
2368
2369    /// Update a self-hosted runner group for an enterprise
2370    /// 
2371    /// Updates the `name` and `visibility` of a self-hosted runner group in an enterprise.
2372    /// 
2373    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2374    /// 
2375    /// [API method documentation](https://docs.github.com/rest/reference/actions#update-a-self-hosted-runner-group-for-an-enterprise)
2376    ///
2377    /// # Content
2378    ///
2379    /// - [`&v1_1_4::request::enterprise_admin_update_self_hosted_runner_group_for_enterprise::body::Json`](crate::v1_1_4::request::enterprise_admin_update_self_hosted_runner_group_for_enterprise::body::Json)
2380    pub fn enterprise_admin_update_self_hosted_runner_group_for_enterprise<Content>(
2381        &self,
2382        enterprise: &str,
2383        runner_group_id: i64,
2384        theContent: Content,
2385    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
2386    where
2387        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_update_self_hosted_runner_group_for_enterprise::Content<::reqwest::blocking::Body>>,
2388        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_update_self_hosted_runner_group_for_enterprise::Content<::reqwest::blocking::Body>>>::Error>
2389    {
2390        let mut theScheme = AuthScheme::from(&self.config.authentication);
2391
2392        while let Some(auth_step) = theScheme.step()? {
2393            match auth_step {
2394                ::authentic::AuthenticationStep::Request(auth_request) => {
2395                    theScheme.respond(self.client.execute(auth_request));
2396                }
2397                ::authentic::AuthenticationStep::WaitFor(duration) => {
2398                    (self.sleep)(duration);
2399                }
2400            }
2401        }
2402        let theBuilder = crate::v1_1_4::request::enterprise_admin_update_self_hosted_runner_group_for_enterprise::reqwest_blocking_builder(
2403            self.config.base_url.as_ref(),
2404            enterprise,
2405            runner_group_id,
2406            self.config.user_agent.as_ref(),
2407            self.config.accept.as_deref(),
2408        )?
2409        .with_authentication(&theScheme)?;
2410
2411        let theRequest = crate::v1_1_4::request::enterprise_admin_update_self_hosted_runner_group_for_enterprise::reqwest_blocking_request(
2412            theBuilder,
2413            theContent.try_into()?,
2414        )?;
2415
2416        ::log::debug!("HTTP request: {:?}", &theRequest);
2417
2418        let theResponse = self.client.execute(theRequest)?;
2419
2420        ::log::debug!("HTTP response: {:?}", &theResponse);
2421
2422        Ok(theResponse)
2423    }
2424
2425    /// List organization access to a self-hosted runner group in an enterprise
2426    /// 
2427    /// Lists the organizations with access to a self-hosted runner group.
2428    /// 
2429    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2430    /// 
2431    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-organization-access-to-a-self-hosted-runner-group-in-a-enterprise)
2432    pub fn enterprise_admin_list_org_access_to_self_hosted_runner_group_in_enterprise(
2433        &self,
2434        enterprise: &str,
2435        runner_group_id: i64,
2436        per_page: ::std::option::Option<i64>,
2437        page: ::std::option::Option<i64>,
2438    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2439        let mut theScheme = AuthScheme::from(&self.config.authentication);
2440
2441        while let Some(auth_step) = theScheme.step()? {
2442            match auth_step {
2443                ::authentic::AuthenticationStep::Request(auth_request) => {
2444                    theScheme.respond(self.client.execute(auth_request));
2445                }
2446                ::authentic::AuthenticationStep::WaitFor(duration) => {
2447                    (self.sleep)(duration);
2448                }
2449            }
2450        }
2451        let theBuilder = crate::v1_1_4::request::enterprise_admin_list_org_access_to_self_hosted_runner_group_in_enterprise::reqwest_blocking_builder(
2452            self.config.base_url.as_ref(),
2453            enterprise,
2454            runner_group_id,
2455            per_page,
2456            page,
2457            self.config.user_agent.as_ref(),
2458            self.config.accept.as_deref(),
2459        )?
2460        .with_authentication(&theScheme)?;
2461
2462        let theRequest =
2463            crate::v1_1_4::request::enterprise_admin_list_org_access_to_self_hosted_runner_group_in_enterprise::reqwest_blocking_request(theBuilder)?;
2464
2465        ::log::debug!("HTTP request: {:?}", &theRequest);
2466
2467        let theResponse = self.client.execute(theRequest)?;
2468
2469        ::log::debug!("HTTP response: {:?}", &theResponse);
2470
2471        Ok(theResponse)
2472    }
2473
2474    /// Set organization access for a self-hosted runner group in an enterprise
2475    /// 
2476    /// Replaces the list of organizations that have access to a self-hosted runner configured in an enterprise.
2477    /// 
2478    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2479    /// 
2480    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-organization-access-to-a-self-hosted-runner-group-in-an-enterprise)
2481    ///
2482    /// # Content
2483    ///
2484    /// - [`&v1_1_4::request::enterprise_admin_set_org_access_to_self_hosted_runner_group_in_enterprise::body::Json`](crate::v1_1_4::request::enterprise_admin_set_org_access_to_self_hosted_runner_group_in_enterprise::body::Json)
2485    pub fn enterprise_admin_set_org_access_to_self_hosted_runner_group_in_enterprise<Content>(
2486        &self,
2487        enterprise: &str,
2488        runner_group_id: i64,
2489        theContent: Content,
2490    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
2491    where
2492        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_set_org_access_to_self_hosted_runner_group_in_enterprise::Content<::reqwest::blocking::Body>>,
2493        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_set_org_access_to_self_hosted_runner_group_in_enterprise::Content<::reqwest::blocking::Body>>>::Error>
2494    {
2495        let mut theScheme = AuthScheme::from(&self.config.authentication);
2496
2497        while let Some(auth_step) = theScheme.step()? {
2498            match auth_step {
2499                ::authentic::AuthenticationStep::Request(auth_request) => {
2500                    theScheme.respond(self.client.execute(auth_request));
2501                }
2502                ::authentic::AuthenticationStep::WaitFor(duration) => {
2503                    (self.sleep)(duration);
2504                }
2505            }
2506        }
2507        let theBuilder = crate::v1_1_4::request::enterprise_admin_set_org_access_to_self_hosted_runner_group_in_enterprise::reqwest_blocking_builder(
2508            self.config.base_url.as_ref(),
2509            enterprise,
2510            runner_group_id,
2511            self.config.user_agent.as_ref(),
2512            self.config.accept.as_deref(),
2513        )?
2514        .with_authentication(&theScheme)?;
2515
2516        let theRequest = crate::v1_1_4::request::enterprise_admin_set_org_access_to_self_hosted_runner_group_in_enterprise::reqwest_blocking_request(
2517            theBuilder,
2518            theContent.try_into()?,
2519        )?;
2520
2521        ::log::debug!("HTTP request: {:?}", &theRequest);
2522
2523        let theResponse = self.client.execute(theRequest)?;
2524
2525        ::log::debug!("HTTP response: {:?}", &theResponse);
2526
2527        Ok(theResponse)
2528    }
2529
2530    /// Add organization access to a self-hosted runner group in an enterprise
2531    /// 
2532    /// Adds an organization to the list of selected organizations that can access a self-hosted runner group. The runner group must have `visibility` set to `selected`. For more information, see "[Create a self-hosted runner group for an enterprise](#create-a-self-hosted-runner-group-for-an-enterprise)."
2533    /// 
2534    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2535    /// 
2536    /// [API method documentation](https://docs.github.com/rest/reference/actions#add-organization-access-to-a-self-hosted-runner-group-in-an-enterprise)
2537    pub fn enterprise_admin_add_org_access_to_self_hosted_runner_group_in_enterprise(
2538        &self,
2539        enterprise: &str,
2540        runner_group_id: i64,
2541        org_id: i64,
2542    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2543        let mut theScheme = AuthScheme::from(&self.config.authentication);
2544
2545        while let Some(auth_step) = theScheme.step()? {
2546            match auth_step {
2547                ::authentic::AuthenticationStep::Request(auth_request) => {
2548                    theScheme.respond(self.client.execute(auth_request));
2549                }
2550                ::authentic::AuthenticationStep::WaitFor(duration) => {
2551                    (self.sleep)(duration);
2552                }
2553            }
2554        }
2555        let theBuilder = crate::v1_1_4::request::enterprise_admin_add_org_access_to_self_hosted_runner_group_in_enterprise::reqwest_blocking_builder(
2556            self.config.base_url.as_ref(),
2557            enterprise,
2558            runner_group_id,
2559            org_id,
2560            self.config.user_agent.as_ref(),
2561            self.config.accept.as_deref(),
2562        )?
2563        .with_authentication(&theScheme)?;
2564
2565        let theRequest =
2566            crate::v1_1_4::request::enterprise_admin_add_org_access_to_self_hosted_runner_group_in_enterprise::reqwest_blocking_request(theBuilder)?;
2567
2568        ::log::debug!("HTTP request: {:?}", &theRequest);
2569
2570        let theResponse = self.client.execute(theRequest)?;
2571
2572        ::log::debug!("HTTP response: {:?}", &theResponse);
2573
2574        Ok(theResponse)
2575    }
2576
2577    /// Remove organization access to a self-hosted runner group in an enterprise
2578    /// 
2579    /// Removes an organization from the list of selected organizations that can access a self-hosted runner group. The runner group must have `visibility` set to `selected`. For more information, see "[Create a self-hosted runner group for an enterprise](#create-a-self-hosted-runner-group-for-an-enterprise)."
2580    /// 
2581    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2582    /// 
2583    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-organization-access-to-a-self-hosted-runner-group-in-an-enterprise)
2584    pub fn enterprise_admin_remove_org_access_to_self_hosted_runner_group_in_enterprise(
2585        &self,
2586        enterprise: &str,
2587        runner_group_id: i64,
2588        org_id: i64,
2589    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2590        let mut theScheme = AuthScheme::from(&self.config.authentication);
2591
2592        while let Some(auth_step) = theScheme.step()? {
2593            match auth_step {
2594                ::authentic::AuthenticationStep::Request(auth_request) => {
2595                    theScheme.respond(self.client.execute(auth_request));
2596                }
2597                ::authentic::AuthenticationStep::WaitFor(duration) => {
2598                    (self.sleep)(duration);
2599                }
2600            }
2601        }
2602        let theBuilder = crate::v1_1_4::request::enterprise_admin_remove_org_access_to_self_hosted_runner_group_in_enterprise::reqwest_blocking_builder(
2603            self.config.base_url.as_ref(),
2604            enterprise,
2605            runner_group_id,
2606            org_id,
2607            self.config.user_agent.as_ref(),
2608            self.config.accept.as_deref(),
2609        )?
2610        .with_authentication(&theScheme)?;
2611
2612        let theRequest =
2613            crate::v1_1_4::request::enterprise_admin_remove_org_access_to_self_hosted_runner_group_in_enterprise::reqwest_blocking_request(theBuilder)?;
2614
2615        ::log::debug!("HTTP request: {:?}", &theRequest);
2616
2617        let theResponse = self.client.execute(theRequest)?;
2618
2619        ::log::debug!("HTTP response: {:?}", &theResponse);
2620
2621        Ok(theResponse)
2622    }
2623
2624    /// List self-hosted runners in a group for an enterprise
2625    /// 
2626    /// Lists the self-hosted runners that are in a specific enterprise group.
2627    /// 
2628    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2629    /// 
2630    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-self-hosted-runners-in-a-group-for-an-enterprise)
2631    pub fn enterprise_admin_list_self_hosted_runners_in_group_for_enterprise(
2632        &self,
2633        enterprise: &str,
2634        runner_group_id: i64,
2635        per_page: ::std::option::Option<i64>,
2636        page: ::std::option::Option<i64>,
2637    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2638        let mut theScheme = AuthScheme::from(&self.config.authentication);
2639
2640        while let Some(auth_step) = theScheme.step()? {
2641            match auth_step {
2642                ::authentic::AuthenticationStep::Request(auth_request) => {
2643                    theScheme.respond(self.client.execute(auth_request));
2644                }
2645                ::authentic::AuthenticationStep::WaitFor(duration) => {
2646                    (self.sleep)(duration);
2647                }
2648            }
2649        }
2650        let theBuilder = crate::v1_1_4::request::enterprise_admin_list_self_hosted_runners_in_group_for_enterprise::reqwest_blocking_builder(
2651            self.config.base_url.as_ref(),
2652            enterprise,
2653            runner_group_id,
2654            per_page,
2655            page,
2656            self.config.user_agent.as_ref(),
2657            self.config.accept.as_deref(),
2658        )?
2659        .with_authentication(&theScheme)?;
2660
2661        let theRequest =
2662            crate::v1_1_4::request::enterprise_admin_list_self_hosted_runners_in_group_for_enterprise::reqwest_blocking_request(theBuilder)?;
2663
2664        ::log::debug!("HTTP request: {:?}", &theRequest);
2665
2666        let theResponse = self.client.execute(theRequest)?;
2667
2668        ::log::debug!("HTTP response: {:?}", &theResponse);
2669
2670        Ok(theResponse)
2671    }
2672
2673    /// Set self-hosted runners in a group for an enterprise
2674    /// 
2675    /// Replaces the list of self-hosted runners that are part of an enterprise runner group.
2676    /// 
2677    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2678    /// 
2679    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-enterprise)
2680    ///
2681    /// # Content
2682    ///
2683    /// - [`&v1_1_4::request::enterprise_admin_set_self_hosted_runners_in_group_for_enterprise::body::Json`](crate::v1_1_4::request::enterprise_admin_set_self_hosted_runners_in_group_for_enterprise::body::Json)
2684    pub fn enterprise_admin_set_self_hosted_runners_in_group_for_enterprise<Content>(
2685        &self,
2686        enterprise: &str,
2687        runner_group_id: i64,
2688        theContent: Content,
2689    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
2690    where
2691        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_set_self_hosted_runners_in_group_for_enterprise::Content<::reqwest::blocking::Body>>,
2692        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_set_self_hosted_runners_in_group_for_enterprise::Content<::reqwest::blocking::Body>>>::Error>
2693    {
2694        let mut theScheme = AuthScheme::from(&self.config.authentication);
2695
2696        while let Some(auth_step) = theScheme.step()? {
2697            match auth_step {
2698                ::authentic::AuthenticationStep::Request(auth_request) => {
2699                    theScheme.respond(self.client.execute(auth_request));
2700                }
2701                ::authentic::AuthenticationStep::WaitFor(duration) => {
2702                    (self.sleep)(duration);
2703                }
2704            }
2705        }
2706        let theBuilder = crate::v1_1_4::request::enterprise_admin_set_self_hosted_runners_in_group_for_enterprise::reqwest_blocking_builder(
2707            self.config.base_url.as_ref(),
2708            enterprise,
2709            runner_group_id,
2710            self.config.user_agent.as_ref(),
2711            self.config.accept.as_deref(),
2712        )?
2713        .with_authentication(&theScheme)?;
2714
2715        let theRequest = crate::v1_1_4::request::enterprise_admin_set_self_hosted_runners_in_group_for_enterprise::reqwest_blocking_request(
2716            theBuilder,
2717            theContent.try_into()?,
2718        )?;
2719
2720        ::log::debug!("HTTP request: {:?}", &theRequest);
2721
2722        let theResponse = self.client.execute(theRequest)?;
2723
2724        ::log::debug!("HTTP response: {:?}", &theResponse);
2725
2726        Ok(theResponse)
2727    }
2728
2729    /// Add a self-hosted runner to a group for an enterprise
2730    /// 
2731    /// Adds a self-hosted runner to a runner group configured in an enterprise.
2732    /// 
2733    /// You must authenticate using an access token with the `manage_runners:enterprise`
2734    /// scope to use this endpoint.
2735    /// 
2736    /// [API method documentation](https://docs.github.com/rest/reference/actions#add-a-self-hosted-runner-to-a-group-for-an-enterprise)
2737    pub fn enterprise_admin_add_self_hosted_runner_to_group_for_enterprise(
2738        &self,
2739        enterprise: &str,
2740        runner_group_id: i64,
2741        runner_id: i64,
2742    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2743        let mut theScheme = AuthScheme::from(&self.config.authentication);
2744
2745        while let Some(auth_step) = theScheme.step()? {
2746            match auth_step {
2747                ::authentic::AuthenticationStep::Request(auth_request) => {
2748                    theScheme.respond(self.client.execute(auth_request));
2749                }
2750                ::authentic::AuthenticationStep::WaitFor(duration) => {
2751                    (self.sleep)(duration);
2752                }
2753            }
2754        }
2755        let theBuilder = crate::v1_1_4::request::enterprise_admin_add_self_hosted_runner_to_group_for_enterprise::reqwest_blocking_builder(
2756            self.config.base_url.as_ref(),
2757            enterprise,
2758            runner_group_id,
2759            runner_id,
2760            self.config.user_agent.as_ref(),
2761            self.config.accept.as_deref(),
2762        )?
2763        .with_authentication(&theScheme)?;
2764
2765        let theRequest =
2766            crate::v1_1_4::request::enterprise_admin_add_self_hosted_runner_to_group_for_enterprise::reqwest_blocking_request(theBuilder)?;
2767
2768        ::log::debug!("HTTP request: {:?}", &theRequest);
2769
2770        let theResponse = self.client.execute(theRequest)?;
2771
2772        ::log::debug!("HTTP response: {:?}", &theResponse);
2773
2774        Ok(theResponse)
2775    }
2776
2777    /// Remove a self-hosted runner from a group for an enterprise
2778    /// 
2779    /// Removes a self-hosted runner from a group configured in an enterprise. The runner is then returned to the default group.
2780    /// 
2781    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2782    /// 
2783    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-a-self-hosted-runner-from-a-group-for-an-enterprise)
2784    pub fn enterprise_admin_remove_self_hosted_runner_from_group_for_enterprise(
2785        &self,
2786        enterprise: &str,
2787        runner_group_id: i64,
2788        runner_id: i64,
2789    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2790        let mut theScheme = AuthScheme::from(&self.config.authentication);
2791
2792        while let Some(auth_step) = theScheme.step()? {
2793            match auth_step {
2794                ::authentic::AuthenticationStep::Request(auth_request) => {
2795                    theScheme.respond(self.client.execute(auth_request));
2796                }
2797                ::authentic::AuthenticationStep::WaitFor(duration) => {
2798                    (self.sleep)(duration);
2799                }
2800            }
2801        }
2802        let theBuilder = crate::v1_1_4::request::enterprise_admin_remove_self_hosted_runner_from_group_for_enterprise::reqwest_blocking_builder(
2803            self.config.base_url.as_ref(),
2804            enterprise,
2805            runner_group_id,
2806            runner_id,
2807            self.config.user_agent.as_ref(),
2808            self.config.accept.as_deref(),
2809        )?
2810        .with_authentication(&theScheme)?;
2811
2812        let theRequest =
2813            crate::v1_1_4::request::enterprise_admin_remove_self_hosted_runner_from_group_for_enterprise::reqwest_blocking_request(theBuilder)?;
2814
2815        ::log::debug!("HTTP request: {:?}", &theRequest);
2816
2817        let theResponse = self.client.execute(theRequest)?;
2818
2819        ::log::debug!("HTTP response: {:?}", &theResponse);
2820
2821        Ok(theResponse)
2822    }
2823
2824    /// List self-hosted runners for an enterprise
2825    /// 
2826    /// Lists all self-hosted runners configured for an enterprise.
2827    /// 
2828    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2829    /// 
2830    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-self-hosted-runners-for-an-enterprise)
2831    pub fn enterprise_admin_list_self_hosted_runners_for_enterprise(
2832        &self,
2833        enterprise: &str,
2834        per_page: ::std::option::Option<i64>,
2835        page: ::std::option::Option<i64>,
2836    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2837        let mut theScheme = AuthScheme::from(&self.config.authentication);
2838
2839        while let Some(auth_step) = theScheme.step()? {
2840            match auth_step {
2841                ::authentic::AuthenticationStep::Request(auth_request) => {
2842                    theScheme.respond(self.client.execute(auth_request));
2843                }
2844                ::authentic::AuthenticationStep::WaitFor(duration) => {
2845                    (self.sleep)(duration);
2846                }
2847            }
2848        }
2849        let theBuilder = crate::v1_1_4::request::enterprise_admin_list_self_hosted_runners_for_enterprise::reqwest_blocking_builder(
2850            self.config.base_url.as_ref(),
2851            enterprise,
2852            per_page,
2853            page,
2854            self.config.user_agent.as_ref(),
2855            self.config.accept.as_deref(),
2856        )?
2857        .with_authentication(&theScheme)?;
2858
2859        let theRequest =
2860            crate::v1_1_4::request::enterprise_admin_list_self_hosted_runners_for_enterprise::reqwest_blocking_request(theBuilder)?;
2861
2862        ::log::debug!("HTTP request: {:?}", &theRequest);
2863
2864        let theResponse = self.client.execute(theRequest)?;
2865
2866        ::log::debug!("HTTP response: {:?}", &theResponse);
2867
2868        Ok(theResponse)
2869    }
2870
2871    /// List runner applications for an enterprise
2872    /// 
2873    /// Lists binaries for the runner application that you can download and run.
2874    /// 
2875    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2876    /// 
2877    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-runner-applications-for-an-enterprise)
2878    pub fn enterprise_admin_list_runner_applications_for_enterprise(
2879        &self,
2880        enterprise: &str,
2881    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2882        let mut theScheme = AuthScheme::from(&self.config.authentication);
2883
2884        while let Some(auth_step) = theScheme.step()? {
2885            match auth_step {
2886                ::authentic::AuthenticationStep::Request(auth_request) => {
2887                    theScheme.respond(self.client.execute(auth_request));
2888                }
2889                ::authentic::AuthenticationStep::WaitFor(duration) => {
2890                    (self.sleep)(duration);
2891                }
2892            }
2893        }
2894        let theBuilder = crate::v1_1_4::request::enterprise_admin_list_runner_applications_for_enterprise::reqwest_blocking_builder(
2895            self.config.base_url.as_ref(),
2896            enterprise,
2897            self.config.user_agent.as_ref(),
2898            self.config.accept.as_deref(),
2899        )?
2900        .with_authentication(&theScheme)?;
2901
2902        let theRequest =
2903            crate::v1_1_4::request::enterprise_admin_list_runner_applications_for_enterprise::reqwest_blocking_request(theBuilder)?;
2904
2905        ::log::debug!("HTTP request: {:?}", &theRequest);
2906
2907        let theResponse = self.client.execute(theRequest)?;
2908
2909        ::log::debug!("HTTP response: {:?}", &theResponse);
2910
2911        Ok(theResponse)
2912    }
2913
2914    /// Create a registration token for an enterprise
2915    /// 
2916    /// Returns a token that you can pass to the `config` script. The token expires after one hour.
2917    /// 
2918    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2919    /// 
2920    /// #### Example using registration token
2921    /// 
2922    /// Configure your self-hosted runner, replacing `TOKEN` with the registration token provided by this endpoint.
2923    /// 
2924    /// ```text
2925    /// ./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN
2926    /// ```
2927    /// 
2928    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-a-registration-token-for-an-enterprise)
2929    pub fn enterprise_admin_create_registration_token_for_enterprise(
2930        &self,
2931        enterprise: &str,
2932    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2933        let mut theScheme = AuthScheme::from(&self.config.authentication);
2934
2935        while let Some(auth_step) = theScheme.step()? {
2936            match auth_step {
2937                ::authentic::AuthenticationStep::Request(auth_request) => {
2938                    theScheme.respond(self.client.execute(auth_request));
2939                }
2940                ::authentic::AuthenticationStep::WaitFor(duration) => {
2941                    (self.sleep)(duration);
2942                }
2943            }
2944        }
2945        let theBuilder = crate::v1_1_4::request::enterprise_admin_create_registration_token_for_enterprise::reqwest_blocking_builder(
2946            self.config.base_url.as_ref(),
2947            enterprise,
2948            self.config.user_agent.as_ref(),
2949            self.config.accept.as_deref(),
2950        )?
2951        .with_authentication(&theScheme)?;
2952
2953        let theRequest =
2954            crate::v1_1_4::request::enterprise_admin_create_registration_token_for_enterprise::reqwest_blocking_request(theBuilder)?;
2955
2956        ::log::debug!("HTTP request: {:?}", &theRequest);
2957
2958        let theResponse = self.client.execute(theRequest)?;
2959
2960        ::log::debug!("HTTP response: {:?}", &theResponse);
2961
2962        Ok(theResponse)
2963    }
2964
2965    /// Create a remove token for an enterprise
2966    /// 
2967    /// Returns a token that you can pass to the `config` script to remove a self-hosted runner from an enterprise. The token expires after one hour.
2968    /// 
2969    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
2970    /// 
2971    /// #### Example using remove token
2972    /// 
2973    /// To remove your self-hosted runner from an enterprise, replace `TOKEN` with the remove token provided by this
2974    /// endpoint.
2975    /// 
2976    /// ```text
2977    /// ./config.sh remove --token TOKEN
2978    /// ```
2979    /// 
2980    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-a-remove-token-for-an-enterprise)
2981    pub fn enterprise_admin_create_remove_token_for_enterprise(
2982        &self,
2983        enterprise: &str,
2984    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
2985        let mut theScheme = AuthScheme::from(&self.config.authentication);
2986
2987        while let Some(auth_step) = theScheme.step()? {
2988            match auth_step {
2989                ::authentic::AuthenticationStep::Request(auth_request) => {
2990                    theScheme.respond(self.client.execute(auth_request));
2991                }
2992                ::authentic::AuthenticationStep::WaitFor(duration) => {
2993                    (self.sleep)(duration);
2994                }
2995            }
2996        }
2997        let theBuilder = crate::v1_1_4::request::enterprise_admin_create_remove_token_for_enterprise::reqwest_blocking_builder(
2998            self.config.base_url.as_ref(),
2999            enterprise,
3000            self.config.user_agent.as_ref(),
3001            self.config.accept.as_deref(),
3002        )?
3003        .with_authentication(&theScheme)?;
3004
3005        let theRequest =
3006            crate::v1_1_4::request::enterprise_admin_create_remove_token_for_enterprise::reqwest_blocking_request(theBuilder)?;
3007
3008        ::log::debug!("HTTP request: {:?}", &theRequest);
3009
3010        let theResponse = self.client.execute(theRequest)?;
3011
3012        ::log::debug!("HTTP response: {:?}", &theResponse);
3013
3014        Ok(theResponse)
3015    }
3016
3017    /// Get a self-hosted runner for an enterprise
3018    /// 
3019    /// Gets a specific self-hosted runner configured in an enterprise.
3020    /// 
3021    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
3022    /// 
3023    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-self-hosted-runner-for-an-enterprise)
3024    pub fn enterprise_admin_get_self_hosted_runner_for_enterprise(
3025        &self,
3026        enterprise: &str,
3027        runner_id: i64,
3028    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3029        let mut theScheme = AuthScheme::from(&self.config.authentication);
3030
3031        while let Some(auth_step) = theScheme.step()? {
3032            match auth_step {
3033                ::authentic::AuthenticationStep::Request(auth_request) => {
3034                    theScheme.respond(self.client.execute(auth_request));
3035                }
3036                ::authentic::AuthenticationStep::WaitFor(duration) => {
3037                    (self.sleep)(duration);
3038                }
3039            }
3040        }
3041        let theBuilder = crate::v1_1_4::request::enterprise_admin_get_self_hosted_runner_for_enterprise::reqwest_blocking_builder(
3042            self.config.base_url.as_ref(),
3043            enterprise,
3044            runner_id,
3045            self.config.user_agent.as_ref(),
3046            self.config.accept.as_deref(),
3047        )?
3048        .with_authentication(&theScheme)?;
3049
3050        let theRequest =
3051            crate::v1_1_4::request::enterprise_admin_get_self_hosted_runner_for_enterprise::reqwest_blocking_request(theBuilder)?;
3052
3053        ::log::debug!("HTTP request: {:?}", &theRequest);
3054
3055        let theResponse = self.client.execute(theRequest)?;
3056
3057        ::log::debug!("HTTP response: {:?}", &theResponse);
3058
3059        Ok(theResponse)
3060    }
3061
3062    /// Delete a self-hosted runner from an enterprise
3063    /// 
3064    /// Forces the removal of a self-hosted runner from an enterprise. You can use this endpoint to completely remove the runner when the machine you were using no longer exists.
3065    /// 
3066    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
3067    /// 
3068    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-self-hosted-runner-from-an-enterprise)
3069    pub fn enterprise_admin_delete_self_hosted_runner_from_enterprise(
3070        &self,
3071        enterprise: &str,
3072        runner_id: i64,
3073    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3074        let mut theScheme = AuthScheme::from(&self.config.authentication);
3075
3076        while let Some(auth_step) = theScheme.step()? {
3077            match auth_step {
3078                ::authentic::AuthenticationStep::Request(auth_request) => {
3079                    theScheme.respond(self.client.execute(auth_request));
3080                }
3081                ::authentic::AuthenticationStep::WaitFor(duration) => {
3082                    (self.sleep)(duration);
3083                }
3084            }
3085        }
3086        let theBuilder = crate::v1_1_4::request::enterprise_admin_delete_self_hosted_runner_from_enterprise::reqwest_blocking_builder(
3087            self.config.base_url.as_ref(),
3088            enterprise,
3089            runner_id,
3090            self.config.user_agent.as_ref(),
3091            self.config.accept.as_deref(),
3092        )?
3093        .with_authentication(&theScheme)?;
3094
3095        let theRequest =
3096            crate::v1_1_4::request::enterprise_admin_delete_self_hosted_runner_from_enterprise::reqwest_blocking_request(theBuilder)?;
3097
3098        ::log::debug!("HTTP request: {:?}", &theRequest);
3099
3100        let theResponse = self.client.execute(theRequest)?;
3101
3102        ::log::debug!("HTTP response: {:?}", &theResponse);
3103
3104        Ok(theResponse)
3105    }
3106
3107    /// List labels for a self-hosted runner for an enterprise
3108    /// 
3109    /// Lists all labels for a self-hosted runner configured in an enterprise.
3110    /// 
3111    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
3112    /// 
3113    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-labels-for-a-self-hosted-runner-for-an-enterprise)
3114    pub fn enterprise_admin_list_labels_for_self_hosted_runner_for_enterprise(
3115        &self,
3116        enterprise: &str,
3117        runner_id: i64,
3118    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3119        let mut theScheme = AuthScheme::from(&self.config.authentication);
3120
3121        while let Some(auth_step) = theScheme.step()? {
3122            match auth_step {
3123                ::authentic::AuthenticationStep::Request(auth_request) => {
3124                    theScheme.respond(self.client.execute(auth_request));
3125                }
3126                ::authentic::AuthenticationStep::WaitFor(duration) => {
3127                    (self.sleep)(duration);
3128                }
3129            }
3130        }
3131        let theBuilder = crate::v1_1_4::request::enterprise_admin_list_labels_for_self_hosted_runner_for_enterprise::reqwest_blocking_builder(
3132            self.config.base_url.as_ref(),
3133            enterprise,
3134            runner_id,
3135            self.config.user_agent.as_ref(),
3136            self.config.accept.as_deref(),
3137        )?
3138        .with_authentication(&theScheme)?;
3139
3140        let theRequest =
3141            crate::v1_1_4::request::enterprise_admin_list_labels_for_self_hosted_runner_for_enterprise::reqwest_blocking_request(theBuilder)?;
3142
3143        ::log::debug!("HTTP request: {:?}", &theRequest);
3144
3145        let theResponse = self.client.execute(theRequest)?;
3146
3147        ::log::debug!("HTTP response: {:?}", &theResponse);
3148
3149        Ok(theResponse)
3150    }
3151
3152    /// Set custom labels for a self-hosted runner for an enterprise
3153    /// 
3154    /// Remove all previous custom labels and set the new custom labels for a specific
3155    /// self-hosted runner configured in an enterprise.
3156    /// 
3157    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
3158    /// 
3159    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-custom-labels-for-a-self-hosted-runner-for-an-enterprise)
3160    ///
3161    /// # Content
3162    ///
3163    /// - [`&v1_1_4::request::enterprise_admin_set_custom_labels_for_self_hosted_runner_for_enterprise::body::Json`](crate::v1_1_4::request::enterprise_admin_set_custom_labels_for_self_hosted_runner_for_enterprise::body::Json)
3164    pub fn enterprise_admin_set_custom_labels_for_self_hosted_runner_for_enterprise<Content>(
3165        &self,
3166        enterprise: &str,
3167        runner_id: i64,
3168        theContent: Content,
3169    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
3170    where
3171        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_set_custom_labels_for_self_hosted_runner_for_enterprise::Content<::reqwest::blocking::Body>>,
3172        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_set_custom_labels_for_self_hosted_runner_for_enterprise::Content<::reqwest::blocking::Body>>>::Error>
3173    {
3174        let mut theScheme = AuthScheme::from(&self.config.authentication);
3175
3176        while let Some(auth_step) = theScheme.step()? {
3177            match auth_step {
3178                ::authentic::AuthenticationStep::Request(auth_request) => {
3179                    theScheme.respond(self.client.execute(auth_request));
3180                }
3181                ::authentic::AuthenticationStep::WaitFor(duration) => {
3182                    (self.sleep)(duration);
3183                }
3184            }
3185        }
3186        let theBuilder = crate::v1_1_4::request::enterprise_admin_set_custom_labels_for_self_hosted_runner_for_enterprise::reqwest_blocking_builder(
3187            self.config.base_url.as_ref(),
3188            enterprise,
3189            runner_id,
3190            self.config.user_agent.as_ref(),
3191            self.config.accept.as_deref(),
3192        )?
3193        .with_authentication(&theScheme)?;
3194
3195        let theRequest = crate::v1_1_4::request::enterprise_admin_set_custom_labels_for_self_hosted_runner_for_enterprise::reqwest_blocking_request(
3196            theBuilder,
3197            theContent.try_into()?,
3198        )?;
3199
3200        ::log::debug!("HTTP request: {:?}", &theRequest);
3201
3202        let theResponse = self.client.execute(theRequest)?;
3203
3204        ::log::debug!("HTTP response: {:?}", &theResponse);
3205
3206        Ok(theResponse)
3207    }
3208
3209    /// Add custom labels to a self-hosted runner for an enterprise
3210    /// 
3211    /// Add custom labels to a self-hosted runner configured in an enterprise.
3212    /// 
3213    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
3214    /// 
3215    /// [API method documentation](https://docs.github.com/rest/reference/actions#add-custom-labels-to-a-self-hosted-runner-for-an-enterprise)
3216    ///
3217    /// # Content
3218    ///
3219    /// - [`&v1_1_4::request::enterprise_admin_add_custom_labels_to_self_hosted_runner_for_enterprise::body::Json`](crate::v1_1_4::request::enterprise_admin_add_custom_labels_to_self_hosted_runner_for_enterprise::body::Json)
3220    pub fn enterprise_admin_add_custom_labels_to_self_hosted_runner_for_enterprise<Content>(
3221        &self,
3222        enterprise: &str,
3223        runner_id: i64,
3224        theContent: Content,
3225    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
3226    where
3227        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_add_custom_labels_to_self_hosted_runner_for_enterprise::Content<::reqwest::blocking::Body>>,
3228        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_add_custom_labels_to_self_hosted_runner_for_enterprise::Content<::reqwest::blocking::Body>>>::Error>
3229    {
3230        let mut theScheme = AuthScheme::from(&self.config.authentication);
3231
3232        while let Some(auth_step) = theScheme.step()? {
3233            match auth_step {
3234                ::authentic::AuthenticationStep::Request(auth_request) => {
3235                    theScheme.respond(self.client.execute(auth_request));
3236                }
3237                ::authentic::AuthenticationStep::WaitFor(duration) => {
3238                    (self.sleep)(duration);
3239                }
3240            }
3241        }
3242        let theBuilder = crate::v1_1_4::request::enterprise_admin_add_custom_labels_to_self_hosted_runner_for_enterprise::reqwest_blocking_builder(
3243            self.config.base_url.as_ref(),
3244            enterprise,
3245            runner_id,
3246            self.config.user_agent.as_ref(),
3247            self.config.accept.as_deref(),
3248        )?
3249        .with_authentication(&theScheme)?;
3250
3251        let theRequest = crate::v1_1_4::request::enterprise_admin_add_custom_labels_to_self_hosted_runner_for_enterprise::reqwest_blocking_request(
3252            theBuilder,
3253            theContent.try_into()?,
3254        )?;
3255
3256        ::log::debug!("HTTP request: {:?}", &theRequest);
3257
3258        let theResponse = self.client.execute(theRequest)?;
3259
3260        ::log::debug!("HTTP response: {:?}", &theResponse);
3261
3262        Ok(theResponse)
3263    }
3264
3265    /// Remove all custom labels from a self-hosted runner for an enterprise
3266    /// 
3267    /// Remove all custom labels from a self-hosted runner configured in an
3268    /// enterprise. Returns the remaining read-only labels from the runner.
3269    /// 
3270    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
3271    /// 
3272    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-all-custom-labels-from-a-self-hosted-runner-for-an-enterprise)
3273    pub fn enterprise_admin_remove_all_custom_labels_from_self_hosted_runner_for_enterprise(
3274        &self,
3275        enterprise: &str,
3276        runner_id: i64,
3277    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3278        let mut theScheme = AuthScheme::from(&self.config.authentication);
3279
3280        while let Some(auth_step) = theScheme.step()? {
3281            match auth_step {
3282                ::authentic::AuthenticationStep::Request(auth_request) => {
3283                    theScheme.respond(self.client.execute(auth_request));
3284                }
3285                ::authentic::AuthenticationStep::WaitFor(duration) => {
3286                    (self.sleep)(duration);
3287                }
3288            }
3289        }
3290        let theBuilder = crate::v1_1_4::request::enterprise_admin_remove_all_custom_labels_from_self_hosted_runner_for_enterprise::reqwest_blocking_builder(
3291            self.config.base_url.as_ref(),
3292            enterprise,
3293            runner_id,
3294            self.config.user_agent.as_ref(),
3295            self.config.accept.as_deref(),
3296        )?
3297        .with_authentication(&theScheme)?;
3298
3299        let theRequest =
3300            crate::v1_1_4::request::enterprise_admin_remove_all_custom_labels_from_self_hosted_runner_for_enterprise::reqwest_blocking_request(theBuilder)?;
3301
3302        ::log::debug!("HTTP request: {:?}", &theRequest);
3303
3304        let theResponse = self.client.execute(theRequest)?;
3305
3306        ::log::debug!("HTTP response: {:?}", &theResponse);
3307
3308        Ok(theResponse)
3309    }
3310
3311    /// Remove a custom label from a self-hosted runner for an enterprise
3312    /// 
3313    /// Remove a custom label from a self-hosted runner configured
3314    /// in an enterprise. Returns the remaining labels from the runner.
3315    /// 
3316    /// This endpoint returns a `404 Not Found` status if the custom label is not
3317    /// present on the runner.
3318    /// 
3319    /// You must authenticate using an access token with the `manage_runners:enterprise` scope to use this endpoint.
3320    /// 
3321    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-a-custom-label-from-a-self-hosted-runner-for-an-enterprise)
3322    pub fn enterprise_admin_remove_custom_label_from_self_hosted_runner_for_enterprise(
3323        &self,
3324        enterprise: &str,
3325        runner_id: i64,
3326        name: &str,
3327    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3328        let mut theScheme = AuthScheme::from(&self.config.authentication);
3329
3330        while let Some(auth_step) = theScheme.step()? {
3331            match auth_step {
3332                ::authentic::AuthenticationStep::Request(auth_request) => {
3333                    theScheme.respond(self.client.execute(auth_request));
3334                }
3335                ::authentic::AuthenticationStep::WaitFor(duration) => {
3336                    (self.sleep)(duration);
3337                }
3338            }
3339        }
3340        let theBuilder = crate::v1_1_4::request::enterprise_admin_remove_custom_label_from_self_hosted_runner_for_enterprise::reqwest_blocking_builder(
3341            self.config.base_url.as_ref(),
3342            enterprise,
3343            runner_id,
3344            name,
3345            self.config.user_agent.as_ref(),
3346            self.config.accept.as_deref(),
3347        )?
3348        .with_authentication(&theScheme)?;
3349
3350        let theRequest =
3351            crate::v1_1_4::request::enterprise_admin_remove_custom_label_from_self_hosted_runner_for_enterprise::reqwest_blocking_request(theBuilder)?;
3352
3353        ::log::debug!("HTTP request: {:?}", &theRequest);
3354
3355        let theResponse = self.client.execute(theRequest)?;
3356
3357        ::log::debug!("HTTP response: {:?}", &theResponse);
3358
3359        Ok(theResponse)
3360    }
3361
3362    /// Get the audit log for an enterprise
3363    /// 
3364    /// Gets the audit log for an enterprise. To use this endpoint, you must be an enterprise admin, and you must use an access token with the `admin:enterprise` scope.
3365    /// 
3366    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#get-the-audit-log-for-an-enterprise)
3367    #[allow(clippy::too_many_arguments)]
3368    pub fn enterprise_admin_get_audit_log(
3369        &self,
3370        enterprise: &str,
3371        phrase: ::std::option::Option<&str>,
3372        include: ::std::option::Option<&str>,
3373        after: ::std::option::Option<&str>,
3374        before: ::std::option::Option<&str>,
3375        order: ::std::option::Option<&str>,
3376        page: ::std::option::Option<i64>,
3377        per_page: ::std::option::Option<i64>,
3378    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3379        let mut theScheme = AuthScheme::from(&self.config.authentication);
3380
3381        while let Some(auth_step) = theScheme.step()? {
3382            match auth_step {
3383                ::authentic::AuthenticationStep::Request(auth_request) => {
3384                    theScheme.respond(self.client.execute(auth_request));
3385                }
3386                ::authentic::AuthenticationStep::WaitFor(duration) => {
3387                    (self.sleep)(duration);
3388                }
3389            }
3390        }
3391        let theBuilder = crate::v1_1_4::request::enterprise_admin_get_audit_log::reqwest_blocking_builder(
3392            self.config.base_url.as_ref(),
3393            enterprise,
3394            phrase,
3395            include,
3396            after,
3397            before,
3398            order,
3399            page,
3400            per_page,
3401            self.config.user_agent.as_ref(),
3402            self.config.accept.as_deref(),
3403        )?
3404        .with_authentication(&theScheme)?;
3405
3406        let theRequest =
3407            crate::v1_1_4::request::enterprise_admin_get_audit_log::reqwest_blocking_request(theBuilder)?;
3408
3409        ::log::debug!("HTTP request: {:?}", &theRequest);
3410
3411        let theResponse = self.client.execute(theRequest)?;
3412
3413        ::log::debug!("HTTP response: {:?}", &theResponse);
3414
3415        Ok(theResponse)
3416    }
3417
3418    /// List secret scanning alerts for an enterprise
3419    /// 
3420    /// Lists secret scanning alerts for eligible repositories in an enterprise, from newest to oldest.
3421    /// To use this endpoint, you must be a member of the enterprise, and you must use an access token with the `repo` scope or `security_events` scope. Alerts are only returned for organizations in the enterprise for which you are an organization owner or a [security manager](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).
3422    /// 
3423    /// [API method documentation](https://docs.github.com/rest/reference/secret-scanning#list-secret-scanning-alerts-for-an-enterprise)
3424    #[allow(clippy::too_many_arguments)]
3425    pub fn secret_scanning_list_alerts_for_enterprise(
3426        &self,
3427        enterprise: &str,
3428        state: ::std::option::Option<&str>,
3429        secret_type: ::std::option::Option<&str>,
3430        resolution: ::std::option::Option<&str>,
3431        per_page: ::std::option::Option<i64>,
3432        before: ::std::option::Option<&str>,
3433        after: ::std::option::Option<&str>,
3434    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3435        let mut theScheme = AuthScheme::from(&self.config.authentication);
3436
3437        while let Some(auth_step) = theScheme.step()? {
3438            match auth_step {
3439                ::authentic::AuthenticationStep::Request(auth_request) => {
3440                    theScheme.respond(self.client.execute(auth_request));
3441                }
3442                ::authentic::AuthenticationStep::WaitFor(duration) => {
3443                    (self.sleep)(duration);
3444                }
3445            }
3446        }
3447        let theBuilder = crate::v1_1_4::request::secret_scanning_list_alerts_for_enterprise::reqwest_blocking_builder(
3448            self.config.base_url.as_ref(),
3449            enterprise,
3450            state,
3451            secret_type,
3452            resolution,
3453            per_page,
3454            before,
3455            after,
3456            self.config.user_agent.as_ref(),
3457            self.config.accept.as_deref(),
3458        )?
3459        .with_authentication(&theScheme)?;
3460
3461        let theRequest =
3462            crate::v1_1_4::request::secret_scanning_list_alerts_for_enterprise::reqwest_blocking_request(theBuilder)?;
3463
3464        ::log::debug!("HTTP request: {:?}", &theRequest);
3465
3466        let theResponse = self.client.execute(theRequest)?;
3467
3468        ::log::debug!("HTTP response: {:?}", &theResponse);
3469
3470        Ok(theResponse)
3471    }
3472
3473    /// Get GitHub Actions billing for an enterprise
3474    /// 
3475    /// Gets the summary of the free and paid GitHub Actions minutes used.
3476    /// 
3477    /// Paid minutes only apply to workflows in private repositories that use GitHub-hosted runners. Minutes used is listed for each GitHub-hosted runner operating system. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)".
3478    /// 
3479    /// The authenticated user must be an enterprise admin.
3480    /// 
3481    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-github-actions-billing-for-an-enterprise)
3482    pub fn billing_get_github_actions_billing_ghe(
3483        &self,
3484        enterprise: &str,
3485    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3486        let mut theScheme = AuthScheme::from(&self.config.authentication);
3487
3488        while let Some(auth_step) = theScheme.step()? {
3489            match auth_step {
3490                ::authentic::AuthenticationStep::Request(auth_request) => {
3491                    theScheme.respond(self.client.execute(auth_request));
3492                }
3493                ::authentic::AuthenticationStep::WaitFor(duration) => {
3494                    (self.sleep)(duration);
3495                }
3496            }
3497        }
3498        let theBuilder = crate::v1_1_4::request::billing_get_github_actions_billing_ghe::reqwest_blocking_builder(
3499            self.config.base_url.as_ref(),
3500            enterprise,
3501            self.config.user_agent.as_ref(),
3502            self.config.accept.as_deref(),
3503        )?
3504        .with_authentication(&theScheme)?;
3505
3506        let theRequest =
3507            crate::v1_1_4::request::billing_get_github_actions_billing_ghe::reqwest_blocking_request(theBuilder)?;
3508
3509        ::log::debug!("HTTP request: {:?}", &theRequest);
3510
3511        let theResponse = self.client.execute(theRequest)?;
3512
3513        ::log::debug!("HTTP response: {:?}", &theResponse);
3514
3515        Ok(theResponse)
3516    }
3517
3518    /// Get GitHub Advanced Security active committers for an enterprise
3519    /// 
3520    /// Gets the GitHub Advanced Security active committers for an enterprise per repository.
3521    /// Each distinct user login across all repositories is counted as a single Advanced Security seat, so the total_advanced_security_committers is not the sum of active_users for each repository.
3522    /// 
3523    /// [API method documentation](https://docs.github.com/rest/reference/billing#export-advanced-security-active-committers-data-for-enterprise)
3524    pub fn billing_get_github_advanced_security_billing_ghe(
3525        &self,
3526        enterprise: &str,
3527        per_page: ::std::option::Option<i64>,
3528        page: ::std::option::Option<i64>,
3529    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3530        let mut theScheme = AuthScheme::from(&self.config.authentication);
3531
3532        while let Some(auth_step) = theScheme.step()? {
3533            match auth_step {
3534                ::authentic::AuthenticationStep::Request(auth_request) => {
3535                    theScheme.respond(self.client.execute(auth_request));
3536                }
3537                ::authentic::AuthenticationStep::WaitFor(duration) => {
3538                    (self.sleep)(duration);
3539                }
3540            }
3541        }
3542        let theBuilder = crate::v1_1_4::request::billing_get_github_advanced_security_billing_ghe::reqwest_blocking_builder(
3543            self.config.base_url.as_ref(),
3544            enterprise,
3545            per_page,
3546            page,
3547            self.config.user_agent.as_ref(),
3548            self.config.accept.as_deref(),
3549        )?
3550        .with_authentication(&theScheme)?;
3551
3552        let theRequest =
3553            crate::v1_1_4::request::billing_get_github_advanced_security_billing_ghe::reqwest_blocking_request(theBuilder)?;
3554
3555        ::log::debug!("HTTP request: {:?}", &theRequest);
3556
3557        let theResponse = self.client.execute(theRequest)?;
3558
3559        ::log::debug!("HTTP response: {:?}", &theResponse);
3560
3561        Ok(theResponse)
3562    }
3563
3564    /// Get GitHub Packages billing for an enterprise
3565    /// 
3566    /// Gets the free and paid storage used for GitHub Packages in gigabytes.
3567    /// 
3568    /// Paid minutes only apply to packages stored for private repositories. For more information, see "[Managing billing for GitHub Packages](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages)."
3569    /// 
3570    /// The authenticated user must be an enterprise admin.
3571    /// 
3572    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-github-packages-billing-for-an-enterprise)
3573    pub fn billing_get_github_packages_billing_ghe(
3574        &self,
3575        enterprise: &str,
3576    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3577        let mut theScheme = AuthScheme::from(&self.config.authentication);
3578
3579        while let Some(auth_step) = theScheme.step()? {
3580            match auth_step {
3581                ::authentic::AuthenticationStep::Request(auth_request) => {
3582                    theScheme.respond(self.client.execute(auth_request));
3583                }
3584                ::authentic::AuthenticationStep::WaitFor(duration) => {
3585                    (self.sleep)(duration);
3586                }
3587            }
3588        }
3589        let theBuilder = crate::v1_1_4::request::billing_get_github_packages_billing_ghe::reqwest_blocking_builder(
3590            self.config.base_url.as_ref(),
3591            enterprise,
3592            self.config.user_agent.as_ref(),
3593            self.config.accept.as_deref(),
3594        )?
3595        .with_authentication(&theScheme)?;
3596
3597        let theRequest =
3598            crate::v1_1_4::request::billing_get_github_packages_billing_ghe::reqwest_blocking_request(theBuilder)?;
3599
3600        ::log::debug!("HTTP request: {:?}", &theRequest);
3601
3602        let theResponse = self.client.execute(theRequest)?;
3603
3604        ::log::debug!("HTTP response: {:?}", &theResponse);
3605
3606        Ok(theResponse)
3607    }
3608
3609    /// Get shared storage billing for an enterprise
3610    /// 
3611    /// Gets the estimated paid and estimated total storage used for GitHub Actions and GitHub Packages.
3612    /// 
3613    /// Paid minutes only apply to packages stored for private repositories. For more information, see "[Managing billing for GitHub Packages](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages)."
3614    /// 
3615    /// The authenticated user must be an enterprise admin.
3616    /// 
3617    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-shared-storage-billing-for-an-enterprise)
3618    pub fn billing_get_shared_storage_billing_ghe(
3619        &self,
3620        enterprise: &str,
3621    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3622        let mut theScheme = AuthScheme::from(&self.config.authentication);
3623
3624        while let Some(auth_step) = theScheme.step()? {
3625            match auth_step {
3626                ::authentic::AuthenticationStep::Request(auth_request) => {
3627                    theScheme.respond(self.client.execute(auth_request));
3628                }
3629                ::authentic::AuthenticationStep::WaitFor(duration) => {
3630                    (self.sleep)(duration);
3631                }
3632            }
3633        }
3634        let theBuilder = crate::v1_1_4::request::billing_get_shared_storage_billing_ghe::reqwest_blocking_builder(
3635            self.config.base_url.as_ref(),
3636            enterprise,
3637            self.config.user_agent.as_ref(),
3638            self.config.accept.as_deref(),
3639        )?
3640        .with_authentication(&theScheme)?;
3641
3642        let theRequest =
3643            crate::v1_1_4::request::billing_get_shared_storage_billing_ghe::reqwest_blocking_request(theBuilder)?;
3644
3645        ::log::debug!("HTTP request: {:?}", &theRequest);
3646
3647        let theResponse = self.client.execute(theRequest)?;
3648
3649        ::log::debug!("HTTP response: {:?}", &theResponse);
3650
3651        Ok(theResponse)
3652    }
3653
3654    /// List public events
3655    /// 
3656    /// We delay the public events feed by five minutes, which means the most recent event returned by the public events API actually occurred at least five minutes ago.
3657    /// 
3658    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-public-events)
3659    pub fn activity_list_public_events(
3660        &self,
3661        per_page: ::std::option::Option<i64>,
3662        page: ::std::option::Option<i64>,
3663    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3664        let mut theScheme = AuthScheme::from(&self.config.authentication);
3665
3666        while let Some(auth_step) = theScheme.step()? {
3667            match auth_step {
3668                ::authentic::AuthenticationStep::Request(auth_request) => {
3669                    theScheme.respond(self.client.execute(auth_request));
3670                }
3671                ::authentic::AuthenticationStep::WaitFor(duration) => {
3672                    (self.sleep)(duration);
3673                }
3674            }
3675        }
3676        let theBuilder = crate::v1_1_4::request::activity_list_public_events::reqwest_blocking_builder(
3677            self.config.base_url.as_ref(),
3678            per_page,
3679            page,
3680            self.config.user_agent.as_ref(),
3681            self.config.accept.as_deref(),
3682        )?
3683        .with_authentication(&theScheme)?;
3684
3685        let theRequest =
3686            crate::v1_1_4::request::activity_list_public_events::reqwest_blocking_request(theBuilder)?;
3687
3688        ::log::debug!("HTTP request: {:?}", &theRequest);
3689
3690        let theResponse = self.client.execute(theRequest)?;
3691
3692        ::log::debug!("HTTP response: {:?}", &theResponse);
3693
3694        Ok(theResponse)
3695    }
3696
3697    /// Get feeds
3698    /// 
3699    /// GitHub provides several timeline resources in [Atom](http://en.wikipedia.org/wiki/Atom_(standard)) format. The Feeds API lists all the feeds available to the authenticated user:
3700    /// 
3701    /// *   **Timeline**: The GitHub global public timeline
3702    /// *   **User**: The public timeline for any user, using [URI template](https://docs.github.com/rest/overview/resources-in-the-rest-api#hypermedia)
3703    /// *   **Current user public**: The public timeline for the authenticated user
3704    /// *   **Current user**: The private timeline for the authenticated user
3705    /// *   **Current user actor**: The private timeline for activity created by the authenticated user
3706    /// *   **Current user organizations**: The private timeline for the organizations the authenticated user is a member of.
3707    /// *   **Security advisories**: A collection of public announcements that provide information about security-related vulnerabilities in software on GitHub.
3708    /// 
3709    /// **Note**: Private feeds are only returned when [authenticating via Basic Auth](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) since current feed URIs use the older, non revocable auth tokens.
3710    /// 
3711    /// [API method documentation](https://docs.github.com/rest/reference/activity#get-feeds)
3712    pub fn activity_get_feeds(
3713        &self,
3714    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3715        let mut theScheme = AuthScheme::from(&self.config.authentication);
3716
3717        while let Some(auth_step) = theScheme.step()? {
3718            match auth_step {
3719                ::authentic::AuthenticationStep::Request(auth_request) => {
3720                    theScheme.respond(self.client.execute(auth_request));
3721                }
3722                ::authentic::AuthenticationStep::WaitFor(duration) => {
3723                    (self.sleep)(duration);
3724                }
3725            }
3726        }
3727        let theBuilder = crate::v1_1_4::request::activity_get_feeds::reqwest_blocking_builder(
3728            self.config.base_url.as_ref(),
3729            self.config.user_agent.as_ref(),
3730            self.config.accept.as_deref(),
3731        )?
3732        .with_authentication(&theScheme)?;
3733
3734        let theRequest =
3735            crate::v1_1_4::request::activity_get_feeds::reqwest_blocking_request(theBuilder)?;
3736
3737        ::log::debug!("HTTP request: {:?}", &theRequest);
3738
3739        let theResponse = self.client.execute(theRequest)?;
3740
3741        ::log::debug!("HTTP response: {:?}", &theResponse);
3742
3743        Ok(theResponse)
3744    }
3745
3746    /// List gists for the authenticated user
3747    /// 
3748    /// Lists the authenticated user's gists or if called anonymously, this endpoint returns all public gists:
3749    /// 
3750    /// [API method documentation](https://docs.github.com/rest/reference/gists#list-gists-for-the-authenticated-user)
3751    pub fn gists_list(
3752        &self,
3753        since: ::std::option::Option<&str>,
3754        per_page: ::std::option::Option<i64>,
3755        page: ::std::option::Option<i64>,
3756    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3757        let mut theScheme = AuthScheme::from(&self.config.authentication);
3758
3759        while let Some(auth_step) = theScheme.step()? {
3760            match auth_step {
3761                ::authentic::AuthenticationStep::Request(auth_request) => {
3762                    theScheme.respond(self.client.execute(auth_request));
3763                }
3764                ::authentic::AuthenticationStep::WaitFor(duration) => {
3765                    (self.sleep)(duration);
3766                }
3767            }
3768        }
3769        let theBuilder = crate::v1_1_4::request::gists_list::reqwest_blocking_builder(
3770            self.config.base_url.as_ref(),
3771            since,
3772            per_page,
3773            page,
3774            self.config.user_agent.as_ref(),
3775            self.config.accept.as_deref(),
3776        )?
3777        .with_authentication(&theScheme)?;
3778
3779        let theRequest =
3780            crate::v1_1_4::request::gists_list::reqwest_blocking_request(theBuilder)?;
3781
3782        ::log::debug!("HTTP request: {:?}", &theRequest);
3783
3784        let theResponse = self.client.execute(theRequest)?;
3785
3786        ::log::debug!("HTTP response: {:?}", &theResponse);
3787
3788        Ok(theResponse)
3789    }
3790
3791    /// Create a gist
3792    /// 
3793    /// Allows you to add a new gist with one or more files.
3794    /// 
3795    /// **Note:** Don't name your files "gistfile" with a numerical suffix. This is the format of the automatic naming scheme that Gist uses internally.
3796    /// 
3797    /// [API method documentation](https://docs.github.com/rest/reference/gists#create-a-gist)
3798    ///
3799    /// # Content
3800    ///
3801    /// - [`&v1_1_4::request::gists_create::body::Json`](crate::v1_1_4::request::gists_create::body::Json)
3802    pub fn gists_create<Content>(
3803        &self,
3804        theContent: Content,
3805    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
3806    where
3807        Content: Copy + TryInto<crate::v1_1_4::request::gists_create::Content<::reqwest::blocking::Body>>,
3808        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::gists_create::Content<::reqwest::blocking::Body>>>::Error>
3809    {
3810        let mut theScheme = AuthScheme::from(&self.config.authentication);
3811
3812        while let Some(auth_step) = theScheme.step()? {
3813            match auth_step {
3814                ::authentic::AuthenticationStep::Request(auth_request) => {
3815                    theScheme.respond(self.client.execute(auth_request));
3816                }
3817                ::authentic::AuthenticationStep::WaitFor(duration) => {
3818                    (self.sleep)(duration);
3819                }
3820            }
3821        }
3822        let theBuilder = crate::v1_1_4::request::gists_create::reqwest_blocking_builder(
3823            self.config.base_url.as_ref(),
3824            self.config.user_agent.as_ref(),
3825            self.config.accept.as_deref(),
3826        )?
3827        .with_authentication(&theScheme)?;
3828
3829        let theRequest = crate::v1_1_4::request::gists_create::reqwest_blocking_request(
3830            theBuilder,
3831            theContent.try_into()?,
3832        )?;
3833
3834        ::log::debug!("HTTP request: {:?}", &theRequest);
3835
3836        let theResponse = self.client.execute(theRequest)?;
3837
3838        ::log::debug!("HTTP response: {:?}", &theResponse);
3839
3840        Ok(theResponse)
3841    }
3842
3843    /// List public gists
3844    /// 
3845    /// List public gists sorted by most recently updated to least recently updated.
3846    /// 
3847    /// Note: With [pagination](https://docs.github.com/rest/overview/resources-in-the-rest-api#pagination), you can fetch up to 3000 gists. For example, you can fetch 100 pages with 30 gists per page or 30 pages with 100 gists per page.
3848    /// 
3849    /// [API method documentation](https://docs.github.com/rest/reference/gists#list-public-gists)
3850    pub fn gists_list_public(
3851        &self,
3852        since: ::std::option::Option<&str>,
3853        per_page: ::std::option::Option<i64>,
3854        page: ::std::option::Option<i64>,
3855    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3856        let mut theScheme = AuthScheme::from(&self.config.authentication);
3857
3858        while let Some(auth_step) = theScheme.step()? {
3859            match auth_step {
3860                ::authentic::AuthenticationStep::Request(auth_request) => {
3861                    theScheme.respond(self.client.execute(auth_request));
3862                }
3863                ::authentic::AuthenticationStep::WaitFor(duration) => {
3864                    (self.sleep)(duration);
3865                }
3866            }
3867        }
3868        let theBuilder = crate::v1_1_4::request::gists_list_public::reqwest_blocking_builder(
3869            self.config.base_url.as_ref(),
3870            since,
3871            per_page,
3872            page,
3873            self.config.user_agent.as_ref(),
3874            self.config.accept.as_deref(),
3875        )?
3876        .with_authentication(&theScheme)?;
3877
3878        let theRequest =
3879            crate::v1_1_4::request::gists_list_public::reqwest_blocking_request(theBuilder)?;
3880
3881        ::log::debug!("HTTP request: {:?}", &theRequest);
3882
3883        let theResponse = self.client.execute(theRequest)?;
3884
3885        ::log::debug!("HTTP response: {:?}", &theResponse);
3886
3887        Ok(theResponse)
3888    }
3889
3890    /// List starred gists
3891    /// 
3892    /// List the authenticated user's starred gists:
3893    /// 
3894    /// [API method documentation](https://docs.github.com/rest/reference/gists#list-starred-gists)
3895    pub fn gists_list_starred(
3896        &self,
3897        since: ::std::option::Option<&str>,
3898        per_page: ::std::option::Option<i64>,
3899        page: ::std::option::Option<i64>,
3900    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3901        let mut theScheme = AuthScheme::from(&self.config.authentication);
3902
3903        while let Some(auth_step) = theScheme.step()? {
3904            match auth_step {
3905                ::authentic::AuthenticationStep::Request(auth_request) => {
3906                    theScheme.respond(self.client.execute(auth_request));
3907                }
3908                ::authentic::AuthenticationStep::WaitFor(duration) => {
3909                    (self.sleep)(duration);
3910                }
3911            }
3912        }
3913        let theBuilder = crate::v1_1_4::request::gists_list_starred::reqwest_blocking_builder(
3914            self.config.base_url.as_ref(),
3915            since,
3916            per_page,
3917            page,
3918            self.config.user_agent.as_ref(),
3919            self.config.accept.as_deref(),
3920        )?
3921        .with_authentication(&theScheme)?;
3922
3923        let theRequest =
3924            crate::v1_1_4::request::gists_list_starred::reqwest_blocking_request(theBuilder)?;
3925
3926        ::log::debug!("HTTP request: {:?}", &theRequest);
3927
3928        let theResponse = self.client.execute(theRequest)?;
3929
3930        ::log::debug!("HTTP response: {:?}", &theResponse);
3931
3932        Ok(theResponse)
3933    }
3934
3935    /// Get a gist
3936    /// 
3937    /// [API method documentation](https://docs.github.com/rest/reference/gists#get-a-gist)
3938    pub fn gists_get(
3939        &self,
3940        gist_id: &str,
3941    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3942        let mut theScheme = AuthScheme::from(&self.config.authentication);
3943
3944        while let Some(auth_step) = theScheme.step()? {
3945            match auth_step {
3946                ::authentic::AuthenticationStep::Request(auth_request) => {
3947                    theScheme.respond(self.client.execute(auth_request));
3948                }
3949                ::authentic::AuthenticationStep::WaitFor(duration) => {
3950                    (self.sleep)(duration);
3951                }
3952            }
3953        }
3954        let theBuilder = crate::v1_1_4::request::gists_get::reqwest_blocking_builder(
3955            self.config.base_url.as_ref(),
3956            gist_id,
3957            self.config.user_agent.as_ref(),
3958            self.config.accept.as_deref(),
3959        )?
3960        .with_authentication(&theScheme)?;
3961
3962        let theRequest =
3963            crate::v1_1_4::request::gists_get::reqwest_blocking_request(theBuilder)?;
3964
3965        ::log::debug!("HTTP request: {:?}", &theRequest);
3966
3967        let theResponse = self.client.execute(theRequest)?;
3968
3969        ::log::debug!("HTTP response: {:?}", &theResponse);
3970
3971        Ok(theResponse)
3972    }
3973
3974    /// Delete a gist
3975    /// 
3976    /// [API method documentation](https://docs.github.com/rest/reference/gists#delete-a-gist)
3977    pub fn gists_delete(
3978        &self,
3979        gist_id: &str,
3980    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
3981        let mut theScheme = AuthScheme::from(&self.config.authentication);
3982
3983        while let Some(auth_step) = theScheme.step()? {
3984            match auth_step {
3985                ::authentic::AuthenticationStep::Request(auth_request) => {
3986                    theScheme.respond(self.client.execute(auth_request));
3987                }
3988                ::authentic::AuthenticationStep::WaitFor(duration) => {
3989                    (self.sleep)(duration);
3990                }
3991            }
3992        }
3993        let theBuilder = crate::v1_1_4::request::gists_delete::reqwest_blocking_builder(
3994            self.config.base_url.as_ref(),
3995            gist_id,
3996            self.config.user_agent.as_ref(),
3997            self.config.accept.as_deref(),
3998        )?
3999        .with_authentication(&theScheme)?;
4000
4001        let theRequest =
4002            crate::v1_1_4::request::gists_delete::reqwest_blocking_request(theBuilder)?;
4003
4004        ::log::debug!("HTTP request: {:?}", &theRequest);
4005
4006        let theResponse = self.client.execute(theRequest)?;
4007
4008        ::log::debug!("HTTP response: {:?}", &theResponse);
4009
4010        Ok(theResponse)
4011    }
4012
4013    /// Update a gist
4014    /// 
4015    /// Allows you to update or delete a gist file and rename gist files. Files from the previous version of the gist that aren't explicitly changed during an edit are unchanged.
4016    /// 
4017    /// [API method documentation](https://docs.github.com/rest/reference/gists/#update-a-gist)
4018    ///
4019    /// # Content
4020    ///
4021    /// - [`&::std::option::Option<crate::v1_1_4::request::gists_update::body::Json>`](crate::v1_1_4::request::gists_update::body::Json)
4022    pub fn gists_update<Content>(
4023        &self,
4024        gist_id: &str,
4025        theContent: Content,
4026    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
4027    where
4028        Content: Copy + TryInto<crate::v1_1_4::request::gists_update::Content<::reqwest::blocking::Body>>,
4029        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::gists_update::Content<::reqwest::blocking::Body>>>::Error>
4030    {
4031        let mut theScheme = AuthScheme::from(&self.config.authentication);
4032
4033        while let Some(auth_step) = theScheme.step()? {
4034            match auth_step {
4035                ::authentic::AuthenticationStep::Request(auth_request) => {
4036                    theScheme.respond(self.client.execute(auth_request));
4037                }
4038                ::authentic::AuthenticationStep::WaitFor(duration) => {
4039                    (self.sleep)(duration);
4040                }
4041            }
4042        }
4043        let theBuilder = crate::v1_1_4::request::gists_update::reqwest_blocking_builder(
4044            self.config.base_url.as_ref(),
4045            gist_id,
4046            self.config.user_agent.as_ref(),
4047            self.config.accept.as_deref(),
4048        )?
4049        .with_authentication(&theScheme)?;
4050
4051        let theRequest = crate::v1_1_4::request::gists_update::reqwest_blocking_request(
4052            theBuilder,
4053            theContent.try_into()?,
4054        )?;
4055
4056        ::log::debug!("HTTP request: {:?}", &theRequest);
4057
4058        let theResponse = self.client.execute(theRequest)?;
4059
4060        ::log::debug!("HTTP response: {:?}", &theResponse);
4061
4062        Ok(theResponse)
4063    }
4064
4065    /// List gist comments
4066    /// 
4067    /// [API method documentation](https://docs.github.com/rest/reference/gists#list-gist-comments)
4068    pub fn gists_list_comments(
4069        &self,
4070        gist_id: &str,
4071        per_page: ::std::option::Option<i64>,
4072        page: ::std::option::Option<i64>,
4073    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4074        let mut theScheme = AuthScheme::from(&self.config.authentication);
4075
4076        while let Some(auth_step) = theScheme.step()? {
4077            match auth_step {
4078                ::authentic::AuthenticationStep::Request(auth_request) => {
4079                    theScheme.respond(self.client.execute(auth_request));
4080                }
4081                ::authentic::AuthenticationStep::WaitFor(duration) => {
4082                    (self.sleep)(duration);
4083                }
4084            }
4085        }
4086        let theBuilder = crate::v1_1_4::request::gists_list_comments::reqwest_blocking_builder(
4087            self.config.base_url.as_ref(),
4088            gist_id,
4089            per_page,
4090            page,
4091            self.config.user_agent.as_ref(),
4092            self.config.accept.as_deref(),
4093        )?
4094        .with_authentication(&theScheme)?;
4095
4096        let theRequest =
4097            crate::v1_1_4::request::gists_list_comments::reqwest_blocking_request(theBuilder)?;
4098
4099        ::log::debug!("HTTP request: {:?}", &theRequest);
4100
4101        let theResponse = self.client.execute(theRequest)?;
4102
4103        ::log::debug!("HTTP response: {:?}", &theResponse);
4104
4105        Ok(theResponse)
4106    }
4107
4108    /// Create a gist comment
4109    /// 
4110    /// [API method documentation](https://docs.github.com/rest/reference/gists#create-a-gist-comment)
4111    ///
4112    /// # Content
4113    ///
4114    /// - [`&v1_1_4::request::gists_create_comment::body::Json`](crate::v1_1_4::request::gists_create_comment::body::Json)
4115    pub fn gists_create_comment<Content>(
4116        &self,
4117        gist_id: &str,
4118        theContent: Content,
4119    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
4120    where
4121        Content: Copy + TryInto<crate::v1_1_4::request::gists_create_comment::Content<::reqwest::blocking::Body>>,
4122        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::gists_create_comment::Content<::reqwest::blocking::Body>>>::Error>
4123    {
4124        let mut theScheme = AuthScheme::from(&self.config.authentication);
4125
4126        while let Some(auth_step) = theScheme.step()? {
4127            match auth_step {
4128                ::authentic::AuthenticationStep::Request(auth_request) => {
4129                    theScheme.respond(self.client.execute(auth_request));
4130                }
4131                ::authentic::AuthenticationStep::WaitFor(duration) => {
4132                    (self.sleep)(duration);
4133                }
4134            }
4135        }
4136        let theBuilder = crate::v1_1_4::request::gists_create_comment::reqwest_blocking_builder(
4137            self.config.base_url.as_ref(),
4138            gist_id,
4139            self.config.user_agent.as_ref(),
4140            self.config.accept.as_deref(),
4141        )?
4142        .with_authentication(&theScheme)?;
4143
4144        let theRequest = crate::v1_1_4::request::gists_create_comment::reqwest_blocking_request(
4145            theBuilder,
4146            theContent.try_into()?,
4147        )?;
4148
4149        ::log::debug!("HTTP request: {:?}", &theRequest);
4150
4151        let theResponse = self.client.execute(theRequest)?;
4152
4153        ::log::debug!("HTTP response: {:?}", &theResponse);
4154
4155        Ok(theResponse)
4156    }
4157
4158    /// Get a gist comment
4159    /// 
4160    /// [API method documentation](https://docs.github.com/rest/reference/gists#get-a-gist-comment)
4161    pub fn gists_get_comment(
4162        &self,
4163        gist_id: &str,
4164        comment_id: i64,
4165    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4166        let mut theScheme = AuthScheme::from(&self.config.authentication);
4167
4168        while let Some(auth_step) = theScheme.step()? {
4169            match auth_step {
4170                ::authentic::AuthenticationStep::Request(auth_request) => {
4171                    theScheme.respond(self.client.execute(auth_request));
4172                }
4173                ::authentic::AuthenticationStep::WaitFor(duration) => {
4174                    (self.sleep)(duration);
4175                }
4176            }
4177        }
4178        let theBuilder = crate::v1_1_4::request::gists_get_comment::reqwest_blocking_builder(
4179            self.config.base_url.as_ref(),
4180            gist_id,
4181            comment_id,
4182            self.config.user_agent.as_ref(),
4183            self.config.accept.as_deref(),
4184        )?
4185        .with_authentication(&theScheme)?;
4186
4187        let theRequest =
4188            crate::v1_1_4::request::gists_get_comment::reqwest_blocking_request(theBuilder)?;
4189
4190        ::log::debug!("HTTP request: {:?}", &theRequest);
4191
4192        let theResponse = self.client.execute(theRequest)?;
4193
4194        ::log::debug!("HTTP response: {:?}", &theResponse);
4195
4196        Ok(theResponse)
4197    }
4198
4199    /// Delete a gist comment
4200    /// 
4201    /// [API method documentation](https://docs.github.com/rest/reference/gists#delete-a-gist-comment)
4202    pub fn gists_delete_comment(
4203        &self,
4204        gist_id: &str,
4205        comment_id: i64,
4206    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4207        let mut theScheme = AuthScheme::from(&self.config.authentication);
4208
4209        while let Some(auth_step) = theScheme.step()? {
4210            match auth_step {
4211                ::authentic::AuthenticationStep::Request(auth_request) => {
4212                    theScheme.respond(self.client.execute(auth_request));
4213                }
4214                ::authentic::AuthenticationStep::WaitFor(duration) => {
4215                    (self.sleep)(duration);
4216                }
4217            }
4218        }
4219        let theBuilder = crate::v1_1_4::request::gists_delete_comment::reqwest_blocking_builder(
4220            self.config.base_url.as_ref(),
4221            gist_id,
4222            comment_id,
4223            self.config.user_agent.as_ref(),
4224            self.config.accept.as_deref(),
4225        )?
4226        .with_authentication(&theScheme)?;
4227
4228        let theRequest =
4229            crate::v1_1_4::request::gists_delete_comment::reqwest_blocking_request(theBuilder)?;
4230
4231        ::log::debug!("HTTP request: {:?}", &theRequest);
4232
4233        let theResponse = self.client.execute(theRequest)?;
4234
4235        ::log::debug!("HTTP response: {:?}", &theResponse);
4236
4237        Ok(theResponse)
4238    }
4239
4240    /// Update a gist comment
4241    /// 
4242    /// [API method documentation](https://docs.github.com/rest/reference/gists#update-a-gist-comment)
4243    ///
4244    /// # Content
4245    ///
4246    /// - [`&v1_1_4::request::gists_update_comment::body::Json`](crate::v1_1_4::request::gists_update_comment::body::Json)
4247    pub fn gists_update_comment<Content>(
4248        &self,
4249        gist_id: &str,
4250        comment_id: i64,
4251        theContent: Content,
4252    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
4253    where
4254        Content: Copy + TryInto<crate::v1_1_4::request::gists_update_comment::Content<::reqwest::blocking::Body>>,
4255        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::gists_update_comment::Content<::reqwest::blocking::Body>>>::Error>
4256    {
4257        let mut theScheme = AuthScheme::from(&self.config.authentication);
4258
4259        while let Some(auth_step) = theScheme.step()? {
4260            match auth_step {
4261                ::authentic::AuthenticationStep::Request(auth_request) => {
4262                    theScheme.respond(self.client.execute(auth_request));
4263                }
4264                ::authentic::AuthenticationStep::WaitFor(duration) => {
4265                    (self.sleep)(duration);
4266                }
4267            }
4268        }
4269        let theBuilder = crate::v1_1_4::request::gists_update_comment::reqwest_blocking_builder(
4270            self.config.base_url.as_ref(),
4271            gist_id,
4272            comment_id,
4273            self.config.user_agent.as_ref(),
4274            self.config.accept.as_deref(),
4275        )?
4276        .with_authentication(&theScheme)?;
4277
4278        let theRequest = crate::v1_1_4::request::gists_update_comment::reqwest_blocking_request(
4279            theBuilder,
4280            theContent.try_into()?,
4281        )?;
4282
4283        ::log::debug!("HTTP request: {:?}", &theRequest);
4284
4285        let theResponse = self.client.execute(theRequest)?;
4286
4287        ::log::debug!("HTTP response: {:?}", &theResponse);
4288
4289        Ok(theResponse)
4290    }
4291
4292    /// List gist commits
4293    /// 
4294    /// [API method documentation](https://docs.github.com/rest/reference/gists#list-gist-commits)
4295    pub fn gists_list_commits(
4296        &self,
4297        gist_id: &str,
4298        per_page: ::std::option::Option<i64>,
4299        page: ::std::option::Option<i64>,
4300    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4301        let mut theScheme = AuthScheme::from(&self.config.authentication);
4302
4303        while let Some(auth_step) = theScheme.step()? {
4304            match auth_step {
4305                ::authentic::AuthenticationStep::Request(auth_request) => {
4306                    theScheme.respond(self.client.execute(auth_request));
4307                }
4308                ::authentic::AuthenticationStep::WaitFor(duration) => {
4309                    (self.sleep)(duration);
4310                }
4311            }
4312        }
4313        let theBuilder = crate::v1_1_4::request::gists_list_commits::reqwest_blocking_builder(
4314            self.config.base_url.as_ref(),
4315            gist_id,
4316            per_page,
4317            page,
4318            self.config.user_agent.as_ref(),
4319            self.config.accept.as_deref(),
4320        )?
4321        .with_authentication(&theScheme)?;
4322
4323        let theRequest =
4324            crate::v1_1_4::request::gists_list_commits::reqwest_blocking_request(theBuilder)?;
4325
4326        ::log::debug!("HTTP request: {:?}", &theRequest);
4327
4328        let theResponse = self.client.execute(theRequest)?;
4329
4330        ::log::debug!("HTTP response: {:?}", &theResponse);
4331
4332        Ok(theResponse)
4333    }
4334
4335    /// List gist forks
4336    /// 
4337    /// [API method documentation](https://docs.github.com/rest/reference/gists#list-gist-forks)
4338    pub fn gists_list_forks(
4339        &self,
4340        gist_id: &str,
4341        per_page: ::std::option::Option<i64>,
4342        page: ::std::option::Option<i64>,
4343    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4344        let mut theScheme = AuthScheme::from(&self.config.authentication);
4345
4346        while let Some(auth_step) = theScheme.step()? {
4347            match auth_step {
4348                ::authentic::AuthenticationStep::Request(auth_request) => {
4349                    theScheme.respond(self.client.execute(auth_request));
4350                }
4351                ::authentic::AuthenticationStep::WaitFor(duration) => {
4352                    (self.sleep)(duration);
4353                }
4354            }
4355        }
4356        let theBuilder = crate::v1_1_4::request::gists_list_forks::reqwest_blocking_builder(
4357            self.config.base_url.as_ref(),
4358            gist_id,
4359            per_page,
4360            page,
4361            self.config.user_agent.as_ref(),
4362            self.config.accept.as_deref(),
4363        )?
4364        .with_authentication(&theScheme)?;
4365
4366        let theRequest =
4367            crate::v1_1_4::request::gists_list_forks::reqwest_blocking_request(theBuilder)?;
4368
4369        ::log::debug!("HTTP request: {:?}", &theRequest);
4370
4371        let theResponse = self.client.execute(theRequest)?;
4372
4373        ::log::debug!("HTTP response: {:?}", &theResponse);
4374
4375        Ok(theResponse)
4376    }
4377
4378    /// Fork a gist
4379    /// 
4380    /// **Note**: This was previously `/gists/:gist_id/fork`.
4381    /// 
4382    /// [API method documentation](https://docs.github.com/rest/reference/gists#fork-a-gist)
4383    pub fn gists_fork(
4384        &self,
4385        gist_id: &str,
4386    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4387        let mut theScheme = AuthScheme::from(&self.config.authentication);
4388
4389        while let Some(auth_step) = theScheme.step()? {
4390            match auth_step {
4391                ::authentic::AuthenticationStep::Request(auth_request) => {
4392                    theScheme.respond(self.client.execute(auth_request));
4393                }
4394                ::authentic::AuthenticationStep::WaitFor(duration) => {
4395                    (self.sleep)(duration);
4396                }
4397            }
4398        }
4399        let theBuilder = crate::v1_1_4::request::gists_fork::reqwest_blocking_builder(
4400            self.config.base_url.as_ref(),
4401            gist_id,
4402            self.config.user_agent.as_ref(),
4403            self.config.accept.as_deref(),
4404        )?
4405        .with_authentication(&theScheme)?;
4406
4407        let theRequest =
4408            crate::v1_1_4::request::gists_fork::reqwest_blocking_request(theBuilder)?;
4409
4410        ::log::debug!("HTTP request: {:?}", &theRequest);
4411
4412        let theResponse = self.client.execute(theRequest)?;
4413
4414        ::log::debug!("HTTP response: {:?}", &theResponse);
4415
4416        Ok(theResponse)
4417    }
4418
4419    /// Check if a gist is starred
4420    /// 
4421    /// [API method documentation](https://docs.github.com/rest/reference/gists#check-if-a-gist-is-starred)
4422    pub fn gists_check_is_starred(
4423        &self,
4424        gist_id: &str,
4425    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4426        let mut theScheme = AuthScheme::from(&self.config.authentication);
4427
4428        while let Some(auth_step) = theScheme.step()? {
4429            match auth_step {
4430                ::authentic::AuthenticationStep::Request(auth_request) => {
4431                    theScheme.respond(self.client.execute(auth_request));
4432                }
4433                ::authentic::AuthenticationStep::WaitFor(duration) => {
4434                    (self.sleep)(duration);
4435                }
4436            }
4437        }
4438        let theBuilder = crate::v1_1_4::request::gists_check_is_starred::reqwest_blocking_builder(
4439            self.config.base_url.as_ref(),
4440            gist_id,
4441            self.config.user_agent.as_ref(),
4442            self.config.accept.as_deref(),
4443        )?
4444        .with_authentication(&theScheme)?;
4445
4446        let theRequest =
4447            crate::v1_1_4::request::gists_check_is_starred::reqwest_blocking_request(theBuilder)?;
4448
4449        ::log::debug!("HTTP request: {:?}", &theRequest);
4450
4451        let theResponse = self.client.execute(theRequest)?;
4452
4453        ::log::debug!("HTTP response: {:?}", &theResponse);
4454
4455        Ok(theResponse)
4456    }
4457
4458    /// Star a gist
4459    /// 
4460    /// Note that you'll need to set `Content-Length` to zero when calling out to this endpoint. For more information, see "[HTTP verbs](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-verbs)."
4461    /// 
4462    /// [API method documentation](https://docs.github.com/rest/reference/gists#star-a-gist)
4463    pub fn gists_star(
4464        &self,
4465        gist_id: &str,
4466    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4467        let mut theScheme = AuthScheme::from(&self.config.authentication);
4468
4469        while let Some(auth_step) = theScheme.step()? {
4470            match auth_step {
4471                ::authentic::AuthenticationStep::Request(auth_request) => {
4472                    theScheme.respond(self.client.execute(auth_request));
4473                }
4474                ::authentic::AuthenticationStep::WaitFor(duration) => {
4475                    (self.sleep)(duration);
4476                }
4477            }
4478        }
4479        let theBuilder = crate::v1_1_4::request::gists_star::reqwest_blocking_builder(
4480            self.config.base_url.as_ref(),
4481            gist_id,
4482            self.config.user_agent.as_ref(),
4483            self.config.accept.as_deref(),
4484        )?
4485        .with_authentication(&theScheme)?;
4486
4487        let theRequest =
4488            crate::v1_1_4::request::gists_star::reqwest_blocking_request(theBuilder)?;
4489
4490        ::log::debug!("HTTP request: {:?}", &theRequest);
4491
4492        let theResponse = self.client.execute(theRequest)?;
4493
4494        ::log::debug!("HTTP response: {:?}", &theResponse);
4495
4496        Ok(theResponse)
4497    }
4498
4499    /// Unstar a gist
4500    /// 
4501    /// [API method documentation](https://docs.github.com/rest/reference/gists#unstar-a-gist)
4502    pub fn gists_unstar(
4503        &self,
4504        gist_id: &str,
4505    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4506        let mut theScheme = AuthScheme::from(&self.config.authentication);
4507
4508        while let Some(auth_step) = theScheme.step()? {
4509            match auth_step {
4510                ::authentic::AuthenticationStep::Request(auth_request) => {
4511                    theScheme.respond(self.client.execute(auth_request));
4512                }
4513                ::authentic::AuthenticationStep::WaitFor(duration) => {
4514                    (self.sleep)(duration);
4515                }
4516            }
4517        }
4518        let theBuilder = crate::v1_1_4::request::gists_unstar::reqwest_blocking_builder(
4519            self.config.base_url.as_ref(),
4520            gist_id,
4521            self.config.user_agent.as_ref(),
4522            self.config.accept.as_deref(),
4523        )?
4524        .with_authentication(&theScheme)?;
4525
4526        let theRequest =
4527            crate::v1_1_4::request::gists_unstar::reqwest_blocking_request(theBuilder)?;
4528
4529        ::log::debug!("HTTP request: {:?}", &theRequest);
4530
4531        let theResponse = self.client.execute(theRequest)?;
4532
4533        ::log::debug!("HTTP response: {:?}", &theResponse);
4534
4535        Ok(theResponse)
4536    }
4537
4538    /// Get a gist revision
4539    /// 
4540    /// [API method documentation](https://docs.github.com/rest/reference/gists#get-a-gist-revision)
4541    pub fn gists_get_revision(
4542        &self,
4543        gist_id: &str,
4544        sha: &str,
4545    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4546        let mut theScheme = AuthScheme::from(&self.config.authentication);
4547
4548        while let Some(auth_step) = theScheme.step()? {
4549            match auth_step {
4550                ::authentic::AuthenticationStep::Request(auth_request) => {
4551                    theScheme.respond(self.client.execute(auth_request));
4552                }
4553                ::authentic::AuthenticationStep::WaitFor(duration) => {
4554                    (self.sleep)(duration);
4555                }
4556            }
4557        }
4558        let theBuilder = crate::v1_1_4::request::gists_get_revision::reqwest_blocking_builder(
4559            self.config.base_url.as_ref(),
4560            gist_id,
4561            sha,
4562            self.config.user_agent.as_ref(),
4563            self.config.accept.as_deref(),
4564        )?
4565        .with_authentication(&theScheme)?;
4566
4567        let theRequest =
4568            crate::v1_1_4::request::gists_get_revision::reqwest_blocking_request(theBuilder)?;
4569
4570        ::log::debug!("HTTP request: {:?}", &theRequest);
4571
4572        let theResponse = self.client.execute(theRequest)?;
4573
4574        ::log::debug!("HTTP response: {:?}", &theResponse);
4575
4576        Ok(theResponse)
4577    }
4578
4579    /// Get all gitignore templates
4580    /// 
4581    /// List all templates available to pass as an option when [creating a repository](https://docs.github.com/rest/reference/repos#create-a-repository-for-the-authenticated-user).
4582    /// 
4583    /// [API method documentation](https://docs.github.com/rest/reference/gitignore#get-all-gitignore-templates)
4584    pub fn gitignore_get_all_templates(
4585        &self,
4586    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4587        let mut theScheme = AuthScheme::from(&self.config.authentication);
4588
4589        while let Some(auth_step) = theScheme.step()? {
4590            match auth_step {
4591                ::authentic::AuthenticationStep::Request(auth_request) => {
4592                    theScheme.respond(self.client.execute(auth_request));
4593                }
4594                ::authentic::AuthenticationStep::WaitFor(duration) => {
4595                    (self.sleep)(duration);
4596                }
4597            }
4598        }
4599        let theBuilder = crate::v1_1_4::request::gitignore_get_all_templates::reqwest_blocking_builder(
4600            self.config.base_url.as_ref(),
4601            self.config.user_agent.as_ref(),
4602            self.config.accept.as_deref(),
4603        )?
4604        .with_authentication(&theScheme)?;
4605
4606        let theRequest =
4607            crate::v1_1_4::request::gitignore_get_all_templates::reqwest_blocking_request(theBuilder)?;
4608
4609        ::log::debug!("HTTP request: {:?}", &theRequest);
4610
4611        let theResponse = self.client.execute(theRequest)?;
4612
4613        ::log::debug!("HTTP response: {:?}", &theResponse);
4614
4615        Ok(theResponse)
4616    }
4617
4618    /// Get a gitignore template
4619    /// 
4620    /// The API also allows fetching the source of a single template.
4621    /// Use the raw [media type](https://docs.github.com/rest/overview/media-types/) to get the raw contents.
4622    /// 
4623    /// [API method documentation](https://docs.github.com/rest/reference/gitignore#get-a-gitignore-template)
4624    pub fn gitignore_get_template(
4625        &self,
4626        name: &str,
4627    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4628        let mut theScheme = AuthScheme::from(&self.config.authentication);
4629
4630        while let Some(auth_step) = theScheme.step()? {
4631            match auth_step {
4632                ::authentic::AuthenticationStep::Request(auth_request) => {
4633                    theScheme.respond(self.client.execute(auth_request));
4634                }
4635                ::authentic::AuthenticationStep::WaitFor(duration) => {
4636                    (self.sleep)(duration);
4637                }
4638            }
4639        }
4640        let theBuilder = crate::v1_1_4::request::gitignore_get_template::reqwest_blocking_builder(
4641            self.config.base_url.as_ref(),
4642            name,
4643            self.config.user_agent.as_ref(),
4644            self.config.accept.as_deref(),
4645        )?
4646        .with_authentication(&theScheme)?;
4647
4648        let theRequest =
4649            crate::v1_1_4::request::gitignore_get_template::reqwest_blocking_request(theBuilder)?;
4650
4651        ::log::debug!("HTTP request: {:?}", &theRequest);
4652
4653        let theResponse = self.client.execute(theRequest)?;
4654
4655        ::log::debug!("HTTP response: {:?}", &theResponse);
4656
4657        Ok(theResponse)
4658    }
4659
4660    /// List repositories accessible to the app installation
4661    /// 
4662    /// List repositories that an app installation can access.
4663    /// 
4664    /// You must use an [installation access token](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation) to access this endpoint.
4665    /// 
4666    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-repositories-accessible-to-the-app-installation)
4667    pub fn apps_list_repos_accessible_to_installation(
4668        &self,
4669        per_page: ::std::option::Option<i64>,
4670        page: ::std::option::Option<i64>,
4671    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4672        let mut theScheme = AuthScheme::from(&self.config.authentication);
4673
4674        while let Some(auth_step) = theScheme.step()? {
4675            match auth_step {
4676                ::authentic::AuthenticationStep::Request(auth_request) => {
4677                    theScheme.respond(self.client.execute(auth_request));
4678                }
4679                ::authentic::AuthenticationStep::WaitFor(duration) => {
4680                    (self.sleep)(duration);
4681                }
4682            }
4683        }
4684        let theBuilder = crate::v1_1_4::request::apps_list_repos_accessible_to_installation::reqwest_blocking_builder(
4685            self.config.base_url.as_ref(),
4686            per_page,
4687            page,
4688            self.config.user_agent.as_ref(),
4689            self.config.accept.as_deref(),
4690        )?
4691        .with_authentication(&theScheme)?;
4692
4693        let theRequest =
4694            crate::v1_1_4::request::apps_list_repos_accessible_to_installation::reqwest_blocking_request(theBuilder)?;
4695
4696        ::log::debug!("HTTP request: {:?}", &theRequest);
4697
4698        let theResponse = self.client.execute(theRequest)?;
4699
4700        ::log::debug!("HTTP response: {:?}", &theResponse);
4701
4702        Ok(theResponse)
4703    }
4704
4705    /// Revoke an installation access token
4706    /// 
4707    /// Revokes the installation token you're using to authenticate as an installation and access this endpoint.
4708    /// 
4709    /// Once an installation token is revoked, the token is invalidated and cannot be used. Other endpoints that require the revoked installation token must have a new installation token to work. You can create a new token using the "[Create an installation access token for an app](https://docs.github.com/rest/reference/apps#create-an-installation-access-token-for-an-app)" endpoint.
4710    /// 
4711    /// You must use an [installation access token](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation) to access this endpoint.
4712    /// 
4713    /// [API method documentation](https://docs.github.com/rest/reference/apps#revoke-an-installation-access-token)
4714    pub fn apps_revoke_installation_access_token(
4715        &self,
4716    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4717        let mut theScheme = AuthScheme::from(&self.config.authentication);
4718
4719        while let Some(auth_step) = theScheme.step()? {
4720            match auth_step {
4721                ::authentic::AuthenticationStep::Request(auth_request) => {
4722                    theScheme.respond(self.client.execute(auth_request));
4723                }
4724                ::authentic::AuthenticationStep::WaitFor(duration) => {
4725                    (self.sleep)(duration);
4726                }
4727            }
4728        }
4729        let theBuilder = crate::v1_1_4::request::apps_revoke_installation_access_token::reqwest_blocking_builder(
4730            self.config.base_url.as_ref(),
4731            self.config.user_agent.as_ref(),
4732            self.config.accept.as_deref(),
4733        )?
4734        .with_authentication(&theScheme)?;
4735
4736        let theRequest =
4737            crate::v1_1_4::request::apps_revoke_installation_access_token::reqwest_blocking_request(theBuilder)?;
4738
4739        ::log::debug!("HTTP request: {:?}", &theRequest);
4740
4741        let theResponse = self.client.execute(theRequest)?;
4742
4743        ::log::debug!("HTTP response: {:?}", &theResponse);
4744
4745        Ok(theResponse)
4746    }
4747
4748    /// List issues assigned to the authenticated user
4749    /// 
4750    /// List issues assigned to the authenticated user across all visible repositories including owned repositories, member
4751    /// repositories, and organization repositories. You can use the `filter` query parameter to fetch issues that are not
4752    /// necessarily assigned to you.
4753    /// 
4754    /// 
4755    /// **Note**: GitHub's REST API v3 considers every pull request an issue, but not every issue is a pull request. For this
4756    /// reason, "Issues" endpoints may return both issues and pull requests in the response. You can identify pull requests by
4757    /// the `pull_request` key. Be aware that the `id` of a pull request returned from "Issues" endpoints will be an _issue id_. To find out the pull
4758    /// request id, use the "[List pull requests](https://docs.github.com/rest/reference/pulls#list-pull-requests)" endpoint.
4759    /// 
4760    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-issues-assigned-to-the-authenticated-user)
4761    #[allow(clippy::too_many_arguments)]
4762    pub fn issues_list(
4763        &self,
4764        filter: &crate::types::IssueFilter<'_>,
4765        sort: &crate::types::Sort<'_>,
4766        collab: ::std::option::Option<bool>,
4767        orgs: ::std::option::Option<bool>,
4768        owned: ::std::option::Option<bool>,
4769        pulls: ::std::option::Option<bool>,
4770        per_page: ::std::option::Option<i64>,
4771        page: ::std::option::Option<i64>,
4772    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4773        let (sort, direction) = sort.extract();
4774        let mut theScheme = AuthScheme::from(&self.config.authentication);
4775
4776        while let Some(auth_step) = theScheme.step()? {
4777            match auth_step {
4778                ::authentic::AuthenticationStep::Request(auth_request) => {
4779                    theScheme.respond(self.client.execute(auth_request));
4780                }
4781                ::authentic::AuthenticationStep::WaitFor(duration) => {
4782                    (self.sleep)(duration);
4783                }
4784            }
4785        }
4786        let theBuilder = crate::v1_1_4::request::issues_list::reqwest_blocking_builder(
4787            self.config.base_url.as_ref(),
4788            filter.filter,
4789            filter.state,
4790            filter.labels,
4791            sort,
4792            direction,
4793            filter.since,
4794            collab,
4795            orgs,
4796            owned,
4797            pulls,
4798            per_page,
4799            page,
4800            self.config.user_agent.as_ref(),
4801            self.config.accept.as_deref(),
4802        )?
4803        .with_authentication(&theScheme)?;
4804
4805        let theRequest =
4806            crate::v1_1_4::request::issues_list::reqwest_blocking_request(theBuilder)?;
4807
4808        ::log::debug!("HTTP request: {:?}", &theRequest);
4809
4810        let theResponse = self.client.execute(theRequest)?;
4811
4812        ::log::debug!("HTTP response: {:?}", &theResponse);
4813
4814        Ok(theResponse)
4815    }
4816
4817    /// Get all commonly used licenses
4818    /// 
4819    /// [API method documentation](https://docs.github.com/rest/reference/licenses#get-all-commonly-used-licenses)
4820    pub fn licenses_get_all_commonly_used(
4821        &self,
4822        featured: ::std::option::Option<bool>,
4823        per_page: ::std::option::Option<i64>,
4824        page: ::std::option::Option<i64>,
4825    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4826        let mut theScheme = AuthScheme::from(&self.config.authentication);
4827
4828        while let Some(auth_step) = theScheme.step()? {
4829            match auth_step {
4830                ::authentic::AuthenticationStep::Request(auth_request) => {
4831                    theScheme.respond(self.client.execute(auth_request));
4832                }
4833                ::authentic::AuthenticationStep::WaitFor(duration) => {
4834                    (self.sleep)(duration);
4835                }
4836            }
4837        }
4838        let theBuilder = crate::v1_1_4::request::licenses_get_all_commonly_used::reqwest_blocking_builder(
4839            self.config.base_url.as_ref(),
4840            featured,
4841            per_page,
4842            page,
4843            self.config.user_agent.as_ref(),
4844            self.config.accept.as_deref(),
4845        )?
4846        .with_authentication(&theScheme)?;
4847
4848        let theRequest =
4849            crate::v1_1_4::request::licenses_get_all_commonly_used::reqwest_blocking_request(theBuilder)?;
4850
4851        ::log::debug!("HTTP request: {:?}", &theRequest);
4852
4853        let theResponse = self.client.execute(theRequest)?;
4854
4855        ::log::debug!("HTTP response: {:?}", &theResponse);
4856
4857        Ok(theResponse)
4858    }
4859
4860    /// Get a license
4861    /// 
4862    /// [API method documentation](https://docs.github.com/rest/reference/licenses#get-a-license)
4863    pub fn licenses_get(
4864        &self,
4865        license: &str,
4866    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
4867        let mut theScheme = AuthScheme::from(&self.config.authentication);
4868
4869        while let Some(auth_step) = theScheme.step()? {
4870            match auth_step {
4871                ::authentic::AuthenticationStep::Request(auth_request) => {
4872                    theScheme.respond(self.client.execute(auth_request));
4873                }
4874                ::authentic::AuthenticationStep::WaitFor(duration) => {
4875                    (self.sleep)(duration);
4876                }
4877            }
4878        }
4879        let theBuilder = crate::v1_1_4::request::licenses_get::reqwest_blocking_builder(
4880            self.config.base_url.as_ref(),
4881            license,
4882            self.config.user_agent.as_ref(),
4883            self.config.accept.as_deref(),
4884        )?
4885        .with_authentication(&theScheme)?;
4886
4887        let theRequest =
4888            crate::v1_1_4::request::licenses_get::reqwest_blocking_request(theBuilder)?;
4889
4890        ::log::debug!("HTTP request: {:?}", &theRequest);
4891
4892        let theResponse = self.client.execute(theRequest)?;
4893
4894        ::log::debug!("HTTP response: {:?}", &theResponse);
4895
4896        Ok(theResponse)
4897    }
4898
4899    /// Render a Markdown document
4900    /// 
4901    /// [API method documentation](https://docs.github.com/rest/reference/markdown#render-a-markdown-document)
4902    ///
4903    /// # Content
4904    ///
4905    /// - [`&v1_1_4::request::markdown_render::body::Json`](crate::v1_1_4::request::markdown_render::body::Json)
4906    pub fn markdown_render<Content>(
4907        &self,
4908        theContent: Content,
4909    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
4910    where
4911        Content: Copy + TryInto<crate::v1_1_4::request::markdown_render::Content<::reqwest::blocking::Body>>,
4912        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::markdown_render::Content<::reqwest::blocking::Body>>>::Error>
4913    {
4914        let mut theScheme = AuthScheme::from(&self.config.authentication);
4915
4916        while let Some(auth_step) = theScheme.step()? {
4917            match auth_step {
4918                ::authentic::AuthenticationStep::Request(auth_request) => {
4919                    theScheme.respond(self.client.execute(auth_request));
4920                }
4921                ::authentic::AuthenticationStep::WaitFor(duration) => {
4922                    (self.sleep)(duration);
4923                }
4924            }
4925        }
4926        let theBuilder = crate::v1_1_4::request::markdown_render::reqwest_blocking_builder(
4927            self.config.base_url.as_ref(),
4928            self.config.user_agent.as_ref(),
4929            self.config.accept.as_deref(),
4930        )?
4931        .with_authentication(&theScheme)?;
4932
4933        let theRequest = crate::v1_1_4::request::markdown_render::reqwest_blocking_request(
4934            theBuilder,
4935            theContent.try_into()?,
4936        )?;
4937
4938        ::log::debug!("HTTP request: {:?}", &theRequest);
4939
4940        let theResponse = self.client.execute(theRequest)?;
4941
4942        ::log::debug!("HTTP response: {:?}", &theResponse);
4943
4944        Ok(theResponse)
4945    }
4946
4947    /// Render a Markdown document in raw mode
4948    /// 
4949    /// You must send Markdown as plain text (using a `Content-Type` header of `text/plain` or `text/x-markdown`) to this endpoint, rather than using JSON format. In raw mode, [GitHub Flavored Markdown](https://github.github.com/gfm/) is not supported and Markdown will be rendered in plain format like a README.md file. Markdown content must be 400 KB or less.
4950    /// 
4951    /// [API method documentation](https://docs.github.com/rest/reference/markdown#render-a-markdown-document-in-raw-mode)
4952    ///
4953    /// # Content
4954    ///
4955    /// - [`&Cow<'static, str>`](::std::borrow::Cow)
4956    pub fn markdown_render_raw<Content>(
4957        &self,
4958        theContent: Content,
4959    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
4960    where
4961        Content: Copy + TryInto<crate::v1_1_4::request::markdown_render_raw::Content<::reqwest::blocking::Body>>,
4962        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::markdown_render_raw::Content<::reqwest::blocking::Body>>>::Error>
4963    {
4964        let mut theScheme = AuthScheme::from(&self.config.authentication);
4965
4966        while let Some(auth_step) = theScheme.step()? {
4967            match auth_step {
4968                ::authentic::AuthenticationStep::Request(auth_request) => {
4969                    theScheme.respond(self.client.execute(auth_request));
4970                }
4971                ::authentic::AuthenticationStep::WaitFor(duration) => {
4972                    (self.sleep)(duration);
4973                }
4974            }
4975        }
4976        let theBuilder = crate::v1_1_4::request::markdown_render_raw::reqwest_blocking_builder(
4977            self.config.base_url.as_ref(),
4978            self.config.user_agent.as_ref(),
4979            self.config.accept.as_deref(),
4980        )?
4981        .with_authentication(&theScheme)?;
4982
4983        let theRequest = crate::v1_1_4::request::markdown_render_raw::reqwest_blocking_request(
4984            theBuilder,
4985            theContent.try_into()?,
4986        )?;
4987
4988        ::log::debug!("HTTP request: {:?}", &theRequest);
4989
4990        let theResponse = self.client.execute(theRequest)?;
4991
4992        ::log::debug!("HTTP response: {:?}", &theResponse);
4993
4994        Ok(theResponse)
4995    }
4996
4997    /// Get a subscription plan for an account
4998    /// 
4999    /// Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
5000    /// 
5001    /// GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth Apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
5002    /// 
5003    /// [API method documentation](https://docs.github.com/rest/reference/apps#get-a-subscription-plan-for-an-account)
5004    pub fn apps_get_subscription_plan_for_account(
5005        &self,
5006        account_id: i64,
5007    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5008        let mut theScheme = AuthScheme::from(&self.config.authentication);
5009
5010        while let Some(auth_step) = theScheme.step()? {
5011            match auth_step {
5012                ::authentic::AuthenticationStep::Request(auth_request) => {
5013                    theScheme.respond(self.client.execute(auth_request));
5014                }
5015                ::authentic::AuthenticationStep::WaitFor(duration) => {
5016                    (self.sleep)(duration);
5017                }
5018            }
5019        }
5020        let theBuilder = crate::v1_1_4::request::apps_get_subscription_plan_for_account::reqwest_blocking_builder(
5021            self.config.base_url.as_ref(),
5022            account_id,
5023            self.config.user_agent.as_ref(),
5024            self.config.accept.as_deref(),
5025        )?
5026        .with_authentication(&theScheme)?;
5027
5028        let theRequest =
5029            crate::v1_1_4::request::apps_get_subscription_plan_for_account::reqwest_blocking_request(theBuilder)?;
5030
5031        ::log::debug!("HTTP request: {:?}", &theRequest);
5032
5033        let theResponse = self.client.execute(theRequest)?;
5034
5035        ::log::debug!("HTTP response: {:?}", &theResponse);
5036
5037        Ok(theResponse)
5038    }
5039
5040    /// List plans
5041    /// 
5042    /// Lists all plans that are part of your GitHub Marketplace listing.
5043    /// 
5044    /// GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth Apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
5045    /// 
5046    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-plans)
5047    pub fn apps_list_plans(
5048        &self,
5049        per_page: ::std::option::Option<i64>,
5050        page: ::std::option::Option<i64>,
5051    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5052        let mut theScheme = AuthScheme::from(&self.config.authentication);
5053
5054        while let Some(auth_step) = theScheme.step()? {
5055            match auth_step {
5056                ::authentic::AuthenticationStep::Request(auth_request) => {
5057                    theScheme.respond(self.client.execute(auth_request));
5058                }
5059                ::authentic::AuthenticationStep::WaitFor(duration) => {
5060                    (self.sleep)(duration);
5061                }
5062            }
5063        }
5064        let theBuilder = crate::v1_1_4::request::apps_list_plans::reqwest_blocking_builder(
5065            self.config.base_url.as_ref(),
5066            per_page,
5067            page,
5068            self.config.user_agent.as_ref(),
5069            self.config.accept.as_deref(),
5070        )?
5071        .with_authentication(&theScheme)?;
5072
5073        let theRequest =
5074            crate::v1_1_4::request::apps_list_plans::reqwest_blocking_request(theBuilder)?;
5075
5076        ::log::debug!("HTTP request: {:?}", &theRequest);
5077
5078        let theResponse = self.client.execute(theRequest)?;
5079
5080        ::log::debug!("HTTP response: {:?}", &theResponse);
5081
5082        Ok(theResponse)
5083    }
5084
5085    /// List accounts for a plan
5086    /// 
5087    /// Returns user and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
5088    /// 
5089    /// GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth Apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
5090    /// 
5091    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-accounts-for-a-plan)
5092    pub fn apps_list_accounts_for_plan(
5093        &self,
5094        plan_id: i64,
5095        sort: &crate::types::Sort<'_>,
5096        per_page: ::std::option::Option<i64>,
5097        page: ::std::option::Option<i64>,
5098    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5099        let (sort, direction) = sort.extract();
5100        let mut theScheme = AuthScheme::from(&self.config.authentication);
5101
5102        while let Some(auth_step) = theScheme.step()? {
5103            match auth_step {
5104                ::authentic::AuthenticationStep::Request(auth_request) => {
5105                    theScheme.respond(self.client.execute(auth_request));
5106                }
5107                ::authentic::AuthenticationStep::WaitFor(duration) => {
5108                    (self.sleep)(duration);
5109                }
5110            }
5111        }
5112        let theBuilder = crate::v1_1_4::request::apps_list_accounts_for_plan::reqwest_blocking_builder(
5113            self.config.base_url.as_ref(),
5114            plan_id,
5115            sort,
5116            direction,
5117            per_page,
5118            page,
5119            self.config.user_agent.as_ref(),
5120            self.config.accept.as_deref(),
5121        )?
5122        .with_authentication(&theScheme)?;
5123
5124        let theRequest =
5125            crate::v1_1_4::request::apps_list_accounts_for_plan::reqwest_blocking_request(theBuilder)?;
5126
5127        ::log::debug!("HTTP request: {:?}", &theRequest);
5128
5129        let theResponse = self.client.execute(theRequest)?;
5130
5131        ::log::debug!("HTTP response: {:?}", &theResponse);
5132
5133        Ok(theResponse)
5134    }
5135
5136    /// Get a subscription plan for an account (stubbed)
5137    /// 
5138    /// Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
5139    /// 
5140    /// GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth Apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
5141    /// 
5142    /// [API method documentation](https://docs.github.com/rest/reference/apps#get-a-subscription-plan-for-an-account-stubbed)
5143    pub fn apps_get_subscription_plan_for_account_stubbed(
5144        &self,
5145        account_id: i64,
5146    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5147        let mut theScheme = AuthScheme::from(&self.config.authentication);
5148
5149        while let Some(auth_step) = theScheme.step()? {
5150            match auth_step {
5151                ::authentic::AuthenticationStep::Request(auth_request) => {
5152                    theScheme.respond(self.client.execute(auth_request));
5153                }
5154                ::authentic::AuthenticationStep::WaitFor(duration) => {
5155                    (self.sleep)(duration);
5156                }
5157            }
5158        }
5159        let theBuilder = crate::v1_1_4::request::apps_get_subscription_plan_for_account_stubbed::reqwest_blocking_builder(
5160            self.config.base_url.as_ref(),
5161            account_id,
5162            self.config.user_agent.as_ref(),
5163            self.config.accept.as_deref(),
5164        )?
5165        .with_authentication(&theScheme)?;
5166
5167        let theRequest =
5168            crate::v1_1_4::request::apps_get_subscription_plan_for_account_stubbed::reqwest_blocking_request(theBuilder)?;
5169
5170        ::log::debug!("HTTP request: {:?}", &theRequest);
5171
5172        let theResponse = self.client.execute(theRequest)?;
5173
5174        ::log::debug!("HTTP response: {:?}", &theResponse);
5175
5176        Ok(theResponse)
5177    }
5178
5179    /// List plans (stubbed)
5180    /// 
5181    /// Lists all plans that are part of your GitHub Marketplace listing.
5182    /// 
5183    /// GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth Apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
5184    /// 
5185    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-plans-stubbed)
5186    pub fn apps_list_plans_stubbed(
5187        &self,
5188        per_page: ::std::option::Option<i64>,
5189        page: ::std::option::Option<i64>,
5190    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5191        let mut theScheme = AuthScheme::from(&self.config.authentication);
5192
5193        while let Some(auth_step) = theScheme.step()? {
5194            match auth_step {
5195                ::authentic::AuthenticationStep::Request(auth_request) => {
5196                    theScheme.respond(self.client.execute(auth_request));
5197                }
5198                ::authentic::AuthenticationStep::WaitFor(duration) => {
5199                    (self.sleep)(duration);
5200                }
5201            }
5202        }
5203        let theBuilder = crate::v1_1_4::request::apps_list_plans_stubbed::reqwest_blocking_builder(
5204            self.config.base_url.as_ref(),
5205            per_page,
5206            page,
5207            self.config.user_agent.as_ref(),
5208            self.config.accept.as_deref(),
5209        )?
5210        .with_authentication(&theScheme)?;
5211
5212        let theRequest =
5213            crate::v1_1_4::request::apps_list_plans_stubbed::reqwest_blocking_request(theBuilder)?;
5214
5215        ::log::debug!("HTTP request: {:?}", &theRequest);
5216
5217        let theResponse = self.client.execute(theRequest)?;
5218
5219        ::log::debug!("HTTP response: {:?}", &theResponse);
5220
5221        Ok(theResponse)
5222    }
5223
5224    /// List accounts for a plan (stubbed)
5225    /// 
5226    /// Returns repository and organization accounts associated with the specified plan, including free plans. For per-seat pricing, you see the list of accounts that have purchased the plan, including the number of seats purchased. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.
5227    /// 
5228    /// GitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth Apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint.
5229    /// 
5230    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-accounts-for-a-plan-stubbed)
5231    pub fn apps_list_accounts_for_plan_stubbed(
5232        &self,
5233        plan_id: i64,
5234        sort: &crate::types::Sort<'_>,
5235        per_page: ::std::option::Option<i64>,
5236        page: ::std::option::Option<i64>,
5237    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5238        let (sort, direction) = sort.extract();
5239        let mut theScheme = AuthScheme::from(&self.config.authentication);
5240
5241        while let Some(auth_step) = theScheme.step()? {
5242            match auth_step {
5243                ::authentic::AuthenticationStep::Request(auth_request) => {
5244                    theScheme.respond(self.client.execute(auth_request));
5245                }
5246                ::authentic::AuthenticationStep::WaitFor(duration) => {
5247                    (self.sleep)(duration);
5248                }
5249            }
5250        }
5251        let theBuilder = crate::v1_1_4::request::apps_list_accounts_for_plan_stubbed::reqwest_blocking_builder(
5252            self.config.base_url.as_ref(),
5253            plan_id,
5254            sort,
5255            direction,
5256            per_page,
5257            page,
5258            self.config.user_agent.as_ref(),
5259            self.config.accept.as_deref(),
5260        )?
5261        .with_authentication(&theScheme)?;
5262
5263        let theRequest =
5264            crate::v1_1_4::request::apps_list_accounts_for_plan_stubbed::reqwest_blocking_request(theBuilder)?;
5265
5266        ::log::debug!("HTTP request: {:?}", &theRequest);
5267
5268        let theResponse = self.client.execute(theRequest)?;
5269
5270        ::log::debug!("HTTP response: {:?}", &theResponse);
5271
5272        Ok(theResponse)
5273    }
5274
5275    /// Get GitHub meta information
5276    /// 
5277    /// Returns meta information about GitHub, including a list of GitHub's IP addresses. For more information, see "[About GitHub's IP addresses](https://docs.github.com/articles/about-github-s-ip-addresses/)."
5278    /// 
5279    /// **Note:** The IP addresses shown in the documentation's response are only example values. You must always query the API directly to get the latest list of IP addresses.
5280    /// 
5281    /// [API method documentation](https://docs.github.com/rest/reference/meta#get-github-meta-information)
5282    pub fn meta_get(
5283        &self,
5284    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5285        let mut theScheme = AuthScheme::from(&self.config.authentication);
5286
5287        while let Some(auth_step) = theScheme.step()? {
5288            match auth_step {
5289                ::authentic::AuthenticationStep::Request(auth_request) => {
5290                    theScheme.respond(self.client.execute(auth_request));
5291                }
5292                ::authentic::AuthenticationStep::WaitFor(duration) => {
5293                    (self.sleep)(duration);
5294                }
5295            }
5296        }
5297        let theBuilder = crate::v1_1_4::request::meta_get::reqwest_blocking_builder(
5298            self.config.base_url.as_ref(),
5299            self.config.user_agent.as_ref(),
5300            self.config.accept.as_deref(),
5301        )?
5302        .with_authentication(&theScheme)?;
5303
5304        let theRequest =
5305            crate::v1_1_4::request::meta_get::reqwest_blocking_request(theBuilder)?;
5306
5307        ::log::debug!("HTTP request: {:?}", &theRequest);
5308
5309        let theResponse = self.client.execute(theRequest)?;
5310
5311        ::log::debug!("HTTP response: {:?}", &theResponse);
5312
5313        Ok(theResponse)
5314    }
5315
5316    /// List public events for a network of repositories
5317    /// 
5318    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-public-events-for-a-network-of-repositories)
5319    pub fn activity_list_public_events_for_repo_network(
5320        &self,
5321        owner: &str,
5322        repo: &str,
5323        per_page: ::std::option::Option<i64>,
5324        page: ::std::option::Option<i64>,
5325    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5326        let mut theScheme = AuthScheme::from(&self.config.authentication);
5327
5328        while let Some(auth_step) = theScheme.step()? {
5329            match auth_step {
5330                ::authentic::AuthenticationStep::Request(auth_request) => {
5331                    theScheme.respond(self.client.execute(auth_request));
5332                }
5333                ::authentic::AuthenticationStep::WaitFor(duration) => {
5334                    (self.sleep)(duration);
5335                }
5336            }
5337        }
5338        let theBuilder = crate::v1_1_4::request::activity_list_public_events_for_repo_network::reqwest_blocking_builder(
5339            self.config.base_url.as_ref(),
5340            owner,
5341            repo,
5342            per_page,
5343            page,
5344            self.config.user_agent.as_ref(),
5345            self.config.accept.as_deref(),
5346        )?
5347        .with_authentication(&theScheme)?;
5348
5349        let theRequest =
5350            crate::v1_1_4::request::activity_list_public_events_for_repo_network::reqwest_blocking_request(theBuilder)?;
5351
5352        ::log::debug!("HTTP request: {:?}", &theRequest);
5353
5354        let theResponse = self.client.execute(theRequest)?;
5355
5356        ::log::debug!("HTTP response: {:?}", &theResponse);
5357
5358        Ok(theResponse)
5359    }
5360
5361    /// List notifications for the authenticated user
5362    /// 
5363    /// List all notifications for the current user, sorted by most recently updated.
5364    /// 
5365    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-notifications-for-the-authenticated-user)
5366    pub fn activity_list_notifications_for_authenticated_user(
5367        &self,
5368        all: ::std::option::Option<bool>,
5369        participating: ::std::option::Option<bool>,
5370        since: ::std::option::Option<&str>,
5371        before: ::std::option::Option<&str>,
5372        per_page: ::std::option::Option<i64>,
5373        page: ::std::option::Option<i64>,
5374    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5375        let mut theScheme = AuthScheme::from(&self.config.authentication);
5376
5377        while let Some(auth_step) = theScheme.step()? {
5378            match auth_step {
5379                ::authentic::AuthenticationStep::Request(auth_request) => {
5380                    theScheme.respond(self.client.execute(auth_request));
5381                }
5382                ::authentic::AuthenticationStep::WaitFor(duration) => {
5383                    (self.sleep)(duration);
5384                }
5385            }
5386        }
5387        let theBuilder = crate::v1_1_4::request::activity_list_notifications_for_authenticated_user::reqwest_blocking_builder(
5388            self.config.base_url.as_ref(),
5389            all,
5390            participating,
5391            since,
5392            before,
5393            per_page,
5394            page,
5395            self.config.user_agent.as_ref(),
5396            self.config.accept.as_deref(),
5397        )?
5398        .with_authentication(&theScheme)?;
5399
5400        let theRequest =
5401            crate::v1_1_4::request::activity_list_notifications_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
5402
5403        ::log::debug!("HTTP request: {:?}", &theRequest);
5404
5405        let theResponse = self.client.execute(theRequest)?;
5406
5407        ::log::debug!("HTTP response: {:?}", &theResponse);
5408
5409        Ok(theResponse)
5410    }
5411
5412    /// Mark notifications as read
5413    /// 
5414    /// Marks all notifications as "read" removes it from the [default view on GitHub](https://github.com/notifications). If the number of notifications is too large to complete in one request, you will receive a `202 Accepted` status and GitHub will run an asynchronous process to mark notifications as "read." To check whether any "unread" notifications remain, you can use the [List notifications for the authenticated user](https://docs.github.com/rest/reference/activity#list-notifications-for-the-authenticated-user) endpoint and pass the query parameter `all=false`.
5415    /// 
5416    /// [API method documentation](https://docs.github.com/rest/reference/activity#mark-notifications-as-read)
5417    ///
5418    /// # Content
5419    ///
5420    /// - [`&v1_1_4::request::activity_mark_notifications_as_read::body::Json`](crate::v1_1_4::request::activity_mark_notifications_as_read::body::Json)
5421    pub fn activity_mark_notifications_as_read<Content>(
5422        &self,
5423        theContent: Content,
5424    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
5425    where
5426        Content: Copy + TryInto<crate::v1_1_4::request::activity_mark_notifications_as_read::Content<::reqwest::blocking::Body>>,
5427        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::activity_mark_notifications_as_read::Content<::reqwest::blocking::Body>>>::Error>
5428    {
5429        let mut theScheme = AuthScheme::from(&self.config.authentication);
5430
5431        while let Some(auth_step) = theScheme.step()? {
5432            match auth_step {
5433                ::authentic::AuthenticationStep::Request(auth_request) => {
5434                    theScheme.respond(self.client.execute(auth_request));
5435                }
5436                ::authentic::AuthenticationStep::WaitFor(duration) => {
5437                    (self.sleep)(duration);
5438                }
5439            }
5440        }
5441        let theBuilder = crate::v1_1_4::request::activity_mark_notifications_as_read::reqwest_blocking_builder(
5442            self.config.base_url.as_ref(),
5443            self.config.user_agent.as_ref(),
5444            self.config.accept.as_deref(),
5445        )?
5446        .with_authentication(&theScheme)?;
5447
5448        let theRequest = crate::v1_1_4::request::activity_mark_notifications_as_read::reqwest_blocking_request(
5449            theBuilder,
5450            theContent.try_into()?,
5451        )?;
5452
5453        ::log::debug!("HTTP request: {:?}", &theRequest);
5454
5455        let theResponse = self.client.execute(theRequest)?;
5456
5457        ::log::debug!("HTTP response: {:?}", &theResponse);
5458
5459        Ok(theResponse)
5460    }
5461
5462    /// Get a thread
5463    /// 
5464    /// [API method documentation](https://docs.github.com/rest/reference/activity#get-a-thread)
5465    pub fn activity_get_thread(
5466        &self,
5467        thread_id: i64,
5468    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5469        let mut theScheme = AuthScheme::from(&self.config.authentication);
5470
5471        while let Some(auth_step) = theScheme.step()? {
5472            match auth_step {
5473                ::authentic::AuthenticationStep::Request(auth_request) => {
5474                    theScheme.respond(self.client.execute(auth_request));
5475                }
5476                ::authentic::AuthenticationStep::WaitFor(duration) => {
5477                    (self.sleep)(duration);
5478                }
5479            }
5480        }
5481        let theBuilder = crate::v1_1_4::request::activity_get_thread::reqwest_blocking_builder(
5482            self.config.base_url.as_ref(),
5483            thread_id,
5484            self.config.user_agent.as_ref(),
5485            self.config.accept.as_deref(),
5486        )?
5487        .with_authentication(&theScheme)?;
5488
5489        let theRequest =
5490            crate::v1_1_4::request::activity_get_thread::reqwest_blocking_request(theBuilder)?;
5491
5492        ::log::debug!("HTTP request: {:?}", &theRequest);
5493
5494        let theResponse = self.client.execute(theRequest)?;
5495
5496        ::log::debug!("HTTP response: {:?}", &theResponse);
5497
5498        Ok(theResponse)
5499    }
5500
5501    /// Mark a thread as read
5502    /// 
5503    /// [API method documentation](https://docs.github.com/rest/reference/activity#mark-a-thread-as-read)
5504    pub fn activity_mark_thread_as_read(
5505        &self,
5506        thread_id: i64,
5507    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5508        let mut theScheme = AuthScheme::from(&self.config.authentication);
5509
5510        while let Some(auth_step) = theScheme.step()? {
5511            match auth_step {
5512                ::authentic::AuthenticationStep::Request(auth_request) => {
5513                    theScheme.respond(self.client.execute(auth_request));
5514                }
5515                ::authentic::AuthenticationStep::WaitFor(duration) => {
5516                    (self.sleep)(duration);
5517                }
5518            }
5519        }
5520        let theBuilder = crate::v1_1_4::request::activity_mark_thread_as_read::reqwest_blocking_builder(
5521            self.config.base_url.as_ref(),
5522            thread_id,
5523            self.config.user_agent.as_ref(),
5524            self.config.accept.as_deref(),
5525        )?
5526        .with_authentication(&theScheme)?;
5527
5528        let theRequest =
5529            crate::v1_1_4::request::activity_mark_thread_as_read::reqwest_blocking_request(theBuilder)?;
5530
5531        ::log::debug!("HTTP request: {:?}", &theRequest);
5532
5533        let theResponse = self.client.execute(theRequest)?;
5534
5535        ::log::debug!("HTTP response: {:?}", &theResponse);
5536
5537        Ok(theResponse)
5538    }
5539
5540    /// Get a thread subscription for the authenticated user
5541    /// 
5542    /// This checks to see if the current user is subscribed to a thread. You can also [get a repository subscription](https://docs.github.com/rest/reference/activity#get-a-repository-subscription).
5543    /// 
5544    /// Note that subscriptions are only generated if a user is participating in a conversation--for example, they've replied to the thread, were **@mentioned**, or manually subscribe to a thread.
5545    /// 
5546    /// [API method documentation](https://docs.github.com/rest/reference/activity#get-a-thread-subscription-for-the-authenticated-user)
5547    pub fn activity_get_thread_subscription_for_authenticated_user(
5548        &self,
5549        thread_id: i64,
5550    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5551        let mut theScheme = AuthScheme::from(&self.config.authentication);
5552
5553        while let Some(auth_step) = theScheme.step()? {
5554            match auth_step {
5555                ::authentic::AuthenticationStep::Request(auth_request) => {
5556                    theScheme.respond(self.client.execute(auth_request));
5557                }
5558                ::authentic::AuthenticationStep::WaitFor(duration) => {
5559                    (self.sleep)(duration);
5560                }
5561            }
5562        }
5563        let theBuilder = crate::v1_1_4::request::activity_get_thread_subscription_for_authenticated_user::reqwest_blocking_builder(
5564            self.config.base_url.as_ref(),
5565            thread_id,
5566            self.config.user_agent.as_ref(),
5567            self.config.accept.as_deref(),
5568        )?
5569        .with_authentication(&theScheme)?;
5570
5571        let theRequest =
5572            crate::v1_1_4::request::activity_get_thread_subscription_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
5573
5574        ::log::debug!("HTTP request: {:?}", &theRequest);
5575
5576        let theResponse = self.client.execute(theRequest)?;
5577
5578        ::log::debug!("HTTP response: {:?}", &theResponse);
5579
5580        Ok(theResponse)
5581    }
5582
5583    /// Set a thread subscription
5584    /// 
5585    /// If you are watching a repository, you receive notifications for all threads by default. Use this endpoint to ignore future notifications for threads until you comment on the thread or get an **@mention**.
5586    /// 
5587    /// You can also use this endpoint to subscribe to threads that you are currently not receiving notifications for or to subscribed to threads that you have previously ignored.
5588    /// 
5589    /// Unsubscribing from a conversation in a repository that you are not watching is functionally equivalent to the [Delete a thread subscription](https://docs.github.com/rest/reference/activity#delete-a-thread-subscription) endpoint.
5590    /// 
5591    /// [API method documentation](https://docs.github.com/rest/reference/activity#set-a-thread-subscription)
5592    ///
5593    /// # Content
5594    ///
5595    /// - [`&v1_1_4::request::activity_set_thread_subscription::body::Json`](crate::v1_1_4::request::activity_set_thread_subscription::body::Json)
5596    pub fn activity_set_thread_subscription<Content>(
5597        &self,
5598        thread_id: i64,
5599        theContent: Content,
5600    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
5601    where
5602        Content: Copy + TryInto<crate::v1_1_4::request::activity_set_thread_subscription::Content<::reqwest::blocking::Body>>,
5603        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::activity_set_thread_subscription::Content<::reqwest::blocking::Body>>>::Error>
5604    {
5605        let mut theScheme = AuthScheme::from(&self.config.authentication);
5606
5607        while let Some(auth_step) = theScheme.step()? {
5608            match auth_step {
5609                ::authentic::AuthenticationStep::Request(auth_request) => {
5610                    theScheme.respond(self.client.execute(auth_request));
5611                }
5612                ::authentic::AuthenticationStep::WaitFor(duration) => {
5613                    (self.sleep)(duration);
5614                }
5615            }
5616        }
5617        let theBuilder = crate::v1_1_4::request::activity_set_thread_subscription::reqwest_blocking_builder(
5618            self.config.base_url.as_ref(),
5619            thread_id,
5620            self.config.user_agent.as_ref(),
5621            self.config.accept.as_deref(),
5622        )?
5623        .with_authentication(&theScheme)?;
5624
5625        let theRequest = crate::v1_1_4::request::activity_set_thread_subscription::reqwest_blocking_request(
5626            theBuilder,
5627            theContent.try_into()?,
5628        )?;
5629
5630        ::log::debug!("HTTP request: {:?}", &theRequest);
5631
5632        let theResponse = self.client.execute(theRequest)?;
5633
5634        ::log::debug!("HTTP response: {:?}", &theResponse);
5635
5636        Ok(theResponse)
5637    }
5638
5639    /// Delete a thread subscription
5640    /// 
5641    /// Mutes all future notifications for a conversation until you comment on the thread or get an **@mention**. If you are watching the repository of the thread, you will still receive notifications. To ignore future notifications for a repository you are watching, use the [Set a thread subscription](https://docs.github.com/rest/reference/activity#set-a-thread-subscription) endpoint and set `ignore` to `true`.
5642    /// 
5643    /// [API method documentation](https://docs.github.com/rest/reference/activity#delete-a-thread-subscription)
5644    pub fn activity_delete_thread_subscription(
5645        &self,
5646        thread_id: i64,
5647    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5648        let mut theScheme = AuthScheme::from(&self.config.authentication);
5649
5650        while let Some(auth_step) = theScheme.step()? {
5651            match auth_step {
5652                ::authentic::AuthenticationStep::Request(auth_request) => {
5653                    theScheme.respond(self.client.execute(auth_request));
5654                }
5655                ::authentic::AuthenticationStep::WaitFor(duration) => {
5656                    (self.sleep)(duration);
5657                }
5658            }
5659        }
5660        let theBuilder = crate::v1_1_4::request::activity_delete_thread_subscription::reqwest_blocking_builder(
5661            self.config.base_url.as_ref(),
5662            thread_id,
5663            self.config.user_agent.as_ref(),
5664            self.config.accept.as_deref(),
5665        )?
5666        .with_authentication(&theScheme)?;
5667
5668        let theRequest =
5669            crate::v1_1_4::request::activity_delete_thread_subscription::reqwest_blocking_request(theBuilder)?;
5670
5671        ::log::debug!("HTTP request: {:?}", &theRequest);
5672
5673        let theResponse = self.client.execute(theRequest)?;
5674
5675        ::log::debug!("HTTP response: {:?}", &theResponse);
5676
5677        Ok(theResponse)
5678    }
5679
5680    /// Get Octocat
5681    /// 
5682    /// Get the octocat as ASCII art
5683    /// 
5684    /// [API method documentation](https://docs.github.com/rest/reference/meta#get-octocat)
5685    pub fn meta_get_octocat(
5686        &self,
5687        s: ::std::option::Option<&str>,
5688    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5689        let mut theScheme = AuthScheme::from(&self.config.authentication);
5690
5691        while let Some(auth_step) = theScheme.step()? {
5692            match auth_step {
5693                ::authentic::AuthenticationStep::Request(auth_request) => {
5694                    theScheme.respond(self.client.execute(auth_request));
5695                }
5696                ::authentic::AuthenticationStep::WaitFor(duration) => {
5697                    (self.sleep)(duration);
5698                }
5699            }
5700        }
5701        let theBuilder = crate::v1_1_4::request::meta_get_octocat::reqwest_blocking_builder(
5702            self.config.base_url.as_ref(),
5703            s,
5704            self.config.user_agent.as_ref(),
5705            self.config.accept.as_deref(),
5706        )?
5707        .with_authentication(&theScheme)?;
5708
5709        let theRequest =
5710            crate::v1_1_4::request::meta_get_octocat::reqwest_blocking_request(theBuilder)?;
5711
5712        ::log::debug!("HTTP request: {:?}", &theRequest);
5713
5714        let theResponse = self.client.execute(theRequest)?;
5715
5716        ::log::debug!("HTTP response: {:?}", &theResponse);
5717
5718        Ok(theResponse)
5719    }
5720
5721    /// List organizations
5722    /// 
5723    /// Lists all organizations, in the order that they were created on GitHub.
5724    /// 
5725    /// **Note:** Pagination is powered exclusively by the `since` parameter. Use the [Link header](https://docs.github.com/rest/overview/resources-in-the-rest-api#link-header) to get the URL for the next page of organizations.
5726    /// 
5727    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-organizations)
5728    pub fn orgs_list(
5729        &self,
5730        since: ::std::option::Option<i64>,
5731        per_page: ::std::option::Option<i64>,
5732    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5733        let mut theScheme = AuthScheme::from(&self.config.authentication);
5734
5735        while let Some(auth_step) = theScheme.step()? {
5736            match auth_step {
5737                ::authentic::AuthenticationStep::Request(auth_request) => {
5738                    theScheme.respond(self.client.execute(auth_request));
5739                }
5740                ::authentic::AuthenticationStep::WaitFor(duration) => {
5741                    (self.sleep)(duration);
5742                }
5743            }
5744        }
5745        let theBuilder = crate::v1_1_4::request::orgs_list::reqwest_blocking_builder(
5746            self.config.base_url.as_ref(),
5747            since,
5748            per_page,
5749            self.config.user_agent.as_ref(),
5750            self.config.accept.as_deref(),
5751        )?
5752        .with_authentication(&theScheme)?;
5753
5754        let theRequest =
5755            crate::v1_1_4::request::orgs_list::reqwest_blocking_request(theBuilder)?;
5756
5757        ::log::debug!("HTTP request: {:?}", &theRequest);
5758
5759        let theResponse = self.client.execute(theRequest)?;
5760
5761        ::log::debug!("HTTP response: {:?}", &theResponse);
5762
5763        Ok(theResponse)
5764    }
5765
5766    /// List custom repository roles in an organization
5767    /// 
5768    /// List the custom repository roles available in this organization. In order to see custom
5769    /// repository roles in an organization, the authenticated user must be an organization owner.
5770    /// 
5771    /// For more information on custom repository roles, see "[Managing custom repository roles for an organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)".
5772    /// 
5773    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-custom-repository-roles-in-an-organization)
5774    pub fn orgs_list_custom_roles(
5775        &self,
5776        organization_id: &str,
5777    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5778        let mut theScheme = AuthScheme::from(&self.config.authentication);
5779
5780        while let Some(auth_step) = theScheme.step()? {
5781            match auth_step {
5782                ::authentic::AuthenticationStep::Request(auth_request) => {
5783                    theScheme.respond(self.client.execute(auth_request));
5784                }
5785                ::authentic::AuthenticationStep::WaitFor(duration) => {
5786                    (self.sleep)(duration);
5787                }
5788            }
5789        }
5790        let theBuilder = crate::v1_1_4::request::orgs_list_custom_roles::reqwest_blocking_builder(
5791            self.config.base_url.as_ref(),
5792            organization_id,
5793            self.config.user_agent.as_ref(),
5794            self.config.accept.as_deref(),
5795        )?
5796        .with_authentication(&theScheme)?;
5797
5798        let theRequest =
5799            crate::v1_1_4::request::orgs_list_custom_roles::reqwest_blocking_request(theBuilder)?;
5800
5801        ::log::debug!("HTTP request: {:?}", &theRequest);
5802
5803        let theResponse = self.client.execute(theRequest)?;
5804
5805        ::log::debug!("HTTP response: {:?}", &theResponse);
5806
5807        Ok(theResponse)
5808    }
5809
5810    /// Get an organization
5811    /// 
5812    /// To see many of the organization response values, you need to be an authenticated organization owner with the `admin:org` scope. When the value of `two_factor_requirement_enabled` is `true`, the organization requires all members, billing managers, and outside collaborators to enable [two-factor authentication](https://docs.github.com/articles/securing-your-account-with-two-factor-authentication-2fa/).
5813    /// 
5814    /// GitHub Apps with the `Organization plan` permission can use this endpoint to retrieve information about an organization's GitHub plan. See "[Authenticating with GitHub Apps](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/)" for details. For an example response, see 'Response with GitHub plan information' below."
5815    /// 
5816    /// [API method documentation](https://docs.github.com/rest/reference/orgs#get-an-organization)
5817    pub fn orgs_get(
5818        &self,
5819        org: &str,
5820    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5821        let mut theScheme = AuthScheme::from(&self.config.authentication);
5822
5823        while let Some(auth_step) = theScheme.step()? {
5824            match auth_step {
5825                ::authentic::AuthenticationStep::Request(auth_request) => {
5826                    theScheme.respond(self.client.execute(auth_request));
5827                }
5828                ::authentic::AuthenticationStep::WaitFor(duration) => {
5829                    (self.sleep)(duration);
5830                }
5831            }
5832        }
5833        let theBuilder = crate::v1_1_4::request::orgs_get::reqwest_blocking_builder(
5834            self.config.base_url.as_ref(),
5835            org,
5836            self.config.user_agent.as_ref(),
5837            self.config.accept.as_deref(),
5838        )?
5839        .with_authentication(&theScheme)?;
5840
5841        let theRequest =
5842            crate::v1_1_4::request::orgs_get::reqwest_blocking_request(theBuilder)?;
5843
5844        ::log::debug!("HTTP request: {:?}", &theRequest);
5845
5846        let theResponse = self.client.execute(theRequest)?;
5847
5848        ::log::debug!("HTTP response: {:?}", &theResponse);
5849
5850        Ok(theResponse)
5851    }
5852
5853    /// Update an organization
5854    /// 
5855    /// **Parameter Deprecation Notice:** GitHub will replace and discontinue `members_allowed_repository_creation_type` in favor of more granular permissions. The new input parameters are `members_can_create_public_repositories`, `members_can_create_private_repositories` for all organizations and `members_can_create_internal_repositories` for organizations associated with an enterprise account using GitHub Enterprise Cloud or GitHub Enterprise Server 2.20+. For more information, see the [blog post](https://developer.github.com/changes/2019-12-03-internal-visibility-changes).
5856    /// 
5857    /// Enables an authenticated organization owner with the `admin:org` scope to update the organization's profile and member privileges.
5858    /// 
5859    /// [API method documentation](https://docs.github.com/rest/reference/orgs/#update-an-organization)
5860    ///
5861    /// # Content
5862    ///
5863    /// - [`&v1_1_4::request::orgs_update::body::Json`](crate::v1_1_4::request::orgs_update::body::Json)
5864    pub fn orgs_update<Content>(
5865        &self,
5866        org: &str,
5867        theContent: Content,
5868    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
5869    where
5870        Content: Copy + TryInto<crate::v1_1_4::request::orgs_update::Content<::reqwest::blocking::Body>>,
5871        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::orgs_update::Content<::reqwest::blocking::Body>>>::Error>
5872    {
5873        let mut theScheme = AuthScheme::from(&self.config.authentication);
5874
5875        while let Some(auth_step) = theScheme.step()? {
5876            match auth_step {
5877                ::authentic::AuthenticationStep::Request(auth_request) => {
5878                    theScheme.respond(self.client.execute(auth_request));
5879                }
5880                ::authentic::AuthenticationStep::WaitFor(duration) => {
5881                    (self.sleep)(duration);
5882                }
5883            }
5884        }
5885        let theBuilder = crate::v1_1_4::request::orgs_update::reqwest_blocking_builder(
5886            self.config.base_url.as_ref(),
5887            org,
5888            self.config.user_agent.as_ref(),
5889            self.config.accept.as_deref(),
5890        )?
5891        .with_authentication(&theScheme)?;
5892
5893        let theRequest = crate::v1_1_4::request::orgs_update::reqwest_blocking_request(
5894            theBuilder,
5895            theContent.try_into()?,
5896        )?;
5897
5898        ::log::debug!("HTTP request: {:?}", &theRequest);
5899
5900        let theResponse = self.client.execute(theRequest)?;
5901
5902        ::log::debug!("HTTP response: {:?}", &theResponse);
5903
5904        Ok(theResponse)
5905    }
5906
5907    /// Get GitHub Actions cache usage for an organization
5908    /// 
5909    /// Gets the total GitHub Actions cache usage for an organization.
5910    /// The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.
5911    /// You must authenticate using an access token with the `read:org` scope to use this endpoint. GitHub Apps must have the `organization_admistration:read` permission to use this endpoint.
5912    /// 
5913    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-github-actions-cache-usage-for-an-organization)
5914    pub fn actions_get_actions_cache_usage_for_org(
5915        &self,
5916        org: &str,
5917    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5918        let mut theScheme = AuthScheme::from(&self.config.authentication);
5919
5920        while let Some(auth_step) = theScheme.step()? {
5921            match auth_step {
5922                ::authentic::AuthenticationStep::Request(auth_request) => {
5923                    theScheme.respond(self.client.execute(auth_request));
5924                }
5925                ::authentic::AuthenticationStep::WaitFor(duration) => {
5926                    (self.sleep)(duration);
5927                }
5928            }
5929        }
5930        let theBuilder = crate::v1_1_4::request::actions_get_actions_cache_usage_for_org::reqwest_blocking_builder(
5931            self.config.base_url.as_ref(),
5932            org,
5933            self.config.user_agent.as_ref(),
5934            self.config.accept.as_deref(),
5935        )?
5936        .with_authentication(&theScheme)?;
5937
5938        let theRequest =
5939            crate::v1_1_4::request::actions_get_actions_cache_usage_for_org::reqwest_blocking_request(theBuilder)?;
5940
5941        ::log::debug!("HTTP request: {:?}", &theRequest);
5942
5943        let theResponse = self.client.execute(theRequest)?;
5944
5945        ::log::debug!("HTTP response: {:?}", &theResponse);
5946
5947        Ok(theResponse)
5948    }
5949
5950    /// List repositories with GitHub Actions cache usage for an organization
5951    /// 
5952    /// Lists repositories and their GitHub Actions cache usage for an organization.
5953    /// The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.
5954    /// You must authenticate using an access token with the `read:org` scope to use this endpoint. GitHub Apps must have the `organization_admistration:read` permission to use this endpoint.
5955    /// 
5956    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-repositories-with-github-actions-cache-usage-for-an-organization)
5957    pub fn actions_get_actions_cache_usage_by_repo_for_org(
5958        &self,
5959        org: &str,
5960        per_page: ::std::option::Option<i64>,
5961        page: ::std::option::Option<i64>,
5962    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
5963        let mut theScheme = AuthScheme::from(&self.config.authentication);
5964
5965        while let Some(auth_step) = theScheme.step()? {
5966            match auth_step {
5967                ::authentic::AuthenticationStep::Request(auth_request) => {
5968                    theScheme.respond(self.client.execute(auth_request));
5969                }
5970                ::authentic::AuthenticationStep::WaitFor(duration) => {
5971                    (self.sleep)(duration);
5972                }
5973            }
5974        }
5975        let theBuilder = crate::v1_1_4::request::actions_get_actions_cache_usage_by_repo_for_org::reqwest_blocking_builder(
5976            self.config.base_url.as_ref(),
5977            org,
5978            per_page,
5979            page,
5980            self.config.user_agent.as_ref(),
5981            self.config.accept.as_deref(),
5982        )?
5983        .with_authentication(&theScheme)?;
5984
5985        let theRequest =
5986            crate::v1_1_4::request::actions_get_actions_cache_usage_by_repo_for_org::reqwest_blocking_request(theBuilder)?;
5987
5988        ::log::debug!("HTTP request: {:?}", &theRequest);
5989
5990        let theResponse = self.client.execute(theRequest)?;
5991
5992        ::log::debug!("HTTP response: {:?}", &theResponse);
5993
5994        Ok(theResponse)
5995    }
5996
5997    /// Get GitHub Actions permissions for an organization
5998    /// 
5999    /// Gets the GitHub Actions permissions policy for repositories and allowed actions and reusable workflows in an organization.
6000    /// 
6001    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6002    /// 
6003    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-github-actions-permissions-for-an-organization)
6004    pub fn actions_get_github_actions_permissions_organization(
6005        &self,
6006        org: &str,
6007    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6008        let mut theScheme = AuthScheme::from(&self.config.authentication);
6009
6010        while let Some(auth_step) = theScheme.step()? {
6011            match auth_step {
6012                ::authentic::AuthenticationStep::Request(auth_request) => {
6013                    theScheme.respond(self.client.execute(auth_request));
6014                }
6015                ::authentic::AuthenticationStep::WaitFor(duration) => {
6016                    (self.sleep)(duration);
6017                }
6018            }
6019        }
6020        let theBuilder = crate::v1_1_4::request::actions_get_github_actions_permissions_organization::reqwest_blocking_builder(
6021            self.config.base_url.as_ref(),
6022            org,
6023            self.config.user_agent.as_ref(),
6024            self.config.accept.as_deref(),
6025        )?
6026        .with_authentication(&theScheme)?;
6027
6028        let theRequest =
6029            crate::v1_1_4::request::actions_get_github_actions_permissions_organization::reqwest_blocking_request(theBuilder)?;
6030
6031        ::log::debug!("HTTP request: {:?}", &theRequest);
6032
6033        let theResponse = self.client.execute(theRequest)?;
6034
6035        ::log::debug!("HTTP response: {:?}", &theResponse);
6036
6037        Ok(theResponse)
6038    }
6039
6040    /// Set GitHub Actions permissions for an organization
6041    /// 
6042    /// Sets the GitHub Actions permissions policy for repositories and allowed actions and reusable workflows in an organization.
6043    /// 
6044    /// If the organization belongs to an enterprise that has set restrictive permissions at the enterprise level, such as `allowed_actions` to `selected` actions and reusable workflows, then you cannot override them for the organization.
6045    /// 
6046    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6047    /// 
6048    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-github-actions-permissions-for-an-organization)
6049    ///
6050    /// # Content
6051    ///
6052    /// - [`&v1_1_4::request::actions_set_github_actions_permissions_organization::body::Json`](crate::v1_1_4::request::actions_set_github_actions_permissions_organization::body::Json)
6053    pub fn actions_set_github_actions_permissions_organization<Content>(
6054        &self,
6055        org: &str,
6056        theContent: Content,
6057    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
6058    where
6059        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_github_actions_permissions_organization::Content<::reqwest::blocking::Body>>,
6060        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_github_actions_permissions_organization::Content<::reqwest::blocking::Body>>>::Error>
6061    {
6062        let mut theScheme = AuthScheme::from(&self.config.authentication);
6063
6064        while let Some(auth_step) = theScheme.step()? {
6065            match auth_step {
6066                ::authentic::AuthenticationStep::Request(auth_request) => {
6067                    theScheme.respond(self.client.execute(auth_request));
6068                }
6069                ::authentic::AuthenticationStep::WaitFor(duration) => {
6070                    (self.sleep)(duration);
6071                }
6072            }
6073        }
6074        let theBuilder = crate::v1_1_4::request::actions_set_github_actions_permissions_organization::reqwest_blocking_builder(
6075            self.config.base_url.as_ref(),
6076            org,
6077            self.config.user_agent.as_ref(),
6078            self.config.accept.as_deref(),
6079        )?
6080        .with_authentication(&theScheme)?;
6081
6082        let theRequest = crate::v1_1_4::request::actions_set_github_actions_permissions_organization::reqwest_blocking_request(
6083            theBuilder,
6084            theContent.try_into()?,
6085        )?;
6086
6087        ::log::debug!("HTTP request: {:?}", &theRequest);
6088
6089        let theResponse = self.client.execute(theRequest)?;
6090
6091        ::log::debug!("HTTP response: {:?}", &theResponse);
6092
6093        Ok(theResponse)
6094    }
6095
6096    /// List selected repositories enabled for GitHub Actions in an organization
6097    /// 
6098    /// Lists the selected repositories that are enabled for GitHub Actions in an organization. To use this endpoint, the organization permission policy for `enabled_repositories` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an organization](#set-github-actions-permissions-for-an-organization)."
6099    /// 
6100    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6101    /// 
6102    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-selected-repositories-enabled-for-github-actions-in-an-organization)
6103    pub fn actions_list_selected_repositories_enabled_github_actions_organization(
6104        &self,
6105        org: &str,
6106        per_page: ::std::option::Option<i64>,
6107        page: ::std::option::Option<i64>,
6108    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6109        let mut theScheme = AuthScheme::from(&self.config.authentication);
6110
6111        while let Some(auth_step) = theScheme.step()? {
6112            match auth_step {
6113                ::authentic::AuthenticationStep::Request(auth_request) => {
6114                    theScheme.respond(self.client.execute(auth_request));
6115                }
6116                ::authentic::AuthenticationStep::WaitFor(duration) => {
6117                    (self.sleep)(duration);
6118                }
6119            }
6120        }
6121        let theBuilder = crate::v1_1_4::request::actions_list_selected_repositories_enabled_github_actions_organization::reqwest_blocking_builder(
6122            self.config.base_url.as_ref(),
6123            org,
6124            per_page,
6125            page,
6126            self.config.user_agent.as_ref(),
6127            self.config.accept.as_deref(),
6128        )?
6129        .with_authentication(&theScheme)?;
6130
6131        let theRequest =
6132            crate::v1_1_4::request::actions_list_selected_repositories_enabled_github_actions_organization::reqwest_blocking_request(theBuilder)?;
6133
6134        ::log::debug!("HTTP request: {:?}", &theRequest);
6135
6136        let theResponse = self.client.execute(theRequest)?;
6137
6138        ::log::debug!("HTTP response: {:?}", &theResponse);
6139
6140        Ok(theResponse)
6141    }
6142
6143    /// Set selected repositories enabled for GitHub Actions in an organization
6144    /// 
6145    /// Replaces the list of selected repositories that are enabled for GitHub Actions in an organization. To use this endpoint, the organization permission policy for `enabled_repositories` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an organization](#set-github-actions-permissions-for-an-organization)."
6146    /// 
6147    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6148    /// 
6149    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-selected-repositories-enabled-for-github-actions-in-an-organization)
6150    ///
6151    /// # Content
6152    ///
6153    /// - [`&v1_1_4::request::actions_set_selected_repositories_enabled_github_actions_organization::body::Json`](crate::v1_1_4::request::actions_set_selected_repositories_enabled_github_actions_organization::body::Json)
6154    pub fn actions_set_selected_repositories_enabled_github_actions_organization<Content>(
6155        &self,
6156        org: &str,
6157        theContent: Content,
6158    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
6159    where
6160        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_selected_repositories_enabled_github_actions_organization::Content<::reqwest::blocking::Body>>,
6161        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_selected_repositories_enabled_github_actions_organization::Content<::reqwest::blocking::Body>>>::Error>
6162    {
6163        let mut theScheme = AuthScheme::from(&self.config.authentication);
6164
6165        while let Some(auth_step) = theScheme.step()? {
6166            match auth_step {
6167                ::authentic::AuthenticationStep::Request(auth_request) => {
6168                    theScheme.respond(self.client.execute(auth_request));
6169                }
6170                ::authentic::AuthenticationStep::WaitFor(duration) => {
6171                    (self.sleep)(duration);
6172                }
6173            }
6174        }
6175        let theBuilder = crate::v1_1_4::request::actions_set_selected_repositories_enabled_github_actions_organization::reqwest_blocking_builder(
6176            self.config.base_url.as_ref(),
6177            org,
6178            self.config.user_agent.as_ref(),
6179            self.config.accept.as_deref(),
6180        )?
6181        .with_authentication(&theScheme)?;
6182
6183        let theRequest = crate::v1_1_4::request::actions_set_selected_repositories_enabled_github_actions_organization::reqwest_blocking_request(
6184            theBuilder,
6185            theContent.try_into()?,
6186        )?;
6187
6188        ::log::debug!("HTTP request: {:?}", &theRequest);
6189
6190        let theResponse = self.client.execute(theRequest)?;
6191
6192        ::log::debug!("HTTP response: {:?}", &theResponse);
6193
6194        Ok(theResponse)
6195    }
6196
6197    /// Enable a selected repository for GitHub Actions in an organization
6198    /// 
6199    /// Adds a repository to the list of selected repositories that are enabled for GitHub Actions in an organization. To use this endpoint, the organization permission policy for `enabled_repositories` must be must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an organization](#set-github-actions-permissions-for-an-organization)."
6200    /// 
6201    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6202    /// 
6203    /// [API method documentation](https://docs.github.com/rest/reference/actions#enable-a-selected-repository-for-github-actions-in-an-organization)
6204    pub fn actions_enable_selected_repository_github_actions_organization(
6205        &self,
6206        org: &str,
6207        repository_id: i64,
6208    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6209        let mut theScheme = AuthScheme::from(&self.config.authentication);
6210
6211        while let Some(auth_step) = theScheme.step()? {
6212            match auth_step {
6213                ::authentic::AuthenticationStep::Request(auth_request) => {
6214                    theScheme.respond(self.client.execute(auth_request));
6215                }
6216                ::authentic::AuthenticationStep::WaitFor(duration) => {
6217                    (self.sleep)(duration);
6218                }
6219            }
6220        }
6221        let theBuilder = crate::v1_1_4::request::actions_enable_selected_repository_github_actions_organization::reqwest_blocking_builder(
6222            self.config.base_url.as_ref(),
6223            org,
6224            repository_id,
6225            self.config.user_agent.as_ref(),
6226            self.config.accept.as_deref(),
6227        )?
6228        .with_authentication(&theScheme)?;
6229
6230        let theRequest =
6231            crate::v1_1_4::request::actions_enable_selected_repository_github_actions_organization::reqwest_blocking_request(theBuilder)?;
6232
6233        ::log::debug!("HTTP request: {:?}", &theRequest);
6234
6235        let theResponse = self.client.execute(theRequest)?;
6236
6237        ::log::debug!("HTTP response: {:?}", &theResponse);
6238
6239        Ok(theResponse)
6240    }
6241
6242    /// Disable a selected repository for GitHub Actions in an organization
6243    /// 
6244    /// Removes a repository from the list of selected repositories that are enabled for GitHub Actions in an organization. To use this endpoint, the organization permission policy for `enabled_repositories` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an organization](#set-github-actions-permissions-for-an-organization)."
6245    /// 
6246    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6247    /// 
6248    /// [API method documentation](https://docs.github.com/rest/reference/actions#disable-a-selected-repository-for-github-actions-in-an-organization)
6249    pub fn actions_disable_selected_repository_github_actions_organization(
6250        &self,
6251        org: &str,
6252        repository_id: i64,
6253    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6254        let mut theScheme = AuthScheme::from(&self.config.authentication);
6255
6256        while let Some(auth_step) = theScheme.step()? {
6257            match auth_step {
6258                ::authentic::AuthenticationStep::Request(auth_request) => {
6259                    theScheme.respond(self.client.execute(auth_request));
6260                }
6261                ::authentic::AuthenticationStep::WaitFor(duration) => {
6262                    (self.sleep)(duration);
6263                }
6264            }
6265        }
6266        let theBuilder = crate::v1_1_4::request::actions_disable_selected_repository_github_actions_organization::reqwest_blocking_builder(
6267            self.config.base_url.as_ref(),
6268            org,
6269            repository_id,
6270            self.config.user_agent.as_ref(),
6271            self.config.accept.as_deref(),
6272        )?
6273        .with_authentication(&theScheme)?;
6274
6275        let theRequest =
6276            crate::v1_1_4::request::actions_disable_selected_repository_github_actions_organization::reqwest_blocking_request(theBuilder)?;
6277
6278        ::log::debug!("HTTP request: {:?}", &theRequest);
6279
6280        let theResponse = self.client.execute(theRequest)?;
6281
6282        ::log::debug!("HTTP response: {:?}", &theResponse);
6283
6284        Ok(theResponse)
6285    }
6286
6287    /// Get allowed actions and reusable workflows for an organization
6288    /// 
6289    /// Gets the selected actions and reusable workflows that are allowed in an organization. To use this endpoint, the organization permission policy for `allowed_actions` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an organization](#set-github-actions-permissions-for-an-organization).""
6290    /// 
6291    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6292    /// 
6293    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-allowed-actions-for-an-organization)
6294    pub fn actions_get_allowed_actions_organization(
6295        &self,
6296        org: &str,
6297    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6298        let mut theScheme = AuthScheme::from(&self.config.authentication);
6299
6300        while let Some(auth_step) = theScheme.step()? {
6301            match auth_step {
6302                ::authentic::AuthenticationStep::Request(auth_request) => {
6303                    theScheme.respond(self.client.execute(auth_request));
6304                }
6305                ::authentic::AuthenticationStep::WaitFor(duration) => {
6306                    (self.sleep)(duration);
6307                }
6308            }
6309        }
6310        let theBuilder = crate::v1_1_4::request::actions_get_allowed_actions_organization::reqwest_blocking_builder(
6311            self.config.base_url.as_ref(),
6312            org,
6313            self.config.user_agent.as_ref(),
6314            self.config.accept.as_deref(),
6315        )?
6316        .with_authentication(&theScheme)?;
6317
6318        let theRequest =
6319            crate::v1_1_4::request::actions_get_allowed_actions_organization::reqwest_blocking_request(theBuilder)?;
6320
6321        ::log::debug!("HTTP request: {:?}", &theRequest);
6322
6323        let theResponse = self.client.execute(theRequest)?;
6324
6325        ::log::debug!("HTTP response: {:?}", &theResponse);
6326
6327        Ok(theResponse)
6328    }
6329
6330    /// Set allowed actions and reusable workflows for an organization
6331    /// 
6332    /// Sets the actions and reusable workflows that are allowed in an organization. To use this endpoint, the organization permission policy for `allowed_actions` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for an organization](#set-github-actions-permissions-for-an-organization)."
6333    /// 
6334    /// If the organization belongs to an enterprise that has `selected` actions and reusable workflows set at the enterprise level, then you cannot override any of the enterprise's allowed actions and reusable workflows settings.
6335    /// 
6336    /// To use the `patterns_allowed` setting for private repositories, the organization must belong to an enterprise. If the organization does not belong to an enterprise, then the `patterns_allowed` setting only applies to public repositories in the organization.
6337    /// 
6338    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6339    /// 
6340    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-allowed-actions-for-an-organization)
6341    ///
6342    /// # Content
6343    ///
6344    /// - [`&v1_1_4::schema::SelectedActions`](crate::v1_1_4::schema::SelectedActions)
6345    pub fn actions_set_allowed_actions_organization<Content>(
6346        &self,
6347        org: &str,
6348        theContent: Content,
6349    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
6350    where
6351        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_allowed_actions_organization::Content<::reqwest::blocking::Body>>,
6352        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_allowed_actions_organization::Content<::reqwest::blocking::Body>>>::Error>
6353    {
6354        let mut theScheme = AuthScheme::from(&self.config.authentication);
6355
6356        while let Some(auth_step) = theScheme.step()? {
6357            match auth_step {
6358                ::authentic::AuthenticationStep::Request(auth_request) => {
6359                    theScheme.respond(self.client.execute(auth_request));
6360                }
6361                ::authentic::AuthenticationStep::WaitFor(duration) => {
6362                    (self.sleep)(duration);
6363                }
6364            }
6365        }
6366        let theBuilder = crate::v1_1_4::request::actions_set_allowed_actions_organization::reqwest_blocking_builder(
6367            self.config.base_url.as_ref(),
6368            org,
6369            self.config.user_agent.as_ref(),
6370            self.config.accept.as_deref(),
6371        )?
6372        .with_authentication(&theScheme)?;
6373
6374        let theRequest = crate::v1_1_4::request::actions_set_allowed_actions_organization::reqwest_blocking_request(
6375            theBuilder,
6376            theContent.try_into()?,
6377        )?;
6378
6379        ::log::debug!("HTTP request: {:?}", &theRequest);
6380
6381        let theResponse = self.client.execute(theRequest)?;
6382
6383        ::log::debug!("HTTP response: {:?}", &theResponse);
6384
6385        Ok(theResponse)
6386    }
6387
6388    /// Get default workflow permissions for an organization
6389    /// 
6390    /// Gets the default workflow permissions granted to the `GITHUB_TOKEN` when running workflows in an organization,
6391    /// as well as whether GitHub Actions can submit approving pull request reviews. For more information, see
6392    /// "[Setting the permissions of the GITHUB_TOKEN for your organization](https://docs.github.com/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#setting-the-permissions-of-the-github_token-for-your-organization)."
6393    /// 
6394    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6395    /// 
6396    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-default-workflow-permissions)
6397    pub fn actions_get_github_actions_default_workflow_permissions_organization(
6398        &self,
6399        org: &str,
6400    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6401        let mut theScheme = AuthScheme::from(&self.config.authentication);
6402
6403        while let Some(auth_step) = theScheme.step()? {
6404            match auth_step {
6405                ::authentic::AuthenticationStep::Request(auth_request) => {
6406                    theScheme.respond(self.client.execute(auth_request));
6407                }
6408                ::authentic::AuthenticationStep::WaitFor(duration) => {
6409                    (self.sleep)(duration);
6410                }
6411            }
6412        }
6413        let theBuilder = crate::v1_1_4::request::actions_get_github_actions_default_workflow_permissions_organization::reqwest_blocking_builder(
6414            self.config.base_url.as_ref(),
6415            org,
6416            self.config.user_agent.as_ref(),
6417            self.config.accept.as_deref(),
6418        )?
6419        .with_authentication(&theScheme)?;
6420
6421        let theRequest =
6422            crate::v1_1_4::request::actions_get_github_actions_default_workflow_permissions_organization::reqwest_blocking_request(theBuilder)?;
6423
6424        ::log::debug!("HTTP request: {:?}", &theRequest);
6425
6426        let theResponse = self.client.execute(theRequest)?;
6427
6428        ::log::debug!("HTTP response: {:?}", &theResponse);
6429
6430        Ok(theResponse)
6431    }
6432
6433    /// Set default workflow permissions for an organization
6434    /// 
6435    /// Sets the default workflow permissions granted to the `GITHUB_TOKEN` when running workflows in an organization, and sets if GitHub Actions
6436    /// can submit approving pull request reviews. For more information, see
6437    /// "[Setting the permissions of the GITHUB_TOKEN for your organization](https://docs.github.com/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#setting-the-permissions-of-the-github_token-for-your-organization)."
6438    /// 
6439    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `administration` organization permission to use this API.
6440    /// 
6441    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-default-workflow-permissions)
6442    ///
6443    /// # Content
6444    ///
6445    /// - [`&v1_1_4::schema::ActionsSetDefaultWorkflowPermissions`](crate::v1_1_4::schema::ActionsSetDefaultWorkflowPermissions)
6446    pub fn actions_set_github_actions_default_workflow_permissions_organization<Content>(
6447        &self,
6448        org: &str,
6449        theContent: Content,
6450    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
6451    where
6452        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_organization::Content<::reqwest::blocking::Body>>,
6453        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_organization::Content<::reqwest::blocking::Body>>>::Error>
6454    {
6455        let mut theScheme = AuthScheme::from(&self.config.authentication);
6456
6457        while let Some(auth_step) = theScheme.step()? {
6458            match auth_step {
6459                ::authentic::AuthenticationStep::Request(auth_request) => {
6460                    theScheme.respond(self.client.execute(auth_request));
6461                }
6462                ::authentic::AuthenticationStep::WaitFor(duration) => {
6463                    (self.sleep)(duration);
6464                }
6465            }
6466        }
6467        let theBuilder = crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_organization::reqwest_blocking_builder(
6468            self.config.base_url.as_ref(),
6469            org,
6470            self.config.user_agent.as_ref(),
6471            self.config.accept.as_deref(),
6472        )?
6473        .with_authentication(&theScheme)?;
6474
6475        let theRequest = crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_organization::reqwest_blocking_request(
6476            theBuilder,
6477            theContent.try_into()?,
6478        )?;
6479
6480        ::log::debug!("HTTP request: {:?}", &theRequest);
6481
6482        let theResponse = self.client.execute(theRequest)?;
6483
6484        ::log::debug!("HTTP response: {:?}", &theResponse);
6485
6486        Ok(theResponse)
6487    }
6488
6489    /// List self-hosted runner groups for an organization
6490    /// 
6491    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6492    /// 
6493    /// Lists all self-hosted runner groups configured in an organization and inherited from an enterprise.
6494    /// 
6495    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
6496    /// 
6497    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-self-hosted-runner-groups-for-an-organization)
6498    pub fn actions_list_self_hosted_runner_groups_for_org(
6499        &self,
6500        org: &str,
6501        per_page: ::std::option::Option<i64>,
6502        page: ::std::option::Option<i64>,
6503        visible_to_repository: ::std::option::Option<&str>,
6504    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6505        let mut theScheme = AuthScheme::from(&self.config.authentication);
6506
6507        while let Some(auth_step) = theScheme.step()? {
6508            match auth_step {
6509                ::authentic::AuthenticationStep::Request(auth_request) => {
6510                    theScheme.respond(self.client.execute(auth_request));
6511                }
6512                ::authentic::AuthenticationStep::WaitFor(duration) => {
6513                    (self.sleep)(duration);
6514                }
6515            }
6516        }
6517        let theBuilder = crate::v1_1_4::request::actions_list_self_hosted_runner_groups_for_org::reqwest_blocking_builder(
6518            self.config.base_url.as_ref(),
6519            org,
6520            per_page,
6521            page,
6522            visible_to_repository,
6523            self.config.user_agent.as_ref(),
6524            self.config.accept.as_deref(),
6525        )?
6526        .with_authentication(&theScheme)?;
6527
6528        let theRequest =
6529            crate::v1_1_4::request::actions_list_self_hosted_runner_groups_for_org::reqwest_blocking_request(theBuilder)?;
6530
6531        ::log::debug!("HTTP request: {:?}", &theRequest);
6532
6533        let theResponse = self.client.execute(theRequest)?;
6534
6535        ::log::debug!("HTTP response: {:?}", &theResponse);
6536
6537        Ok(theResponse)
6538    }
6539
6540    /// Create a self-hosted runner group for an organization
6541    /// 
6542    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud and GitHub Enterprise Server. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6543    /// 
6544    /// Creates a new self-hosted runner group for an organization.
6545    /// 
6546    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
6547    /// 
6548    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-a-self-hosted-runner-group-for-an-organization)
6549    ///
6550    /// # Content
6551    ///
6552    /// - [`&v1_1_4::request::actions_create_self_hosted_runner_group_for_org::body::Json`](crate::v1_1_4::request::actions_create_self_hosted_runner_group_for_org::body::Json)
6553    pub fn actions_create_self_hosted_runner_group_for_org<Content>(
6554        &self,
6555        org: &str,
6556        theContent: Content,
6557    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
6558    where
6559        Content: Copy + TryInto<crate::v1_1_4::request::actions_create_self_hosted_runner_group_for_org::Content<::reqwest::blocking::Body>>,
6560        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_create_self_hosted_runner_group_for_org::Content<::reqwest::blocking::Body>>>::Error>
6561    {
6562        let mut theScheme = AuthScheme::from(&self.config.authentication);
6563
6564        while let Some(auth_step) = theScheme.step()? {
6565            match auth_step {
6566                ::authentic::AuthenticationStep::Request(auth_request) => {
6567                    theScheme.respond(self.client.execute(auth_request));
6568                }
6569                ::authentic::AuthenticationStep::WaitFor(duration) => {
6570                    (self.sleep)(duration);
6571                }
6572            }
6573        }
6574        let theBuilder = crate::v1_1_4::request::actions_create_self_hosted_runner_group_for_org::reqwest_blocking_builder(
6575            self.config.base_url.as_ref(),
6576            org,
6577            self.config.user_agent.as_ref(),
6578            self.config.accept.as_deref(),
6579        )?
6580        .with_authentication(&theScheme)?;
6581
6582        let theRequest = crate::v1_1_4::request::actions_create_self_hosted_runner_group_for_org::reqwest_blocking_request(
6583            theBuilder,
6584            theContent.try_into()?,
6585        )?;
6586
6587        ::log::debug!("HTTP request: {:?}", &theRequest);
6588
6589        let theResponse = self.client.execute(theRequest)?;
6590
6591        ::log::debug!("HTTP response: {:?}", &theResponse);
6592
6593        Ok(theResponse)
6594    }
6595
6596    /// Get a self-hosted runner group for an organization
6597    /// 
6598    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6599    /// 
6600    /// Gets a specific self-hosted runner group for an organization.
6601    /// 
6602    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
6603    /// 
6604    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-self-hosted-runner-group-for-an-organization)
6605    pub fn actions_get_self_hosted_runner_group_for_org(
6606        &self,
6607        org: &str,
6608        runner_group_id: i64,
6609    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6610        let mut theScheme = AuthScheme::from(&self.config.authentication);
6611
6612        while let Some(auth_step) = theScheme.step()? {
6613            match auth_step {
6614                ::authentic::AuthenticationStep::Request(auth_request) => {
6615                    theScheme.respond(self.client.execute(auth_request));
6616                }
6617                ::authentic::AuthenticationStep::WaitFor(duration) => {
6618                    (self.sleep)(duration);
6619                }
6620            }
6621        }
6622        let theBuilder = crate::v1_1_4::request::actions_get_self_hosted_runner_group_for_org::reqwest_blocking_builder(
6623            self.config.base_url.as_ref(),
6624            org,
6625            runner_group_id,
6626            self.config.user_agent.as_ref(),
6627            self.config.accept.as_deref(),
6628        )?
6629        .with_authentication(&theScheme)?;
6630
6631        let theRequest =
6632            crate::v1_1_4::request::actions_get_self_hosted_runner_group_for_org::reqwest_blocking_request(theBuilder)?;
6633
6634        ::log::debug!("HTTP request: {:?}", &theRequest);
6635
6636        let theResponse = self.client.execute(theRequest)?;
6637
6638        ::log::debug!("HTTP response: {:?}", &theResponse);
6639
6640        Ok(theResponse)
6641    }
6642
6643    /// Delete a self-hosted runner group from an organization
6644    /// 
6645    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6646    /// 
6647    /// Deletes a self-hosted runner group for an organization.
6648    /// 
6649    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
6650    /// 
6651    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-a-self-hosted-runner-group-from-an-organization)
6652    pub fn actions_delete_self_hosted_runner_group_from_org(
6653        &self,
6654        org: &str,
6655        runner_group_id: i64,
6656    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6657        let mut theScheme = AuthScheme::from(&self.config.authentication);
6658
6659        while let Some(auth_step) = theScheme.step()? {
6660            match auth_step {
6661                ::authentic::AuthenticationStep::Request(auth_request) => {
6662                    theScheme.respond(self.client.execute(auth_request));
6663                }
6664                ::authentic::AuthenticationStep::WaitFor(duration) => {
6665                    (self.sleep)(duration);
6666                }
6667            }
6668        }
6669        let theBuilder = crate::v1_1_4::request::actions_delete_self_hosted_runner_group_from_org::reqwest_blocking_builder(
6670            self.config.base_url.as_ref(),
6671            org,
6672            runner_group_id,
6673            self.config.user_agent.as_ref(),
6674            self.config.accept.as_deref(),
6675        )?
6676        .with_authentication(&theScheme)?;
6677
6678        let theRequest =
6679            crate::v1_1_4::request::actions_delete_self_hosted_runner_group_from_org::reqwest_blocking_request(theBuilder)?;
6680
6681        ::log::debug!("HTTP request: {:?}", &theRequest);
6682
6683        let theResponse = self.client.execute(theRequest)?;
6684
6685        ::log::debug!("HTTP response: {:?}", &theResponse);
6686
6687        Ok(theResponse)
6688    }
6689
6690    /// Update a self-hosted runner group for an organization
6691    /// 
6692    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6693    /// 
6694    /// Updates the `name` and `visibility` of a self-hosted runner group in an organization.
6695    /// 
6696    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
6697    /// 
6698    /// [API method documentation](https://docs.github.com/rest/reference/actions#update-a-self-hosted-runner-group-for-an-organization)
6699    ///
6700    /// # Content
6701    ///
6702    /// - [`&v1_1_4::request::actions_update_self_hosted_runner_group_for_org::body::Json`](crate::v1_1_4::request::actions_update_self_hosted_runner_group_for_org::body::Json)
6703    pub fn actions_update_self_hosted_runner_group_for_org<Content>(
6704        &self,
6705        org: &str,
6706        runner_group_id: i64,
6707        theContent: Content,
6708    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
6709    where
6710        Content: Copy + TryInto<crate::v1_1_4::request::actions_update_self_hosted_runner_group_for_org::Content<::reqwest::blocking::Body>>,
6711        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_update_self_hosted_runner_group_for_org::Content<::reqwest::blocking::Body>>>::Error>
6712    {
6713        let mut theScheme = AuthScheme::from(&self.config.authentication);
6714
6715        while let Some(auth_step) = theScheme.step()? {
6716            match auth_step {
6717                ::authentic::AuthenticationStep::Request(auth_request) => {
6718                    theScheme.respond(self.client.execute(auth_request));
6719                }
6720                ::authentic::AuthenticationStep::WaitFor(duration) => {
6721                    (self.sleep)(duration);
6722                }
6723            }
6724        }
6725        let theBuilder = crate::v1_1_4::request::actions_update_self_hosted_runner_group_for_org::reqwest_blocking_builder(
6726            self.config.base_url.as_ref(),
6727            org,
6728            runner_group_id,
6729            self.config.user_agent.as_ref(),
6730            self.config.accept.as_deref(),
6731        )?
6732        .with_authentication(&theScheme)?;
6733
6734        let theRequest = crate::v1_1_4::request::actions_update_self_hosted_runner_group_for_org::reqwest_blocking_request(
6735            theBuilder,
6736            theContent.try_into()?,
6737        )?;
6738
6739        ::log::debug!("HTTP request: {:?}", &theRequest);
6740
6741        let theResponse = self.client.execute(theRequest)?;
6742
6743        ::log::debug!("HTTP response: {:?}", &theResponse);
6744
6745        Ok(theResponse)
6746    }
6747
6748    /// List repository access to a self-hosted runner group in an organization
6749    /// 
6750    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud and GitHub Enterprise Server. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6751    /// 
6752    /// Lists the repositories with access to a self-hosted runner group configured in an organization.
6753    /// 
6754    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
6755    /// 
6756    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-repository-access-to-a-self-hosted-runner-group-in-an-organization)
6757    pub fn actions_list_repo_access_to_self_hosted_runner_group_in_org(
6758        &self,
6759        org: &str,
6760        runner_group_id: i64,
6761        page: ::std::option::Option<i64>,
6762        per_page: ::std::option::Option<i64>,
6763    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6764        let mut theScheme = AuthScheme::from(&self.config.authentication);
6765
6766        while let Some(auth_step) = theScheme.step()? {
6767            match auth_step {
6768                ::authentic::AuthenticationStep::Request(auth_request) => {
6769                    theScheme.respond(self.client.execute(auth_request));
6770                }
6771                ::authentic::AuthenticationStep::WaitFor(duration) => {
6772                    (self.sleep)(duration);
6773                }
6774            }
6775        }
6776        let theBuilder = crate::v1_1_4::request::actions_list_repo_access_to_self_hosted_runner_group_in_org::reqwest_blocking_builder(
6777            self.config.base_url.as_ref(),
6778            org,
6779            runner_group_id,
6780            page,
6781            per_page,
6782            self.config.user_agent.as_ref(),
6783            self.config.accept.as_deref(),
6784        )?
6785        .with_authentication(&theScheme)?;
6786
6787        let theRequest =
6788            crate::v1_1_4::request::actions_list_repo_access_to_self_hosted_runner_group_in_org::reqwest_blocking_request(theBuilder)?;
6789
6790        ::log::debug!("HTTP request: {:?}", &theRequest);
6791
6792        let theResponse = self.client.execute(theRequest)?;
6793
6794        ::log::debug!("HTTP response: {:?}", &theResponse);
6795
6796        Ok(theResponse)
6797    }
6798
6799    /// Set repository access for a self-hosted runner group in an organization
6800    /// 
6801    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6802    /// 
6803    /// Replaces the list of repositories that have access to a self-hosted runner group configured in an organization.
6804    /// 
6805    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
6806    /// 
6807    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-repository-access-to-a-self-hosted-runner-group-in-an-organization)
6808    ///
6809    /// # Content
6810    ///
6811    /// - [`&v1_1_4::request::actions_set_repo_access_to_self_hosted_runner_group_in_org::body::Json`](crate::v1_1_4::request::actions_set_repo_access_to_self_hosted_runner_group_in_org::body::Json)
6812    pub fn actions_set_repo_access_to_self_hosted_runner_group_in_org<Content>(
6813        &self,
6814        org: &str,
6815        runner_group_id: i64,
6816        theContent: Content,
6817    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
6818    where
6819        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_repo_access_to_self_hosted_runner_group_in_org::Content<::reqwest::blocking::Body>>,
6820        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_repo_access_to_self_hosted_runner_group_in_org::Content<::reqwest::blocking::Body>>>::Error>
6821    {
6822        let mut theScheme = AuthScheme::from(&self.config.authentication);
6823
6824        while let Some(auth_step) = theScheme.step()? {
6825            match auth_step {
6826                ::authentic::AuthenticationStep::Request(auth_request) => {
6827                    theScheme.respond(self.client.execute(auth_request));
6828                }
6829                ::authentic::AuthenticationStep::WaitFor(duration) => {
6830                    (self.sleep)(duration);
6831                }
6832            }
6833        }
6834        let theBuilder = crate::v1_1_4::request::actions_set_repo_access_to_self_hosted_runner_group_in_org::reqwest_blocking_builder(
6835            self.config.base_url.as_ref(),
6836            org,
6837            runner_group_id,
6838            self.config.user_agent.as_ref(),
6839            self.config.accept.as_deref(),
6840        )?
6841        .with_authentication(&theScheme)?;
6842
6843        let theRequest = crate::v1_1_4::request::actions_set_repo_access_to_self_hosted_runner_group_in_org::reqwest_blocking_request(
6844            theBuilder,
6845            theContent.try_into()?,
6846        )?;
6847
6848        ::log::debug!("HTTP request: {:?}", &theRequest);
6849
6850        let theResponse = self.client.execute(theRequest)?;
6851
6852        ::log::debug!("HTTP response: {:?}", &theResponse);
6853
6854        Ok(theResponse)
6855    }
6856
6857    /// Add repository access to a self-hosted runner group in an organization
6858    /// 
6859    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6860    /// 
6861    /// 
6862    /// Adds a repository to the list of selected repositories that can access a self-hosted runner group. The runner group must have `visibility` set to `selected`. For more information, see "[Create a self-hosted runner group for an organization](#create-a-self-hosted-runner-group-for-an-organization)."
6863    /// 
6864    /// You must authenticate using an access token with the `admin:org`
6865    /// scope to use this endpoint.
6866    /// 
6867    /// [API method documentation](https://docs.github.com/rest/reference/actions#add-repository-acess-to-a-self-hosted-runner-group-in-an-organization)
6868    pub fn actions_add_repo_access_to_self_hosted_runner_group_in_org(
6869        &self,
6870        org: &str,
6871        runner_group_id: i64,
6872        repository_id: i64,
6873    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6874        let mut theScheme = AuthScheme::from(&self.config.authentication);
6875
6876        while let Some(auth_step) = theScheme.step()? {
6877            match auth_step {
6878                ::authentic::AuthenticationStep::Request(auth_request) => {
6879                    theScheme.respond(self.client.execute(auth_request));
6880                }
6881                ::authentic::AuthenticationStep::WaitFor(duration) => {
6882                    (self.sleep)(duration);
6883                }
6884            }
6885        }
6886        let theBuilder = crate::v1_1_4::request::actions_add_repo_access_to_self_hosted_runner_group_in_org::reqwest_blocking_builder(
6887            self.config.base_url.as_ref(),
6888            org,
6889            runner_group_id,
6890            repository_id,
6891            self.config.user_agent.as_ref(),
6892            self.config.accept.as_deref(),
6893        )?
6894        .with_authentication(&theScheme)?;
6895
6896        let theRequest =
6897            crate::v1_1_4::request::actions_add_repo_access_to_self_hosted_runner_group_in_org::reqwest_blocking_request(theBuilder)?;
6898
6899        ::log::debug!("HTTP request: {:?}", &theRequest);
6900
6901        let theResponse = self.client.execute(theRequest)?;
6902
6903        ::log::debug!("HTTP response: {:?}", &theResponse);
6904
6905        Ok(theResponse)
6906    }
6907
6908    /// Remove repository access to a self-hosted runner group in an organization
6909    /// 
6910    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6911    /// 
6912    /// 
6913    /// Removes a repository from the list of selected repositories that can access a self-hosted runner group. The runner group must have `visibility` set to `selected`. For more information, see "[Create a self-hosted runner group for an organization](#create-a-self-hosted-runner-group-for-an-organization)."
6914    /// 
6915    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
6916    /// 
6917    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-repository-access-to-a-self-hosted-runner-group-in-an-organization)
6918    pub fn actions_remove_repo_access_to_self_hosted_runner_group_in_org(
6919        &self,
6920        org: &str,
6921        runner_group_id: i64,
6922        repository_id: i64,
6923    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6924        let mut theScheme = AuthScheme::from(&self.config.authentication);
6925
6926        while let Some(auth_step) = theScheme.step()? {
6927            match auth_step {
6928                ::authentic::AuthenticationStep::Request(auth_request) => {
6929                    theScheme.respond(self.client.execute(auth_request));
6930                }
6931                ::authentic::AuthenticationStep::WaitFor(duration) => {
6932                    (self.sleep)(duration);
6933                }
6934            }
6935        }
6936        let theBuilder = crate::v1_1_4::request::actions_remove_repo_access_to_self_hosted_runner_group_in_org::reqwest_blocking_builder(
6937            self.config.base_url.as_ref(),
6938            org,
6939            runner_group_id,
6940            repository_id,
6941            self.config.user_agent.as_ref(),
6942            self.config.accept.as_deref(),
6943        )?
6944        .with_authentication(&theScheme)?;
6945
6946        let theRequest =
6947            crate::v1_1_4::request::actions_remove_repo_access_to_self_hosted_runner_group_in_org::reqwest_blocking_request(theBuilder)?;
6948
6949        ::log::debug!("HTTP request: {:?}", &theRequest);
6950
6951        let theResponse = self.client.execute(theRequest)?;
6952
6953        ::log::debug!("HTTP response: {:?}", &theResponse);
6954
6955        Ok(theResponse)
6956    }
6957
6958    /// List self-hosted runners in a group for an organization
6959    /// 
6960    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
6961    /// 
6962    /// Lists self-hosted runners that are in a specific organization group.
6963    /// 
6964    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
6965    /// 
6966    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-self-hosted-runners-in-a-group-for-an-organization)
6967    pub fn actions_list_self_hosted_runners_in_group_for_org(
6968        &self,
6969        org: &str,
6970        runner_group_id: i64,
6971        per_page: ::std::option::Option<i64>,
6972        page: ::std::option::Option<i64>,
6973    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
6974        let mut theScheme = AuthScheme::from(&self.config.authentication);
6975
6976        while let Some(auth_step) = theScheme.step()? {
6977            match auth_step {
6978                ::authentic::AuthenticationStep::Request(auth_request) => {
6979                    theScheme.respond(self.client.execute(auth_request));
6980                }
6981                ::authentic::AuthenticationStep::WaitFor(duration) => {
6982                    (self.sleep)(duration);
6983                }
6984            }
6985        }
6986        let theBuilder = crate::v1_1_4::request::actions_list_self_hosted_runners_in_group_for_org::reqwest_blocking_builder(
6987            self.config.base_url.as_ref(),
6988            org,
6989            runner_group_id,
6990            per_page,
6991            page,
6992            self.config.user_agent.as_ref(),
6993            self.config.accept.as_deref(),
6994        )?
6995        .with_authentication(&theScheme)?;
6996
6997        let theRequest =
6998            crate::v1_1_4::request::actions_list_self_hosted_runners_in_group_for_org::reqwest_blocking_request(theBuilder)?;
6999
7000        ::log::debug!("HTTP request: {:?}", &theRequest);
7001
7002        let theResponse = self.client.execute(theRequest)?;
7003
7004        ::log::debug!("HTTP response: {:?}", &theResponse);
7005
7006        Ok(theResponse)
7007    }
7008
7009    /// Set self-hosted runners in a group for an organization
7010    /// 
7011    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
7012    /// 
7013    /// Replaces the list of self-hosted runners that are part of an organization runner group.
7014    /// 
7015    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7016    /// 
7017    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-organization)
7018    ///
7019    /// # Content
7020    ///
7021    /// - [`&v1_1_4::request::actions_set_self_hosted_runners_in_group_for_org::body::Json`](crate::v1_1_4::request::actions_set_self_hosted_runners_in_group_for_org::body::Json)
7022    pub fn actions_set_self_hosted_runners_in_group_for_org<Content>(
7023        &self,
7024        org: &str,
7025        runner_group_id: i64,
7026        theContent: Content,
7027    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
7028    where
7029        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_self_hosted_runners_in_group_for_org::Content<::reqwest::blocking::Body>>,
7030        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_self_hosted_runners_in_group_for_org::Content<::reqwest::blocking::Body>>>::Error>
7031    {
7032        let mut theScheme = AuthScheme::from(&self.config.authentication);
7033
7034        while let Some(auth_step) = theScheme.step()? {
7035            match auth_step {
7036                ::authentic::AuthenticationStep::Request(auth_request) => {
7037                    theScheme.respond(self.client.execute(auth_request));
7038                }
7039                ::authentic::AuthenticationStep::WaitFor(duration) => {
7040                    (self.sleep)(duration);
7041                }
7042            }
7043        }
7044        let theBuilder = crate::v1_1_4::request::actions_set_self_hosted_runners_in_group_for_org::reqwest_blocking_builder(
7045            self.config.base_url.as_ref(),
7046            org,
7047            runner_group_id,
7048            self.config.user_agent.as_ref(),
7049            self.config.accept.as_deref(),
7050        )?
7051        .with_authentication(&theScheme)?;
7052
7053        let theRequest = crate::v1_1_4::request::actions_set_self_hosted_runners_in_group_for_org::reqwest_blocking_request(
7054            theBuilder,
7055            theContent.try_into()?,
7056        )?;
7057
7058        ::log::debug!("HTTP request: {:?}", &theRequest);
7059
7060        let theResponse = self.client.execute(theRequest)?;
7061
7062        ::log::debug!("HTTP response: {:?}", &theResponse);
7063
7064        Ok(theResponse)
7065    }
7066
7067    /// Add a self-hosted runner to a group for an organization
7068    /// 
7069    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
7070    /// 
7071    /// 
7072    /// Adds a self-hosted runner to a runner group configured in an organization.
7073    /// 
7074    /// You must authenticate using an access token with the `admin:org`
7075    /// scope to use this endpoint.
7076    /// 
7077    /// [API method documentation](https://docs.github.com/rest/reference/actions#add-a-self-hosted-runner-to-a-group-for-an-organization)
7078    pub fn actions_add_self_hosted_runner_to_group_for_org(
7079        &self,
7080        org: &str,
7081        runner_group_id: i64,
7082        runner_id: i64,
7083    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7084        let mut theScheme = AuthScheme::from(&self.config.authentication);
7085
7086        while let Some(auth_step) = theScheme.step()? {
7087            match auth_step {
7088                ::authentic::AuthenticationStep::Request(auth_request) => {
7089                    theScheme.respond(self.client.execute(auth_request));
7090                }
7091                ::authentic::AuthenticationStep::WaitFor(duration) => {
7092                    (self.sleep)(duration);
7093                }
7094            }
7095        }
7096        let theBuilder = crate::v1_1_4::request::actions_add_self_hosted_runner_to_group_for_org::reqwest_blocking_builder(
7097            self.config.base_url.as_ref(),
7098            org,
7099            runner_group_id,
7100            runner_id,
7101            self.config.user_agent.as_ref(),
7102            self.config.accept.as_deref(),
7103        )?
7104        .with_authentication(&theScheme)?;
7105
7106        let theRequest =
7107            crate::v1_1_4::request::actions_add_self_hosted_runner_to_group_for_org::reqwest_blocking_request(theBuilder)?;
7108
7109        ::log::debug!("HTTP request: {:?}", &theRequest);
7110
7111        let theResponse = self.client.execute(theRequest)?;
7112
7113        ::log::debug!("HTTP response: {:?}", &theResponse);
7114
7115        Ok(theResponse)
7116    }
7117
7118    /// Remove a self-hosted runner from a group for an organization
7119    /// 
7120    /// The self-hosted runner groups REST API is available with GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)."
7121    /// 
7122    /// 
7123    /// Removes a self-hosted runner from a group configured in an organization. The runner is then returned to the default group.
7124    /// 
7125    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7126    /// 
7127    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-a-self-hosted-runner-from-a-group-for-an-organization)
7128    pub fn actions_remove_self_hosted_runner_from_group_for_org(
7129        &self,
7130        org: &str,
7131        runner_group_id: i64,
7132        runner_id: i64,
7133    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7134        let mut theScheme = AuthScheme::from(&self.config.authentication);
7135
7136        while let Some(auth_step) = theScheme.step()? {
7137            match auth_step {
7138                ::authentic::AuthenticationStep::Request(auth_request) => {
7139                    theScheme.respond(self.client.execute(auth_request));
7140                }
7141                ::authentic::AuthenticationStep::WaitFor(duration) => {
7142                    (self.sleep)(duration);
7143                }
7144            }
7145        }
7146        let theBuilder = crate::v1_1_4::request::actions_remove_self_hosted_runner_from_group_for_org::reqwest_blocking_builder(
7147            self.config.base_url.as_ref(),
7148            org,
7149            runner_group_id,
7150            runner_id,
7151            self.config.user_agent.as_ref(),
7152            self.config.accept.as_deref(),
7153        )?
7154        .with_authentication(&theScheme)?;
7155
7156        let theRequest =
7157            crate::v1_1_4::request::actions_remove_self_hosted_runner_from_group_for_org::reqwest_blocking_request(theBuilder)?;
7158
7159        ::log::debug!("HTTP request: {:?}", &theRequest);
7160
7161        let theResponse = self.client.execute(theRequest)?;
7162
7163        ::log::debug!("HTTP response: {:?}", &theResponse);
7164
7165        Ok(theResponse)
7166    }
7167
7168    /// List self-hosted runners for an organization
7169    /// 
7170    /// Lists all self-hosted runners configured in an organization.
7171    /// 
7172    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7173    /// 
7174    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-self-hosted-runners-for-an-organization)
7175    pub fn actions_list_self_hosted_runners_for_org(
7176        &self,
7177        org: &str,
7178        per_page: ::std::option::Option<i64>,
7179        page: ::std::option::Option<i64>,
7180    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7181        let mut theScheme = AuthScheme::from(&self.config.authentication);
7182
7183        while let Some(auth_step) = theScheme.step()? {
7184            match auth_step {
7185                ::authentic::AuthenticationStep::Request(auth_request) => {
7186                    theScheme.respond(self.client.execute(auth_request));
7187                }
7188                ::authentic::AuthenticationStep::WaitFor(duration) => {
7189                    (self.sleep)(duration);
7190                }
7191            }
7192        }
7193        let theBuilder = crate::v1_1_4::request::actions_list_self_hosted_runners_for_org::reqwest_blocking_builder(
7194            self.config.base_url.as_ref(),
7195            org,
7196            per_page,
7197            page,
7198            self.config.user_agent.as_ref(),
7199            self.config.accept.as_deref(),
7200        )?
7201        .with_authentication(&theScheme)?;
7202
7203        let theRequest =
7204            crate::v1_1_4::request::actions_list_self_hosted_runners_for_org::reqwest_blocking_request(theBuilder)?;
7205
7206        ::log::debug!("HTTP request: {:?}", &theRequest);
7207
7208        let theResponse = self.client.execute(theRequest)?;
7209
7210        ::log::debug!("HTTP response: {:?}", &theResponse);
7211
7212        Ok(theResponse)
7213    }
7214
7215    /// List runner applications for an organization
7216    /// 
7217    /// Lists binaries for the runner application that you can download and run.
7218    /// 
7219    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7220    /// 
7221    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-runner-applications-for-an-organization)
7222    pub fn actions_list_runner_applications_for_org(
7223        &self,
7224        org: &str,
7225    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7226        let mut theScheme = AuthScheme::from(&self.config.authentication);
7227
7228        while let Some(auth_step) = theScheme.step()? {
7229            match auth_step {
7230                ::authentic::AuthenticationStep::Request(auth_request) => {
7231                    theScheme.respond(self.client.execute(auth_request));
7232                }
7233                ::authentic::AuthenticationStep::WaitFor(duration) => {
7234                    (self.sleep)(duration);
7235                }
7236            }
7237        }
7238        let theBuilder = crate::v1_1_4::request::actions_list_runner_applications_for_org::reqwest_blocking_builder(
7239            self.config.base_url.as_ref(),
7240            org,
7241            self.config.user_agent.as_ref(),
7242            self.config.accept.as_deref(),
7243        )?
7244        .with_authentication(&theScheme)?;
7245
7246        let theRequest =
7247            crate::v1_1_4::request::actions_list_runner_applications_for_org::reqwest_blocking_request(theBuilder)?;
7248
7249        ::log::debug!("HTTP request: {:?}", &theRequest);
7250
7251        let theResponse = self.client.execute(theRequest)?;
7252
7253        ::log::debug!("HTTP response: {:?}", &theResponse);
7254
7255        Ok(theResponse)
7256    }
7257
7258    /// Create a registration token for an organization
7259    /// 
7260    /// Returns a token that you can pass to the `config` script. The token expires after one hour.
7261    /// 
7262    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7263    /// 
7264    /// #### Example using registration token
7265    /// 
7266    /// Configure your self-hosted runner, replacing `TOKEN` with the registration token provided by this endpoint.
7267    /// 
7268    /// ```text
7269    /// ./config.sh --url https://github.com/octo-org --token TOKEN
7270    /// ```
7271    /// 
7272    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-a-registration-token-for-an-organization)
7273    pub fn actions_create_registration_token_for_org(
7274        &self,
7275        org: &str,
7276    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7277        let mut theScheme = AuthScheme::from(&self.config.authentication);
7278
7279        while let Some(auth_step) = theScheme.step()? {
7280            match auth_step {
7281                ::authentic::AuthenticationStep::Request(auth_request) => {
7282                    theScheme.respond(self.client.execute(auth_request));
7283                }
7284                ::authentic::AuthenticationStep::WaitFor(duration) => {
7285                    (self.sleep)(duration);
7286                }
7287            }
7288        }
7289        let theBuilder = crate::v1_1_4::request::actions_create_registration_token_for_org::reqwest_blocking_builder(
7290            self.config.base_url.as_ref(),
7291            org,
7292            self.config.user_agent.as_ref(),
7293            self.config.accept.as_deref(),
7294        )?
7295        .with_authentication(&theScheme)?;
7296
7297        let theRequest =
7298            crate::v1_1_4::request::actions_create_registration_token_for_org::reqwest_blocking_request(theBuilder)?;
7299
7300        ::log::debug!("HTTP request: {:?}", &theRequest);
7301
7302        let theResponse = self.client.execute(theRequest)?;
7303
7304        ::log::debug!("HTTP response: {:?}", &theResponse);
7305
7306        Ok(theResponse)
7307    }
7308
7309    /// Create a remove token for an organization
7310    /// 
7311    /// Returns a token that you can pass to the `config` script to remove a self-hosted runner from an organization. The token expires after one hour.
7312    /// 
7313    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7314    /// 
7315    /// #### Example using remove token
7316    /// 
7317    /// To remove your self-hosted runner from an organization, replace `TOKEN` with the remove token provided by this
7318    /// endpoint.
7319    /// 
7320    /// ```text
7321    /// ./config.sh remove --token TOKEN
7322    /// ```
7323    /// 
7324    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-a-remove-token-for-an-organization)
7325    pub fn actions_create_remove_token_for_org(
7326        &self,
7327        org: &str,
7328    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7329        let mut theScheme = AuthScheme::from(&self.config.authentication);
7330
7331        while let Some(auth_step) = theScheme.step()? {
7332            match auth_step {
7333                ::authentic::AuthenticationStep::Request(auth_request) => {
7334                    theScheme.respond(self.client.execute(auth_request));
7335                }
7336                ::authentic::AuthenticationStep::WaitFor(duration) => {
7337                    (self.sleep)(duration);
7338                }
7339            }
7340        }
7341        let theBuilder = crate::v1_1_4::request::actions_create_remove_token_for_org::reqwest_blocking_builder(
7342            self.config.base_url.as_ref(),
7343            org,
7344            self.config.user_agent.as_ref(),
7345            self.config.accept.as_deref(),
7346        )?
7347        .with_authentication(&theScheme)?;
7348
7349        let theRequest =
7350            crate::v1_1_4::request::actions_create_remove_token_for_org::reqwest_blocking_request(theBuilder)?;
7351
7352        ::log::debug!("HTTP request: {:?}", &theRequest);
7353
7354        let theResponse = self.client.execute(theRequest)?;
7355
7356        ::log::debug!("HTTP response: {:?}", &theResponse);
7357
7358        Ok(theResponse)
7359    }
7360
7361    /// Get a self-hosted runner for an organization
7362    /// 
7363    /// Gets a specific self-hosted runner configured in an organization.
7364    /// 
7365    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7366    /// 
7367    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-self-hosted-runner-for-an-organization)
7368    pub fn actions_get_self_hosted_runner_for_org(
7369        &self,
7370        org: &str,
7371        runner_id: i64,
7372    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7373        let mut theScheme = AuthScheme::from(&self.config.authentication);
7374
7375        while let Some(auth_step) = theScheme.step()? {
7376            match auth_step {
7377                ::authentic::AuthenticationStep::Request(auth_request) => {
7378                    theScheme.respond(self.client.execute(auth_request));
7379                }
7380                ::authentic::AuthenticationStep::WaitFor(duration) => {
7381                    (self.sleep)(duration);
7382                }
7383            }
7384        }
7385        let theBuilder = crate::v1_1_4::request::actions_get_self_hosted_runner_for_org::reqwest_blocking_builder(
7386            self.config.base_url.as_ref(),
7387            org,
7388            runner_id,
7389            self.config.user_agent.as_ref(),
7390            self.config.accept.as_deref(),
7391        )?
7392        .with_authentication(&theScheme)?;
7393
7394        let theRequest =
7395            crate::v1_1_4::request::actions_get_self_hosted_runner_for_org::reqwest_blocking_request(theBuilder)?;
7396
7397        ::log::debug!("HTTP request: {:?}", &theRequest);
7398
7399        let theResponse = self.client.execute(theRequest)?;
7400
7401        ::log::debug!("HTTP response: {:?}", &theResponse);
7402
7403        Ok(theResponse)
7404    }
7405
7406    /// Delete a self-hosted runner from an organization
7407    /// 
7408    /// Forces the removal of a self-hosted runner from an organization. You can use this endpoint to completely remove the runner when the machine you were using no longer exists.
7409    /// 
7410    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7411    /// 
7412    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-a-self-hosted-runner-from-an-organization)
7413    pub fn actions_delete_self_hosted_runner_from_org(
7414        &self,
7415        org: &str,
7416        runner_id: i64,
7417    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7418        let mut theScheme = AuthScheme::from(&self.config.authentication);
7419
7420        while let Some(auth_step) = theScheme.step()? {
7421            match auth_step {
7422                ::authentic::AuthenticationStep::Request(auth_request) => {
7423                    theScheme.respond(self.client.execute(auth_request));
7424                }
7425                ::authentic::AuthenticationStep::WaitFor(duration) => {
7426                    (self.sleep)(duration);
7427                }
7428            }
7429        }
7430        let theBuilder = crate::v1_1_4::request::actions_delete_self_hosted_runner_from_org::reqwest_blocking_builder(
7431            self.config.base_url.as_ref(),
7432            org,
7433            runner_id,
7434            self.config.user_agent.as_ref(),
7435            self.config.accept.as_deref(),
7436        )?
7437        .with_authentication(&theScheme)?;
7438
7439        let theRequest =
7440            crate::v1_1_4::request::actions_delete_self_hosted_runner_from_org::reqwest_blocking_request(theBuilder)?;
7441
7442        ::log::debug!("HTTP request: {:?}", &theRequest);
7443
7444        let theResponse = self.client.execute(theRequest)?;
7445
7446        ::log::debug!("HTTP response: {:?}", &theResponse);
7447
7448        Ok(theResponse)
7449    }
7450
7451    /// List labels for a self-hosted runner for an organization
7452    /// 
7453    /// Lists all labels for a self-hosted runner configured in an organization.
7454    /// 
7455    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7456    /// 
7457    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-labels-for-a-self-hosted-runner-for-an-organization)
7458    pub fn actions_list_labels_for_self_hosted_runner_for_org(
7459        &self,
7460        org: &str,
7461        runner_id: i64,
7462    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7463        let mut theScheme = AuthScheme::from(&self.config.authentication);
7464
7465        while let Some(auth_step) = theScheme.step()? {
7466            match auth_step {
7467                ::authentic::AuthenticationStep::Request(auth_request) => {
7468                    theScheme.respond(self.client.execute(auth_request));
7469                }
7470                ::authentic::AuthenticationStep::WaitFor(duration) => {
7471                    (self.sleep)(duration);
7472                }
7473            }
7474        }
7475        let theBuilder = crate::v1_1_4::request::actions_list_labels_for_self_hosted_runner_for_org::reqwest_blocking_builder(
7476            self.config.base_url.as_ref(),
7477            org,
7478            runner_id,
7479            self.config.user_agent.as_ref(),
7480            self.config.accept.as_deref(),
7481        )?
7482        .with_authentication(&theScheme)?;
7483
7484        let theRequest =
7485            crate::v1_1_4::request::actions_list_labels_for_self_hosted_runner_for_org::reqwest_blocking_request(theBuilder)?;
7486
7487        ::log::debug!("HTTP request: {:?}", &theRequest);
7488
7489        let theResponse = self.client.execute(theRequest)?;
7490
7491        ::log::debug!("HTTP response: {:?}", &theResponse);
7492
7493        Ok(theResponse)
7494    }
7495
7496    /// Set custom labels for a self-hosted runner for an organization
7497    /// 
7498    /// Remove all previous custom labels and set the new custom labels for a specific
7499    /// self-hosted runner configured in an organization.
7500    /// 
7501    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7502    /// 
7503    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-custom-labels-for-a-self-hosted-runner-for-an-organization)
7504    ///
7505    /// # Content
7506    ///
7507    /// - [`&v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_org::body::Json`](crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_org::body::Json)
7508    pub fn actions_set_custom_labels_for_self_hosted_runner_for_org<Content>(
7509        &self,
7510        org: &str,
7511        runner_id: i64,
7512        theContent: Content,
7513    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
7514    where
7515        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_org::Content<::reqwest::blocking::Body>>,
7516        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_org::Content<::reqwest::blocking::Body>>>::Error>
7517    {
7518        let mut theScheme = AuthScheme::from(&self.config.authentication);
7519
7520        while let Some(auth_step) = theScheme.step()? {
7521            match auth_step {
7522                ::authentic::AuthenticationStep::Request(auth_request) => {
7523                    theScheme.respond(self.client.execute(auth_request));
7524                }
7525                ::authentic::AuthenticationStep::WaitFor(duration) => {
7526                    (self.sleep)(duration);
7527                }
7528            }
7529        }
7530        let theBuilder = crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_org::reqwest_blocking_builder(
7531            self.config.base_url.as_ref(),
7532            org,
7533            runner_id,
7534            self.config.user_agent.as_ref(),
7535            self.config.accept.as_deref(),
7536        )?
7537        .with_authentication(&theScheme)?;
7538
7539        let theRequest = crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_org::reqwest_blocking_request(
7540            theBuilder,
7541            theContent.try_into()?,
7542        )?;
7543
7544        ::log::debug!("HTTP request: {:?}", &theRequest);
7545
7546        let theResponse = self.client.execute(theRequest)?;
7547
7548        ::log::debug!("HTTP response: {:?}", &theResponse);
7549
7550        Ok(theResponse)
7551    }
7552
7553    /// Add custom labels to a self-hosted runner for an organization
7554    /// 
7555    /// Add custom labels to a self-hosted runner configured in an organization.
7556    /// 
7557    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7558    /// 
7559    /// [API method documentation](https://docs.github.com/rest/reference/actions#add-custom-labels-to-a-self-hosted-runner-for-an-organization)
7560    ///
7561    /// # Content
7562    ///
7563    /// - [`&v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_org::body::Json`](crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_org::body::Json)
7564    pub fn actions_add_custom_labels_to_self_hosted_runner_for_org<Content>(
7565        &self,
7566        org: &str,
7567        runner_id: i64,
7568        theContent: Content,
7569    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
7570    where
7571        Content: Copy + TryInto<crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_org::Content<::reqwest::blocking::Body>>,
7572        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_org::Content<::reqwest::blocking::Body>>>::Error>
7573    {
7574        let mut theScheme = AuthScheme::from(&self.config.authentication);
7575
7576        while let Some(auth_step) = theScheme.step()? {
7577            match auth_step {
7578                ::authentic::AuthenticationStep::Request(auth_request) => {
7579                    theScheme.respond(self.client.execute(auth_request));
7580                }
7581                ::authentic::AuthenticationStep::WaitFor(duration) => {
7582                    (self.sleep)(duration);
7583                }
7584            }
7585        }
7586        let theBuilder = crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_org::reqwest_blocking_builder(
7587            self.config.base_url.as_ref(),
7588            org,
7589            runner_id,
7590            self.config.user_agent.as_ref(),
7591            self.config.accept.as_deref(),
7592        )?
7593        .with_authentication(&theScheme)?;
7594
7595        let theRequest = crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_org::reqwest_blocking_request(
7596            theBuilder,
7597            theContent.try_into()?,
7598        )?;
7599
7600        ::log::debug!("HTTP request: {:?}", &theRequest);
7601
7602        let theResponse = self.client.execute(theRequest)?;
7603
7604        ::log::debug!("HTTP response: {:?}", &theResponse);
7605
7606        Ok(theResponse)
7607    }
7608
7609    /// Remove all custom labels from a self-hosted runner for an organization
7610    /// 
7611    /// Remove all custom labels from a self-hosted runner configured in an
7612    /// organization. Returns the remaining read-only labels from the runner.
7613    /// 
7614    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7615    /// 
7616    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-all-custom-labels-from-a-self-hosted-runner-for-an-organization)
7617    pub fn actions_remove_all_custom_labels_from_self_hosted_runner_for_org(
7618        &self,
7619        org: &str,
7620        runner_id: i64,
7621    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7622        let mut theScheme = AuthScheme::from(&self.config.authentication);
7623
7624        while let Some(auth_step) = theScheme.step()? {
7625            match auth_step {
7626                ::authentic::AuthenticationStep::Request(auth_request) => {
7627                    theScheme.respond(self.client.execute(auth_request));
7628                }
7629                ::authentic::AuthenticationStep::WaitFor(duration) => {
7630                    (self.sleep)(duration);
7631                }
7632            }
7633        }
7634        let theBuilder = crate::v1_1_4::request::actions_remove_all_custom_labels_from_self_hosted_runner_for_org::reqwest_blocking_builder(
7635            self.config.base_url.as_ref(),
7636            org,
7637            runner_id,
7638            self.config.user_agent.as_ref(),
7639            self.config.accept.as_deref(),
7640        )?
7641        .with_authentication(&theScheme)?;
7642
7643        let theRequest =
7644            crate::v1_1_4::request::actions_remove_all_custom_labels_from_self_hosted_runner_for_org::reqwest_blocking_request(theBuilder)?;
7645
7646        ::log::debug!("HTTP request: {:?}", &theRequest);
7647
7648        let theResponse = self.client.execute(theRequest)?;
7649
7650        ::log::debug!("HTTP response: {:?}", &theResponse);
7651
7652        Ok(theResponse)
7653    }
7654
7655    /// Remove a custom label from a self-hosted runner for an organization
7656    /// 
7657    /// Remove a custom label from a self-hosted runner configured
7658    /// in an organization. Returns the remaining labels from the runner.
7659    /// 
7660    /// This endpoint returns a `404 Not Found` status if the custom label is not
7661    /// present on the runner.
7662    /// 
7663    /// You must authenticate using an access token with the `admin:org` scope to use this endpoint.
7664    /// 
7665    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-a-custom-label-from-a-self-hosted-runner-for-an-organization)
7666    pub fn actions_remove_custom_label_from_self_hosted_runner_for_org(
7667        &self,
7668        org: &str,
7669        runner_id: i64,
7670        name: &str,
7671    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7672        let mut theScheme = AuthScheme::from(&self.config.authentication);
7673
7674        while let Some(auth_step) = theScheme.step()? {
7675            match auth_step {
7676                ::authentic::AuthenticationStep::Request(auth_request) => {
7677                    theScheme.respond(self.client.execute(auth_request));
7678                }
7679                ::authentic::AuthenticationStep::WaitFor(duration) => {
7680                    (self.sleep)(duration);
7681                }
7682            }
7683        }
7684        let theBuilder = crate::v1_1_4::request::actions_remove_custom_label_from_self_hosted_runner_for_org::reqwest_blocking_builder(
7685            self.config.base_url.as_ref(),
7686            org,
7687            runner_id,
7688            name,
7689            self.config.user_agent.as_ref(),
7690            self.config.accept.as_deref(),
7691        )?
7692        .with_authentication(&theScheme)?;
7693
7694        let theRequest =
7695            crate::v1_1_4::request::actions_remove_custom_label_from_self_hosted_runner_for_org::reqwest_blocking_request(theBuilder)?;
7696
7697        ::log::debug!("HTTP request: {:?}", &theRequest);
7698
7699        let theResponse = self.client.execute(theRequest)?;
7700
7701        ::log::debug!("HTTP response: {:?}", &theResponse);
7702
7703        Ok(theResponse)
7704    }
7705
7706    /// List organization secrets
7707    /// 
7708    /// Lists all secrets available in an organization without revealing their encrypted values. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `secrets` organization permission to use this endpoint.
7709    /// 
7710    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-organization-secrets)
7711    pub fn actions_list_org_secrets(
7712        &self,
7713        org: &str,
7714        per_page: ::std::option::Option<i64>,
7715        page: ::std::option::Option<i64>,
7716    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7717        let mut theScheme = AuthScheme::from(&self.config.authentication);
7718
7719        while let Some(auth_step) = theScheme.step()? {
7720            match auth_step {
7721                ::authentic::AuthenticationStep::Request(auth_request) => {
7722                    theScheme.respond(self.client.execute(auth_request));
7723                }
7724                ::authentic::AuthenticationStep::WaitFor(duration) => {
7725                    (self.sleep)(duration);
7726                }
7727            }
7728        }
7729        let theBuilder = crate::v1_1_4::request::actions_list_org_secrets::reqwest_blocking_builder(
7730            self.config.base_url.as_ref(),
7731            org,
7732            per_page,
7733            page,
7734            self.config.user_agent.as_ref(),
7735            self.config.accept.as_deref(),
7736        )?
7737        .with_authentication(&theScheme)?;
7738
7739        let theRequest =
7740            crate::v1_1_4::request::actions_list_org_secrets::reqwest_blocking_request(theBuilder)?;
7741
7742        ::log::debug!("HTTP request: {:?}", &theRequest);
7743
7744        let theResponse = self.client.execute(theRequest)?;
7745
7746        ::log::debug!("HTTP response: {:?}", &theResponse);
7747
7748        Ok(theResponse)
7749    }
7750
7751    /// Get an organization public key
7752    /// 
7753    /// Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `secrets` organization permission to use this endpoint.
7754    /// 
7755    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-an-organization-public-key)
7756    pub fn actions_get_org_public_key(
7757        &self,
7758        org: &str,
7759    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7760        let mut theScheme = AuthScheme::from(&self.config.authentication);
7761
7762        while let Some(auth_step) = theScheme.step()? {
7763            match auth_step {
7764                ::authentic::AuthenticationStep::Request(auth_request) => {
7765                    theScheme.respond(self.client.execute(auth_request));
7766                }
7767                ::authentic::AuthenticationStep::WaitFor(duration) => {
7768                    (self.sleep)(duration);
7769                }
7770            }
7771        }
7772        let theBuilder = crate::v1_1_4::request::actions_get_org_public_key::reqwest_blocking_builder(
7773            self.config.base_url.as_ref(),
7774            org,
7775            self.config.user_agent.as_ref(),
7776            self.config.accept.as_deref(),
7777        )?
7778        .with_authentication(&theScheme)?;
7779
7780        let theRequest =
7781            crate::v1_1_4::request::actions_get_org_public_key::reqwest_blocking_request(theBuilder)?;
7782
7783        ::log::debug!("HTTP request: {:?}", &theRequest);
7784
7785        let theResponse = self.client.execute(theRequest)?;
7786
7787        ::log::debug!("HTTP response: {:?}", &theResponse);
7788
7789        Ok(theResponse)
7790    }
7791
7792    /// Get an organization secret
7793    /// 
7794    /// Gets a single organization secret without revealing its encrypted value. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `secrets` organization permission to use this endpoint.
7795    /// 
7796    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-an-organization-secret)
7797    pub fn actions_get_org_secret(
7798        &self,
7799        org: &str,
7800        secret_name: &str,
7801    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7802        let mut theScheme = AuthScheme::from(&self.config.authentication);
7803
7804        while let Some(auth_step) = theScheme.step()? {
7805            match auth_step {
7806                ::authentic::AuthenticationStep::Request(auth_request) => {
7807                    theScheme.respond(self.client.execute(auth_request));
7808                }
7809                ::authentic::AuthenticationStep::WaitFor(duration) => {
7810                    (self.sleep)(duration);
7811                }
7812            }
7813        }
7814        let theBuilder = crate::v1_1_4::request::actions_get_org_secret::reqwest_blocking_builder(
7815            self.config.base_url.as_ref(),
7816            org,
7817            secret_name,
7818            self.config.user_agent.as_ref(),
7819            self.config.accept.as_deref(),
7820        )?
7821        .with_authentication(&theScheme)?;
7822
7823        let theRequest =
7824            crate::v1_1_4::request::actions_get_org_secret::reqwest_blocking_request(theBuilder)?;
7825
7826        ::log::debug!("HTTP request: {:?}", &theRequest);
7827
7828        let theResponse = self.client.execute(theRequest)?;
7829
7830        ::log::debug!("HTTP response: {:?}", &theResponse);
7831
7832        Ok(theResponse)
7833    }
7834
7835    /// Create or update an organization secret
7836    /// 
7837    /// Creates or updates an organization secret with an encrypted value. Encrypt your secret using
7838    /// [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages). You must authenticate using an access
7839    /// token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `secrets` organization permission to
7840    /// use this endpoint.
7841    /// 
7842    /// #### Example encrypting a secret using Node.js
7843    /// 
7844    /// Encrypt your secret using the [tweetsodium](https://github.com/github/tweetsodium) library.
7845    /// 
7846    /// ```text
7847    /// const sodium = require('tweetsodium');
7848    /// 
7849    /// const key = "base64-encoded-public-key";
7850    /// const value = "plain-text-secret";
7851    /// 
7852    /// // Convert the message and key to Uint8Array's (Buffer implements that interface)
7853    /// const messageBytes = Buffer.from(value);
7854    /// const keyBytes = Buffer.from(key, 'base64');
7855    /// 
7856    /// // Encrypt using LibSodium.
7857    /// const encryptedBytes = sodium.seal(messageBytes, keyBytes);
7858    /// 
7859    /// // Base64 the encrypted secret
7860    /// const encrypted = Buffer.from(encryptedBytes).toString('base64');
7861    /// 
7862    /// console.log(encrypted);
7863    /// ```
7864    /// 
7865    /// 
7866    /// #### Example encrypting a secret using Python
7867    /// 
7868    /// Encrypt your secret using [pynacl](https://pynacl.readthedocs.io/en/latest/public/#nacl-public-sealedbox) with Python 3.
7869    /// 
7870    /// ```text
7871    /// from base64 import b64encode
7872    /// from nacl import encoding, public
7873    /// 
7874    /// def encrypt(public_key: str, secret_value: str) -> str:
7875    ///   """Encrypt a Unicode string using the public key."""
7876    ///   public_key = public.PublicKey(public_key.encode("utf-8"), encoding.Base64Encoder())
7877    ///   sealed_box = public.SealedBox(public_key)
7878    ///   encrypted = sealed_box.encrypt(secret_value.encode("utf-8"))
7879    ///   return b64encode(encrypted).decode("utf-8")
7880    /// ```
7881    /// 
7882    /// #### Example encrypting a secret using C#
7883    /// 
7884    /// Encrypt your secret using the [Sodium.Core](https://www.nuget.org/packages/Sodium.Core/) package.
7885    /// 
7886    /// ```text
7887    /// var secretValue = System.Text.Encoding.UTF8.GetBytes("mySecret");
7888    /// var publicKey = Convert.FromBase64String("2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=");
7889    /// 
7890    /// var sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);
7891    /// 
7892    /// Console.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));
7893    /// ```
7894    /// 
7895    /// #### Example encrypting a secret using Ruby
7896    /// 
7897    /// Encrypt your secret using the [rbnacl](https://github.com/RubyCrypto/rbnacl) gem.
7898    /// 
7899    /// ```ruby
7900    /// require "rbnacl"
7901    /// require "base64"
7902    /// 
7903    /// key = Base64.decode64("+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=")
7904    /// public_key = RbNaCl::PublicKey.new(key)
7905    /// 
7906    /// box = RbNaCl::Boxes::Sealed.from_public_key(public_key)
7907    /// encrypted_secret = box.encrypt("my_secret")
7908    /// 
7909    /// # Print the base64 encoded secret
7910    /// puts Base64.strict_encode64(encrypted_secret)
7911    /// ```
7912    /// 
7913    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-or-update-an-organization-secret)
7914    ///
7915    /// # Content
7916    ///
7917    /// - [`&v1_1_4::request::actions_create_or_update_org_secret::body::Json`](crate::v1_1_4::request::actions_create_or_update_org_secret::body::Json)
7918    pub fn actions_create_or_update_org_secret<Content>(
7919        &self,
7920        org: &str,
7921        secret_name: &str,
7922        theContent: Content,
7923    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
7924    where
7925        Content: Copy + TryInto<crate::v1_1_4::request::actions_create_or_update_org_secret::Content<::reqwest::blocking::Body>>,
7926        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_create_or_update_org_secret::Content<::reqwest::blocking::Body>>>::Error>
7927    {
7928        let mut theScheme = AuthScheme::from(&self.config.authentication);
7929
7930        while let Some(auth_step) = theScheme.step()? {
7931            match auth_step {
7932                ::authentic::AuthenticationStep::Request(auth_request) => {
7933                    theScheme.respond(self.client.execute(auth_request));
7934                }
7935                ::authentic::AuthenticationStep::WaitFor(duration) => {
7936                    (self.sleep)(duration);
7937                }
7938            }
7939        }
7940        let theBuilder = crate::v1_1_4::request::actions_create_or_update_org_secret::reqwest_blocking_builder(
7941            self.config.base_url.as_ref(),
7942            org,
7943            secret_name,
7944            self.config.user_agent.as_ref(),
7945            self.config.accept.as_deref(),
7946        )?
7947        .with_authentication(&theScheme)?;
7948
7949        let theRequest = crate::v1_1_4::request::actions_create_or_update_org_secret::reqwest_blocking_request(
7950            theBuilder,
7951            theContent.try_into()?,
7952        )?;
7953
7954        ::log::debug!("HTTP request: {:?}", &theRequest);
7955
7956        let theResponse = self.client.execute(theRequest)?;
7957
7958        ::log::debug!("HTTP response: {:?}", &theResponse);
7959
7960        Ok(theResponse)
7961    }
7962
7963    /// Delete an organization secret
7964    /// 
7965    /// Deletes a secret in an organization using the secret name. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `secrets` organization permission to use this endpoint.
7966    /// 
7967    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-an-organization-secret)
7968    pub fn actions_delete_org_secret(
7969        &self,
7970        org: &str,
7971        secret_name: &str,
7972    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
7973        let mut theScheme = AuthScheme::from(&self.config.authentication);
7974
7975        while let Some(auth_step) = theScheme.step()? {
7976            match auth_step {
7977                ::authentic::AuthenticationStep::Request(auth_request) => {
7978                    theScheme.respond(self.client.execute(auth_request));
7979                }
7980                ::authentic::AuthenticationStep::WaitFor(duration) => {
7981                    (self.sleep)(duration);
7982                }
7983            }
7984        }
7985        let theBuilder = crate::v1_1_4::request::actions_delete_org_secret::reqwest_blocking_builder(
7986            self.config.base_url.as_ref(),
7987            org,
7988            secret_name,
7989            self.config.user_agent.as_ref(),
7990            self.config.accept.as_deref(),
7991        )?
7992        .with_authentication(&theScheme)?;
7993
7994        let theRequest =
7995            crate::v1_1_4::request::actions_delete_org_secret::reqwest_blocking_request(theBuilder)?;
7996
7997        ::log::debug!("HTTP request: {:?}", &theRequest);
7998
7999        let theResponse = self.client.execute(theRequest)?;
8000
8001        ::log::debug!("HTTP response: {:?}", &theResponse);
8002
8003        Ok(theResponse)
8004    }
8005
8006    /// List selected repositories for an organization secret
8007    /// 
8008    /// Lists all repositories that have been selected when the `visibility` for repository access to a secret is set to `selected`. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `secrets` organization permission to use this endpoint.
8009    /// 
8010    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-selected-repositories-for-an-organization-secret)
8011    pub fn actions_list_selected_repos_for_org_secret(
8012        &self,
8013        org: &str,
8014        secret_name: &str,
8015        page: ::std::option::Option<i64>,
8016        per_page: ::std::option::Option<i64>,
8017    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8018        let mut theScheme = AuthScheme::from(&self.config.authentication);
8019
8020        while let Some(auth_step) = theScheme.step()? {
8021            match auth_step {
8022                ::authentic::AuthenticationStep::Request(auth_request) => {
8023                    theScheme.respond(self.client.execute(auth_request));
8024                }
8025                ::authentic::AuthenticationStep::WaitFor(duration) => {
8026                    (self.sleep)(duration);
8027                }
8028            }
8029        }
8030        let theBuilder = crate::v1_1_4::request::actions_list_selected_repos_for_org_secret::reqwest_blocking_builder(
8031            self.config.base_url.as_ref(),
8032            org,
8033            secret_name,
8034            page,
8035            per_page,
8036            self.config.user_agent.as_ref(),
8037            self.config.accept.as_deref(),
8038        )?
8039        .with_authentication(&theScheme)?;
8040
8041        let theRequest =
8042            crate::v1_1_4::request::actions_list_selected_repos_for_org_secret::reqwest_blocking_request(theBuilder)?;
8043
8044        ::log::debug!("HTTP request: {:?}", &theRequest);
8045
8046        let theResponse = self.client.execute(theRequest)?;
8047
8048        ::log::debug!("HTTP response: {:?}", &theResponse);
8049
8050        Ok(theResponse)
8051    }
8052
8053    /// Set selected repositories for an organization secret
8054    /// 
8055    /// Replaces all repositories for an organization secret when the `visibility` for repository access is set to `selected`. The visibility is set when you [Create or update an organization secret](https://docs.github.com/rest/reference/actions#create-or-update-an-organization-secret). You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `secrets` organization permission to use this endpoint.
8056    /// 
8057    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-selected-repositories-for-an-organization-secret)
8058    ///
8059    /// # Content
8060    ///
8061    /// - [`&v1_1_4::request::actions_set_selected_repos_for_org_secret::body::Json`](crate::v1_1_4::request::actions_set_selected_repos_for_org_secret::body::Json)
8062    pub fn actions_set_selected_repos_for_org_secret<Content>(
8063        &self,
8064        org: &str,
8065        secret_name: &str,
8066        theContent: Content,
8067    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
8068    where
8069        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_selected_repos_for_org_secret::Content<::reqwest::blocking::Body>>,
8070        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_selected_repos_for_org_secret::Content<::reqwest::blocking::Body>>>::Error>
8071    {
8072        let mut theScheme = AuthScheme::from(&self.config.authentication);
8073
8074        while let Some(auth_step) = theScheme.step()? {
8075            match auth_step {
8076                ::authentic::AuthenticationStep::Request(auth_request) => {
8077                    theScheme.respond(self.client.execute(auth_request));
8078                }
8079                ::authentic::AuthenticationStep::WaitFor(duration) => {
8080                    (self.sleep)(duration);
8081                }
8082            }
8083        }
8084        let theBuilder = crate::v1_1_4::request::actions_set_selected_repos_for_org_secret::reqwest_blocking_builder(
8085            self.config.base_url.as_ref(),
8086            org,
8087            secret_name,
8088            self.config.user_agent.as_ref(),
8089            self.config.accept.as_deref(),
8090        )?
8091        .with_authentication(&theScheme)?;
8092
8093        let theRequest = crate::v1_1_4::request::actions_set_selected_repos_for_org_secret::reqwest_blocking_request(
8094            theBuilder,
8095            theContent.try_into()?,
8096        )?;
8097
8098        ::log::debug!("HTTP request: {:?}", &theRequest);
8099
8100        let theResponse = self.client.execute(theRequest)?;
8101
8102        ::log::debug!("HTTP response: {:?}", &theResponse);
8103
8104        Ok(theResponse)
8105    }
8106
8107    /// Add selected repository to an organization secret
8108    /// 
8109    /// Adds a repository to an organization secret when the `visibility` for repository access is set to `selected`. The visibility is set when you [Create or update an organization secret](https://docs.github.com/rest/reference/actions#create-or-update-an-organization-secret). You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `secrets` organization permission to use this endpoint.
8110    /// 
8111    /// [API method documentation](https://docs.github.com/rest/reference/actions#add-selected-repository-to-an-organization-secret)
8112    pub fn actions_add_selected_repo_to_org_secret(
8113        &self,
8114        org: &str,
8115        secret_name: &str,
8116        repository_id: i64,
8117    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8118        let mut theScheme = AuthScheme::from(&self.config.authentication);
8119
8120        while let Some(auth_step) = theScheme.step()? {
8121            match auth_step {
8122                ::authentic::AuthenticationStep::Request(auth_request) => {
8123                    theScheme.respond(self.client.execute(auth_request));
8124                }
8125                ::authentic::AuthenticationStep::WaitFor(duration) => {
8126                    (self.sleep)(duration);
8127                }
8128            }
8129        }
8130        let theBuilder = crate::v1_1_4::request::actions_add_selected_repo_to_org_secret::reqwest_blocking_builder(
8131            self.config.base_url.as_ref(),
8132            org,
8133            secret_name,
8134            repository_id,
8135            self.config.user_agent.as_ref(),
8136            self.config.accept.as_deref(),
8137        )?
8138        .with_authentication(&theScheme)?;
8139
8140        let theRequest =
8141            crate::v1_1_4::request::actions_add_selected_repo_to_org_secret::reqwest_blocking_request(theBuilder)?;
8142
8143        ::log::debug!("HTTP request: {:?}", &theRequest);
8144
8145        let theResponse = self.client.execute(theRequest)?;
8146
8147        ::log::debug!("HTTP response: {:?}", &theResponse);
8148
8149        Ok(theResponse)
8150    }
8151
8152    /// Remove selected repository from an organization secret
8153    /// 
8154    /// Removes a repository from an organization secret when the `visibility` for repository access is set to `selected`. The visibility is set when you [Create or update an organization secret](https://docs.github.com/rest/reference/actions#create-or-update-an-organization-secret). You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `secrets` organization permission to use this endpoint.
8155    /// 
8156    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-selected-repository-from-an-organization-secret)
8157    pub fn actions_remove_selected_repo_from_org_secret(
8158        &self,
8159        org: &str,
8160        secret_name: &str,
8161        repository_id: i64,
8162    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8163        let mut theScheme = AuthScheme::from(&self.config.authentication);
8164
8165        while let Some(auth_step) = theScheme.step()? {
8166            match auth_step {
8167                ::authentic::AuthenticationStep::Request(auth_request) => {
8168                    theScheme.respond(self.client.execute(auth_request));
8169                }
8170                ::authentic::AuthenticationStep::WaitFor(duration) => {
8171                    (self.sleep)(duration);
8172                }
8173            }
8174        }
8175        let theBuilder = crate::v1_1_4::request::actions_remove_selected_repo_from_org_secret::reqwest_blocking_builder(
8176            self.config.base_url.as_ref(),
8177            org,
8178            secret_name,
8179            repository_id,
8180            self.config.user_agent.as_ref(),
8181            self.config.accept.as_deref(),
8182        )?
8183        .with_authentication(&theScheme)?;
8184
8185        let theRequest =
8186            crate::v1_1_4::request::actions_remove_selected_repo_from_org_secret::reqwest_blocking_request(theBuilder)?;
8187
8188        ::log::debug!("HTTP request: {:?}", &theRequest);
8189
8190        let theResponse = self.client.execute(theRequest)?;
8191
8192        ::log::debug!("HTTP response: {:?}", &theResponse);
8193
8194        Ok(theResponse)
8195    }
8196
8197    /// Get the audit log for an organization
8198    /// 
8199    /// Gets the audit log for an organization. For more information, see "[Reviewing the audit log for your organization](https://docs.github.com/github/setting-up-and-managing-organizations-and-teams/reviewing-the-audit-log-for-your-organization)."
8200    /// 
8201    /// This endpoint is available for organizations on GitHub Enterprise Cloud. To use this endpoint, you must be an organization owner, and you must use an access token with the `admin:org` scope. GitHub Apps must have the `organization_administration` read permission to use this endpoint.
8202    /// 
8203    /// By default, the response includes up to 30 events from the past three months. Use the `phrase` parameter to filter results and retrieve older events. For example, use the `phrase` parameter with the `created` qualifier to filter events based on when the events occurred. For more information, see "[Reviewing the audit log for your organization](https://docs.github.com/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization#searching-the-audit-log)."
8204    /// 
8205    /// Use pagination to retrieve fewer or more than 30 events. For more information, see "[Resources in the REST API](https://docs.github.com/rest/overview/resources-in-the-rest-api#pagination)."
8206    /// 
8207    /// [API method documentation](https://docs.github.com/rest/reference/orgs#get-audit-log)
8208    #[allow(clippy::too_many_arguments)]
8209    pub fn orgs_get_audit_log(
8210        &self,
8211        org: &str,
8212        phrase: ::std::option::Option<&str>,
8213        include: ::std::option::Option<&str>,
8214        after: ::std::option::Option<&str>,
8215        before: ::std::option::Option<&str>,
8216        order: ::std::option::Option<&str>,
8217        per_page: ::std::option::Option<i64>,
8218    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8219        let mut theScheme = AuthScheme::from(&self.config.authentication);
8220
8221        while let Some(auth_step) = theScheme.step()? {
8222            match auth_step {
8223                ::authentic::AuthenticationStep::Request(auth_request) => {
8224                    theScheme.respond(self.client.execute(auth_request));
8225                }
8226                ::authentic::AuthenticationStep::WaitFor(duration) => {
8227                    (self.sleep)(duration);
8228                }
8229            }
8230        }
8231        let theBuilder = crate::v1_1_4::request::orgs_get_audit_log::reqwest_blocking_builder(
8232            self.config.base_url.as_ref(),
8233            org,
8234            phrase,
8235            include,
8236            after,
8237            before,
8238            order,
8239            per_page,
8240            self.config.user_agent.as_ref(),
8241            self.config.accept.as_deref(),
8242        )?
8243        .with_authentication(&theScheme)?;
8244
8245        let theRequest =
8246            crate::v1_1_4::request::orgs_get_audit_log::reqwest_blocking_request(theBuilder)?;
8247
8248        ::log::debug!("HTTP request: {:?}", &theRequest);
8249
8250        let theResponse = self.client.execute(theRequest)?;
8251
8252        ::log::debug!("HTTP response: {:?}", &theResponse);
8253
8254        Ok(theResponse)
8255    }
8256
8257    /// List users blocked by an organization
8258    /// 
8259    /// List the users blocked by an organization.
8260    /// 
8261    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-users-blocked-by-an-organization)
8262    pub fn orgs_list_blocked_users(
8263        &self,
8264        org: &str,
8265    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8266        let mut theScheme = AuthScheme::from(&self.config.authentication);
8267
8268        while let Some(auth_step) = theScheme.step()? {
8269            match auth_step {
8270                ::authentic::AuthenticationStep::Request(auth_request) => {
8271                    theScheme.respond(self.client.execute(auth_request));
8272                }
8273                ::authentic::AuthenticationStep::WaitFor(duration) => {
8274                    (self.sleep)(duration);
8275                }
8276            }
8277        }
8278        let theBuilder = crate::v1_1_4::request::orgs_list_blocked_users::reqwest_blocking_builder(
8279            self.config.base_url.as_ref(),
8280            org,
8281            self.config.user_agent.as_ref(),
8282            self.config.accept.as_deref(),
8283        )?
8284        .with_authentication(&theScheme)?;
8285
8286        let theRequest =
8287            crate::v1_1_4::request::orgs_list_blocked_users::reqwest_blocking_request(theBuilder)?;
8288
8289        ::log::debug!("HTTP request: {:?}", &theRequest);
8290
8291        let theResponse = self.client.execute(theRequest)?;
8292
8293        ::log::debug!("HTTP response: {:?}", &theResponse);
8294
8295        Ok(theResponse)
8296    }
8297
8298    /// Check if a user is blocked by an organization
8299    /// 
8300    /// [API method documentation](https://docs.github.com/rest/reference/orgs#check-if-a-user-is-blocked-by-an-organization)
8301    pub fn orgs_check_blocked_user(
8302        &self,
8303        org: &str,
8304        username: &str,
8305    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8306        let mut theScheme = AuthScheme::from(&self.config.authentication);
8307
8308        while let Some(auth_step) = theScheme.step()? {
8309            match auth_step {
8310                ::authentic::AuthenticationStep::Request(auth_request) => {
8311                    theScheme.respond(self.client.execute(auth_request));
8312                }
8313                ::authentic::AuthenticationStep::WaitFor(duration) => {
8314                    (self.sleep)(duration);
8315                }
8316            }
8317        }
8318        let theBuilder = crate::v1_1_4::request::orgs_check_blocked_user::reqwest_blocking_builder(
8319            self.config.base_url.as_ref(),
8320            org,
8321            username,
8322            self.config.user_agent.as_ref(),
8323            self.config.accept.as_deref(),
8324        )?
8325        .with_authentication(&theScheme)?;
8326
8327        let theRequest =
8328            crate::v1_1_4::request::orgs_check_blocked_user::reqwest_blocking_request(theBuilder)?;
8329
8330        ::log::debug!("HTTP request: {:?}", &theRequest);
8331
8332        let theResponse = self.client.execute(theRequest)?;
8333
8334        ::log::debug!("HTTP response: {:?}", &theResponse);
8335
8336        Ok(theResponse)
8337    }
8338
8339    /// Block a user from an organization
8340    /// 
8341    /// [API method documentation](https://docs.github.com/rest/reference/orgs#block-a-user-from-an-organization)
8342    pub fn orgs_block_user(
8343        &self,
8344        org: &str,
8345        username: &str,
8346    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8347        let mut theScheme = AuthScheme::from(&self.config.authentication);
8348
8349        while let Some(auth_step) = theScheme.step()? {
8350            match auth_step {
8351                ::authentic::AuthenticationStep::Request(auth_request) => {
8352                    theScheme.respond(self.client.execute(auth_request));
8353                }
8354                ::authentic::AuthenticationStep::WaitFor(duration) => {
8355                    (self.sleep)(duration);
8356                }
8357            }
8358        }
8359        let theBuilder = crate::v1_1_4::request::orgs_block_user::reqwest_blocking_builder(
8360            self.config.base_url.as_ref(),
8361            org,
8362            username,
8363            self.config.user_agent.as_ref(),
8364            self.config.accept.as_deref(),
8365        )?
8366        .with_authentication(&theScheme)?;
8367
8368        let theRequest =
8369            crate::v1_1_4::request::orgs_block_user::reqwest_blocking_request(theBuilder)?;
8370
8371        ::log::debug!("HTTP request: {:?}", &theRequest);
8372
8373        let theResponse = self.client.execute(theRequest)?;
8374
8375        ::log::debug!("HTTP response: {:?}", &theResponse);
8376
8377        Ok(theResponse)
8378    }
8379
8380    /// Unblock a user from an organization
8381    /// 
8382    /// [API method documentation](https://docs.github.com/rest/reference/orgs#unblock-a-user-from-an-organization)
8383    pub fn orgs_unblock_user(
8384        &self,
8385        org: &str,
8386        username: &str,
8387    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8388        let mut theScheme = AuthScheme::from(&self.config.authentication);
8389
8390        while let Some(auth_step) = theScheme.step()? {
8391            match auth_step {
8392                ::authentic::AuthenticationStep::Request(auth_request) => {
8393                    theScheme.respond(self.client.execute(auth_request));
8394                }
8395                ::authentic::AuthenticationStep::WaitFor(duration) => {
8396                    (self.sleep)(duration);
8397                }
8398            }
8399        }
8400        let theBuilder = crate::v1_1_4::request::orgs_unblock_user::reqwest_blocking_builder(
8401            self.config.base_url.as_ref(),
8402            org,
8403            username,
8404            self.config.user_agent.as_ref(),
8405            self.config.accept.as_deref(),
8406        )?
8407        .with_authentication(&theScheme)?;
8408
8409        let theRequest =
8410            crate::v1_1_4::request::orgs_unblock_user::reqwest_blocking_request(theBuilder)?;
8411
8412        ::log::debug!("HTTP request: {:?}", &theRequest);
8413
8414        let theResponse = self.client.execute(theRequest)?;
8415
8416        ::log::debug!("HTTP response: {:?}", &theResponse);
8417
8418        Ok(theResponse)
8419    }
8420
8421    /// List code scanning alerts for an organization
8422    /// 
8423    /// Lists all code scanning alerts for the default branch (usually `main`
8424    /// or `master`) for all eligible repositories in an organization.
8425    /// To use this endpoint, you must be an administrator or security manager for the organization, and you must use an access token with the `repo` scope or `security_events` scope.
8426    /// 
8427    /// GitHub Apps must have the `security_events` read permission to use this endpoint.
8428    /// 
8429    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#list-code-scanning-alerts-by-organization)
8430    #[allow(clippy::too_many_arguments)]
8431    pub fn code_scanning_list_alerts_for_org(
8432        &self,
8433        org: &str,
8434        tool_name: ::std::option::Option<&str>,
8435        tool_guid: ::std::option::Option<::std::option::Option<&str>>,
8436        before: ::std::option::Option<&str>,
8437        after: ::std::option::Option<&str>,
8438        page: ::std::option::Option<i64>,
8439        per_page: ::std::option::Option<i64>,
8440        state: ::std::option::Option<&str>,
8441        sort: &crate::types::Sort<'_>,
8442    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8443        let (sort, direction) = sort.extract();
8444        let mut theScheme = AuthScheme::from(&self.config.authentication);
8445
8446        while let Some(auth_step) = theScheme.step()? {
8447            match auth_step {
8448                ::authentic::AuthenticationStep::Request(auth_request) => {
8449                    theScheme.respond(self.client.execute(auth_request));
8450                }
8451                ::authentic::AuthenticationStep::WaitFor(duration) => {
8452                    (self.sleep)(duration);
8453                }
8454            }
8455        }
8456        let theBuilder = crate::v1_1_4::request::code_scanning_list_alerts_for_org::reqwest_blocking_builder(
8457            self.config.base_url.as_ref(),
8458            org,
8459            tool_name,
8460            tool_guid,
8461            before,
8462            after,
8463            page,
8464            per_page,
8465            direction,
8466            state,
8467            sort,
8468            self.config.user_agent.as_ref(),
8469            self.config.accept.as_deref(),
8470        )?
8471        .with_authentication(&theScheme)?;
8472
8473        let theRequest =
8474            crate::v1_1_4::request::code_scanning_list_alerts_for_org::reqwest_blocking_request(theBuilder)?;
8475
8476        ::log::debug!("HTTP request: {:?}", &theRequest);
8477
8478        let theResponse = self.client.execute(theRequest)?;
8479
8480        ::log::debug!("HTTP response: {:?}", &theResponse);
8481
8482        Ok(theResponse)
8483    }
8484
8485    /// List SAML SSO authorizations for an organization
8486    /// 
8487    /// Listing and deleting credential authorizations is available to organizations with GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products).
8488    /// 
8489    /// An authenticated organization owner with the `read:org` scope can list all credential authorizations for an organization that uses SAML single sign-on (SSO). The credentials are either personal access tokens or SSH keys that organization members have authorized for the organization. For more information, see [About authentication with SAML single sign-on](https://docs.github.com/en/articles/about-authentication-with-saml-single-sign-on).
8490    /// 
8491    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-saml-sso-authorizations-for-an-organization)
8492    pub fn orgs_list_saml_sso_authorizations(
8493        &self,
8494        org: &str,
8495        per_page: ::std::option::Option<i64>,
8496        page: ::std::option::Option<i64>,
8497        login: ::std::option::Option<&str>,
8498    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8499        let mut theScheme = AuthScheme::from(&self.config.authentication);
8500
8501        while let Some(auth_step) = theScheme.step()? {
8502            match auth_step {
8503                ::authentic::AuthenticationStep::Request(auth_request) => {
8504                    theScheme.respond(self.client.execute(auth_request));
8505                }
8506                ::authentic::AuthenticationStep::WaitFor(duration) => {
8507                    (self.sleep)(duration);
8508                }
8509            }
8510        }
8511        let theBuilder = crate::v1_1_4::request::orgs_list_saml_sso_authorizations::reqwest_blocking_builder(
8512            self.config.base_url.as_ref(),
8513            org,
8514            per_page,
8515            page,
8516            login,
8517            self.config.user_agent.as_ref(),
8518            self.config.accept.as_deref(),
8519        )?
8520        .with_authentication(&theScheme)?;
8521
8522        let theRequest =
8523            crate::v1_1_4::request::orgs_list_saml_sso_authorizations::reqwest_blocking_request(theBuilder)?;
8524
8525        ::log::debug!("HTTP request: {:?}", &theRequest);
8526
8527        let theResponse = self.client.execute(theRequest)?;
8528
8529        ::log::debug!("HTTP response: {:?}", &theResponse);
8530
8531        Ok(theResponse)
8532    }
8533
8534    /// Remove a SAML SSO authorization for an organization
8535    /// 
8536    /// Listing and deleting credential authorizations is available to organizations with GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products).
8537    /// 
8538    /// An authenticated organization owner with the `admin:org` scope can remove a credential authorization for an organization that uses SAML SSO. Once you remove someone's credential authorization, they will need to create a new personal access token or SSH key and authorize it for the organization they want to access.
8539    /// 
8540    /// [API method documentation](https://docs.github.com/rest/reference/orgs#remove-a-saml-sso-authorization-for-an-organization)
8541    pub fn orgs_remove_saml_sso_authorization(
8542        &self,
8543        org: &str,
8544        credential_id: i64,
8545    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8546        let mut theScheme = AuthScheme::from(&self.config.authentication);
8547
8548        while let Some(auth_step) = theScheme.step()? {
8549            match auth_step {
8550                ::authentic::AuthenticationStep::Request(auth_request) => {
8551                    theScheme.respond(self.client.execute(auth_request));
8552                }
8553                ::authentic::AuthenticationStep::WaitFor(duration) => {
8554                    (self.sleep)(duration);
8555                }
8556            }
8557        }
8558        let theBuilder = crate::v1_1_4::request::orgs_remove_saml_sso_authorization::reqwest_blocking_builder(
8559            self.config.base_url.as_ref(),
8560            org,
8561            credential_id,
8562            self.config.user_agent.as_ref(),
8563            self.config.accept.as_deref(),
8564        )?
8565        .with_authentication(&theScheme)?;
8566
8567        let theRequest =
8568            crate::v1_1_4::request::orgs_remove_saml_sso_authorization::reqwest_blocking_request(theBuilder)?;
8569
8570        ::log::debug!("HTTP request: {:?}", &theRequest);
8571
8572        let theResponse = self.client.execute(theRequest)?;
8573
8574        ::log::debug!("HTTP response: {:?}", &theResponse);
8575
8576        Ok(theResponse)
8577    }
8578
8579    /// List organization secrets
8580    /// 
8581    /// Lists all secrets available in an organization without revealing their encrypted values. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` organization permission to use this endpoint.
8582    /// 
8583    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#list-organization-secrets)
8584    pub fn dependabot_list_org_secrets(
8585        &self,
8586        org: &str,
8587        per_page: ::std::option::Option<i64>,
8588        page: ::std::option::Option<i64>,
8589    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8590        let mut theScheme = AuthScheme::from(&self.config.authentication);
8591
8592        while let Some(auth_step) = theScheme.step()? {
8593            match auth_step {
8594                ::authentic::AuthenticationStep::Request(auth_request) => {
8595                    theScheme.respond(self.client.execute(auth_request));
8596                }
8597                ::authentic::AuthenticationStep::WaitFor(duration) => {
8598                    (self.sleep)(duration);
8599                }
8600            }
8601        }
8602        let theBuilder = crate::v1_1_4::request::dependabot_list_org_secrets::reqwest_blocking_builder(
8603            self.config.base_url.as_ref(),
8604            org,
8605            per_page,
8606            page,
8607            self.config.user_agent.as_ref(),
8608            self.config.accept.as_deref(),
8609        )?
8610        .with_authentication(&theScheme)?;
8611
8612        let theRequest =
8613            crate::v1_1_4::request::dependabot_list_org_secrets::reqwest_blocking_request(theBuilder)?;
8614
8615        ::log::debug!("HTTP request: {:?}", &theRequest);
8616
8617        let theResponse = self.client.execute(theRequest)?;
8618
8619        ::log::debug!("HTTP response: {:?}", &theResponse);
8620
8621        Ok(theResponse)
8622    }
8623
8624    /// Get an organization public key
8625    /// 
8626    /// Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` organization permission to use this endpoint.
8627    /// 
8628    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#get-an-organization-public-key)
8629    pub fn dependabot_get_org_public_key(
8630        &self,
8631        org: &str,
8632    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8633        let mut theScheme = AuthScheme::from(&self.config.authentication);
8634
8635        while let Some(auth_step) = theScheme.step()? {
8636            match auth_step {
8637                ::authentic::AuthenticationStep::Request(auth_request) => {
8638                    theScheme.respond(self.client.execute(auth_request));
8639                }
8640                ::authentic::AuthenticationStep::WaitFor(duration) => {
8641                    (self.sleep)(duration);
8642                }
8643            }
8644        }
8645        let theBuilder = crate::v1_1_4::request::dependabot_get_org_public_key::reqwest_blocking_builder(
8646            self.config.base_url.as_ref(),
8647            org,
8648            self.config.user_agent.as_ref(),
8649            self.config.accept.as_deref(),
8650        )?
8651        .with_authentication(&theScheme)?;
8652
8653        let theRequest =
8654            crate::v1_1_4::request::dependabot_get_org_public_key::reqwest_blocking_request(theBuilder)?;
8655
8656        ::log::debug!("HTTP request: {:?}", &theRequest);
8657
8658        let theResponse = self.client.execute(theRequest)?;
8659
8660        ::log::debug!("HTTP response: {:?}", &theResponse);
8661
8662        Ok(theResponse)
8663    }
8664
8665    /// Get an organization secret
8666    /// 
8667    /// Gets a single organization secret without revealing its encrypted value. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` organization permission to use this endpoint.
8668    /// 
8669    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#get-an-organization-secret)
8670    pub fn dependabot_get_org_secret(
8671        &self,
8672        org: &str,
8673        secret_name: &str,
8674    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8675        let mut theScheme = AuthScheme::from(&self.config.authentication);
8676
8677        while let Some(auth_step) = theScheme.step()? {
8678            match auth_step {
8679                ::authentic::AuthenticationStep::Request(auth_request) => {
8680                    theScheme.respond(self.client.execute(auth_request));
8681                }
8682                ::authentic::AuthenticationStep::WaitFor(duration) => {
8683                    (self.sleep)(duration);
8684                }
8685            }
8686        }
8687        let theBuilder = crate::v1_1_4::request::dependabot_get_org_secret::reqwest_blocking_builder(
8688            self.config.base_url.as_ref(),
8689            org,
8690            secret_name,
8691            self.config.user_agent.as_ref(),
8692            self.config.accept.as_deref(),
8693        )?
8694        .with_authentication(&theScheme)?;
8695
8696        let theRequest =
8697            crate::v1_1_4::request::dependabot_get_org_secret::reqwest_blocking_request(theBuilder)?;
8698
8699        ::log::debug!("HTTP request: {:?}", &theRequest);
8700
8701        let theResponse = self.client.execute(theRequest)?;
8702
8703        ::log::debug!("HTTP response: {:?}", &theResponse);
8704
8705        Ok(theResponse)
8706    }
8707
8708    /// Create or update an organization secret
8709    /// 
8710    /// Creates or updates an organization secret with an encrypted value. Encrypt your secret using
8711    /// [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages). You must authenticate using an access
8712    /// token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` organization
8713    /// permission to use this endpoint.
8714    /// 
8715    /// #### Example encrypting a secret using Node.js
8716    /// 
8717    /// Encrypt your secret using the [tweetsodium](https://github.com/github/tweetsodium) library.
8718    /// 
8719    /// ```text
8720    /// const sodium = require('tweetsodium');
8721    /// 
8722    /// const key = "base64-encoded-public-key";
8723    /// const value = "plain-text-secret";
8724    /// 
8725    /// // Convert the message and key to Uint8Array's (Buffer implements that interface)
8726    /// const messageBytes = Buffer.from(value);
8727    /// const keyBytes = Buffer.from(key, 'base64');
8728    /// 
8729    /// // Encrypt using LibSodium.
8730    /// const encryptedBytes = sodium.seal(messageBytes, keyBytes);
8731    /// 
8732    /// // Base64 the encrypted secret
8733    /// const encrypted = Buffer.from(encryptedBytes).toString('base64');
8734    /// 
8735    /// console.log(encrypted);
8736    /// ```
8737    /// 
8738    /// 
8739    /// #### Example encrypting a secret using Python
8740    /// 
8741    /// Encrypt your secret using [pynacl](https://pynacl.readthedocs.io/en/latest/public/#nacl-public-sealedbox) with Python 3.
8742    /// 
8743    /// ```text
8744    /// from base64 import b64encode
8745    /// from nacl import encoding, public
8746    /// 
8747    /// def encrypt(public_key: str, secret_value: str) -> str:
8748    ///   """Encrypt a Unicode string using the public key."""
8749    ///   public_key = public.PublicKey(public_key.encode("utf-8"), encoding.Base64Encoder())
8750    ///   sealed_box = public.SealedBox(public_key)
8751    ///   encrypted = sealed_box.encrypt(secret_value.encode("utf-8"))
8752    ///   return b64encode(encrypted).decode("utf-8")
8753    /// ```
8754    /// 
8755    /// #### Example encrypting a secret using C#
8756    /// 
8757    /// Encrypt your secret using the [Sodium.Core](https://www.nuget.org/packages/Sodium.Core/) package.
8758    /// 
8759    /// ```text
8760    /// var secretValue = System.Text.Encoding.UTF8.GetBytes("mySecret");
8761    /// var publicKey = Convert.FromBase64String("2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=");
8762    /// 
8763    /// var sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);
8764    /// 
8765    /// Console.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));
8766    /// ```
8767    /// 
8768    /// #### Example encrypting a secret using Ruby
8769    /// 
8770    /// Encrypt your secret using the [rbnacl](https://github.com/RubyCrypto/rbnacl) gem.
8771    /// 
8772    /// ```ruby
8773    /// require "rbnacl"
8774    /// require "base64"
8775    /// 
8776    /// key = Base64.decode64("+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=")
8777    /// public_key = RbNaCl::PublicKey.new(key)
8778    /// 
8779    /// box = RbNaCl::Boxes::Sealed.from_public_key(public_key)
8780    /// encrypted_secret = box.encrypt("my_secret")
8781    /// 
8782    /// # Print the base64 encoded secret
8783    /// puts Base64.strict_encode64(encrypted_secret)
8784    /// ```
8785    /// 
8786    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#create-or-update-an-organization-secret)
8787    ///
8788    /// # Content
8789    ///
8790    /// - [`&v1_1_4::request::dependabot_create_or_update_org_secret::body::Json`](crate::v1_1_4::request::dependabot_create_or_update_org_secret::body::Json)
8791    pub fn dependabot_create_or_update_org_secret<Content>(
8792        &self,
8793        org: &str,
8794        secret_name: &str,
8795        theContent: Content,
8796    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
8797    where
8798        Content: Copy + TryInto<crate::v1_1_4::request::dependabot_create_or_update_org_secret::Content<::reqwest::blocking::Body>>,
8799        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::dependabot_create_or_update_org_secret::Content<::reqwest::blocking::Body>>>::Error>
8800    {
8801        let mut theScheme = AuthScheme::from(&self.config.authentication);
8802
8803        while let Some(auth_step) = theScheme.step()? {
8804            match auth_step {
8805                ::authentic::AuthenticationStep::Request(auth_request) => {
8806                    theScheme.respond(self.client.execute(auth_request));
8807                }
8808                ::authentic::AuthenticationStep::WaitFor(duration) => {
8809                    (self.sleep)(duration);
8810                }
8811            }
8812        }
8813        let theBuilder = crate::v1_1_4::request::dependabot_create_or_update_org_secret::reqwest_blocking_builder(
8814            self.config.base_url.as_ref(),
8815            org,
8816            secret_name,
8817            self.config.user_agent.as_ref(),
8818            self.config.accept.as_deref(),
8819        )?
8820        .with_authentication(&theScheme)?;
8821
8822        let theRequest = crate::v1_1_4::request::dependabot_create_or_update_org_secret::reqwest_blocking_request(
8823            theBuilder,
8824            theContent.try_into()?,
8825        )?;
8826
8827        ::log::debug!("HTTP request: {:?}", &theRequest);
8828
8829        let theResponse = self.client.execute(theRequest)?;
8830
8831        ::log::debug!("HTTP response: {:?}", &theResponse);
8832
8833        Ok(theResponse)
8834    }
8835
8836    /// Delete an organization secret
8837    /// 
8838    /// Deletes a secret in an organization using the secret name. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` organization permission to use this endpoint.
8839    /// 
8840    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#delete-an-organization-secret)
8841    pub fn dependabot_delete_org_secret(
8842        &self,
8843        org: &str,
8844        secret_name: &str,
8845    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8846        let mut theScheme = AuthScheme::from(&self.config.authentication);
8847
8848        while let Some(auth_step) = theScheme.step()? {
8849            match auth_step {
8850                ::authentic::AuthenticationStep::Request(auth_request) => {
8851                    theScheme.respond(self.client.execute(auth_request));
8852                }
8853                ::authentic::AuthenticationStep::WaitFor(duration) => {
8854                    (self.sleep)(duration);
8855                }
8856            }
8857        }
8858        let theBuilder = crate::v1_1_4::request::dependabot_delete_org_secret::reqwest_blocking_builder(
8859            self.config.base_url.as_ref(),
8860            org,
8861            secret_name,
8862            self.config.user_agent.as_ref(),
8863            self.config.accept.as_deref(),
8864        )?
8865        .with_authentication(&theScheme)?;
8866
8867        let theRequest =
8868            crate::v1_1_4::request::dependabot_delete_org_secret::reqwest_blocking_request(theBuilder)?;
8869
8870        ::log::debug!("HTTP request: {:?}", &theRequest);
8871
8872        let theResponse = self.client.execute(theRequest)?;
8873
8874        ::log::debug!("HTTP response: {:?}", &theResponse);
8875
8876        Ok(theResponse)
8877    }
8878
8879    /// List selected repositories for an organization secret
8880    /// 
8881    /// Lists all repositories that have been selected when the `visibility` for repository access to a secret is set to `selected`. You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` organization permission to use this endpoint.
8882    /// 
8883    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#list-selected-repositories-for-an-organization-secret)
8884    pub fn dependabot_list_selected_repos_for_org_secret(
8885        &self,
8886        org: &str,
8887        secret_name: &str,
8888        page: ::std::option::Option<i64>,
8889        per_page: ::std::option::Option<i64>,
8890    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8891        let mut theScheme = AuthScheme::from(&self.config.authentication);
8892
8893        while let Some(auth_step) = theScheme.step()? {
8894            match auth_step {
8895                ::authentic::AuthenticationStep::Request(auth_request) => {
8896                    theScheme.respond(self.client.execute(auth_request));
8897                }
8898                ::authentic::AuthenticationStep::WaitFor(duration) => {
8899                    (self.sleep)(duration);
8900                }
8901            }
8902        }
8903        let theBuilder = crate::v1_1_4::request::dependabot_list_selected_repos_for_org_secret::reqwest_blocking_builder(
8904            self.config.base_url.as_ref(),
8905            org,
8906            secret_name,
8907            page,
8908            per_page,
8909            self.config.user_agent.as_ref(),
8910            self.config.accept.as_deref(),
8911        )?
8912        .with_authentication(&theScheme)?;
8913
8914        let theRequest =
8915            crate::v1_1_4::request::dependabot_list_selected_repos_for_org_secret::reqwest_blocking_request(theBuilder)?;
8916
8917        ::log::debug!("HTTP request: {:?}", &theRequest);
8918
8919        let theResponse = self.client.execute(theRequest)?;
8920
8921        ::log::debug!("HTTP response: {:?}", &theResponse);
8922
8923        Ok(theResponse)
8924    }
8925
8926    /// Set selected repositories for an organization secret
8927    /// 
8928    /// Replaces all repositories for an organization secret when the `visibility` for repository access is set to `selected`. The visibility is set when you [Create or update an organization secret](https://docs.github.com/rest/reference/dependabot#create-or-update-an-organization-secret). You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` organization permission to use this endpoint.
8929    /// 
8930    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#set-selected-repositories-for-an-organization-secret)
8931    ///
8932    /// # Content
8933    ///
8934    /// - [`&v1_1_4::request::dependabot_set_selected_repos_for_org_secret::body::Json`](crate::v1_1_4::request::dependabot_set_selected_repos_for_org_secret::body::Json)
8935    pub fn dependabot_set_selected_repos_for_org_secret<Content>(
8936        &self,
8937        org: &str,
8938        secret_name: &str,
8939        theContent: Content,
8940    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
8941    where
8942        Content: Copy + TryInto<crate::v1_1_4::request::dependabot_set_selected_repos_for_org_secret::Content<::reqwest::blocking::Body>>,
8943        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::dependabot_set_selected_repos_for_org_secret::Content<::reqwest::blocking::Body>>>::Error>
8944    {
8945        let mut theScheme = AuthScheme::from(&self.config.authentication);
8946
8947        while let Some(auth_step) = theScheme.step()? {
8948            match auth_step {
8949                ::authentic::AuthenticationStep::Request(auth_request) => {
8950                    theScheme.respond(self.client.execute(auth_request));
8951                }
8952                ::authentic::AuthenticationStep::WaitFor(duration) => {
8953                    (self.sleep)(duration);
8954                }
8955            }
8956        }
8957        let theBuilder = crate::v1_1_4::request::dependabot_set_selected_repos_for_org_secret::reqwest_blocking_builder(
8958            self.config.base_url.as_ref(),
8959            org,
8960            secret_name,
8961            self.config.user_agent.as_ref(),
8962            self.config.accept.as_deref(),
8963        )?
8964        .with_authentication(&theScheme)?;
8965
8966        let theRequest = crate::v1_1_4::request::dependabot_set_selected_repos_for_org_secret::reqwest_blocking_request(
8967            theBuilder,
8968            theContent.try_into()?,
8969        )?;
8970
8971        ::log::debug!("HTTP request: {:?}", &theRequest);
8972
8973        let theResponse = self.client.execute(theRequest)?;
8974
8975        ::log::debug!("HTTP response: {:?}", &theResponse);
8976
8977        Ok(theResponse)
8978    }
8979
8980    /// Add selected repository to an organization secret
8981    /// 
8982    /// Adds a repository to an organization secret when the `visibility` for repository access is set to `selected`. The visibility is set when you [Create or update an organization secret](https://docs.github.com/rest/reference/dependabot#create-or-update-an-organization-secret). You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` organization permission to use this endpoint.
8983    /// 
8984    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#add-selected-repository-to-an-organization-secret)
8985    pub fn dependabot_add_selected_repo_to_org_secret(
8986        &self,
8987        org: &str,
8988        secret_name: &str,
8989        repository_id: i64,
8990    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
8991        let mut theScheme = AuthScheme::from(&self.config.authentication);
8992
8993        while let Some(auth_step) = theScheme.step()? {
8994            match auth_step {
8995                ::authentic::AuthenticationStep::Request(auth_request) => {
8996                    theScheme.respond(self.client.execute(auth_request));
8997                }
8998                ::authentic::AuthenticationStep::WaitFor(duration) => {
8999                    (self.sleep)(duration);
9000                }
9001            }
9002        }
9003        let theBuilder = crate::v1_1_4::request::dependabot_add_selected_repo_to_org_secret::reqwest_blocking_builder(
9004            self.config.base_url.as_ref(),
9005            org,
9006            secret_name,
9007            repository_id,
9008            self.config.user_agent.as_ref(),
9009            self.config.accept.as_deref(),
9010        )?
9011        .with_authentication(&theScheme)?;
9012
9013        let theRequest =
9014            crate::v1_1_4::request::dependabot_add_selected_repo_to_org_secret::reqwest_blocking_request(theBuilder)?;
9015
9016        ::log::debug!("HTTP request: {:?}", &theRequest);
9017
9018        let theResponse = self.client.execute(theRequest)?;
9019
9020        ::log::debug!("HTTP response: {:?}", &theResponse);
9021
9022        Ok(theResponse)
9023    }
9024
9025    /// Remove selected repository from an organization secret
9026    /// 
9027    /// Removes a repository from an organization secret when the `visibility` for repository access is set to `selected`. The visibility is set when you [Create or update an organization secret](https://docs.github.com/rest/reference/dependabot#create-or-update-an-organization-secret). You must authenticate using an access token with the `admin:org` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` organization permission to use this endpoint.
9028    /// 
9029    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#remove-selected-repository-from-an-organization-secret)
9030    pub fn dependabot_remove_selected_repo_from_org_secret(
9031        &self,
9032        org: &str,
9033        secret_name: &str,
9034        repository_id: i64,
9035    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9036        let mut theScheme = AuthScheme::from(&self.config.authentication);
9037
9038        while let Some(auth_step) = theScheme.step()? {
9039            match auth_step {
9040                ::authentic::AuthenticationStep::Request(auth_request) => {
9041                    theScheme.respond(self.client.execute(auth_request));
9042                }
9043                ::authentic::AuthenticationStep::WaitFor(duration) => {
9044                    (self.sleep)(duration);
9045                }
9046            }
9047        }
9048        let theBuilder = crate::v1_1_4::request::dependabot_remove_selected_repo_from_org_secret::reqwest_blocking_builder(
9049            self.config.base_url.as_ref(),
9050            org,
9051            secret_name,
9052            repository_id,
9053            self.config.user_agent.as_ref(),
9054            self.config.accept.as_deref(),
9055        )?
9056        .with_authentication(&theScheme)?;
9057
9058        let theRequest =
9059            crate::v1_1_4::request::dependabot_remove_selected_repo_from_org_secret::reqwest_blocking_request(theBuilder)?;
9060
9061        ::log::debug!("HTTP request: {:?}", &theRequest);
9062
9063        let theResponse = self.client.execute(theRequest)?;
9064
9065        ::log::debug!("HTTP response: {:?}", &theResponse);
9066
9067        Ok(theResponse)
9068    }
9069
9070    /// List public organization events
9071    /// 
9072    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-public-organization-events)
9073    pub fn activity_list_public_org_events(
9074        &self,
9075        org: &str,
9076        per_page: ::std::option::Option<i64>,
9077        page: ::std::option::Option<i64>,
9078    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9079        let mut theScheme = AuthScheme::from(&self.config.authentication);
9080
9081        while let Some(auth_step) = theScheme.step()? {
9082            match auth_step {
9083                ::authentic::AuthenticationStep::Request(auth_request) => {
9084                    theScheme.respond(self.client.execute(auth_request));
9085                }
9086                ::authentic::AuthenticationStep::WaitFor(duration) => {
9087                    (self.sleep)(duration);
9088                }
9089            }
9090        }
9091        let theBuilder = crate::v1_1_4::request::activity_list_public_org_events::reqwest_blocking_builder(
9092            self.config.base_url.as_ref(),
9093            org,
9094            per_page,
9095            page,
9096            self.config.user_agent.as_ref(),
9097            self.config.accept.as_deref(),
9098        )?
9099        .with_authentication(&theScheme)?;
9100
9101        let theRequest =
9102            crate::v1_1_4::request::activity_list_public_org_events::reqwest_blocking_request(theBuilder)?;
9103
9104        ::log::debug!("HTTP request: {:?}", &theRequest);
9105
9106        let theResponse = self.client.execute(theRequest)?;
9107
9108        ::log::debug!("HTTP response: {:?}", &theResponse);
9109
9110        Ok(theResponse)
9111    }
9112
9113    /// Get an external group
9114    /// 
9115    /// Displays information about the specific group's usage.  Provides a list of the group's external members as well as a list of teams that this group is connected to.
9116    /// 
9117    /// You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)" in the GitHub Help documentation.
9118    /// 
9119    /// [API method documentation](https://docs.github.com/rest/reference/teams#external-idp-group-info-for-an-organization)
9120    pub fn teams_external_idp_group_info_for_org(
9121        &self,
9122        org: &str,
9123        group_id: i64,
9124    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9125        let mut theScheme = AuthScheme::from(&self.config.authentication);
9126
9127        while let Some(auth_step) = theScheme.step()? {
9128            match auth_step {
9129                ::authentic::AuthenticationStep::Request(auth_request) => {
9130                    theScheme.respond(self.client.execute(auth_request));
9131                }
9132                ::authentic::AuthenticationStep::WaitFor(duration) => {
9133                    (self.sleep)(duration);
9134                }
9135            }
9136        }
9137        let theBuilder = crate::v1_1_4::request::teams_external_idp_group_info_for_org::reqwest_blocking_builder(
9138            self.config.base_url.as_ref(),
9139            org,
9140            group_id,
9141            self.config.user_agent.as_ref(),
9142            self.config.accept.as_deref(),
9143        )?
9144        .with_authentication(&theScheme)?;
9145
9146        let theRequest =
9147            crate::v1_1_4::request::teams_external_idp_group_info_for_org::reqwest_blocking_request(theBuilder)?;
9148
9149        ::log::debug!("HTTP request: {:?}", &theRequest);
9150
9151        let theResponse = self.client.execute(theRequest)?;
9152
9153        ::log::debug!("HTTP response: {:?}", &theResponse);
9154
9155        Ok(theResponse)
9156    }
9157
9158    /// List external groups in an organization
9159    /// 
9160    /// Lists external groups available in an organization. You can query the groups using the `display_name` parameter, only groups with a `group_name` containing the text provided in the `display_name` parameter will be returned.  You can also limit your page results using the `per_page` parameter. GitHub generates a url-encoded `page` token using a cursor value for where the next page begins. For more information on cursor pagination, see "[Offset and Cursor Pagination explained](https://dev.to/jackmarchant/offset-and-cursor-pagination-explained-b89)."
9161    /// 
9162    /// You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)" in the GitHub Help documentation.
9163    /// 
9164    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-external-idp-groups-for-an-organization)
9165    pub fn teams_list_external_idp_groups_for_org(
9166        &self,
9167        org: &str,
9168        per_page: ::std::option::Option<i64>,
9169        page: ::std::option::Option<i64>,
9170        display_name: ::std::option::Option<&str>,
9171    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9172        let mut theScheme = AuthScheme::from(&self.config.authentication);
9173
9174        while let Some(auth_step) = theScheme.step()? {
9175            match auth_step {
9176                ::authentic::AuthenticationStep::Request(auth_request) => {
9177                    theScheme.respond(self.client.execute(auth_request));
9178                }
9179                ::authentic::AuthenticationStep::WaitFor(duration) => {
9180                    (self.sleep)(duration);
9181                }
9182            }
9183        }
9184        let theBuilder = crate::v1_1_4::request::teams_list_external_idp_groups_for_org::reqwest_blocking_builder(
9185            self.config.base_url.as_ref(),
9186            org,
9187            per_page,
9188            page,
9189            display_name,
9190            self.config.user_agent.as_ref(),
9191            self.config.accept.as_deref(),
9192        )?
9193        .with_authentication(&theScheme)?;
9194
9195        let theRequest =
9196            crate::v1_1_4::request::teams_list_external_idp_groups_for_org::reqwest_blocking_request(theBuilder)?;
9197
9198        ::log::debug!("HTTP request: {:?}", &theRequest);
9199
9200        let theResponse = self.client.execute(theRequest)?;
9201
9202        ::log::debug!("HTTP response: {:?}", &theResponse);
9203
9204        Ok(theResponse)
9205    }
9206
9207    /// List failed organization invitations
9208    /// 
9209    /// The return hash contains `failed_at` and `failed_reason` fields which represent the time at which the invitation failed and the reason for the failure.
9210    /// 
9211    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-failed-organization-invitations)
9212    pub fn orgs_list_failed_invitations(
9213        &self,
9214        org: &str,
9215        per_page: ::std::option::Option<i64>,
9216        page: ::std::option::Option<i64>,
9217    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9218        let mut theScheme = AuthScheme::from(&self.config.authentication);
9219
9220        while let Some(auth_step) = theScheme.step()? {
9221            match auth_step {
9222                ::authentic::AuthenticationStep::Request(auth_request) => {
9223                    theScheme.respond(self.client.execute(auth_request));
9224                }
9225                ::authentic::AuthenticationStep::WaitFor(duration) => {
9226                    (self.sleep)(duration);
9227                }
9228            }
9229        }
9230        let theBuilder = crate::v1_1_4::request::orgs_list_failed_invitations::reqwest_blocking_builder(
9231            self.config.base_url.as_ref(),
9232            org,
9233            per_page,
9234            page,
9235            self.config.user_agent.as_ref(),
9236            self.config.accept.as_deref(),
9237        )?
9238        .with_authentication(&theScheme)?;
9239
9240        let theRequest =
9241            crate::v1_1_4::request::orgs_list_failed_invitations::reqwest_blocking_request(theBuilder)?;
9242
9243        ::log::debug!("HTTP request: {:?}", &theRequest);
9244
9245        let theResponse = self.client.execute(theRequest)?;
9246
9247        ::log::debug!("HTTP response: {:?}", &theResponse);
9248
9249        Ok(theResponse)
9250    }
9251
9252    /// List organization webhooks
9253    /// 
9254    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-organization-webhooks)
9255    pub fn orgs_list_webhooks(
9256        &self,
9257        org: &str,
9258        per_page: ::std::option::Option<i64>,
9259        page: ::std::option::Option<i64>,
9260    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9261        let mut theScheme = AuthScheme::from(&self.config.authentication);
9262
9263        while let Some(auth_step) = theScheme.step()? {
9264            match auth_step {
9265                ::authentic::AuthenticationStep::Request(auth_request) => {
9266                    theScheme.respond(self.client.execute(auth_request));
9267                }
9268                ::authentic::AuthenticationStep::WaitFor(duration) => {
9269                    (self.sleep)(duration);
9270                }
9271            }
9272        }
9273        let theBuilder = crate::v1_1_4::request::orgs_list_webhooks::reqwest_blocking_builder(
9274            self.config.base_url.as_ref(),
9275            org,
9276            per_page,
9277            page,
9278            self.config.user_agent.as_ref(),
9279            self.config.accept.as_deref(),
9280        )?
9281        .with_authentication(&theScheme)?;
9282
9283        let theRequest =
9284            crate::v1_1_4::request::orgs_list_webhooks::reqwest_blocking_request(theBuilder)?;
9285
9286        ::log::debug!("HTTP request: {:?}", &theRequest);
9287
9288        let theResponse = self.client.execute(theRequest)?;
9289
9290        ::log::debug!("HTTP response: {:?}", &theResponse);
9291
9292        Ok(theResponse)
9293    }
9294
9295    /// Create an organization webhook
9296    /// 
9297    /// Here's how you can create a hook that posts payloads in JSON format:
9298    /// 
9299    /// [API method documentation](https://docs.github.com/rest/reference/orgs#create-an-organization-webhook)
9300    ///
9301    /// # Content
9302    ///
9303    /// - [`&v1_1_4::request::orgs_create_webhook::body::Json`](crate::v1_1_4::request::orgs_create_webhook::body::Json)
9304    pub fn orgs_create_webhook<Content>(
9305        &self,
9306        org: &str,
9307        theContent: Content,
9308    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
9309    where
9310        Content: Copy + TryInto<crate::v1_1_4::request::orgs_create_webhook::Content<::reqwest::blocking::Body>>,
9311        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::orgs_create_webhook::Content<::reqwest::blocking::Body>>>::Error>
9312    {
9313        let mut theScheme = AuthScheme::from(&self.config.authentication);
9314
9315        while let Some(auth_step) = theScheme.step()? {
9316            match auth_step {
9317                ::authentic::AuthenticationStep::Request(auth_request) => {
9318                    theScheme.respond(self.client.execute(auth_request));
9319                }
9320                ::authentic::AuthenticationStep::WaitFor(duration) => {
9321                    (self.sleep)(duration);
9322                }
9323            }
9324        }
9325        let theBuilder = crate::v1_1_4::request::orgs_create_webhook::reqwest_blocking_builder(
9326            self.config.base_url.as_ref(),
9327            org,
9328            self.config.user_agent.as_ref(),
9329            self.config.accept.as_deref(),
9330        )?
9331        .with_authentication(&theScheme)?;
9332
9333        let theRequest = crate::v1_1_4::request::orgs_create_webhook::reqwest_blocking_request(
9334            theBuilder,
9335            theContent.try_into()?,
9336        )?;
9337
9338        ::log::debug!("HTTP request: {:?}", &theRequest);
9339
9340        let theResponse = self.client.execute(theRequest)?;
9341
9342        ::log::debug!("HTTP response: {:?}", &theResponse);
9343
9344        Ok(theResponse)
9345    }
9346
9347    /// Get an organization webhook
9348    /// 
9349    /// Returns a webhook configured in an organization. To get only the webhook `config` properties, see "[Get a webhook configuration for an organization](/rest/reference/orgs#get-a-webhook-configuration-for-an-organization)."
9350    /// 
9351    /// [API method documentation](https://docs.github.com/rest/reference/orgs#get-an-organization-webhook)
9352    pub fn orgs_get_webhook(
9353        &self,
9354        org: &str,
9355        hook_id: i64,
9356    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9357        let mut theScheme = AuthScheme::from(&self.config.authentication);
9358
9359        while let Some(auth_step) = theScheme.step()? {
9360            match auth_step {
9361                ::authentic::AuthenticationStep::Request(auth_request) => {
9362                    theScheme.respond(self.client.execute(auth_request));
9363                }
9364                ::authentic::AuthenticationStep::WaitFor(duration) => {
9365                    (self.sleep)(duration);
9366                }
9367            }
9368        }
9369        let theBuilder = crate::v1_1_4::request::orgs_get_webhook::reqwest_blocking_builder(
9370            self.config.base_url.as_ref(),
9371            org,
9372            hook_id,
9373            self.config.user_agent.as_ref(),
9374            self.config.accept.as_deref(),
9375        )?
9376        .with_authentication(&theScheme)?;
9377
9378        let theRequest =
9379            crate::v1_1_4::request::orgs_get_webhook::reqwest_blocking_request(theBuilder)?;
9380
9381        ::log::debug!("HTTP request: {:?}", &theRequest);
9382
9383        let theResponse = self.client.execute(theRequest)?;
9384
9385        ::log::debug!("HTTP response: {:?}", &theResponse);
9386
9387        Ok(theResponse)
9388    }
9389
9390    /// Delete an organization webhook
9391    /// 
9392    /// [API method documentation](https://docs.github.com/rest/reference/orgs#delete-an-organization-webhook)
9393    pub fn orgs_delete_webhook(
9394        &self,
9395        org: &str,
9396        hook_id: i64,
9397    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9398        let mut theScheme = AuthScheme::from(&self.config.authentication);
9399
9400        while let Some(auth_step) = theScheme.step()? {
9401            match auth_step {
9402                ::authentic::AuthenticationStep::Request(auth_request) => {
9403                    theScheme.respond(self.client.execute(auth_request));
9404                }
9405                ::authentic::AuthenticationStep::WaitFor(duration) => {
9406                    (self.sleep)(duration);
9407                }
9408            }
9409        }
9410        let theBuilder = crate::v1_1_4::request::orgs_delete_webhook::reqwest_blocking_builder(
9411            self.config.base_url.as_ref(),
9412            org,
9413            hook_id,
9414            self.config.user_agent.as_ref(),
9415            self.config.accept.as_deref(),
9416        )?
9417        .with_authentication(&theScheme)?;
9418
9419        let theRequest =
9420            crate::v1_1_4::request::orgs_delete_webhook::reqwest_blocking_request(theBuilder)?;
9421
9422        ::log::debug!("HTTP request: {:?}", &theRequest);
9423
9424        let theResponse = self.client.execute(theRequest)?;
9425
9426        ::log::debug!("HTTP response: {:?}", &theResponse);
9427
9428        Ok(theResponse)
9429    }
9430
9431    /// Update an organization webhook
9432    /// 
9433    /// Updates a webhook configured in an organization. When you update a webhook, the `secret` will be overwritten. If you previously had a `secret` set, you must provide the same `secret` or set a new `secret` or the secret will be removed. If you are only updating individual webhook `config` properties, use "[Update a webhook configuration for an organization](/rest/reference/orgs#update-a-webhook-configuration-for-an-organization)."
9434    /// 
9435    /// [API method documentation](https://docs.github.com/rest/reference/orgs#update-an-organization-webhook)
9436    ///
9437    /// # Content
9438    ///
9439    /// - [`&v1_1_4::request::orgs_update_webhook::body::Json`](crate::v1_1_4::request::orgs_update_webhook::body::Json)
9440    pub fn orgs_update_webhook<Content>(
9441        &self,
9442        org: &str,
9443        hook_id: i64,
9444        theContent: Content,
9445    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
9446    where
9447        Content: Copy + TryInto<crate::v1_1_4::request::orgs_update_webhook::Content<::reqwest::blocking::Body>>,
9448        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::orgs_update_webhook::Content<::reqwest::blocking::Body>>>::Error>
9449    {
9450        let mut theScheme = AuthScheme::from(&self.config.authentication);
9451
9452        while let Some(auth_step) = theScheme.step()? {
9453            match auth_step {
9454                ::authentic::AuthenticationStep::Request(auth_request) => {
9455                    theScheme.respond(self.client.execute(auth_request));
9456                }
9457                ::authentic::AuthenticationStep::WaitFor(duration) => {
9458                    (self.sleep)(duration);
9459                }
9460            }
9461        }
9462        let theBuilder = crate::v1_1_4::request::orgs_update_webhook::reqwest_blocking_builder(
9463            self.config.base_url.as_ref(),
9464            org,
9465            hook_id,
9466            self.config.user_agent.as_ref(),
9467            self.config.accept.as_deref(),
9468        )?
9469        .with_authentication(&theScheme)?;
9470
9471        let theRequest = crate::v1_1_4::request::orgs_update_webhook::reqwest_blocking_request(
9472            theBuilder,
9473            theContent.try_into()?,
9474        )?;
9475
9476        ::log::debug!("HTTP request: {:?}", &theRequest);
9477
9478        let theResponse = self.client.execute(theRequest)?;
9479
9480        ::log::debug!("HTTP response: {:?}", &theResponse);
9481
9482        Ok(theResponse)
9483    }
9484
9485    /// Get a webhook configuration for an organization
9486    /// 
9487    /// Returns the webhook configuration for an organization. To get more information about the webhook, including the `active` state and `events`, use "[Get an organization webhook ](/rest/reference/orgs#get-an-organization-webhook)."
9488    /// 
9489    /// Access tokens must have the `admin:org_hook` scope, and GitHub Apps must have the `organization_hooks:read` permission.
9490    /// 
9491    /// [API method documentation](https://docs.github.com/rest/reference/orgs#get-a-webhook-configuration-for-an-organization)
9492    pub fn orgs_get_webhook_config_for_org(
9493        &self,
9494        org: &str,
9495        hook_id: i64,
9496    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9497        let mut theScheme = AuthScheme::from(&self.config.authentication);
9498
9499        while let Some(auth_step) = theScheme.step()? {
9500            match auth_step {
9501                ::authentic::AuthenticationStep::Request(auth_request) => {
9502                    theScheme.respond(self.client.execute(auth_request));
9503                }
9504                ::authentic::AuthenticationStep::WaitFor(duration) => {
9505                    (self.sleep)(duration);
9506                }
9507            }
9508        }
9509        let theBuilder = crate::v1_1_4::request::orgs_get_webhook_config_for_org::reqwest_blocking_builder(
9510            self.config.base_url.as_ref(),
9511            org,
9512            hook_id,
9513            self.config.user_agent.as_ref(),
9514            self.config.accept.as_deref(),
9515        )?
9516        .with_authentication(&theScheme)?;
9517
9518        let theRequest =
9519            crate::v1_1_4::request::orgs_get_webhook_config_for_org::reqwest_blocking_request(theBuilder)?;
9520
9521        ::log::debug!("HTTP request: {:?}", &theRequest);
9522
9523        let theResponse = self.client.execute(theRequest)?;
9524
9525        ::log::debug!("HTTP response: {:?}", &theResponse);
9526
9527        Ok(theResponse)
9528    }
9529
9530    /// Update a webhook configuration for an organization
9531    /// 
9532    /// Updates the webhook configuration for an organization. To update more information about the webhook, including the `active` state and `events`, use "[Update an organization webhook ](/rest/reference/orgs#update-an-organization-webhook)."
9533    /// 
9534    /// Access tokens must have the `admin:org_hook` scope, and GitHub Apps must have the `organization_hooks:write` permission.
9535    /// 
9536    /// [API method documentation](https://docs.github.com/rest/reference/orgs#update-a-webhook-configuration-for-an-organization)
9537    ///
9538    /// # Content
9539    ///
9540    /// - [`&v1_1_4::request::orgs_update_webhook_config_for_org::body::Json`](crate::v1_1_4::request::orgs_update_webhook_config_for_org::body::Json)
9541    pub fn orgs_update_webhook_config_for_org<Content>(
9542        &self,
9543        org: &str,
9544        hook_id: i64,
9545        theContent: Content,
9546    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
9547    where
9548        Content: Copy + TryInto<crate::v1_1_4::request::orgs_update_webhook_config_for_org::Content<::reqwest::blocking::Body>>,
9549        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::orgs_update_webhook_config_for_org::Content<::reqwest::blocking::Body>>>::Error>
9550    {
9551        let mut theScheme = AuthScheme::from(&self.config.authentication);
9552
9553        while let Some(auth_step) = theScheme.step()? {
9554            match auth_step {
9555                ::authentic::AuthenticationStep::Request(auth_request) => {
9556                    theScheme.respond(self.client.execute(auth_request));
9557                }
9558                ::authentic::AuthenticationStep::WaitFor(duration) => {
9559                    (self.sleep)(duration);
9560                }
9561            }
9562        }
9563        let theBuilder = crate::v1_1_4::request::orgs_update_webhook_config_for_org::reqwest_blocking_builder(
9564            self.config.base_url.as_ref(),
9565            org,
9566            hook_id,
9567            self.config.user_agent.as_ref(),
9568            self.config.accept.as_deref(),
9569        )?
9570        .with_authentication(&theScheme)?;
9571
9572        let theRequest = crate::v1_1_4::request::orgs_update_webhook_config_for_org::reqwest_blocking_request(
9573            theBuilder,
9574            theContent.try_into()?,
9575        )?;
9576
9577        ::log::debug!("HTTP request: {:?}", &theRequest);
9578
9579        let theResponse = self.client.execute(theRequest)?;
9580
9581        ::log::debug!("HTTP response: {:?}", &theResponse);
9582
9583        Ok(theResponse)
9584    }
9585
9586    /// List deliveries for an organization webhook
9587    /// 
9588    /// Returns a list of webhook deliveries for a webhook configured in an organization.
9589    /// 
9590    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-deliveries-for-an-organization-webhook)
9591    pub fn orgs_list_webhook_deliveries(
9592        &self,
9593        org: &str,
9594        hook_id: i64,
9595        per_page: ::std::option::Option<i64>,
9596        cursor: ::std::option::Option<&str>,
9597    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9598        let mut theScheme = AuthScheme::from(&self.config.authentication);
9599
9600        while let Some(auth_step) = theScheme.step()? {
9601            match auth_step {
9602                ::authentic::AuthenticationStep::Request(auth_request) => {
9603                    theScheme.respond(self.client.execute(auth_request));
9604                }
9605                ::authentic::AuthenticationStep::WaitFor(duration) => {
9606                    (self.sleep)(duration);
9607                }
9608            }
9609        }
9610        let theBuilder = crate::v1_1_4::request::orgs_list_webhook_deliveries::reqwest_blocking_builder(
9611            self.config.base_url.as_ref(),
9612            org,
9613            hook_id,
9614            per_page,
9615            cursor,
9616            self.config.user_agent.as_ref(),
9617            self.config.accept.as_deref(),
9618        )?
9619        .with_authentication(&theScheme)?;
9620
9621        let theRequest =
9622            crate::v1_1_4::request::orgs_list_webhook_deliveries::reqwest_blocking_request(theBuilder)?;
9623
9624        ::log::debug!("HTTP request: {:?}", &theRequest);
9625
9626        let theResponse = self.client.execute(theRequest)?;
9627
9628        ::log::debug!("HTTP response: {:?}", &theResponse);
9629
9630        Ok(theResponse)
9631    }
9632
9633    /// Get a webhook delivery for an organization webhook
9634    /// 
9635    /// Returns a delivery for a webhook configured in an organization.
9636    /// 
9637    /// [API method documentation](https://docs.github.com/rest/reference/orgs#get-a-webhook-delivery-for-an-organization-webhook)
9638    pub fn orgs_get_webhook_delivery(
9639        &self,
9640        org: &str,
9641        hook_id: i64,
9642        delivery_id: i64,
9643    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9644        let mut theScheme = AuthScheme::from(&self.config.authentication);
9645
9646        while let Some(auth_step) = theScheme.step()? {
9647            match auth_step {
9648                ::authentic::AuthenticationStep::Request(auth_request) => {
9649                    theScheme.respond(self.client.execute(auth_request));
9650                }
9651                ::authentic::AuthenticationStep::WaitFor(duration) => {
9652                    (self.sleep)(duration);
9653                }
9654            }
9655        }
9656        let theBuilder = crate::v1_1_4::request::orgs_get_webhook_delivery::reqwest_blocking_builder(
9657            self.config.base_url.as_ref(),
9658            org,
9659            hook_id,
9660            delivery_id,
9661            self.config.user_agent.as_ref(),
9662            self.config.accept.as_deref(),
9663        )?
9664        .with_authentication(&theScheme)?;
9665
9666        let theRequest =
9667            crate::v1_1_4::request::orgs_get_webhook_delivery::reqwest_blocking_request(theBuilder)?;
9668
9669        ::log::debug!("HTTP request: {:?}", &theRequest);
9670
9671        let theResponse = self.client.execute(theRequest)?;
9672
9673        ::log::debug!("HTTP response: {:?}", &theResponse);
9674
9675        Ok(theResponse)
9676    }
9677
9678    /// Redeliver a delivery for an organization webhook
9679    /// 
9680    /// Redeliver a delivery for a webhook configured in an organization.
9681    /// 
9682    /// [API method documentation](https://docs.github.com/rest/reference/orgs#redeliver-a-delivery-for-an-organization-webhook)
9683    pub fn orgs_redeliver_webhook_delivery(
9684        &self,
9685        org: &str,
9686        hook_id: i64,
9687        delivery_id: i64,
9688    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9689        let mut theScheme = AuthScheme::from(&self.config.authentication);
9690
9691        while let Some(auth_step) = theScheme.step()? {
9692            match auth_step {
9693                ::authentic::AuthenticationStep::Request(auth_request) => {
9694                    theScheme.respond(self.client.execute(auth_request));
9695                }
9696                ::authentic::AuthenticationStep::WaitFor(duration) => {
9697                    (self.sleep)(duration);
9698                }
9699            }
9700        }
9701        let theBuilder = crate::v1_1_4::request::orgs_redeliver_webhook_delivery::reqwest_blocking_builder(
9702            self.config.base_url.as_ref(),
9703            org,
9704            hook_id,
9705            delivery_id,
9706            self.config.user_agent.as_ref(),
9707            self.config.accept.as_deref(),
9708        )?
9709        .with_authentication(&theScheme)?;
9710
9711        let theRequest =
9712            crate::v1_1_4::request::orgs_redeliver_webhook_delivery::reqwest_blocking_request(theBuilder)?;
9713
9714        ::log::debug!("HTTP request: {:?}", &theRequest);
9715
9716        let theResponse = self.client.execute(theRequest)?;
9717
9718        ::log::debug!("HTTP response: {:?}", &theResponse);
9719
9720        Ok(theResponse)
9721    }
9722
9723    /// Ping an organization webhook
9724    /// 
9725    /// This will trigger a [ping event](https://docs.github.com/webhooks/#ping-event) to be sent to the hook.
9726    /// 
9727    /// [API method documentation](https://docs.github.com/rest/reference/orgs#ping-an-organization-webhook)
9728    pub fn orgs_ping_webhook(
9729        &self,
9730        org: &str,
9731        hook_id: i64,
9732    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9733        let mut theScheme = AuthScheme::from(&self.config.authentication);
9734
9735        while let Some(auth_step) = theScheme.step()? {
9736            match auth_step {
9737                ::authentic::AuthenticationStep::Request(auth_request) => {
9738                    theScheme.respond(self.client.execute(auth_request));
9739                }
9740                ::authentic::AuthenticationStep::WaitFor(duration) => {
9741                    (self.sleep)(duration);
9742                }
9743            }
9744        }
9745        let theBuilder = crate::v1_1_4::request::orgs_ping_webhook::reqwest_blocking_builder(
9746            self.config.base_url.as_ref(),
9747            org,
9748            hook_id,
9749            self.config.user_agent.as_ref(),
9750            self.config.accept.as_deref(),
9751        )?
9752        .with_authentication(&theScheme)?;
9753
9754        let theRequest =
9755            crate::v1_1_4::request::orgs_ping_webhook::reqwest_blocking_request(theBuilder)?;
9756
9757        ::log::debug!("HTTP request: {:?}", &theRequest);
9758
9759        let theResponse = self.client.execute(theRequest)?;
9760
9761        ::log::debug!("HTTP response: {:?}", &theResponse);
9762
9763        Ok(theResponse)
9764    }
9765
9766    /// Get an organization installation for the authenticated app
9767    /// 
9768    /// Enables an authenticated GitHub App to find the organization's installation information.
9769    /// 
9770    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
9771    /// 
9772    /// [API method documentation](https://docs.github.com/rest/reference/apps#get-an-organization-installation-for-the-authenticated-app)
9773    pub fn apps_get_org_installation(
9774        &self,
9775        org: &str,
9776    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9777        let mut theScheme = AuthScheme::from(&self.config.authentication);
9778
9779        while let Some(auth_step) = theScheme.step()? {
9780            match auth_step {
9781                ::authentic::AuthenticationStep::Request(auth_request) => {
9782                    theScheme.respond(self.client.execute(auth_request));
9783                }
9784                ::authentic::AuthenticationStep::WaitFor(duration) => {
9785                    (self.sleep)(duration);
9786                }
9787            }
9788        }
9789        let theBuilder = crate::v1_1_4::request::apps_get_org_installation::reqwest_blocking_builder(
9790            self.config.base_url.as_ref(),
9791            org,
9792            self.config.user_agent.as_ref(),
9793            self.config.accept.as_deref(),
9794        )?
9795        .with_authentication(&theScheme)?;
9796
9797        let theRequest =
9798            crate::v1_1_4::request::apps_get_org_installation::reqwest_blocking_request(theBuilder)?;
9799
9800        ::log::debug!("HTTP request: {:?}", &theRequest);
9801
9802        let theResponse = self.client.execute(theRequest)?;
9803
9804        ::log::debug!("HTTP response: {:?}", &theResponse);
9805
9806        Ok(theResponse)
9807    }
9808
9809    /// List app installations for an organization
9810    /// 
9811    /// Lists all GitHub Apps in an organization. The installation count includes all GitHub Apps installed on repositories in the organization. You must be an organization owner with `admin:read` scope to use this endpoint.
9812    /// 
9813    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-app-installations-for-an-organization)
9814    pub fn orgs_list_app_installations(
9815        &self,
9816        org: &str,
9817        per_page: ::std::option::Option<i64>,
9818        page: ::std::option::Option<i64>,
9819    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9820        let mut theScheme = AuthScheme::from(&self.config.authentication);
9821
9822        while let Some(auth_step) = theScheme.step()? {
9823            match auth_step {
9824                ::authentic::AuthenticationStep::Request(auth_request) => {
9825                    theScheme.respond(self.client.execute(auth_request));
9826                }
9827                ::authentic::AuthenticationStep::WaitFor(duration) => {
9828                    (self.sleep)(duration);
9829                }
9830            }
9831        }
9832        let theBuilder = crate::v1_1_4::request::orgs_list_app_installations::reqwest_blocking_builder(
9833            self.config.base_url.as_ref(),
9834            org,
9835            per_page,
9836            page,
9837            self.config.user_agent.as_ref(),
9838            self.config.accept.as_deref(),
9839        )?
9840        .with_authentication(&theScheme)?;
9841
9842        let theRequest =
9843            crate::v1_1_4::request::orgs_list_app_installations::reqwest_blocking_request(theBuilder)?;
9844
9845        ::log::debug!("HTTP request: {:?}", &theRequest);
9846
9847        let theResponse = self.client.execute(theRequest)?;
9848
9849        ::log::debug!("HTTP response: {:?}", &theResponse);
9850
9851        Ok(theResponse)
9852    }
9853
9854    /// Get interaction restrictions for an organization
9855    /// 
9856    /// Shows which type of GitHub user can interact with this organization and when the restriction expires. If there is no restrictions, you will see an empty response.
9857    /// 
9858    /// [API method documentation](https://docs.github.com/rest/reference/interactions#get-interaction-restrictions-for-an-organization)
9859    pub fn interactions_get_restrictions_for_org(
9860        &self,
9861        org: &str,
9862    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9863        let mut theScheme = AuthScheme::from(&self.config.authentication);
9864
9865        while let Some(auth_step) = theScheme.step()? {
9866            match auth_step {
9867                ::authentic::AuthenticationStep::Request(auth_request) => {
9868                    theScheme.respond(self.client.execute(auth_request));
9869                }
9870                ::authentic::AuthenticationStep::WaitFor(duration) => {
9871                    (self.sleep)(duration);
9872                }
9873            }
9874        }
9875        let theBuilder = crate::v1_1_4::request::interactions_get_restrictions_for_org::reqwest_blocking_builder(
9876            self.config.base_url.as_ref(),
9877            org,
9878            self.config.user_agent.as_ref(),
9879            self.config.accept.as_deref(),
9880        )?
9881        .with_authentication(&theScheme)?;
9882
9883        let theRequest =
9884            crate::v1_1_4::request::interactions_get_restrictions_for_org::reqwest_blocking_request(theBuilder)?;
9885
9886        ::log::debug!("HTTP request: {:?}", &theRequest);
9887
9888        let theResponse = self.client.execute(theRequest)?;
9889
9890        ::log::debug!("HTTP response: {:?}", &theResponse);
9891
9892        Ok(theResponse)
9893    }
9894
9895    /// Set interaction restrictions for an organization
9896    /// 
9897    /// Temporarily restricts interactions to a certain type of GitHub user in any public repository in the given organization. You must be an organization owner to set these restrictions. Setting the interaction limit at the organization level will overwrite any interaction limits that are set for individual repositories owned by the organization.
9898    /// 
9899    /// [API method documentation](https://docs.github.com/rest/reference/interactions#set-interaction-restrictions-for-an-organization)
9900    ///
9901    /// # Content
9902    ///
9903    /// - [`&v1_1_4::schema::InteractionLimit`](crate::v1_1_4::schema::InteractionLimit)
9904    pub fn interactions_set_restrictions_for_org<Content>(
9905        &self,
9906        org: &str,
9907        theContent: Content,
9908    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
9909    where
9910        Content: Copy + TryInto<crate::v1_1_4::request::interactions_set_restrictions_for_org::Content<::reqwest::blocking::Body>>,
9911        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::interactions_set_restrictions_for_org::Content<::reqwest::blocking::Body>>>::Error>
9912    {
9913        let mut theScheme = AuthScheme::from(&self.config.authentication);
9914
9915        while let Some(auth_step) = theScheme.step()? {
9916            match auth_step {
9917                ::authentic::AuthenticationStep::Request(auth_request) => {
9918                    theScheme.respond(self.client.execute(auth_request));
9919                }
9920                ::authentic::AuthenticationStep::WaitFor(duration) => {
9921                    (self.sleep)(duration);
9922                }
9923            }
9924        }
9925        let theBuilder = crate::v1_1_4::request::interactions_set_restrictions_for_org::reqwest_blocking_builder(
9926            self.config.base_url.as_ref(),
9927            org,
9928            self.config.user_agent.as_ref(),
9929            self.config.accept.as_deref(),
9930        )?
9931        .with_authentication(&theScheme)?;
9932
9933        let theRequest = crate::v1_1_4::request::interactions_set_restrictions_for_org::reqwest_blocking_request(
9934            theBuilder,
9935            theContent.try_into()?,
9936        )?;
9937
9938        ::log::debug!("HTTP request: {:?}", &theRequest);
9939
9940        let theResponse = self.client.execute(theRequest)?;
9941
9942        ::log::debug!("HTTP response: {:?}", &theResponse);
9943
9944        Ok(theResponse)
9945    }
9946
9947    /// Remove interaction restrictions for an organization
9948    /// 
9949    /// Removes all interaction restrictions from public repositories in the given organization. You must be an organization owner to remove restrictions.
9950    /// 
9951    /// [API method documentation](https://docs.github.com/rest/reference/interactions#remove-interaction-restrictions-for-an-organization)
9952    pub fn interactions_remove_restrictions_for_org(
9953        &self,
9954        org: &str,
9955    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9956        let mut theScheme = AuthScheme::from(&self.config.authentication);
9957
9958        while let Some(auth_step) = theScheme.step()? {
9959            match auth_step {
9960                ::authentic::AuthenticationStep::Request(auth_request) => {
9961                    theScheme.respond(self.client.execute(auth_request));
9962                }
9963                ::authentic::AuthenticationStep::WaitFor(duration) => {
9964                    (self.sleep)(duration);
9965                }
9966            }
9967        }
9968        let theBuilder = crate::v1_1_4::request::interactions_remove_restrictions_for_org::reqwest_blocking_builder(
9969            self.config.base_url.as_ref(),
9970            org,
9971            self.config.user_agent.as_ref(),
9972            self.config.accept.as_deref(),
9973        )?
9974        .with_authentication(&theScheme)?;
9975
9976        let theRequest =
9977            crate::v1_1_4::request::interactions_remove_restrictions_for_org::reqwest_blocking_request(theBuilder)?;
9978
9979        ::log::debug!("HTTP request: {:?}", &theRequest);
9980
9981        let theResponse = self.client.execute(theRequest)?;
9982
9983        ::log::debug!("HTTP response: {:?}", &theResponse);
9984
9985        Ok(theResponse)
9986    }
9987
9988    /// List pending organization invitations
9989    /// 
9990    /// The return hash contains a `role` field which refers to the Organization Invitation role and will be one of the following values: `direct_member`, `admin`, `billing_manager`, `hiring_manager`, or `reinstate`. If the invitee is not a GitHub member, the `login` field in the return hash will be `null`.
9991    /// 
9992    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-pending-organization-invitations)
9993    pub fn orgs_list_pending_invitations(
9994        &self,
9995        org: &str,
9996        per_page: ::std::option::Option<i64>,
9997        page: ::std::option::Option<i64>,
9998    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
9999        let mut theScheme = AuthScheme::from(&self.config.authentication);
10000
10001        while let Some(auth_step) = theScheme.step()? {
10002            match auth_step {
10003                ::authentic::AuthenticationStep::Request(auth_request) => {
10004                    theScheme.respond(self.client.execute(auth_request));
10005                }
10006                ::authentic::AuthenticationStep::WaitFor(duration) => {
10007                    (self.sleep)(duration);
10008                }
10009            }
10010        }
10011        let theBuilder = crate::v1_1_4::request::orgs_list_pending_invitations::reqwest_blocking_builder(
10012            self.config.base_url.as_ref(),
10013            org,
10014            per_page,
10015            page,
10016            self.config.user_agent.as_ref(),
10017            self.config.accept.as_deref(),
10018        )?
10019        .with_authentication(&theScheme)?;
10020
10021        let theRequest =
10022            crate::v1_1_4::request::orgs_list_pending_invitations::reqwest_blocking_request(theBuilder)?;
10023
10024        ::log::debug!("HTTP request: {:?}", &theRequest);
10025
10026        let theResponse = self.client.execute(theRequest)?;
10027
10028        ::log::debug!("HTTP response: {:?}", &theResponse);
10029
10030        Ok(theResponse)
10031    }
10032
10033    /// Create an organization invitation
10034    /// 
10035    /// Invite people to an organization by using their GitHub user ID or their email address. In order to create invitations in an organization, the authenticated user must be an organization owner.
10036    /// 
10037    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
10038    /// 
10039    /// [API method documentation](https://docs.github.com/rest/reference/orgs#create-an-organization-invitation)
10040    ///
10041    /// # Content
10042    ///
10043    /// - [`&v1_1_4::request::orgs_create_invitation::body::Json`](crate::v1_1_4::request::orgs_create_invitation::body::Json)
10044    pub fn orgs_create_invitation<Content>(
10045        &self,
10046        org: &str,
10047        theContent: Content,
10048    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
10049    where
10050        Content: Copy + TryInto<crate::v1_1_4::request::orgs_create_invitation::Content<::reqwest::blocking::Body>>,
10051        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::orgs_create_invitation::Content<::reqwest::blocking::Body>>>::Error>
10052    {
10053        let mut theScheme = AuthScheme::from(&self.config.authentication);
10054
10055        while let Some(auth_step) = theScheme.step()? {
10056            match auth_step {
10057                ::authentic::AuthenticationStep::Request(auth_request) => {
10058                    theScheme.respond(self.client.execute(auth_request));
10059                }
10060                ::authentic::AuthenticationStep::WaitFor(duration) => {
10061                    (self.sleep)(duration);
10062                }
10063            }
10064        }
10065        let theBuilder = crate::v1_1_4::request::orgs_create_invitation::reqwest_blocking_builder(
10066            self.config.base_url.as_ref(),
10067            org,
10068            self.config.user_agent.as_ref(),
10069            self.config.accept.as_deref(),
10070        )?
10071        .with_authentication(&theScheme)?;
10072
10073        let theRequest = crate::v1_1_4::request::orgs_create_invitation::reqwest_blocking_request(
10074            theBuilder,
10075            theContent.try_into()?,
10076        )?;
10077
10078        ::log::debug!("HTTP request: {:?}", &theRequest);
10079
10080        let theResponse = self.client.execute(theRequest)?;
10081
10082        ::log::debug!("HTTP response: {:?}", &theResponse);
10083
10084        Ok(theResponse)
10085    }
10086
10087    /// Cancel an organization invitation
10088    /// 
10089    /// Cancel an organization invitation. In order to cancel an organization invitation, the authenticated user must be an organization owner.
10090    /// 
10091    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications).
10092    /// 
10093    /// [API method documentation](https://docs.github.com/rest/reference/orgs#cancel-an-organization-invitation)
10094    pub fn orgs_cancel_invitation(
10095        &self,
10096        org: &str,
10097        invitation_id: i64,
10098    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10099        let mut theScheme = AuthScheme::from(&self.config.authentication);
10100
10101        while let Some(auth_step) = theScheme.step()? {
10102            match auth_step {
10103                ::authentic::AuthenticationStep::Request(auth_request) => {
10104                    theScheme.respond(self.client.execute(auth_request));
10105                }
10106                ::authentic::AuthenticationStep::WaitFor(duration) => {
10107                    (self.sleep)(duration);
10108                }
10109            }
10110        }
10111        let theBuilder = crate::v1_1_4::request::orgs_cancel_invitation::reqwest_blocking_builder(
10112            self.config.base_url.as_ref(),
10113            org,
10114            invitation_id,
10115            self.config.user_agent.as_ref(),
10116            self.config.accept.as_deref(),
10117        )?
10118        .with_authentication(&theScheme)?;
10119
10120        let theRequest =
10121            crate::v1_1_4::request::orgs_cancel_invitation::reqwest_blocking_request(theBuilder)?;
10122
10123        ::log::debug!("HTTP request: {:?}", &theRequest);
10124
10125        let theResponse = self.client.execute(theRequest)?;
10126
10127        ::log::debug!("HTTP response: {:?}", &theResponse);
10128
10129        Ok(theResponse)
10130    }
10131
10132    /// List organization invitation teams
10133    /// 
10134    /// List all teams associated with an invitation. In order to see invitations in an organization, the authenticated user must be an organization owner.
10135    /// 
10136    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-organization-invitation-teams)
10137    pub fn orgs_list_invitation_teams(
10138        &self,
10139        org: &str,
10140        invitation_id: i64,
10141        per_page: ::std::option::Option<i64>,
10142        page: ::std::option::Option<i64>,
10143    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10144        let mut theScheme = AuthScheme::from(&self.config.authentication);
10145
10146        while let Some(auth_step) = theScheme.step()? {
10147            match auth_step {
10148                ::authentic::AuthenticationStep::Request(auth_request) => {
10149                    theScheme.respond(self.client.execute(auth_request));
10150                }
10151                ::authentic::AuthenticationStep::WaitFor(duration) => {
10152                    (self.sleep)(duration);
10153                }
10154            }
10155        }
10156        let theBuilder = crate::v1_1_4::request::orgs_list_invitation_teams::reqwest_blocking_builder(
10157            self.config.base_url.as_ref(),
10158            org,
10159            invitation_id,
10160            per_page,
10161            page,
10162            self.config.user_agent.as_ref(),
10163            self.config.accept.as_deref(),
10164        )?
10165        .with_authentication(&theScheme)?;
10166
10167        let theRequest =
10168            crate::v1_1_4::request::orgs_list_invitation_teams::reqwest_blocking_request(theBuilder)?;
10169
10170        ::log::debug!("HTTP request: {:?}", &theRequest);
10171
10172        let theResponse = self.client.execute(theRequest)?;
10173
10174        ::log::debug!("HTTP response: {:?}", &theResponse);
10175
10176        Ok(theResponse)
10177    }
10178
10179    /// List organization issues assigned to the authenticated user
10180    /// 
10181    /// List issues in an organization assigned to the authenticated user.
10182    /// 
10183    /// **Note**: GitHub's REST API v3 considers every pull request an issue, but not every issue is a pull request. For this
10184    /// reason, "Issues" endpoints may return both issues and pull requests in the response. You can identify pull requests by
10185    /// the `pull_request` key. Be aware that the `id` of a pull request returned from "Issues" endpoints will be an _issue id_. To find out the pull
10186    /// request id, use the "[List pull requests](https://docs.github.com/rest/reference/pulls#list-pull-requests)" endpoint.
10187    /// 
10188    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-organization-issues-assigned-to-the-authenticated-user)
10189    #[allow(clippy::too_many_arguments)]
10190    pub fn issues_list_for_org(
10191        &self,
10192        org: &str,
10193        filter: ::std::option::Option<&str>,
10194        state: ::std::option::Option<&str>,
10195        labels: ::std::option::Option<&str>,
10196        sort: &crate::types::Sort<'_>,
10197        since: ::std::option::Option<&str>,
10198        per_page: ::std::option::Option<i64>,
10199        page: ::std::option::Option<i64>,
10200    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10201        let (sort, direction) = sort.extract();
10202        let mut theScheme = AuthScheme::from(&self.config.authentication);
10203
10204        while let Some(auth_step) = theScheme.step()? {
10205            match auth_step {
10206                ::authentic::AuthenticationStep::Request(auth_request) => {
10207                    theScheme.respond(self.client.execute(auth_request));
10208                }
10209                ::authentic::AuthenticationStep::WaitFor(duration) => {
10210                    (self.sleep)(duration);
10211                }
10212            }
10213        }
10214        let theBuilder = crate::v1_1_4::request::issues_list_for_org::reqwest_blocking_builder(
10215            self.config.base_url.as_ref(),
10216            org,
10217            filter,
10218            state,
10219            labels,
10220            sort,
10221            direction,
10222            since,
10223            per_page,
10224            page,
10225            self.config.user_agent.as_ref(),
10226            self.config.accept.as_deref(),
10227        )?
10228        .with_authentication(&theScheme)?;
10229
10230        let theRequest =
10231            crate::v1_1_4::request::issues_list_for_org::reqwest_blocking_request(theBuilder)?;
10232
10233        ::log::debug!("HTTP request: {:?}", &theRequest);
10234
10235        let theResponse = self.client.execute(theRequest)?;
10236
10237        ::log::debug!("HTTP response: {:?}", &theResponse);
10238
10239        Ok(theResponse)
10240    }
10241
10242    /// List organization members
10243    /// 
10244    /// List all users who are members of an organization. If the authenticated user is also a member of this organization then both concealed and public members will be returned.
10245    /// 
10246    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-organization-members)
10247    pub fn orgs_list_members(
10248        &self,
10249        org: &str,
10250        filter: ::std::option::Option<&str>,
10251        role: ::std::option::Option<&str>,
10252        per_page: ::std::option::Option<i64>,
10253        page: ::std::option::Option<i64>,
10254    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10255        let mut theScheme = AuthScheme::from(&self.config.authentication);
10256
10257        while let Some(auth_step) = theScheme.step()? {
10258            match auth_step {
10259                ::authentic::AuthenticationStep::Request(auth_request) => {
10260                    theScheme.respond(self.client.execute(auth_request));
10261                }
10262                ::authentic::AuthenticationStep::WaitFor(duration) => {
10263                    (self.sleep)(duration);
10264                }
10265            }
10266        }
10267        let theBuilder = crate::v1_1_4::request::orgs_list_members::reqwest_blocking_builder(
10268            self.config.base_url.as_ref(),
10269            org,
10270            filter,
10271            role,
10272            per_page,
10273            page,
10274            self.config.user_agent.as_ref(),
10275            self.config.accept.as_deref(),
10276        )?
10277        .with_authentication(&theScheme)?;
10278
10279        let theRequest =
10280            crate::v1_1_4::request::orgs_list_members::reqwest_blocking_request(theBuilder)?;
10281
10282        ::log::debug!("HTTP request: {:?}", &theRequest);
10283
10284        let theResponse = self.client.execute(theRequest)?;
10285
10286        ::log::debug!("HTTP response: {:?}", &theResponse);
10287
10288        Ok(theResponse)
10289    }
10290
10291    /// Check organization membership for a user
10292    /// 
10293    /// Check if a user is, publicly or privately, a member of the organization.
10294    /// 
10295    /// [API method documentation](https://docs.github.com/rest/reference/orgs#check-organization-membership-for-a-user)
10296    pub fn orgs_check_membership_for_user(
10297        &self,
10298        org: &str,
10299        username: &str,
10300    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10301        let mut theScheme = AuthScheme::from(&self.config.authentication);
10302
10303        while let Some(auth_step) = theScheme.step()? {
10304            match auth_step {
10305                ::authentic::AuthenticationStep::Request(auth_request) => {
10306                    theScheme.respond(self.client.execute(auth_request));
10307                }
10308                ::authentic::AuthenticationStep::WaitFor(duration) => {
10309                    (self.sleep)(duration);
10310                }
10311            }
10312        }
10313        let theBuilder = crate::v1_1_4::request::orgs_check_membership_for_user::reqwest_blocking_builder(
10314            self.config.base_url.as_ref(),
10315            org,
10316            username,
10317            self.config.user_agent.as_ref(),
10318            self.config.accept.as_deref(),
10319        )?
10320        .with_authentication(&theScheme)?;
10321
10322        let theRequest =
10323            crate::v1_1_4::request::orgs_check_membership_for_user::reqwest_blocking_request(theBuilder)?;
10324
10325        ::log::debug!("HTTP request: {:?}", &theRequest);
10326
10327        let theResponse = self.client.execute(theRequest)?;
10328
10329        ::log::debug!("HTTP response: {:?}", &theResponse);
10330
10331        Ok(theResponse)
10332    }
10333
10334    /// Remove an organization member
10335    /// 
10336    /// Removing a user from this list will remove them from all teams and they will no longer have any access to the organization's repositories.
10337    /// 
10338    /// [API method documentation](https://docs.github.com/rest/reference/orgs#remove-an-organization-member)
10339    pub fn orgs_remove_member(
10340        &self,
10341        org: &str,
10342        username: &str,
10343    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10344        let mut theScheme = AuthScheme::from(&self.config.authentication);
10345
10346        while let Some(auth_step) = theScheme.step()? {
10347            match auth_step {
10348                ::authentic::AuthenticationStep::Request(auth_request) => {
10349                    theScheme.respond(self.client.execute(auth_request));
10350                }
10351                ::authentic::AuthenticationStep::WaitFor(duration) => {
10352                    (self.sleep)(duration);
10353                }
10354            }
10355        }
10356        let theBuilder = crate::v1_1_4::request::orgs_remove_member::reqwest_blocking_builder(
10357            self.config.base_url.as_ref(),
10358            org,
10359            username,
10360            self.config.user_agent.as_ref(),
10361            self.config.accept.as_deref(),
10362        )?
10363        .with_authentication(&theScheme)?;
10364
10365        let theRequest =
10366            crate::v1_1_4::request::orgs_remove_member::reqwest_blocking_request(theBuilder)?;
10367
10368        ::log::debug!("HTTP request: {:?}", &theRequest);
10369
10370        let theResponse = self.client.execute(theRequest)?;
10371
10372        ::log::debug!("HTTP response: {:?}", &theResponse);
10373
10374        Ok(theResponse)
10375    }
10376
10377    /// Get organization membership for a user
10378    /// 
10379    /// In order to get a user's membership with an organization, the authenticated user must be an organization member. The `state` parameter in the response can be used to identify the user's membership status.
10380    /// 
10381    /// [API method documentation](https://docs.github.com/rest/reference/orgs#get-organization-membership-for-a-user)
10382    pub fn orgs_get_membership_for_user(
10383        &self,
10384        org: &str,
10385        username: &str,
10386    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10387        let mut theScheme = AuthScheme::from(&self.config.authentication);
10388
10389        while let Some(auth_step) = theScheme.step()? {
10390            match auth_step {
10391                ::authentic::AuthenticationStep::Request(auth_request) => {
10392                    theScheme.respond(self.client.execute(auth_request));
10393                }
10394                ::authentic::AuthenticationStep::WaitFor(duration) => {
10395                    (self.sleep)(duration);
10396                }
10397            }
10398        }
10399        let theBuilder = crate::v1_1_4::request::orgs_get_membership_for_user::reqwest_blocking_builder(
10400            self.config.base_url.as_ref(),
10401            org,
10402            username,
10403            self.config.user_agent.as_ref(),
10404            self.config.accept.as_deref(),
10405        )?
10406        .with_authentication(&theScheme)?;
10407
10408        let theRequest =
10409            crate::v1_1_4::request::orgs_get_membership_for_user::reqwest_blocking_request(theBuilder)?;
10410
10411        ::log::debug!("HTTP request: {:?}", &theRequest);
10412
10413        let theResponse = self.client.execute(theRequest)?;
10414
10415        ::log::debug!("HTTP response: {:?}", &theResponse);
10416
10417        Ok(theResponse)
10418    }
10419
10420    /// Set organization membership for a user
10421    /// 
10422    /// Only authenticated organization owners can add a member to the organization or update the member's role.
10423    /// 
10424    /// *   If the authenticated user is _adding_ a member to the organization, the invited user will receive an email inviting them to the organization. The user's [membership status](https://docs.github.com/rest/reference/orgs#get-organization-membership-for-a-user) will be `pending` until they accept the invitation.
10425    ///     
10426    /// *   Authenticated users can _update_ a user's membership by passing the `role` parameter. If the authenticated user changes a member's role to `admin`, the affected user will receive an email notifying them that they've been made an organization owner. If the authenticated user changes an owner's role to `member`, no email will be sent.
10427    /// 
10428    /// **Rate limits**
10429    /// 
10430    /// To prevent abuse, the authenticated user is limited to 50 organization invitations per 24 hour period. If the organization is more than one month old or on a paid plan, the limit is 500 invitations per 24 hour period.
10431    /// 
10432    /// [API method documentation](https://docs.github.com/rest/reference/orgs#set-organization-membership-for-a-user)
10433    ///
10434    /// # Content
10435    ///
10436    /// - [`&v1_1_4::request::orgs_set_membership_for_user::body::Json`](crate::v1_1_4::request::orgs_set_membership_for_user::body::Json)
10437    pub fn orgs_set_membership_for_user<Content>(
10438        &self,
10439        org: &str,
10440        username: &str,
10441        theContent: Content,
10442    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
10443    where
10444        Content: Copy + TryInto<crate::v1_1_4::request::orgs_set_membership_for_user::Content<::reqwest::blocking::Body>>,
10445        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::orgs_set_membership_for_user::Content<::reqwest::blocking::Body>>>::Error>
10446    {
10447        let mut theScheme = AuthScheme::from(&self.config.authentication);
10448
10449        while let Some(auth_step) = theScheme.step()? {
10450            match auth_step {
10451                ::authentic::AuthenticationStep::Request(auth_request) => {
10452                    theScheme.respond(self.client.execute(auth_request));
10453                }
10454                ::authentic::AuthenticationStep::WaitFor(duration) => {
10455                    (self.sleep)(duration);
10456                }
10457            }
10458        }
10459        let theBuilder = crate::v1_1_4::request::orgs_set_membership_for_user::reqwest_blocking_builder(
10460            self.config.base_url.as_ref(),
10461            org,
10462            username,
10463            self.config.user_agent.as_ref(),
10464            self.config.accept.as_deref(),
10465        )?
10466        .with_authentication(&theScheme)?;
10467
10468        let theRequest = crate::v1_1_4::request::orgs_set_membership_for_user::reqwest_blocking_request(
10469            theBuilder,
10470            theContent.try_into()?,
10471        )?;
10472
10473        ::log::debug!("HTTP request: {:?}", &theRequest);
10474
10475        let theResponse = self.client.execute(theRequest)?;
10476
10477        ::log::debug!("HTTP response: {:?}", &theResponse);
10478
10479        Ok(theResponse)
10480    }
10481
10482    /// Remove organization membership for a user
10483    /// 
10484    /// In order to remove a user's membership with an organization, the authenticated user must be an organization owner.
10485    /// 
10486    /// If the specified user is an active member of the organization, this will remove them from the organization. If the specified user has been invited to the organization, this will cancel their invitation. The specified user will receive an email notification in both cases.
10487    /// 
10488    /// [API method documentation](https://docs.github.com/rest/reference/orgs#remove-organization-membership-for-a-user)
10489    pub fn orgs_remove_membership_for_user(
10490        &self,
10491        org: &str,
10492        username: &str,
10493    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10494        let mut theScheme = AuthScheme::from(&self.config.authentication);
10495
10496        while let Some(auth_step) = theScheme.step()? {
10497            match auth_step {
10498                ::authentic::AuthenticationStep::Request(auth_request) => {
10499                    theScheme.respond(self.client.execute(auth_request));
10500                }
10501                ::authentic::AuthenticationStep::WaitFor(duration) => {
10502                    (self.sleep)(duration);
10503                }
10504            }
10505        }
10506        let theBuilder = crate::v1_1_4::request::orgs_remove_membership_for_user::reqwest_blocking_builder(
10507            self.config.base_url.as_ref(),
10508            org,
10509            username,
10510            self.config.user_agent.as_ref(),
10511            self.config.accept.as_deref(),
10512        )?
10513        .with_authentication(&theScheme)?;
10514
10515        let theRequest =
10516            crate::v1_1_4::request::orgs_remove_membership_for_user::reqwest_blocking_request(theBuilder)?;
10517
10518        ::log::debug!("HTTP request: {:?}", &theRequest);
10519
10520        let theResponse = self.client.execute(theRequest)?;
10521
10522        ::log::debug!("HTTP response: {:?}", &theResponse);
10523
10524        Ok(theResponse)
10525    }
10526
10527    /// List organization migrations
10528    /// 
10529    /// Lists the most recent migrations.
10530    /// 
10531    /// [API method documentation](https://docs.github.com/rest/reference/migrations#list-organization-migrations)
10532    pub fn migrations_list_for_org(
10533        &self,
10534        org: &str,
10535        per_page: ::std::option::Option<i64>,
10536        page: ::std::option::Option<i64>,
10537        exclude: ::std::option::Option<&[::std::borrow::Cow<'_, str>]>,
10538    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10539        let mut theScheme = AuthScheme::from(&self.config.authentication);
10540
10541        while let Some(auth_step) = theScheme.step()? {
10542            match auth_step {
10543                ::authentic::AuthenticationStep::Request(auth_request) => {
10544                    theScheme.respond(self.client.execute(auth_request));
10545                }
10546                ::authentic::AuthenticationStep::WaitFor(duration) => {
10547                    (self.sleep)(duration);
10548                }
10549            }
10550        }
10551        let theBuilder = crate::v1_1_4::request::migrations_list_for_org::reqwest_blocking_builder(
10552            self.config.base_url.as_ref(),
10553            org,
10554            per_page,
10555            page,
10556            exclude,
10557            self.config.user_agent.as_ref(),
10558            self.config.accept.as_deref(),
10559        )?
10560        .with_authentication(&theScheme)?;
10561
10562        let theRequest =
10563            crate::v1_1_4::request::migrations_list_for_org::reqwest_blocking_request(theBuilder)?;
10564
10565        ::log::debug!("HTTP request: {:?}", &theRequest);
10566
10567        let theResponse = self.client.execute(theRequest)?;
10568
10569        ::log::debug!("HTTP response: {:?}", &theResponse);
10570
10571        Ok(theResponse)
10572    }
10573
10574    /// Start an organization migration
10575    /// 
10576    /// Initiates the generation of a migration archive.
10577    /// 
10578    /// [API method documentation](https://docs.github.com/rest/reference/migrations#start-an-organization-migration)
10579    ///
10580    /// # Content
10581    ///
10582    /// - [`&v1_1_4::request::migrations_start_for_org::body::Json`](crate::v1_1_4::request::migrations_start_for_org::body::Json)
10583    pub fn migrations_start_for_org<Content>(
10584        &self,
10585        org: &str,
10586        theContent: Content,
10587    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
10588    where
10589        Content: Copy + TryInto<crate::v1_1_4::request::migrations_start_for_org::Content<::reqwest::blocking::Body>>,
10590        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::migrations_start_for_org::Content<::reqwest::blocking::Body>>>::Error>
10591    {
10592        let mut theScheme = AuthScheme::from(&self.config.authentication);
10593
10594        while let Some(auth_step) = theScheme.step()? {
10595            match auth_step {
10596                ::authentic::AuthenticationStep::Request(auth_request) => {
10597                    theScheme.respond(self.client.execute(auth_request));
10598                }
10599                ::authentic::AuthenticationStep::WaitFor(duration) => {
10600                    (self.sleep)(duration);
10601                }
10602            }
10603        }
10604        let theBuilder = crate::v1_1_4::request::migrations_start_for_org::reqwest_blocking_builder(
10605            self.config.base_url.as_ref(),
10606            org,
10607            self.config.user_agent.as_ref(),
10608            self.config.accept.as_deref(),
10609        )?
10610        .with_authentication(&theScheme)?;
10611
10612        let theRequest = crate::v1_1_4::request::migrations_start_for_org::reqwest_blocking_request(
10613            theBuilder,
10614            theContent.try_into()?,
10615        )?;
10616
10617        ::log::debug!("HTTP request: {:?}", &theRequest);
10618
10619        let theResponse = self.client.execute(theRequest)?;
10620
10621        ::log::debug!("HTTP response: {:?}", &theResponse);
10622
10623        Ok(theResponse)
10624    }
10625
10626    /// Get an organization migration status
10627    /// 
10628    /// Fetches the status of a migration.
10629    /// 
10630    /// The `state` of a migration can be one of the following values:
10631    /// 
10632    /// *   `pending`, which means the migration hasn't started yet.
10633    /// *   `exporting`, which means the migration is in progress.
10634    /// *   `exported`, which means the migration finished successfully.
10635    /// *   `failed`, which means the migration failed.
10636    /// 
10637    /// [API method documentation](https://docs.github.com/rest/reference/migrations#get-an-organization-migration-status)
10638    pub fn migrations_get_status_for_org(
10639        &self,
10640        org: &str,
10641        migration_id: i64,
10642        exclude: ::std::option::Option<&[::std::borrow::Cow<'_, str>]>,
10643    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10644        let mut theScheme = AuthScheme::from(&self.config.authentication);
10645
10646        while let Some(auth_step) = theScheme.step()? {
10647            match auth_step {
10648                ::authentic::AuthenticationStep::Request(auth_request) => {
10649                    theScheme.respond(self.client.execute(auth_request));
10650                }
10651                ::authentic::AuthenticationStep::WaitFor(duration) => {
10652                    (self.sleep)(duration);
10653                }
10654            }
10655        }
10656        let theBuilder = crate::v1_1_4::request::migrations_get_status_for_org::reqwest_blocking_builder(
10657            self.config.base_url.as_ref(),
10658            org,
10659            migration_id,
10660            exclude,
10661            self.config.user_agent.as_ref(),
10662            self.config.accept.as_deref(),
10663        )?
10664        .with_authentication(&theScheme)?;
10665
10666        let theRequest =
10667            crate::v1_1_4::request::migrations_get_status_for_org::reqwest_blocking_request(theBuilder)?;
10668
10669        ::log::debug!("HTTP request: {:?}", &theRequest);
10670
10671        let theResponse = self.client.execute(theRequest)?;
10672
10673        ::log::debug!("HTTP response: {:?}", &theResponse);
10674
10675        Ok(theResponse)
10676    }
10677
10678    /// Download an organization migration archive
10679    /// 
10680    /// Fetches the URL to a migration archive.
10681    /// 
10682    /// [API method documentation](https://docs.github.com/rest/reference/migrations#download-an-organization-migration-archive)
10683    pub fn migrations_download_archive_for_org(
10684        &self,
10685        org: &str,
10686        migration_id: i64,
10687    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10688        let mut theScheme = AuthScheme::from(&self.config.authentication);
10689
10690        while let Some(auth_step) = theScheme.step()? {
10691            match auth_step {
10692                ::authentic::AuthenticationStep::Request(auth_request) => {
10693                    theScheme.respond(self.client.execute(auth_request));
10694                }
10695                ::authentic::AuthenticationStep::WaitFor(duration) => {
10696                    (self.sleep)(duration);
10697                }
10698            }
10699        }
10700        let theBuilder = crate::v1_1_4::request::migrations_download_archive_for_org::reqwest_blocking_builder(
10701            self.config.base_url.as_ref(),
10702            org,
10703            migration_id,
10704            self.config.user_agent.as_ref(),
10705            self.config.accept.as_deref(),
10706        )?
10707        .with_authentication(&theScheme)?;
10708
10709        let theRequest =
10710            crate::v1_1_4::request::migrations_download_archive_for_org::reqwest_blocking_request(theBuilder)?;
10711
10712        ::log::debug!("HTTP request: {:?}", &theRequest);
10713
10714        let theResponse = self.client.execute(theRequest)?;
10715
10716        ::log::debug!("HTTP response: {:?}", &theResponse);
10717
10718        Ok(theResponse)
10719    }
10720
10721    /// Delete an organization migration archive
10722    /// 
10723    /// Deletes a previous migration archive. Migration archives are automatically deleted after seven days.
10724    /// 
10725    /// [API method documentation](https://docs.github.com/rest/reference/migrations#delete-an-organization-migration-archive)
10726    pub fn migrations_delete_archive_for_org(
10727        &self,
10728        org: &str,
10729        migration_id: i64,
10730    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10731        let mut theScheme = AuthScheme::from(&self.config.authentication);
10732
10733        while let Some(auth_step) = theScheme.step()? {
10734            match auth_step {
10735                ::authentic::AuthenticationStep::Request(auth_request) => {
10736                    theScheme.respond(self.client.execute(auth_request));
10737                }
10738                ::authentic::AuthenticationStep::WaitFor(duration) => {
10739                    (self.sleep)(duration);
10740                }
10741            }
10742        }
10743        let theBuilder = crate::v1_1_4::request::migrations_delete_archive_for_org::reqwest_blocking_builder(
10744            self.config.base_url.as_ref(),
10745            org,
10746            migration_id,
10747            self.config.user_agent.as_ref(),
10748            self.config.accept.as_deref(),
10749        )?
10750        .with_authentication(&theScheme)?;
10751
10752        let theRequest =
10753            crate::v1_1_4::request::migrations_delete_archive_for_org::reqwest_blocking_request(theBuilder)?;
10754
10755        ::log::debug!("HTTP request: {:?}", &theRequest);
10756
10757        let theResponse = self.client.execute(theRequest)?;
10758
10759        ::log::debug!("HTTP response: {:?}", &theResponse);
10760
10761        Ok(theResponse)
10762    }
10763
10764    /// Unlock an organization repository
10765    /// 
10766    /// Unlocks a repository that was locked for migration. You should unlock each migrated repository and [delete them](https://docs.github.com/rest/reference/repos#delete-a-repository) when the migration is complete and you no longer need the source data.
10767    /// 
10768    /// [API method documentation](https://docs.github.com/rest/reference/migrations#unlock-an-organization-repository)
10769    pub fn migrations_unlock_repo_for_org(
10770        &self,
10771        org: &str,
10772        migration_id: i64,
10773        repo_name: &str,
10774    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10775        let mut theScheme = AuthScheme::from(&self.config.authentication);
10776
10777        while let Some(auth_step) = theScheme.step()? {
10778            match auth_step {
10779                ::authentic::AuthenticationStep::Request(auth_request) => {
10780                    theScheme.respond(self.client.execute(auth_request));
10781                }
10782                ::authentic::AuthenticationStep::WaitFor(duration) => {
10783                    (self.sleep)(duration);
10784                }
10785            }
10786        }
10787        let theBuilder = crate::v1_1_4::request::migrations_unlock_repo_for_org::reqwest_blocking_builder(
10788            self.config.base_url.as_ref(),
10789            org,
10790            migration_id,
10791            repo_name,
10792            self.config.user_agent.as_ref(),
10793            self.config.accept.as_deref(),
10794        )?
10795        .with_authentication(&theScheme)?;
10796
10797        let theRequest =
10798            crate::v1_1_4::request::migrations_unlock_repo_for_org::reqwest_blocking_request(theBuilder)?;
10799
10800        ::log::debug!("HTTP request: {:?}", &theRequest);
10801
10802        let theResponse = self.client.execute(theRequest)?;
10803
10804        ::log::debug!("HTTP response: {:?}", &theResponse);
10805
10806        Ok(theResponse)
10807    }
10808
10809    /// List repositories in an organization migration
10810    /// 
10811    /// List all the repositories for this organization migration.
10812    /// 
10813    /// [API method documentation](https://docs.github.com/rest/reference/migrations#list-repositories-in-an-organization-migration)
10814    pub fn migrations_list_repos_for_org(
10815        &self,
10816        org: &str,
10817        migration_id: i64,
10818        per_page: ::std::option::Option<i64>,
10819        page: ::std::option::Option<i64>,
10820    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10821        let mut theScheme = AuthScheme::from(&self.config.authentication);
10822
10823        while let Some(auth_step) = theScheme.step()? {
10824            match auth_step {
10825                ::authentic::AuthenticationStep::Request(auth_request) => {
10826                    theScheme.respond(self.client.execute(auth_request));
10827                }
10828                ::authentic::AuthenticationStep::WaitFor(duration) => {
10829                    (self.sleep)(duration);
10830                }
10831            }
10832        }
10833        let theBuilder = crate::v1_1_4::request::migrations_list_repos_for_org::reqwest_blocking_builder(
10834            self.config.base_url.as_ref(),
10835            org,
10836            migration_id,
10837            per_page,
10838            page,
10839            self.config.user_agent.as_ref(),
10840            self.config.accept.as_deref(),
10841        )?
10842        .with_authentication(&theScheme)?;
10843
10844        let theRequest =
10845            crate::v1_1_4::request::migrations_list_repos_for_org::reqwest_blocking_request(theBuilder)?;
10846
10847        ::log::debug!("HTTP request: {:?}", &theRequest);
10848
10849        let theResponse = self.client.execute(theRequest)?;
10850
10851        ::log::debug!("HTTP response: {:?}", &theResponse);
10852
10853        Ok(theResponse)
10854    }
10855
10856    /// List outside collaborators for an organization
10857    /// 
10858    /// List all users who are outside collaborators of an organization.
10859    /// 
10860    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-outside-collaborators-for-an-organization)
10861    pub fn orgs_list_outside_collaborators(
10862        &self,
10863        org: &str,
10864        filter: ::std::option::Option<&str>,
10865        per_page: ::std::option::Option<i64>,
10866        page: ::std::option::Option<i64>,
10867    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10868        let mut theScheme = AuthScheme::from(&self.config.authentication);
10869
10870        while let Some(auth_step) = theScheme.step()? {
10871            match auth_step {
10872                ::authentic::AuthenticationStep::Request(auth_request) => {
10873                    theScheme.respond(self.client.execute(auth_request));
10874                }
10875                ::authentic::AuthenticationStep::WaitFor(duration) => {
10876                    (self.sleep)(duration);
10877                }
10878            }
10879        }
10880        let theBuilder = crate::v1_1_4::request::orgs_list_outside_collaborators::reqwest_blocking_builder(
10881            self.config.base_url.as_ref(),
10882            org,
10883            filter,
10884            per_page,
10885            page,
10886            self.config.user_agent.as_ref(),
10887            self.config.accept.as_deref(),
10888        )?
10889        .with_authentication(&theScheme)?;
10890
10891        let theRequest =
10892            crate::v1_1_4::request::orgs_list_outside_collaborators::reqwest_blocking_request(theBuilder)?;
10893
10894        ::log::debug!("HTTP request: {:?}", &theRequest);
10895
10896        let theResponse = self.client.execute(theRequest)?;
10897
10898        ::log::debug!("HTTP response: {:?}", &theResponse);
10899
10900        Ok(theResponse)
10901    }
10902
10903    /// Convert an organization member to outside collaborator
10904    /// 
10905    /// When an organization member is converted to an outside collaborator, they'll only have access to the repositories that their current team membership allows. The user will no longer be a member of the organization. For more information, see "[Converting an organization member to an outside collaborator](https://docs.github.com/articles/converting-an-organization-member-to-an-outside-collaborator/)". Converting an organization member to an outside collaborator may be restricted by enterprise administrators. For more information, see "[Enforcing repository management policies in your enterprise](https://docs.github.com/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories)."
10906    /// 
10907    /// [API method documentation](https://docs.github.com/rest/reference/orgs#convert-an-organization-member-to-outside-collaborator)
10908    pub fn orgs_convert_member_to_outside_collaborator(
10909        &self,
10910        org: &str,
10911        username: &str,
10912    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10913        let mut theScheme = AuthScheme::from(&self.config.authentication);
10914
10915        while let Some(auth_step) = theScheme.step()? {
10916            match auth_step {
10917                ::authentic::AuthenticationStep::Request(auth_request) => {
10918                    theScheme.respond(self.client.execute(auth_request));
10919                }
10920                ::authentic::AuthenticationStep::WaitFor(duration) => {
10921                    (self.sleep)(duration);
10922                }
10923            }
10924        }
10925        let theBuilder = crate::v1_1_4::request::orgs_convert_member_to_outside_collaborator::reqwest_blocking_builder(
10926            self.config.base_url.as_ref(),
10927            org,
10928            username,
10929            self.config.user_agent.as_ref(),
10930            self.config.accept.as_deref(),
10931        )?
10932        .with_authentication(&theScheme)?;
10933
10934        let theRequest =
10935            crate::v1_1_4::request::orgs_convert_member_to_outside_collaborator::reqwest_blocking_request(theBuilder)?;
10936
10937        ::log::debug!("HTTP request: {:?}", &theRequest);
10938
10939        let theResponse = self.client.execute(theRequest)?;
10940
10941        ::log::debug!("HTTP response: {:?}", &theResponse);
10942
10943        Ok(theResponse)
10944    }
10945
10946    /// Remove outside collaborator from an organization
10947    /// 
10948    /// Removing a user from this list will remove them from all the organization's repositories.
10949    /// 
10950    /// [API method documentation](https://docs.github.com/rest/reference/orgs#remove-outside-collaborator-from-an-organization)
10951    pub fn orgs_remove_outside_collaborator(
10952        &self,
10953        org: &str,
10954        username: &str,
10955    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
10956        let mut theScheme = AuthScheme::from(&self.config.authentication);
10957
10958        while let Some(auth_step) = theScheme.step()? {
10959            match auth_step {
10960                ::authentic::AuthenticationStep::Request(auth_request) => {
10961                    theScheme.respond(self.client.execute(auth_request));
10962                }
10963                ::authentic::AuthenticationStep::WaitFor(duration) => {
10964                    (self.sleep)(duration);
10965                }
10966            }
10967        }
10968        let theBuilder = crate::v1_1_4::request::orgs_remove_outside_collaborator::reqwest_blocking_builder(
10969            self.config.base_url.as_ref(),
10970            org,
10971            username,
10972            self.config.user_agent.as_ref(),
10973            self.config.accept.as_deref(),
10974        )?
10975        .with_authentication(&theScheme)?;
10976
10977        let theRequest =
10978            crate::v1_1_4::request::orgs_remove_outside_collaborator::reqwest_blocking_request(theBuilder)?;
10979
10980        ::log::debug!("HTTP request: {:?}", &theRequest);
10981
10982        let theResponse = self.client.execute(theRequest)?;
10983
10984        ::log::debug!("HTTP response: {:?}", &theResponse);
10985
10986        Ok(theResponse)
10987    }
10988
10989    /// List packages for an organization
10990    /// 
10991    /// Lists all packages in an organization readable by the user.
10992    /// 
10993    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
10994    /// If `package_type` is not `container`, your token must also include the `repo` scope.
10995    /// 
10996    /// [API method documentation](https://docs.github.com/rest/reference/packages#list-packages-for-an-organization)
10997    pub fn packages_list_packages_for_organization(
10998        &self,
10999        package_type: &str,
11000        org: &str,
11001        visibility: ::std::option::Option<&str>,
11002    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11003        let mut theScheme = AuthScheme::from(&self.config.authentication);
11004
11005        while let Some(auth_step) = theScheme.step()? {
11006            match auth_step {
11007                ::authentic::AuthenticationStep::Request(auth_request) => {
11008                    theScheme.respond(self.client.execute(auth_request));
11009                }
11010                ::authentic::AuthenticationStep::WaitFor(duration) => {
11011                    (self.sleep)(duration);
11012                }
11013            }
11014        }
11015        let theBuilder = crate::v1_1_4::request::packages_list_packages_for_organization::reqwest_blocking_builder(
11016            self.config.base_url.as_ref(),
11017            org,
11018            package_type,
11019            visibility,
11020            self.config.user_agent.as_ref(),
11021            self.config.accept.as_deref(),
11022        )?
11023        .with_authentication(&theScheme)?;
11024
11025        let theRequest =
11026            crate::v1_1_4::request::packages_list_packages_for_organization::reqwest_blocking_request(theBuilder)?;
11027
11028        ::log::debug!("HTTP request: {:?}", &theRequest);
11029
11030        let theResponse = self.client.execute(theRequest)?;
11031
11032        ::log::debug!("HTTP response: {:?}", &theResponse);
11033
11034        Ok(theResponse)
11035    }
11036
11037    /// Get a package for an organization
11038    /// 
11039    /// Gets a specific package in an organization.
11040    /// 
11041    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
11042    /// If `package_type` is not `container`, your token must also include the `repo` scope.
11043    /// 
11044    /// [API method documentation](https://docs.github.com/rest/reference/packages#get-a-package-for-an-organization)
11045    pub fn packages_get_package_for_organization(
11046        &self,
11047        package_type: &str,
11048        package_name: &str,
11049        org: &str,
11050    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11051        let mut theScheme = AuthScheme::from(&self.config.authentication);
11052
11053        while let Some(auth_step) = theScheme.step()? {
11054            match auth_step {
11055                ::authentic::AuthenticationStep::Request(auth_request) => {
11056                    theScheme.respond(self.client.execute(auth_request));
11057                }
11058                ::authentic::AuthenticationStep::WaitFor(duration) => {
11059                    (self.sleep)(duration);
11060                }
11061            }
11062        }
11063        let theBuilder = crate::v1_1_4::request::packages_get_package_for_organization::reqwest_blocking_builder(
11064            self.config.base_url.as_ref(),
11065            package_type,
11066            package_name,
11067            org,
11068            self.config.user_agent.as_ref(),
11069            self.config.accept.as_deref(),
11070        )?
11071        .with_authentication(&theScheme)?;
11072
11073        let theRequest =
11074            crate::v1_1_4::request::packages_get_package_for_organization::reqwest_blocking_request(theBuilder)?;
11075
11076        ::log::debug!("HTTP request: {:?}", &theRequest);
11077
11078        let theResponse = self.client.execute(theRequest)?;
11079
11080        ::log::debug!("HTTP response: {:?}", &theResponse);
11081
11082        Ok(theResponse)
11083    }
11084
11085    /// Delete a package for an organization
11086    /// 
11087    /// Deletes an entire package in an organization. You cannot delete a public package if any version of the package has more than 5,000 downloads. In this scenario, contact GitHub support for further assistance.
11088    /// 
11089    /// To use this endpoint, you must have admin permissions in the organization and authenticate using an access token with the `packages:read` and `packages:delete` scopes. In addition:
11090    /// - If `package_type` is not `container`, your token must also include the `repo` scope.
11091    /// - If `package_type` is `container`, you must also have admin permissions to the container you want to delete.
11092    /// 
11093    /// [API method documentation](https://docs.github.com/rest/reference/packages#delete-a-package-for-an-organization)
11094    pub fn packages_delete_package_for_org(
11095        &self,
11096        package_type: &str,
11097        package_name: &str,
11098        org: &str,
11099    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11100        let mut theScheme = AuthScheme::from(&self.config.authentication);
11101
11102        while let Some(auth_step) = theScheme.step()? {
11103            match auth_step {
11104                ::authentic::AuthenticationStep::Request(auth_request) => {
11105                    theScheme.respond(self.client.execute(auth_request));
11106                }
11107                ::authentic::AuthenticationStep::WaitFor(duration) => {
11108                    (self.sleep)(duration);
11109                }
11110            }
11111        }
11112        let theBuilder = crate::v1_1_4::request::packages_delete_package_for_org::reqwest_blocking_builder(
11113            self.config.base_url.as_ref(),
11114            package_type,
11115            package_name,
11116            org,
11117            self.config.user_agent.as_ref(),
11118            self.config.accept.as_deref(),
11119        )?
11120        .with_authentication(&theScheme)?;
11121
11122        let theRequest =
11123            crate::v1_1_4::request::packages_delete_package_for_org::reqwest_blocking_request(theBuilder)?;
11124
11125        ::log::debug!("HTTP request: {:?}", &theRequest);
11126
11127        let theResponse = self.client.execute(theRequest)?;
11128
11129        ::log::debug!("HTTP response: {:?}", &theResponse);
11130
11131        Ok(theResponse)
11132    }
11133
11134    /// Restore a package for an organization
11135    /// 
11136    /// Restores an entire package in an organization.
11137    /// 
11138    /// You can restore a deleted package under the following conditions:
11139    ///   - The package was deleted within the last 30 days.
11140    ///   - The same package namespace and version is still available and not reused for a new package. If the same package namespace is not available, you will not be able to restore your package. In this scenario, to restore the deleted package, you must delete the new package that uses the deleted package's namespace first.
11141    /// 
11142    /// To use this endpoint, you must have admin permissions in the organization and authenticate using an access token with the `packages:read` and `packages:write` scopes. In addition:
11143    /// - If `package_type` is not `container`, your token must also include the `repo` scope.
11144    /// - If `package_type` is `container`, you must also have admin permissions to the container that you want to restore.
11145    /// 
11146    /// [API method documentation](https://docs.github.com/rest/reference/packages#restore-a-package-for-an-organization)
11147    pub fn packages_restore_package_for_org(
11148        &self,
11149        package_type: &str,
11150        package_name: &str,
11151        org: &str,
11152        token: ::std::option::Option<&str>,
11153    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11154        let mut theScheme = AuthScheme::from(&self.config.authentication);
11155
11156        while let Some(auth_step) = theScheme.step()? {
11157            match auth_step {
11158                ::authentic::AuthenticationStep::Request(auth_request) => {
11159                    theScheme.respond(self.client.execute(auth_request));
11160                }
11161                ::authentic::AuthenticationStep::WaitFor(duration) => {
11162                    (self.sleep)(duration);
11163                }
11164            }
11165        }
11166        let theBuilder = crate::v1_1_4::request::packages_restore_package_for_org::reqwest_blocking_builder(
11167            self.config.base_url.as_ref(),
11168            package_type,
11169            package_name,
11170            org,
11171            token,
11172            self.config.user_agent.as_ref(),
11173            self.config.accept.as_deref(),
11174        )?
11175        .with_authentication(&theScheme)?;
11176
11177        let theRequest =
11178            crate::v1_1_4::request::packages_restore_package_for_org::reqwest_blocking_request(theBuilder)?;
11179
11180        ::log::debug!("HTTP request: {:?}", &theRequest);
11181
11182        let theResponse = self.client.execute(theRequest)?;
11183
11184        ::log::debug!("HTTP response: {:?}", &theResponse);
11185
11186        Ok(theResponse)
11187    }
11188
11189    /// Get all package versions for a package owned by an organization
11190    /// 
11191    /// Returns all package versions for a package owned by an organization.
11192    /// 
11193    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
11194    /// If `package_type` is not `container`, your token must also include the `repo` scope.
11195    /// 
11196    /// [API method documentation](https://docs.github.com/rest/reference/packages#get-all-package-versions-for-a-package-owned-by-an-organization)
11197    pub fn packages_get_all_package_versions_for_package_owned_by_org(
11198        &self,
11199        package_type: &str,
11200        package_name: &str,
11201        org: &str,
11202        page: ::std::option::Option<i64>,
11203        per_page: ::std::option::Option<i64>,
11204        state: ::std::option::Option<&str>,
11205    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11206        let mut theScheme = AuthScheme::from(&self.config.authentication);
11207
11208        while let Some(auth_step) = theScheme.step()? {
11209            match auth_step {
11210                ::authentic::AuthenticationStep::Request(auth_request) => {
11211                    theScheme.respond(self.client.execute(auth_request));
11212                }
11213                ::authentic::AuthenticationStep::WaitFor(duration) => {
11214                    (self.sleep)(duration);
11215                }
11216            }
11217        }
11218        let theBuilder = crate::v1_1_4::request::packages_get_all_package_versions_for_package_owned_by_org::reqwest_blocking_builder(
11219            self.config.base_url.as_ref(),
11220            package_type,
11221            package_name,
11222            org,
11223            page,
11224            per_page,
11225            state,
11226            self.config.user_agent.as_ref(),
11227            self.config.accept.as_deref(),
11228        )?
11229        .with_authentication(&theScheme)?;
11230
11231        let theRequest =
11232            crate::v1_1_4::request::packages_get_all_package_versions_for_package_owned_by_org::reqwest_blocking_request(theBuilder)?;
11233
11234        ::log::debug!("HTTP request: {:?}", &theRequest);
11235
11236        let theResponse = self.client.execute(theRequest)?;
11237
11238        ::log::debug!("HTTP response: {:?}", &theResponse);
11239
11240        Ok(theResponse)
11241    }
11242
11243    /// Get a package version for an organization
11244    /// 
11245    /// Gets a specific package version in an organization.
11246    /// 
11247    /// You must authenticate using an access token with the `packages:read` scope.
11248    /// If `package_type` is not `container`, your token must also include the `repo` scope.
11249    /// 
11250    /// [API method documentation](https://docs.github.com/rest/reference/packages#get-a-package-version-for-an-organization)
11251    pub fn packages_get_package_version_for_organization(
11252        &self,
11253        package_type: &str,
11254        package_name: &str,
11255        org: &str,
11256        package_version_id: i64,
11257    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11258        let mut theScheme = AuthScheme::from(&self.config.authentication);
11259
11260        while let Some(auth_step) = theScheme.step()? {
11261            match auth_step {
11262                ::authentic::AuthenticationStep::Request(auth_request) => {
11263                    theScheme.respond(self.client.execute(auth_request));
11264                }
11265                ::authentic::AuthenticationStep::WaitFor(duration) => {
11266                    (self.sleep)(duration);
11267                }
11268            }
11269        }
11270        let theBuilder = crate::v1_1_4::request::packages_get_package_version_for_organization::reqwest_blocking_builder(
11271            self.config.base_url.as_ref(),
11272            package_type,
11273            package_name,
11274            org,
11275            package_version_id,
11276            self.config.user_agent.as_ref(),
11277            self.config.accept.as_deref(),
11278        )?
11279        .with_authentication(&theScheme)?;
11280
11281        let theRequest =
11282            crate::v1_1_4::request::packages_get_package_version_for_organization::reqwest_blocking_request(theBuilder)?;
11283
11284        ::log::debug!("HTTP request: {:?}", &theRequest);
11285
11286        let theResponse = self.client.execute(theRequest)?;
11287
11288        ::log::debug!("HTTP response: {:?}", &theResponse);
11289
11290        Ok(theResponse)
11291    }
11292
11293    /// Delete package version for an organization
11294    /// 
11295    /// Deletes a specific package version in an organization. If the package is public and the package version has more than 5,000 downloads, you cannot delete the package version. In this scenario, contact GitHub support for further assistance.
11296    /// 
11297    /// To use this endpoint, you must have admin permissions in the organization and authenticate using an access token with the `packages:read` and `packages:delete` scopes. In addition:
11298    /// - If `package_type` is not `container`, your token must also include the `repo` scope.
11299    /// - If `package_type` is `container`, you must also have admin permissions to the container you want to delete.
11300    /// 
11301    /// [API method documentation](https://docs.github.com/rest/reference/packages#delete-a-package-version-for-an-organization)
11302    pub fn packages_delete_package_version_for_org(
11303        &self,
11304        package_type: &str,
11305        package_name: &str,
11306        org: &str,
11307        package_version_id: i64,
11308    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11309        let mut theScheme = AuthScheme::from(&self.config.authentication);
11310
11311        while let Some(auth_step) = theScheme.step()? {
11312            match auth_step {
11313                ::authentic::AuthenticationStep::Request(auth_request) => {
11314                    theScheme.respond(self.client.execute(auth_request));
11315                }
11316                ::authentic::AuthenticationStep::WaitFor(duration) => {
11317                    (self.sleep)(duration);
11318                }
11319            }
11320        }
11321        let theBuilder = crate::v1_1_4::request::packages_delete_package_version_for_org::reqwest_blocking_builder(
11322            self.config.base_url.as_ref(),
11323            package_type,
11324            package_name,
11325            org,
11326            package_version_id,
11327            self.config.user_agent.as_ref(),
11328            self.config.accept.as_deref(),
11329        )?
11330        .with_authentication(&theScheme)?;
11331
11332        let theRequest =
11333            crate::v1_1_4::request::packages_delete_package_version_for_org::reqwest_blocking_request(theBuilder)?;
11334
11335        ::log::debug!("HTTP request: {:?}", &theRequest);
11336
11337        let theResponse = self.client.execute(theRequest)?;
11338
11339        ::log::debug!("HTTP response: {:?}", &theResponse);
11340
11341        Ok(theResponse)
11342    }
11343
11344    /// Restore package version for an organization
11345    /// 
11346    /// Restores a specific package version in an organization.
11347    /// 
11348    /// You can restore a deleted package under the following conditions:
11349    ///   - The package was deleted within the last 30 days.
11350    ///   - The same package namespace and version is still available and not reused for a new package. If the same package namespace is not available, you will not be able to restore your package. In this scenario, to restore the deleted package, you must delete the new package that uses the deleted package's namespace first.
11351    /// 
11352    /// To use this endpoint, you must have admin permissions in the organization and authenticate using an access token with the `packages:read` and `packages:write` scopes. In addition:
11353    /// - If `package_type` is not `container`, your token must also include the `repo` scope.
11354    /// - If `package_type` is `container`, you must also have admin permissions to the container that you want to restore.
11355    /// 
11356    /// [API method documentation](https://docs.github.com/rest/reference/packages#restore-a-package-version-for-an-organization)
11357    pub fn packages_restore_package_version_for_org(
11358        &self,
11359        package_type: &str,
11360        package_name: &str,
11361        org: &str,
11362        package_version_id: i64,
11363    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11364        let mut theScheme = AuthScheme::from(&self.config.authentication);
11365
11366        while let Some(auth_step) = theScheme.step()? {
11367            match auth_step {
11368                ::authentic::AuthenticationStep::Request(auth_request) => {
11369                    theScheme.respond(self.client.execute(auth_request));
11370                }
11371                ::authentic::AuthenticationStep::WaitFor(duration) => {
11372                    (self.sleep)(duration);
11373                }
11374            }
11375        }
11376        let theBuilder = crate::v1_1_4::request::packages_restore_package_version_for_org::reqwest_blocking_builder(
11377            self.config.base_url.as_ref(),
11378            package_type,
11379            package_name,
11380            org,
11381            package_version_id,
11382            self.config.user_agent.as_ref(),
11383            self.config.accept.as_deref(),
11384        )?
11385        .with_authentication(&theScheme)?;
11386
11387        let theRequest =
11388            crate::v1_1_4::request::packages_restore_package_version_for_org::reqwest_blocking_request(theBuilder)?;
11389
11390        ::log::debug!("HTTP request: {:?}", &theRequest);
11391
11392        let theResponse = self.client.execute(theRequest)?;
11393
11394        ::log::debug!("HTTP response: {:?}", &theResponse);
11395
11396        Ok(theResponse)
11397    }
11398
11399    /// List organization projects
11400    /// 
11401    /// Lists the projects in an organization. Returns a `404 Not Found` status if projects are disabled in the organization. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned.
11402    /// 
11403    /// [API method documentation](https://docs.github.com/rest/reference/projects#list-organization-projects)
11404    pub fn projects_list_for_org(
11405        &self,
11406        org: &str,
11407        state: ::std::option::Option<&str>,
11408        per_page: ::std::option::Option<i64>,
11409        page: ::std::option::Option<i64>,
11410    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11411        let mut theScheme = AuthScheme::from(&self.config.authentication);
11412
11413        while let Some(auth_step) = theScheme.step()? {
11414            match auth_step {
11415                ::authentic::AuthenticationStep::Request(auth_request) => {
11416                    theScheme.respond(self.client.execute(auth_request));
11417                }
11418                ::authentic::AuthenticationStep::WaitFor(duration) => {
11419                    (self.sleep)(duration);
11420                }
11421            }
11422        }
11423        let theBuilder = crate::v1_1_4::request::projects_list_for_org::reqwest_blocking_builder(
11424            self.config.base_url.as_ref(),
11425            org,
11426            state,
11427            per_page,
11428            page,
11429            self.config.user_agent.as_ref(),
11430            self.config.accept.as_deref(),
11431        )?
11432        .with_authentication(&theScheme)?;
11433
11434        let theRequest =
11435            crate::v1_1_4::request::projects_list_for_org::reqwest_blocking_request(theBuilder)?;
11436
11437        ::log::debug!("HTTP request: {:?}", &theRequest);
11438
11439        let theResponse = self.client.execute(theRequest)?;
11440
11441        ::log::debug!("HTTP response: {:?}", &theResponse);
11442
11443        Ok(theResponse)
11444    }
11445
11446    /// Create an organization project
11447    /// 
11448    /// Creates an organization project board. Returns a `404 Not Found` status if projects are disabled in the organization. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned.
11449    /// 
11450    /// [API method documentation](https://docs.github.com/rest/reference/projects#create-an-organization-project)
11451    ///
11452    /// # Content
11453    ///
11454    /// - [`&v1_1_4::request::projects_create_for_org::body::Json`](crate::v1_1_4::request::projects_create_for_org::body::Json)
11455    pub fn projects_create_for_org<Content>(
11456        &self,
11457        org: &str,
11458        theContent: Content,
11459    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
11460    where
11461        Content: Copy + TryInto<crate::v1_1_4::request::projects_create_for_org::Content<::reqwest::blocking::Body>>,
11462        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_create_for_org::Content<::reqwest::blocking::Body>>>::Error>
11463    {
11464        let mut theScheme = AuthScheme::from(&self.config.authentication);
11465
11466        while let Some(auth_step) = theScheme.step()? {
11467            match auth_step {
11468                ::authentic::AuthenticationStep::Request(auth_request) => {
11469                    theScheme.respond(self.client.execute(auth_request));
11470                }
11471                ::authentic::AuthenticationStep::WaitFor(duration) => {
11472                    (self.sleep)(duration);
11473                }
11474            }
11475        }
11476        let theBuilder = crate::v1_1_4::request::projects_create_for_org::reqwest_blocking_builder(
11477            self.config.base_url.as_ref(),
11478            org,
11479            self.config.user_agent.as_ref(),
11480            self.config.accept.as_deref(),
11481        )?
11482        .with_authentication(&theScheme)?;
11483
11484        let theRequest = crate::v1_1_4::request::projects_create_for_org::reqwest_blocking_request(
11485            theBuilder,
11486            theContent.try_into()?,
11487        )?;
11488
11489        ::log::debug!("HTTP request: {:?}", &theRequest);
11490
11491        let theResponse = self.client.execute(theRequest)?;
11492
11493        ::log::debug!("HTTP response: {:?}", &theResponse);
11494
11495        Ok(theResponse)
11496    }
11497
11498    /// List public organization members
11499    /// 
11500    /// Members of an organization can choose to have their membership publicized or not.
11501    /// 
11502    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-public-organization-members)
11503    pub fn orgs_list_public_members(
11504        &self,
11505        org: &str,
11506        per_page: ::std::option::Option<i64>,
11507        page: ::std::option::Option<i64>,
11508    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11509        let mut theScheme = AuthScheme::from(&self.config.authentication);
11510
11511        while let Some(auth_step) = theScheme.step()? {
11512            match auth_step {
11513                ::authentic::AuthenticationStep::Request(auth_request) => {
11514                    theScheme.respond(self.client.execute(auth_request));
11515                }
11516                ::authentic::AuthenticationStep::WaitFor(duration) => {
11517                    (self.sleep)(duration);
11518                }
11519            }
11520        }
11521        let theBuilder = crate::v1_1_4::request::orgs_list_public_members::reqwest_blocking_builder(
11522            self.config.base_url.as_ref(),
11523            org,
11524            per_page,
11525            page,
11526            self.config.user_agent.as_ref(),
11527            self.config.accept.as_deref(),
11528        )?
11529        .with_authentication(&theScheme)?;
11530
11531        let theRequest =
11532            crate::v1_1_4::request::orgs_list_public_members::reqwest_blocking_request(theBuilder)?;
11533
11534        ::log::debug!("HTTP request: {:?}", &theRequest);
11535
11536        let theResponse = self.client.execute(theRequest)?;
11537
11538        ::log::debug!("HTTP response: {:?}", &theResponse);
11539
11540        Ok(theResponse)
11541    }
11542
11543    /// Check public organization membership for a user
11544    /// 
11545    /// [API method documentation](https://docs.github.com/rest/reference/orgs#check-public-organization-membership-for-a-user)
11546    pub fn orgs_check_public_membership_for_user(
11547        &self,
11548        org: &str,
11549        username: &str,
11550    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11551        let mut theScheme = AuthScheme::from(&self.config.authentication);
11552
11553        while let Some(auth_step) = theScheme.step()? {
11554            match auth_step {
11555                ::authentic::AuthenticationStep::Request(auth_request) => {
11556                    theScheme.respond(self.client.execute(auth_request));
11557                }
11558                ::authentic::AuthenticationStep::WaitFor(duration) => {
11559                    (self.sleep)(duration);
11560                }
11561            }
11562        }
11563        let theBuilder = crate::v1_1_4::request::orgs_check_public_membership_for_user::reqwest_blocking_builder(
11564            self.config.base_url.as_ref(),
11565            org,
11566            username,
11567            self.config.user_agent.as_ref(),
11568            self.config.accept.as_deref(),
11569        )?
11570        .with_authentication(&theScheme)?;
11571
11572        let theRequest =
11573            crate::v1_1_4::request::orgs_check_public_membership_for_user::reqwest_blocking_request(theBuilder)?;
11574
11575        ::log::debug!("HTTP request: {:?}", &theRequest);
11576
11577        let theResponse = self.client.execute(theRequest)?;
11578
11579        ::log::debug!("HTTP response: {:?}", &theResponse);
11580
11581        Ok(theResponse)
11582    }
11583
11584    /// Set public organization membership for the authenticated user
11585    /// 
11586    /// The user can publicize their own membership. (A user cannot publicize the membership for another user.)
11587    /// 
11588    /// Note that you'll need to set `Content-Length` to zero when calling out to this endpoint. For more information, see "[HTTP verbs](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-verbs)."
11589    /// 
11590    /// [API method documentation](https://docs.github.com/rest/reference/orgs#set-public-organization-membership-for-the-authenticated-user)
11591    pub fn orgs_set_public_membership_for_authenticated_user(
11592        &self,
11593        org: &str,
11594        username: &str,
11595    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11596        let mut theScheme = AuthScheme::from(&self.config.authentication);
11597
11598        while let Some(auth_step) = theScheme.step()? {
11599            match auth_step {
11600                ::authentic::AuthenticationStep::Request(auth_request) => {
11601                    theScheme.respond(self.client.execute(auth_request));
11602                }
11603                ::authentic::AuthenticationStep::WaitFor(duration) => {
11604                    (self.sleep)(duration);
11605                }
11606            }
11607        }
11608        let theBuilder = crate::v1_1_4::request::orgs_set_public_membership_for_authenticated_user::reqwest_blocking_builder(
11609            self.config.base_url.as_ref(),
11610            org,
11611            username,
11612            self.config.user_agent.as_ref(),
11613            self.config.accept.as_deref(),
11614        )?
11615        .with_authentication(&theScheme)?;
11616
11617        let theRequest =
11618            crate::v1_1_4::request::orgs_set_public_membership_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
11619
11620        ::log::debug!("HTTP request: {:?}", &theRequest);
11621
11622        let theResponse = self.client.execute(theRequest)?;
11623
11624        ::log::debug!("HTTP response: {:?}", &theResponse);
11625
11626        Ok(theResponse)
11627    }
11628
11629    /// Remove public organization membership for the authenticated user
11630    /// 
11631    /// [API method documentation](https://docs.github.com/rest/reference/orgs#remove-public-organization-membership-for-the-authenticated-user)
11632    pub fn orgs_remove_public_membership_for_authenticated_user(
11633        &self,
11634        org: &str,
11635        username: &str,
11636    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11637        let mut theScheme = AuthScheme::from(&self.config.authentication);
11638
11639        while let Some(auth_step) = theScheme.step()? {
11640            match auth_step {
11641                ::authentic::AuthenticationStep::Request(auth_request) => {
11642                    theScheme.respond(self.client.execute(auth_request));
11643                }
11644                ::authentic::AuthenticationStep::WaitFor(duration) => {
11645                    (self.sleep)(duration);
11646                }
11647            }
11648        }
11649        let theBuilder = crate::v1_1_4::request::orgs_remove_public_membership_for_authenticated_user::reqwest_blocking_builder(
11650            self.config.base_url.as_ref(),
11651            org,
11652            username,
11653            self.config.user_agent.as_ref(),
11654            self.config.accept.as_deref(),
11655        )?
11656        .with_authentication(&theScheme)?;
11657
11658        let theRequest =
11659            crate::v1_1_4::request::orgs_remove_public_membership_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
11660
11661        ::log::debug!("HTTP request: {:?}", &theRequest);
11662
11663        let theResponse = self.client.execute(theRequest)?;
11664
11665        ::log::debug!("HTTP response: {:?}", &theResponse);
11666
11667        Ok(theResponse)
11668    }
11669
11670    /// List organization repositories
11671    /// 
11672    /// Lists repositories for the specified organization.
11673    /// 
11674    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-organization-repositories)
11675    pub fn repos_list_for_org(
11676        &self,
11677        org: &str,
11678        r#type: ::std::option::Option<&str>,
11679        sort: &crate::types::Sort<'_>,
11680        per_page: ::std::option::Option<i64>,
11681        page: ::std::option::Option<i64>,
11682    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11683        let (sort, direction) = sort.extract();
11684        let mut theScheme = AuthScheme::from(&self.config.authentication);
11685
11686        while let Some(auth_step) = theScheme.step()? {
11687            match auth_step {
11688                ::authentic::AuthenticationStep::Request(auth_request) => {
11689                    theScheme.respond(self.client.execute(auth_request));
11690                }
11691                ::authentic::AuthenticationStep::WaitFor(duration) => {
11692                    (self.sleep)(duration);
11693                }
11694            }
11695        }
11696        let theBuilder = crate::v1_1_4::request::repos_list_for_org::reqwest_blocking_builder(
11697            self.config.base_url.as_ref(),
11698            org,
11699            r#type,
11700            sort,
11701            direction,
11702            per_page,
11703            page,
11704            self.config.user_agent.as_ref(),
11705            self.config.accept.as_deref(),
11706        )?
11707        .with_authentication(&theScheme)?;
11708
11709        let theRequest =
11710            crate::v1_1_4::request::repos_list_for_org::reqwest_blocking_request(theBuilder)?;
11711
11712        ::log::debug!("HTTP request: {:?}", &theRequest);
11713
11714        let theResponse = self.client.execute(theRequest)?;
11715
11716        ::log::debug!("HTTP response: {:?}", &theResponse);
11717
11718        Ok(theResponse)
11719    }
11720
11721    /// Create an organization repository
11722    /// 
11723    /// Creates a new repository in the specified organization. The authenticated user must be a member of the organization.
11724    /// 
11725    /// **OAuth scope requirements**
11726    /// 
11727    /// When using [OAuth](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:
11728    /// 
11729    /// *   `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.
11730    /// *   `repo` scope to create a private repository
11731    /// 
11732    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-an-organization-repository)
11733    ///
11734    /// # Content
11735    ///
11736    /// - [`&v1_1_4::request::repos_create_in_org::body::Json`](crate::v1_1_4::request::repos_create_in_org::body::Json)
11737    pub fn repos_create_in_org<Content>(
11738        &self,
11739        org: &str,
11740        theContent: Content,
11741    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
11742    where
11743        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_in_org::Content<::reqwest::blocking::Body>>,
11744        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_in_org::Content<::reqwest::blocking::Body>>>::Error>
11745    {
11746        let mut theScheme = AuthScheme::from(&self.config.authentication);
11747
11748        while let Some(auth_step) = theScheme.step()? {
11749            match auth_step {
11750                ::authentic::AuthenticationStep::Request(auth_request) => {
11751                    theScheme.respond(self.client.execute(auth_request));
11752                }
11753                ::authentic::AuthenticationStep::WaitFor(duration) => {
11754                    (self.sleep)(duration);
11755                }
11756            }
11757        }
11758        let theBuilder = crate::v1_1_4::request::repos_create_in_org::reqwest_blocking_builder(
11759            self.config.base_url.as_ref(),
11760            org,
11761            self.config.user_agent.as_ref(),
11762            self.config.accept.as_deref(),
11763        )?
11764        .with_authentication(&theScheme)?;
11765
11766        let theRequest = crate::v1_1_4::request::repos_create_in_org::reqwest_blocking_request(
11767            theBuilder,
11768            theContent.try_into()?,
11769        )?;
11770
11771        ::log::debug!("HTTP request: {:?}", &theRequest);
11772
11773        let theResponse = self.client.execute(theRequest)?;
11774
11775        ::log::debug!("HTTP response: {:?}", &theResponse);
11776
11777        Ok(theResponse)
11778    }
11779
11780    /// List secret scanning alerts for an organization
11781    /// 
11782    /// Lists secret scanning alerts for eligible repositories in an organization, from newest to oldest.
11783    /// To use this endpoint, you must be an administrator or security manager for the organization, and you must use an access token with the `repo` scope or `security_events` scope.
11784    /// 
11785    /// GitHub Apps must have the `secret_scanning_alerts` read permission to use this endpoint.
11786    /// 
11787    /// [API method documentation](https://docs.github.com/rest/reference/secret-scanning#list-secret-scanning-alerts-for-an-organization)
11788    pub fn secret_scanning_list_alerts_for_org(
11789        &self,
11790        org: &str,
11791        state: ::std::option::Option<&str>,
11792        secret_type: ::std::option::Option<&str>,
11793        resolution: ::std::option::Option<&str>,
11794        page: ::std::option::Option<i64>,
11795        per_page: ::std::option::Option<i64>,
11796    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11797        let mut theScheme = AuthScheme::from(&self.config.authentication);
11798
11799        while let Some(auth_step) = theScheme.step()? {
11800            match auth_step {
11801                ::authentic::AuthenticationStep::Request(auth_request) => {
11802                    theScheme.respond(self.client.execute(auth_request));
11803                }
11804                ::authentic::AuthenticationStep::WaitFor(duration) => {
11805                    (self.sleep)(duration);
11806                }
11807            }
11808        }
11809        let theBuilder = crate::v1_1_4::request::secret_scanning_list_alerts_for_org::reqwest_blocking_builder(
11810            self.config.base_url.as_ref(),
11811            org,
11812            state,
11813            secret_type,
11814            resolution,
11815            page,
11816            per_page,
11817            self.config.user_agent.as_ref(),
11818            self.config.accept.as_deref(),
11819        )?
11820        .with_authentication(&theScheme)?;
11821
11822        let theRequest =
11823            crate::v1_1_4::request::secret_scanning_list_alerts_for_org::reqwest_blocking_request(theBuilder)?;
11824
11825        ::log::debug!("HTTP request: {:?}", &theRequest);
11826
11827        let theResponse = self.client.execute(theRequest)?;
11828
11829        ::log::debug!("HTTP response: {:?}", &theResponse);
11830
11831        Ok(theResponse)
11832    }
11833
11834    /// Get GitHub Actions billing for an organization
11835    /// 
11836    /// Gets the summary of the free and paid GitHub Actions minutes used.
11837    /// 
11838    /// Paid minutes only apply to workflows in private repositories that use GitHub-hosted runners. Minutes used is listed for each GitHub-hosted runner operating system. Any job re-runs are also included in the usage. The usage returned includes any minute multipliers for macOS and Windows runners, and is rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)".
11839    /// 
11840    /// Access tokens must have the `repo` or `admin:org` scope.
11841    /// 
11842    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-github-actions-billing-for-an-organization)
11843    pub fn billing_get_github_actions_billing_org(
11844        &self,
11845        org: &str,
11846    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11847        let mut theScheme = AuthScheme::from(&self.config.authentication);
11848
11849        while let Some(auth_step) = theScheme.step()? {
11850            match auth_step {
11851                ::authentic::AuthenticationStep::Request(auth_request) => {
11852                    theScheme.respond(self.client.execute(auth_request));
11853                }
11854                ::authentic::AuthenticationStep::WaitFor(duration) => {
11855                    (self.sleep)(duration);
11856                }
11857            }
11858        }
11859        let theBuilder = crate::v1_1_4::request::billing_get_github_actions_billing_org::reqwest_blocking_builder(
11860            self.config.base_url.as_ref(),
11861            org,
11862            self.config.user_agent.as_ref(),
11863            self.config.accept.as_deref(),
11864        )?
11865        .with_authentication(&theScheme)?;
11866
11867        let theRequest =
11868            crate::v1_1_4::request::billing_get_github_actions_billing_org::reqwest_blocking_request(theBuilder)?;
11869
11870        ::log::debug!("HTTP request: {:?}", &theRequest);
11871
11872        let theResponse = self.client.execute(theRequest)?;
11873
11874        ::log::debug!("HTTP response: {:?}", &theResponse);
11875
11876        Ok(theResponse)
11877    }
11878
11879    /// Get GitHub Advanced Security active committers for an organization
11880    /// 
11881    /// Gets the GitHub Advanced Security active committers for an organization per repository.
11882    /// Each distinct user login across all repositories is counted as a single Advanced Security seat, so the total_advanced_security_committers is not the sum of advanced_security_committers for each repository.
11883    /// If this organization defers to an enterprise for billing, the total_advanced_security_committers returned from the organization API may include some users that are in more than one organization, so they will only consume a single Advanced Security seat at the enterprise level.
11884    /// 
11885    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-github-advanced-security-active-committers-for-an-organization)
11886    pub fn billing_get_github_advanced_security_billing_org(
11887        &self,
11888        org: &str,
11889        per_page: ::std::option::Option<i64>,
11890        page: ::std::option::Option<i64>,
11891    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11892        let mut theScheme = AuthScheme::from(&self.config.authentication);
11893
11894        while let Some(auth_step) = theScheme.step()? {
11895            match auth_step {
11896                ::authentic::AuthenticationStep::Request(auth_request) => {
11897                    theScheme.respond(self.client.execute(auth_request));
11898                }
11899                ::authentic::AuthenticationStep::WaitFor(duration) => {
11900                    (self.sleep)(duration);
11901                }
11902            }
11903        }
11904        let theBuilder = crate::v1_1_4::request::billing_get_github_advanced_security_billing_org::reqwest_blocking_builder(
11905            self.config.base_url.as_ref(),
11906            org,
11907            per_page,
11908            page,
11909            self.config.user_agent.as_ref(),
11910            self.config.accept.as_deref(),
11911        )?
11912        .with_authentication(&theScheme)?;
11913
11914        let theRequest =
11915            crate::v1_1_4::request::billing_get_github_advanced_security_billing_org::reqwest_blocking_request(theBuilder)?;
11916
11917        ::log::debug!("HTTP request: {:?}", &theRequest);
11918
11919        let theResponse = self.client.execute(theRequest)?;
11920
11921        ::log::debug!("HTTP response: {:?}", &theResponse);
11922
11923        Ok(theResponse)
11924    }
11925
11926    /// Get GitHub Packages billing for an organization
11927    /// 
11928    /// Gets the free and paid storage used for GitHub Packages in gigabytes.
11929    /// 
11930    /// Paid minutes only apply to packages stored for private repositories. For more information, see "[Managing billing for GitHub Packages](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages)."
11931    /// 
11932    /// Access tokens must have the `repo` or `admin:org` scope.
11933    /// 
11934    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-github-packages-billing-for-an-organization)
11935    pub fn billing_get_github_packages_billing_org(
11936        &self,
11937        org: &str,
11938    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11939        let mut theScheme = AuthScheme::from(&self.config.authentication);
11940
11941        while let Some(auth_step) = theScheme.step()? {
11942            match auth_step {
11943                ::authentic::AuthenticationStep::Request(auth_request) => {
11944                    theScheme.respond(self.client.execute(auth_request));
11945                }
11946                ::authentic::AuthenticationStep::WaitFor(duration) => {
11947                    (self.sleep)(duration);
11948                }
11949            }
11950        }
11951        let theBuilder = crate::v1_1_4::request::billing_get_github_packages_billing_org::reqwest_blocking_builder(
11952            self.config.base_url.as_ref(),
11953            org,
11954            self.config.user_agent.as_ref(),
11955            self.config.accept.as_deref(),
11956        )?
11957        .with_authentication(&theScheme)?;
11958
11959        let theRequest =
11960            crate::v1_1_4::request::billing_get_github_packages_billing_org::reqwest_blocking_request(theBuilder)?;
11961
11962        ::log::debug!("HTTP request: {:?}", &theRequest);
11963
11964        let theResponse = self.client.execute(theRequest)?;
11965
11966        ::log::debug!("HTTP response: {:?}", &theResponse);
11967
11968        Ok(theResponse)
11969    }
11970
11971    /// Get shared storage billing for an organization
11972    /// 
11973    /// Gets the estimated paid and estimated total storage used for GitHub Actions and GitHub Packages.
11974    /// 
11975    /// Paid minutes only apply to packages stored for private repositories. For more information, see "[Managing billing for GitHub Packages](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages)."
11976    /// 
11977    /// Access tokens must have the `repo` or `admin:org` scope.
11978    /// 
11979    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-shared-storage-billing-for-an-organization)
11980    pub fn billing_get_shared_storage_billing_org(
11981        &self,
11982        org: &str,
11983    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
11984        let mut theScheme = AuthScheme::from(&self.config.authentication);
11985
11986        while let Some(auth_step) = theScheme.step()? {
11987            match auth_step {
11988                ::authentic::AuthenticationStep::Request(auth_request) => {
11989                    theScheme.respond(self.client.execute(auth_request));
11990                }
11991                ::authentic::AuthenticationStep::WaitFor(duration) => {
11992                    (self.sleep)(duration);
11993                }
11994            }
11995        }
11996        let theBuilder = crate::v1_1_4::request::billing_get_shared_storage_billing_org::reqwest_blocking_builder(
11997            self.config.base_url.as_ref(),
11998            org,
11999            self.config.user_agent.as_ref(),
12000            self.config.accept.as_deref(),
12001        )?
12002        .with_authentication(&theScheme)?;
12003
12004        let theRequest =
12005            crate::v1_1_4::request::billing_get_shared_storage_billing_org::reqwest_blocking_request(theBuilder)?;
12006
12007        ::log::debug!("HTTP request: {:?}", &theRequest);
12008
12009        let theResponse = self.client.execute(theRequest)?;
12010
12011        ::log::debug!("HTTP response: {:?}", &theResponse);
12012
12013        Ok(theResponse)
12014    }
12015
12016    /// List IdP groups for an organization
12017    /// 
12018    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
12019    /// 
12020    /// List IdP groups available in an organization. You can limit your page results using the `per_page` parameter. GitHub generates a url-encoded `page` token using a cursor value for where the next page begins. For more information on cursor pagination, see "[Offset and Cursor Pagination explained](https://dev.to/jackmarchant/offset-and-cursor-pagination-explained-b89)."
12021    /// 
12022    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-idp-groups-for-an-organization)
12023    pub fn teams_list_idp_groups_for_org(
12024        &self,
12025        org: &str,
12026        per_page: ::std::option::Option<i64>,
12027        page: ::std::option::Option<&str>,
12028    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12029        let mut theScheme = AuthScheme::from(&self.config.authentication);
12030
12031        while let Some(auth_step) = theScheme.step()? {
12032            match auth_step {
12033                ::authentic::AuthenticationStep::Request(auth_request) => {
12034                    theScheme.respond(self.client.execute(auth_request));
12035                }
12036                ::authentic::AuthenticationStep::WaitFor(duration) => {
12037                    (self.sleep)(duration);
12038                }
12039            }
12040        }
12041        let theBuilder = crate::v1_1_4::request::teams_list_idp_groups_for_org::reqwest_blocking_builder(
12042            self.config.base_url.as_ref(),
12043            org,
12044            per_page,
12045            page,
12046            self.config.user_agent.as_ref(),
12047            self.config.accept.as_deref(),
12048        )?
12049        .with_authentication(&theScheme)?;
12050
12051        let theRequest =
12052            crate::v1_1_4::request::teams_list_idp_groups_for_org::reqwest_blocking_request(theBuilder)?;
12053
12054        ::log::debug!("HTTP request: {:?}", &theRequest);
12055
12056        let theResponse = self.client.execute(theRequest)?;
12057
12058        ::log::debug!("HTTP response: {:?}", &theResponse);
12059
12060        Ok(theResponse)
12061    }
12062
12063    /// List teams
12064    /// 
12065    /// Lists all teams in an organization that are visible to the authenticated user.
12066    /// 
12067    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-teams)
12068    pub fn teams_list(
12069        &self,
12070        org: &str,
12071        per_page: ::std::option::Option<i64>,
12072        page: ::std::option::Option<i64>,
12073    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12074        let mut theScheme = AuthScheme::from(&self.config.authentication);
12075
12076        while let Some(auth_step) = theScheme.step()? {
12077            match auth_step {
12078                ::authentic::AuthenticationStep::Request(auth_request) => {
12079                    theScheme.respond(self.client.execute(auth_request));
12080                }
12081                ::authentic::AuthenticationStep::WaitFor(duration) => {
12082                    (self.sleep)(duration);
12083                }
12084            }
12085        }
12086        let theBuilder = crate::v1_1_4::request::teams_list::reqwest_blocking_builder(
12087            self.config.base_url.as_ref(),
12088            org,
12089            per_page,
12090            page,
12091            self.config.user_agent.as_ref(),
12092            self.config.accept.as_deref(),
12093        )?
12094        .with_authentication(&theScheme)?;
12095
12096        let theRequest =
12097            crate::v1_1_4::request::teams_list::reqwest_blocking_request(theBuilder)?;
12098
12099        ::log::debug!("HTTP request: {:?}", &theRequest);
12100
12101        let theResponse = self.client.execute(theRequest)?;
12102
12103        ::log::debug!("HTTP response: {:?}", &theResponse);
12104
12105        Ok(theResponse)
12106    }
12107
12108    /// Create a team
12109    /// 
12110    /// To create a team, the authenticated user must be a member or owner of `{org}`. By default, organization members can create teams. Organization owners can limit team creation to organization owners. For more information, see "[Setting team creation permissions](https://docs.github.com/en/articles/setting-team-creation-permissions-in-your-organization)."
12111    /// 
12112    /// When you create a new team, you automatically become a team maintainer without explicitly adding yourself to the optional array of `maintainers`. For more information, see "[About teams](https://docs.github.com/en/github/setting-up-and-managing-organizations-and-teams/about-teams)".
12113    /// 
12114    /// [API method documentation](https://docs.github.com/rest/reference/teams#create-a-team)
12115    ///
12116    /// # Content
12117    ///
12118    /// - [`&v1_1_4::request::teams_create::body::Json`](crate::v1_1_4::request::teams_create::body::Json)
12119    pub fn teams_create<Content>(
12120        &self,
12121        org: &str,
12122        theContent: Content,
12123    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
12124    where
12125        Content: Copy + TryInto<crate::v1_1_4::request::teams_create::Content<::reqwest::blocking::Body>>,
12126        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_create::Content<::reqwest::blocking::Body>>>::Error>
12127    {
12128        let mut theScheme = AuthScheme::from(&self.config.authentication);
12129
12130        while let Some(auth_step) = theScheme.step()? {
12131            match auth_step {
12132                ::authentic::AuthenticationStep::Request(auth_request) => {
12133                    theScheme.respond(self.client.execute(auth_request));
12134                }
12135                ::authentic::AuthenticationStep::WaitFor(duration) => {
12136                    (self.sleep)(duration);
12137                }
12138            }
12139        }
12140        let theBuilder = crate::v1_1_4::request::teams_create::reqwest_blocking_builder(
12141            self.config.base_url.as_ref(),
12142            org,
12143            self.config.user_agent.as_ref(),
12144            self.config.accept.as_deref(),
12145        )?
12146        .with_authentication(&theScheme)?;
12147
12148        let theRequest = crate::v1_1_4::request::teams_create::reqwest_blocking_request(
12149            theBuilder,
12150            theContent.try_into()?,
12151        )?;
12152
12153        ::log::debug!("HTTP request: {:?}", &theRequest);
12154
12155        let theResponse = self.client.execute(theRequest)?;
12156
12157        ::log::debug!("HTTP response: {:?}", &theResponse);
12158
12159        Ok(theResponse)
12160    }
12161
12162    /// Get a team by name
12163    /// 
12164    /// Gets a team using the team's `slug`. GitHub generates the `slug` from the team `name`.
12165    /// 
12166    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}`.
12167    /// 
12168    /// [API method documentation](https://docs.github.com/rest/reference/teams#get-a-team-by-name)
12169    pub fn teams_get_by_name(
12170        &self,
12171        org: &str,
12172        team_slug: &str,
12173    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12174        let mut theScheme = AuthScheme::from(&self.config.authentication);
12175
12176        while let Some(auth_step) = theScheme.step()? {
12177            match auth_step {
12178                ::authentic::AuthenticationStep::Request(auth_request) => {
12179                    theScheme.respond(self.client.execute(auth_request));
12180                }
12181                ::authentic::AuthenticationStep::WaitFor(duration) => {
12182                    (self.sleep)(duration);
12183                }
12184            }
12185        }
12186        let theBuilder = crate::v1_1_4::request::teams_get_by_name::reqwest_blocking_builder(
12187            self.config.base_url.as_ref(),
12188            org,
12189            team_slug,
12190            self.config.user_agent.as_ref(),
12191            self.config.accept.as_deref(),
12192        )?
12193        .with_authentication(&theScheme)?;
12194
12195        let theRequest =
12196            crate::v1_1_4::request::teams_get_by_name::reqwest_blocking_request(theBuilder)?;
12197
12198        ::log::debug!("HTTP request: {:?}", &theRequest);
12199
12200        let theResponse = self.client.execute(theRequest)?;
12201
12202        ::log::debug!("HTTP response: {:?}", &theResponse);
12203
12204        Ok(theResponse)
12205    }
12206
12207    /// Delete a team
12208    /// 
12209    /// To delete a team, the authenticated user must be an organization owner or team maintainer.
12210    /// 
12211    /// If you are an organization owner, deleting a parent team will delete all of its child teams as well.
12212    /// 
12213    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}`.
12214    /// 
12215    /// [API method documentation](https://docs.github.com/rest/reference/teams#delete-a-team)
12216    pub fn teams_delete_in_org(
12217        &self,
12218        org: &str,
12219        team_slug: &str,
12220    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12221        let mut theScheme = AuthScheme::from(&self.config.authentication);
12222
12223        while let Some(auth_step) = theScheme.step()? {
12224            match auth_step {
12225                ::authentic::AuthenticationStep::Request(auth_request) => {
12226                    theScheme.respond(self.client.execute(auth_request));
12227                }
12228                ::authentic::AuthenticationStep::WaitFor(duration) => {
12229                    (self.sleep)(duration);
12230                }
12231            }
12232        }
12233        let theBuilder = crate::v1_1_4::request::teams_delete_in_org::reqwest_blocking_builder(
12234            self.config.base_url.as_ref(),
12235            org,
12236            team_slug,
12237            self.config.user_agent.as_ref(),
12238            self.config.accept.as_deref(),
12239        )?
12240        .with_authentication(&theScheme)?;
12241
12242        let theRequest =
12243            crate::v1_1_4::request::teams_delete_in_org::reqwest_blocking_request(theBuilder)?;
12244
12245        ::log::debug!("HTTP request: {:?}", &theRequest);
12246
12247        let theResponse = self.client.execute(theRequest)?;
12248
12249        ::log::debug!("HTTP response: {:?}", &theResponse);
12250
12251        Ok(theResponse)
12252    }
12253
12254    /// Update a team
12255    /// 
12256    /// To edit a team, the authenticated user must either be an organization owner or a team maintainer.
12257    /// 
12258    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `PATCH /organizations/{org_id}/team/{team_id}`.
12259    /// 
12260    /// [API method documentation](https://docs.github.com/rest/reference/teams#update-a-team)
12261    ///
12262    /// # Content
12263    ///
12264    /// - [`&v1_1_4::request::teams_update_in_org::body::Json`](crate::v1_1_4::request::teams_update_in_org::body::Json)
12265    pub fn teams_update_in_org<Content>(
12266        &self,
12267        org: &str,
12268        team_slug: &str,
12269        theContent: Content,
12270    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
12271    where
12272        Content: Copy + TryInto<crate::v1_1_4::request::teams_update_in_org::Content<::reqwest::blocking::Body>>,
12273        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_update_in_org::Content<::reqwest::blocking::Body>>>::Error>
12274    {
12275        let mut theScheme = AuthScheme::from(&self.config.authentication);
12276
12277        while let Some(auth_step) = theScheme.step()? {
12278            match auth_step {
12279                ::authentic::AuthenticationStep::Request(auth_request) => {
12280                    theScheme.respond(self.client.execute(auth_request));
12281                }
12282                ::authentic::AuthenticationStep::WaitFor(duration) => {
12283                    (self.sleep)(duration);
12284                }
12285            }
12286        }
12287        let theBuilder = crate::v1_1_4::request::teams_update_in_org::reqwest_blocking_builder(
12288            self.config.base_url.as_ref(),
12289            org,
12290            team_slug,
12291            self.config.user_agent.as_ref(),
12292            self.config.accept.as_deref(),
12293        )?
12294        .with_authentication(&theScheme)?;
12295
12296        let theRequest = crate::v1_1_4::request::teams_update_in_org::reqwest_blocking_request(
12297            theBuilder,
12298            theContent.try_into()?,
12299        )?;
12300
12301        ::log::debug!("HTTP request: {:?}", &theRequest);
12302
12303        let theResponse = self.client.execute(theRequest)?;
12304
12305        ::log::debug!("HTTP response: {:?}", &theResponse);
12306
12307        Ok(theResponse)
12308    }
12309
12310    /// List discussions
12311    /// 
12312    /// List all discussions on a team's page. OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12313    /// 
12314    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/discussions`.
12315    /// 
12316    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-discussions)
12317    pub fn teams_list_discussions_in_org(
12318        &self,
12319        org: &str,
12320        team_slug: &str,
12321        direction: ::std::option::Option<&str>,
12322        per_page: ::std::option::Option<i64>,
12323        page: ::std::option::Option<i64>,
12324        pinned: ::std::option::Option<&str>,
12325    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12326        let mut theScheme = AuthScheme::from(&self.config.authentication);
12327
12328        while let Some(auth_step) = theScheme.step()? {
12329            match auth_step {
12330                ::authentic::AuthenticationStep::Request(auth_request) => {
12331                    theScheme.respond(self.client.execute(auth_request));
12332                }
12333                ::authentic::AuthenticationStep::WaitFor(duration) => {
12334                    (self.sleep)(duration);
12335                }
12336            }
12337        }
12338        let theBuilder = crate::v1_1_4::request::teams_list_discussions_in_org::reqwest_blocking_builder(
12339            self.config.base_url.as_ref(),
12340            org,
12341            team_slug,
12342            direction,
12343            per_page,
12344            page,
12345            pinned,
12346            self.config.user_agent.as_ref(),
12347            self.config.accept.as_deref(),
12348        )?
12349        .with_authentication(&theScheme)?;
12350
12351        let theRequest =
12352            crate::v1_1_4::request::teams_list_discussions_in_org::reqwest_blocking_request(theBuilder)?;
12353
12354        ::log::debug!("HTTP request: {:?}", &theRequest);
12355
12356        let theResponse = self.client.execute(theRequest)?;
12357
12358        ::log::debug!("HTTP response: {:?}", &theResponse);
12359
12360        Ok(theResponse)
12361    }
12362
12363    /// Create a discussion
12364    /// 
12365    /// Creates a new discussion post on a team's page. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12366    /// 
12367    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
12368    /// 
12369    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions`.
12370    /// 
12371    /// [API method documentation](https://docs.github.com/rest/reference/teams#create-a-discussion)
12372    ///
12373    /// # Content
12374    ///
12375    /// - [`&v1_1_4::request::teams_create_discussion_in_org::body::Json`](crate::v1_1_4::request::teams_create_discussion_in_org::body::Json)
12376    pub fn teams_create_discussion_in_org<Content>(
12377        &self,
12378        org: &str,
12379        team_slug: &str,
12380        theContent: Content,
12381    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
12382    where
12383        Content: Copy + TryInto<crate::v1_1_4::request::teams_create_discussion_in_org::Content<::reqwest::blocking::Body>>,
12384        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_create_discussion_in_org::Content<::reqwest::blocking::Body>>>::Error>
12385    {
12386        let mut theScheme = AuthScheme::from(&self.config.authentication);
12387
12388        while let Some(auth_step) = theScheme.step()? {
12389            match auth_step {
12390                ::authentic::AuthenticationStep::Request(auth_request) => {
12391                    theScheme.respond(self.client.execute(auth_request));
12392                }
12393                ::authentic::AuthenticationStep::WaitFor(duration) => {
12394                    (self.sleep)(duration);
12395                }
12396            }
12397        }
12398        let theBuilder = crate::v1_1_4::request::teams_create_discussion_in_org::reqwest_blocking_builder(
12399            self.config.base_url.as_ref(),
12400            org,
12401            team_slug,
12402            self.config.user_agent.as_ref(),
12403            self.config.accept.as_deref(),
12404        )?
12405        .with_authentication(&theScheme)?;
12406
12407        let theRequest = crate::v1_1_4::request::teams_create_discussion_in_org::reqwest_blocking_request(
12408            theBuilder,
12409            theContent.try_into()?,
12410        )?;
12411
12412        ::log::debug!("HTTP request: {:?}", &theRequest);
12413
12414        let theResponse = self.client.execute(theRequest)?;
12415
12416        ::log::debug!("HTTP response: {:?}", &theResponse);
12417
12418        Ok(theResponse)
12419    }
12420
12421    /// Get a discussion
12422    /// 
12423    /// Get a specific discussion on a team's page. OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12424    /// 
12425    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}`.
12426    /// 
12427    /// [API method documentation](https://docs.github.com/rest/reference/teams#get-a-discussion)
12428    pub fn teams_get_discussion_in_org(
12429        &self,
12430        org: &str,
12431        team_slug: &str,
12432        discussion_number: i64,
12433    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12434        let mut theScheme = AuthScheme::from(&self.config.authentication);
12435
12436        while let Some(auth_step) = theScheme.step()? {
12437            match auth_step {
12438                ::authentic::AuthenticationStep::Request(auth_request) => {
12439                    theScheme.respond(self.client.execute(auth_request));
12440                }
12441                ::authentic::AuthenticationStep::WaitFor(duration) => {
12442                    (self.sleep)(duration);
12443                }
12444            }
12445        }
12446        let theBuilder = crate::v1_1_4::request::teams_get_discussion_in_org::reqwest_blocking_builder(
12447            self.config.base_url.as_ref(),
12448            org,
12449            team_slug,
12450            discussion_number,
12451            self.config.user_agent.as_ref(),
12452            self.config.accept.as_deref(),
12453        )?
12454        .with_authentication(&theScheme)?;
12455
12456        let theRequest =
12457            crate::v1_1_4::request::teams_get_discussion_in_org::reqwest_blocking_request(theBuilder)?;
12458
12459        ::log::debug!("HTTP request: {:?}", &theRequest);
12460
12461        let theResponse = self.client.execute(theRequest)?;
12462
12463        ::log::debug!("HTTP response: {:?}", &theResponse);
12464
12465        Ok(theResponse)
12466    }
12467
12468    /// Delete a discussion
12469    /// 
12470    /// Delete a discussion from a team's page. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12471    /// 
12472    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}`.
12473    /// 
12474    /// [API method documentation](https://docs.github.com/rest/reference/teams#delete-a-discussion)
12475    pub fn teams_delete_discussion_in_org(
12476        &self,
12477        org: &str,
12478        team_slug: &str,
12479        discussion_number: i64,
12480    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12481        let mut theScheme = AuthScheme::from(&self.config.authentication);
12482
12483        while let Some(auth_step) = theScheme.step()? {
12484            match auth_step {
12485                ::authentic::AuthenticationStep::Request(auth_request) => {
12486                    theScheme.respond(self.client.execute(auth_request));
12487                }
12488                ::authentic::AuthenticationStep::WaitFor(duration) => {
12489                    (self.sleep)(duration);
12490                }
12491            }
12492        }
12493        let theBuilder = crate::v1_1_4::request::teams_delete_discussion_in_org::reqwest_blocking_builder(
12494            self.config.base_url.as_ref(),
12495            org,
12496            team_slug,
12497            discussion_number,
12498            self.config.user_agent.as_ref(),
12499            self.config.accept.as_deref(),
12500        )?
12501        .with_authentication(&theScheme)?;
12502
12503        let theRequest =
12504            crate::v1_1_4::request::teams_delete_discussion_in_org::reqwest_blocking_request(theBuilder)?;
12505
12506        ::log::debug!("HTTP request: {:?}", &theRequest);
12507
12508        let theResponse = self.client.execute(theRequest)?;
12509
12510        ::log::debug!("HTTP response: {:?}", &theResponse);
12511
12512        Ok(theResponse)
12513    }
12514
12515    /// Update a discussion
12516    /// 
12517    /// Edits the title and body text of a discussion post. Only the parameters you provide are updated. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12518    /// 
12519    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `PATCH /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}`.
12520    /// 
12521    /// [API method documentation](https://docs.github.com/rest/reference/teams#update-a-discussion)
12522    ///
12523    /// # Content
12524    ///
12525    /// - [`&v1_1_4::request::teams_update_discussion_in_org::body::Json`](crate::v1_1_4::request::teams_update_discussion_in_org::body::Json)
12526    pub fn teams_update_discussion_in_org<Content>(
12527        &self,
12528        org: &str,
12529        team_slug: &str,
12530        discussion_number: i64,
12531        theContent: Content,
12532    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
12533    where
12534        Content: Copy + TryInto<crate::v1_1_4::request::teams_update_discussion_in_org::Content<::reqwest::blocking::Body>>,
12535        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_update_discussion_in_org::Content<::reqwest::blocking::Body>>>::Error>
12536    {
12537        let mut theScheme = AuthScheme::from(&self.config.authentication);
12538
12539        while let Some(auth_step) = theScheme.step()? {
12540            match auth_step {
12541                ::authentic::AuthenticationStep::Request(auth_request) => {
12542                    theScheme.respond(self.client.execute(auth_request));
12543                }
12544                ::authentic::AuthenticationStep::WaitFor(duration) => {
12545                    (self.sleep)(duration);
12546                }
12547            }
12548        }
12549        let theBuilder = crate::v1_1_4::request::teams_update_discussion_in_org::reqwest_blocking_builder(
12550            self.config.base_url.as_ref(),
12551            org,
12552            team_slug,
12553            discussion_number,
12554            self.config.user_agent.as_ref(),
12555            self.config.accept.as_deref(),
12556        )?
12557        .with_authentication(&theScheme)?;
12558
12559        let theRequest = crate::v1_1_4::request::teams_update_discussion_in_org::reqwest_blocking_request(
12560            theBuilder,
12561            theContent.try_into()?,
12562        )?;
12563
12564        ::log::debug!("HTTP request: {:?}", &theRequest);
12565
12566        let theResponse = self.client.execute(theRequest)?;
12567
12568        ::log::debug!("HTTP response: {:?}", &theResponse);
12569
12570        Ok(theResponse)
12571    }
12572
12573    /// List discussion comments
12574    /// 
12575    /// List all comments on a team discussion. OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12576    /// 
12577    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.
12578    /// 
12579    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-discussion-comments)
12580    pub fn teams_list_discussion_comments_in_org(
12581        &self,
12582        org: &str,
12583        team_slug: &str,
12584        discussion_number: i64,
12585        direction: ::std::option::Option<&str>,
12586        per_page: ::std::option::Option<i64>,
12587        page: ::std::option::Option<i64>,
12588    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12589        let mut theScheme = AuthScheme::from(&self.config.authentication);
12590
12591        while let Some(auth_step) = theScheme.step()? {
12592            match auth_step {
12593                ::authentic::AuthenticationStep::Request(auth_request) => {
12594                    theScheme.respond(self.client.execute(auth_request));
12595                }
12596                ::authentic::AuthenticationStep::WaitFor(duration) => {
12597                    (self.sleep)(duration);
12598                }
12599            }
12600        }
12601        let theBuilder = crate::v1_1_4::request::teams_list_discussion_comments_in_org::reqwest_blocking_builder(
12602            self.config.base_url.as_ref(),
12603            org,
12604            team_slug,
12605            discussion_number,
12606            direction,
12607            per_page,
12608            page,
12609            self.config.user_agent.as_ref(),
12610            self.config.accept.as_deref(),
12611        )?
12612        .with_authentication(&theScheme)?;
12613
12614        let theRequest =
12615            crate::v1_1_4::request::teams_list_discussion_comments_in_org::reqwest_blocking_request(theBuilder)?;
12616
12617        ::log::debug!("HTTP request: {:?}", &theRequest);
12618
12619        let theResponse = self.client.execute(theRequest)?;
12620
12621        ::log::debug!("HTTP response: {:?}", &theResponse);
12622
12623        Ok(theResponse)
12624    }
12625
12626    /// Create a discussion comment
12627    /// 
12628    /// Creates a new comment on a team discussion. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12629    /// 
12630    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
12631    /// 
12632    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments`.
12633    /// 
12634    /// [API method documentation](https://docs.github.com/rest/reference/teams#create-a-discussion-comment)
12635    ///
12636    /// # Content
12637    ///
12638    /// - [`&v1_1_4::request::teams_create_discussion_comment_in_org::body::Json`](crate::v1_1_4::request::teams_create_discussion_comment_in_org::body::Json)
12639    pub fn teams_create_discussion_comment_in_org<Content>(
12640        &self,
12641        org: &str,
12642        team_slug: &str,
12643        discussion_number: i64,
12644        theContent: Content,
12645    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
12646    where
12647        Content: Copy + TryInto<crate::v1_1_4::request::teams_create_discussion_comment_in_org::Content<::reqwest::blocking::Body>>,
12648        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_create_discussion_comment_in_org::Content<::reqwest::blocking::Body>>>::Error>
12649    {
12650        let mut theScheme = AuthScheme::from(&self.config.authentication);
12651
12652        while let Some(auth_step) = theScheme.step()? {
12653            match auth_step {
12654                ::authentic::AuthenticationStep::Request(auth_request) => {
12655                    theScheme.respond(self.client.execute(auth_request));
12656                }
12657                ::authentic::AuthenticationStep::WaitFor(duration) => {
12658                    (self.sleep)(duration);
12659                }
12660            }
12661        }
12662        let theBuilder = crate::v1_1_4::request::teams_create_discussion_comment_in_org::reqwest_blocking_builder(
12663            self.config.base_url.as_ref(),
12664            org,
12665            team_slug,
12666            discussion_number,
12667            self.config.user_agent.as_ref(),
12668            self.config.accept.as_deref(),
12669        )?
12670        .with_authentication(&theScheme)?;
12671
12672        let theRequest = crate::v1_1_4::request::teams_create_discussion_comment_in_org::reqwest_blocking_request(
12673            theBuilder,
12674            theContent.try_into()?,
12675        )?;
12676
12677        ::log::debug!("HTTP request: {:?}", &theRequest);
12678
12679        let theResponse = self.client.execute(theRequest)?;
12680
12681        ::log::debug!("HTTP response: {:?}", &theResponse);
12682
12683        Ok(theResponse)
12684    }
12685
12686    /// Get a discussion comment
12687    /// 
12688    /// Get a specific comment on a team discussion. OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12689    /// 
12690    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments/{comment_number}`.
12691    /// 
12692    /// [API method documentation](https://docs.github.com/rest/reference/teams#get-a-discussion-comment)
12693    pub fn teams_get_discussion_comment_in_org(
12694        &self,
12695        org: &str,
12696        team_slug: &str,
12697        discussion_number: i64,
12698        comment_number: i64,
12699    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12700        let mut theScheme = AuthScheme::from(&self.config.authentication);
12701
12702        while let Some(auth_step) = theScheme.step()? {
12703            match auth_step {
12704                ::authentic::AuthenticationStep::Request(auth_request) => {
12705                    theScheme.respond(self.client.execute(auth_request));
12706                }
12707                ::authentic::AuthenticationStep::WaitFor(duration) => {
12708                    (self.sleep)(duration);
12709                }
12710            }
12711        }
12712        let theBuilder = crate::v1_1_4::request::teams_get_discussion_comment_in_org::reqwest_blocking_builder(
12713            self.config.base_url.as_ref(),
12714            org,
12715            team_slug,
12716            discussion_number,
12717            comment_number,
12718            self.config.user_agent.as_ref(),
12719            self.config.accept.as_deref(),
12720        )?
12721        .with_authentication(&theScheme)?;
12722
12723        let theRequest =
12724            crate::v1_1_4::request::teams_get_discussion_comment_in_org::reqwest_blocking_request(theBuilder)?;
12725
12726        ::log::debug!("HTTP request: {:?}", &theRequest);
12727
12728        let theResponse = self.client.execute(theRequest)?;
12729
12730        ::log::debug!("HTTP response: {:?}", &theResponse);
12731
12732        Ok(theResponse)
12733    }
12734
12735    /// Delete a discussion comment
12736    /// 
12737    /// Deletes a comment on a team discussion. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12738    /// 
12739    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments/{comment_number}`.
12740    /// 
12741    /// [API method documentation](https://docs.github.com/rest/reference/teams#delete-a-discussion-comment)
12742    pub fn teams_delete_discussion_comment_in_org(
12743        &self,
12744        org: &str,
12745        team_slug: &str,
12746        discussion_number: i64,
12747        comment_number: i64,
12748    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12749        let mut theScheme = AuthScheme::from(&self.config.authentication);
12750
12751        while let Some(auth_step) = theScheme.step()? {
12752            match auth_step {
12753                ::authentic::AuthenticationStep::Request(auth_request) => {
12754                    theScheme.respond(self.client.execute(auth_request));
12755                }
12756                ::authentic::AuthenticationStep::WaitFor(duration) => {
12757                    (self.sleep)(duration);
12758                }
12759            }
12760        }
12761        let theBuilder = crate::v1_1_4::request::teams_delete_discussion_comment_in_org::reqwest_blocking_builder(
12762            self.config.base_url.as_ref(),
12763            org,
12764            team_slug,
12765            discussion_number,
12766            comment_number,
12767            self.config.user_agent.as_ref(),
12768            self.config.accept.as_deref(),
12769        )?
12770        .with_authentication(&theScheme)?;
12771
12772        let theRequest =
12773            crate::v1_1_4::request::teams_delete_discussion_comment_in_org::reqwest_blocking_request(theBuilder)?;
12774
12775        ::log::debug!("HTTP request: {:?}", &theRequest);
12776
12777        let theResponse = self.client.execute(theRequest)?;
12778
12779        ::log::debug!("HTTP response: {:?}", &theResponse);
12780
12781        Ok(theResponse)
12782    }
12783
12784    /// Update a discussion comment
12785    /// 
12786    /// Edits the body text of a discussion comment. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12787    /// 
12788    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `PATCH /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments/{comment_number}`.
12789    /// 
12790    /// [API method documentation](https://docs.github.com/rest/reference/teams#update-a-discussion-comment)
12791    ///
12792    /// # Content
12793    ///
12794    /// - [`&v1_1_4::request::teams_update_discussion_comment_in_org::body::Json`](crate::v1_1_4::request::teams_update_discussion_comment_in_org::body::Json)
12795    pub fn teams_update_discussion_comment_in_org<Content>(
12796        &self,
12797        org: &str,
12798        team_slug: &str,
12799        discussion_number: i64,
12800        comment_number: i64,
12801        theContent: Content,
12802    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
12803    where
12804        Content: Copy + TryInto<crate::v1_1_4::request::teams_update_discussion_comment_in_org::Content<::reqwest::blocking::Body>>,
12805        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_update_discussion_comment_in_org::Content<::reqwest::blocking::Body>>>::Error>
12806    {
12807        let mut theScheme = AuthScheme::from(&self.config.authentication);
12808
12809        while let Some(auth_step) = theScheme.step()? {
12810            match auth_step {
12811                ::authentic::AuthenticationStep::Request(auth_request) => {
12812                    theScheme.respond(self.client.execute(auth_request));
12813                }
12814                ::authentic::AuthenticationStep::WaitFor(duration) => {
12815                    (self.sleep)(duration);
12816                }
12817            }
12818        }
12819        let theBuilder = crate::v1_1_4::request::teams_update_discussion_comment_in_org::reqwest_blocking_builder(
12820            self.config.base_url.as_ref(),
12821            org,
12822            team_slug,
12823            discussion_number,
12824            comment_number,
12825            self.config.user_agent.as_ref(),
12826            self.config.accept.as_deref(),
12827        )?
12828        .with_authentication(&theScheme)?;
12829
12830        let theRequest = crate::v1_1_4::request::teams_update_discussion_comment_in_org::reqwest_blocking_request(
12831            theBuilder,
12832            theContent.try_into()?,
12833        )?;
12834
12835        ::log::debug!("HTTP request: {:?}", &theRequest);
12836
12837        let theResponse = self.client.execute(theRequest)?;
12838
12839        ::log::debug!("HTTP response: {:?}", &theResponse);
12840
12841        Ok(theResponse)
12842    }
12843
12844    /// List reactions for a team discussion comment
12845    /// 
12846    /// List the reactions to a [team discussion comment](https://docs.github.com/rest/reference/teams#discussion-comments/). OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12847    /// 
12848    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/:org_id/team/:team_id/discussions/:discussion_number/comments/:comment_number/reactions`.
12849    /// 
12850    /// [API method documentation](https://docs.github.com/rest/reference/reactions#list-reactions-for-a-team-discussion-comment)
12851    #[allow(clippy::too_many_arguments)]
12852    pub fn reactions_list_for_team_discussion_comment_in_org(
12853        &self,
12854        org: &str,
12855        team_slug: &str,
12856        discussion_number: i64,
12857        comment_number: i64,
12858        content: ::std::option::Option<&str>,
12859        per_page: ::std::option::Option<i64>,
12860        page: ::std::option::Option<i64>,
12861    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12862        let mut theScheme = AuthScheme::from(&self.config.authentication);
12863
12864        while let Some(auth_step) = theScheme.step()? {
12865            match auth_step {
12866                ::authentic::AuthenticationStep::Request(auth_request) => {
12867                    theScheme.respond(self.client.execute(auth_request));
12868                }
12869                ::authentic::AuthenticationStep::WaitFor(duration) => {
12870                    (self.sleep)(duration);
12871                }
12872            }
12873        }
12874        let theBuilder = crate::v1_1_4::request::reactions_list_for_team_discussion_comment_in_org::reqwest_blocking_builder(
12875            self.config.base_url.as_ref(),
12876            org,
12877            team_slug,
12878            discussion_number,
12879            comment_number,
12880            content,
12881            per_page,
12882            page,
12883            self.config.user_agent.as_ref(),
12884            self.config.accept.as_deref(),
12885        )?
12886        .with_authentication(&theScheme)?;
12887
12888        let theRequest =
12889            crate::v1_1_4::request::reactions_list_for_team_discussion_comment_in_org::reqwest_blocking_request(theBuilder)?;
12890
12891        ::log::debug!("HTTP request: {:?}", &theRequest);
12892
12893        let theResponse = self.client.execute(theRequest)?;
12894
12895        ::log::debug!("HTTP response: {:?}", &theResponse);
12896
12897        Ok(theResponse)
12898    }
12899
12900    /// Create reaction for a team discussion comment
12901    /// 
12902    /// Create a reaction to a [team discussion comment](https://docs.github.com/rest/reference/teams#discussion-comments). OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/). A response with an HTTP `200` status means that you already added the reaction type to this team discussion comment.
12903    /// 
12904    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/:org_id/team/:team_id/discussions/:discussion_number/comments/:comment_number/reactions`.
12905    /// 
12906    /// [API method documentation](https://docs.github.com/rest/reference/reactions#create-reaction-for-a-team-discussion-comment)
12907    ///
12908    /// # Content
12909    ///
12910    /// - [`&v1_1_4::request::reactions_create_for_team_discussion_comment_in_org::body::Json`](crate::v1_1_4::request::reactions_create_for_team_discussion_comment_in_org::body::Json)
12911    pub fn reactions_create_for_team_discussion_comment_in_org<Content>(
12912        &self,
12913        org: &str,
12914        team_slug: &str,
12915        discussion_number: i64,
12916        comment_number: i64,
12917        theContent: Content,
12918    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
12919    where
12920        Content: Copy + TryInto<crate::v1_1_4::request::reactions_create_for_team_discussion_comment_in_org::Content<::reqwest::blocking::Body>>,
12921        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::reactions_create_for_team_discussion_comment_in_org::Content<::reqwest::blocking::Body>>>::Error>
12922    {
12923        let mut theScheme = AuthScheme::from(&self.config.authentication);
12924
12925        while let Some(auth_step) = theScheme.step()? {
12926            match auth_step {
12927                ::authentic::AuthenticationStep::Request(auth_request) => {
12928                    theScheme.respond(self.client.execute(auth_request));
12929                }
12930                ::authentic::AuthenticationStep::WaitFor(duration) => {
12931                    (self.sleep)(duration);
12932                }
12933            }
12934        }
12935        let theBuilder = crate::v1_1_4::request::reactions_create_for_team_discussion_comment_in_org::reqwest_blocking_builder(
12936            self.config.base_url.as_ref(),
12937            org,
12938            team_slug,
12939            discussion_number,
12940            comment_number,
12941            self.config.user_agent.as_ref(),
12942            self.config.accept.as_deref(),
12943        )?
12944        .with_authentication(&theScheme)?;
12945
12946        let theRequest = crate::v1_1_4::request::reactions_create_for_team_discussion_comment_in_org::reqwest_blocking_request(
12947            theBuilder,
12948            theContent.try_into()?,
12949        )?;
12950
12951        ::log::debug!("HTTP request: {:?}", &theRequest);
12952
12953        let theResponse = self.client.execute(theRequest)?;
12954
12955        ::log::debug!("HTTP response: {:?}", &theResponse);
12956
12957        Ok(theResponse)
12958    }
12959
12960    /// Delete team discussion comment reaction
12961    /// 
12962    /// **Note:** You can also specify a team or organization with `team_id` and `org_id` using the route `DELETE /organizations/:org_id/team/:team_id/discussions/:discussion_number/comments/:comment_number/reactions/:reaction_id`.
12963    /// 
12964    /// Delete a reaction to a [team discussion comment](https://docs.github.com/rest/reference/teams#discussion-comments). OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
12965    /// 
12966    /// [API method documentation](https://docs.github.com/rest/reference/reactions#delete-team-discussion-comment-reaction)
12967    pub fn reactions_delete_for_team_discussion_comment(
12968        &self,
12969        org: &str,
12970        team_slug: &str,
12971        discussion_number: i64,
12972        comment_number: i64,
12973        reaction_id: i64,
12974    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
12975        let mut theScheme = AuthScheme::from(&self.config.authentication);
12976
12977        while let Some(auth_step) = theScheme.step()? {
12978            match auth_step {
12979                ::authentic::AuthenticationStep::Request(auth_request) => {
12980                    theScheme.respond(self.client.execute(auth_request));
12981                }
12982                ::authentic::AuthenticationStep::WaitFor(duration) => {
12983                    (self.sleep)(duration);
12984                }
12985            }
12986        }
12987        let theBuilder = crate::v1_1_4::request::reactions_delete_for_team_discussion_comment::reqwest_blocking_builder(
12988            self.config.base_url.as_ref(),
12989            org,
12990            team_slug,
12991            discussion_number,
12992            comment_number,
12993            reaction_id,
12994            self.config.user_agent.as_ref(),
12995            self.config.accept.as_deref(),
12996        )?
12997        .with_authentication(&theScheme)?;
12998
12999        let theRequest =
13000            crate::v1_1_4::request::reactions_delete_for_team_discussion_comment::reqwest_blocking_request(theBuilder)?;
13001
13002        ::log::debug!("HTTP request: {:?}", &theRequest);
13003
13004        let theResponse = self.client.execute(theRequest)?;
13005
13006        ::log::debug!("HTTP response: {:?}", &theResponse);
13007
13008        Ok(theResponse)
13009    }
13010
13011    /// List reactions for a team discussion
13012    /// 
13013    /// List the reactions to a [team discussion](https://docs.github.com/rest/reference/teams#discussions). OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
13014    /// 
13015    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/:org_id/team/:team_id/discussions/:discussion_number/reactions`.
13016    /// 
13017    /// [API method documentation](https://docs.github.com/rest/reference/reactions#list-reactions-for-a-team-discussion)
13018    pub fn reactions_list_for_team_discussion_in_org(
13019        &self,
13020        org: &str,
13021        team_slug: &str,
13022        discussion_number: i64,
13023        content: ::std::option::Option<&str>,
13024        per_page: ::std::option::Option<i64>,
13025        page: ::std::option::Option<i64>,
13026    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13027        let mut theScheme = AuthScheme::from(&self.config.authentication);
13028
13029        while let Some(auth_step) = theScheme.step()? {
13030            match auth_step {
13031                ::authentic::AuthenticationStep::Request(auth_request) => {
13032                    theScheme.respond(self.client.execute(auth_request));
13033                }
13034                ::authentic::AuthenticationStep::WaitFor(duration) => {
13035                    (self.sleep)(duration);
13036                }
13037            }
13038        }
13039        let theBuilder = crate::v1_1_4::request::reactions_list_for_team_discussion_in_org::reqwest_blocking_builder(
13040            self.config.base_url.as_ref(),
13041            org,
13042            team_slug,
13043            discussion_number,
13044            content,
13045            per_page,
13046            page,
13047            self.config.user_agent.as_ref(),
13048            self.config.accept.as_deref(),
13049        )?
13050        .with_authentication(&theScheme)?;
13051
13052        let theRequest =
13053            crate::v1_1_4::request::reactions_list_for_team_discussion_in_org::reqwest_blocking_request(theBuilder)?;
13054
13055        ::log::debug!("HTTP request: {:?}", &theRequest);
13056
13057        let theResponse = self.client.execute(theRequest)?;
13058
13059        ::log::debug!("HTTP response: {:?}", &theResponse);
13060
13061        Ok(theResponse)
13062    }
13063
13064    /// Create reaction for a team discussion
13065    /// 
13066    /// Create a reaction to a [team discussion](https://docs.github.com/rest/reference/teams#discussions). OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/). A response with an HTTP `200` status means that you already added the reaction type to this team discussion.
13067    /// 
13068    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `POST /organizations/:org_id/team/:team_id/discussions/:discussion_number/reactions`.
13069    /// 
13070    /// [API method documentation](https://docs.github.com/rest/reference/reactions#create-reaction-for-a-team-discussion)
13071    ///
13072    /// # Content
13073    ///
13074    /// - [`&v1_1_4::request::reactions_create_for_team_discussion_in_org::body::Json`](crate::v1_1_4::request::reactions_create_for_team_discussion_in_org::body::Json)
13075    pub fn reactions_create_for_team_discussion_in_org<Content>(
13076        &self,
13077        org: &str,
13078        team_slug: &str,
13079        discussion_number: i64,
13080        theContent: Content,
13081    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
13082    where
13083        Content: Copy + TryInto<crate::v1_1_4::request::reactions_create_for_team_discussion_in_org::Content<::reqwest::blocking::Body>>,
13084        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::reactions_create_for_team_discussion_in_org::Content<::reqwest::blocking::Body>>>::Error>
13085    {
13086        let mut theScheme = AuthScheme::from(&self.config.authentication);
13087
13088        while let Some(auth_step) = theScheme.step()? {
13089            match auth_step {
13090                ::authentic::AuthenticationStep::Request(auth_request) => {
13091                    theScheme.respond(self.client.execute(auth_request));
13092                }
13093                ::authentic::AuthenticationStep::WaitFor(duration) => {
13094                    (self.sleep)(duration);
13095                }
13096            }
13097        }
13098        let theBuilder = crate::v1_1_4::request::reactions_create_for_team_discussion_in_org::reqwest_blocking_builder(
13099            self.config.base_url.as_ref(),
13100            org,
13101            team_slug,
13102            discussion_number,
13103            self.config.user_agent.as_ref(),
13104            self.config.accept.as_deref(),
13105        )?
13106        .with_authentication(&theScheme)?;
13107
13108        let theRequest = crate::v1_1_4::request::reactions_create_for_team_discussion_in_org::reqwest_blocking_request(
13109            theBuilder,
13110            theContent.try_into()?,
13111        )?;
13112
13113        ::log::debug!("HTTP request: {:?}", &theRequest);
13114
13115        let theResponse = self.client.execute(theRequest)?;
13116
13117        ::log::debug!("HTTP response: {:?}", &theResponse);
13118
13119        Ok(theResponse)
13120    }
13121
13122    /// Delete team discussion reaction
13123    /// 
13124    /// **Note:** You can also specify a team or organization with `team_id` and `org_id` using the route `DELETE /organizations/:org_id/team/:team_id/discussions/:discussion_number/reactions/:reaction_id`.
13125    /// 
13126    /// Delete a reaction to a [team discussion](https://docs.github.com/rest/reference/teams#discussions). OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
13127    /// 
13128    /// [API method documentation](https://docs.github.com/rest/reference/reactions#delete-team-discussion-reaction)
13129    pub fn reactions_delete_for_team_discussion(
13130        &self,
13131        org: &str,
13132        team_slug: &str,
13133        discussion_number: i64,
13134        reaction_id: i64,
13135    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13136        let mut theScheme = AuthScheme::from(&self.config.authentication);
13137
13138        while let Some(auth_step) = theScheme.step()? {
13139            match auth_step {
13140                ::authentic::AuthenticationStep::Request(auth_request) => {
13141                    theScheme.respond(self.client.execute(auth_request));
13142                }
13143                ::authentic::AuthenticationStep::WaitFor(duration) => {
13144                    (self.sleep)(duration);
13145                }
13146            }
13147        }
13148        let theBuilder = crate::v1_1_4::request::reactions_delete_for_team_discussion::reqwest_blocking_builder(
13149            self.config.base_url.as_ref(),
13150            org,
13151            team_slug,
13152            discussion_number,
13153            reaction_id,
13154            self.config.user_agent.as_ref(),
13155            self.config.accept.as_deref(),
13156        )?
13157        .with_authentication(&theScheme)?;
13158
13159        let theRequest =
13160            crate::v1_1_4::request::reactions_delete_for_team_discussion::reqwest_blocking_request(theBuilder)?;
13161
13162        ::log::debug!("HTTP request: {:?}", &theRequest);
13163
13164        let theResponse = self.client.execute(theRequest)?;
13165
13166        ::log::debug!("HTTP response: {:?}", &theResponse);
13167
13168        Ok(theResponse)
13169    }
13170
13171    /// List a connection between an external group and a team
13172    /// 
13173    /// Lists a connection between a team and an external group.
13174    /// 
13175    /// You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)" in the GitHub Help documentation.
13176    /// 
13177    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-external-idp-group-team-connection)
13178    pub fn teams_list_linked_external_idp_groups_to_team_for_org(
13179        &self,
13180        org: &str,
13181        team_slug: &str,
13182    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13183        let mut theScheme = AuthScheme::from(&self.config.authentication);
13184
13185        while let Some(auth_step) = theScheme.step()? {
13186            match auth_step {
13187                ::authentic::AuthenticationStep::Request(auth_request) => {
13188                    theScheme.respond(self.client.execute(auth_request));
13189                }
13190                ::authentic::AuthenticationStep::WaitFor(duration) => {
13191                    (self.sleep)(duration);
13192                }
13193            }
13194        }
13195        let theBuilder = crate::v1_1_4::request::teams_list_linked_external_idp_groups_to_team_for_org::reqwest_blocking_builder(
13196            self.config.base_url.as_ref(),
13197            org,
13198            team_slug,
13199            self.config.user_agent.as_ref(),
13200            self.config.accept.as_deref(),
13201        )?
13202        .with_authentication(&theScheme)?;
13203
13204        let theRequest =
13205            crate::v1_1_4::request::teams_list_linked_external_idp_groups_to_team_for_org::reqwest_blocking_request(theBuilder)?;
13206
13207        ::log::debug!("HTTP request: {:?}", &theRequest);
13208
13209        let theResponse = self.client.execute(theRequest)?;
13210
13211        ::log::debug!("HTTP response: {:?}", &theResponse);
13212
13213        Ok(theResponse)
13214    }
13215
13216    /// Remove the connection between an external group and a team
13217    /// 
13218    /// Deletes a connection between a team and an external group.
13219    /// 
13220    /// You can manage team membership with your IdP using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
13221    /// 
13222    /// [API method documentation](https://docs.github.com/rest/reference/teams#unlink-external-idp-group-team-connection)
13223    pub fn teams_unlink_external_idp_group_from_team_for_org(
13224        &self,
13225        org: &str,
13226        team_slug: &str,
13227    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13228        let mut theScheme = AuthScheme::from(&self.config.authentication);
13229
13230        while let Some(auth_step) = theScheme.step()? {
13231            match auth_step {
13232                ::authentic::AuthenticationStep::Request(auth_request) => {
13233                    theScheme.respond(self.client.execute(auth_request));
13234                }
13235                ::authentic::AuthenticationStep::WaitFor(duration) => {
13236                    (self.sleep)(duration);
13237                }
13238            }
13239        }
13240        let theBuilder = crate::v1_1_4::request::teams_unlink_external_idp_group_from_team_for_org::reqwest_blocking_builder(
13241            self.config.base_url.as_ref(),
13242            org,
13243            team_slug,
13244            self.config.user_agent.as_ref(),
13245            self.config.accept.as_deref(),
13246        )?
13247        .with_authentication(&theScheme)?;
13248
13249        let theRequest =
13250            crate::v1_1_4::request::teams_unlink_external_idp_group_from_team_for_org::reqwest_blocking_request(theBuilder)?;
13251
13252        ::log::debug!("HTTP request: {:?}", &theRequest);
13253
13254        let theResponse = self.client.execute(theRequest)?;
13255
13256        ::log::debug!("HTTP response: {:?}", &theResponse);
13257
13258        Ok(theResponse)
13259    }
13260
13261    /// Update the connection between an external group and a team
13262    /// 
13263    /// Creates a connection between a team and an external group.  Only one external group can be linked to a team.
13264    /// 
13265    /// You can manage team membership with your identity provider using Enterprise Managed Users for GitHub Enterprise Cloud. For more information, see "[GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products)" in the GitHub Help documentation.
13266    /// 
13267    /// [API method documentation](https://docs.github.com/rest/reference/teams#link-external-idp-group-team-connection)
13268    ///
13269    /// # Content
13270    ///
13271    /// - [`&v1_1_4::request::teams_link_external_idp_group_to_team_for_org::body::Json`](crate::v1_1_4::request::teams_link_external_idp_group_to_team_for_org::body::Json)
13272    pub fn teams_link_external_idp_group_to_team_for_org<Content>(
13273        &self,
13274        org: &str,
13275        team_slug: &str,
13276        theContent: Content,
13277    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
13278    where
13279        Content: Copy + TryInto<crate::v1_1_4::request::teams_link_external_idp_group_to_team_for_org::Content<::reqwest::blocking::Body>>,
13280        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_link_external_idp_group_to_team_for_org::Content<::reqwest::blocking::Body>>>::Error>
13281    {
13282        let mut theScheme = AuthScheme::from(&self.config.authentication);
13283
13284        while let Some(auth_step) = theScheme.step()? {
13285            match auth_step {
13286                ::authentic::AuthenticationStep::Request(auth_request) => {
13287                    theScheme.respond(self.client.execute(auth_request));
13288                }
13289                ::authentic::AuthenticationStep::WaitFor(duration) => {
13290                    (self.sleep)(duration);
13291                }
13292            }
13293        }
13294        let theBuilder = crate::v1_1_4::request::teams_link_external_idp_group_to_team_for_org::reqwest_blocking_builder(
13295            self.config.base_url.as_ref(),
13296            org,
13297            team_slug,
13298            self.config.user_agent.as_ref(),
13299            self.config.accept.as_deref(),
13300        )?
13301        .with_authentication(&theScheme)?;
13302
13303        let theRequest = crate::v1_1_4::request::teams_link_external_idp_group_to_team_for_org::reqwest_blocking_request(
13304            theBuilder,
13305            theContent.try_into()?,
13306        )?;
13307
13308        ::log::debug!("HTTP request: {:?}", &theRequest);
13309
13310        let theResponse = self.client.execute(theRequest)?;
13311
13312        ::log::debug!("HTTP response: {:?}", &theResponse);
13313
13314        Ok(theResponse)
13315    }
13316
13317    /// List pending team invitations
13318    /// 
13319    /// The return hash contains a `role` field which refers to the Organization Invitation role and will be one of the following values: `direct_member`, `admin`, `billing_manager`, `hiring_manager`, or `reinstate`. If the invitee is not a GitHub member, the `login` field in the return hash will be `null`.
13320    /// 
13321    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/invitations`.
13322    /// 
13323    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-pending-team-invitations)
13324    pub fn teams_list_pending_invitations_in_org(
13325        &self,
13326        org: &str,
13327        team_slug: &str,
13328        per_page: ::std::option::Option<i64>,
13329        page: ::std::option::Option<i64>,
13330    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13331        let mut theScheme = AuthScheme::from(&self.config.authentication);
13332
13333        while let Some(auth_step) = theScheme.step()? {
13334            match auth_step {
13335                ::authentic::AuthenticationStep::Request(auth_request) => {
13336                    theScheme.respond(self.client.execute(auth_request));
13337                }
13338                ::authentic::AuthenticationStep::WaitFor(duration) => {
13339                    (self.sleep)(duration);
13340                }
13341            }
13342        }
13343        let theBuilder = crate::v1_1_4::request::teams_list_pending_invitations_in_org::reqwest_blocking_builder(
13344            self.config.base_url.as_ref(),
13345            org,
13346            team_slug,
13347            per_page,
13348            page,
13349            self.config.user_agent.as_ref(),
13350            self.config.accept.as_deref(),
13351        )?
13352        .with_authentication(&theScheme)?;
13353
13354        let theRequest =
13355            crate::v1_1_4::request::teams_list_pending_invitations_in_org::reqwest_blocking_request(theBuilder)?;
13356
13357        ::log::debug!("HTTP request: {:?}", &theRequest);
13358
13359        let theResponse = self.client.execute(theRequest)?;
13360
13361        ::log::debug!("HTTP response: {:?}", &theResponse);
13362
13363        Ok(theResponse)
13364    }
13365
13366    /// List team members
13367    /// 
13368    /// Team members will include the members of child teams.
13369    /// 
13370    /// To list members in a team, the team must be visible to the authenticated user.
13371    /// 
13372    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-team-members)
13373    pub fn teams_list_members_in_org(
13374        &self,
13375        org: &str,
13376        team_slug: &str,
13377        role: ::std::option::Option<&str>,
13378        per_page: ::std::option::Option<i64>,
13379        page: ::std::option::Option<i64>,
13380    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13381        let mut theScheme = AuthScheme::from(&self.config.authentication);
13382
13383        while let Some(auth_step) = theScheme.step()? {
13384            match auth_step {
13385                ::authentic::AuthenticationStep::Request(auth_request) => {
13386                    theScheme.respond(self.client.execute(auth_request));
13387                }
13388                ::authentic::AuthenticationStep::WaitFor(duration) => {
13389                    (self.sleep)(duration);
13390                }
13391            }
13392        }
13393        let theBuilder = crate::v1_1_4::request::teams_list_members_in_org::reqwest_blocking_builder(
13394            self.config.base_url.as_ref(),
13395            org,
13396            team_slug,
13397            role,
13398            per_page,
13399            page,
13400            self.config.user_agent.as_ref(),
13401            self.config.accept.as_deref(),
13402        )?
13403        .with_authentication(&theScheme)?;
13404
13405        let theRequest =
13406            crate::v1_1_4::request::teams_list_members_in_org::reqwest_blocking_request(theBuilder)?;
13407
13408        ::log::debug!("HTTP request: {:?}", &theRequest);
13409
13410        let theResponse = self.client.execute(theRequest)?;
13411
13412        ::log::debug!("HTTP response: {:?}", &theResponse);
13413
13414        Ok(theResponse)
13415    }
13416
13417    /// Get team membership for a user
13418    /// 
13419    /// Team members will include the members of child teams.
13420    /// 
13421    /// To get a user's membership with a team, the team must be visible to the authenticated user.
13422    /// 
13423    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/memberships/{username}`.
13424    /// 
13425    /// **Note:**
13426    /// The response contains the `state` of the membership and the member's `role`.
13427    /// 
13428    /// The `role` for organization owners is set to `maintainer`. For more information about `maintainer` roles, see see [Create a team](https://docs.github.com/rest/reference/teams#create-a-team).
13429    /// 
13430    /// [API method documentation](https://docs.github.com/rest/reference/teams#get-team-membership-for-a-user)
13431    pub fn teams_get_membership_for_user_in_org(
13432        &self,
13433        org: &str,
13434        team_slug: &str,
13435        username: &str,
13436    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13437        let mut theScheme = AuthScheme::from(&self.config.authentication);
13438
13439        while let Some(auth_step) = theScheme.step()? {
13440            match auth_step {
13441                ::authentic::AuthenticationStep::Request(auth_request) => {
13442                    theScheme.respond(self.client.execute(auth_request));
13443                }
13444                ::authentic::AuthenticationStep::WaitFor(duration) => {
13445                    (self.sleep)(duration);
13446                }
13447            }
13448        }
13449        let theBuilder = crate::v1_1_4::request::teams_get_membership_for_user_in_org::reqwest_blocking_builder(
13450            self.config.base_url.as_ref(),
13451            org,
13452            team_slug,
13453            username,
13454            self.config.user_agent.as_ref(),
13455            self.config.accept.as_deref(),
13456        )?
13457        .with_authentication(&theScheme)?;
13458
13459        let theRequest =
13460            crate::v1_1_4::request::teams_get_membership_for_user_in_org::reqwest_blocking_request(theBuilder)?;
13461
13462        ::log::debug!("HTTP request: {:?}", &theRequest);
13463
13464        let theResponse = self.client.execute(theRequest)?;
13465
13466        ::log::debug!("HTTP response: {:?}", &theResponse);
13467
13468        Ok(theResponse)
13469    }
13470
13471    /// Add or update team membership for a user
13472    /// 
13473    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
13474    /// 
13475    /// Adds an organization member to a team. An authenticated organization owner or team maintainer can add organization members to a team.
13476    /// 
13477    /// **Note:** When you have team synchronization set up for a team with your organization's identity provider (IdP), you will see an error if you attempt to use the API for making changes to the team's membership. If you have access to manage group membership in your IdP, you can manage GitHub team membership through your identity provider, which automatically adds and removes team members in an organization. For more information, see "[Synchronizing teams between your identity provider and GitHub](https://docs.github.com/articles/synchronizing-teams-between-your-identity-provider-and-github/)."
13478    /// 
13479    /// An organization owner can add someone who is not part of the team's organization to a team. When an organization owner adds someone to a team who is not an organization member, this endpoint will send an invitation to the person via email. This newly-created membership will be in the "pending" state until the person accepts the invitation, at which point the membership will transition to the "active" state and the user will be added as a member of the team.
13480    /// 
13481    /// If the user is already a member of the team, this endpoint will update the role of the team member's role. To update the membership of a team member, the authenticated user must be an organization owner or a team maintainer.
13482    /// 
13483    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `PUT /organizations/{org_id}/team/{team_id}/memberships/{username}`.
13484    /// 
13485    /// [API method documentation](https://docs.github.com/rest/reference/teams#add-or-update-team-membership-for-a-user)
13486    ///
13487    /// # Content
13488    ///
13489    /// - [`&v1_1_4::request::teams_add_or_update_membership_for_user_in_org::body::Json`](crate::v1_1_4::request::teams_add_or_update_membership_for_user_in_org::body::Json)
13490    pub fn teams_add_or_update_membership_for_user_in_org<Content>(
13491        &self,
13492        org: &str,
13493        team_slug: &str,
13494        username: &str,
13495        theContent: Content,
13496    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
13497    where
13498        Content: Copy + TryInto<crate::v1_1_4::request::teams_add_or_update_membership_for_user_in_org::Content<::reqwest::blocking::Body>>,
13499        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_add_or_update_membership_for_user_in_org::Content<::reqwest::blocking::Body>>>::Error>
13500    {
13501        let mut theScheme = AuthScheme::from(&self.config.authentication);
13502
13503        while let Some(auth_step) = theScheme.step()? {
13504            match auth_step {
13505                ::authentic::AuthenticationStep::Request(auth_request) => {
13506                    theScheme.respond(self.client.execute(auth_request));
13507                }
13508                ::authentic::AuthenticationStep::WaitFor(duration) => {
13509                    (self.sleep)(duration);
13510                }
13511            }
13512        }
13513        let theBuilder = crate::v1_1_4::request::teams_add_or_update_membership_for_user_in_org::reqwest_blocking_builder(
13514            self.config.base_url.as_ref(),
13515            org,
13516            team_slug,
13517            username,
13518            self.config.user_agent.as_ref(),
13519            self.config.accept.as_deref(),
13520        )?
13521        .with_authentication(&theScheme)?;
13522
13523        let theRequest = crate::v1_1_4::request::teams_add_or_update_membership_for_user_in_org::reqwest_blocking_request(
13524            theBuilder,
13525            theContent.try_into()?,
13526        )?;
13527
13528        ::log::debug!("HTTP request: {:?}", &theRequest);
13529
13530        let theResponse = self.client.execute(theRequest)?;
13531
13532        ::log::debug!("HTTP response: {:?}", &theResponse);
13533
13534        Ok(theResponse)
13535    }
13536
13537    /// Remove team membership for a user
13538    /// 
13539    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
13540    /// 
13541    /// To remove a membership between a user and a team, the authenticated user must have 'admin' permissions to the team or be an owner of the organization that the team is associated with. Removing team membership does not delete the user, it just removes their membership from the team.
13542    /// 
13543    /// **Note:** When you have team synchronization set up for a team with your organization's identity provider (IdP), you will see an error if you attempt to use the API for making changes to the team's membership. If you have access to manage group membership in your IdP, you can manage GitHub team membership through your identity provider, which automatically adds and removes team members in an organization. For more information, see "[Synchronizing teams between your identity provider and GitHub](https://docs.github.com/articles/synchronizing-teams-between-your-identity-provider-and-github/)."
13544    /// 
13545    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}/memberships/{username}`.
13546    /// 
13547    /// [API method documentation](https://docs.github.com/rest/reference/teams#remove-team-membership-for-a-user)
13548    pub fn teams_remove_membership_for_user_in_org(
13549        &self,
13550        org: &str,
13551        team_slug: &str,
13552        username: &str,
13553    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13554        let mut theScheme = AuthScheme::from(&self.config.authentication);
13555
13556        while let Some(auth_step) = theScheme.step()? {
13557            match auth_step {
13558                ::authentic::AuthenticationStep::Request(auth_request) => {
13559                    theScheme.respond(self.client.execute(auth_request));
13560                }
13561                ::authentic::AuthenticationStep::WaitFor(duration) => {
13562                    (self.sleep)(duration);
13563                }
13564            }
13565        }
13566        let theBuilder = crate::v1_1_4::request::teams_remove_membership_for_user_in_org::reqwest_blocking_builder(
13567            self.config.base_url.as_ref(),
13568            org,
13569            team_slug,
13570            username,
13571            self.config.user_agent.as_ref(),
13572            self.config.accept.as_deref(),
13573        )?
13574        .with_authentication(&theScheme)?;
13575
13576        let theRequest =
13577            crate::v1_1_4::request::teams_remove_membership_for_user_in_org::reqwest_blocking_request(theBuilder)?;
13578
13579        ::log::debug!("HTTP request: {:?}", &theRequest);
13580
13581        let theResponse = self.client.execute(theRequest)?;
13582
13583        ::log::debug!("HTTP response: {:?}", &theResponse);
13584
13585        Ok(theResponse)
13586    }
13587
13588    /// List team projects
13589    /// 
13590    /// Lists the organization projects for a team.
13591    /// 
13592    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/projects`.
13593    /// 
13594    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-team-projects)
13595    pub fn teams_list_projects_in_org(
13596        &self,
13597        org: &str,
13598        team_slug: &str,
13599        per_page: ::std::option::Option<i64>,
13600        page: ::std::option::Option<i64>,
13601    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13602        let mut theScheme = AuthScheme::from(&self.config.authentication);
13603
13604        while let Some(auth_step) = theScheme.step()? {
13605            match auth_step {
13606                ::authentic::AuthenticationStep::Request(auth_request) => {
13607                    theScheme.respond(self.client.execute(auth_request));
13608                }
13609                ::authentic::AuthenticationStep::WaitFor(duration) => {
13610                    (self.sleep)(duration);
13611                }
13612            }
13613        }
13614        let theBuilder = crate::v1_1_4::request::teams_list_projects_in_org::reqwest_blocking_builder(
13615            self.config.base_url.as_ref(),
13616            org,
13617            team_slug,
13618            per_page,
13619            page,
13620            self.config.user_agent.as_ref(),
13621            self.config.accept.as_deref(),
13622        )?
13623        .with_authentication(&theScheme)?;
13624
13625        let theRequest =
13626            crate::v1_1_4::request::teams_list_projects_in_org::reqwest_blocking_request(theBuilder)?;
13627
13628        ::log::debug!("HTTP request: {:?}", &theRequest);
13629
13630        let theResponse = self.client.execute(theRequest)?;
13631
13632        ::log::debug!("HTTP response: {:?}", &theResponse);
13633
13634        Ok(theResponse)
13635    }
13636
13637    /// Check team permissions for a project
13638    /// 
13639    /// Checks whether a team has `read`, `write`, or `admin` permissions for an organization project. The response includes projects inherited from a parent team.
13640    /// 
13641    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/projects/{project_id}`.
13642    /// 
13643    /// [API method documentation](https://docs.github.com/rest/reference/teams#check-team-permissions-for-a-project)
13644    pub fn teams_check_permissions_for_project_in_org(
13645        &self,
13646        org: &str,
13647        team_slug: &str,
13648        project_id: i64,
13649    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13650        let mut theScheme = AuthScheme::from(&self.config.authentication);
13651
13652        while let Some(auth_step) = theScheme.step()? {
13653            match auth_step {
13654                ::authentic::AuthenticationStep::Request(auth_request) => {
13655                    theScheme.respond(self.client.execute(auth_request));
13656                }
13657                ::authentic::AuthenticationStep::WaitFor(duration) => {
13658                    (self.sleep)(duration);
13659                }
13660            }
13661        }
13662        let theBuilder = crate::v1_1_4::request::teams_check_permissions_for_project_in_org::reqwest_blocking_builder(
13663            self.config.base_url.as_ref(),
13664            org,
13665            team_slug,
13666            project_id,
13667            self.config.user_agent.as_ref(),
13668            self.config.accept.as_deref(),
13669        )?
13670        .with_authentication(&theScheme)?;
13671
13672        let theRequest =
13673            crate::v1_1_4::request::teams_check_permissions_for_project_in_org::reqwest_blocking_request(theBuilder)?;
13674
13675        ::log::debug!("HTTP request: {:?}", &theRequest);
13676
13677        let theResponse = self.client.execute(theRequest)?;
13678
13679        ::log::debug!("HTTP response: {:?}", &theResponse);
13680
13681        Ok(theResponse)
13682    }
13683
13684    /// Add or update team project permissions
13685    /// 
13686    /// Adds an organization project to a team. To add a project to a team or update the team's permission on a project, the authenticated user must have `admin` permissions for the project. The project and team must be part of the same organization.
13687    /// 
13688    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `PUT /organizations/{org_id}/team/{team_id}/projects/{project_id}`.
13689    /// 
13690    /// [API method documentation](https://docs.github.com/rest/reference/teams#add-or-update-team-project-permissions)
13691    ///
13692    /// # Content
13693    ///
13694    /// - [`&::std::option::Option<crate::v1_1_4::request::teams_add_or_update_project_permissions_in_org::body::Json>`](crate::v1_1_4::request::teams_add_or_update_project_permissions_in_org::body::Json)
13695    pub fn teams_add_or_update_project_permissions_in_org<Content>(
13696        &self,
13697        org: &str,
13698        team_slug: &str,
13699        project_id: i64,
13700        theContent: Content,
13701    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
13702    where
13703        Content: Copy + TryInto<crate::v1_1_4::request::teams_add_or_update_project_permissions_in_org::Content<::reqwest::blocking::Body>>,
13704        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_add_or_update_project_permissions_in_org::Content<::reqwest::blocking::Body>>>::Error>
13705    {
13706        let mut theScheme = AuthScheme::from(&self.config.authentication);
13707
13708        while let Some(auth_step) = theScheme.step()? {
13709            match auth_step {
13710                ::authentic::AuthenticationStep::Request(auth_request) => {
13711                    theScheme.respond(self.client.execute(auth_request));
13712                }
13713                ::authentic::AuthenticationStep::WaitFor(duration) => {
13714                    (self.sleep)(duration);
13715                }
13716            }
13717        }
13718        let theBuilder = crate::v1_1_4::request::teams_add_or_update_project_permissions_in_org::reqwest_blocking_builder(
13719            self.config.base_url.as_ref(),
13720            org,
13721            team_slug,
13722            project_id,
13723            self.config.user_agent.as_ref(),
13724            self.config.accept.as_deref(),
13725        )?
13726        .with_authentication(&theScheme)?;
13727
13728        let theRequest = crate::v1_1_4::request::teams_add_or_update_project_permissions_in_org::reqwest_blocking_request(
13729            theBuilder,
13730            theContent.try_into()?,
13731        )?;
13732
13733        ::log::debug!("HTTP request: {:?}", &theRequest);
13734
13735        let theResponse = self.client.execute(theRequest)?;
13736
13737        ::log::debug!("HTTP response: {:?}", &theResponse);
13738
13739        Ok(theResponse)
13740    }
13741
13742    /// Remove a project from a team
13743    /// 
13744    /// Removes an organization project from a team. An organization owner or a team maintainer can remove any project from the team. To remove a project from a team as an organization member, the authenticated user must have `read` access to both the team and project, or `admin` access to the team or project. This endpoint removes the project from the team, but does not delete the project.
13745    /// 
13746    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}/projects/{project_id}`.
13747    /// 
13748    /// [API method documentation](https://docs.github.com/rest/reference/teams#remove-a-project-from-a-team)
13749    pub fn teams_remove_project_in_org(
13750        &self,
13751        org: &str,
13752        team_slug: &str,
13753        project_id: i64,
13754    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13755        let mut theScheme = AuthScheme::from(&self.config.authentication);
13756
13757        while let Some(auth_step) = theScheme.step()? {
13758            match auth_step {
13759                ::authentic::AuthenticationStep::Request(auth_request) => {
13760                    theScheme.respond(self.client.execute(auth_request));
13761                }
13762                ::authentic::AuthenticationStep::WaitFor(duration) => {
13763                    (self.sleep)(duration);
13764                }
13765            }
13766        }
13767        let theBuilder = crate::v1_1_4::request::teams_remove_project_in_org::reqwest_blocking_builder(
13768            self.config.base_url.as_ref(),
13769            org,
13770            team_slug,
13771            project_id,
13772            self.config.user_agent.as_ref(),
13773            self.config.accept.as_deref(),
13774        )?
13775        .with_authentication(&theScheme)?;
13776
13777        let theRequest =
13778            crate::v1_1_4::request::teams_remove_project_in_org::reqwest_blocking_request(theBuilder)?;
13779
13780        ::log::debug!("HTTP request: {:?}", &theRequest);
13781
13782        let theResponse = self.client.execute(theRequest)?;
13783
13784        ::log::debug!("HTTP response: {:?}", &theResponse);
13785
13786        Ok(theResponse)
13787    }
13788
13789    /// List team repositories
13790    /// 
13791    /// Lists a team's repositories visible to the authenticated user.
13792    /// 
13793    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/repos`.
13794    /// 
13795    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-team-repositories)
13796    pub fn teams_list_repos_in_org(
13797        &self,
13798        org: &str,
13799        team_slug: &str,
13800        per_page: ::std::option::Option<i64>,
13801        page: ::std::option::Option<i64>,
13802    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13803        let mut theScheme = AuthScheme::from(&self.config.authentication);
13804
13805        while let Some(auth_step) = theScheme.step()? {
13806            match auth_step {
13807                ::authentic::AuthenticationStep::Request(auth_request) => {
13808                    theScheme.respond(self.client.execute(auth_request));
13809                }
13810                ::authentic::AuthenticationStep::WaitFor(duration) => {
13811                    (self.sleep)(duration);
13812                }
13813            }
13814        }
13815        let theBuilder = crate::v1_1_4::request::teams_list_repos_in_org::reqwest_blocking_builder(
13816            self.config.base_url.as_ref(),
13817            org,
13818            team_slug,
13819            per_page,
13820            page,
13821            self.config.user_agent.as_ref(),
13822            self.config.accept.as_deref(),
13823        )?
13824        .with_authentication(&theScheme)?;
13825
13826        let theRequest =
13827            crate::v1_1_4::request::teams_list_repos_in_org::reqwest_blocking_request(theBuilder)?;
13828
13829        ::log::debug!("HTTP request: {:?}", &theRequest);
13830
13831        let theResponse = self.client.execute(theRequest)?;
13832
13833        ::log::debug!("HTTP response: {:?}", &theResponse);
13834
13835        Ok(theResponse)
13836    }
13837
13838    /// Check team permissions for a repository
13839    /// 
13840    /// Checks whether a team has `admin`, `push`, `maintain`, `triage`, or `pull` permission for a repository. Repositories inherited through a parent team will also be checked.
13841    /// 
13842    /// You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `application/vnd.github.v3.repository+json` accept header.
13843    /// 
13844    /// If a team doesn't have permission for the repository, you will receive a `404 Not Found` response status.
13845    /// 
13846    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/repos/{owner}/{repo}`.
13847    /// 
13848    /// [API method documentation](https://docs.github.com/rest/reference/teams/#check-team-permissions-for-a-repository)
13849    pub fn teams_check_permissions_for_repo_in_org(
13850        &self,
13851        org: &str,
13852        team_slug: &str,
13853        owner: &str,
13854        repo: &str,
13855    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13856        let mut theScheme = AuthScheme::from(&self.config.authentication);
13857
13858        while let Some(auth_step) = theScheme.step()? {
13859            match auth_step {
13860                ::authentic::AuthenticationStep::Request(auth_request) => {
13861                    theScheme.respond(self.client.execute(auth_request));
13862                }
13863                ::authentic::AuthenticationStep::WaitFor(duration) => {
13864                    (self.sleep)(duration);
13865                }
13866            }
13867        }
13868        let theBuilder = crate::v1_1_4::request::teams_check_permissions_for_repo_in_org::reqwest_blocking_builder(
13869            self.config.base_url.as_ref(),
13870            org,
13871            team_slug,
13872            owner,
13873            repo,
13874            self.config.user_agent.as_ref(),
13875            self.config.accept.as_deref(),
13876        )?
13877        .with_authentication(&theScheme)?;
13878
13879        let theRequest =
13880            crate::v1_1_4::request::teams_check_permissions_for_repo_in_org::reqwest_blocking_request(theBuilder)?;
13881
13882        ::log::debug!("HTTP request: {:?}", &theRequest);
13883
13884        let theResponse = self.client.execute(theRequest)?;
13885
13886        ::log::debug!("HTTP response: {:?}", &theResponse);
13887
13888        Ok(theResponse)
13889    }
13890
13891    /// Add or update team repository permissions
13892    /// 
13893    /// To add a repository to a team or update the team's permission on a repository, the authenticated user must have admin access to the repository, and must be able to see the team. The repository must be owned by the organization, or a direct fork of a repository owned by the organization. You will get a `422 Unprocessable Entity` status if you attempt to add a repository to a team that is not owned by the organization. Note that, if you choose not to pass any parameters, you'll need to set `Content-Length` to zero when calling out to this endpoint. For more information, see "[HTTP verbs](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-verbs)."
13894    /// 
13895    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `PUT /organizations/{org_id}/team/{team_id}/repos/{owner}/{repo}`.
13896    /// 
13897    /// For more information about the permission levels, see "[Repository permission levels for an organization](https://docs.github.com/en/github/setting-up-and-managing-organizations-and-teams/repository-permission-levels-for-an-organization#permission-levels-for-repositories-owned-by-an-organization)".
13898    /// 
13899    /// [API method documentation](https://docs.github.com/rest/reference/teams/#add-or-update-team-repository-permissions)
13900    ///
13901    /// # Content
13902    ///
13903    /// - [`&v1_1_4::request::teams_add_or_update_repo_permissions_in_org::body::Json`](crate::v1_1_4::request::teams_add_or_update_repo_permissions_in_org::body::Json)
13904    pub fn teams_add_or_update_repo_permissions_in_org<Content>(
13905        &self,
13906        org: &str,
13907        team_slug: &str,
13908        owner: &str,
13909        repo: &str,
13910        theContent: Content,
13911    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
13912    where
13913        Content: Copy + TryInto<crate::v1_1_4::request::teams_add_or_update_repo_permissions_in_org::Content<::reqwest::blocking::Body>>,
13914        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_add_or_update_repo_permissions_in_org::Content<::reqwest::blocking::Body>>>::Error>
13915    {
13916        let mut theScheme = AuthScheme::from(&self.config.authentication);
13917
13918        while let Some(auth_step) = theScheme.step()? {
13919            match auth_step {
13920                ::authentic::AuthenticationStep::Request(auth_request) => {
13921                    theScheme.respond(self.client.execute(auth_request));
13922                }
13923                ::authentic::AuthenticationStep::WaitFor(duration) => {
13924                    (self.sleep)(duration);
13925                }
13926            }
13927        }
13928        let theBuilder = crate::v1_1_4::request::teams_add_or_update_repo_permissions_in_org::reqwest_blocking_builder(
13929            self.config.base_url.as_ref(),
13930            org,
13931            team_slug,
13932            owner,
13933            repo,
13934            self.config.user_agent.as_ref(),
13935            self.config.accept.as_deref(),
13936        )?
13937        .with_authentication(&theScheme)?;
13938
13939        let theRequest = crate::v1_1_4::request::teams_add_or_update_repo_permissions_in_org::reqwest_blocking_request(
13940            theBuilder,
13941            theContent.try_into()?,
13942        )?;
13943
13944        ::log::debug!("HTTP request: {:?}", &theRequest);
13945
13946        let theResponse = self.client.execute(theRequest)?;
13947
13948        ::log::debug!("HTTP response: {:?}", &theResponse);
13949
13950        Ok(theResponse)
13951    }
13952
13953    /// Remove a repository from a team
13954    /// 
13955    /// If the authenticated user is an organization owner or a team maintainer, they can remove any repositories from the team. To remove a repository from a team as an organization member, the authenticated user must have admin access to the repository and must be able to see the team. This does not delete the repository, it just removes it from the team.
13956    /// 
13957    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}/repos/{owner}/{repo}`.
13958    /// 
13959    /// [API method documentation](https://docs.github.com/rest/reference/teams/#remove-a-repository-from-a-team)
13960    pub fn teams_remove_repo_in_org(
13961        &self,
13962        org: &str,
13963        team_slug: &str,
13964        owner: &str,
13965        repo: &str,
13966    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
13967        let mut theScheme = AuthScheme::from(&self.config.authentication);
13968
13969        while let Some(auth_step) = theScheme.step()? {
13970            match auth_step {
13971                ::authentic::AuthenticationStep::Request(auth_request) => {
13972                    theScheme.respond(self.client.execute(auth_request));
13973                }
13974                ::authentic::AuthenticationStep::WaitFor(duration) => {
13975                    (self.sleep)(duration);
13976                }
13977            }
13978        }
13979        let theBuilder = crate::v1_1_4::request::teams_remove_repo_in_org::reqwest_blocking_builder(
13980            self.config.base_url.as_ref(),
13981            org,
13982            team_slug,
13983            owner,
13984            repo,
13985            self.config.user_agent.as_ref(),
13986            self.config.accept.as_deref(),
13987        )?
13988        .with_authentication(&theScheme)?;
13989
13990        let theRequest =
13991            crate::v1_1_4::request::teams_remove_repo_in_org::reqwest_blocking_request(theBuilder)?;
13992
13993        ::log::debug!("HTTP request: {:?}", &theRequest);
13994
13995        let theResponse = self.client.execute(theRequest)?;
13996
13997        ::log::debug!("HTTP response: {:?}", &theResponse);
13998
13999        Ok(theResponse)
14000    }
14001
14002    /// List IdP groups for a team
14003    /// 
14004    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
14005    /// 
14006    /// List IdP groups connected to a team on GitHub.
14007    /// 
14008    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/team-sync/group-mappings`.
14009    /// 
14010    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-idp-groups-for-a-team)
14011    pub fn teams_list_idp_groups_in_org(
14012        &self,
14013        org: &str,
14014        team_slug: &str,
14015    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14016        let mut theScheme = AuthScheme::from(&self.config.authentication);
14017
14018        while let Some(auth_step) = theScheme.step()? {
14019            match auth_step {
14020                ::authentic::AuthenticationStep::Request(auth_request) => {
14021                    theScheme.respond(self.client.execute(auth_request));
14022                }
14023                ::authentic::AuthenticationStep::WaitFor(duration) => {
14024                    (self.sleep)(duration);
14025                }
14026            }
14027        }
14028        let theBuilder = crate::v1_1_4::request::teams_list_idp_groups_in_org::reqwest_blocking_builder(
14029            self.config.base_url.as_ref(),
14030            org,
14031            team_slug,
14032            self.config.user_agent.as_ref(),
14033            self.config.accept.as_deref(),
14034        )?
14035        .with_authentication(&theScheme)?;
14036
14037        let theRequest =
14038            crate::v1_1_4::request::teams_list_idp_groups_in_org::reqwest_blocking_request(theBuilder)?;
14039
14040        ::log::debug!("HTTP request: {:?}", &theRequest);
14041
14042        let theResponse = self.client.execute(theRequest)?;
14043
14044        ::log::debug!("HTTP response: {:?}", &theResponse);
14045
14046        Ok(theResponse)
14047    }
14048
14049    /// Create or update IdP group connections
14050    /// 
14051    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
14052    /// 
14053    /// Creates, updates, or removes a connection between a team and an IdP group. When adding groups to a team, you must include all new and existing groups to avoid replacing existing groups with the new ones. Specifying an empty `groups` array will remove all connections for a team.
14054    /// 
14055    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `PATCH /organizations/{org_id}/team/{team_id}/team-sync/group-mappings`.
14056    /// 
14057    /// [API method documentation](https://docs.github.com/rest/reference/teams#create-or-update-idp-group-connections)
14058    ///
14059    /// # Content
14060    ///
14061    /// - [`&v1_1_4::request::teams_create_or_update_idp_group_connections_in_org::body::Json`](crate::v1_1_4::request::teams_create_or_update_idp_group_connections_in_org::body::Json)
14062    pub fn teams_create_or_update_idp_group_connections_in_org<Content>(
14063        &self,
14064        org: &str,
14065        team_slug: &str,
14066        theContent: Content,
14067    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
14068    where
14069        Content: Copy + TryInto<crate::v1_1_4::request::teams_create_or_update_idp_group_connections_in_org::Content<::reqwest::blocking::Body>>,
14070        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_create_or_update_idp_group_connections_in_org::Content<::reqwest::blocking::Body>>>::Error>
14071    {
14072        let mut theScheme = AuthScheme::from(&self.config.authentication);
14073
14074        while let Some(auth_step) = theScheme.step()? {
14075            match auth_step {
14076                ::authentic::AuthenticationStep::Request(auth_request) => {
14077                    theScheme.respond(self.client.execute(auth_request));
14078                }
14079                ::authentic::AuthenticationStep::WaitFor(duration) => {
14080                    (self.sleep)(duration);
14081                }
14082            }
14083        }
14084        let theBuilder = crate::v1_1_4::request::teams_create_or_update_idp_group_connections_in_org::reqwest_blocking_builder(
14085            self.config.base_url.as_ref(),
14086            org,
14087            team_slug,
14088            self.config.user_agent.as_ref(),
14089            self.config.accept.as_deref(),
14090        )?
14091        .with_authentication(&theScheme)?;
14092
14093        let theRequest = crate::v1_1_4::request::teams_create_or_update_idp_group_connections_in_org::reqwest_blocking_request(
14094            theBuilder,
14095            theContent.try_into()?,
14096        )?;
14097
14098        ::log::debug!("HTTP request: {:?}", &theRequest);
14099
14100        let theResponse = self.client.execute(theRequest)?;
14101
14102        ::log::debug!("HTTP response: {:?}", &theResponse);
14103
14104        Ok(theResponse)
14105    }
14106
14107    /// List child teams
14108    /// 
14109    /// Lists the child teams of the team specified by `{team_slug}`.
14110    /// 
14111    /// **Note:** You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/teams`.
14112    /// 
14113    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-child-teams)
14114    pub fn teams_list_child_in_org(
14115        &self,
14116        org: &str,
14117        team_slug: &str,
14118        per_page: ::std::option::Option<i64>,
14119        page: ::std::option::Option<i64>,
14120    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14121        let mut theScheme = AuthScheme::from(&self.config.authentication);
14122
14123        while let Some(auth_step) = theScheme.step()? {
14124            match auth_step {
14125                ::authentic::AuthenticationStep::Request(auth_request) => {
14126                    theScheme.respond(self.client.execute(auth_request));
14127                }
14128                ::authentic::AuthenticationStep::WaitFor(duration) => {
14129                    (self.sleep)(duration);
14130                }
14131            }
14132        }
14133        let theBuilder = crate::v1_1_4::request::teams_list_child_in_org::reqwest_blocking_builder(
14134            self.config.base_url.as_ref(),
14135            org,
14136            team_slug,
14137            per_page,
14138            page,
14139            self.config.user_agent.as_ref(),
14140            self.config.accept.as_deref(),
14141        )?
14142        .with_authentication(&theScheme)?;
14143
14144        let theRequest =
14145            crate::v1_1_4::request::teams_list_child_in_org::reqwest_blocking_request(theBuilder)?;
14146
14147        ::log::debug!("HTTP request: {:?}", &theRequest);
14148
14149        let theResponse = self.client.execute(theRequest)?;
14150
14151        ::log::debug!("HTTP response: {:?}", &theResponse);
14152
14153        Ok(theResponse)
14154    }
14155
14156    /// Get a project card
14157    /// 
14158    /// [API method documentation](https://docs.github.com/rest/reference/projects#get-a-project-card)
14159    pub fn projects_get_card(
14160        &self,
14161        card_id: i64,
14162    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14163        let mut theScheme = AuthScheme::from(&self.config.authentication);
14164
14165        while let Some(auth_step) = theScheme.step()? {
14166            match auth_step {
14167                ::authentic::AuthenticationStep::Request(auth_request) => {
14168                    theScheme.respond(self.client.execute(auth_request));
14169                }
14170                ::authentic::AuthenticationStep::WaitFor(duration) => {
14171                    (self.sleep)(duration);
14172                }
14173            }
14174        }
14175        let theBuilder = crate::v1_1_4::request::projects_get_card::reqwest_blocking_builder(
14176            self.config.base_url.as_ref(),
14177            card_id,
14178            self.config.user_agent.as_ref(),
14179            self.config.accept.as_deref(),
14180        )?
14181        .with_authentication(&theScheme)?;
14182
14183        let theRequest =
14184            crate::v1_1_4::request::projects_get_card::reqwest_blocking_request(theBuilder)?;
14185
14186        ::log::debug!("HTTP request: {:?}", &theRequest);
14187
14188        let theResponse = self.client.execute(theRequest)?;
14189
14190        ::log::debug!("HTTP response: {:?}", &theResponse);
14191
14192        Ok(theResponse)
14193    }
14194
14195    /// Delete a project card
14196    /// 
14197    /// [API method documentation](https://docs.github.com/rest/reference/projects#delete-a-project-card)
14198    pub fn projects_delete_card(
14199        &self,
14200        card_id: i64,
14201    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14202        let mut theScheme = AuthScheme::from(&self.config.authentication);
14203
14204        while let Some(auth_step) = theScheme.step()? {
14205            match auth_step {
14206                ::authentic::AuthenticationStep::Request(auth_request) => {
14207                    theScheme.respond(self.client.execute(auth_request));
14208                }
14209                ::authentic::AuthenticationStep::WaitFor(duration) => {
14210                    (self.sleep)(duration);
14211                }
14212            }
14213        }
14214        let theBuilder = crate::v1_1_4::request::projects_delete_card::reqwest_blocking_builder(
14215            self.config.base_url.as_ref(),
14216            card_id,
14217            self.config.user_agent.as_ref(),
14218            self.config.accept.as_deref(),
14219        )?
14220        .with_authentication(&theScheme)?;
14221
14222        let theRequest =
14223            crate::v1_1_4::request::projects_delete_card::reqwest_blocking_request(theBuilder)?;
14224
14225        ::log::debug!("HTTP request: {:?}", &theRequest);
14226
14227        let theResponse = self.client.execute(theRequest)?;
14228
14229        ::log::debug!("HTTP response: {:?}", &theResponse);
14230
14231        Ok(theResponse)
14232    }
14233
14234    /// Update an existing project card
14235    /// 
14236    /// [API method documentation](https://docs.github.com/rest/reference/projects#update-a-project-card)
14237    ///
14238    /// # Content
14239    ///
14240    /// - [`&v1_1_4::request::projects_update_card::body::Json`](crate::v1_1_4::request::projects_update_card::body::Json)
14241    pub fn projects_update_card<Content>(
14242        &self,
14243        card_id: i64,
14244        theContent: Content,
14245    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
14246    where
14247        Content: Copy + TryInto<crate::v1_1_4::request::projects_update_card::Content<::reqwest::blocking::Body>>,
14248        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_update_card::Content<::reqwest::blocking::Body>>>::Error>
14249    {
14250        let mut theScheme = AuthScheme::from(&self.config.authentication);
14251
14252        while let Some(auth_step) = theScheme.step()? {
14253            match auth_step {
14254                ::authentic::AuthenticationStep::Request(auth_request) => {
14255                    theScheme.respond(self.client.execute(auth_request));
14256                }
14257                ::authentic::AuthenticationStep::WaitFor(duration) => {
14258                    (self.sleep)(duration);
14259                }
14260            }
14261        }
14262        let theBuilder = crate::v1_1_4::request::projects_update_card::reqwest_blocking_builder(
14263            self.config.base_url.as_ref(),
14264            card_id,
14265            self.config.user_agent.as_ref(),
14266            self.config.accept.as_deref(),
14267        )?
14268        .with_authentication(&theScheme)?;
14269
14270        let theRequest = crate::v1_1_4::request::projects_update_card::reqwest_blocking_request(
14271            theBuilder,
14272            theContent.try_into()?,
14273        )?;
14274
14275        ::log::debug!("HTTP request: {:?}", &theRequest);
14276
14277        let theResponse = self.client.execute(theRequest)?;
14278
14279        ::log::debug!("HTTP response: {:?}", &theResponse);
14280
14281        Ok(theResponse)
14282    }
14283
14284    /// Move a project card
14285    /// 
14286    /// [API method documentation](https://docs.github.com/rest/reference/projects#move-a-project-card)
14287    ///
14288    /// # Content
14289    ///
14290    /// - [`&v1_1_4::request::projects_move_card::body::Json`](crate::v1_1_4::request::projects_move_card::body::Json)
14291    pub fn projects_move_card<Content>(
14292        &self,
14293        card_id: i64,
14294        theContent: Content,
14295    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
14296    where
14297        Content: Copy + TryInto<crate::v1_1_4::request::projects_move_card::Content<::reqwest::blocking::Body>>,
14298        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_move_card::Content<::reqwest::blocking::Body>>>::Error>
14299    {
14300        let mut theScheme = AuthScheme::from(&self.config.authentication);
14301
14302        while let Some(auth_step) = theScheme.step()? {
14303            match auth_step {
14304                ::authentic::AuthenticationStep::Request(auth_request) => {
14305                    theScheme.respond(self.client.execute(auth_request));
14306                }
14307                ::authentic::AuthenticationStep::WaitFor(duration) => {
14308                    (self.sleep)(duration);
14309                }
14310            }
14311        }
14312        let theBuilder = crate::v1_1_4::request::projects_move_card::reqwest_blocking_builder(
14313            self.config.base_url.as_ref(),
14314            card_id,
14315            self.config.user_agent.as_ref(),
14316            self.config.accept.as_deref(),
14317        )?
14318        .with_authentication(&theScheme)?;
14319
14320        let theRequest = crate::v1_1_4::request::projects_move_card::reqwest_blocking_request(
14321            theBuilder,
14322            theContent.try_into()?,
14323        )?;
14324
14325        ::log::debug!("HTTP request: {:?}", &theRequest);
14326
14327        let theResponse = self.client.execute(theRequest)?;
14328
14329        ::log::debug!("HTTP response: {:?}", &theResponse);
14330
14331        Ok(theResponse)
14332    }
14333
14334    /// Get a project column
14335    /// 
14336    /// [API method documentation](https://docs.github.com/rest/reference/projects#get-a-project-column)
14337    pub fn projects_get_column(
14338        &self,
14339        column_id: i64,
14340    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14341        let mut theScheme = AuthScheme::from(&self.config.authentication);
14342
14343        while let Some(auth_step) = theScheme.step()? {
14344            match auth_step {
14345                ::authentic::AuthenticationStep::Request(auth_request) => {
14346                    theScheme.respond(self.client.execute(auth_request));
14347                }
14348                ::authentic::AuthenticationStep::WaitFor(duration) => {
14349                    (self.sleep)(duration);
14350                }
14351            }
14352        }
14353        let theBuilder = crate::v1_1_4::request::projects_get_column::reqwest_blocking_builder(
14354            self.config.base_url.as_ref(),
14355            column_id,
14356            self.config.user_agent.as_ref(),
14357            self.config.accept.as_deref(),
14358        )?
14359        .with_authentication(&theScheme)?;
14360
14361        let theRequest =
14362            crate::v1_1_4::request::projects_get_column::reqwest_blocking_request(theBuilder)?;
14363
14364        ::log::debug!("HTTP request: {:?}", &theRequest);
14365
14366        let theResponse = self.client.execute(theRequest)?;
14367
14368        ::log::debug!("HTTP response: {:?}", &theResponse);
14369
14370        Ok(theResponse)
14371    }
14372
14373    /// Delete a project column
14374    /// 
14375    /// [API method documentation](https://docs.github.com/rest/reference/projects#delete-a-project-column)
14376    pub fn projects_delete_column(
14377        &self,
14378        column_id: i64,
14379    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14380        let mut theScheme = AuthScheme::from(&self.config.authentication);
14381
14382        while let Some(auth_step) = theScheme.step()? {
14383            match auth_step {
14384                ::authentic::AuthenticationStep::Request(auth_request) => {
14385                    theScheme.respond(self.client.execute(auth_request));
14386                }
14387                ::authentic::AuthenticationStep::WaitFor(duration) => {
14388                    (self.sleep)(duration);
14389                }
14390            }
14391        }
14392        let theBuilder = crate::v1_1_4::request::projects_delete_column::reqwest_blocking_builder(
14393            self.config.base_url.as_ref(),
14394            column_id,
14395            self.config.user_agent.as_ref(),
14396            self.config.accept.as_deref(),
14397        )?
14398        .with_authentication(&theScheme)?;
14399
14400        let theRequest =
14401            crate::v1_1_4::request::projects_delete_column::reqwest_blocking_request(theBuilder)?;
14402
14403        ::log::debug!("HTTP request: {:?}", &theRequest);
14404
14405        let theResponse = self.client.execute(theRequest)?;
14406
14407        ::log::debug!("HTTP response: {:?}", &theResponse);
14408
14409        Ok(theResponse)
14410    }
14411
14412    /// Update an existing project column
14413    /// 
14414    /// [API method documentation](https://docs.github.com/rest/reference/projects#update-a-project-column)
14415    ///
14416    /// # Content
14417    ///
14418    /// - [`&v1_1_4::request::projects_update_column::body::Json`](crate::v1_1_4::request::projects_update_column::body::Json)
14419    pub fn projects_update_column<Content>(
14420        &self,
14421        column_id: i64,
14422        theContent: Content,
14423    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
14424    where
14425        Content: Copy + TryInto<crate::v1_1_4::request::projects_update_column::Content<::reqwest::blocking::Body>>,
14426        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_update_column::Content<::reqwest::blocking::Body>>>::Error>
14427    {
14428        let mut theScheme = AuthScheme::from(&self.config.authentication);
14429
14430        while let Some(auth_step) = theScheme.step()? {
14431            match auth_step {
14432                ::authentic::AuthenticationStep::Request(auth_request) => {
14433                    theScheme.respond(self.client.execute(auth_request));
14434                }
14435                ::authentic::AuthenticationStep::WaitFor(duration) => {
14436                    (self.sleep)(duration);
14437                }
14438            }
14439        }
14440        let theBuilder = crate::v1_1_4::request::projects_update_column::reqwest_blocking_builder(
14441            self.config.base_url.as_ref(),
14442            column_id,
14443            self.config.user_agent.as_ref(),
14444            self.config.accept.as_deref(),
14445        )?
14446        .with_authentication(&theScheme)?;
14447
14448        let theRequest = crate::v1_1_4::request::projects_update_column::reqwest_blocking_request(
14449            theBuilder,
14450            theContent.try_into()?,
14451        )?;
14452
14453        ::log::debug!("HTTP request: {:?}", &theRequest);
14454
14455        let theResponse = self.client.execute(theRequest)?;
14456
14457        ::log::debug!("HTTP response: {:?}", &theResponse);
14458
14459        Ok(theResponse)
14460    }
14461
14462    /// List project cards
14463    /// 
14464    /// [API method documentation](https://docs.github.com/rest/reference/projects#list-project-cards)
14465    pub fn projects_list_cards(
14466        &self,
14467        column_id: i64,
14468        archived_state: ::std::option::Option<&str>,
14469        per_page: ::std::option::Option<i64>,
14470        page: ::std::option::Option<i64>,
14471    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14472        let mut theScheme = AuthScheme::from(&self.config.authentication);
14473
14474        while let Some(auth_step) = theScheme.step()? {
14475            match auth_step {
14476                ::authentic::AuthenticationStep::Request(auth_request) => {
14477                    theScheme.respond(self.client.execute(auth_request));
14478                }
14479                ::authentic::AuthenticationStep::WaitFor(duration) => {
14480                    (self.sleep)(duration);
14481                }
14482            }
14483        }
14484        let theBuilder = crate::v1_1_4::request::projects_list_cards::reqwest_blocking_builder(
14485            self.config.base_url.as_ref(),
14486            column_id,
14487            archived_state,
14488            per_page,
14489            page,
14490            self.config.user_agent.as_ref(),
14491            self.config.accept.as_deref(),
14492        )?
14493        .with_authentication(&theScheme)?;
14494
14495        let theRequest =
14496            crate::v1_1_4::request::projects_list_cards::reqwest_blocking_request(theBuilder)?;
14497
14498        ::log::debug!("HTTP request: {:?}", &theRequest);
14499
14500        let theResponse = self.client.execute(theRequest)?;
14501
14502        ::log::debug!("HTTP response: {:?}", &theResponse);
14503
14504        Ok(theResponse)
14505    }
14506
14507    /// Create a project card
14508    /// 
14509    /// [API method documentation](https://docs.github.com/rest/reference/projects#create-a-project-card)
14510    ///
14511    /// # Content
14512    ///
14513    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
14514    pub fn projects_create_card<Content>(
14515        &self,
14516        column_id: i64,
14517        theContent: Content,
14518    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
14519    where
14520        Content: Copy + TryInto<crate::v1_1_4::request::projects_create_card::Content<::reqwest::blocking::Body>>,
14521        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_create_card::Content<::reqwest::blocking::Body>>>::Error>
14522    {
14523        let mut theScheme = AuthScheme::from(&self.config.authentication);
14524
14525        while let Some(auth_step) = theScheme.step()? {
14526            match auth_step {
14527                ::authentic::AuthenticationStep::Request(auth_request) => {
14528                    theScheme.respond(self.client.execute(auth_request));
14529                }
14530                ::authentic::AuthenticationStep::WaitFor(duration) => {
14531                    (self.sleep)(duration);
14532                }
14533            }
14534        }
14535        let theBuilder = crate::v1_1_4::request::projects_create_card::reqwest_blocking_builder(
14536            self.config.base_url.as_ref(),
14537            column_id,
14538            self.config.user_agent.as_ref(),
14539            self.config.accept.as_deref(),
14540        )?
14541        .with_authentication(&theScheme)?;
14542
14543        let theRequest = crate::v1_1_4::request::projects_create_card::reqwest_blocking_request(
14544            theBuilder,
14545            theContent.try_into()?,
14546        )?;
14547
14548        ::log::debug!("HTTP request: {:?}", &theRequest);
14549
14550        let theResponse = self.client.execute(theRequest)?;
14551
14552        ::log::debug!("HTTP response: {:?}", &theResponse);
14553
14554        Ok(theResponse)
14555    }
14556
14557    /// Move a project column
14558    /// 
14559    /// [API method documentation](https://docs.github.com/rest/reference/projects#move-a-project-column)
14560    ///
14561    /// # Content
14562    ///
14563    /// - [`&v1_1_4::request::projects_move_column::body::Json`](crate::v1_1_4::request::projects_move_column::body::Json)
14564    pub fn projects_move_column<Content>(
14565        &self,
14566        column_id: i64,
14567        theContent: Content,
14568    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
14569    where
14570        Content: Copy + TryInto<crate::v1_1_4::request::projects_move_column::Content<::reqwest::blocking::Body>>,
14571        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_move_column::Content<::reqwest::blocking::Body>>>::Error>
14572    {
14573        let mut theScheme = AuthScheme::from(&self.config.authentication);
14574
14575        while let Some(auth_step) = theScheme.step()? {
14576            match auth_step {
14577                ::authentic::AuthenticationStep::Request(auth_request) => {
14578                    theScheme.respond(self.client.execute(auth_request));
14579                }
14580                ::authentic::AuthenticationStep::WaitFor(duration) => {
14581                    (self.sleep)(duration);
14582                }
14583            }
14584        }
14585        let theBuilder = crate::v1_1_4::request::projects_move_column::reqwest_blocking_builder(
14586            self.config.base_url.as_ref(),
14587            column_id,
14588            self.config.user_agent.as_ref(),
14589            self.config.accept.as_deref(),
14590        )?
14591        .with_authentication(&theScheme)?;
14592
14593        let theRequest = crate::v1_1_4::request::projects_move_column::reqwest_blocking_request(
14594            theBuilder,
14595            theContent.try_into()?,
14596        )?;
14597
14598        ::log::debug!("HTTP request: {:?}", &theRequest);
14599
14600        let theResponse = self.client.execute(theRequest)?;
14601
14602        ::log::debug!("HTTP response: {:?}", &theResponse);
14603
14604        Ok(theResponse)
14605    }
14606
14607    /// Get a project
14608    /// 
14609    /// Gets a project by its `id`. Returns a `404 Not Found` status if projects are disabled. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned.
14610    /// 
14611    /// [API method documentation](https://docs.github.com/rest/reference/projects#get-a-project)
14612    pub fn projects_get(
14613        &self,
14614        project_id: i64,
14615    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14616        let mut theScheme = AuthScheme::from(&self.config.authentication);
14617
14618        while let Some(auth_step) = theScheme.step()? {
14619            match auth_step {
14620                ::authentic::AuthenticationStep::Request(auth_request) => {
14621                    theScheme.respond(self.client.execute(auth_request));
14622                }
14623                ::authentic::AuthenticationStep::WaitFor(duration) => {
14624                    (self.sleep)(duration);
14625                }
14626            }
14627        }
14628        let theBuilder = crate::v1_1_4::request::projects_get::reqwest_blocking_builder(
14629            self.config.base_url.as_ref(),
14630            project_id,
14631            self.config.user_agent.as_ref(),
14632            self.config.accept.as_deref(),
14633        )?
14634        .with_authentication(&theScheme)?;
14635
14636        let theRequest =
14637            crate::v1_1_4::request::projects_get::reqwest_blocking_request(theBuilder)?;
14638
14639        ::log::debug!("HTTP request: {:?}", &theRequest);
14640
14641        let theResponse = self.client.execute(theRequest)?;
14642
14643        ::log::debug!("HTTP response: {:?}", &theResponse);
14644
14645        Ok(theResponse)
14646    }
14647
14648    /// Delete a project
14649    /// 
14650    /// Deletes a project board. Returns a `404 Not Found` status if projects are disabled.
14651    /// 
14652    /// [API method documentation](https://docs.github.com/rest/reference/projects#delete-a-project)
14653    pub fn projects_delete(
14654        &self,
14655        project_id: i64,
14656    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14657        let mut theScheme = AuthScheme::from(&self.config.authentication);
14658
14659        while let Some(auth_step) = theScheme.step()? {
14660            match auth_step {
14661                ::authentic::AuthenticationStep::Request(auth_request) => {
14662                    theScheme.respond(self.client.execute(auth_request));
14663                }
14664                ::authentic::AuthenticationStep::WaitFor(duration) => {
14665                    (self.sleep)(duration);
14666                }
14667            }
14668        }
14669        let theBuilder = crate::v1_1_4::request::projects_delete::reqwest_blocking_builder(
14670            self.config.base_url.as_ref(),
14671            project_id,
14672            self.config.user_agent.as_ref(),
14673            self.config.accept.as_deref(),
14674        )?
14675        .with_authentication(&theScheme)?;
14676
14677        let theRequest =
14678            crate::v1_1_4::request::projects_delete::reqwest_blocking_request(theBuilder)?;
14679
14680        ::log::debug!("HTTP request: {:?}", &theRequest);
14681
14682        let theResponse = self.client.execute(theRequest)?;
14683
14684        ::log::debug!("HTTP response: {:?}", &theResponse);
14685
14686        Ok(theResponse)
14687    }
14688
14689    /// Update a project
14690    /// 
14691    /// Updates a project board's information. Returns a `404 Not Found` status if projects are disabled. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned.
14692    /// 
14693    /// [API method documentation](https://docs.github.com/rest/reference/projects#update-a-project)
14694    ///
14695    /// # Content
14696    ///
14697    /// - [`&v1_1_4::request::projects_update::body::Json`](crate::v1_1_4::request::projects_update::body::Json)
14698    pub fn projects_update<Content>(
14699        &self,
14700        project_id: i64,
14701        theContent: Content,
14702    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
14703    where
14704        Content: Copy + TryInto<crate::v1_1_4::request::projects_update::Content<::reqwest::blocking::Body>>,
14705        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_update::Content<::reqwest::blocking::Body>>>::Error>
14706    {
14707        let mut theScheme = AuthScheme::from(&self.config.authentication);
14708
14709        while let Some(auth_step) = theScheme.step()? {
14710            match auth_step {
14711                ::authentic::AuthenticationStep::Request(auth_request) => {
14712                    theScheme.respond(self.client.execute(auth_request));
14713                }
14714                ::authentic::AuthenticationStep::WaitFor(duration) => {
14715                    (self.sleep)(duration);
14716                }
14717            }
14718        }
14719        let theBuilder = crate::v1_1_4::request::projects_update::reqwest_blocking_builder(
14720            self.config.base_url.as_ref(),
14721            project_id,
14722            self.config.user_agent.as_ref(),
14723            self.config.accept.as_deref(),
14724        )?
14725        .with_authentication(&theScheme)?;
14726
14727        let theRequest = crate::v1_1_4::request::projects_update::reqwest_blocking_request(
14728            theBuilder,
14729            theContent.try_into()?,
14730        )?;
14731
14732        ::log::debug!("HTTP request: {:?}", &theRequest);
14733
14734        let theResponse = self.client.execute(theRequest)?;
14735
14736        ::log::debug!("HTTP response: {:?}", &theResponse);
14737
14738        Ok(theResponse)
14739    }
14740
14741    /// List project collaborators
14742    /// 
14743    /// Lists the collaborators for an organization project. For a project, the list of collaborators includes outside collaborators, organization members that are direct collaborators, organization members with access through team memberships, organization members with access through default organization permissions, and organization owners. You must be an organization owner or a project `admin` to list collaborators.
14744    /// 
14745    /// [API method documentation](https://docs.github.com/rest/reference/projects#list-project-collaborators)
14746    pub fn projects_list_collaborators(
14747        &self,
14748        project_id: i64,
14749        affiliation: ::std::option::Option<&str>,
14750        per_page: ::std::option::Option<i64>,
14751        page: ::std::option::Option<i64>,
14752    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14753        let mut theScheme = AuthScheme::from(&self.config.authentication);
14754
14755        while let Some(auth_step) = theScheme.step()? {
14756            match auth_step {
14757                ::authentic::AuthenticationStep::Request(auth_request) => {
14758                    theScheme.respond(self.client.execute(auth_request));
14759                }
14760                ::authentic::AuthenticationStep::WaitFor(duration) => {
14761                    (self.sleep)(duration);
14762                }
14763            }
14764        }
14765        let theBuilder = crate::v1_1_4::request::projects_list_collaborators::reqwest_blocking_builder(
14766            self.config.base_url.as_ref(),
14767            project_id,
14768            affiliation,
14769            per_page,
14770            page,
14771            self.config.user_agent.as_ref(),
14772            self.config.accept.as_deref(),
14773        )?
14774        .with_authentication(&theScheme)?;
14775
14776        let theRequest =
14777            crate::v1_1_4::request::projects_list_collaborators::reqwest_blocking_request(theBuilder)?;
14778
14779        ::log::debug!("HTTP request: {:?}", &theRequest);
14780
14781        let theResponse = self.client.execute(theRequest)?;
14782
14783        ::log::debug!("HTTP response: {:?}", &theResponse);
14784
14785        Ok(theResponse)
14786    }
14787
14788    /// Add project collaborator
14789    /// 
14790    /// Adds a collaborator to an organization project and sets their permission level. You must be an organization owner or a project `admin` to add a collaborator.
14791    /// 
14792    /// [API method documentation](https://docs.github.com/rest/reference/projects#add-project-collaborator)
14793    ///
14794    /// # Content
14795    ///
14796    /// - [`&::std::option::Option<crate::v1_1_4::request::projects_add_collaborator::body::Json>`](crate::v1_1_4::request::projects_add_collaborator::body::Json)
14797    pub fn projects_add_collaborator<Content>(
14798        &self,
14799        project_id: i64,
14800        username: &str,
14801        theContent: Content,
14802    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
14803    where
14804        Content: Copy + TryInto<crate::v1_1_4::request::projects_add_collaborator::Content<::reqwest::blocking::Body>>,
14805        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_add_collaborator::Content<::reqwest::blocking::Body>>>::Error>
14806    {
14807        let mut theScheme = AuthScheme::from(&self.config.authentication);
14808
14809        while let Some(auth_step) = theScheme.step()? {
14810            match auth_step {
14811                ::authentic::AuthenticationStep::Request(auth_request) => {
14812                    theScheme.respond(self.client.execute(auth_request));
14813                }
14814                ::authentic::AuthenticationStep::WaitFor(duration) => {
14815                    (self.sleep)(duration);
14816                }
14817            }
14818        }
14819        let theBuilder = crate::v1_1_4::request::projects_add_collaborator::reqwest_blocking_builder(
14820            self.config.base_url.as_ref(),
14821            project_id,
14822            username,
14823            self.config.user_agent.as_ref(),
14824            self.config.accept.as_deref(),
14825        )?
14826        .with_authentication(&theScheme)?;
14827
14828        let theRequest = crate::v1_1_4::request::projects_add_collaborator::reqwest_blocking_request(
14829            theBuilder,
14830            theContent.try_into()?,
14831        )?;
14832
14833        ::log::debug!("HTTP request: {:?}", &theRequest);
14834
14835        let theResponse = self.client.execute(theRequest)?;
14836
14837        ::log::debug!("HTTP response: {:?}", &theResponse);
14838
14839        Ok(theResponse)
14840    }
14841
14842    /// Remove user as a collaborator
14843    /// 
14844    /// Removes a collaborator from an organization project. You must be an organization owner or a project `admin` to remove a collaborator.
14845    /// 
14846    /// [API method documentation](https://docs.github.com/rest/reference/projects#remove-project-collaborator)
14847    pub fn projects_remove_collaborator(
14848        &self,
14849        project_id: i64,
14850        username: &str,
14851    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14852        let mut theScheme = AuthScheme::from(&self.config.authentication);
14853
14854        while let Some(auth_step) = theScheme.step()? {
14855            match auth_step {
14856                ::authentic::AuthenticationStep::Request(auth_request) => {
14857                    theScheme.respond(self.client.execute(auth_request));
14858                }
14859                ::authentic::AuthenticationStep::WaitFor(duration) => {
14860                    (self.sleep)(duration);
14861                }
14862            }
14863        }
14864        let theBuilder = crate::v1_1_4::request::projects_remove_collaborator::reqwest_blocking_builder(
14865            self.config.base_url.as_ref(),
14866            project_id,
14867            username,
14868            self.config.user_agent.as_ref(),
14869            self.config.accept.as_deref(),
14870        )?
14871        .with_authentication(&theScheme)?;
14872
14873        let theRequest =
14874            crate::v1_1_4::request::projects_remove_collaborator::reqwest_blocking_request(theBuilder)?;
14875
14876        ::log::debug!("HTTP request: {:?}", &theRequest);
14877
14878        let theResponse = self.client.execute(theRequest)?;
14879
14880        ::log::debug!("HTTP response: {:?}", &theResponse);
14881
14882        Ok(theResponse)
14883    }
14884
14885    /// Get project permission for a user
14886    /// 
14887    /// Returns the collaborator's permission level for an organization project. Possible values for the `permission` key: `admin`, `write`, `read`, `none`. You must be an organization owner or a project `admin` to review a user's permission level.
14888    /// 
14889    /// [API method documentation](https://docs.github.com/rest/reference/projects#get-project-permission-for-a-user)
14890    pub fn projects_get_permission_for_user(
14891        &self,
14892        project_id: i64,
14893        username: &str,
14894    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14895        let mut theScheme = AuthScheme::from(&self.config.authentication);
14896
14897        while let Some(auth_step) = theScheme.step()? {
14898            match auth_step {
14899                ::authentic::AuthenticationStep::Request(auth_request) => {
14900                    theScheme.respond(self.client.execute(auth_request));
14901                }
14902                ::authentic::AuthenticationStep::WaitFor(duration) => {
14903                    (self.sleep)(duration);
14904                }
14905            }
14906        }
14907        let theBuilder = crate::v1_1_4::request::projects_get_permission_for_user::reqwest_blocking_builder(
14908            self.config.base_url.as_ref(),
14909            project_id,
14910            username,
14911            self.config.user_agent.as_ref(),
14912            self.config.accept.as_deref(),
14913        )?
14914        .with_authentication(&theScheme)?;
14915
14916        let theRequest =
14917            crate::v1_1_4::request::projects_get_permission_for_user::reqwest_blocking_request(theBuilder)?;
14918
14919        ::log::debug!("HTTP request: {:?}", &theRequest);
14920
14921        let theResponse = self.client.execute(theRequest)?;
14922
14923        ::log::debug!("HTTP response: {:?}", &theResponse);
14924
14925        Ok(theResponse)
14926    }
14927
14928    /// List project columns
14929    /// 
14930    /// [API method documentation](https://docs.github.com/rest/reference/projects#list-project-columns)
14931    pub fn projects_list_columns(
14932        &self,
14933        project_id: i64,
14934        per_page: ::std::option::Option<i64>,
14935        page: ::std::option::Option<i64>,
14936    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
14937        let mut theScheme = AuthScheme::from(&self.config.authentication);
14938
14939        while let Some(auth_step) = theScheme.step()? {
14940            match auth_step {
14941                ::authentic::AuthenticationStep::Request(auth_request) => {
14942                    theScheme.respond(self.client.execute(auth_request));
14943                }
14944                ::authentic::AuthenticationStep::WaitFor(duration) => {
14945                    (self.sleep)(duration);
14946                }
14947            }
14948        }
14949        let theBuilder = crate::v1_1_4::request::projects_list_columns::reqwest_blocking_builder(
14950            self.config.base_url.as_ref(),
14951            project_id,
14952            per_page,
14953            page,
14954            self.config.user_agent.as_ref(),
14955            self.config.accept.as_deref(),
14956        )?
14957        .with_authentication(&theScheme)?;
14958
14959        let theRequest =
14960            crate::v1_1_4::request::projects_list_columns::reqwest_blocking_request(theBuilder)?;
14961
14962        ::log::debug!("HTTP request: {:?}", &theRequest);
14963
14964        let theResponse = self.client.execute(theRequest)?;
14965
14966        ::log::debug!("HTTP response: {:?}", &theResponse);
14967
14968        Ok(theResponse)
14969    }
14970
14971    /// Create a project column
14972    /// 
14973    /// [API method documentation](https://docs.github.com/rest/reference/projects#create-a-project-column)
14974    ///
14975    /// # Content
14976    ///
14977    /// - [`&v1_1_4::request::projects_create_column::body::Json`](crate::v1_1_4::request::projects_create_column::body::Json)
14978    pub fn projects_create_column<Content>(
14979        &self,
14980        project_id: i64,
14981        theContent: Content,
14982    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
14983    where
14984        Content: Copy + TryInto<crate::v1_1_4::request::projects_create_column::Content<::reqwest::blocking::Body>>,
14985        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_create_column::Content<::reqwest::blocking::Body>>>::Error>
14986    {
14987        let mut theScheme = AuthScheme::from(&self.config.authentication);
14988
14989        while let Some(auth_step) = theScheme.step()? {
14990            match auth_step {
14991                ::authentic::AuthenticationStep::Request(auth_request) => {
14992                    theScheme.respond(self.client.execute(auth_request));
14993                }
14994                ::authentic::AuthenticationStep::WaitFor(duration) => {
14995                    (self.sleep)(duration);
14996                }
14997            }
14998        }
14999        let theBuilder = crate::v1_1_4::request::projects_create_column::reqwest_blocking_builder(
15000            self.config.base_url.as_ref(),
15001            project_id,
15002            self.config.user_agent.as_ref(),
15003            self.config.accept.as_deref(),
15004        )?
15005        .with_authentication(&theScheme)?;
15006
15007        let theRequest = crate::v1_1_4::request::projects_create_column::reqwest_blocking_request(
15008            theBuilder,
15009            theContent.try_into()?,
15010        )?;
15011
15012        ::log::debug!("HTTP request: {:?}", &theRequest);
15013
15014        let theResponse = self.client.execute(theRequest)?;
15015
15016        ::log::debug!("HTTP response: {:?}", &theResponse);
15017
15018        Ok(theResponse)
15019    }
15020
15021    /// Get rate limit status for the authenticated user
15022    /// 
15023    /// **Note:** Accessing this endpoint does not count against your REST API rate limit.
15024    /// 
15025    /// **Note:** The `rate` object is deprecated. If you're writing new API client code or updating existing code, you should use the `core` object instead of the `rate` object. The `core` object contains the same information that is present in the `rate` object.
15026    /// 
15027    /// [API method documentation](https://docs.github.com/rest/reference/rate-limit#get-rate-limit-status-for-the-authenticated-user)
15028    pub fn rate_limit_get(
15029        &self,
15030    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15031        let mut theScheme = AuthScheme::from(&self.config.authentication);
15032
15033        while let Some(auth_step) = theScheme.step()? {
15034            match auth_step {
15035                ::authentic::AuthenticationStep::Request(auth_request) => {
15036                    theScheme.respond(self.client.execute(auth_request));
15037                }
15038                ::authentic::AuthenticationStep::WaitFor(duration) => {
15039                    (self.sleep)(duration);
15040                }
15041            }
15042        }
15043        let theBuilder = crate::v1_1_4::request::rate_limit_get::reqwest_blocking_builder(
15044            self.config.base_url.as_ref(),
15045            self.config.user_agent.as_ref(),
15046            self.config.accept.as_deref(),
15047        )?
15048        .with_authentication(&theScheme)?;
15049
15050        let theRequest =
15051            crate::v1_1_4::request::rate_limit_get::reqwest_blocking_request(theBuilder)?;
15052
15053        ::log::debug!("HTTP request: {:?}", &theRequest);
15054
15055        let theResponse = self.client.execute(theRequest)?;
15056
15057        ::log::debug!("HTTP response: {:?}", &theResponse);
15058
15059        Ok(theResponse)
15060    }
15061
15062    /// Get a repository
15063    /// 
15064    /// The `parent` and `source` objects are present when the repository is a fork. `parent` is the repository this repository was forked from, `source` is the ultimate source for the network.
15065    /// 
15066    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-repository)
15067    pub fn repos_get(
15068        &self,
15069        owner: &str,
15070        repo: &str,
15071    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15072        let mut theScheme = AuthScheme::from(&self.config.authentication);
15073
15074        while let Some(auth_step) = theScheme.step()? {
15075            match auth_step {
15076                ::authentic::AuthenticationStep::Request(auth_request) => {
15077                    theScheme.respond(self.client.execute(auth_request));
15078                }
15079                ::authentic::AuthenticationStep::WaitFor(duration) => {
15080                    (self.sleep)(duration);
15081                }
15082            }
15083        }
15084        let theBuilder = crate::v1_1_4::request::repos_get::reqwest_blocking_builder(
15085            self.config.base_url.as_ref(),
15086            owner,
15087            repo,
15088            self.config.user_agent.as_ref(),
15089            self.config.accept.as_deref(),
15090        )?
15091        .with_authentication(&theScheme)?;
15092
15093        let theRequest =
15094            crate::v1_1_4::request::repos_get::reqwest_blocking_request(theBuilder)?;
15095
15096        ::log::debug!("HTTP request: {:?}", &theRequest);
15097
15098        let theResponse = self.client.execute(theRequest)?;
15099
15100        ::log::debug!("HTTP response: {:?}", &theResponse);
15101
15102        Ok(theResponse)
15103    }
15104
15105    /// Delete a repository
15106    /// 
15107    /// Deleting a repository requires admin access. If OAuth is used, the `delete_repo` scope is required.
15108    /// 
15109    /// If an organization owner has configured the organization to prevent members from deleting organization-owned
15110    /// repositories, you will get a `403 Forbidden` response.
15111    /// 
15112    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-repository)
15113    pub fn repos_delete(
15114        &self,
15115        owner: &str,
15116        repo: &str,
15117    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15118        let mut theScheme = AuthScheme::from(&self.config.authentication);
15119
15120        while let Some(auth_step) = theScheme.step()? {
15121            match auth_step {
15122                ::authentic::AuthenticationStep::Request(auth_request) => {
15123                    theScheme.respond(self.client.execute(auth_request));
15124                }
15125                ::authentic::AuthenticationStep::WaitFor(duration) => {
15126                    (self.sleep)(duration);
15127                }
15128            }
15129        }
15130        let theBuilder = crate::v1_1_4::request::repos_delete::reqwest_blocking_builder(
15131            self.config.base_url.as_ref(),
15132            owner,
15133            repo,
15134            self.config.user_agent.as_ref(),
15135            self.config.accept.as_deref(),
15136        )?
15137        .with_authentication(&theScheme)?;
15138
15139        let theRequest =
15140            crate::v1_1_4::request::repos_delete::reqwest_blocking_request(theBuilder)?;
15141
15142        ::log::debug!("HTTP request: {:?}", &theRequest);
15143
15144        let theResponse = self.client.execute(theRequest)?;
15145
15146        ::log::debug!("HTTP response: {:?}", &theResponse);
15147
15148        Ok(theResponse)
15149    }
15150
15151    /// Update a repository
15152    /// 
15153    /// **Note**: To edit a repository's topics, use the [Replace all repository topics](https://docs.github.com/rest/reference/repos#replace-all-repository-topics) endpoint.
15154    /// 
15155    /// [API method documentation](https://docs.github.com/rest/reference/repos/#update-a-repository)
15156    ///
15157    /// # Content
15158    ///
15159    /// - [`&v1_1_4::request::repos_update::body::Json`](crate::v1_1_4::request::repos_update::body::Json)
15160    pub fn repos_update<Content>(
15161        &self,
15162        owner: &str,
15163        repo: &str,
15164        theContent: Content,
15165    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
15166    where
15167        Content: Copy + TryInto<crate::v1_1_4::request::repos_update::Content<::reqwest::blocking::Body>>,
15168        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update::Content<::reqwest::blocking::Body>>>::Error>
15169    {
15170        let mut theScheme = AuthScheme::from(&self.config.authentication);
15171
15172        while let Some(auth_step) = theScheme.step()? {
15173            match auth_step {
15174                ::authentic::AuthenticationStep::Request(auth_request) => {
15175                    theScheme.respond(self.client.execute(auth_request));
15176                }
15177                ::authentic::AuthenticationStep::WaitFor(duration) => {
15178                    (self.sleep)(duration);
15179                }
15180            }
15181        }
15182        let theBuilder = crate::v1_1_4::request::repos_update::reqwest_blocking_builder(
15183            self.config.base_url.as_ref(),
15184            owner,
15185            repo,
15186            self.config.user_agent.as_ref(),
15187            self.config.accept.as_deref(),
15188        )?
15189        .with_authentication(&theScheme)?;
15190
15191        let theRequest = crate::v1_1_4::request::repos_update::reqwest_blocking_request(
15192            theBuilder,
15193            theContent.try_into()?,
15194        )?;
15195
15196        ::log::debug!("HTTP request: {:?}", &theRequest);
15197
15198        let theResponse = self.client.execute(theRequest)?;
15199
15200        ::log::debug!("HTTP response: {:?}", &theResponse);
15201
15202        Ok(theResponse)
15203    }
15204
15205    /// List artifacts for a repository
15206    /// 
15207    /// Lists all artifacts for a repository. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
15208    /// 
15209    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-artifacts-for-a-repository)
15210    pub fn actions_list_artifacts_for_repo(
15211        &self,
15212        owner: &str,
15213        repo: &str,
15214        per_page: ::std::option::Option<i64>,
15215        page: ::std::option::Option<i64>,
15216    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15217        let mut theScheme = AuthScheme::from(&self.config.authentication);
15218
15219        while let Some(auth_step) = theScheme.step()? {
15220            match auth_step {
15221                ::authentic::AuthenticationStep::Request(auth_request) => {
15222                    theScheme.respond(self.client.execute(auth_request));
15223                }
15224                ::authentic::AuthenticationStep::WaitFor(duration) => {
15225                    (self.sleep)(duration);
15226                }
15227            }
15228        }
15229        let theBuilder = crate::v1_1_4::request::actions_list_artifacts_for_repo::reqwest_blocking_builder(
15230            self.config.base_url.as_ref(),
15231            owner,
15232            repo,
15233            per_page,
15234            page,
15235            self.config.user_agent.as_ref(),
15236            self.config.accept.as_deref(),
15237        )?
15238        .with_authentication(&theScheme)?;
15239
15240        let theRequest =
15241            crate::v1_1_4::request::actions_list_artifacts_for_repo::reqwest_blocking_request(theBuilder)?;
15242
15243        ::log::debug!("HTTP request: {:?}", &theRequest);
15244
15245        let theResponse = self.client.execute(theRequest)?;
15246
15247        ::log::debug!("HTTP response: {:?}", &theResponse);
15248
15249        Ok(theResponse)
15250    }
15251
15252    /// Get an artifact
15253    /// 
15254    /// Gets a specific artifact for a workflow run. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
15255    /// 
15256    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-an-artifact)
15257    pub fn actions_get_artifact(
15258        &self,
15259        owner: &str,
15260        repo: &str,
15261        artifact_id: i64,
15262    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15263        let mut theScheme = AuthScheme::from(&self.config.authentication);
15264
15265        while let Some(auth_step) = theScheme.step()? {
15266            match auth_step {
15267                ::authentic::AuthenticationStep::Request(auth_request) => {
15268                    theScheme.respond(self.client.execute(auth_request));
15269                }
15270                ::authentic::AuthenticationStep::WaitFor(duration) => {
15271                    (self.sleep)(duration);
15272                }
15273            }
15274        }
15275        let theBuilder = crate::v1_1_4::request::actions_get_artifact::reqwest_blocking_builder(
15276            self.config.base_url.as_ref(),
15277            owner,
15278            repo,
15279            artifact_id,
15280            self.config.user_agent.as_ref(),
15281            self.config.accept.as_deref(),
15282        )?
15283        .with_authentication(&theScheme)?;
15284
15285        let theRequest =
15286            crate::v1_1_4::request::actions_get_artifact::reqwest_blocking_request(theBuilder)?;
15287
15288        ::log::debug!("HTTP request: {:?}", &theRequest);
15289
15290        let theResponse = self.client.execute(theRequest)?;
15291
15292        ::log::debug!("HTTP response: {:?}", &theResponse);
15293
15294        Ok(theResponse)
15295    }
15296
15297    /// Delete an artifact
15298    /// 
15299    /// Deletes an artifact for a workflow run. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `actions:write` permission to use this endpoint.
15300    /// 
15301    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-an-artifact)
15302    pub fn actions_delete_artifact(
15303        &self,
15304        owner: &str,
15305        repo: &str,
15306        artifact_id: i64,
15307    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15308        let mut theScheme = AuthScheme::from(&self.config.authentication);
15309
15310        while let Some(auth_step) = theScheme.step()? {
15311            match auth_step {
15312                ::authentic::AuthenticationStep::Request(auth_request) => {
15313                    theScheme.respond(self.client.execute(auth_request));
15314                }
15315                ::authentic::AuthenticationStep::WaitFor(duration) => {
15316                    (self.sleep)(duration);
15317                }
15318            }
15319        }
15320        let theBuilder = crate::v1_1_4::request::actions_delete_artifact::reqwest_blocking_builder(
15321            self.config.base_url.as_ref(),
15322            owner,
15323            repo,
15324            artifact_id,
15325            self.config.user_agent.as_ref(),
15326            self.config.accept.as_deref(),
15327        )?
15328        .with_authentication(&theScheme)?;
15329
15330        let theRequest =
15331            crate::v1_1_4::request::actions_delete_artifact::reqwest_blocking_request(theBuilder)?;
15332
15333        ::log::debug!("HTTP request: {:?}", &theRequest);
15334
15335        let theResponse = self.client.execute(theRequest)?;
15336
15337        ::log::debug!("HTTP response: {:?}", &theResponse);
15338
15339        Ok(theResponse)
15340    }
15341
15342    /// Download an artifact
15343    /// 
15344    /// Gets a redirect URL to download an archive for a repository. This URL expires after 1 minute. Look for `Location:` in
15345    /// the response header to find the URL for the download. The `:archive_format` must be `zip`. Anyone with read access to
15346    /// the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.
15347    /// GitHub Apps must have the `actions:read` permission to use this endpoint.
15348    /// 
15349    /// [API method documentation](https://docs.github.com/rest/reference/actions#download-an-artifact)
15350    pub fn actions_download_artifact(
15351        &self,
15352        owner: &str,
15353        repo: &str,
15354        artifact_id: i64,
15355        archive_format: &str,
15356    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15357        let mut theScheme = AuthScheme::from(&self.config.authentication);
15358
15359        while let Some(auth_step) = theScheme.step()? {
15360            match auth_step {
15361                ::authentic::AuthenticationStep::Request(auth_request) => {
15362                    theScheme.respond(self.client.execute(auth_request));
15363                }
15364                ::authentic::AuthenticationStep::WaitFor(duration) => {
15365                    (self.sleep)(duration);
15366                }
15367            }
15368        }
15369        let theBuilder = crate::v1_1_4::request::actions_download_artifact::reqwest_blocking_builder(
15370            self.config.base_url.as_ref(),
15371            owner,
15372            repo,
15373            artifact_id,
15374            archive_format,
15375            self.config.user_agent.as_ref(),
15376            self.config.accept.as_deref(),
15377        )?
15378        .with_authentication(&theScheme)?;
15379
15380        let theRequest =
15381            crate::v1_1_4::request::actions_download_artifact::reqwest_blocking_request(theBuilder)?;
15382
15383        ::log::debug!("HTTP request: {:?}", &theRequest);
15384
15385        let theResponse = self.client.execute(theRequest)?;
15386
15387        ::log::debug!("HTTP response: {:?}", &theResponse);
15388
15389        Ok(theResponse)
15390    }
15391
15392    /// Get GitHub Actions cache usage for a repository
15393    /// 
15394    /// Gets GitHub Actions cache usage for a repository.
15395    /// The data fetched using this API is refreshed approximately every 5 minutes, so values returned from this endpoint may take at least 5 minutes to get updated.
15396    /// Anyone with read access to the repository can use this endpoint. If the repository is private, you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
15397    /// 
15398    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-github-actions-cache-usage-for-a-repository)
15399    pub fn actions_get_actions_cache_usage(
15400        &self,
15401        owner: &str,
15402        repo: &str,
15403    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15404        let mut theScheme = AuthScheme::from(&self.config.authentication);
15405
15406        while let Some(auth_step) = theScheme.step()? {
15407            match auth_step {
15408                ::authentic::AuthenticationStep::Request(auth_request) => {
15409                    theScheme.respond(self.client.execute(auth_request));
15410                }
15411                ::authentic::AuthenticationStep::WaitFor(duration) => {
15412                    (self.sleep)(duration);
15413                }
15414            }
15415        }
15416        let theBuilder = crate::v1_1_4::request::actions_get_actions_cache_usage::reqwest_blocking_builder(
15417            self.config.base_url.as_ref(),
15418            owner,
15419            repo,
15420            self.config.user_agent.as_ref(),
15421            self.config.accept.as_deref(),
15422        )?
15423        .with_authentication(&theScheme)?;
15424
15425        let theRequest =
15426            crate::v1_1_4::request::actions_get_actions_cache_usage::reqwest_blocking_request(theBuilder)?;
15427
15428        ::log::debug!("HTTP request: {:?}", &theRequest);
15429
15430        let theResponse = self.client.execute(theRequest)?;
15431
15432        ::log::debug!("HTTP response: {:?}", &theResponse);
15433
15434        Ok(theResponse)
15435    }
15436
15437    /// Get a job for a workflow run
15438    /// 
15439    /// Gets a specific job in a workflow run. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
15440    /// 
15441    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-job-for-a-workflow-run)
15442    pub fn actions_get_job_for_workflow_run(
15443        &self,
15444        owner: &str,
15445        repo: &str,
15446        job_id: i64,
15447    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15448        let mut theScheme = AuthScheme::from(&self.config.authentication);
15449
15450        while let Some(auth_step) = theScheme.step()? {
15451            match auth_step {
15452                ::authentic::AuthenticationStep::Request(auth_request) => {
15453                    theScheme.respond(self.client.execute(auth_request));
15454                }
15455                ::authentic::AuthenticationStep::WaitFor(duration) => {
15456                    (self.sleep)(duration);
15457                }
15458            }
15459        }
15460        let theBuilder = crate::v1_1_4::request::actions_get_job_for_workflow_run::reqwest_blocking_builder(
15461            self.config.base_url.as_ref(),
15462            owner,
15463            repo,
15464            job_id,
15465            self.config.user_agent.as_ref(),
15466            self.config.accept.as_deref(),
15467        )?
15468        .with_authentication(&theScheme)?;
15469
15470        let theRequest =
15471            crate::v1_1_4::request::actions_get_job_for_workflow_run::reqwest_blocking_request(theBuilder)?;
15472
15473        ::log::debug!("HTTP request: {:?}", &theRequest);
15474
15475        let theResponse = self.client.execute(theRequest)?;
15476
15477        ::log::debug!("HTTP response: {:?}", &theResponse);
15478
15479        Ok(theResponse)
15480    }
15481
15482    /// Download job logs for a workflow run
15483    /// 
15484    /// Gets a redirect URL to download a plain text file of logs for a workflow job. This link expires after 1 minute. Look
15485    /// for `Location:` in the response header to find the URL for the download. Anyone with read access to the repository can
15486    /// use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must
15487    /// have the `actions:read` permission to use this endpoint.
15488    /// 
15489    /// [API method documentation](https://docs.github.com/rest/reference/actions#download-job-logs-for-a-workflow-run)
15490    pub fn actions_download_job_logs_for_workflow_run(
15491        &self,
15492        owner: &str,
15493        repo: &str,
15494        job_id: i64,
15495    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15496        let mut theScheme = AuthScheme::from(&self.config.authentication);
15497
15498        while let Some(auth_step) = theScheme.step()? {
15499            match auth_step {
15500                ::authentic::AuthenticationStep::Request(auth_request) => {
15501                    theScheme.respond(self.client.execute(auth_request));
15502                }
15503                ::authentic::AuthenticationStep::WaitFor(duration) => {
15504                    (self.sleep)(duration);
15505                }
15506            }
15507        }
15508        let theBuilder = crate::v1_1_4::request::actions_download_job_logs_for_workflow_run::reqwest_blocking_builder(
15509            self.config.base_url.as_ref(),
15510            owner,
15511            repo,
15512            job_id,
15513            self.config.user_agent.as_ref(),
15514            self.config.accept.as_deref(),
15515        )?
15516        .with_authentication(&theScheme)?;
15517
15518        let theRequest =
15519            crate::v1_1_4::request::actions_download_job_logs_for_workflow_run::reqwest_blocking_request(theBuilder)?;
15520
15521        ::log::debug!("HTTP request: {:?}", &theRequest);
15522
15523        let theResponse = self.client.execute(theRequest)?;
15524
15525        ::log::debug!("HTTP response: {:?}", &theResponse);
15526
15527        Ok(theResponse)
15528    }
15529
15530    /// Re-run a job from a workflow run
15531    /// 
15532    /// Re-run a job and its dependent jobs in a workflow run. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `actions:write` permission to use this endpoint.
15533    /// 
15534    /// [API method documentation](https://docs.github.com/rest/reference/actions#re-run-job-for-workflow-run)
15535    pub fn actions_re_run_job_for_workflow_run(
15536        &self,
15537        owner: &str,
15538        repo: &str,
15539        job_id: i64,
15540    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15541        let mut theScheme = AuthScheme::from(&self.config.authentication);
15542
15543        while let Some(auth_step) = theScheme.step()? {
15544            match auth_step {
15545                ::authentic::AuthenticationStep::Request(auth_request) => {
15546                    theScheme.respond(self.client.execute(auth_request));
15547                }
15548                ::authentic::AuthenticationStep::WaitFor(duration) => {
15549                    (self.sleep)(duration);
15550                }
15551            }
15552        }
15553        let theBuilder = crate::v1_1_4::request::actions_re_run_job_for_workflow_run::reqwest_blocking_builder(
15554            self.config.base_url.as_ref(),
15555            owner,
15556            repo,
15557            job_id,
15558            self.config.user_agent.as_ref(),
15559            self.config.accept.as_deref(),
15560        )?
15561        .with_authentication(&theScheme)?;
15562
15563        let theRequest =
15564            crate::v1_1_4::request::actions_re_run_job_for_workflow_run::reqwest_blocking_request(theBuilder)?;
15565
15566        ::log::debug!("HTTP request: {:?}", &theRequest);
15567
15568        let theResponse = self.client.execute(theRequest)?;
15569
15570        ::log::debug!("HTTP response: {:?}", &theResponse);
15571
15572        Ok(theResponse)
15573    }
15574
15575    /// Get GitHub Actions permissions for a repository
15576    /// 
15577    /// Gets the GitHub Actions permissions policy for a repository, including whether GitHub Actions is enabled and the actions and reusable workflows allowed to run in the repository.
15578    /// 
15579    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `administration` repository permission to use this API.
15580    /// 
15581    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-github-actions-permissions-for-a-repository)
15582    pub fn actions_get_github_actions_permissions_repository(
15583        &self,
15584        owner: &str,
15585        repo: &str,
15586    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15587        let mut theScheme = AuthScheme::from(&self.config.authentication);
15588
15589        while let Some(auth_step) = theScheme.step()? {
15590            match auth_step {
15591                ::authentic::AuthenticationStep::Request(auth_request) => {
15592                    theScheme.respond(self.client.execute(auth_request));
15593                }
15594                ::authentic::AuthenticationStep::WaitFor(duration) => {
15595                    (self.sleep)(duration);
15596                }
15597            }
15598        }
15599        let theBuilder = crate::v1_1_4::request::actions_get_github_actions_permissions_repository::reqwest_blocking_builder(
15600            self.config.base_url.as_ref(),
15601            owner,
15602            repo,
15603            self.config.user_agent.as_ref(),
15604            self.config.accept.as_deref(),
15605        )?
15606        .with_authentication(&theScheme)?;
15607
15608        let theRequest =
15609            crate::v1_1_4::request::actions_get_github_actions_permissions_repository::reqwest_blocking_request(theBuilder)?;
15610
15611        ::log::debug!("HTTP request: {:?}", &theRequest);
15612
15613        let theResponse = self.client.execute(theRequest)?;
15614
15615        ::log::debug!("HTTP response: {:?}", &theResponse);
15616
15617        Ok(theResponse)
15618    }
15619
15620    /// Set GitHub Actions permissions for a repository
15621    /// 
15622    /// Sets the GitHub Actions permissions policy for enabling GitHub Actions and allowed actions and reusable workflows in the repository.
15623    /// 
15624    /// If the repository belongs to an organization or enterprise that has set restrictive permissions at the organization or enterprise levels, such as `allowed_actions` to `selected` actions and reusable workflows, then you cannot override them for the repository.
15625    /// 
15626    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `administration` repository permission to use this API.
15627    /// 
15628    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-github-actions-permissions-for-a-repository)
15629    ///
15630    /// # Content
15631    ///
15632    /// - [`&v1_1_4::request::actions_set_github_actions_permissions_repository::body::Json`](crate::v1_1_4::request::actions_set_github_actions_permissions_repository::body::Json)
15633    pub fn actions_set_github_actions_permissions_repository<Content>(
15634        &self,
15635        owner: &str,
15636        repo: &str,
15637        theContent: Content,
15638    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
15639    where
15640        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_github_actions_permissions_repository::Content<::reqwest::blocking::Body>>,
15641        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_github_actions_permissions_repository::Content<::reqwest::blocking::Body>>>::Error>
15642    {
15643        let mut theScheme = AuthScheme::from(&self.config.authentication);
15644
15645        while let Some(auth_step) = theScheme.step()? {
15646            match auth_step {
15647                ::authentic::AuthenticationStep::Request(auth_request) => {
15648                    theScheme.respond(self.client.execute(auth_request));
15649                }
15650                ::authentic::AuthenticationStep::WaitFor(duration) => {
15651                    (self.sleep)(duration);
15652                }
15653            }
15654        }
15655        let theBuilder = crate::v1_1_4::request::actions_set_github_actions_permissions_repository::reqwest_blocking_builder(
15656            self.config.base_url.as_ref(),
15657            owner,
15658            repo,
15659            self.config.user_agent.as_ref(),
15660            self.config.accept.as_deref(),
15661        )?
15662        .with_authentication(&theScheme)?;
15663
15664        let theRequest = crate::v1_1_4::request::actions_set_github_actions_permissions_repository::reqwest_blocking_request(
15665            theBuilder,
15666            theContent.try_into()?,
15667        )?;
15668
15669        ::log::debug!("HTTP request: {:?}", &theRequest);
15670
15671        let theResponse = self.client.execute(theRequest)?;
15672
15673        ::log::debug!("HTTP response: {:?}", &theResponse);
15674
15675        Ok(theResponse)
15676    }
15677
15678    /// Get the level of access for workflows outside of the repository
15679    /// 
15680    /// Gets the level of access that workflows outside of the repository have to actions and reusable workflows in the repository.
15681    /// This endpoint only applies to internal repositories. For more information, see "[Managing GitHub Actions settings for a repository](https://docs.github.com/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#allowing-access-to-components-in-an-internal-repository)."
15682    /// 
15683    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the
15684    /// repository `administration` permission to use this endpoint.
15685    /// 
15686    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-workflow-access-level-to-a-repository)
15687    pub fn actions_get_workflow_access_to_repository(
15688        &self,
15689        owner: &str,
15690        repo: &str,
15691    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15692        let mut theScheme = AuthScheme::from(&self.config.authentication);
15693
15694        while let Some(auth_step) = theScheme.step()? {
15695            match auth_step {
15696                ::authentic::AuthenticationStep::Request(auth_request) => {
15697                    theScheme.respond(self.client.execute(auth_request));
15698                }
15699                ::authentic::AuthenticationStep::WaitFor(duration) => {
15700                    (self.sleep)(duration);
15701                }
15702            }
15703        }
15704        let theBuilder = crate::v1_1_4::request::actions_get_workflow_access_to_repository::reqwest_blocking_builder(
15705            self.config.base_url.as_ref(),
15706            owner,
15707            repo,
15708            self.config.user_agent.as_ref(),
15709            self.config.accept.as_deref(),
15710        )?
15711        .with_authentication(&theScheme)?;
15712
15713        let theRequest =
15714            crate::v1_1_4::request::actions_get_workflow_access_to_repository::reqwest_blocking_request(theBuilder)?;
15715
15716        ::log::debug!("HTTP request: {:?}", &theRequest);
15717
15718        let theResponse = self.client.execute(theRequest)?;
15719
15720        ::log::debug!("HTTP response: {:?}", &theResponse);
15721
15722        Ok(theResponse)
15723    }
15724
15725    /// Set the level of access for workflows outside of the repository
15726    /// 
15727    /// Sets the level of access that workflows outside of the repository have to actions and reusable workflows in the repository.
15728    /// This endpoint only applies to internal repositories. For more information, see "[Managing GitHub Actions settings for a repository](https://docs.github.com/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#allowing-access-to-components-in-an-internal-repository)."
15729    /// 
15730    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the
15731    /// repository `administration` permission to use this endpoint.
15732    /// 
15733    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-workflow-access-to-a-repository)
15734    ///
15735    /// # Content
15736    ///
15737    /// - [`&v1_1_4::schema::ActionsWorkflowAccessToRepository`](crate::v1_1_4::schema::ActionsWorkflowAccessToRepository)
15738    pub fn actions_set_workflow_access_to_repository<Content>(
15739        &self,
15740        owner: &str,
15741        repo: &str,
15742        theContent: Content,
15743    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
15744    where
15745        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_workflow_access_to_repository::Content<::reqwest::blocking::Body>>,
15746        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_workflow_access_to_repository::Content<::reqwest::blocking::Body>>>::Error>
15747    {
15748        let mut theScheme = AuthScheme::from(&self.config.authentication);
15749
15750        while let Some(auth_step) = theScheme.step()? {
15751            match auth_step {
15752                ::authentic::AuthenticationStep::Request(auth_request) => {
15753                    theScheme.respond(self.client.execute(auth_request));
15754                }
15755                ::authentic::AuthenticationStep::WaitFor(duration) => {
15756                    (self.sleep)(duration);
15757                }
15758            }
15759        }
15760        let theBuilder = crate::v1_1_4::request::actions_set_workflow_access_to_repository::reqwest_blocking_builder(
15761            self.config.base_url.as_ref(),
15762            owner,
15763            repo,
15764            self.config.user_agent.as_ref(),
15765            self.config.accept.as_deref(),
15766        )?
15767        .with_authentication(&theScheme)?;
15768
15769        let theRequest = crate::v1_1_4::request::actions_set_workflow_access_to_repository::reqwest_blocking_request(
15770            theBuilder,
15771            theContent.try_into()?,
15772        )?;
15773
15774        ::log::debug!("HTTP request: {:?}", &theRequest);
15775
15776        let theResponse = self.client.execute(theRequest)?;
15777
15778        ::log::debug!("HTTP response: {:?}", &theResponse);
15779
15780        Ok(theResponse)
15781    }
15782
15783    /// Get allowed actions and reusable workflows for a repository
15784    /// 
15785    /// Gets the settings for selected actions and reusable workflows that are allowed in a repository. To use this endpoint, the repository policy for `allowed_actions` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for a repository](#set-github-actions-permissions-for-a-repository)."
15786    /// 
15787    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `administration` repository permission to use this API.
15788    /// 
15789    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-allowed-actions-for-a-repository)
15790    pub fn actions_get_allowed_actions_repository(
15791        &self,
15792        owner: &str,
15793        repo: &str,
15794    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15795        let mut theScheme = AuthScheme::from(&self.config.authentication);
15796
15797        while let Some(auth_step) = theScheme.step()? {
15798            match auth_step {
15799                ::authentic::AuthenticationStep::Request(auth_request) => {
15800                    theScheme.respond(self.client.execute(auth_request));
15801                }
15802                ::authentic::AuthenticationStep::WaitFor(duration) => {
15803                    (self.sleep)(duration);
15804                }
15805            }
15806        }
15807        let theBuilder = crate::v1_1_4::request::actions_get_allowed_actions_repository::reqwest_blocking_builder(
15808            self.config.base_url.as_ref(),
15809            owner,
15810            repo,
15811            self.config.user_agent.as_ref(),
15812            self.config.accept.as_deref(),
15813        )?
15814        .with_authentication(&theScheme)?;
15815
15816        let theRequest =
15817            crate::v1_1_4::request::actions_get_allowed_actions_repository::reqwest_blocking_request(theBuilder)?;
15818
15819        ::log::debug!("HTTP request: {:?}", &theRequest);
15820
15821        let theResponse = self.client.execute(theRequest)?;
15822
15823        ::log::debug!("HTTP response: {:?}", &theResponse);
15824
15825        Ok(theResponse)
15826    }
15827
15828    /// Set allowed actions and reusable workflows for a repository
15829    /// 
15830    /// Sets the actions and reusable workflows that are allowed in a repository. To use this endpoint, the repository permission policy for `allowed_actions` must be configured to `selected`. For more information, see "[Set GitHub Actions permissions for a repository](#set-github-actions-permissions-for-a-repository)."
15831    /// 
15832    /// If the repository belongs to an organization or enterprise that has `selected` actions and reusable workflows set at the organization or enterprise levels, then you cannot override any of the allowed actions and reusable workflows settings.
15833    /// 
15834    /// To use the `patterns_allowed` setting for private repositories, the repository must belong to an enterprise. If the repository does not belong to an enterprise, then the `patterns_allowed` setting only applies to public repositories.
15835    /// 
15836    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `administration` repository permission to use this API.
15837    /// 
15838    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-allowed-actions-for-a-repository)
15839    ///
15840    /// # Content
15841    ///
15842    /// - [`&v1_1_4::schema::SelectedActions`](crate::v1_1_4::schema::SelectedActions)
15843    pub fn actions_set_allowed_actions_repository<Content>(
15844        &self,
15845        owner: &str,
15846        repo: &str,
15847        theContent: Content,
15848    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
15849    where
15850        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_allowed_actions_repository::Content<::reqwest::blocking::Body>>,
15851        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_allowed_actions_repository::Content<::reqwest::blocking::Body>>>::Error>
15852    {
15853        let mut theScheme = AuthScheme::from(&self.config.authentication);
15854
15855        while let Some(auth_step) = theScheme.step()? {
15856            match auth_step {
15857                ::authentic::AuthenticationStep::Request(auth_request) => {
15858                    theScheme.respond(self.client.execute(auth_request));
15859                }
15860                ::authentic::AuthenticationStep::WaitFor(duration) => {
15861                    (self.sleep)(duration);
15862                }
15863            }
15864        }
15865        let theBuilder = crate::v1_1_4::request::actions_set_allowed_actions_repository::reqwest_blocking_builder(
15866            self.config.base_url.as_ref(),
15867            owner,
15868            repo,
15869            self.config.user_agent.as_ref(),
15870            self.config.accept.as_deref(),
15871        )?
15872        .with_authentication(&theScheme)?;
15873
15874        let theRequest = crate::v1_1_4::request::actions_set_allowed_actions_repository::reqwest_blocking_request(
15875            theBuilder,
15876            theContent.try_into()?,
15877        )?;
15878
15879        ::log::debug!("HTTP request: {:?}", &theRequest);
15880
15881        let theResponse = self.client.execute(theRequest)?;
15882
15883        ::log::debug!("HTTP response: {:?}", &theResponse);
15884
15885        Ok(theResponse)
15886    }
15887
15888    /// Get default workflow permissions for a repository
15889    /// 
15890    /// Gets the default workflow permissions granted to the `GITHUB_TOKEN` when running workflows in a repository,
15891    /// as well as if GitHub Actions can submit approving pull request reviews.
15892    /// For more information, see "[Setting the permissions of the GITHUB_TOKEN for your repository](https://docs.github.com/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#setting-the-permissions-of-the-github_token-for-your-repository)."
15893    /// 
15894    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the repository `administration` permission to use this API.
15895    /// 
15896    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-default-workflow-permissions-for-a-repository)
15897    pub fn actions_get_github_actions_default_workflow_permissions_repository(
15898        &self,
15899        owner: &str,
15900        repo: &str,
15901    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
15902        let mut theScheme = AuthScheme::from(&self.config.authentication);
15903
15904        while let Some(auth_step) = theScheme.step()? {
15905            match auth_step {
15906                ::authentic::AuthenticationStep::Request(auth_request) => {
15907                    theScheme.respond(self.client.execute(auth_request));
15908                }
15909                ::authentic::AuthenticationStep::WaitFor(duration) => {
15910                    (self.sleep)(duration);
15911                }
15912            }
15913        }
15914        let theBuilder = crate::v1_1_4::request::actions_get_github_actions_default_workflow_permissions_repository::reqwest_blocking_builder(
15915            self.config.base_url.as_ref(),
15916            owner,
15917            repo,
15918            self.config.user_agent.as_ref(),
15919            self.config.accept.as_deref(),
15920        )?
15921        .with_authentication(&theScheme)?;
15922
15923        let theRequest =
15924            crate::v1_1_4::request::actions_get_github_actions_default_workflow_permissions_repository::reqwest_blocking_request(theBuilder)?;
15925
15926        ::log::debug!("HTTP request: {:?}", &theRequest);
15927
15928        let theResponse = self.client.execute(theRequest)?;
15929
15930        ::log::debug!("HTTP response: {:?}", &theResponse);
15931
15932        Ok(theResponse)
15933    }
15934
15935    /// Set default workflow permissions for a repository
15936    /// 
15937    /// Sets the default workflow permissions granted to the `GITHUB_TOKEN` when running workflows in a repository, and sets if GitHub Actions
15938    /// can submit approving pull request reviews.
15939    /// For more information, see "[Setting the permissions of the GITHUB_TOKEN for your repository](https://docs.github.com/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#setting-the-permissions-of-the-github_token-for-your-repository)."
15940    /// 
15941    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the repository `administration` permission to use this API.
15942    /// 
15943    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-default-workflow-permissions-for-a-repository)
15944    ///
15945    /// # Content
15946    ///
15947    /// - [`&v1_1_4::schema::ActionsSetDefaultWorkflowPermissions`](crate::v1_1_4::schema::ActionsSetDefaultWorkflowPermissions)
15948    pub fn actions_set_github_actions_default_workflow_permissions_repository<Content>(
15949        &self,
15950        owner: &str,
15951        repo: &str,
15952        theContent: Content,
15953    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
15954    where
15955        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_repository::Content<::reqwest::blocking::Body>>,
15956        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_repository::Content<::reqwest::blocking::Body>>>::Error>
15957    {
15958        let mut theScheme = AuthScheme::from(&self.config.authentication);
15959
15960        while let Some(auth_step) = theScheme.step()? {
15961            match auth_step {
15962                ::authentic::AuthenticationStep::Request(auth_request) => {
15963                    theScheme.respond(self.client.execute(auth_request));
15964                }
15965                ::authentic::AuthenticationStep::WaitFor(duration) => {
15966                    (self.sleep)(duration);
15967                }
15968            }
15969        }
15970        let theBuilder = crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_repository::reqwest_blocking_builder(
15971            self.config.base_url.as_ref(),
15972            owner,
15973            repo,
15974            self.config.user_agent.as_ref(),
15975            self.config.accept.as_deref(),
15976        )?
15977        .with_authentication(&theScheme)?;
15978
15979        let theRequest = crate::v1_1_4::request::actions_set_github_actions_default_workflow_permissions_repository::reqwest_blocking_request(
15980            theBuilder,
15981            theContent.try_into()?,
15982        )?;
15983
15984        ::log::debug!("HTTP request: {:?}", &theRequest);
15985
15986        let theResponse = self.client.execute(theRequest)?;
15987
15988        ::log::debug!("HTTP response: {:?}", &theResponse);
15989
15990        Ok(theResponse)
15991    }
15992
15993    /// List self-hosted runners for a repository
15994    /// 
15995    /// Lists all self-hosted runners configured in a repository. You must authenticate using an access token with the `repo` scope to use this endpoint.
15996    /// 
15997    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-self-hosted-runners-for-a-repository)
15998    pub fn actions_list_self_hosted_runners_for_repo(
15999        &self,
16000        owner: &str,
16001        repo: &str,
16002        per_page: ::std::option::Option<i64>,
16003        page: ::std::option::Option<i64>,
16004    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16005        let mut theScheme = AuthScheme::from(&self.config.authentication);
16006
16007        while let Some(auth_step) = theScheme.step()? {
16008            match auth_step {
16009                ::authentic::AuthenticationStep::Request(auth_request) => {
16010                    theScheme.respond(self.client.execute(auth_request));
16011                }
16012                ::authentic::AuthenticationStep::WaitFor(duration) => {
16013                    (self.sleep)(duration);
16014                }
16015            }
16016        }
16017        let theBuilder = crate::v1_1_4::request::actions_list_self_hosted_runners_for_repo::reqwest_blocking_builder(
16018            self.config.base_url.as_ref(),
16019            owner,
16020            repo,
16021            per_page,
16022            page,
16023            self.config.user_agent.as_ref(),
16024            self.config.accept.as_deref(),
16025        )?
16026        .with_authentication(&theScheme)?;
16027
16028        let theRequest =
16029            crate::v1_1_4::request::actions_list_self_hosted_runners_for_repo::reqwest_blocking_request(theBuilder)?;
16030
16031        ::log::debug!("HTTP request: {:?}", &theRequest);
16032
16033        let theResponse = self.client.execute(theRequest)?;
16034
16035        ::log::debug!("HTTP response: {:?}", &theResponse);
16036
16037        Ok(theResponse)
16038    }
16039
16040    /// List runner applications for a repository
16041    /// 
16042    /// Lists binaries for the runner application that you can download and run.
16043    /// 
16044    /// You must authenticate using an access token with the `repo` scope to use this endpoint.
16045    /// 
16046    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-runner-applications-for-a-repository)
16047    pub fn actions_list_runner_applications_for_repo(
16048        &self,
16049        owner: &str,
16050        repo: &str,
16051    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16052        let mut theScheme = AuthScheme::from(&self.config.authentication);
16053
16054        while let Some(auth_step) = theScheme.step()? {
16055            match auth_step {
16056                ::authentic::AuthenticationStep::Request(auth_request) => {
16057                    theScheme.respond(self.client.execute(auth_request));
16058                }
16059                ::authentic::AuthenticationStep::WaitFor(duration) => {
16060                    (self.sleep)(duration);
16061                }
16062            }
16063        }
16064        let theBuilder = crate::v1_1_4::request::actions_list_runner_applications_for_repo::reqwest_blocking_builder(
16065            self.config.base_url.as_ref(),
16066            owner,
16067            repo,
16068            self.config.user_agent.as_ref(),
16069            self.config.accept.as_deref(),
16070        )?
16071        .with_authentication(&theScheme)?;
16072
16073        let theRequest =
16074            crate::v1_1_4::request::actions_list_runner_applications_for_repo::reqwest_blocking_request(theBuilder)?;
16075
16076        ::log::debug!("HTTP request: {:?}", &theRequest);
16077
16078        let theResponse = self.client.execute(theRequest)?;
16079
16080        ::log::debug!("HTTP response: {:?}", &theResponse);
16081
16082        Ok(theResponse)
16083    }
16084
16085    /// Create a registration token for a repository
16086    /// 
16087    /// Returns a token that you can pass to the `config` script. The token expires after one hour. You must authenticate
16088    /// using an access token with the `repo` scope to use this endpoint.
16089    /// 
16090    /// #### Example using registration token
16091    ///  
16092    /// Configure your self-hosted runner, replacing `TOKEN` with the registration token provided by this endpoint.
16093    /// 
16094    /// ```text
16095    /// ./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN
16096    /// ```
16097    /// 
16098    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-a-registration-token-for-a-repository)
16099    pub fn actions_create_registration_token_for_repo(
16100        &self,
16101        owner: &str,
16102        repo: &str,
16103    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16104        let mut theScheme = AuthScheme::from(&self.config.authentication);
16105
16106        while let Some(auth_step) = theScheme.step()? {
16107            match auth_step {
16108                ::authentic::AuthenticationStep::Request(auth_request) => {
16109                    theScheme.respond(self.client.execute(auth_request));
16110                }
16111                ::authentic::AuthenticationStep::WaitFor(duration) => {
16112                    (self.sleep)(duration);
16113                }
16114            }
16115        }
16116        let theBuilder = crate::v1_1_4::request::actions_create_registration_token_for_repo::reqwest_blocking_builder(
16117            self.config.base_url.as_ref(),
16118            owner,
16119            repo,
16120            self.config.user_agent.as_ref(),
16121            self.config.accept.as_deref(),
16122        )?
16123        .with_authentication(&theScheme)?;
16124
16125        let theRequest =
16126            crate::v1_1_4::request::actions_create_registration_token_for_repo::reqwest_blocking_request(theBuilder)?;
16127
16128        ::log::debug!("HTTP request: {:?}", &theRequest);
16129
16130        let theResponse = self.client.execute(theRequest)?;
16131
16132        ::log::debug!("HTTP response: {:?}", &theResponse);
16133
16134        Ok(theResponse)
16135    }
16136
16137    /// Create a remove token for a repository
16138    /// 
16139    /// Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.
16140    /// You must authenticate using an access token with the `repo` scope to use this endpoint.
16141    /// 
16142    /// #### Example using remove token
16143    ///  
16144    /// To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.
16145    /// 
16146    /// ```text
16147    /// ./config.sh remove --token TOKEN
16148    /// ```
16149    /// 
16150    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-a-remove-token-for-a-repository)
16151    pub fn actions_create_remove_token_for_repo(
16152        &self,
16153        owner: &str,
16154        repo: &str,
16155    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16156        let mut theScheme = AuthScheme::from(&self.config.authentication);
16157
16158        while let Some(auth_step) = theScheme.step()? {
16159            match auth_step {
16160                ::authentic::AuthenticationStep::Request(auth_request) => {
16161                    theScheme.respond(self.client.execute(auth_request));
16162                }
16163                ::authentic::AuthenticationStep::WaitFor(duration) => {
16164                    (self.sleep)(duration);
16165                }
16166            }
16167        }
16168        let theBuilder = crate::v1_1_4::request::actions_create_remove_token_for_repo::reqwest_blocking_builder(
16169            self.config.base_url.as_ref(),
16170            owner,
16171            repo,
16172            self.config.user_agent.as_ref(),
16173            self.config.accept.as_deref(),
16174        )?
16175        .with_authentication(&theScheme)?;
16176
16177        let theRequest =
16178            crate::v1_1_4::request::actions_create_remove_token_for_repo::reqwest_blocking_request(theBuilder)?;
16179
16180        ::log::debug!("HTTP request: {:?}", &theRequest);
16181
16182        let theResponse = self.client.execute(theRequest)?;
16183
16184        ::log::debug!("HTTP response: {:?}", &theResponse);
16185
16186        Ok(theResponse)
16187    }
16188
16189    /// Get a self-hosted runner for a repository
16190    /// 
16191    /// Gets a specific self-hosted runner configured in a repository.
16192    /// 
16193    /// You must authenticate using an access token with the `repo` scope to use this
16194    /// endpoint.
16195    /// 
16196    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-self-hosted-runner-for-a-repository)
16197    pub fn actions_get_self_hosted_runner_for_repo(
16198        &self,
16199        owner: &str,
16200        repo: &str,
16201        runner_id: i64,
16202    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16203        let mut theScheme = AuthScheme::from(&self.config.authentication);
16204
16205        while let Some(auth_step) = theScheme.step()? {
16206            match auth_step {
16207                ::authentic::AuthenticationStep::Request(auth_request) => {
16208                    theScheme.respond(self.client.execute(auth_request));
16209                }
16210                ::authentic::AuthenticationStep::WaitFor(duration) => {
16211                    (self.sleep)(duration);
16212                }
16213            }
16214        }
16215        let theBuilder = crate::v1_1_4::request::actions_get_self_hosted_runner_for_repo::reqwest_blocking_builder(
16216            self.config.base_url.as_ref(),
16217            owner,
16218            repo,
16219            runner_id,
16220            self.config.user_agent.as_ref(),
16221            self.config.accept.as_deref(),
16222        )?
16223        .with_authentication(&theScheme)?;
16224
16225        let theRequest =
16226            crate::v1_1_4::request::actions_get_self_hosted_runner_for_repo::reqwest_blocking_request(theBuilder)?;
16227
16228        ::log::debug!("HTTP request: {:?}", &theRequest);
16229
16230        let theResponse = self.client.execute(theRequest)?;
16231
16232        ::log::debug!("HTTP response: {:?}", &theResponse);
16233
16234        Ok(theResponse)
16235    }
16236
16237    /// Delete a self-hosted runner from a repository
16238    /// 
16239    /// Forces the removal of a self-hosted runner from a repository. You can use this endpoint to completely remove the runner when the machine you were using no longer exists.
16240    /// 
16241    /// You must authenticate using an access token with the `repo`
16242    /// scope to use this endpoint.
16243    /// 
16244    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-a-self-hosted-runner-from-a-repository)
16245    pub fn actions_delete_self_hosted_runner_from_repo(
16246        &self,
16247        owner: &str,
16248        repo: &str,
16249        runner_id: i64,
16250    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16251        let mut theScheme = AuthScheme::from(&self.config.authentication);
16252
16253        while let Some(auth_step) = theScheme.step()? {
16254            match auth_step {
16255                ::authentic::AuthenticationStep::Request(auth_request) => {
16256                    theScheme.respond(self.client.execute(auth_request));
16257                }
16258                ::authentic::AuthenticationStep::WaitFor(duration) => {
16259                    (self.sleep)(duration);
16260                }
16261            }
16262        }
16263        let theBuilder = crate::v1_1_4::request::actions_delete_self_hosted_runner_from_repo::reqwest_blocking_builder(
16264            self.config.base_url.as_ref(),
16265            owner,
16266            repo,
16267            runner_id,
16268            self.config.user_agent.as_ref(),
16269            self.config.accept.as_deref(),
16270        )?
16271        .with_authentication(&theScheme)?;
16272
16273        let theRequest =
16274            crate::v1_1_4::request::actions_delete_self_hosted_runner_from_repo::reqwest_blocking_request(theBuilder)?;
16275
16276        ::log::debug!("HTTP request: {:?}", &theRequest);
16277
16278        let theResponse = self.client.execute(theRequest)?;
16279
16280        ::log::debug!("HTTP response: {:?}", &theResponse);
16281
16282        Ok(theResponse)
16283    }
16284
16285    /// List labels for a self-hosted runner for a repository
16286    /// 
16287    /// Lists all labels for a self-hosted runner configured in a repository.
16288    /// 
16289    /// You must authenticate using an access token with the `repo` scope to use this
16290    /// endpoint.
16291    /// 
16292    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-labels-for-a-self-hosted-runner-for-a-repository)
16293    pub fn actions_list_labels_for_self_hosted_runner_for_repo(
16294        &self,
16295        owner: &str,
16296        repo: &str,
16297        runner_id: i64,
16298    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16299        let mut theScheme = AuthScheme::from(&self.config.authentication);
16300
16301        while let Some(auth_step) = theScheme.step()? {
16302            match auth_step {
16303                ::authentic::AuthenticationStep::Request(auth_request) => {
16304                    theScheme.respond(self.client.execute(auth_request));
16305                }
16306                ::authentic::AuthenticationStep::WaitFor(duration) => {
16307                    (self.sleep)(duration);
16308                }
16309            }
16310        }
16311        let theBuilder = crate::v1_1_4::request::actions_list_labels_for_self_hosted_runner_for_repo::reqwest_blocking_builder(
16312            self.config.base_url.as_ref(),
16313            owner,
16314            repo,
16315            runner_id,
16316            self.config.user_agent.as_ref(),
16317            self.config.accept.as_deref(),
16318        )?
16319        .with_authentication(&theScheme)?;
16320
16321        let theRequest =
16322            crate::v1_1_4::request::actions_list_labels_for_self_hosted_runner_for_repo::reqwest_blocking_request(theBuilder)?;
16323
16324        ::log::debug!("HTTP request: {:?}", &theRequest);
16325
16326        let theResponse = self.client.execute(theRequest)?;
16327
16328        ::log::debug!("HTTP response: {:?}", &theResponse);
16329
16330        Ok(theResponse)
16331    }
16332
16333    /// Set custom labels for a self-hosted runner for a repository
16334    /// 
16335    /// Remove all previous custom labels and set the new custom labels for a specific
16336    /// self-hosted runner configured in a repository.
16337    /// 
16338    /// You must authenticate using an access token with the `repo` scope to use this
16339    /// endpoint.
16340    /// 
16341    /// [API method documentation](https://docs.github.com/rest/reference/actions#set-custom-labels-for-a-self-hosted-runner-for-a-repository)
16342    ///
16343    /// # Content
16344    ///
16345    /// - [`&v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_repo::body::Json`](crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_repo::body::Json)
16346    pub fn actions_set_custom_labels_for_self_hosted_runner_for_repo<Content>(
16347        &self,
16348        owner: &str,
16349        repo: &str,
16350        runner_id: i64,
16351        theContent: Content,
16352    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
16353    where
16354        Content: Copy + TryInto<crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_repo::Content<::reqwest::blocking::Body>>,
16355        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_repo::Content<::reqwest::blocking::Body>>>::Error>
16356    {
16357        let mut theScheme = AuthScheme::from(&self.config.authentication);
16358
16359        while let Some(auth_step) = theScheme.step()? {
16360            match auth_step {
16361                ::authentic::AuthenticationStep::Request(auth_request) => {
16362                    theScheme.respond(self.client.execute(auth_request));
16363                }
16364                ::authentic::AuthenticationStep::WaitFor(duration) => {
16365                    (self.sleep)(duration);
16366                }
16367            }
16368        }
16369        let theBuilder = crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_repo::reqwest_blocking_builder(
16370            self.config.base_url.as_ref(),
16371            owner,
16372            repo,
16373            runner_id,
16374            self.config.user_agent.as_ref(),
16375            self.config.accept.as_deref(),
16376        )?
16377        .with_authentication(&theScheme)?;
16378
16379        let theRequest = crate::v1_1_4::request::actions_set_custom_labels_for_self_hosted_runner_for_repo::reqwest_blocking_request(
16380            theBuilder,
16381            theContent.try_into()?,
16382        )?;
16383
16384        ::log::debug!("HTTP request: {:?}", &theRequest);
16385
16386        let theResponse = self.client.execute(theRequest)?;
16387
16388        ::log::debug!("HTTP response: {:?}", &theResponse);
16389
16390        Ok(theResponse)
16391    }
16392
16393    /// Add custom labels to a self-hosted runner for a repository
16394    /// 
16395    /// Add custom labels to a self-hosted runner configured in a repository.
16396    /// 
16397    /// You must authenticate using an access token with the `repo` scope to use this
16398    /// endpoint.
16399    /// 
16400    /// [API method documentation](https://docs.github.com/rest/reference/actions#add-custom-labels-to-a-self-hosted-runner-for-a-repository)
16401    ///
16402    /// # Content
16403    ///
16404    /// - [`&v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_repo::body::Json`](crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_repo::body::Json)
16405    pub fn actions_add_custom_labels_to_self_hosted_runner_for_repo<Content>(
16406        &self,
16407        owner: &str,
16408        repo: &str,
16409        runner_id: i64,
16410        theContent: Content,
16411    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
16412    where
16413        Content: Copy + TryInto<crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_repo::Content<::reqwest::blocking::Body>>,
16414        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_repo::Content<::reqwest::blocking::Body>>>::Error>
16415    {
16416        let mut theScheme = AuthScheme::from(&self.config.authentication);
16417
16418        while let Some(auth_step) = theScheme.step()? {
16419            match auth_step {
16420                ::authentic::AuthenticationStep::Request(auth_request) => {
16421                    theScheme.respond(self.client.execute(auth_request));
16422                }
16423                ::authentic::AuthenticationStep::WaitFor(duration) => {
16424                    (self.sleep)(duration);
16425                }
16426            }
16427        }
16428        let theBuilder = crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_repo::reqwest_blocking_builder(
16429            self.config.base_url.as_ref(),
16430            owner,
16431            repo,
16432            runner_id,
16433            self.config.user_agent.as_ref(),
16434            self.config.accept.as_deref(),
16435        )?
16436        .with_authentication(&theScheme)?;
16437
16438        let theRequest = crate::v1_1_4::request::actions_add_custom_labels_to_self_hosted_runner_for_repo::reqwest_blocking_request(
16439            theBuilder,
16440            theContent.try_into()?,
16441        )?;
16442
16443        ::log::debug!("HTTP request: {:?}", &theRequest);
16444
16445        let theResponse = self.client.execute(theRequest)?;
16446
16447        ::log::debug!("HTTP response: {:?}", &theResponse);
16448
16449        Ok(theResponse)
16450    }
16451
16452    /// Remove all custom labels from a self-hosted runner for a repository
16453    /// 
16454    /// Remove all custom labels from a self-hosted runner configured in a
16455    /// repository. Returns the remaining read-only labels from the runner.
16456    /// 
16457    /// You must authenticate using an access token with the `repo` scope to use this
16458    /// endpoint.
16459    /// 
16460    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-all-custom-labels-from-a-self-hosted-runner-for-a-repository)
16461    pub fn actions_remove_all_custom_labels_from_self_hosted_runner_for_repo(
16462        &self,
16463        owner: &str,
16464        repo: &str,
16465        runner_id: i64,
16466    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16467        let mut theScheme = AuthScheme::from(&self.config.authentication);
16468
16469        while let Some(auth_step) = theScheme.step()? {
16470            match auth_step {
16471                ::authentic::AuthenticationStep::Request(auth_request) => {
16472                    theScheme.respond(self.client.execute(auth_request));
16473                }
16474                ::authentic::AuthenticationStep::WaitFor(duration) => {
16475                    (self.sleep)(duration);
16476                }
16477            }
16478        }
16479        let theBuilder = crate::v1_1_4::request::actions_remove_all_custom_labels_from_self_hosted_runner_for_repo::reqwest_blocking_builder(
16480            self.config.base_url.as_ref(),
16481            owner,
16482            repo,
16483            runner_id,
16484            self.config.user_agent.as_ref(),
16485            self.config.accept.as_deref(),
16486        )?
16487        .with_authentication(&theScheme)?;
16488
16489        let theRequest =
16490            crate::v1_1_4::request::actions_remove_all_custom_labels_from_self_hosted_runner_for_repo::reqwest_blocking_request(theBuilder)?;
16491
16492        ::log::debug!("HTTP request: {:?}", &theRequest);
16493
16494        let theResponse = self.client.execute(theRequest)?;
16495
16496        ::log::debug!("HTTP response: {:?}", &theResponse);
16497
16498        Ok(theResponse)
16499    }
16500
16501    /// Remove a custom label from a self-hosted runner for a repository
16502    /// 
16503    /// Remove a custom label from a self-hosted runner configured
16504    /// in a repository. Returns the remaining labels from the runner.
16505    /// 
16506    /// This endpoint returns a `404 Not Found` status if the custom label is not
16507    /// present on the runner.
16508    /// 
16509    /// You must authenticate using an access token with the `repo` scope to use this
16510    /// endpoint.
16511    /// 
16512    /// [API method documentation](https://docs.github.com/rest/reference/actions#remove-a-custom-label-from-a-self-hosted-runner-for-a-repository)
16513    pub fn actions_remove_custom_label_from_self_hosted_runner_for_repo(
16514        &self,
16515        owner: &str,
16516        repo: &str,
16517        runner_id: i64,
16518        name: &str,
16519    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16520        let mut theScheme = AuthScheme::from(&self.config.authentication);
16521
16522        while let Some(auth_step) = theScheme.step()? {
16523            match auth_step {
16524                ::authentic::AuthenticationStep::Request(auth_request) => {
16525                    theScheme.respond(self.client.execute(auth_request));
16526                }
16527                ::authentic::AuthenticationStep::WaitFor(duration) => {
16528                    (self.sleep)(duration);
16529                }
16530            }
16531        }
16532        let theBuilder = crate::v1_1_4::request::actions_remove_custom_label_from_self_hosted_runner_for_repo::reqwest_blocking_builder(
16533            self.config.base_url.as_ref(),
16534            owner,
16535            repo,
16536            runner_id,
16537            name,
16538            self.config.user_agent.as_ref(),
16539            self.config.accept.as_deref(),
16540        )?
16541        .with_authentication(&theScheme)?;
16542
16543        let theRequest =
16544            crate::v1_1_4::request::actions_remove_custom_label_from_self_hosted_runner_for_repo::reqwest_blocking_request(theBuilder)?;
16545
16546        ::log::debug!("HTTP request: {:?}", &theRequest);
16547
16548        let theResponse = self.client.execute(theRequest)?;
16549
16550        ::log::debug!("HTTP response: {:?}", &theResponse);
16551
16552        Ok(theResponse)
16553    }
16554
16555    /// List workflow runs for a repository
16556    /// 
16557    /// Lists all workflow runs for a repository. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/rest/overview/resources-in-the-rest-api#parameters).
16558    /// 
16559    /// Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
16560    /// 
16561    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-workflow-runs-for-a-repository)
16562    #[allow(clippy::too_many_arguments)]
16563    pub fn actions_list_workflow_runs_for_repo(
16564        &self,
16565        owner: &str,
16566        repo: &str,
16567        actor: ::std::option::Option<&str>,
16568        branch: ::std::option::Option<&str>,
16569        event: ::std::option::Option<&str>,
16570        status: ::std::option::Option<&str>,
16571        per_page: ::std::option::Option<i64>,
16572        page: ::std::option::Option<i64>,
16573        created: ::std::option::Option<&str>,
16574        exclude_pull_requests: ::std::option::Option<bool>,
16575        check_suite_id: ::std::option::Option<i64>,
16576    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16577        let mut theScheme = AuthScheme::from(&self.config.authentication);
16578
16579        while let Some(auth_step) = theScheme.step()? {
16580            match auth_step {
16581                ::authentic::AuthenticationStep::Request(auth_request) => {
16582                    theScheme.respond(self.client.execute(auth_request));
16583                }
16584                ::authentic::AuthenticationStep::WaitFor(duration) => {
16585                    (self.sleep)(duration);
16586                }
16587            }
16588        }
16589        let theBuilder = crate::v1_1_4::request::actions_list_workflow_runs_for_repo::reqwest_blocking_builder(
16590            self.config.base_url.as_ref(),
16591            owner,
16592            repo,
16593            actor,
16594            branch,
16595            event,
16596            status,
16597            per_page,
16598            page,
16599            created,
16600            exclude_pull_requests,
16601            check_suite_id,
16602            self.config.user_agent.as_ref(),
16603            self.config.accept.as_deref(),
16604        )?
16605        .with_authentication(&theScheme)?;
16606
16607        let theRequest =
16608            crate::v1_1_4::request::actions_list_workflow_runs_for_repo::reqwest_blocking_request(theBuilder)?;
16609
16610        ::log::debug!("HTTP request: {:?}", &theRequest);
16611
16612        let theResponse = self.client.execute(theRequest)?;
16613
16614        ::log::debug!("HTTP response: {:?}", &theResponse);
16615
16616        Ok(theResponse)
16617    }
16618
16619    /// Get a workflow run
16620    /// 
16621    /// Gets a specific workflow run. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
16622    /// 
16623    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-workflow-run)
16624    pub fn actions_get_workflow_run(
16625        &self,
16626        owner: &str,
16627        repo: &str,
16628        run_id: i64,
16629        exclude_pull_requests: ::std::option::Option<bool>,
16630    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16631        let mut theScheme = AuthScheme::from(&self.config.authentication);
16632
16633        while let Some(auth_step) = theScheme.step()? {
16634            match auth_step {
16635                ::authentic::AuthenticationStep::Request(auth_request) => {
16636                    theScheme.respond(self.client.execute(auth_request));
16637                }
16638                ::authentic::AuthenticationStep::WaitFor(duration) => {
16639                    (self.sleep)(duration);
16640                }
16641            }
16642        }
16643        let theBuilder = crate::v1_1_4::request::actions_get_workflow_run::reqwest_blocking_builder(
16644            self.config.base_url.as_ref(),
16645            owner,
16646            repo,
16647            run_id,
16648            exclude_pull_requests,
16649            self.config.user_agent.as_ref(),
16650            self.config.accept.as_deref(),
16651        )?
16652        .with_authentication(&theScheme)?;
16653
16654        let theRequest =
16655            crate::v1_1_4::request::actions_get_workflow_run::reqwest_blocking_request(theBuilder)?;
16656
16657        ::log::debug!("HTTP request: {:?}", &theRequest);
16658
16659        let theResponse = self.client.execute(theRequest)?;
16660
16661        ::log::debug!("HTTP response: {:?}", &theResponse);
16662
16663        Ok(theResponse)
16664    }
16665
16666    /// Delete a workflow run
16667    /// 
16668    /// Delete a specific workflow run. Anyone with write access to the repository can use this endpoint. If the repository is
16669    /// private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:write` permission to use
16670    /// this endpoint.
16671    /// 
16672    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-a-workflow-run)
16673    pub fn actions_delete_workflow_run(
16674        &self,
16675        owner: &str,
16676        repo: &str,
16677        run_id: i64,
16678    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16679        let mut theScheme = AuthScheme::from(&self.config.authentication);
16680
16681        while let Some(auth_step) = theScheme.step()? {
16682            match auth_step {
16683                ::authentic::AuthenticationStep::Request(auth_request) => {
16684                    theScheme.respond(self.client.execute(auth_request));
16685                }
16686                ::authentic::AuthenticationStep::WaitFor(duration) => {
16687                    (self.sleep)(duration);
16688                }
16689            }
16690        }
16691        let theBuilder = crate::v1_1_4::request::actions_delete_workflow_run::reqwest_blocking_builder(
16692            self.config.base_url.as_ref(),
16693            owner,
16694            repo,
16695            run_id,
16696            self.config.user_agent.as_ref(),
16697            self.config.accept.as_deref(),
16698        )?
16699        .with_authentication(&theScheme)?;
16700
16701        let theRequest =
16702            crate::v1_1_4::request::actions_delete_workflow_run::reqwest_blocking_request(theBuilder)?;
16703
16704        ::log::debug!("HTTP request: {:?}", &theRequest);
16705
16706        let theResponse = self.client.execute(theRequest)?;
16707
16708        ::log::debug!("HTTP response: {:?}", &theResponse);
16709
16710        Ok(theResponse)
16711    }
16712
16713    /// Get the review history for a workflow run
16714    /// 
16715    /// Anyone with read access to the repository can use this endpoint. If the repository is private, you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
16716    /// 
16717    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-the-review-history-for-a-workflow-run)
16718    pub fn actions_get_reviews_for_run(
16719        &self,
16720        owner: &str,
16721        repo: &str,
16722        run_id: i64,
16723    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16724        let mut theScheme = AuthScheme::from(&self.config.authentication);
16725
16726        while let Some(auth_step) = theScheme.step()? {
16727            match auth_step {
16728                ::authentic::AuthenticationStep::Request(auth_request) => {
16729                    theScheme.respond(self.client.execute(auth_request));
16730                }
16731                ::authentic::AuthenticationStep::WaitFor(duration) => {
16732                    (self.sleep)(duration);
16733                }
16734            }
16735        }
16736        let theBuilder = crate::v1_1_4::request::actions_get_reviews_for_run::reqwest_blocking_builder(
16737            self.config.base_url.as_ref(),
16738            owner,
16739            repo,
16740            run_id,
16741            self.config.user_agent.as_ref(),
16742            self.config.accept.as_deref(),
16743        )?
16744        .with_authentication(&theScheme)?;
16745
16746        let theRequest =
16747            crate::v1_1_4::request::actions_get_reviews_for_run::reqwest_blocking_request(theBuilder)?;
16748
16749        ::log::debug!("HTTP request: {:?}", &theRequest);
16750
16751        let theResponse = self.client.execute(theRequest)?;
16752
16753        ::log::debug!("HTTP response: {:?}", &theResponse);
16754
16755        Ok(theResponse)
16756    }
16757
16758    /// Approve a workflow run for a fork pull request
16759    /// 
16760    /// Approves a workflow run for a pull request from a public fork of a first time contributor. For more information, see ["Approving workflow runs from public forks](https://docs.github.com/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks)."
16761    /// 
16762    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `actions:write` permission to use this endpoint.
16763    /// 
16764    /// [API method documentation](https://docs.github.com/rest/reference/actions#approve-a-workflow-run-for-a-fork-pull-request)
16765    pub fn actions_approve_workflow_run(
16766        &self,
16767        owner: &str,
16768        repo: &str,
16769        run_id: i64,
16770    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16771        let mut theScheme = AuthScheme::from(&self.config.authentication);
16772
16773        while let Some(auth_step) = theScheme.step()? {
16774            match auth_step {
16775                ::authentic::AuthenticationStep::Request(auth_request) => {
16776                    theScheme.respond(self.client.execute(auth_request));
16777                }
16778                ::authentic::AuthenticationStep::WaitFor(duration) => {
16779                    (self.sleep)(duration);
16780                }
16781            }
16782        }
16783        let theBuilder = crate::v1_1_4::request::actions_approve_workflow_run::reqwest_blocking_builder(
16784            self.config.base_url.as_ref(),
16785            owner,
16786            repo,
16787            run_id,
16788            self.config.user_agent.as_ref(),
16789            self.config.accept.as_deref(),
16790        )?
16791        .with_authentication(&theScheme)?;
16792
16793        let theRequest =
16794            crate::v1_1_4::request::actions_approve_workflow_run::reqwest_blocking_request(theBuilder)?;
16795
16796        ::log::debug!("HTTP request: {:?}", &theRequest);
16797
16798        let theResponse = self.client.execute(theRequest)?;
16799
16800        ::log::debug!("HTTP response: {:?}", &theResponse);
16801
16802        Ok(theResponse)
16803    }
16804
16805    /// List workflow run artifacts
16806    /// 
16807    /// Lists artifacts for a workflow run. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
16808    /// 
16809    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-workflow-run-artifacts)
16810    pub fn actions_list_workflow_run_artifacts(
16811        &self,
16812        owner: &str,
16813        repo: &str,
16814        run_id: i64,
16815        per_page: ::std::option::Option<i64>,
16816        page: ::std::option::Option<i64>,
16817    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16818        let mut theScheme = AuthScheme::from(&self.config.authentication);
16819
16820        while let Some(auth_step) = theScheme.step()? {
16821            match auth_step {
16822                ::authentic::AuthenticationStep::Request(auth_request) => {
16823                    theScheme.respond(self.client.execute(auth_request));
16824                }
16825                ::authentic::AuthenticationStep::WaitFor(duration) => {
16826                    (self.sleep)(duration);
16827                }
16828            }
16829        }
16830        let theBuilder = crate::v1_1_4::request::actions_list_workflow_run_artifacts::reqwest_blocking_builder(
16831            self.config.base_url.as_ref(),
16832            owner,
16833            repo,
16834            run_id,
16835            per_page,
16836            page,
16837            self.config.user_agent.as_ref(),
16838            self.config.accept.as_deref(),
16839        )?
16840        .with_authentication(&theScheme)?;
16841
16842        let theRequest =
16843            crate::v1_1_4::request::actions_list_workflow_run_artifacts::reqwest_blocking_request(theBuilder)?;
16844
16845        ::log::debug!("HTTP request: {:?}", &theRequest);
16846
16847        let theResponse = self.client.execute(theRequest)?;
16848
16849        ::log::debug!("HTTP response: {:?}", &theResponse);
16850
16851        Ok(theResponse)
16852    }
16853
16854    /// Get a workflow run attempt
16855    /// 
16856    /// Gets a specific workflow run attempt. Anyone with read access to the repository
16857    /// can use this endpoint. If the repository is private you must use an access token
16858    /// with the `repo` scope. GitHub Apps must have the `actions:read` permission to
16859    /// use this endpoint.
16860    /// 
16861    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-workflow-run-attempt)
16862    pub fn actions_get_workflow_run_attempt(
16863        &self,
16864        owner: &str,
16865        repo: &str,
16866        run_id: i64,
16867        attempt_number: i64,
16868        exclude_pull_requests: ::std::option::Option<bool>,
16869    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16870        let mut theScheme = AuthScheme::from(&self.config.authentication);
16871
16872        while let Some(auth_step) = theScheme.step()? {
16873            match auth_step {
16874                ::authentic::AuthenticationStep::Request(auth_request) => {
16875                    theScheme.respond(self.client.execute(auth_request));
16876                }
16877                ::authentic::AuthenticationStep::WaitFor(duration) => {
16878                    (self.sleep)(duration);
16879                }
16880            }
16881        }
16882        let theBuilder = crate::v1_1_4::request::actions_get_workflow_run_attempt::reqwest_blocking_builder(
16883            self.config.base_url.as_ref(),
16884            owner,
16885            repo,
16886            run_id,
16887            attempt_number,
16888            exclude_pull_requests,
16889            self.config.user_agent.as_ref(),
16890            self.config.accept.as_deref(),
16891        )?
16892        .with_authentication(&theScheme)?;
16893
16894        let theRequest =
16895            crate::v1_1_4::request::actions_get_workflow_run_attempt::reqwest_blocking_request(theBuilder)?;
16896
16897        ::log::debug!("HTTP request: {:?}", &theRequest);
16898
16899        let theResponse = self.client.execute(theRequest)?;
16900
16901        ::log::debug!("HTTP response: {:?}", &theResponse);
16902
16903        Ok(theResponse)
16904    }
16905
16906    /// List jobs for a workflow run attempt
16907    /// 
16908    /// Lists jobs for a specific workflow run attempt. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/rest/overview/resources-in-the-rest-api#parameters).
16909    /// 
16910    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-jobs-for-a-workflow-run-attempt)
16911    pub fn actions_list_jobs_for_workflow_run_attempt(
16912        &self,
16913        owner: &str,
16914        repo: &str,
16915        run_id: i64,
16916        attempt_number: i64,
16917        per_page: ::std::option::Option<i64>,
16918        page: ::std::option::Option<i64>,
16919    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16920        let mut theScheme = AuthScheme::from(&self.config.authentication);
16921
16922        while let Some(auth_step) = theScheme.step()? {
16923            match auth_step {
16924                ::authentic::AuthenticationStep::Request(auth_request) => {
16925                    theScheme.respond(self.client.execute(auth_request));
16926                }
16927                ::authentic::AuthenticationStep::WaitFor(duration) => {
16928                    (self.sleep)(duration);
16929                }
16930            }
16931        }
16932        let theBuilder = crate::v1_1_4::request::actions_list_jobs_for_workflow_run_attempt::reqwest_blocking_builder(
16933            self.config.base_url.as_ref(),
16934            owner,
16935            repo,
16936            run_id,
16937            attempt_number,
16938            per_page,
16939            page,
16940            self.config.user_agent.as_ref(),
16941            self.config.accept.as_deref(),
16942        )?
16943        .with_authentication(&theScheme)?;
16944
16945        let theRequest =
16946            crate::v1_1_4::request::actions_list_jobs_for_workflow_run_attempt::reqwest_blocking_request(theBuilder)?;
16947
16948        ::log::debug!("HTTP request: {:?}", &theRequest);
16949
16950        let theResponse = self.client.execute(theRequest)?;
16951
16952        ::log::debug!("HTTP response: {:?}", &theResponse);
16953
16954        Ok(theResponse)
16955    }
16956
16957    /// Download workflow run attempt logs
16958    /// 
16959    /// Gets a redirect URL to download an archive of log files for a specific workflow run attempt. This link expires after
16960    /// 1 minute. Look for `Location:` in the response header to find the URL for the download. Anyone with read access to
16961    /// the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.
16962    /// GitHub Apps must have the `actions:read` permission to use this endpoint.
16963    /// 
16964    /// [API method documentation](https://docs.github.com/rest/reference/actions#download-workflow-run-attempt-logs)
16965    pub fn actions_download_workflow_run_attempt_logs(
16966        &self,
16967        owner: &str,
16968        repo: &str,
16969        run_id: i64,
16970        attempt_number: i64,
16971    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
16972        let mut theScheme = AuthScheme::from(&self.config.authentication);
16973
16974        while let Some(auth_step) = theScheme.step()? {
16975            match auth_step {
16976                ::authentic::AuthenticationStep::Request(auth_request) => {
16977                    theScheme.respond(self.client.execute(auth_request));
16978                }
16979                ::authentic::AuthenticationStep::WaitFor(duration) => {
16980                    (self.sleep)(duration);
16981                }
16982            }
16983        }
16984        let theBuilder = crate::v1_1_4::request::actions_download_workflow_run_attempt_logs::reqwest_blocking_builder(
16985            self.config.base_url.as_ref(),
16986            owner,
16987            repo,
16988            run_id,
16989            attempt_number,
16990            self.config.user_agent.as_ref(),
16991            self.config.accept.as_deref(),
16992        )?
16993        .with_authentication(&theScheme)?;
16994
16995        let theRequest =
16996            crate::v1_1_4::request::actions_download_workflow_run_attempt_logs::reqwest_blocking_request(theBuilder)?;
16997
16998        ::log::debug!("HTTP request: {:?}", &theRequest);
16999
17000        let theResponse = self.client.execute(theRequest)?;
17001
17002        ::log::debug!("HTTP response: {:?}", &theResponse);
17003
17004        Ok(theResponse)
17005    }
17006
17007    /// Cancel a workflow run
17008    /// 
17009    /// Cancels a workflow run using its `id`. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `actions:write` permission to use this endpoint.
17010    /// 
17011    /// [API method documentation](https://docs.github.com/rest/reference/actions#cancel-a-workflow-run)
17012    pub fn actions_cancel_workflow_run(
17013        &self,
17014        owner: &str,
17015        repo: &str,
17016        run_id: i64,
17017    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17018        let mut theScheme = AuthScheme::from(&self.config.authentication);
17019
17020        while let Some(auth_step) = theScheme.step()? {
17021            match auth_step {
17022                ::authentic::AuthenticationStep::Request(auth_request) => {
17023                    theScheme.respond(self.client.execute(auth_request));
17024                }
17025                ::authentic::AuthenticationStep::WaitFor(duration) => {
17026                    (self.sleep)(duration);
17027                }
17028            }
17029        }
17030        let theBuilder = crate::v1_1_4::request::actions_cancel_workflow_run::reqwest_blocking_builder(
17031            self.config.base_url.as_ref(),
17032            owner,
17033            repo,
17034            run_id,
17035            self.config.user_agent.as_ref(),
17036            self.config.accept.as_deref(),
17037        )?
17038        .with_authentication(&theScheme)?;
17039
17040        let theRequest =
17041            crate::v1_1_4::request::actions_cancel_workflow_run::reqwest_blocking_request(theBuilder)?;
17042
17043        ::log::debug!("HTTP request: {:?}", &theRequest);
17044
17045        let theResponse = self.client.execute(theRequest)?;
17046
17047        ::log::debug!("HTTP response: {:?}", &theResponse);
17048
17049        Ok(theResponse)
17050    }
17051
17052    /// List jobs for a workflow run
17053    /// 
17054    /// Lists jobs for a workflow run. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/rest/overview/resources-in-the-rest-api#parameters).
17055    /// 
17056    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-jobs-for-a-workflow-run)
17057    pub fn actions_list_jobs_for_workflow_run(
17058        &self,
17059        owner: &str,
17060        repo: &str,
17061        run_id: i64,
17062        filter: ::std::option::Option<&str>,
17063        per_page: ::std::option::Option<i64>,
17064        page: ::std::option::Option<i64>,
17065    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17066        let mut theScheme = AuthScheme::from(&self.config.authentication);
17067
17068        while let Some(auth_step) = theScheme.step()? {
17069            match auth_step {
17070                ::authentic::AuthenticationStep::Request(auth_request) => {
17071                    theScheme.respond(self.client.execute(auth_request));
17072                }
17073                ::authentic::AuthenticationStep::WaitFor(duration) => {
17074                    (self.sleep)(duration);
17075                }
17076            }
17077        }
17078        let theBuilder = crate::v1_1_4::request::actions_list_jobs_for_workflow_run::reqwest_blocking_builder(
17079            self.config.base_url.as_ref(),
17080            owner,
17081            repo,
17082            run_id,
17083            filter,
17084            per_page,
17085            page,
17086            self.config.user_agent.as_ref(),
17087            self.config.accept.as_deref(),
17088        )?
17089        .with_authentication(&theScheme)?;
17090
17091        let theRequest =
17092            crate::v1_1_4::request::actions_list_jobs_for_workflow_run::reqwest_blocking_request(theBuilder)?;
17093
17094        ::log::debug!("HTTP request: {:?}", &theRequest);
17095
17096        let theResponse = self.client.execute(theRequest)?;
17097
17098        ::log::debug!("HTTP response: {:?}", &theResponse);
17099
17100        Ok(theResponse)
17101    }
17102
17103    /// Download workflow run logs
17104    /// 
17105    /// Gets a redirect URL to download an archive of log files for a workflow run. This link expires after 1 minute. Look for
17106    /// `Location:` in the response header to find the URL for the download. Anyone with read access to the repository can use
17107    /// this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have
17108    /// the `actions:read` permission to use this endpoint.
17109    /// 
17110    /// [API method documentation](https://docs.github.com/rest/reference/actions#download-workflow-run-logs)
17111    pub fn actions_download_workflow_run_logs(
17112        &self,
17113        owner: &str,
17114        repo: &str,
17115        run_id: i64,
17116    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17117        let mut theScheme = AuthScheme::from(&self.config.authentication);
17118
17119        while let Some(auth_step) = theScheme.step()? {
17120            match auth_step {
17121                ::authentic::AuthenticationStep::Request(auth_request) => {
17122                    theScheme.respond(self.client.execute(auth_request));
17123                }
17124                ::authentic::AuthenticationStep::WaitFor(duration) => {
17125                    (self.sleep)(duration);
17126                }
17127            }
17128        }
17129        let theBuilder = crate::v1_1_4::request::actions_download_workflow_run_logs::reqwest_blocking_builder(
17130            self.config.base_url.as_ref(),
17131            owner,
17132            repo,
17133            run_id,
17134            self.config.user_agent.as_ref(),
17135            self.config.accept.as_deref(),
17136        )?
17137        .with_authentication(&theScheme)?;
17138
17139        let theRequest =
17140            crate::v1_1_4::request::actions_download_workflow_run_logs::reqwest_blocking_request(theBuilder)?;
17141
17142        ::log::debug!("HTTP request: {:?}", &theRequest);
17143
17144        let theResponse = self.client.execute(theRequest)?;
17145
17146        ::log::debug!("HTTP response: {:?}", &theResponse);
17147
17148        Ok(theResponse)
17149    }
17150
17151    /// Delete workflow run logs
17152    /// 
17153    /// Deletes all logs for a workflow run. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `actions:write` permission to use this endpoint.
17154    /// 
17155    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-workflow-run-logs)
17156    pub fn actions_delete_workflow_run_logs(
17157        &self,
17158        owner: &str,
17159        repo: &str,
17160        run_id: i64,
17161    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17162        let mut theScheme = AuthScheme::from(&self.config.authentication);
17163
17164        while let Some(auth_step) = theScheme.step()? {
17165            match auth_step {
17166                ::authentic::AuthenticationStep::Request(auth_request) => {
17167                    theScheme.respond(self.client.execute(auth_request));
17168                }
17169                ::authentic::AuthenticationStep::WaitFor(duration) => {
17170                    (self.sleep)(duration);
17171                }
17172            }
17173        }
17174        let theBuilder = crate::v1_1_4::request::actions_delete_workflow_run_logs::reqwest_blocking_builder(
17175            self.config.base_url.as_ref(),
17176            owner,
17177            repo,
17178            run_id,
17179            self.config.user_agent.as_ref(),
17180            self.config.accept.as_deref(),
17181        )?
17182        .with_authentication(&theScheme)?;
17183
17184        let theRequest =
17185            crate::v1_1_4::request::actions_delete_workflow_run_logs::reqwest_blocking_request(theBuilder)?;
17186
17187        ::log::debug!("HTTP request: {:?}", &theRequest);
17188
17189        let theResponse = self.client.execute(theRequest)?;
17190
17191        ::log::debug!("HTTP response: {:?}", &theResponse);
17192
17193        Ok(theResponse)
17194    }
17195
17196    /// Get pending deployments for a workflow run
17197    /// 
17198    /// Get all deployment environments for a workflow run that are waiting for protection rules to pass.
17199    /// 
17200    /// Anyone with read access to the repository can use this endpoint. If the repository is private, you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
17201    /// 
17202    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-pending-deployments-for-a-workflow-run)
17203    pub fn actions_get_pending_deployments_for_run(
17204        &self,
17205        owner: &str,
17206        repo: &str,
17207        run_id: i64,
17208    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17209        let mut theScheme = AuthScheme::from(&self.config.authentication);
17210
17211        while let Some(auth_step) = theScheme.step()? {
17212            match auth_step {
17213                ::authentic::AuthenticationStep::Request(auth_request) => {
17214                    theScheme.respond(self.client.execute(auth_request));
17215                }
17216                ::authentic::AuthenticationStep::WaitFor(duration) => {
17217                    (self.sleep)(duration);
17218                }
17219            }
17220        }
17221        let theBuilder = crate::v1_1_4::request::actions_get_pending_deployments_for_run::reqwest_blocking_builder(
17222            self.config.base_url.as_ref(),
17223            owner,
17224            repo,
17225            run_id,
17226            self.config.user_agent.as_ref(),
17227            self.config.accept.as_deref(),
17228        )?
17229        .with_authentication(&theScheme)?;
17230
17231        let theRequest =
17232            crate::v1_1_4::request::actions_get_pending_deployments_for_run::reqwest_blocking_request(theBuilder)?;
17233
17234        ::log::debug!("HTTP request: {:?}", &theRequest);
17235
17236        let theResponse = self.client.execute(theRequest)?;
17237
17238        ::log::debug!("HTTP response: {:?}", &theResponse);
17239
17240        Ok(theResponse)
17241    }
17242
17243    /// Review pending deployments for a workflow run
17244    /// 
17245    /// Approve or reject pending deployments that are waiting on approval by a required reviewer.
17246    /// 
17247    /// Anyone with read access to the repository contents and deployments can use this endpoint.
17248    /// 
17249    /// [API method documentation](https://docs.github.com/rest/reference/actions#review-pending-deployments-for-a-workflow-run)
17250    ///
17251    /// # Content
17252    ///
17253    /// - [`&v1_1_4::request::actions_review_pending_deployments_for_run::body::Json`](crate::v1_1_4::request::actions_review_pending_deployments_for_run::body::Json)
17254    pub fn actions_review_pending_deployments_for_run<Content>(
17255        &self,
17256        owner: &str,
17257        repo: &str,
17258        run_id: i64,
17259        theContent: Content,
17260    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
17261    where
17262        Content: Copy + TryInto<crate::v1_1_4::request::actions_review_pending_deployments_for_run::Content<::reqwest::blocking::Body>>,
17263        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_review_pending_deployments_for_run::Content<::reqwest::blocking::Body>>>::Error>
17264    {
17265        let mut theScheme = AuthScheme::from(&self.config.authentication);
17266
17267        while let Some(auth_step) = theScheme.step()? {
17268            match auth_step {
17269                ::authentic::AuthenticationStep::Request(auth_request) => {
17270                    theScheme.respond(self.client.execute(auth_request));
17271                }
17272                ::authentic::AuthenticationStep::WaitFor(duration) => {
17273                    (self.sleep)(duration);
17274                }
17275            }
17276        }
17277        let theBuilder = crate::v1_1_4::request::actions_review_pending_deployments_for_run::reqwest_blocking_builder(
17278            self.config.base_url.as_ref(),
17279            owner,
17280            repo,
17281            run_id,
17282            self.config.user_agent.as_ref(),
17283            self.config.accept.as_deref(),
17284        )?
17285        .with_authentication(&theScheme)?;
17286
17287        let theRequest = crate::v1_1_4::request::actions_review_pending_deployments_for_run::reqwest_blocking_request(
17288            theBuilder,
17289            theContent.try_into()?,
17290        )?;
17291
17292        ::log::debug!("HTTP request: {:?}", &theRequest);
17293
17294        let theResponse = self.client.execute(theRequest)?;
17295
17296        ::log::debug!("HTTP response: {:?}", &theResponse);
17297
17298        Ok(theResponse)
17299    }
17300
17301    /// Re-run a workflow
17302    /// 
17303    /// Re-runs your workflow run using its `id`. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `actions:write` permission to use this endpoint.
17304    /// 
17305    /// [API method documentation](https://docs.github.com/rest/reference/actions#re-run-a-workflow)
17306    pub fn actions_re_run_workflow(
17307        &self,
17308        owner: &str,
17309        repo: &str,
17310        run_id: i64,
17311    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17312        let mut theScheme = AuthScheme::from(&self.config.authentication);
17313
17314        while let Some(auth_step) = theScheme.step()? {
17315            match auth_step {
17316                ::authentic::AuthenticationStep::Request(auth_request) => {
17317                    theScheme.respond(self.client.execute(auth_request));
17318                }
17319                ::authentic::AuthenticationStep::WaitFor(duration) => {
17320                    (self.sleep)(duration);
17321                }
17322            }
17323        }
17324        let theBuilder = crate::v1_1_4::request::actions_re_run_workflow::reqwest_blocking_builder(
17325            self.config.base_url.as_ref(),
17326            owner,
17327            repo,
17328            run_id,
17329            self.config.user_agent.as_ref(),
17330            self.config.accept.as_deref(),
17331        )?
17332        .with_authentication(&theScheme)?;
17333
17334        let theRequest =
17335            crate::v1_1_4::request::actions_re_run_workflow::reqwest_blocking_request(theBuilder)?;
17336
17337        ::log::debug!("HTTP request: {:?}", &theRequest);
17338
17339        let theResponse = self.client.execute(theRequest)?;
17340
17341        ::log::debug!("HTTP response: {:?}", &theResponse);
17342
17343        Ok(theResponse)
17344    }
17345
17346    /// Re-run failed jobs from a workflow run
17347    /// 
17348    /// Re-run all of the failed jobs and their dependent jobs in a workflow run using the `id` of the workflow run. You must authenticate using an access token with the `repo` scope to use this endpoint.
17349    /// 
17350    /// [API method documentation](https://docs.github.com/rest/reference/actions#re-run-workflow-failed-jobs)
17351    pub fn actions_re_run_workflow_failed_jobs(
17352        &self,
17353        owner: &str,
17354        repo: &str,
17355        run_id: i64,
17356    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17357        let mut theScheme = AuthScheme::from(&self.config.authentication);
17358
17359        while let Some(auth_step) = theScheme.step()? {
17360            match auth_step {
17361                ::authentic::AuthenticationStep::Request(auth_request) => {
17362                    theScheme.respond(self.client.execute(auth_request));
17363                }
17364                ::authentic::AuthenticationStep::WaitFor(duration) => {
17365                    (self.sleep)(duration);
17366                }
17367            }
17368        }
17369        let theBuilder = crate::v1_1_4::request::actions_re_run_workflow_failed_jobs::reqwest_blocking_builder(
17370            self.config.base_url.as_ref(),
17371            owner,
17372            repo,
17373            run_id,
17374            self.config.user_agent.as_ref(),
17375            self.config.accept.as_deref(),
17376        )?
17377        .with_authentication(&theScheme)?;
17378
17379        let theRequest =
17380            crate::v1_1_4::request::actions_re_run_workflow_failed_jobs::reqwest_blocking_request(theBuilder)?;
17381
17382        ::log::debug!("HTTP request: {:?}", &theRequest);
17383
17384        let theResponse = self.client.execute(theRequest)?;
17385
17386        ::log::debug!("HTTP response: {:?}", &theResponse);
17387
17388        Ok(theResponse)
17389    }
17390
17391    /// Get workflow run usage
17392    /// 
17393    /// Gets the number of billable minutes and total run time for a specific workflow run. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)".
17394    /// 
17395    /// Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
17396    /// 
17397    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-workflow-run-usage)
17398    pub fn actions_get_workflow_run_usage(
17399        &self,
17400        owner: &str,
17401        repo: &str,
17402        run_id: i64,
17403    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17404        let mut theScheme = AuthScheme::from(&self.config.authentication);
17405
17406        while let Some(auth_step) = theScheme.step()? {
17407            match auth_step {
17408                ::authentic::AuthenticationStep::Request(auth_request) => {
17409                    theScheme.respond(self.client.execute(auth_request));
17410                }
17411                ::authentic::AuthenticationStep::WaitFor(duration) => {
17412                    (self.sleep)(duration);
17413                }
17414            }
17415        }
17416        let theBuilder = crate::v1_1_4::request::actions_get_workflow_run_usage::reqwest_blocking_builder(
17417            self.config.base_url.as_ref(),
17418            owner,
17419            repo,
17420            run_id,
17421            self.config.user_agent.as_ref(),
17422            self.config.accept.as_deref(),
17423        )?
17424        .with_authentication(&theScheme)?;
17425
17426        let theRequest =
17427            crate::v1_1_4::request::actions_get_workflow_run_usage::reqwest_blocking_request(theBuilder)?;
17428
17429        ::log::debug!("HTTP request: {:?}", &theRequest);
17430
17431        let theResponse = self.client.execute(theRequest)?;
17432
17433        ::log::debug!("HTTP response: {:?}", &theResponse);
17434
17435        Ok(theResponse)
17436    }
17437
17438    /// List repository secrets
17439    /// 
17440    /// Lists all secrets available in a repository without revealing their encrypted values. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `secrets` repository permission to use this endpoint.
17441    /// 
17442    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-repository-secrets)
17443    pub fn actions_list_repo_secrets(
17444        &self,
17445        owner: &str,
17446        repo: &str,
17447        per_page: ::std::option::Option<i64>,
17448        page: ::std::option::Option<i64>,
17449    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17450        let mut theScheme = AuthScheme::from(&self.config.authentication);
17451
17452        while let Some(auth_step) = theScheme.step()? {
17453            match auth_step {
17454                ::authentic::AuthenticationStep::Request(auth_request) => {
17455                    theScheme.respond(self.client.execute(auth_request));
17456                }
17457                ::authentic::AuthenticationStep::WaitFor(duration) => {
17458                    (self.sleep)(duration);
17459                }
17460            }
17461        }
17462        let theBuilder = crate::v1_1_4::request::actions_list_repo_secrets::reqwest_blocking_builder(
17463            self.config.base_url.as_ref(),
17464            owner,
17465            repo,
17466            per_page,
17467            page,
17468            self.config.user_agent.as_ref(),
17469            self.config.accept.as_deref(),
17470        )?
17471        .with_authentication(&theScheme)?;
17472
17473        let theRequest =
17474            crate::v1_1_4::request::actions_list_repo_secrets::reqwest_blocking_request(theBuilder)?;
17475
17476        ::log::debug!("HTTP request: {:?}", &theRequest);
17477
17478        let theResponse = self.client.execute(theRequest)?;
17479
17480        ::log::debug!("HTTP response: {:?}", &theResponse);
17481
17482        Ok(theResponse)
17483    }
17484
17485    /// Get a repository public key
17486    /// 
17487    /// Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `secrets` repository permission to use this endpoint.
17488    /// 
17489    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-repository-public-key)
17490    pub fn actions_get_repo_public_key(
17491        &self,
17492        owner: &str,
17493        repo: &str,
17494    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17495        let mut theScheme = AuthScheme::from(&self.config.authentication);
17496
17497        while let Some(auth_step) = theScheme.step()? {
17498            match auth_step {
17499                ::authentic::AuthenticationStep::Request(auth_request) => {
17500                    theScheme.respond(self.client.execute(auth_request));
17501                }
17502                ::authentic::AuthenticationStep::WaitFor(duration) => {
17503                    (self.sleep)(duration);
17504                }
17505            }
17506        }
17507        let theBuilder = crate::v1_1_4::request::actions_get_repo_public_key::reqwest_blocking_builder(
17508            self.config.base_url.as_ref(),
17509            owner,
17510            repo,
17511            self.config.user_agent.as_ref(),
17512            self.config.accept.as_deref(),
17513        )?
17514        .with_authentication(&theScheme)?;
17515
17516        let theRequest =
17517            crate::v1_1_4::request::actions_get_repo_public_key::reqwest_blocking_request(theBuilder)?;
17518
17519        ::log::debug!("HTTP request: {:?}", &theRequest);
17520
17521        let theResponse = self.client.execute(theRequest)?;
17522
17523        ::log::debug!("HTTP response: {:?}", &theResponse);
17524
17525        Ok(theResponse)
17526    }
17527
17528    /// Get a repository secret
17529    /// 
17530    /// Gets a single repository secret without revealing its encrypted value. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `secrets` repository permission to use this endpoint.
17531    /// 
17532    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-repository-secret)
17533    pub fn actions_get_repo_secret(
17534        &self,
17535        owner: &str,
17536        repo: &str,
17537        secret_name: &str,
17538    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17539        let mut theScheme = AuthScheme::from(&self.config.authentication);
17540
17541        while let Some(auth_step) = theScheme.step()? {
17542            match auth_step {
17543                ::authentic::AuthenticationStep::Request(auth_request) => {
17544                    theScheme.respond(self.client.execute(auth_request));
17545                }
17546                ::authentic::AuthenticationStep::WaitFor(duration) => {
17547                    (self.sleep)(duration);
17548                }
17549            }
17550        }
17551        let theBuilder = crate::v1_1_4::request::actions_get_repo_secret::reqwest_blocking_builder(
17552            self.config.base_url.as_ref(),
17553            owner,
17554            repo,
17555            secret_name,
17556            self.config.user_agent.as_ref(),
17557            self.config.accept.as_deref(),
17558        )?
17559        .with_authentication(&theScheme)?;
17560
17561        let theRequest =
17562            crate::v1_1_4::request::actions_get_repo_secret::reqwest_blocking_request(theBuilder)?;
17563
17564        ::log::debug!("HTTP request: {:?}", &theRequest);
17565
17566        let theResponse = self.client.execute(theRequest)?;
17567
17568        ::log::debug!("HTTP response: {:?}", &theResponse);
17569
17570        Ok(theResponse)
17571    }
17572
17573    /// Create or update a repository secret
17574    /// 
17575    /// Creates or updates a repository secret with an encrypted value. Encrypt your secret using
17576    /// [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages). You must authenticate using an access
17577    /// token with the `repo` scope to use this endpoint. GitHub Apps must have the `secrets` repository permission to use
17578    /// this endpoint.
17579    /// 
17580    /// #### Example encrypting a secret using Node.js
17581    /// 
17582    /// Encrypt your secret using the [tweetsodium](https://github.com/github/tweetsodium) library.
17583    /// 
17584    /// ```text
17585    /// const sodium = require('tweetsodium');
17586    /// 
17587    /// const key = "base64-encoded-public-key";
17588    /// const value = "plain-text-secret";
17589    /// 
17590    /// // Convert the message and key to Uint8Array's (Buffer implements that interface)
17591    /// const messageBytes = Buffer.from(value);
17592    /// const keyBytes = Buffer.from(key, 'base64');
17593    /// 
17594    /// // Encrypt using LibSodium.
17595    /// const encryptedBytes = sodium.seal(messageBytes, keyBytes);
17596    /// 
17597    /// // Base64 the encrypted secret
17598    /// const encrypted = Buffer.from(encryptedBytes).toString('base64');
17599    /// 
17600    /// console.log(encrypted);
17601    /// ```
17602    /// 
17603    /// 
17604    /// #### Example encrypting a secret using Python
17605    /// 
17606    /// Encrypt your secret using [pynacl](https://pynacl.readthedocs.io/en/latest/public/#nacl-public-sealedbox) with Python 3.
17607    /// 
17608    /// ```text
17609    /// from base64 import b64encode
17610    /// from nacl import encoding, public
17611    /// 
17612    /// def encrypt(public_key: str, secret_value: str) -> str:
17613    ///   """Encrypt a Unicode string using the public key."""
17614    ///   public_key = public.PublicKey(public_key.encode("utf-8"), encoding.Base64Encoder())
17615    ///   sealed_box = public.SealedBox(public_key)
17616    ///   encrypted = sealed_box.encrypt(secret_value.encode("utf-8"))
17617    ///   return b64encode(encrypted).decode("utf-8")
17618    /// ```
17619    /// 
17620    /// #### Example encrypting a secret using C#
17621    /// 
17622    /// Encrypt your secret using the [Sodium.Core](https://www.nuget.org/packages/Sodium.Core/) package.
17623    /// 
17624    /// ```text
17625    /// var secretValue = System.Text.Encoding.UTF8.GetBytes("mySecret");
17626    /// var publicKey = Convert.FromBase64String("2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=");
17627    /// 
17628    /// var sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);
17629    /// 
17630    /// Console.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));
17631    /// ```
17632    /// 
17633    /// #### Example encrypting a secret using Ruby
17634    /// 
17635    /// Encrypt your secret using the [rbnacl](https://github.com/RubyCrypto/rbnacl) gem.
17636    /// 
17637    /// ```ruby
17638    /// require "rbnacl"
17639    /// require "base64"
17640    /// 
17641    /// key = Base64.decode64("+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=")
17642    /// public_key = RbNaCl::PublicKey.new(key)
17643    /// 
17644    /// box = RbNaCl::Boxes::Sealed.from_public_key(public_key)
17645    /// encrypted_secret = box.encrypt("my_secret")
17646    /// 
17647    /// # Print the base64 encoded secret
17648    /// puts Base64.strict_encode64(encrypted_secret)
17649    /// ```
17650    /// 
17651    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-or-update-a-repository-secret)
17652    ///
17653    /// # Content
17654    ///
17655    /// - [`&v1_1_4::request::actions_create_or_update_repo_secret::body::Json`](crate::v1_1_4::request::actions_create_or_update_repo_secret::body::Json)
17656    pub fn actions_create_or_update_repo_secret<Content>(
17657        &self,
17658        owner: &str,
17659        repo: &str,
17660        secret_name: &str,
17661        theContent: Content,
17662    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
17663    where
17664        Content: Copy + TryInto<crate::v1_1_4::request::actions_create_or_update_repo_secret::Content<::reqwest::blocking::Body>>,
17665        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_create_or_update_repo_secret::Content<::reqwest::blocking::Body>>>::Error>
17666    {
17667        let mut theScheme = AuthScheme::from(&self.config.authentication);
17668
17669        while let Some(auth_step) = theScheme.step()? {
17670            match auth_step {
17671                ::authentic::AuthenticationStep::Request(auth_request) => {
17672                    theScheme.respond(self.client.execute(auth_request));
17673                }
17674                ::authentic::AuthenticationStep::WaitFor(duration) => {
17675                    (self.sleep)(duration);
17676                }
17677            }
17678        }
17679        let theBuilder = crate::v1_1_4::request::actions_create_or_update_repo_secret::reqwest_blocking_builder(
17680            self.config.base_url.as_ref(),
17681            owner,
17682            repo,
17683            secret_name,
17684            self.config.user_agent.as_ref(),
17685            self.config.accept.as_deref(),
17686        )?
17687        .with_authentication(&theScheme)?;
17688
17689        let theRequest = crate::v1_1_4::request::actions_create_or_update_repo_secret::reqwest_blocking_request(
17690            theBuilder,
17691            theContent.try_into()?,
17692        )?;
17693
17694        ::log::debug!("HTTP request: {:?}", &theRequest);
17695
17696        let theResponse = self.client.execute(theRequest)?;
17697
17698        ::log::debug!("HTTP response: {:?}", &theResponse);
17699
17700        Ok(theResponse)
17701    }
17702
17703    /// Delete a repository secret
17704    /// 
17705    /// Deletes a secret in a repository using the secret name. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `secrets` repository permission to use this endpoint.
17706    /// 
17707    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-a-repository-secret)
17708    pub fn actions_delete_repo_secret(
17709        &self,
17710        owner: &str,
17711        repo: &str,
17712        secret_name: &str,
17713    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17714        let mut theScheme = AuthScheme::from(&self.config.authentication);
17715
17716        while let Some(auth_step) = theScheme.step()? {
17717            match auth_step {
17718                ::authentic::AuthenticationStep::Request(auth_request) => {
17719                    theScheme.respond(self.client.execute(auth_request));
17720                }
17721                ::authentic::AuthenticationStep::WaitFor(duration) => {
17722                    (self.sleep)(duration);
17723                }
17724            }
17725        }
17726        let theBuilder = crate::v1_1_4::request::actions_delete_repo_secret::reqwest_blocking_builder(
17727            self.config.base_url.as_ref(),
17728            owner,
17729            repo,
17730            secret_name,
17731            self.config.user_agent.as_ref(),
17732            self.config.accept.as_deref(),
17733        )?
17734        .with_authentication(&theScheme)?;
17735
17736        let theRequest =
17737            crate::v1_1_4::request::actions_delete_repo_secret::reqwest_blocking_request(theBuilder)?;
17738
17739        ::log::debug!("HTTP request: {:?}", &theRequest);
17740
17741        let theResponse = self.client.execute(theRequest)?;
17742
17743        ::log::debug!("HTTP response: {:?}", &theResponse);
17744
17745        Ok(theResponse)
17746    }
17747
17748    /// List repository workflows
17749    /// 
17750    /// Lists the workflows in a repository. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
17751    /// 
17752    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-repository-workflows)
17753    pub fn actions_list_repo_workflows(
17754        &self,
17755        owner: &str,
17756        repo: &str,
17757        per_page: ::std::option::Option<i64>,
17758        page: ::std::option::Option<i64>,
17759    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17760        let mut theScheme = AuthScheme::from(&self.config.authentication);
17761
17762        while let Some(auth_step) = theScheme.step()? {
17763            match auth_step {
17764                ::authentic::AuthenticationStep::Request(auth_request) => {
17765                    theScheme.respond(self.client.execute(auth_request));
17766                }
17767                ::authentic::AuthenticationStep::WaitFor(duration) => {
17768                    (self.sleep)(duration);
17769                }
17770            }
17771        }
17772        let theBuilder = crate::v1_1_4::request::actions_list_repo_workflows::reqwest_blocking_builder(
17773            self.config.base_url.as_ref(),
17774            owner,
17775            repo,
17776            per_page,
17777            page,
17778            self.config.user_agent.as_ref(),
17779            self.config.accept.as_deref(),
17780        )?
17781        .with_authentication(&theScheme)?;
17782
17783        let theRequest =
17784            crate::v1_1_4::request::actions_list_repo_workflows::reqwest_blocking_request(theBuilder)?;
17785
17786        ::log::debug!("HTTP request: {:?}", &theRequest);
17787
17788        let theResponse = self.client.execute(theRequest)?;
17789
17790        ::log::debug!("HTTP response: {:?}", &theResponse);
17791
17792        Ok(theResponse)
17793    }
17794
17795    /// Get a workflow
17796    /// 
17797    /// Gets a specific workflow. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
17798    /// 
17799    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-a-workflow)
17800    pub fn actions_get_workflow(
17801        &self,
17802        owner: &str,
17803        repo: &str,
17804        workflow_id: &::serde_json::value::Value,
17805    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17806        let mut theScheme = AuthScheme::from(&self.config.authentication);
17807
17808        while let Some(auth_step) = theScheme.step()? {
17809            match auth_step {
17810                ::authentic::AuthenticationStep::Request(auth_request) => {
17811                    theScheme.respond(self.client.execute(auth_request));
17812                }
17813                ::authentic::AuthenticationStep::WaitFor(duration) => {
17814                    (self.sleep)(duration);
17815                }
17816            }
17817        }
17818        let theBuilder = crate::v1_1_4::request::actions_get_workflow::reqwest_blocking_builder(
17819            self.config.base_url.as_ref(),
17820            owner,
17821            repo,
17822            workflow_id,
17823            self.config.user_agent.as_ref(),
17824            self.config.accept.as_deref(),
17825        )?
17826        .with_authentication(&theScheme)?;
17827
17828        let theRequest =
17829            crate::v1_1_4::request::actions_get_workflow::reqwest_blocking_request(theBuilder)?;
17830
17831        ::log::debug!("HTTP request: {:?}", &theRequest);
17832
17833        let theResponse = self.client.execute(theRequest)?;
17834
17835        ::log::debug!("HTTP response: {:?}", &theResponse);
17836
17837        Ok(theResponse)
17838    }
17839
17840    /// Disable a workflow
17841    /// 
17842    /// Disables a workflow and sets the `state` of the workflow to `disabled_manually`. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`.
17843    /// 
17844    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `actions:write` permission to use this endpoint.
17845    /// 
17846    /// [API method documentation](https://docs.github.com/rest/reference/actions#disable-a-workflow)
17847    pub fn actions_disable_workflow(
17848        &self,
17849        owner: &str,
17850        repo: &str,
17851        workflow_id: &::serde_json::value::Value,
17852    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17853        let mut theScheme = AuthScheme::from(&self.config.authentication);
17854
17855        while let Some(auth_step) = theScheme.step()? {
17856            match auth_step {
17857                ::authentic::AuthenticationStep::Request(auth_request) => {
17858                    theScheme.respond(self.client.execute(auth_request));
17859                }
17860                ::authentic::AuthenticationStep::WaitFor(duration) => {
17861                    (self.sleep)(duration);
17862                }
17863            }
17864        }
17865        let theBuilder = crate::v1_1_4::request::actions_disable_workflow::reqwest_blocking_builder(
17866            self.config.base_url.as_ref(),
17867            owner,
17868            repo,
17869            workflow_id,
17870            self.config.user_agent.as_ref(),
17871            self.config.accept.as_deref(),
17872        )?
17873        .with_authentication(&theScheme)?;
17874
17875        let theRequest =
17876            crate::v1_1_4::request::actions_disable_workflow::reqwest_blocking_request(theBuilder)?;
17877
17878        ::log::debug!("HTTP request: {:?}", &theRequest);
17879
17880        let theResponse = self.client.execute(theRequest)?;
17881
17882        ::log::debug!("HTTP response: {:?}", &theResponse);
17883
17884        Ok(theResponse)
17885    }
17886
17887    /// Create a workflow dispatch event
17888    /// 
17889    /// You can use this endpoint to manually trigger a GitHub Actions workflow run. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`.
17890    /// 
17891    /// You must configure your GitHub Actions workflow to run when the [`workflow_dispatch` webhook](/developers/webhooks-and-events/webhook-events-and-payloads#workflow_dispatch) event occurs. The `inputs` are configured in the workflow file. For more information about how to configure the `workflow_dispatch` event in the workflow file, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows#workflow_dispatch)."
17892    /// 
17893    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `actions:write` permission to use this endpoint. For more information, see "[Creating a personal access token for the command line](https://docs.github.com/articles/creating-a-personal-access-token-for-the-command-line)."
17894    /// 
17895    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-a-workflow-dispatch-event)
17896    ///
17897    /// # Content
17898    ///
17899    /// - [`&v1_1_4::request::actions_create_workflow_dispatch::body::Json`](crate::v1_1_4::request::actions_create_workflow_dispatch::body::Json)
17900    pub fn actions_create_workflow_dispatch<Content>(
17901        &self,
17902        owner: &str,
17903        repo: &str,
17904        workflow_id: &::serde_json::value::Value,
17905        theContent: Content,
17906    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
17907    where
17908        Content: Copy + TryInto<crate::v1_1_4::request::actions_create_workflow_dispatch::Content<::reqwest::blocking::Body>>,
17909        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_create_workflow_dispatch::Content<::reqwest::blocking::Body>>>::Error>
17910    {
17911        let mut theScheme = AuthScheme::from(&self.config.authentication);
17912
17913        while let Some(auth_step) = theScheme.step()? {
17914            match auth_step {
17915                ::authentic::AuthenticationStep::Request(auth_request) => {
17916                    theScheme.respond(self.client.execute(auth_request));
17917                }
17918                ::authentic::AuthenticationStep::WaitFor(duration) => {
17919                    (self.sleep)(duration);
17920                }
17921            }
17922        }
17923        let theBuilder = crate::v1_1_4::request::actions_create_workflow_dispatch::reqwest_blocking_builder(
17924            self.config.base_url.as_ref(),
17925            owner,
17926            repo,
17927            workflow_id,
17928            self.config.user_agent.as_ref(),
17929            self.config.accept.as_deref(),
17930        )?
17931        .with_authentication(&theScheme)?;
17932
17933        let theRequest = crate::v1_1_4::request::actions_create_workflow_dispatch::reqwest_blocking_request(
17934            theBuilder,
17935            theContent.try_into()?,
17936        )?;
17937
17938        ::log::debug!("HTTP request: {:?}", &theRequest);
17939
17940        let theResponse = self.client.execute(theRequest)?;
17941
17942        ::log::debug!("HTTP response: {:?}", &theResponse);
17943
17944        Ok(theResponse)
17945    }
17946
17947    /// Enable a workflow
17948    /// 
17949    /// Enables a workflow and sets the `state` of the workflow to `active`. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`.
17950    /// 
17951    /// You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `actions:write` permission to use this endpoint.
17952    /// 
17953    /// [API method documentation](https://docs.github.com/rest/reference/actions#enable-a-workflow)
17954    pub fn actions_enable_workflow(
17955        &self,
17956        owner: &str,
17957        repo: &str,
17958        workflow_id: &::serde_json::value::Value,
17959    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
17960        let mut theScheme = AuthScheme::from(&self.config.authentication);
17961
17962        while let Some(auth_step) = theScheme.step()? {
17963            match auth_step {
17964                ::authentic::AuthenticationStep::Request(auth_request) => {
17965                    theScheme.respond(self.client.execute(auth_request));
17966                }
17967                ::authentic::AuthenticationStep::WaitFor(duration) => {
17968                    (self.sleep)(duration);
17969                }
17970            }
17971        }
17972        let theBuilder = crate::v1_1_4::request::actions_enable_workflow::reqwest_blocking_builder(
17973            self.config.base_url.as_ref(),
17974            owner,
17975            repo,
17976            workflow_id,
17977            self.config.user_agent.as_ref(),
17978            self.config.accept.as_deref(),
17979        )?
17980        .with_authentication(&theScheme)?;
17981
17982        let theRequest =
17983            crate::v1_1_4::request::actions_enable_workflow::reqwest_blocking_request(theBuilder)?;
17984
17985        ::log::debug!("HTTP request: {:?}", &theRequest);
17986
17987        let theResponse = self.client.execute(theRequest)?;
17988
17989        ::log::debug!("HTTP response: {:?}", &theResponse);
17990
17991        Ok(theResponse)
17992    }
17993
17994    /// List workflow runs
17995    /// 
17996    /// List all workflow runs for a workflow. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/rest/overview/resources-in-the-rest-api#parameters).
17997    /// 
17998    /// Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.
17999    /// 
18000    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-workflow-runs)
18001    #[allow(clippy::too_many_arguments)]
18002    pub fn actions_list_workflow_runs(
18003        &self,
18004        owner: &str,
18005        repo: &str,
18006        workflow_id: &::serde_json::value::Value,
18007        actor: ::std::option::Option<&str>,
18008        branch: ::std::option::Option<&str>,
18009        event: ::std::option::Option<&str>,
18010        status: ::std::option::Option<&str>,
18011        per_page: ::std::option::Option<i64>,
18012        page: ::std::option::Option<i64>,
18013        created: ::std::option::Option<&str>,
18014        exclude_pull_requests: ::std::option::Option<bool>,
18015        check_suite_id: ::std::option::Option<i64>,
18016    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18017        let mut theScheme = AuthScheme::from(&self.config.authentication);
18018
18019        while let Some(auth_step) = theScheme.step()? {
18020            match auth_step {
18021                ::authentic::AuthenticationStep::Request(auth_request) => {
18022                    theScheme.respond(self.client.execute(auth_request));
18023                }
18024                ::authentic::AuthenticationStep::WaitFor(duration) => {
18025                    (self.sleep)(duration);
18026                }
18027            }
18028        }
18029        let theBuilder = crate::v1_1_4::request::actions_list_workflow_runs::reqwest_blocking_builder(
18030            self.config.base_url.as_ref(),
18031            owner,
18032            repo,
18033            workflow_id,
18034            actor,
18035            branch,
18036            event,
18037            status,
18038            per_page,
18039            page,
18040            created,
18041            exclude_pull_requests,
18042            check_suite_id,
18043            self.config.user_agent.as_ref(),
18044            self.config.accept.as_deref(),
18045        )?
18046        .with_authentication(&theScheme)?;
18047
18048        let theRequest =
18049            crate::v1_1_4::request::actions_list_workflow_runs::reqwest_blocking_request(theBuilder)?;
18050
18051        ::log::debug!("HTTP request: {:?}", &theRequest);
18052
18053        let theResponse = self.client.execute(theRequest)?;
18054
18055        ::log::debug!("HTTP response: {:?}", &theResponse);
18056
18057        Ok(theResponse)
18058    }
18059
18060    /// Get workflow usage
18061    /// 
18062    /// Gets the number of billable minutes used by a specific workflow during the current billing cycle. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)".
18063    /// 
18064    /// You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
18065    /// 
18066    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-workflow-usage)
18067    pub fn actions_get_workflow_usage(
18068        &self,
18069        owner: &str,
18070        repo: &str,
18071        workflow_id: &::serde_json::value::Value,
18072    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18073        let mut theScheme = AuthScheme::from(&self.config.authentication);
18074
18075        while let Some(auth_step) = theScheme.step()? {
18076            match auth_step {
18077                ::authentic::AuthenticationStep::Request(auth_request) => {
18078                    theScheme.respond(self.client.execute(auth_request));
18079                }
18080                ::authentic::AuthenticationStep::WaitFor(duration) => {
18081                    (self.sleep)(duration);
18082                }
18083            }
18084        }
18085        let theBuilder = crate::v1_1_4::request::actions_get_workflow_usage::reqwest_blocking_builder(
18086            self.config.base_url.as_ref(),
18087            owner,
18088            repo,
18089            workflow_id,
18090            self.config.user_agent.as_ref(),
18091            self.config.accept.as_deref(),
18092        )?
18093        .with_authentication(&theScheme)?;
18094
18095        let theRequest =
18096            crate::v1_1_4::request::actions_get_workflow_usage::reqwest_blocking_request(theBuilder)?;
18097
18098        ::log::debug!("HTTP request: {:?}", &theRequest);
18099
18100        let theResponse = self.client.execute(theRequest)?;
18101
18102        ::log::debug!("HTTP response: {:?}", &theResponse);
18103
18104        Ok(theResponse)
18105    }
18106
18107    /// List assignees
18108    /// 
18109    /// Lists the [available assignees](https://docs.github.com/articles/assigning-issues-and-pull-requests-to-other-github-users/) for issues in a repository.
18110    /// 
18111    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-assignees)
18112    pub fn issues_list_assignees(
18113        &self,
18114        owner: &str,
18115        repo: &str,
18116        per_page: ::std::option::Option<i64>,
18117        page: ::std::option::Option<i64>,
18118    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18119        let mut theScheme = AuthScheme::from(&self.config.authentication);
18120
18121        while let Some(auth_step) = theScheme.step()? {
18122            match auth_step {
18123                ::authentic::AuthenticationStep::Request(auth_request) => {
18124                    theScheme.respond(self.client.execute(auth_request));
18125                }
18126                ::authentic::AuthenticationStep::WaitFor(duration) => {
18127                    (self.sleep)(duration);
18128                }
18129            }
18130        }
18131        let theBuilder = crate::v1_1_4::request::issues_list_assignees::reqwest_blocking_builder(
18132            self.config.base_url.as_ref(),
18133            owner,
18134            repo,
18135            per_page,
18136            page,
18137            self.config.user_agent.as_ref(),
18138            self.config.accept.as_deref(),
18139        )?
18140        .with_authentication(&theScheme)?;
18141
18142        let theRequest =
18143            crate::v1_1_4::request::issues_list_assignees::reqwest_blocking_request(theBuilder)?;
18144
18145        ::log::debug!("HTTP request: {:?}", &theRequest);
18146
18147        let theResponse = self.client.execute(theRequest)?;
18148
18149        ::log::debug!("HTTP response: {:?}", &theResponse);
18150
18151        Ok(theResponse)
18152    }
18153
18154    /// Check if a user can be assigned
18155    /// 
18156    /// Checks if a user has permission to be assigned to an issue in this repository.
18157    /// 
18158    /// If the `assignee` can be assigned to issues in the repository, a `204` header with no content is returned.
18159    /// 
18160    /// Otherwise a `404` status code is returned.
18161    /// 
18162    /// [API method documentation](https://docs.github.com/rest/reference/issues#check-if-a-user-can-be-assigned)
18163    pub fn issues_check_user_can_be_assigned(
18164        &self,
18165        owner: &str,
18166        repo: &str,
18167        assignee: &str,
18168    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18169        let mut theScheme = AuthScheme::from(&self.config.authentication);
18170
18171        while let Some(auth_step) = theScheme.step()? {
18172            match auth_step {
18173                ::authentic::AuthenticationStep::Request(auth_request) => {
18174                    theScheme.respond(self.client.execute(auth_request));
18175                }
18176                ::authentic::AuthenticationStep::WaitFor(duration) => {
18177                    (self.sleep)(duration);
18178                }
18179            }
18180        }
18181        let theBuilder = crate::v1_1_4::request::issues_check_user_can_be_assigned::reqwest_blocking_builder(
18182            self.config.base_url.as_ref(),
18183            owner,
18184            repo,
18185            assignee,
18186            self.config.user_agent.as_ref(),
18187            self.config.accept.as_deref(),
18188        )?
18189        .with_authentication(&theScheme)?;
18190
18191        let theRequest =
18192            crate::v1_1_4::request::issues_check_user_can_be_assigned::reqwest_blocking_request(theBuilder)?;
18193
18194        ::log::debug!("HTTP request: {:?}", &theRequest);
18195
18196        let theResponse = self.client.execute(theRequest)?;
18197
18198        ::log::debug!("HTTP response: {:?}", &theResponse);
18199
18200        Ok(theResponse)
18201    }
18202
18203    /// List all autolinks of a repository
18204    /// 
18205    /// This returns a list of autolinks configured for the given repository.
18206    /// 
18207    /// Information about autolinks are only available to repository administrators.
18208    /// 
18209    /// [API method documentation](https://docs.github.com/v3/repos#list-autolinks)
18210    pub fn repos_list_autolinks(
18211        &self,
18212        owner: &str,
18213        repo: &str,
18214        page: ::std::option::Option<i64>,
18215    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18216        let mut theScheme = AuthScheme::from(&self.config.authentication);
18217
18218        while let Some(auth_step) = theScheme.step()? {
18219            match auth_step {
18220                ::authentic::AuthenticationStep::Request(auth_request) => {
18221                    theScheme.respond(self.client.execute(auth_request));
18222                }
18223                ::authentic::AuthenticationStep::WaitFor(duration) => {
18224                    (self.sleep)(duration);
18225                }
18226            }
18227        }
18228        let theBuilder = crate::v1_1_4::request::repos_list_autolinks::reqwest_blocking_builder(
18229            self.config.base_url.as_ref(),
18230            owner,
18231            repo,
18232            page,
18233            self.config.user_agent.as_ref(),
18234            self.config.accept.as_deref(),
18235        )?
18236        .with_authentication(&theScheme)?;
18237
18238        let theRequest =
18239            crate::v1_1_4::request::repos_list_autolinks::reqwest_blocking_request(theBuilder)?;
18240
18241        ::log::debug!("HTTP request: {:?}", &theRequest);
18242
18243        let theResponse = self.client.execute(theRequest)?;
18244
18245        ::log::debug!("HTTP response: {:?}", &theResponse);
18246
18247        Ok(theResponse)
18248    }
18249
18250    /// Create an autolink reference for a repository
18251    /// 
18252    /// Users with admin access to the repository can create an autolink.
18253    /// 
18254    /// [API method documentation](https://docs.github.com/v3/repos#create-an-autolink)
18255    ///
18256    /// # Content
18257    ///
18258    /// - [`&v1_1_4::request::repos_create_autolink::body::Json`](crate::v1_1_4::request::repos_create_autolink::body::Json)
18259    pub fn repos_create_autolink<Content>(
18260        &self,
18261        owner: &str,
18262        repo: &str,
18263        theContent: Content,
18264    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
18265    where
18266        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_autolink::Content<::reqwest::blocking::Body>>,
18267        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_autolink::Content<::reqwest::blocking::Body>>>::Error>
18268    {
18269        let mut theScheme = AuthScheme::from(&self.config.authentication);
18270
18271        while let Some(auth_step) = theScheme.step()? {
18272            match auth_step {
18273                ::authentic::AuthenticationStep::Request(auth_request) => {
18274                    theScheme.respond(self.client.execute(auth_request));
18275                }
18276                ::authentic::AuthenticationStep::WaitFor(duration) => {
18277                    (self.sleep)(duration);
18278                }
18279            }
18280        }
18281        let theBuilder = crate::v1_1_4::request::repos_create_autolink::reqwest_blocking_builder(
18282            self.config.base_url.as_ref(),
18283            owner,
18284            repo,
18285            self.config.user_agent.as_ref(),
18286            self.config.accept.as_deref(),
18287        )?
18288        .with_authentication(&theScheme)?;
18289
18290        let theRequest = crate::v1_1_4::request::repos_create_autolink::reqwest_blocking_request(
18291            theBuilder,
18292            theContent.try_into()?,
18293        )?;
18294
18295        ::log::debug!("HTTP request: {:?}", &theRequest);
18296
18297        let theResponse = self.client.execute(theRequest)?;
18298
18299        ::log::debug!("HTTP response: {:?}", &theResponse);
18300
18301        Ok(theResponse)
18302    }
18303
18304    /// Get an autolink reference of a repository
18305    /// 
18306    /// This returns a single autolink reference by ID that was configured for the given repository.
18307    /// 
18308    /// Information about autolinks are only available to repository administrators.
18309    /// 
18310    /// [API method documentation](https://docs.github.com/v3/repos#get-autolink)
18311    pub fn repos_get_autolink(
18312        &self,
18313        owner: &str,
18314        repo: &str,
18315        autolink_id: i64,
18316    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18317        let mut theScheme = AuthScheme::from(&self.config.authentication);
18318
18319        while let Some(auth_step) = theScheme.step()? {
18320            match auth_step {
18321                ::authentic::AuthenticationStep::Request(auth_request) => {
18322                    theScheme.respond(self.client.execute(auth_request));
18323                }
18324                ::authentic::AuthenticationStep::WaitFor(duration) => {
18325                    (self.sleep)(duration);
18326                }
18327            }
18328        }
18329        let theBuilder = crate::v1_1_4::request::repos_get_autolink::reqwest_blocking_builder(
18330            self.config.base_url.as_ref(),
18331            owner,
18332            repo,
18333            autolink_id,
18334            self.config.user_agent.as_ref(),
18335            self.config.accept.as_deref(),
18336        )?
18337        .with_authentication(&theScheme)?;
18338
18339        let theRequest =
18340            crate::v1_1_4::request::repos_get_autolink::reqwest_blocking_request(theBuilder)?;
18341
18342        ::log::debug!("HTTP request: {:?}", &theRequest);
18343
18344        let theResponse = self.client.execute(theRequest)?;
18345
18346        ::log::debug!("HTTP response: {:?}", &theResponse);
18347
18348        Ok(theResponse)
18349    }
18350
18351    /// Delete an autolink reference from a repository
18352    /// 
18353    /// This deletes a single autolink reference by ID that was configured for the given repository.
18354    /// 
18355    /// Information about autolinks are only available to repository administrators.
18356    /// 
18357    /// [API method documentation](https://docs.github.com/v3/repos#delete-autolink)
18358    pub fn repos_delete_autolink(
18359        &self,
18360        owner: &str,
18361        repo: &str,
18362        autolink_id: i64,
18363    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18364        let mut theScheme = AuthScheme::from(&self.config.authentication);
18365
18366        while let Some(auth_step) = theScheme.step()? {
18367            match auth_step {
18368                ::authentic::AuthenticationStep::Request(auth_request) => {
18369                    theScheme.respond(self.client.execute(auth_request));
18370                }
18371                ::authentic::AuthenticationStep::WaitFor(duration) => {
18372                    (self.sleep)(duration);
18373                }
18374            }
18375        }
18376        let theBuilder = crate::v1_1_4::request::repos_delete_autolink::reqwest_blocking_builder(
18377            self.config.base_url.as_ref(),
18378            owner,
18379            repo,
18380            autolink_id,
18381            self.config.user_agent.as_ref(),
18382            self.config.accept.as_deref(),
18383        )?
18384        .with_authentication(&theScheme)?;
18385
18386        let theRequest =
18387            crate::v1_1_4::request::repos_delete_autolink::reqwest_blocking_request(theBuilder)?;
18388
18389        ::log::debug!("HTTP request: {:?}", &theRequest);
18390
18391        let theResponse = self.client.execute(theRequest)?;
18392
18393        ::log::debug!("HTTP response: {:?}", &theResponse);
18394
18395        Ok(theResponse)
18396    }
18397
18398    /// Enable automated security fixes
18399    /// 
18400    /// Enables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring automated security fixes](https://docs.github.com/en/articles/configuring-automated-security-fixes)".
18401    /// 
18402    /// [API method documentation](https://docs.github.com/rest/reference/repos#enable-automated-security-fixes)
18403    pub fn repos_enable_automated_security_fixes(
18404        &self,
18405        owner: &str,
18406        repo: &str,
18407    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18408        let mut theScheme = AuthScheme::from(&self.config.authentication);
18409
18410        while let Some(auth_step) = theScheme.step()? {
18411            match auth_step {
18412                ::authentic::AuthenticationStep::Request(auth_request) => {
18413                    theScheme.respond(self.client.execute(auth_request));
18414                }
18415                ::authentic::AuthenticationStep::WaitFor(duration) => {
18416                    (self.sleep)(duration);
18417                }
18418            }
18419        }
18420        let theBuilder = crate::v1_1_4::request::repos_enable_automated_security_fixes::reqwest_blocking_builder(
18421            self.config.base_url.as_ref(),
18422            owner,
18423            repo,
18424            self.config.user_agent.as_ref(),
18425            self.config.accept.as_deref(),
18426        )?
18427        .with_authentication(&theScheme)?;
18428
18429        let theRequest =
18430            crate::v1_1_4::request::repos_enable_automated_security_fixes::reqwest_blocking_request(theBuilder)?;
18431
18432        ::log::debug!("HTTP request: {:?}", &theRequest);
18433
18434        let theResponse = self.client.execute(theRequest)?;
18435
18436        ::log::debug!("HTTP response: {:?}", &theResponse);
18437
18438        Ok(theResponse)
18439    }
18440
18441    /// Disable automated security fixes
18442    /// 
18443    /// Disables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring automated security fixes](https://docs.github.com/en/articles/configuring-automated-security-fixes)".
18444    /// 
18445    /// [API method documentation](https://docs.github.com/rest/reference/repos#disable-automated-security-fixes)
18446    pub fn repos_disable_automated_security_fixes(
18447        &self,
18448        owner: &str,
18449        repo: &str,
18450    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18451        let mut theScheme = AuthScheme::from(&self.config.authentication);
18452
18453        while let Some(auth_step) = theScheme.step()? {
18454            match auth_step {
18455                ::authentic::AuthenticationStep::Request(auth_request) => {
18456                    theScheme.respond(self.client.execute(auth_request));
18457                }
18458                ::authentic::AuthenticationStep::WaitFor(duration) => {
18459                    (self.sleep)(duration);
18460                }
18461            }
18462        }
18463        let theBuilder = crate::v1_1_4::request::repos_disable_automated_security_fixes::reqwest_blocking_builder(
18464            self.config.base_url.as_ref(),
18465            owner,
18466            repo,
18467            self.config.user_agent.as_ref(),
18468            self.config.accept.as_deref(),
18469        )?
18470        .with_authentication(&theScheme)?;
18471
18472        let theRequest =
18473            crate::v1_1_4::request::repos_disable_automated_security_fixes::reqwest_blocking_request(theBuilder)?;
18474
18475        ::log::debug!("HTTP request: {:?}", &theRequest);
18476
18477        let theResponse = self.client.execute(theRequest)?;
18478
18479        ::log::debug!("HTTP response: {:?}", &theResponse);
18480
18481        Ok(theResponse)
18482    }
18483
18484    /// List branches
18485    /// 
18486    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-branches)
18487    pub fn repos_list_branches(
18488        &self,
18489        owner: &str,
18490        repo: &str,
18491        protected: ::std::option::Option<bool>,
18492        per_page: ::std::option::Option<i64>,
18493        page: ::std::option::Option<i64>,
18494    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18495        let mut theScheme = AuthScheme::from(&self.config.authentication);
18496
18497        while let Some(auth_step) = theScheme.step()? {
18498            match auth_step {
18499                ::authentic::AuthenticationStep::Request(auth_request) => {
18500                    theScheme.respond(self.client.execute(auth_request));
18501                }
18502                ::authentic::AuthenticationStep::WaitFor(duration) => {
18503                    (self.sleep)(duration);
18504                }
18505            }
18506        }
18507        let theBuilder = crate::v1_1_4::request::repos_list_branches::reqwest_blocking_builder(
18508            self.config.base_url.as_ref(),
18509            owner,
18510            repo,
18511            protected,
18512            per_page,
18513            page,
18514            self.config.user_agent.as_ref(),
18515            self.config.accept.as_deref(),
18516        )?
18517        .with_authentication(&theScheme)?;
18518
18519        let theRequest =
18520            crate::v1_1_4::request::repos_list_branches::reqwest_blocking_request(theBuilder)?;
18521
18522        ::log::debug!("HTTP request: {:?}", &theRequest);
18523
18524        let theResponse = self.client.execute(theRequest)?;
18525
18526        ::log::debug!("HTTP response: {:?}", &theResponse);
18527
18528        Ok(theResponse)
18529    }
18530
18531    /// Get a branch
18532    /// 
18533    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-branch)
18534    pub fn repos_get_branch(
18535        &self,
18536        owner: &str,
18537        repo: &str,
18538        branch: &str,
18539    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18540        let mut theScheme = AuthScheme::from(&self.config.authentication);
18541
18542        while let Some(auth_step) = theScheme.step()? {
18543            match auth_step {
18544                ::authentic::AuthenticationStep::Request(auth_request) => {
18545                    theScheme.respond(self.client.execute(auth_request));
18546                }
18547                ::authentic::AuthenticationStep::WaitFor(duration) => {
18548                    (self.sleep)(duration);
18549                }
18550            }
18551        }
18552        let theBuilder = crate::v1_1_4::request::repos_get_branch::reqwest_blocking_builder(
18553            self.config.base_url.as_ref(),
18554            owner,
18555            repo,
18556            branch,
18557            self.config.user_agent.as_ref(),
18558            self.config.accept.as_deref(),
18559        )?
18560        .with_authentication(&theScheme)?;
18561
18562        let theRequest =
18563            crate::v1_1_4::request::repos_get_branch::reqwest_blocking_request(theBuilder)?;
18564
18565        ::log::debug!("HTTP request: {:?}", &theRequest);
18566
18567        let theResponse = self.client.execute(theRequest)?;
18568
18569        ::log::debug!("HTTP response: {:?}", &theResponse);
18570
18571        Ok(theResponse)
18572    }
18573
18574    /// Get branch protection
18575    /// 
18576    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
18577    /// 
18578    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-branch-protection)
18579    pub fn repos_get_branch_protection(
18580        &self,
18581        owner: &str,
18582        repo: &str,
18583        branch: &str,
18584    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18585        let mut theScheme = AuthScheme::from(&self.config.authentication);
18586
18587        while let Some(auth_step) = theScheme.step()? {
18588            match auth_step {
18589                ::authentic::AuthenticationStep::Request(auth_request) => {
18590                    theScheme.respond(self.client.execute(auth_request));
18591                }
18592                ::authentic::AuthenticationStep::WaitFor(duration) => {
18593                    (self.sleep)(duration);
18594                }
18595            }
18596        }
18597        let theBuilder = crate::v1_1_4::request::repos_get_branch_protection::reqwest_blocking_builder(
18598            self.config.base_url.as_ref(),
18599            owner,
18600            repo,
18601            branch,
18602            self.config.user_agent.as_ref(),
18603            self.config.accept.as_deref(),
18604        )?
18605        .with_authentication(&theScheme)?;
18606
18607        let theRequest =
18608            crate::v1_1_4::request::repos_get_branch_protection::reqwest_blocking_request(theBuilder)?;
18609
18610        ::log::debug!("HTTP request: {:?}", &theRequest);
18611
18612        let theResponse = self.client.execute(theRequest)?;
18613
18614        ::log::debug!("HTTP response: {:?}", &theResponse);
18615
18616        Ok(theResponse)
18617    }
18618
18619    /// Update branch protection
18620    /// 
18621    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
18622    /// 
18623    /// Protecting a branch requires admin or owner permissions to the repository.
18624    /// 
18625    /// **Note**: Passing new arrays of `users` and `teams` replaces their previous values.
18626    /// 
18627    /// **Note**: The list of users, apps, and teams in total is limited to 100 items.
18628    /// 
18629    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-branch-protection)
18630    ///
18631    /// # Content
18632    ///
18633    /// - [`&v1_1_4::request::repos_update_branch_protection::body::Json`](crate::v1_1_4::request::repos_update_branch_protection::body::Json)
18634    pub fn repos_update_branch_protection<Content>(
18635        &self,
18636        owner: &str,
18637        repo: &str,
18638        branch: &str,
18639        theContent: Content,
18640    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
18641    where
18642        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_branch_protection::Content<::reqwest::blocking::Body>>,
18643        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_branch_protection::Content<::reqwest::blocking::Body>>>::Error>
18644    {
18645        let mut theScheme = AuthScheme::from(&self.config.authentication);
18646
18647        while let Some(auth_step) = theScheme.step()? {
18648            match auth_step {
18649                ::authentic::AuthenticationStep::Request(auth_request) => {
18650                    theScheme.respond(self.client.execute(auth_request));
18651                }
18652                ::authentic::AuthenticationStep::WaitFor(duration) => {
18653                    (self.sleep)(duration);
18654                }
18655            }
18656        }
18657        let theBuilder = crate::v1_1_4::request::repos_update_branch_protection::reqwest_blocking_builder(
18658            self.config.base_url.as_ref(),
18659            owner,
18660            repo,
18661            branch,
18662            self.config.user_agent.as_ref(),
18663            self.config.accept.as_deref(),
18664        )?
18665        .with_authentication(&theScheme)?;
18666
18667        let theRequest = crate::v1_1_4::request::repos_update_branch_protection::reqwest_blocking_request(
18668            theBuilder,
18669            theContent.try_into()?,
18670        )?;
18671
18672        ::log::debug!("HTTP request: {:?}", &theRequest);
18673
18674        let theResponse = self.client.execute(theRequest)?;
18675
18676        ::log::debug!("HTTP response: {:?}", &theResponse);
18677
18678        Ok(theResponse)
18679    }
18680
18681    /// Delete branch protection
18682    /// 
18683    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
18684    /// 
18685    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-branch-protection)
18686    pub fn repos_delete_branch_protection(
18687        &self,
18688        owner: &str,
18689        repo: &str,
18690        branch: &str,
18691    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18692        let mut theScheme = AuthScheme::from(&self.config.authentication);
18693
18694        while let Some(auth_step) = theScheme.step()? {
18695            match auth_step {
18696                ::authentic::AuthenticationStep::Request(auth_request) => {
18697                    theScheme.respond(self.client.execute(auth_request));
18698                }
18699                ::authentic::AuthenticationStep::WaitFor(duration) => {
18700                    (self.sleep)(duration);
18701                }
18702            }
18703        }
18704        let theBuilder = crate::v1_1_4::request::repos_delete_branch_protection::reqwest_blocking_builder(
18705            self.config.base_url.as_ref(),
18706            owner,
18707            repo,
18708            branch,
18709            self.config.user_agent.as_ref(),
18710            self.config.accept.as_deref(),
18711        )?
18712        .with_authentication(&theScheme)?;
18713
18714        let theRequest =
18715            crate::v1_1_4::request::repos_delete_branch_protection::reqwest_blocking_request(theBuilder)?;
18716
18717        ::log::debug!("HTTP request: {:?}", &theRequest);
18718
18719        let theResponse = self.client.execute(theRequest)?;
18720
18721        ::log::debug!("HTTP response: {:?}", &theResponse);
18722
18723        Ok(theResponse)
18724    }
18725
18726    /// Get admin branch protection
18727    /// 
18728    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
18729    /// 
18730    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-admin-branch-protection)
18731    pub fn repos_get_admin_branch_protection(
18732        &self,
18733        owner: &str,
18734        repo: &str,
18735        branch: &str,
18736    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18737        let mut theScheme = AuthScheme::from(&self.config.authentication);
18738
18739        while let Some(auth_step) = theScheme.step()? {
18740            match auth_step {
18741                ::authentic::AuthenticationStep::Request(auth_request) => {
18742                    theScheme.respond(self.client.execute(auth_request));
18743                }
18744                ::authentic::AuthenticationStep::WaitFor(duration) => {
18745                    (self.sleep)(duration);
18746                }
18747            }
18748        }
18749        let theBuilder = crate::v1_1_4::request::repos_get_admin_branch_protection::reqwest_blocking_builder(
18750            self.config.base_url.as_ref(),
18751            owner,
18752            repo,
18753            branch,
18754            self.config.user_agent.as_ref(),
18755            self.config.accept.as_deref(),
18756        )?
18757        .with_authentication(&theScheme)?;
18758
18759        let theRequest =
18760            crate::v1_1_4::request::repos_get_admin_branch_protection::reqwest_blocking_request(theBuilder)?;
18761
18762        ::log::debug!("HTTP request: {:?}", &theRequest);
18763
18764        let theResponse = self.client.execute(theRequest)?;
18765
18766        ::log::debug!("HTTP response: {:?}", &theResponse);
18767
18768        Ok(theResponse)
18769    }
18770
18771    /// Set admin branch protection
18772    /// 
18773    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
18774    /// 
18775    /// Adding admin enforcement requires admin or owner permissions to the repository and branch protection to be enabled.
18776    /// 
18777    /// [API method documentation](https://docs.github.com/rest/reference/repos#set-admin-branch-protection)
18778    pub fn repos_set_admin_branch_protection(
18779        &self,
18780        owner: &str,
18781        repo: &str,
18782        branch: &str,
18783    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18784        let mut theScheme = AuthScheme::from(&self.config.authentication);
18785
18786        while let Some(auth_step) = theScheme.step()? {
18787            match auth_step {
18788                ::authentic::AuthenticationStep::Request(auth_request) => {
18789                    theScheme.respond(self.client.execute(auth_request));
18790                }
18791                ::authentic::AuthenticationStep::WaitFor(duration) => {
18792                    (self.sleep)(duration);
18793                }
18794            }
18795        }
18796        let theBuilder = crate::v1_1_4::request::repos_set_admin_branch_protection::reqwest_blocking_builder(
18797            self.config.base_url.as_ref(),
18798            owner,
18799            repo,
18800            branch,
18801            self.config.user_agent.as_ref(),
18802            self.config.accept.as_deref(),
18803        )?
18804        .with_authentication(&theScheme)?;
18805
18806        let theRequest =
18807            crate::v1_1_4::request::repos_set_admin_branch_protection::reqwest_blocking_request(theBuilder)?;
18808
18809        ::log::debug!("HTTP request: {:?}", &theRequest);
18810
18811        let theResponse = self.client.execute(theRequest)?;
18812
18813        ::log::debug!("HTTP response: {:?}", &theResponse);
18814
18815        Ok(theResponse)
18816    }
18817
18818    /// Delete admin branch protection
18819    /// 
18820    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
18821    /// 
18822    /// Removing admin enforcement requires admin or owner permissions to the repository and branch protection to be enabled.
18823    /// 
18824    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-admin-branch-protection)
18825    pub fn repos_delete_admin_branch_protection(
18826        &self,
18827        owner: &str,
18828        repo: &str,
18829        branch: &str,
18830    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18831        let mut theScheme = AuthScheme::from(&self.config.authentication);
18832
18833        while let Some(auth_step) = theScheme.step()? {
18834            match auth_step {
18835                ::authentic::AuthenticationStep::Request(auth_request) => {
18836                    theScheme.respond(self.client.execute(auth_request));
18837                }
18838                ::authentic::AuthenticationStep::WaitFor(duration) => {
18839                    (self.sleep)(duration);
18840                }
18841            }
18842        }
18843        let theBuilder = crate::v1_1_4::request::repos_delete_admin_branch_protection::reqwest_blocking_builder(
18844            self.config.base_url.as_ref(),
18845            owner,
18846            repo,
18847            branch,
18848            self.config.user_agent.as_ref(),
18849            self.config.accept.as_deref(),
18850        )?
18851        .with_authentication(&theScheme)?;
18852
18853        let theRequest =
18854            crate::v1_1_4::request::repos_delete_admin_branch_protection::reqwest_blocking_request(theBuilder)?;
18855
18856        ::log::debug!("HTTP request: {:?}", &theRequest);
18857
18858        let theResponse = self.client.execute(theRequest)?;
18859
18860        ::log::debug!("HTTP response: {:?}", &theResponse);
18861
18862        Ok(theResponse)
18863    }
18864
18865    /// Get pull request review protection
18866    /// 
18867    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
18868    /// 
18869    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-pull-request-review-protection)
18870    pub fn repos_get_pull_request_review_protection(
18871        &self,
18872        owner: &str,
18873        repo: &str,
18874        branch: &str,
18875    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18876        let mut theScheme = AuthScheme::from(&self.config.authentication);
18877
18878        while let Some(auth_step) = theScheme.step()? {
18879            match auth_step {
18880                ::authentic::AuthenticationStep::Request(auth_request) => {
18881                    theScheme.respond(self.client.execute(auth_request));
18882                }
18883                ::authentic::AuthenticationStep::WaitFor(duration) => {
18884                    (self.sleep)(duration);
18885                }
18886            }
18887        }
18888        let theBuilder = crate::v1_1_4::request::repos_get_pull_request_review_protection::reqwest_blocking_builder(
18889            self.config.base_url.as_ref(),
18890            owner,
18891            repo,
18892            branch,
18893            self.config.user_agent.as_ref(),
18894            self.config.accept.as_deref(),
18895        )?
18896        .with_authentication(&theScheme)?;
18897
18898        let theRequest =
18899            crate::v1_1_4::request::repos_get_pull_request_review_protection::reqwest_blocking_request(theBuilder)?;
18900
18901        ::log::debug!("HTTP request: {:?}", &theRequest);
18902
18903        let theResponse = self.client.execute(theRequest)?;
18904
18905        ::log::debug!("HTTP response: {:?}", &theResponse);
18906
18907        Ok(theResponse)
18908    }
18909
18910    /// Delete pull request review protection
18911    /// 
18912    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
18913    /// 
18914    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-pull-request-review-protection)
18915    pub fn repos_delete_pull_request_review_protection(
18916        &self,
18917        owner: &str,
18918        repo: &str,
18919        branch: &str,
18920    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
18921        let mut theScheme = AuthScheme::from(&self.config.authentication);
18922
18923        while let Some(auth_step) = theScheme.step()? {
18924            match auth_step {
18925                ::authentic::AuthenticationStep::Request(auth_request) => {
18926                    theScheme.respond(self.client.execute(auth_request));
18927                }
18928                ::authentic::AuthenticationStep::WaitFor(duration) => {
18929                    (self.sleep)(duration);
18930                }
18931            }
18932        }
18933        let theBuilder = crate::v1_1_4::request::repos_delete_pull_request_review_protection::reqwest_blocking_builder(
18934            self.config.base_url.as_ref(),
18935            owner,
18936            repo,
18937            branch,
18938            self.config.user_agent.as_ref(),
18939            self.config.accept.as_deref(),
18940        )?
18941        .with_authentication(&theScheme)?;
18942
18943        let theRequest =
18944            crate::v1_1_4::request::repos_delete_pull_request_review_protection::reqwest_blocking_request(theBuilder)?;
18945
18946        ::log::debug!("HTTP request: {:?}", &theRequest);
18947
18948        let theResponse = self.client.execute(theRequest)?;
18949
18950        ::log::debug!("HTTP response: {:?}", &theResponse);
18951
18952        Ok(theResponse)
18953    }
18954
18955    /// Update pull request review protection
18956    /// 
18957    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
18958    /// 
18959    /// Updating pull request review enforcement requires admin or owner permissions to the repository and branch protection to be enabled.
18960    /// 
18961    /// **Note**: Passing new arrays of `users` and `teams` replaces their previous values.
18962    /// 
18963    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-pull-request-review-protection)
18964    ///
18965    /// # Content
18966    ///
18967    /// - [`&v1_1_4::request::repos_update_pull_request_review_protection::body::Json`](crate::v1_1_4::request::repos_update_pull_request_review_protection::body::Json)
18968    pub fn repos_update_pull_request_review_protection<Content>(
18969        &self,
18970        owner: &str,
18971        repo: &str,
18972        branch: &str,
18973        theContent: Content,
18974    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
18975    where
18976        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_pull_request_review_protection::Content<::reqwest::blocking::Body>>,
18977        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_pull_request_review_protection::Content<::reqwest::blocking::Body>>>::Error>
18978    {
18979        let mut theScheme = AuthScheme::from(&self.config.authentication);
18980
18981        while let Some(auth_step) = theScheme.step()? {
18982            match auth_step {
18983                ::authentic::AuthenticationStep::Request(auth_request) => {
18984                    theScheme.respond(self.client.execute(auth_request));
18985                }
18986                ::authentic::AuthenticationStep::WaitFor(duration) => {
18987                    (self.sleep)(duration);
18988                }
18989            }
18990        }
18991        let theBuilder = crate::v1_1_4::request::repos_update_pull_request_review_protection::reqwest_blocking_builder(
18992            self.config.base_url.as_ref(),
18993            owner,
18994            repo,
18995            branch,
18996            self.config.user_agent.as_ref(),
18997            self.config.accept.as_deref(),
18998        )?
18999        .with_authentication(&theScheme)?;
19000
19001        let theRequest = crate::v1_1_4::request::repos_update_pull_request_review_protection::reqwest_blocking_request(
19002            theBuilder,
19003            theContent.try_into()?,
19004        )?;
19005
19006        ::log::debug!("HTTP request: {:?}", &theRequest);
19007
19008        let theResponse = self.client.execute(theRequest)?;
19009
19010        ::log::debug!("HTTP response: {:?}", &theResponse);
19011
19012        Ok(theResponse)
19013    }
19014
19015    /// Get commit signature protection
19016    /// 
19017    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19018    /// 
19019    /// When authenticated with admin or owner permissions to the repository, you can use this endpoint to check whether a branch requires signed commits. An enabled status of `true` indicates you must sign commits on this branch. For more information, see [Signing commits with GPG](https://docs.github.com/articles/signing-commits-with-gpg) in GitHub Help.
19020    /// 
19021    /// **Note**: You must enable branch protection to require signed commits.
19022    /// 
19023    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-commit-signature-protection)
19024    pub fn repos_get_commit_signature_protection(
19025        &self,
19026        owner: &str,
19027        repo: &str,
19028        branch: &str,
19029    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19030        let mut theScheme = AuthScheme::from(&self.config.authentication);
19031
19032        while let Some(auth_step) = theScheme.step()? {
19033            match auth_step {
19034                ::authentic::AuthenticationStep::Request(auth_request) => {
19035                    theScheme.respond(self.client.execute(auth_request));
19036                }
19037                ::authentic::AuthenticationStep::WaitFor(duration) => {
19038                    (self.sleep)(duration);
19039                }
19040            }
19041        }
19042        let theBuilder = crate::v1_1_4::request::repos_get_commit_signature_protection::reqwest_blocking_builder(
19043            self.config.base_url.as_ref(),
19044            owner,
19045            repo,
19046            branch,
19047            self.config.user_agent.as_ref(),
19048            self.config.accept.as_deref(),
19049        )?
19050        .with_authentication(&theScheme)?;
19051
19052        let theRequest =
19053            crate::v1_1_4::request::repos_get_commit_signature_protection::reqwest_blocking_request(theBuilder)?;
19054
19055        ::log::debug!("HTTP request: {:?}", &theRequest);
19056
19057        let theResponse = self.client.execute(theRequest)?;
19058
19059        ::log::debug!("HTTP response: {:?}", &theResponse);
19060
19061        Ok(theResponse)
19062    }
19063
19064    /// Create commit signature protection
19065    /// 
19066    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19067    /// 
19068    /// When authenticated with admin or owner permissions to the repository, you can use this endpoint to require signed commits on a branch. You must enable branch protection to require signed commits.
19069    /// 
19070    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-commit-signature-protection)
19071    pub fn repos_create_commit_signature_protection(
19072        &self,
19073        owner: &str,
19074        repo: &str,
19075        branch: &str,
19076    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19077        let mut theScheme = AuthScheme::from(&self.config.authentication);
19078
19079        while let Some(auth_step) = theScheme.step()? {
19080            match auth_step {
19081                ::authentic::AuthenticationStep::Request(auth_request) => {
19082                    theScheme.respond(self.client.execute(auth_request));
19083                }
19084                ::authentic::AuthenticationStep::WaitFor(duration) => {
19085                    (self.sleep)(duration);
19086                }
19087            }
19088        }
19089        let theBuilder = crate::v1_1_4::request::repos_create_commit_signature_protection::reqwest_blocking_builder(
19090            self.config.base_url.as_ref(),
19091            owner,
19092            repo,
19093            branch,
19094            self.config.user_agent.as_ref(),
19095            self.config.accept.as_deref(),
19096        )?
19097        .with_authentication(&theScheme)?;
19098
19099        let theRequest =
19100            crate::v1_1_4::request::repos_create_commit_signature_protection::reqwest_blocking_request(theBuilder)?;
19101
19102        ::log::debug!("HTTP request: {:?}", &theRequest);
19103
19104        let theResponse = self.client.execute(theRequest)?;
19105
19106        ::log::debug!("HTTP response: {:?}", &theResponse);
19107
19108        Ok(theResponse)
19109    }
19110
19111    /// Delete commit signature protection
19112    /// 
19113    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19114    /// 
19115    /// When authenticated with admin or owner permissions to the repository, you can use this endpoint to disable required signed commits on a branch. You must enable branch protection to require signed commits.
19116    /// 
19117    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-commit-signature-protection)
19118    pub fn repos_delete_commit_signature_protection(
19119        &self,
19120        owner: &str,
19121        repo: &str,
19122        branch: &str,
19123    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19124        let mut theScheme = AuthScheme::from(&self.config.authentication);
19125
19126        while let Some(auth_step) = theScheme.step()? {
19127            match auth_step {
19128                ::authentic::AuthenticationStep::Request(auth_request) => {
19129                    theScheme.respond(self.client.execute(auth_request));
19130                }
19131                ::authentic::AuthenticationStep::WaitFor(duration) => {
19132                    (self.sleep)(duration);
19133                }
19134            }
19135        }
19136        let theBuilder = crate::v1_1_4::request::repos_delete_commit_signature_protection::reqwest_blocking_builder(
19137            self.config.base_url.as_ref(),
19138            owner,
19139            repo,
19140            branch,
19141            self.config.user_agent.as_ref(),
19142            self.config.accept.as_deref(),
19143        )?
19144        .with_authentication(&theScheme)?;
19145
19146        let theRequest =
19147            crate::v1_1_4::request::repos_delete_commit_signature_protection::reqwest_blocking_request(theBuilder)?;
19148
19149        ::log::debug!("HTTP request: {:?}", &theRequest);
19150
19151        let theResponse = self.client.execute(theRequest)?;
19152
19153        ::log::debug!("HTTP response: {:?}", &theResponse);
19154
19155        Ok(theResponse)
19156    }
19157
19158    /// Get status checks protection
19159    /// 
19160    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19161    /// 
19162    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-status-checks-protection)
19163    pub fn repos_get_status_checks_protection(
19164        &self,
19165        owner: &str,
19166        repo: &str,
19167        branch: &str,
19168    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19169        let mut theScheme = AuthScheme::from(&self.config.authentication);
19170
19171        while let Some(auth_step) = theScheme.step()? {
19172            match auth_step {
19173                ::authentic::AuthenticationStep::Request(auth_request) => {
19174                    theScheme.respond(self.client.execute(auth_request));
19175                }
19176                ::authentic::AuthenticationStep::WaitFor(duration) => {
19177                    (self.sleep)(duration);
19178                }
19179            }
19180        }
19181        let theBuilder = crate::v1_1_4::request::repos_get_status_checks_protection::reqwest_blocking_builder(
19182            self.config.base_url.as_ref(),
19183            owner,
19184            repo,
19185            branch,
19186            self.config.user_agent.as_ref(),
19187            self.config.accept.as_deref(),
19188        )?
19189        .with_authentication(&theScheme)?;
19190
19191        let theRequest =
19192            crate::v1_1_4::request::repos_get_status_checks_protection::reqwest_blocking_request(theBuilder)?;
19193
19194        ::log::debug!("HTTP request: {:?}", &theRequest);
19195
19196        let theResponse = self.client.execute(theRequest)?;
19197
19198        ::log::debug!("HTTP response: {:?}", &theResponse);
19199
19200        Ok(theResponse)
19201    }
19202
19203    /// Remove status check protection
19204    /// 
19205    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19206    /// 
19207    /// [API method documentation](https://docs.github.com/rest/reference/repos#remove-status-check-protection)
19208    pub fn repos_remove_status_check_protection(
19209        &self,
19210        owner: &str,
19211        repo: &str,
19212        branch: &str,
19213    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19214        let mut theScheme = AuthScheme::from(&self.config.authentication);
19215
19216        while let Some(auth_step) = theScheme.step()? {
19217            match auth_step {
19218                ::authentic::AuthenticationStep::Request(auth_request) => {
19219                    theScheme.respond(self.client.execute(auth_request));
19220                }
19221                ::authentic::AuthenticationStep::WaitFor(duration) => {
19222                    (self.sleep)(duration);
19223                }
19224            }
19225        }
19226        let theBuilder = crate::v1_1_4::request::repos_remove_status_check_protection::reqwest_blocking_builder(
19227            self.config.base_url.as_ref(),
19228            owner,
19229            repo,
19230            branch,
19231            self.config.user_agent.as_ref(),
19232            self.config.accept.as_deref(),
19233        )?
19234        .with_authentication(&theScheme)?;
19235
19236        let theRequest =
19237            crate::v1_1_4::request::repos_remove_status_check_protection::reqwest_blocking_request(theBuilder)?;
19238
19239        ::log::debug!("HTTP request: {:?}", &theRequest);
19240
19241        let theResponse = self.client.execute(theRequest)?;
19242
19243        ::log::debug!("HTTP response: {:?}", &theResponse);
19244
19245        Ok(theResponse)
19246    }
19247
19248    /// Update status check protection
19249    /// 
19250    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19251    /// 
19252    /// Updating required status checks requires admin or owner permissions to the repository and branch protection to be enabled.
19253    /// 
19254    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-status-check-protection)
19255    ///
19256    /// # Content
19257    ///
19258    /// - [`&v1_1_4::request::repos_update_status_check_protection::body::Json`](crate::v1_1_4::request::repos_update_status_check_protection::body::Json)
19259    pub fn repos_update_status_check_protection<Content>(
19260        &self,
19261        owner: &str,
19262        repo: &str,
19263        branch: &str,
19264        theContent: Content,
19265    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
19266    where
19267        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_status_check_protection::Content<::reqwest::blocking::Body>>,
19268        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_status_check_protection::Content<::reqwest::blocking::Body>>>::Error>
19269    {
19270        let mut theScheme = AuthScheme::from(&self.config.authentication);
19271
19272        while let Some(auth_step) = theScheme.step()? {
19273            match auth_step {
19274                ::authentic::AuthenticationStep::Request(auth_request) => {
19275                    theScheme.respond(self.client.execute(auth_request));
19276                }
19277                ::authentic::AuthenticationStep::WaitFor(duration) => {
19278                    (self.sleep)(duration);
19279                }
19280            }
19281        }
19282        let theBuilder = crate::v1_1_4::request::repos_update_status_check_protection::reqwest_blocking_builder(
19283            self.config.base_url.as_ref(),
19284            owner,
19285            repo,
19286            branch,
19287            self.config.user_agent.as_ref(),
19288            self.config.accept.as_deref(),
19289        )?
19290        .with_authentication(&theScheme)?;
19291
19292        let theRequest = crate::v1_1_4::request::repos_update_status_check_protection::reqwest_blocking_request(
19293            theBuilder,
19294            theContent.try_into()?,
19295        )?;
19296
19297        ::log::debug!("HTTP request: {:?}", &theRequest);
19298
19299        let theResponse = self.client.execute(theRequest)?;
19300
19301        ::log::debug!("HTTP response: {:?}", &theResponse);
19302
19303        Ok(theResponse)
19304    }
19305
19306    /// Get all status check contexts
19307    /// 
19308    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19309    /// 
19310    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-all-status-check-contexts)
19311    pub fn repos_get_all_status_check_contexts(
19312        &self,
19313        owner: &str,
19314        repo: &str,
19315        branch: &str,
19316    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19317        let mut theScheme = AuthScheme::from(&self.config.authentication);
19318
19319        while let Some(auth_step) = theScheme.step()? {
19320            match auth_step {
19321                ::authentic::AuthenticationStep::Request(auth_request) => {
19322                    theScheme.respond(self.client.execute(auth_request));
19323                }
19324                ::authentic::AuthenticationStep::WaitFor(duration) => {
19325                    (self.sleep)(duration);
19326                }
19327            }
19328        }
19329        let theBuilder = crate::v1_1_4::request::repos_get_all_status_check_contexts::reqwest_blocking_builder(
19330            self.config.base_url.as_ref(),
19331            owner,
19332            repo,
19333            branch,
19334            self.config.user_agent.as_ref(),
19335            self.config.accept.as_deref(),
19336        )?
19337        .with_authentication(&theScheme)?;
19338
19339        let theRequest =
19340            crate::v1_1_4::request::repos_get_all_status_check_contexts::reqwest_blocking_request(theBuilder)?;
19341
19342        ::log::debug!("HTTP request: {:?}", &theRequest);
19343
19344        let theResponse = self.client.execute(theRequest)?;
19345
19346        ::log::debug!("HTTP response: {:?}", &theResponse);
19347
19348        Ok(theResponse)
19349    }
19350
19351    /// Set status check contexts
19352    /// 
19353    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19354    /// 
19355    /// [API method documentation](https://docs.github.com/rest/reference/repos#set-status-check-contexts)
19356    ///
19357    /// # Content
19358    ///
19359    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
19360    pub fn repos_set_status_check_contexts<Content>(
19361        &self,
19362        owner: &str,
19363        repo: &str,
19364        branch: &str,
19365        theContent: Content,
19366    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
19367    where
19368        Content: Copy + TryInto<crate::v1_1_4::request::repos_set_status_check_contexts::Content<::reqwest::blocking::Body>>,
19369        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_set_status_check_contexts::Content<::reqwest::blocking::Body>>>::Error>
19370    {
19371        let mut theScheme = AuthScheme::from(&self.config.authentication);
19372
19373        while let Some(auth_step) = theScheme.step()? {
19374            match auth_step {
19375                ::authentic::AuthenticationStep::Request(auth_request) => {
19376                    theScheme.respond(self.client.execute(auth_request));
19377                }
19378                ::authentic::AuthenticationStep::WaitFor(duration) => {
19379                    (self.sleep)(duration);
19380                }
19381            }
19382        }
19383        let theBuilder = crate::v1_1_4::request::repos_set_status_check_contexts::reqwest_blocking_builder(
19384            self.config.base_url.as_ref(),
19385            owner,
19386            repo,
19387            branch,
19388            self.config.user_agent.as_ref(),
19389            self.config.accept.as_deref(),
19390        )?
19391        .with_authentication(&theScheme)?;
19392
19393        let theRequest = crate::v1_1_4::request::repos_set_status_check_contexts::reqwest_blocking_request(
19394            theBuilder,
19395            theContent.try_into()?,
19396        )?;
19397
19398        ::log::debug!("HTTP request: {:?}", &theRequest);
19399
19400        let theResponse = self.client.execute(theRequest)?;
19401
19402        ::log::debug!("HTTP response: {:?}", &theResponse);
19403
19404        Ok(theResponse)
19405    }
19406
19407    /// Add status check contexts
19408    /// 
19409    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19410    /// 
19411    /// [API method documentation](https://docs.github.com/rest/reference/repos#add-status-check-contexts)
19412    ///
19413    /// # Content
19414    ///
19415    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
19416    pub fn repos_add_status_check_contexts<Content>(
19417        &self,
19418        owner: &str,
19419        repo: &str,
19420        branch: &str,
19421        theContent: Content,
19422    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
19423    where
19424        Content: Copy + TryInto<crate::v1_1_4::request::repos_add_status_check_contexts::Content<::reqwest::blocking::Body>>,
19425        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_add_status_check_contexts::Content<::reqwest::blocking::Body>>>::Error>
19426    {
19427        let mut theScheme = AuthScheme::from(&self.config.authentication);
19428
19429        while let Some(auth_step) = theScheme.step()? {
19430            match auth_step {
19431                ::authentic::AuthenticationStep::Request(auth_request) => {
19432                    theScheme.respond(self.client.execute(auth_request));
19433                }
19434                ::authentic::AuthenticationStep::WaitFor(duration) => {
19435                    (self.sleep)(duration);
19436                }
19437            }
19438        }
19439        let theBuilder = crate::v1_1_4::request::repos_add_status_check_contexts::reqwest_blocking_builder(
19440            self.config.base_url.as_ref(),
19441            owner,
19442            repo,
19443            branch,
19444            self.config.user_agent.as_ref(),
19445            self.config.accept.as_deref(),
19446        )?
19447        .with_authentication(&theScheme)?;
19448
19449        let theRequest = crate::v1_1_4::request::repos_add_status_check_contexts::reqwest_blocking_request(
19450            theBuilder,
19451            theContent.try_into()?,
19452        )?;
19453
19454        ::log::debug!("HTTP request: {:?}", &theRequest);
19455
19456        let theResponse = self.client.execute(theRequest)?;
19457
19458        ::log::debug!("HTTP response: {:?}", &theResponse);
19459
19460        Ok(theResponse)
19461    }
19462
19463    /// Remove status check contexts
19464    /// 
19465    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19466    /// 
19467    /// [API method documentation](https://docs.github.com/rest/reference/repos#remove-status-check-contexts)
19468    ///
19469    /// # Content
19470    ///
19471    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
19472    pub fn repos_remove_status_check_contexts<Content>(
19473        &self,
19474        owner: &str,
19475        repo: &str,
19476        branch: &str,
19477        theContent: Content,
19478    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
19479    where
19480        Content: Copy + TryInto<crate::v1_1_4::request::repos_remove_status_check_contexts::Content<::reqwest::blocking::Body>>,
19481        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_remove_status_check_contexts::Content<::reqwest::blocking::Body>>>::Error>
19482    {
19483        let mut theScheme = AuthScheme::from(&self.config.authentication);
19484
19485        while let Some(auth_step) = theScheme.step()? {
19486            match auth_step {
19487                ::authentic::AuthenticationStep::Request(auth_request) => {
19488                    theScheme.respond(self.client.execute(auth_request));
19489                }
19490                ::authentic::AuthenticationStep::WaitFor(duration) => {
19491                    (self.sleep)(duration);
19492                }
19493            }
19494        }
19495        let theBuilder = crate::v1_1_4::request::repos_remove_status_check_contexts::reqwest_blocking_builder(
19496            self.config.base_url.as_ref(),
19497            owner,
19498            repo,
19499            branch,
19500            self.config.user_agent.as_ref(),
19501            self.config.accept.as_deref(),
19502        )?
19503        .with_authentication(&theScheme)?;
19504
19505        let theRequest = crate::v1_1_4::request::repos_remove_status_check_contexts::reqwest_blocking_request(
19506            theBuilder,
19507            theContent.try_into()?,
19508        )?;
19509
19510        ::log::debug!("HTTP request: {:?}", &theRequest);
19511
19512        let theResponse = self.client.execute(theRequest)?;
19513
19514        ::log::debug!("HTTP response: {:?}", &theResponse);
19515
19516        Ok(theResponse)
19517    }
19518
19519    /// Get access restrictions
19520    /// 
19521    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19522    /// 
19523    /// Lists who has access to this protected branch.
19524    /// 
19525    /// **Note**: Users, apps, and teams `restrictions` are only available for organization-owned repositories.
19526    /// 
19527    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-access-restrictions)
19528    pub fn repos_get_access_restrictions(
19529        &self,
19530        owner: &str,
19531        repo: &str,
19532        branch: &str,
19533    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19534        let mut theScheme = AuthScheme::from(&self.config.authentication);
19535
19536        while let Some(auth_step) = theScheme.step()? {
19537            match auth_step {
19538                ::authentic::AuthenticationStep::Request(auth_request) => {
19539                    theScheme.respond(self.client.execute(auth_request));
19540                }
19541                ::authentic::AuthenticationStep::WaitFor(duration) => {
19542                    (self.sleep)(duration);
19543                }
19544            }
19545        }
19546        let theBuilder = crate::v1_1_4::request::repos_get_access_restrictions::reqwest_blocking_builder(
19547            self.config.base_url.as_ref(),
19548            owner,
19549            repo,
19550            branch,
19551            self.config.user_agent.as_ref(),
19552            self.config.accept.as_deref(),
19553        )?
19554        .with_authentication(&theScheme)?;
19555
19556        let theRequest =
19557            crate::v1_1_4::request::repos_get_access_restrictions::reqwest_blocking_request(theBuilder)?;
19558
19559        ::log::debug!("HTTP request: {:?}", &theRequest);
19560
19561        let theResponse = self.client.execute(theRequest)?;
19562
19563        ::log::debug!("HTTP response: {:?}", &theResponse);
19564
19565        Ok(theResponse)
19566    }
19567
19568    /// Delete access restrictions
19569    /// 
19570    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19571    /// 
19572    /// Disables the ability to restrict who can push to this branch.
19573    /// 
19574    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-access-restrictions)
19575    pub fn repos_delete_access_restrictions(
19576        &self,
19577        owner: &str,
19578        repo: &str,
19579        branch: &str,
19580    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19581        let mut theScheme = AuthScheme::from(&self.config.authentication);
19582
19583        while let Some(auth_step) = theScheme.step()? {
19584            match auth_step {
19585                ::authentic::AuthenticationStep::Request(auth_request) => {
19586                    theScheme.respond(self.client.execute(auth_request));
19587                }
19588                ::authentic::AuthenticationStep::WaitFor(duration) => {
19589                    (self.sleep)(duration);
19590                }
19591            }
19592        }
19593        let theBuilder = crate::v1_1_4::request::repos_delete_access_restrictions::reqwest_blocking_builder(
19594            self.config.base_url.as_ref(),
19595            owner,
19596            repo,
19597            branch,
19598            self.config.user_agent.as_ref(),
19599            self.config.accept.as_deref(),
19600        )?
19601        .with_authentication(&theScheme)?;
19602
19603        let theRequest =
19604            crate::v1_1_4::request::repos_delete_access_restrictions::reqwest_blocking_request(theBuilder)?;
19605
19606        ::log::debug!("HTTP request: {:?}", &theRequest);
19607
19608        let theResponse = self.client.execute(theRequest)?;
19609
19610        ::log::debug!("HTTP response: {:?}", &theResponse);
19611
19612        Ok(theResponse)
19613    }
19614
19615    /// Get apps with access to the protected branch
19616    /// 
19617    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19618    /// 
19619    /// Lists the GitHub Apps that have push access to this branch. Only installed GitHub Apps with `write` access to the `contents` permission can be added as authorized actors on a protected branch.
19620    /// 
19621    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-apps-with-access-to-the-protected-branch)
19622    pub fn repos_get_apps_with_access_to_protected_branch(
19623        &self,
19624        owner: &str,
19625        repo: &str,
19626        branch: &str,
19627    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19628        let mut theScheme = AuthScheme::from(&self.config.authentication);
19629
19630        while let Some(auth_step) = theScheme.step()? {
19631            match auth_step {
19632                ::authentic::AuthenticationStep::Request(auth_request) => {
19633                    theScheme.respond(self.client.execute(auth_request));
19634                }
19635                ::authentic::AuthenticationStep::WaitFor(duration) => {
19636                    (self.sleep)(duration);
19637                }
19638            }
19639        }
19640        let theBuilder = crate::v1_1_4::request::repos_get_apps_with_access_to_protected_branch::reqwest_blocking_builder(
19641            self.config.base_url.as_ref(),
19642            owner,
19643            repo,
19644            branch,
19645            self.config.user_agent.as_ref(),
19646            self.config.accept.as_deref(),
19647        )?
19648        .with_authentication(&theScheme)?;
19649
19650        let theRequest =
19651            crate::v1_1_4::request::repos_get_apps_with_access_to_protected_branch::reqwest_blocking_request(theBuilder)?;
19652
19653        ::log::debug!("HTTP request: {:?}", &theRequest);
19654
19655        let theResponse = self.client.execute(theRequest)?;
19656
19657        ::log::debug!("HTTP response: {:?}", &theResponse);
19658
19659        Ok(theResponse)
19660    }
19661
19662    /// Set app access restrictions
19663    /// 
19664    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19665    /// 
19666    /// Replaces the list of apps that have push access to this branch. This removes all apps that previously had push access and grants push access to the new list of apps. Only installed GitHub Apps with `write` access to the `contents` permission can be added as authorized actors on a protected branch.
19667    /// 
19668    /// | Type    | Description                                                                                                                                                |
19669    /// | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
19670    /// | `array` | The GitHub Apps that have push access to this branch. Use the app's `slug`. **Note**: The list of users, apps, and teams in total is limited to 100 items. |
19671    /// 
19672    /// [API method documentation](https://docs.github.com/rest/reference/repos#set-app-access-restrictions)
19673    ///
19674    /// # Content
19675    ///
19676    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
19677    pub fn repos_set_app_access_restrictions<Content>(
19678        &self,
19679        owner: &str,
19680        repo: &str,
19681        branch: &str,
19682        theContent: Content,
19683    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
19684    where
19685        Content: Copy + TryInto<crate::v1_1_4::request::repos_set_app_access_restrictions::Content<::reqwest::blocking::Body>>,
19686        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_set_app_access_restrictions::Content<::reqwest::blocking::Body>>>::Error>
19687    {
19688        let mut theScheme = AuthScheme::from(&self.config.authentication);
19689
19690        while let Some(auth_step) = theScheme.step()? {
19691            match auth_step {
19692                ::authentic::AuthenticationStep::Request(auth_request) => {
19693                    theScheme.respond(self.client.execute(auth_request));
19694                }
19695                ::authentic::AuthenticationStep::WaitFor(duration) => {
19696                    (self.sleep)(duration);
19697                }
19698            }
19699        }
19700        let theBuilder = crate::v1_1_4::request::repos_set_app_access_restrictions::reqwest_blocking_builder(
19701            self.config.base_url.as_ref(),
19702            owner,
19703            repo,
19704            branch,
19705            self.config.user_agent.as_ref(),
19706            self.config.accept.as_deref(),
19707        )?
19708        .with_authentication(&theScheme)?;
19709
19710        let theRequest = crate::v1_1_4::request::repos_set_app_access_restrictions::reqwest_blocking_request(
19711            theBuilder,
19712            theContent.try_into()?,
19713        )?;
19714
19715        ::log::debug!("HTTP request: {:?}", &theRequest);
19716
19717        let theResponse = self.client.execute(theRequest)?;
19718
19719        ::log::debug!("HTTP response: {:?}", &theResponse);
19720
19721        Ok(theResponse)
19722    }
19723
19724    /// Add app access restrictions
19725    /// 
19726    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19727    /// 
19728    /// Grants the specified apps push access for this branch. Only installed GitHub Apps with `write` access to the `contents` permission can be added as authorized actors on a protected branch.
19729    /// 
19730    /// | Type    | Description                                                                                                                                                |
19731    /// | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
19732    /// | `array` | The GitHub Apps that have push access to this branch. Use the app's `slug`. **Note**: The list of users, apps, and teams in total is limited to 100 items. |
19733    /// 
19734    /// [API method documentation](https://docs.github.com/rest/reference/repos#add-app-access-restrictions)
19735    ///
19736    /// # Content
19737    ///
19738    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
19739    pub fn repos_add_app_access_restrictions<Content>(
19740        &self,
19741        owner: &str,
19742        repo: &str,
19743        branch: &str,
19744        theContent: Content,
19745    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
19746    where
19747        Content: Copy + TryInto<crate::v1_1_4::request::repos_add_app_access_restrictions::Content<::reqwest::blocking::Body>>,
19748        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_add_app_access_restrictions::Content<::reqwest::blocking::Body>>>::Error>
19749    {
19750        let mut theScheme = AuthScheme::from(&self.config.authentication);
19751
19752        while let Some(auth_step) = theScheme.step()? {
19753            match auth_step {
19754                ::authentic::AuthenticationStep::Request(auth_request) => {
19755                    theScheme.respond(self.client.execute(auth_request));
19756                }
19757                ::authentic::AuthenticationStep::WaitFor(duration) => {
19758                    (self.sleep)(duration);
19759                }
19760            }
19761        }
19762        let theBuilder = crate::v1_1_4::request::repos_add_app_access_restrictions::reqwest_blocking_builder(
19763            self.config.base_url.as_ref(),
19764            owner,
19765            repo,
19766            branch,
19767            self.config.user_agent.as_ref(),
19768            self.config.accept.as_deref(),
19769        )?
19770        .with_authentication(&theScheme)?;
19771
19772        let theRequest = crate::v1_1_4::request::repos_add_app_access_restrictions::reqwest_blocking_request(
19773            theBuilder,
19774            theContent.try_into()?,
19775        )?;
19776
19777        ::log::debug!("HTTP request: {:?}", &theRequest);
19778
19779        let theResponse = self.client.execute(theRequest)?;
19780
19781        ::log::debug!("HTTP response: {:?}", &theResponse);
19782
19783        Ok(theResponse)
19784    }
19785
19786    /// Remove app access restrictions
19787    /// 
19788    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19789    /// 
19790    /// Removes the ability of an app to push to this branch. Only installed GitHub Apps with `write` access to the `contents` permission can be added as authorized actors on a protected branch.
19791    /// 
19792    /// | Type    | Description                                                                                                                                                |
19793    /// | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
19794    /// | `array` | The GitHub Apps that have push access to this branch. Use the app's `slug`. **Note**: The list of users, apps, and teams in total is limited to 100 items. |
19795    /// 
19796    /// [API method documentation](https://docs.github.com/rest/reference/repos#remove-app-access-restrictions)
19797    ///
19798    /// # Content
19799    ///
19800    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
19801    pub fn repos_remove_app_access_restrictions<Content>(
19802        &self,
19803        owner: &str,
19804        repo: &str,
19805        branch: &str,
19806        theContent: Content,
19807    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
19808    where
19809        Content: Copy + TryInto<crate::v1_1_4::request::repos_remove_app_access_restrictions::Content<::reqwest::blocking::Body>>,
19810        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_remove_app_access_restrictions::Content<::reqwest::blocking::Body>>>::Error>
19811    {
19812        let mut theScheme = AuthScheme::from(&self.config.authentication);
19813
19814        while let Some(auth_step) = theScheme.step()? {
19815            match auth_step {
19816                ::authentic::AuthenticationStep::Request(auth_request) => {
19817                    theScheme.respond(self.client.execute(auth_request));
19818                }
19819                ::authentic::AuthenticationStep::WaitFor(duration) => {
19820                    (self.sleep)(duration);
19821                }
19822            }
19823        }
19824        let theBuilder = crate::v1_1_4::request::repos_remove_app_access_restrictions::reqwest_blocking_builder(
19825            self.config.base_url.as_ref(),
19826            owner,
19827            repo,
19828            branch,
19829            self.config.user_agent.as_ref(),
19830            self.config.accept.as_deref(),
19831        )?
19832        .with_authentication(&theScheme)?;
19833
19834        let theRequest = crate::v1_1_4::request::repos_remove_app_access_restrictions::reqwest_blocking_request(
19835            theBuilder,
19836            theContent.try_into()?,
19837        )?;
19838
19839        ::log::debug!("HTTP request: {:?}", &theRequest);
19840
19841        let theResponse = self.client.execute(theRequest)?;
19842
19843        ::log::debug!("HTTP response: {:?}", &theResponse);
19844
19845        Ok(theResponse)
19846    }
19847
19848    /// Get teams with access to the protected branch
19849    /// 
19850    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19851    /// 
19852    /// Lists the teams who have push access to this branch. The list includes child teams.
19853    /// 
19854    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-teams-with-access-to-the-protected-branch)
19855    pub fn repos_get_teams_with_access_to_protected_branch(
19856        &self,
19857        owner: &str,
19858        repo: &str,
19859        branch: &str,
19860    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
19861        let mut theScheme = AuthScheme::from(&self.config.authentication);
19862
19863        while let Some(auth_step) = theScheme.step()? {
19864            match auth_step {
19865                ::authentic::AuthenticationStep::Request(auth_request) => {
19866                    theScheme.respond(self.client.execute(auth_request));
19867                }
19868                ::authentic::AuthenticationStep::WaitFor(duration) => {
19869                    (self.sleep)(duration);
19870                }
19871            }
19872        }
19873        let theBuilder = crate::v1_1_4::request::repos_get_teams_with_access_to_protected_branch::reqwest_blocking_builder(
19874            self.config.base_url.as_ref(),
19875            owner,
19876            repo,
19877            branch,
19878            self.config.user_agent.as_ref(),
19879            self.config.accept.as_deref(),
19880        )?
19881        .with_authentication(&theScheme)?;
19882
19883        let theRequest =
19884            crate::v1_1_4::request::repos_get_teams_with_access_to_protected_branch::reqwest_blocking_request(theBuilder)?;
19885
19886        ::log::debug!("HTTP request: {:?}", &theRequest);
19887
19888        let theResponse = self.client.execute(theRequest)?;
19889
19890        ::log::debug!("HTTP response: {:?}", &theResponse);
19891
19892        Ok(theResponse)
19893    }
19894
19895    /// Set team access restrictions
19896    /// 
19897    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19898    /// 
19899    /// Replaces the list of teams that have push access to this branch. This removes all teams that previously had push access and grants push access to the new list of teams. Team restrictions include child teams.
19900    /// 
19901    /// | Type    | Description                                                                                                                                |
19902    /// | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
19903    /// | `array` | The teams that can have push access. Use the team's `slug`. **Note**: The list of users, apps, and teams in total is limited to 100 items. |
19904    /// 
19905    /// [API method documentation](https://docs.github.com/rest/reference/repos#set-team-access-restrictions)
19906    ///
19907    /// # Content
19908    ///
19909    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
19910    pub fn repos_set_team_access_restrictions<Content>(
19911        &self,
19912        owner: &str,
19913        repo: &str,
19914        branch: &str,
19915        theContent: Content,
19916    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
19917    where
19918        Content: Copy + TryInto<crate::v1_1_4::request::repos_set_team_access_restrictions::Content<::reqwest::blocking::Body>>,
19919        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_set_team_access_restrictions::Content<::reqwest::blocking::Body>>>::Error>
19920    {
19921        let mut theScheme = AuthScheme::from(&self.config.authentication);
19922
19923        while let Some(auth_step) = theScheme.step()? {
19924            match auth_step {
19925                ::authentic::AuthenticationStep::Request(auth_request) => {
19926                    theScheme.respond(self.client.execute(auth_request));
19927                }
19928                ::authentic::AuthenticationStep::WaitFor(duration) => {
19929                    (self.sleep)(duration);
19930                }
19931            }
19932        }
19933        let theBuilder = crate::v1_1_4::request::repos_set_team_access_restrictions::reqwest_blocking_builder(
19934            self.config.base_url.as_ref(),
19935            owner,
19936            repo,
19937            branch,
19938            self.config.user_agent.as_ref(),
19939            self.config.accept.as_deref(),
19940        )?
19941        .with_authentication(&theScheme)?;
19942
19943        let theRequest = crate::v1_1_4::request::repos_set_team_access_restrictions::reqwest_blocking_request(
19944            theBuilder,
19945            theContent.try_into()?,
19946        )?;
19947
19948        ::log::debug!("HTTP request: {:?}", &theRequest);
19949
19950        let theResponse = self.client.execute(theRequest)?;
19951
19952        ::log::debug!("HTTP response: {:?}", &theResponse);
19953
19954        Ok(theResponse)
19955    }
19956
19957    /// Add team access restrictions
19958    /// 
19959    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
19960    /// 
19961    /// Grants the specified teams push access for this branch. You can also give push access to child teams.
19962    /// 
19963    /// | Type    | Description                                                                                                                                |
19964    /// | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
19965    /// | `array` | The teams that can have push access. Use the team's `slug`. **Note**: The list of users, apps, and teams in total is limited to 100 items. |
19966    /// 
19967    /// [API method documentation](https://docs.github.com/rest/reference/repos#add-team-access-restrictions)
19968    ///
19969    /// # Content
19970    ///
19971    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
19972    pub fn repos_add_team_access_restrictions<Content>(
19973        &self,
19974        owner: &str,
19975        repo: &str,
19976        branch: &str,
19977        theContent: Content,
19978    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
19979    where
19980        Content: Copy + TryInto<crate::v1_1_4::request::repos_add_team_access_restrictions::Content<::reqwest::blocking::Body>>,
19981        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_add_team_access_restrictions::Content<::reqwest::blocking::Body>>>::Error>
19982    {
19983        let mut theScheme = AuthScheme::from(&self.config.authentication);
19984
19985        while let Some(auth_step) = theScheme.step()? {
19986            match auth_step {
19987                ::authentic::AuthenticationStep::Request(auth_request) => {
19988                    theScheme.respond(self.client.execute(auth_request));
19989                }
19990                ::authentic::AuthenticationStep::WaitFor(duration) => {
19991                    (self.sleep)(duration);
19992                }
19993            }
19994        }
19995        let theBuilder = crate::v1_1_4::request::repos_add_team_access_restrictions::reqwest_blocking_builder(
19996            self.config.base_url.as_ref(),
19997            owner,
19998            repo,
19999            branch,
20000            self.config.user_agent.as_ref(),
20001            self.config.accept.as_deref(),
20002        )?
20003        .with_authentication(&theScheme)?;
20004
20005        let theRequest = crate::v1_1_4::request::repos_add_team_access_restrictions::reqwest_blocking_request(
20006            theBuilder,
20007            theContent.try_into()?,
20008        )?;
20009
20010        ::log::debug!("HTTP request: {:?}", &theRequest);
20011
20012        let theResponse = self.client.execute(theRequest)?;
20013
20014        ::log::debug!("HTTP response: {:?}", &theResponse);
20015
20016        Ok(theResponse)
20017    }
20018
20019    /// Remove team access restrictions
20020    /// 
20021    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
20022    /// 
20023    /// Removes the ability of a team to push to this branch. You can also remove push access for child teams.
20024    /// 
20025    /// | Type    | Description                                                                                                                                         |
20026    /// | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
20027    /// | `array` | Teams that should no longer have push access. Use the team's `slug`. **Note**: The list of users, apps, and teams in total is limited to 100 items. |
20028    /// 
20029    /// [API method documentation](https://docs.github.com/rest/reference/repos#remove-team-access-restrictions)
20030    ///
20031    /// # Content
20032    ///
20033    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
20034    pub fn repos_remove_team_access_restrictions<Content>(
20035        &self,
20036        owner: &str,
20037        repo: &str,
20038        branch: &str,
20039        theContent: Content,
20040    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
20041    where
20042        Content: Copy + TryInto<crate::v1_1_4::request::repos_remove_team_access_restrictions::Content<::reqwest::blocking::Body>>,
20043        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_remove_team_access_restrictions::Content<::reqwest::blocking::Body>>>::Error>
20044    {
20045        let mut theScheme = AuthScheme::from(&self.config.authentication);
20046
20047        while let Some(auth_step) = theScheme.step()? {
20048            match auth_step {
20049                ::authentic::AuthenticationStep::Request(auth_request) => {
20050                    theScheme.respond(self.client.execute(auth_request));
20051                }
20052                ::authentic::AuthenticationStep::WaitFor(duration) => {
20053                    (self.sleep)(duration);
20054                }
20055            }
20056        }
20057        let theBuilder = crate::v1_1_4::request::repos_remove_team_access_restrictions::reqwest_blocking_builder(
20058            self.config.base_url.as_ref(),
20059            owner,
20060            repo,
20061            branch,
20062            self.config.user_agent.as_ref(),
20063            self.config.accept.as_deref(),
20064        )?
20065        .with_authentication(&theScheme)?;
20066
20067        let theRequest = crate::v1_1_4::request::repos_remove_team_access_restrictions::reqwest_blocking_request(
20068            theBuilder,
20069            theContent.try_into()?,
20070        )?;
20071
20072        ::log::debug!("HTTP request: {:?}", &theRequest);
20073
20074        let theResponse = self.client.execute(theRequest)?;
20075
20076        ::log::debug!("HTTP response: {:?}", &theResponse);
20077
20078        Ok(theResponse)
20079    }
20080
20081    /// Get users with access to the protected branch
20082    /// 
20083    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
20084    /// 
20085    /// Lists the people who have push access to this branch.
20086    /// 
20087    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-users-with-access-to-the-protected-branch)
20088    pub fn repos_get_users_with_access_to_protected_branch(
20089        &self,
20090        owner: &str,
20091        repo: &str,
20092        branch: &str,
20093    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
20094        let mut theScheme = AuthScheme::from(&self.config.authentication);
20095
20096        while let Some(auth_step) = theScheme.step()? {
20097            match auth_step {
20098                ::authentic::AuthenticationStep::Request(auth_request) => {
20099                    theScheme.respond(self.client.execute(auth_request));
20100                }
20101                ::authentic::AuthenticationStep::WaitFor(duration) => {
20102                    (self.sleep)(duration);
20103                }
20104            }
20105        }
20106        let theBuilder = crate::v1_1_4::request::repos_get_users_with_access_to_protected_branch::reqwest_blocking_builder(
20107            self.config.base_url.as_ref(),
20108            owner,
20109            repo,
20110            branch,
20111            self.config.user_agent.as_ref(),
20112            self.config.accept.as_deref(),
20113        )?
20114        .with_authentication(&theScheme)?;
20115
20116        let theRequest =
20117            crate::v1_1_4::request::repos_get_users_with_access_to_protected_branch::reqwest_blocking_request(theBuilder)?;
20118
20119        ::log::debug!("HTTP request: {:?}", &theRequest);
20120
20121        let theResponse = self.client.execute(theRequest)?;
20122
20123        ::log::debug!("HTTP response: {:?}", &theResponse);
20124
20125        Ok(theResponse)
20126    }
20127
20128    /// Set user access restrictions
20129    /// 
20130    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
20131    /// 
20132    /// Replaces the list of people that have push access to this branch. This removes all people that previously had push access and grants push access to the new list of people.
20133    /// 
20134    /// | Type    | Description                                                                                                                   |
20135    /// | ------- | ----------------------------------------------------------------------------------------------------------------------------- |
20136    /// | `array` | Usernames for people who can have push access. **Note**: The list of users, apps, and teams in total is limited to 100 items. |
20137    /// 
20138    /// [API method documentation](https://docs.github.com/rest/reference/repos#set-user-access-restrictions)
20139    ///
20140    /// # Content
20141    ///
20142    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
20143    pub fn repos_set_user_access_restrictions<Content>(
20144        &self,
20145        owner: &str,
20146        repo: &str,
20147        branch: &str,
20148        theContent: Content,
20149    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
20150    where
20151        Content: Copy + TryInto<crate::v1_1_4::request::repos_set_user_access_restrictions::Content<::reqwest::blocking::Body>>,
20152        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_set_user_access_restrictions::Content<::reqwest::blocking::Body>>>::Error>
20153    {
20154        let mut theScheme = AuthScheme::from(&self.config.authentication);
20155
20156        while let Some(auth_step) = theScheme.step()? {
20157            match auth_step {
20158                ::authentic::AuthenticationStep::Request(auth_request) => {
20159                    theScheme.respond(self.client.execute(auth_request));
20160                }
20161                ::authentic::AuthenticationStep::WaitFor(duration) => {
20162                    (self.sleep)(duration);
20163                }
20164            }
20165        }
20166        let theBuilder = crate::v1_1_4::request::repos_set_user_access_restrictions::reqwest_blocking_builder(
20167            self.config.base_url.as_ref(),
20168            owner,
20169            repo,
20170            branch,
20171            self.config.user_agent.as_ref(),
20172            self.config.accept.as_deref(),
20173        )?
20174        .with_authentication(&theScheme)?;
20175
20176        let theRequest = crate::v1_1_4::request::repos_set_user_access_restrictions::reqwest_blocking_request(
20177            theBuilder,
20178            theContent.try_into()?,
20179        )?;
20180
20181        ::log::debug!("HTTP request: {:?}", &theRequest);
20182
20183        let theResponse = self.client.execute(theRequest)?;
20184
20185        ::log::debug!("HTTP response: {:?}", &theResponse);
20186
20187        Ok(theResponse)
20188    }
20189
20190    /// Add user access restrictions
20191    /// 
20192    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
20193    /// 
20194    /// Grants the specified people push access for this branch.
20195    /// 
20196    /// | Type    | Description                                                                                                                   |
20197    /// | ------- | ----------------------------------------------------------------------------------------------------------------------------- |
20198    /// | `array` | Usernames for people who can have push access. **Note**: The list of users, apps, and teams in total is limited to 100 items. |
20199    /// 
20200    /// [API method documentation](https://docs.github.com/rest/reference/repos#add-user-access-restrictions)
20201    ///
20202    /// # Content
20203    ///
20204    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
20205    pub fn repos_add_user_access_restrictions<Content>(
20206        &self,
20207        owner: &str,
20208        repo: &str,
20209        branch: &str,
20210        theContent: Content,
20211    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
20212    where
20213        Content: Copy + TryInto<crate::v1_1_4::request::repos_add_user_access_restrictions::Content<::reqwest::blocking::Body>>,
20214        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_add_user_access_restrictions::Content<::reqwest::blocking::Body>>>::Error>
20215    {
20216        let mut theScheme = AuthScheme::from(&self.config.authentication);
20217
20218        while let Some(auth_step) = theScheme.step()? {
20219            match auth_step {
20220                ::authentic::AuthenticationStep::Request(auth_request) => {
20221                    theScheme.respond(self.client.execute(auth_request));
20222                }
20223                ::authentic::AuthenticationStep::WaitFor(duration) => {
20224                    (self.sleep)(duration);
20225                }
20226            }
20227        }
20228        let theBuilder = crate::v1_1_4::request::repos_add_user_access_restrictions::reqwest_blocking_builder(
20229            self.config.base_url.as_ref(),
20230            owner,
20231            repo,
20232            branch,
20233            self.config.user_agent.as_ref(),
20234            self.config.accept.as_deref(),
20235        )?
20236        .with_authentication(&theScheme)?;
20237
20238        let theRequest = crate::v1_1_4::request::repos_add_user_access_restrictions::reqwest_blocking_request(
20239            theBuilder,
20240            theContent.try_into()?,
20241        )?;
20242
20243        ::log::debug!("HTTP request: {:?}", &theRequest);
20244
20245        let theResponse = self.client.execute(theRequest)?;
20246
20247        ::log::debug!("HTTP response: {:?}", &theResponse);
20248
20249        Ok(theResponse)
20250    }
20251
20252    /// Remove user access restrictions
20253    /// 
20254    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
20255    /// 
20256    /// Removes the ability of a user to push to this branch.
20257    /// 
20258    /// | Type    | Description                                                                                                                                   |
20259    /// | ------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
20260    /// | `array` | Usernames of the people who should no longer have push access. **Note**: The list of users, apps, and teams in total is limited to 100 items. |
20261    /// 
20262    /// [API method documentation](https://docs.github.com/rest/reference/repos#remove-user-access-restrictions)
20263    ///
20264    /// # Content
20265    ///
20266    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
20267    pub fn repos_remove_user_access_restrictions<Content>(
20268        &self,
20269        owner: &str,
20270        repo: &str,
20271        branch: &str,
20272        theContent: Content,
20273    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
20274    where
20275        Content: Copy + TryInto<crate::v1_1_4::request::repos_remove_user_access_restrictions::Content<::reqwest::blocking::Body>>,
20276        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_remove_user_access_restrictions::Content<::reqwest::blocking::Body>>>::Error>
20277    {
20278        let mut theScheme = AuthScheme::from(&self.config.authentication);
20279
20280        while let Some(auth_step) = theScheme.step()? {
20281            match auth_step {
20282                ::authentic::AuthenticationStep::Request(auth_request) => {
20283                    theScheme.respond(self.client.execute(auth_request));
20284                }
20285                ::authentic::AuthenticationStep::WaitFor(duration) => {
20286                    (self.sleep)(duration);
20287                }
20288            }
20289        }
20290        let theBuilder = crate::v1_1_4::request::repos_remove_user_access_restrictions::reqwest_blocking_builder(
20291            self.config.base_url.as_ref(),
20292            owner,
20293            repo,
20294            branch,
20295            self.config.user_agent.as_ref(),
20296            self.config.accept.as_deref(),
20297        )?
20298        .with_authentication(&theScheme)?;
20299
20300        let theRequest = crate::v1_1_4::request::repos_remove_user_access_restrictions::reqwest_blocking_request(
20301            theBuilder,
20302            theContent.try_into()?,
20303        )?;
20304
20305        ::log::debug!("HTTP request: {:?}", &theRequest);
20306
20307        let theResponse = self.client.execute(theRequest)?;
20308
20309        ::log::debug!("HTTP response: {:?}", &theResponse);
20310
20311        Ok(theResponse)
20312    }
20313
20314    /// Rename a branch
20315    /// 
20316    /// Renames a branch in a repository.
20317    /// 
20318    /// **Note:** Although the API responds immediately, the branch rename process might take some extra time to complete in the background. You won't be able to push to the old branch name while the rename process is in progress. For more information, see "[Renaming a branch](https://docs.github.com/github/administering-a-repository/renaming-a-branch)".
20319    /// 
20320    /// The permissions required to use this endpoint depends on whether you are renaming the default branch.
20321    /// 
20322    /// To rename a non-default branch:
20323    /// 
20324    /// * Users must have push access.
20325    /// * GitHub Apps must have the `contents:write` repository permission.
20326    /// 
20327    /// To rename the default branch:
20328    /// 
20329    /// * Users must have admin or owner permissions.
20330    /// * GitHub Apps must have the `administration:write` repository permission.
20331    /// 
20332    /// [API method documentation](https://docs.github.com/rest/reference/repos#rename-a-branch)
20333    ///
20334    /// # Content
20335    ///
20336    /// - [`&v1_1_4::request::repos_rename_branch::body::Json`](crate::v1_1_4::request::repos_rename_branch::body::Json)
20337    pub fn repos_rename_branch<Content>(
20338        &self,
20339        owner: &str,
20340        repo: &str,
20341        branch: &str,
20342        theContent: Content,
20343    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
20344    where
20345        Content: Copy + TryInto<crate::v1_1_4::request::repos_rename_branch::Content<::reqwest::blocking::Body>>,
20346        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_rename_branch::Content<::reqwest::blocking::Body>>>::Error>
20347    {
20348        let mut theScheme = AuthScheme::from(&self.config.authentication);
20349
20350        while let Some(auth_step) = theScheme.step()? {
20351            match auth_step {
20352                ::authentic::AuthenticationStep::Request(auth_request) => {
20353                    theScheme.respond(self.client.execute(auth_request));
20354                }
20355                ::authentic::AuthenticationStep::WaitFor(duration) => {
20356                    (self.sleep)(duration);
20357                }
20358            }
20359        }
20360        let theBuilder = crate::v1_1_4::request::repos_rename_branch::reqwest_blocking_builder(
20361            self.config.base_url.as_ref(),
20362            owner,
20363            repo,
20364            branch,
20365            self.config.user_agent.as_ref(),
20366            self.config.accept.as_deref(),
20367        )?
20368        .with_authentication(&theScheme)?;
20369
20370        let theRequest = crate::v1_1_4::request::repos_rename_branch::reqwest_blocking_request(
20371            theBuilder,
20372            theContent.try_into()?,
20373        )?;
20374
20375        ::log::debug!("HTTP request: {:?}", &theRequest);
20376
20377        let theResponse = self.client.execute(theRequest)?;
20378
20379        ::log::debug!("HTTP response: {:?}", &theResponse);
20380
20381        Ok(theResponse)
20382    }
20383
20384    /// Create a check run
20385    /// 
20386    /// **Note:** The Checks API only looks for pushes in the repository where the check suite or check run were created. Pushes to a branch in a forked repository are not detected and return an empty `pull_requests` array.
20387    /// 
20388    /// Creates a new check run for a specific commit in a repository. Your GitHub App must have the `checks:write` permission to create check runs.
20389    /// 
20390    /// In a check suite, GitHub limits the number of check runs with the same name to 1000. Once these check runs exceed 1000, GitHub will start to automatically delete older check runs.
20391    /// 
20392    /// [API method documentation](https://docs.github.com/rest/reference/checks#create-a-check-run)
20393    ///
20394    /// # Content
20395    ///
20396    /// - [`&v1_1_4::request::checks_create::body::Json`](crate::v1_1_4::request::checks_create::body::Json)
20397    pub fn checks_create<Content>(
20398        &self,
20399        owner: &str,
20400        repo: &str,
20401        theContent: Content,
20402    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
20403    where
20404        Content: Copy + TryInto<crate::v1_1_4::request::checks_create::Content<::reqwest::blocking::Body>>,
20405        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::checks_create::Content<::reqwest::blocking::Body>>>::Error>
20406    {
20407        let mut theScheme = AuthScheme::from(&self.config.authentication);
20408
20409        while let Some(auth_step) = theScheme.step()? {
20410            match auth_step {
20411                ::authentic::AuthenticationStep::Request(auth_request) => {
20412                    theScheme.respond(self.client.execute(auth_request));
20413                }
20414                ::authentic::AuthenticationStep::WaitFor(duration) => {
20415                    (self.sleep)(duration);
20416                }
20417            }
20418        }
20419        let theBuilder = crate::v1_1_4::request::checks_create::reqwest_blocking_builder(
20420            self.config.base_url.as_ref(),
20421            owner,
20422            repo,
20423            self.config.user_agent.as_ref(),
20424            self.config.accept.as_deref(),
20425        )?
20426        .with_authentication(&theScheme)?;
20427
20428        let theRequest = crate::v1_1_4::request::checks_create::reqwest_blocking_request(
20429            theBuilder,
20430            theContent.try_into()?,
20431        )?;
20432
20433        ::log::debug!("HTTP request: {:?}", &theRequest);
20434
20435        let theResponse = self.client.execute(theRequest)?;
20436
20437        ::log::debug!("HTTP response: {:?}", &theResponse);
20438
20439        Ok(theResponse)
20440    }
20441
20442    /// Get a check run
20443    /// 
20444    /// **Note:** The Checks API only looks for pushes in the repository where the check suite or check run were created. Pushes to a branch in a forked repository are not detected and return an empty `pull_requests` array.
20445    /// 
20446    /// Gets a single check run using its `id`. GitHub Apps must have the `checks:read` permission on a private repository or pull access to a public repository to get check runs. OAuth Apps and authenticated users must have the `repo` scope to get check runs in a private repository.
20447    /// 
20448    /// [API method documentation](https://docs.github.com/rest/reference/checks#get-a-check-run)
20449    pub fn checks_get(
20450        &self,
20451        owner: &str,
20452        repo: &str,
20453        check_run_id: i64,
20454    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
20455        let mut theScheme = AuthScheme::from(&self.config.authentication);
20456
20457        while let Some(auth_step) = theScheme.step()? {
20458            match auth_step {
20459                ::authentic::AuthenticationStep::Request(auth_request) => {
20460                    theScheme.respond(self.client.execute(auth_request));
20461                }
20462                ::authentic::AuthenticationStep::WaitFor(duration) => {
20463                    (self.sleep)(duration);
20464                }
20465            }
20466        }
20467        let theBuilder = crate::v1_1_4::request::checks_get::reqwest_blocking_builder(
20468            self.config.base_url.as_ref(),
20469            owner,
20470            repo,
20471            check_run_id,
20472            self.config.user_agent.as_ref(),
20473            self.config.accept.as_deref(),
20474        )?
20475        .with_authentication(&theScheme)?;
20476
20477        let theRequest =
20478            crate::v1_1_4::request::checks_get::reqwest_blocking_request(theBuilder)?;
20479
20480        ::log::debug!("HTTP request: {:?}", &theRequest);
20481
20482        let theResponse = self.client.execute(theRequest)?;
20483
20484        ::log::debug!("HTTP response: {:?}", &theResponse);
20485
20486        Ok(theResponse)
20487    }
20488
20489    /// Update a check run
20490    /// 
20491    /// **Note:** The Checks API only looks for pushes in the repository where the check suite or check run were created. Pushes to a branch in a forked repository are not detected and return an empty `pull_requests` array.
20492    /// 
20493    /// Updates a check run for a specific commit in a repository. Your GitHub App must have the `checks:write` permission to edit check runs.
20494    /// 
20495    /// [API method documentation](https://docs.github.com/rest/reference/checks#update-a-check-run)
20496    ///
20497    /// # Content
20498    ///
20499    /// - [`&v1_1_4::request::checks_update::body::Json`](crate::v1_1_4::request::checks_update::body::Json)
20500    pub fn checks_update<Content>(
20501        &self,
20502        owner: &str,
20503        repo: &str,
20504        check_run_id: i64,
20505        theContent: Content,
20506    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
20507    where
20508        Content: Copy + TryInto<crate::v1_1_4::request::checks_update::Content<::reqwest::blocking::Body>>,
20509        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::checks_update::Content<::reqwest::blocking::Body>>>::Error>
20510    {
20511        let mut theScheme = AuthScheme::from(&self.config.authentication);
20512
20513        while let Some(auth_step) = theScheme.step()? {
20514            match auth_step {
20515                ::authentic::AuthenticationStep::Request(auth_request) => {
20516                    theScheme.respond(self.client.execute(auth_request));
20517                }
20518                ::authentic::AuthenticationStep::WaitFor(duration) => {
20519                    (self.sleep)(duration);
20520                }
20521            }
20522        }
20523        let theBuilder = crate::v1_1_4::request::checks_update::reqwest_blocking_builder(
20524            self.config.base_url.as_ref(),
20525            owner,
20526            repo,
20527            check_run_id,
20528            self.config.user_agent.as_ref(),
20529            self.config.accept.as_deref(),
20530        )?
20531        .with_authentication(&theScheme)?;
20532
20533        let theRequest = crate::v1_1_4::request::checks_update::reqwest_blocking_request(
20534            theBuilder,
20535            theContent.try_into()?,
20536        )?;
20537
20538        ::log::debug!("HTTP request: {:?}", &theRequest);
20539
20540        let theResponse = self.client.execute(theRequest)?;
20541
20542        ::log::debug!("HTTP response: {:?}", &theResponse);
20543
20544        Ok(theResponse)
20545    }
20546
20547    /// List check run annotations
20548    /// 
20549    /// Lists annotations for a check run using the annotation `id`. GitHub Apps must have the `checks:read` permission on a private repository or pull access to a public repository to get annotations for a check run. OAuth Apps and authenticated users must have the `repo` scope to get annotations for a check run in a private repository.
20550    /// 
20551    /// [API method documentation](https://docs.github.com/rest/reference/checks#list-check-run-annotations)
20552    pub fn checks_list_annotations(
20553        &self,
20554        owner: &str,
20555        repo: &str,
20556        check_run_id: i64,
20557        per_page: ::std::option::Option<i64>,
20558        page: ::std::option::Option<i64>,
20559    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
20560        let mut theScheme = AuthScheme::from(&self.config.authentication);
20561
20562        while let Some(auth_step) = theScheme.step()? {
20563            match auth_step {
20564                ::authentic::AuthenticationStep::Request(auth_request) => {
20565                    theScheme.respond(self.client.execute(auth_request));
20566                }
20567                ::authentic::AuthenticationStep::WaitFor(duration) => {
20568                    (self.sleep)(duration);
20569                }
20570            }
20571        }
20572        let theBuilder = crate::v1_1_4::request::checks_list_annotations::reqwest_blocking_builder(
20573            self.config.base_url.as_ref(),
20574            owner,
20575            repo,
20576            check_run_id,
20577            per_page,
20578            page,
20579            self.config.user_agent.as_ref(),
20580            self.config.accept.as_deref(),
20581        )?
20582        .with_authentication(&theScheme)?;
20583
20584        let theRequest =
20585            crate::v1_1_4::request::checks_list_annotations::reqwest_blocking_request(theBuilder)?;
20586
20587        ::log::debug!("HTTP request: {:?}", &theRequest);
20588
20589        let theResponse = self.client.execute(theRequest)?;
20590
20591        ::log::debug!("HTTP response: {:?}", &theResponse);
20592
20593        Ok(theResponse)
20594    }
20595
20596    /// Rerequest a check run
20597    /// 
20598    /// Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the [`check_run` webhook](https://docs.github.com/webhooks/event-payloads/#check_run) event with the action `rerequested`. When a check run is `rerequested`, its `status` is reset to `queued` and the `conclusion` is cleared.
20599    /// 
20600    /// To rerequest a check run, your GitHub App must have the `checks:read` permission on a private repository or pull access to a public repository.
20601    /// 
20602    /// [API method documentation](https://docs.github.com/rest/reference/checks#rerequest-a-check-run)
20603    pub fn checks_rerequest_run(
20604        &self,
20605        owner: &str,
20606        repo: &str,
20607        check_run_id: i64,
20608    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
20609        let mut theScheme = AuthScheme::from(&self.config.authentication);
20610
20611        while let Some(auth_step) = theScheme.step()? {
20612            match auth_step {
20613                ::authentic::AuthenticationStep::Request(auth_request) => {
20614                    theScheme.respond(self.client.execute(auth_request));
20615                }
20616                ::authentic::AuthenticationStep::WaitFor(duration) => {
20617                    (self.sleep)(duration);
20618                }
20619            }
20620        }
20621        let theBuilder = crate::v1_1_4::request::checks_rerequest_run::reqwest_blocking_builder(
20622            self.config.base_url.as_ref(),
20623            owner,
20624            repo,
20625            check_run_id,
20626            self.config.user_agent.as_ref(),
20627            self.config.accept.as_deref(),
20628        )?
20629        .with_authentication(&theScheme)?;
20630
20631        let theRequest =
20632            crate::v1_1_4::request::checks_rerequest_run::reqwest_blocking_request(theBuilder)?;
20633
20634        ::log::debug!("HTTP request: {:?}", &theRequest);
20635
20636        let theResponse = self.client.execute(theRequest)?;
20637
20638        ::log::debug!("HTTP response: {:?}", &theResponse);
20639
20640        Ok(theResponse)
20641    }
20642
20643    /// Create a check suite
20644    /// 
20645    /// **Note:** The Checks API only looks for pushes in the repository where the check suite or check run were created. Pushes to a branch in a forked repository are not detected and return an empty `pull_requests` array and a `null` value for `head_branch`.
20646    /// 
20647    /// By default, check suites are automatically created when you create a [check run](https://docs.github.com/rest/reference/checks#check-runs). You only need to use this endpoint for manually creating check suites when you've disabled automatic creation using "[Update repository preferences for check suites](https://docs.github.com/rest/reference/checks#update-repository-preferences-for-check-suites)". Your GitHub App must have the `checks:write` permission to create check suites.
20648    /// 
20649    /// [API method documentation](https://docs.github.com/rest/reference/checks#create-a-check-suite)
20650    ///
20651    /// # Content
20652    ///
20653    /// - [`&v1_1_4::request::checks_create_suite::body::Json`](crate::v1_1_4::request::checks_create_suite::body::Json)
20654    pub fn checks_create_suite<Content>(
20655        &self,
20656        owner: &str,
20657        repo: &str,
20658        theContent: Content,
20659    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
20660    where
20661        Content: Copy + TryInto<crate::v1_1_4::request::checks_create_suite::Content<::reqwest::blocking::Body>>,
20662        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::checks_create_suite::Content<::reqwest::blocking::Body>>>::Error>
20663    {
20664        let mut theScheme = AuthScheme::from(&self.config.authentication);
20665
20666        while let Some(auth_step) = theScheme.step()? {
20667            match auth_step {
20668                ::authentic::AuthenticationStep::Request(auth_request) => {
20669                    theScheme.respond(self.client.execute(auth_request));
20670                }
20671                ::authentic::AuthenticationStep::WaitFor(duration) => {
20672                    (self.sleep)(duration);
20673                }
20674            }
20675        }
20676        let theBuilder = crate::v1_1_4::request::checks_create_suite::reqwest_blocking_builder(
20677            self.config.base_url.as_ref(),
20678            owner,
20679            repo,
20680            self.config.user_agent.as_ref(),
20681            self.config.accept.as_deref(),
20682        )?
20683        .with_authentication(&theScheme)?;
20684
20685        let theRequest = crate::v1_1_4::request::checks_create_suite::reqwest_blocking_request(
20686            theBuilder,
20687            theContent.try_into()?,
20688        )?;
20689
20690        ::log::debug!("HTTP request: {:?}", &theRequest);
20691
20692        let theResponse = self.client.execute(theRequest)?;
20693
20694        ::log::debug!("HTTP response: {:?}", &theResponse);
20695
20696        Ok(theResponse)
20697    }
20698
20699    /// Update repository preferences for check suites
20700    /// 
20701    /// Changes the default automatic flow when creating check suites. By default, a check suite is automatically created each time code is pushed to a repository. When you disable the automatic creation of check suites, you can manually [Create a check suite](https://docs.github.com/rest/reference/checks#create-a-check-suite). You must have admin permissions in the repository to set preferences for check suites.
20702    /// 
20703    /// [API method documentation](https://docs.github.com/rest/reference/checks#update-repository-preferences-for-check-suites)
20704    ///
20705    /// # Content
20706    ///
20707    /// - [`&v1_1_4::request::checks_set_suites_preferences::body::Json`](crate::v1_1_4::request::checks_set_suites_preferences::body::Json)
20708    pub fn checks_set_suites_preferences<Content>(
20709        &self,
20710        owner: &str,
20711        repo: &str,
20712        theContent: Content,
20713    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
20714    where
20715        Content: Copy + TryInto<crate::v1_1_4::request::checks_set_suites_preferences::Content<::reqwest::blocking::Body>>,
20716        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::checks_set_suites_preferences::Content<::reqwest::blocking::Body>>>::Error>
20717    {
20718        let mut theScheme = AuthScheme::from(&self.config.authentication);
20719
20720        while let Some(auth_step) = theScheme.step()? {
20721            match auth_step {
20722                ::authentic::AuthenticationStep::Request(auth_request) => {
20723                    theScheme.respond(self.client.execute(auth_request));
20724                }
20725                ::authentic::AuthenticationStep::WaitFor(duration) => {
20726                    (self.sleep)(duration);
20727                }
20728            }
20729        }
20730        let theBuilder = crate::v1_1_4::request::checks_set_suites_preferences::reqwest_blocking_builder(
20731            self.config.base_url.as_ref(),
20732            owner,
20733            repo,
20734            self.config.user_agent.as_ref(),
20735            self.config.accept.as_deref(),
20736        )?
20737        .with_authentication(&theScheme)?;
20738
20739        let theRequest = crate::v1_1_4::request::checks_set_suites_preferences::reqwest_blocking_request(
20740            theBuilder,
20741            theContent.try_into()?,
20742        )?;
20743
20744        ::log::debug!("HTTP request: {:?}", &theRequest);
20745
20746        let theResponse = self.client.execute(theRequest)?;
20747
20748        ::log::debug!("HTTP response: {:?}", &theResponse);
20749
20750        Ok(theResponse)
20751    }
20752
20753    /// Get a check suite
20754    /// 
20755    /// **Note:** The Checks API only looks for pushes in the repository where the check suite or check run were created. Pushes to a branch in a forked repository are not detected and return an empty `pull_requests` array and a `null` value for `head_branch`.
20756    /// 
20757    /// Gets a single check suite using its `id`. GitHub Apps must have the `checks:read` permission on a private repository or pull access to a public repository to get check suites. OAuth Apps and authenticated users must have the `repo` scope to get check suites in a private repository.
20758    /// 
20759    /// [API method documentation](https://docs.github.com/rest/reference/checks#get-a-check-suite)
20760    pub fn checks_get_suite(
20761        &self,
20762        owner: &str,
20763        repo: &str,
20764        check_suite_id: i64,
20765    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
20766        let mut theScheme = AuthScheme::from(&self.config.authentication);
20767
20768        while let Some(auth_step) = theScheme.step()? {
20769            match auth_step {
20770                ::authentic::AuthenticationStep::Request(auth_request) => {
20771                    theScheme.respond(self.client.execute(auth_request));
20772                }
20773                ::authentic::AuthenticationStep::WaitFor(duration) => {
20774                    (self.sleep)(duration);
20775                }
20776            }
20777        }
20778        let theBuilder = crate::v1_1_4::request::checks_get_suite::reqwest_blocking_builder(
20779            self.config.base_url.as_ref(),
20780            owner,
20781            repo,
20782            check_suite_id,
20783            self.config.user_agent.as_ref(),
20784            self.config.accept.as_deref(),
20785        )?
20786        .with_authentication(&theScheme)?;
20787
20788        let theRequest =
20789            crate::v1_1_4::request::checks_get_suite::reqwest_blocking_request(theBuilder)?;
20790
20791        ::log::debug!("HTTP request: {:?}", &theRequest);
20792
20793        let theResponse = self.client.execute(theRequest)?;
20794
20795        ::log::debug!("HTTP response: {:?}", &theResponse);
20796
20797        Ok(theResponse)
20798    }
20799
20800    /// List check runs in a check suite
20801    /// 
20802    /// **Note:** The Checks API only looks for pushes in the repository where the check suite or check run were created. Pushes to a branch in a forked repository are not detected and return an empty `pull_requests` array.
20803    /// 
20804    /// Lists check runs for a check suite using its `id`. GitHub Apps must have the `checks:read` permission on a private repository or pull access to a public repository to get check runs. OAuth Apps and authenticated users must have the `repo` scope to get check runs in a private repository.
20805    /// 
20806    /// [API method documentation](https://docs.github.com/rest/reference/checks#list-check-runs-in-a-check-suite)
20807    #[allow(clippy::too_many_arguments)]
20808    pub fn checks_list_for_suite(
20809        &self,
20810        owner: &str,
20811        repo: &str,
20812        check_suite_id: i64,
20813        check_name: ::std::option::Option<&str>,
20814        status: ::std::option::Option<&str>,
20815        filter: ::std::option::Option<&str>,
20816        per_page: ::std::option::Option<i64>,
20817        page: ::std::option::Option<i64>,
20818    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
20819        let mut theScheme = AuthScheme::from(&self.config.authentication);
20820
20821        while let Some(auth_step) = theScheme.step()? {
20822            match auth_step {
20823                ::authentic::AuthenticationStep::Request(auth_request) => {
20824                    theScheme.respond(self.client.execute(auth_request));
20825                }
20826                ::authentic::AuthenticationStep::WaitFor(duration) => {
20827                    (self.sleep)(duration);
20828                }
20829            }
20830        }
20831        let theBuilder = crate::v1_1_4::request::checks_list_for_suite::reqwest_blocking_builder(
20832            self.config.base_url.as_ref(),
20833            owner,
20834            repo,
20835            check_suite_id,
20836            check_name,
20837            status,
20838            filter,
20839            per_page,
20840            page,
20841            self.config.user_agent.as_ref(),
20842            self.config.accept.as_deref(),
20843        )?
20844        .with_authentication(&theScheme)?;
20845
20846        let theRequest =
20847            crate::v1_1_4::request::checks_list_for_suite::reqwest_blocking_request(theBuilder)?;
20848
20849        ::log::debug!("HTTP request: {:?}", &theRequest);
20850
20851        let theResponse = self.client.execute(theRequest)?;
20852
20853        ::log::debug!("HTTP response: {:?}", &theResponse);
20854
20855        Ok(theResponse)
20856    }
20857
20858    /// Rerequest a check suite
20859    /// 
20860    /// Triggers GitHub to rerequest an existing check suite, without pushing new code to a repository. This endpoint will trigger the [`check_suite` webhook](https://docs.github.com/webhooks/event-payloads/#check_suite) event with the action `rerequested`. When a check suite is `rerequested`, its `status` is reset to `queued` and the `conclusion` is cleared.
20861    /// 
20862    /// To rerequest a check suite, your GitHub App must have the `checks:read` permission on a private repository or pull access to a public repository.
20863    /// 
20864    /// [API method documentation](https://docs.github.com/rest/reference/checks#rerequest-a-check-suite)
20865    pub fn checks_rerequest_suite(
20866        &self,
20867        owner: &str,
20868        repo: &str,
20869        check_suite_id: i64,
20870    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
20871        let mut theScheme = AuthScheme::from(&self.config.authentication);
20872
20873        while let Some(auth_step) = theScheme.step()? {
20874            match auth_step {
20875                ::authentic::AuthenticationStep::Request(auth_request) => {
20876                    theScheme.respond(self.client.execute(auth_request));
20877                }
20878                ::authentic::AuthenticationStep::WaitFor(duration) => {
20879                    (self.sleep)(duration);
20880                }
20881            }
20882        }
20883        let theBuilder = crate::v1_1_4::request::checks_rerequest_suite::reqwest_blocking_builder(
20884            self.config.base_url.as_ref(),
20885            owner,
20886            repo,
20887            check_suite_id,
20888            self.config.user_agent.as_ref(),
20889            self.config.accept.as_deref(),
20890        )?
20891        .with_authentication(&theScheme)?;
20892
20893        let theRequest =
20894            crate::v1_1_4::request::checks_rerequest_suite::reqwest_blocking_request(theBuilder)?;
20895
20896        ::log::debug!("HTTP request: {:?}", &theRequest);
20897
20898        let theResponse = self.client.execute(theRequest)?;
20899
20900        ::log::debug!("HTTP response: {:?}", &theResponse);
20901
20902        Ok(theResponse)
20903    }
20904
20905    /// List code scanning alerts for a repository
20906    /// 
20907    /// Lists all open code scanning alerts for the default branch (usually `main`
20908    /// or `master`). You must use an access token with the `security_events` scope to use
20909    /// this endpoint with private repos, the `public_repo` scope also grants permission to read
20910    /// security events on public repos only. GitHub Apps must have the `security_events` read
20911    /// permission to use this endpoint.
20912    /// 
20913    /// The response includes a `most_recent_instance` object.
20914    /// This provides details of the most recent instance of this alert
20915    /// for the default branch or for the specified Git reference
20916    /// (if you used `ref` in the request).
20917    /// 
20918    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#list-code-scanning-alerts-for-a-repository)
20919    #[allow(clippy::too_many_arguments)]
20920    pub fn code_scanning_list_alerts_for_repo(
20921        &self,
20922        owner: &str,
20923        repo: &str,
20924        tool_name: ::std::option::Option<&str>,
20925        tool_guid: ::std::option::Option<::std::option::Option<&str>>,
20926        page: ::std::option::Option<i64>,
20927        per_page: ::std::option::Option<i64>,
20928        r#ref: ::std::option::Option<&str>,
20929        sort: &crate::types::Sort<'_>,
20930        state: ::std::option::Option<&str>,
20931    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
20932        let (sort, direction) = sort.extract();
20933        let mut theScheme = AuthScheme::from(&self.config.authentication);
20934
20935        while let Some(auth_step) = theScheme.step()? {
20936            match auth_step {
20937                ::authentic::AuthenticationStep::Request(auth_request) => {
20938                    theScheme.respond(self.client.execute(auth_request));
20939                }
20940                ::authentic::AuthenticationStep::WaitFor(duration) => {
20941                    (self.sleep)(duration);
20942                }
20943            }
20944        }
20945        let theBuilder = crate::v1_1_4::request::code_scanning_list_alerts_for_repo::reqwest_blocking_builder(
20946            self.config.base_url.as_ref(),
20947            owner,
20948            repo,
20949            tool_name,
20950            tool_guid,
20951            page,
20952            per_page,
20953            r#ref,
20954            direction,
20955            sort,
20956            state,
20957            self.config.user_agent.as_ref(),
20958            self.config.accept.as_deref(),
20959        )?
20960        .with_authentication(&theScheme)?;
20961
20962        let theRequest =
20963            crate::v1_1_4::request::code_scanning_list_alerts_for_repo::reqwest_blocking_request(theBuilder)?;
20964
20965        ::log::debug!("HTTP request: {:?}", &theRequest);
20966
20967        let theResponse = self.client.execute(theRequest)?;
20968
20969        ::log::debug!("HTTP response: {:?}", &theResponse);
20970
20971        Ok(theResponse)
20972    }
20973
20974    /// Get a code scanning alert
20975    /// 
20976    /// Gets a single code scanning alert. You must use an access token with the `security_events` scope to use this endpoint with private repos, the `public_repo` scope also grants permission to read security events on public repos only. GitHub Apps must have the `security_events` read permission to use this endpoint.
20977    /// 
20978    /// **Deprecation notice**:
20979    /// The instances field is deprecated and will, in future, not be included in the response for this endpoint. The example response reflects this change. The same information can now be retrieved via a GET request to the URL specified by `instances_url`.
20980    /// 
20981    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#get-a-code-scanning-alert)
20982    pub fn code_scanning_get_alert(
20983        &self,
20984        owner: &str,
20985        repo: &str,
20986        alert_number: i64,
20987    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
20988        let mut theScheme = AuthScheme::from(&self.config.authentication);
20989
20990        while let Some(auth_step) = theScheme.step()? {
20991            match auth_step {
20992                ::authentic::AuthenticationStep::Request(auth_request) => {
20993                    theScheme.respond(self.client.execute(auth_request));
20994                }
20995                ::authentic::AuthenticationStep::WaitFor(duration) => {
20996                    (self.sleep)(duration);
20997                }
20998            }
20999        }
21000        let theBuilder = crate::v1_1_4::request::code_scanning_get_alert::reqwest_blocking_builder(
21001            self.config.base_url.as_ref(),
21002            owner,
21003            repo,
21004            alert_number,
21005            self.config.user_agent.as_ref(),
21006            self.config.accept.as_deref(),
21007        )?
21008        .with_authentication(&theScheme)?;
21009
21010        let theRequest =
21011            crate::v1_1_4::request::code_scanning_get_alert::reqwest_blocking_request(theBuilder)?;
21012
21013        ::log::debug!("HTTP request: {:?}", &theRequest);
21014
21015        let theResponse = self.client.execute(theRequest)?;
21016
21017        ::log::debug!("HTTP response: {:?}", &theResponse);
21018
21019        Ok(theResponse)
21020    }
21021
21022    /// Update a code scanning alert
21023    /// 
21024    /// Updates the status of a single code scanning alert. You must use an access token with the `security_events` scope to use this endpoint with private repositories. You can also use tokens with the `public_repo` scope for public repositories only. GitHub Apps must have the `security_events` write permission to use this endpoint.
21025    /// 
21026    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#update-a-code-scanning-alert)
21027    ///
21028    /// # Content
21029    ///
21030    /// - [`&v1_1_4::request::code_scanning_update_alert::body::Json`](crate::v1_1_4::request::code_scanning_update_alert::body::Json)
21031    pub fn code_scanning_update_alert<Content>(
21032        &self,
21033        owner: &str,
21034        repo: &str,
21035        alert_number: i64,
21036        theContent: Content,
21037    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
21038    where
21039        Content: Copy + TryInto<crate::v1_1_4::request::code_scanning_update_alert::Content<::reqwest::blocking::Body>>,
21040        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::code_scanning_update_alert::Content<::reqwest::blocking::Body>>>::Error>
21041    {
21042        let mut theScheme = AuthScheme::from(&self.config.authentication);
21043
21044        while let Some(auth_step) = theScheme.step()? {
21045            match auth_step {
21046                ::authentic::AuthenticationStep::Request(auth_request) => {
21047                    theScheme.respond(self.client.execute(auth_request));
21048                }
21049                ::authentic::AuthenticationStep::WaitFor(duration) => {
21050                    (self.sleep)(duration);
21051                }
21052            }
21053        }
21054        let theBuilder = crate::v1_1_4::request::code_scanning_update_alert::reqwest_blocking_builder(
21055            self.config.base_url.as_ref(),
21056            owner,
21057            repo,
21058            alert_number,
21059            self.config.user_agent.as_ref(),
21060            self.config.accept.as_deref(),
21061        )?
21062        .with_authentication(&theScheme)?;
21063
21064        let theRequest = crate::v1_1_4::request::code_scanning_update_alert::reqwest_blocking_request(
21065            theBuilder,
21066            theContent.try_into()?,
21067        )?;
21068
21069        ::log::debug!("HTTP request: {:?}", &theRequest);
21070
21071        let theResponse = self.client.execute(theRequest)?;
21072
21073        ::log::debug!("HTTP response: {:?}", &theResponse);
21074
21075        Ok(theResponse)
21076    }
21077
21078    /// List instances of a code scanning alert
21079    /// 
21080    /// Lists all instances of the specified code scanning alert.
21081    /// You must use an access token with the `security_events` scope to use this endpoint with private repos,
21082    /// the `public_repo` scope also grants permission to read security events on public repos only.
21083    /// GitHub Apps must have the `security_events` read permission to use this endpoint.
21084    /// 
21085    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#list-instances-of-a-code-scanning-alert)
21086    pub fn code_scanning_list_alert_instances(
21087        &self,
21088        owner: &str,
21089        repo: &str,
21090        alert_number: i64,
21091        page: ::std::option::Option<i64>,
21092        per_page: ::std::option::Option<i64>,
21093        r#ref: ::std::option::Option<&str>,
21094    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21095        let mut theScheme = AuthScheme::from(&self.config.authentication);
21096
21097        while let Some(auth_step) = theScheme.step()? {
21098            match auth_step {
21099                ::authentic::AuthenticationStep::Request(auth_request) => {
21100                    theScheme.respond(self.client.execute(auth_request));
21101                }
21102                ::authentic::AuthenticationStep::WaitFor(duration) => {
21103                    (self.sleep)(duration);
21104                }
21105            }
21106        }
21107        let theBuilder = crate::v1_1_4::request::code_scanning_list_alert_instances::reqwest_blocking_builder(
21108            self.config.base_url.as_ref(),
21109            owner,
21110            repo,
21111            alert_number,
21112            page,
21113            per_page,
21114            r#ref,
21115            self.config.user_agent.as_ref(),
21116            self.config.accept.as_deref(),
21117        )?
21118        .with_authentication(&theScheme)?;
21119
21120        let theRequest =
21121            crate::v1_1_4::request::code_scanning_list_alert_instances::reqwest_blocking_request(theBuilder)?;
21122
21123        ::log::debug!("HTTP request: {:?}", &theRequest);
21124
21125        let theResponse = self.client.execute(theRequest)?;
21126
21127        ::log::debug!("HTTP response: {:?}", &theResponse);
21128
21129        Ok(theResponse)
21130    }
21131
21132    /// List code scanning analyses for a repository
21133    /// 
21134    /// Lists the details of all code scanning analyses for a repository,
21135    /// starting with the most recent.
21136    /// The response is paginated and you can use the `page` and `per_page` parameters
21137    /// to list the analyses you're interested in.
21138    /// By default 30 analyses are listed per page.
21139    /// 
21140    /// The `rules_count` field in the response give the number of rules
21141    /// that were run in the analysis.
21142    /// For very old analyses this data is not available,
21143    /// and `0` is returned in this field.
21144    /// 
21145    /// You must use an access token with the `security_events` scope to use this endpoint with private repos,
21146    /// the `public_repo` scope also grants permission to read security events on public repos only.
21147    /// GitHub Apps must have the `security_events` read permission to use this endpoint.
21148    /// 
21149    /// **Deprecation notice**:
21150    /// The `tool_name` field is deprecated and will, in future, not be included in the response for this endpoint. The example response reflects this change. The tool name can now be found inside the `tool` field.
21151    /// 
21152    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#list-code-scanning-analyses-for-a-repository)
21153    #[allow(clippy::too_many_arguments)]
21154    pub fn code_scanning_list_recent_analyses(
21155        &self,
21156        owner: &str,
21157        repo: &str,
21158        tool_name: ::std::option::Option<&str>,
21159        tool_guid: ::std::option::Option<::std::option::Option<&str>>,
21160        page: ::std::option::Option<i64>,
21161        per_page: ::std::option::Option<i64>,
21162        r#ref: ::std::option::Option<&str>,
21163        sarif_id: ::std::option::Option<&str>,
21164    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21165        let mut theScheme = AuthScheme::from(&self.config.authentication);
21166
21167        while let Some(auth_step) = theScheme.step()? {
21168            match auth_step {
21169                ::authentic::AuthenticationStep::Request(auth_request) => {
21170                    theScheme.respond(self.client.execute(auth_request));
21171                }
21172                ::authentic::AuthenticationStep::WaitFor(duration) => {
21173                    (self.sleep)(duration);
21174                }
21175            }
21176        }
21177        let theBuilder = crate::v1_1_4::request::code_scanning_list_recent_analyses::reqwest_blocking_builder(
21178            self.config.base_url.as_ref(),
21179            owner,
21180            repo,
21181            tool_name,
21182            tool_guid,
21183            page,
21184            per_page,
21185            r#ref,
21186            sarif_id,
21187            self.config.user_agent.as_ref(),
21188            self.config.accept.as_deref(),
21189        )?
21190        .with_authentication(&theScheme)?;
21191
21192        let theRequest =
21193            crate::v1_1_4::request::code_scanning_list_recent_analyses::reqwest_blocking_request(theBuilder)?;
21194
21195        ::log::debug!("HTTP request: {:?}", &theRequest);
21196
21197        let theResponse = self.client.execute(theRequest)?;
21198
21199        ::log::debug!("HTTP response: {:?}", &theResponse);
21200
21201        Ok(theResponse)
21202    }
21203
21204    /// Get a code scanning analysis for a repository
21205    /// 
21206    /// Gets a specified code scanning analysis for a repository.
21207    /// You must use an access token with the `security_events` scope to use this endpoint with private repos,
21208    /// the `public_repo` scope also grants permission to read security events on public repos only.
21209    /// GitHub Apps must have the `security_events` read permission to use this endpoint.
21210    /// 
21211    /// The default JSON response contains fields that describe the analysis.
21212    /// This includes the Git reference and commit SHA to which the analysis relates,
21213    /// the datetime of the analysis, the name of the code scanning tool,
21214    /// and the number of alerts.
21215    /// 
21216    /// The `rules_count` field in the default response give the number of rules
21217    /// that were run in the analysis.
21218    /// For very old analyses this data is not available,
21219    /// and `0` is returned in this field.
21220    /// 
21221    /// If you use the Accept header `application/sarif+json`,
21222    /// the response contains the analysis data that was uploaded.
21223    /// This is formatted as
21224    /// [SARIF version 2.1.0](https://docs.oasis-open.org/sarif/sarif/v2.1.0/cs01/sarif-v2.1.0-cs01.html).
21225    /// 
21226    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#get-a-code-scanning-analysis-for-a-repository)
21227    pub fn code_scanning_get_analysis(
21228        &self,
21229        owner: &str,
21230        repo: &str,
21231        analysis_id: i64,
21232    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21233        let mut theScheme = AuthScheme::from(&self.config.authentication);
21234
21235        while let Some(auth_step) = theScheme.step()? {
21236            match auth_step {
21237                ::authentic::AuthenticationStep::Request(auth_request) => {
21238                    theScheme.respond(self.client.execute(auth_request));
21239                }
21240                ::authentic::AuthenticationStep::WaitFor(duration) => {
21241                    (self.sleep)(duration);
21242                }
21243            }
21244        }
21245        let theBuilder = crate::v1_1_4::request::code_scanning_get_analysis::reqwest_blocking_builder(
21246            self.config.base_url.as_ref(),
21247            owner,
21248            repo,
21249            analysis_id,
21250            self.config.user_agent.as_ref(),
21251            self.config.accept.as_deref(),
21252        )?
21253        .with_authentication(&theScheme)?;
21254
21255        let theRequest =
21256            crate::v1_1_4::request::code_scanning_get_analysis::reqwest_blocking_request(theBuilder)?;
21257
21258        ::log::debug!("HTTP request: {:?}", &theRequest);
21259
21260        let theResponse = self.client.execute(theRequest)?;
21261
21262        ::log::debug!("HTTP response: {:?}", &theResponse);
21263
21264        Ok(theResponse)
21265    }
21266
21267    /// Delete a code scanning analysis from a repository
21268    /// 
21269    /// Deletes a specified code scanning analysis from a repository. For
21270    /// private repositories, you must use an access token with the `repo` scope. For public repositories,
21271    /// you must use an access token with `public_repo` scope.
21272    /// GitHub Apps must have the `security_events` write permission to use this endpoint.
21273    /// 
21274    /// You can delete one analysis at a time.
21275    /// To delete a series of analyses, start with the most recent analysis and work backwards.
21276    /// Conceptually, the process is similar to the undo function in a text editor.
21277    /// 
21278    /// When you list the analyses for a repository,
21279    /// one or more will be identified as deletable in the response:
21280    /// 
21281    /// ```text
21282    /// "deletable": true
21283    /// ```
21284    /// 
21285    /// An analysis is deletable when it's the most recent in a set of analyses.
21286    /// Typically, a repository will have multiple sets of analyses
21287    /// for each enabled code scanning tool,
21288    /// where a set is determined by a unique combination of analysis values:
21289    /// 
21290    /// * `ref`
21291    /// * `tool`
21292    /// * `analysis_key`
21293    /// * `environment`
21294    /// 
21295    /// If you attempt to delete an analysis that is not the most recent in a set,
21296    /// you'll get a 400 response with the message:
21297    /// 
21298    /// ```text
21299    /// Analysis specified is not deletable.
21300    /// ```
21301    /// 
21302    /// The response from a successful `DELETE` operation provides you with
21303    /// two alternative URLs for deleting the next analysis in the set:
21304    /// `next_analysis_url` and `confirm_delete_url`.
21305    /// Use the `next_analysis_url` URL if you want to avoid accidentally deleting the final analysis
21306    /// in a set. This is a useful option if you want to preserve at least one analysis
21307    /// for the specified tool in your repository.
21308    /// Use the `confirm_delete_url` URL if you are content to remove all analyses for a tool.
21309    /// When you delete the last analysis in a set, the value of `next_analysis_url` and `confirm_delete_url`
21310    /// in the 200 response is `null`.
21311    /// 
21312    /// As an example of the deletion process,
21313    /// let's imagine that you added a workflow that configured a particular code scanning tool
21314    /// to analyze the code in a repository. This tool has added 15 analyses:
21315    /// 10 on the default branch, and another 5 on a topic branch.
21316    /// You therefore have two separate sets of analyses for this tool.
21317    /// You've now decided that you want to remove all of the analyses for the tool.
21318    /// To do this you must make 15 separate deletion requests.
21319    /// To start, you must find an analysis that's identified as deletable.
21320    /// Each set of analyses always has one that's identified as deletable.
21321    /// Having found the deletable analysis for one of the two sets,
21322    /// delete this analysis and then continue deleting the next analysis in the set until they're all deleted.
21323    /// Then repeat the process for the second set.
21324    /// The procedure therefore consists of a nested loop:
21325    /// 
21326    /// **Outer loop**:
21327    /// * List the analyses for the repository, filtered by tool.
21328    /// * Parse this list to find a deletable analysis. If found:
21329    /// 
21330    ///   **Inner loop**:
21331    ///   * Delete the identified analysis.
21332    ///   * Parse the response for the value of `confirm_delete_url` and, if found, use this in the next iteration.
21333    /// 
21334    /// The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the `confirm_delete_url` value. Alternatively, you could use the `next_analysis_url` value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.
21335    /// 
21336    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#delete-a-code-scanning-analysis-from-a-repository)
21337    pub fn code_scanning_delete_analysis(
21338        &self,
21339        owner: &str,
21340        repo: &str,
21341        analysis_id: i64,
21342        confirm_delete: ::std::option::Option<::std::option::Option<&str>>,
21343    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21344        let mut theScheme = AuthScheme::from(&self.config.authentication);
21345
21346        while let Some(auth_step) = theScheme.step()? {
21347            match auth_step {
21348                ::authentic::AuthenticationStep::Request(auth_request) => {
21349                    theScheme.respond(self.client.execute(auth_request));
21350                }
21351                ::authentic::AuthenticationStep::WaitFor(duration) => {
21352                    (self.sleep)(duration);
21353                }
21354            }
21355        }
21356        let theBuilder = crate::v1_1_4::request::code_scanning_delete_analysis::reqwest_blocking_builder(
21357            self.config.base_url.as_ref(),
21358            owner,
21359            repo,
21360            analysis_id,
21361            confirm_delete,
21362            self.config.user_agent.as_ref(),
21363            self.config.accept.as_deref(),
21364        )?
21365        .with_authentication(&theScheme)?;
21366
21367        let theRequest =
21368            crate::v1_1_4::request::code_scanning_delete_analysis::reqwest_blocking_request(theBuilder)?;
21369
21370        ::log::debug!("HTTP request: {:?}", &theRequest);
21371
21372        let theResponse = self.client.execute(theRequest)?;
21373
21374        ::log::debug!("HTTP response: {:?}", &theResponse);
21375
21376        Ok(theResponse)
21377    }
21378
21379    /// Upload an analysis as SARIF data
21380    /// 
21381    /// Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the `security_events` scope to use this endpoint for private repositories. You can also use tokens with the `public_repo` scope for public repositories only. GitHub Apps must have the `security_events` write permission to use this endpoint.
21382    /// 
21383    /// There are two places where you can upload code scanning results.
21384    ///  - If you upload to a pull request, for example `--ref refs/pull/42/merge` or `--ref refs/pull/42/head`, then the results appear as alerts in a pull request check. For more information, see "[Triaging code scanning alerts in pull requests](/code-security/secure-coding/triaging-code-scanning-alerts-in-pull-requests)."
21385    ///  - If you upload to a branch, for example `--ref refs/heads/my-branch`, then the results appear in the **Security** tab for your repository. For more information, see "[Managing code scanning alerts for your repository](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository#viewing-the-alerts-for-a-repository)."
21386    /// 
21387    /// You must compress the SARIF-formatted analysis data that you want to upload, using `gzip`, and then encode it as a Base64 format string. For example:
21388    /// 
21389    /// ```text
21390    /// gzip -c analysis-data.sarif | base64 -w0
21391    /// ```
21392    /// 
21393    /// SARIF upload supports a maximum of 5000 results per analysis run. Any results over this limit are ignored and any SARIF uploads with more than 25,000 results are rejected. Typically, but not necessarily, a SARIF file contains a single run of a single tool. If a code scanning tool generates too many results, you should update the analysis configuration to run only the most important rules or queries.
21394    /// 
21395    /// The `202 Accepted`, response includes an `id` value.
21396    /// You can use this ID to check the status of the upload by using this for the `/sarifs/{sarif_id}` endpoint.
21397    /// For more information, see "[Get information about a SARIF upload](/rest/reference/code-scanning#get-information-about-a-sarif-upload)."
21398    /// 
21399    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#upload-a-sarif-file)
21400    ///
21401    /// # Content
21402    ///
21403    /// - [`&v1_1_4::request::code_scanning_upload_sarif::body::Json`](crate::v1_1_4::request::code_scanning_upload_sarif::body::Json)
21404    pub fn code_scanning_upload_sarif<Content>(
21405        &self,
21406        owner: &str,
21407        repo: &str,
21408        theContent: Content,
21409    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
21410    where
21411        Content: Copy + TryInto<crate::v1_1_4::request::code_scanning_upload_sarif::Content<::reqwest::blocking::Body>>,
21412        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::code_scanning_upload_sarif::Content<::reqwest::blocking::Body>>>::Error>
21413    {
21414        let mut theScheme = AuthScheme::from(&self.config.authentication);
21415
21416        while let Some(auth_step) = theScheme.step()? {
21417            match auth_step {
21418                ::authentic::AuthenticationStep::Request(auth_request) => {
21419                    theScheme.respond(self.client.execute(auth_request));
21420                }
21421                ::authentic::AuthenticationStep::WaitFor(duration) => {
21422                    (self.sleep)(duration);
21423                }
21424            }
21425        }
21426        let theBuilder = crate::v1_1_4::request::code_scanning_upload_sarif::reqwest_blocking_builder(
21427            self.config.base_url.as_ref(),
21428            owner,
21429            repo,
21430            self.config.user_agent.as_ref(),
21431            self.config.accept.as_deref(),
21432        )?
21433        .with_authentication(&theScheme)?;
21434
21435        let theRequest = crate::v1_1_4::request::code_scanning_upload_sarif::reqwest_blocking_request(
21436            theBuilder,
21437            theContent.try_into()?,
21438        )?;
21439
21440        ::log::debug!("HTTP request: {:?}", &theRequest);
21441
21442        let theResponse = self.client.execute(theRequest)?;
21443
21444        ::log::debug!("HTTP response: {:?}", &theResponse);
21445
21446        Ok(theResponse)
21447    }
21448
21449    /// Get information about a SARIF upload
21450    /// 
21451    /// Gets information about a SARIF upload, including the status and the URL of the analysis that was uploaded so that you can retrieve details of the analysis. For more information, see "[Get a code scanning analysis for a repository](/rest/reference/code-scanning#get-a-code-scanning-analysis-for-a-repository)." You must use an access token with the `security_events` scope to use this endpoint with private repos, the `public_repo` scope also grants permission to read security events on public repos only. GitHub Apps must have the `security_events` read permission to use this endpoint.
21452    /// 
21453    /// [API method documentation](https://docs.github.com/rest/reference/code-scanning#list-recent-code-scanning-analyses-for-a-repository)
21454    pub fn code_scanning_get_sarif(
21455        &self,
21456        owner: &str,
21457        repo: &str,
21458        sarif_id: &str,
21459    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21460        let mut theScheme = AuthScheme::from(&self.config.authentication);
21461
21462        while let Some(auth_step) = theScheme.step()? {
21463            match auth_step {
21464                ::authentic::AuthenticationStep::Request(auth_request) => {
21465                    theScheme.respond(self.client.execute(auth_request));
21466                }
21467                ::authentic::AuthenticationStep::WaitFor(duration) => {
21468                    (self.sleep)(duration);
21469                }
21470            }
21471        }
21472        let theBuilder = crate::v1_1_4::request::code_scanning_get_sarif::reqwest_blocking_builder(
21473            self.config.base_url.as_ref(),
21474            owner,
21475            repo,
21476            sarif_id,
21477            self.config.user_agent.as_ref(),
21478            self.config.accept.as_deref(),
21479        )?
21480        .with_authentication(&theScheme)?;
21481
21482        let theRequest =
21483            crate::v1_1_4::request::code_scanning_get_sarif::reqwest_blocking_request(theBuilder)?;
21484
21485        ::log::debug!("HTTP request: {:?}", &theRequest);
21486
21487        let theResponse = self.client.execute(theRequest)?;
21488
21489        ::log::debug!("HTTP response: {:?}", &theResponse);
21490
21491        Ok(theResponse)
21492    }
21493
21494    /// List CODEOWNERS errors
21495    /// 
21496    /// List any syntax errors that are detected in the CODEOWNERS
21497    /// file.
21498    /// 
21499    /// For more information about the correct CODEOWNERS syntax,
21500    /// see "[About code owners](https://docs.github.com/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners)."
21501    /// 
21502    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-codeowners-errors)
21503    pub fn repos_codeowners_errors(
21504        &self,
21505        owner: &str,
21506        repo: &str,
21507        r#ref: ::std::option::Option<&str>,
21508    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21509        let mut theScheme = AuthScheme::from(&self.config.authentication);
21510
21511        while let Some(auth_step) = theScheme.step()? {
21512            match auth_step {
21513                ::authentic::AuthenticationStep::Request(auth_request) => {
21514                    theScheme.respond(self.client.execute(auth_request));
21515                }
21516                ::authentic::AuthenticationStep::WaitFor(duration) => {
21517                    (self.sleep)(duration);
21518                }
21519            }
21520        }
21521        let theBuilder = crate::v1_1_4::request::repos_codeowners_errors::reqwest_blocking_builder(
21522            self.config.base_url.as_ref(),
21523            owner,
21524            repo,
21525            r#ref,
21526            self.config.user_agent.as_ref(),
21527            self.config.accept.as_deref(),
21528        )?
21529        .with_authentication(&theScheme)?;
21530
21531        let theRequest =
21532            crate::v1_1_4::request::repos_codeowners_errors::reqwest_blocking_request(theBuilder)?;
21533
21534        ::log::debug!("HTTP request: {:?}", &theRequest);
21535
21536        let theResponse = self.client.execute(theRequest)?;
21537
21538        ::log::debug!("HTTP response: {:?}", &theResponse);
21539
21540        Ok(theResponse)
21541    }
21542
21543    /// List codespaces in a repository for the authenticated user
21544    /// 
21545    /// Lists the codespaces associated to a specified repository and the authenticated user.
21546    /// 
21547    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
21548    /// 
21549    /// GitHub Apps must have read access to the `codespaces` repository permission to use this endpoint.
21550    /// 
21551    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#list-codespaces-in-a-repository-for-the-authenticated-user)
21552    pub fn codespaces_list_in_repository_for_authenticated_user(
21553        &self,
21554        per_page: ::std::option::Option<i64>,
21555        page: ::std::option::Option<i64>,
21556        owner: &str,
21557        repo: &str,
21558    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21559        let mut theScheme = AuthScheme::from(&self.config.authentication);
21560
21561        while let Some(auth_step) = theScheme.step()? {
21562            match auth_step {
21563                ::authentic::AuthenticationStep::Request(auth_request) => {
21564                    theScheme.respond(self.client.execute(auth_request));
21565                }
21566                ::authentic::AuthenticationStep::WaitFor(duration) => {
21567                    (self.sleep)(duration);
21568                }
21569            }
21570        }
21571        let theBuilder = crate::v1_1_4::request::codespaces_list_in_repository_for_authenticated_user::reqwest_blocking_builder(
21572            self.config.base_url.as_ref(),
21573            owner,
21574            repo,
21575            per_page,
21576            page,
21577            self.config.user_agent.as_ref(),
21578            self.config.accept.as_deref(),
21579        )?
21580        .with_authentication(&theScheme)?;
21581
21582        let theRequest =
21583            crate::v1_1_4::request::codespaces_list_in_repository_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
21584
21585        ::log::debug!("HTTP request: {:?}", &theRequest);
21586
21587        let theResponse = self.client.execute(theRequest)?;
21588
21589        ::log::debug!("HTTP response: {:?}", &theResponse);
21590
21591        Ok(theResponse)
21592    }
21593
21594    /// Create a codespace in a repository
21595    /// 
21596    /// Creates a codespace owned by the authenticated user in the specified repository.
21597    /// 
21598    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
21599    /// 
21600    /// GitHub Apps must have write access to the `codespaces` repository permission to use this endpoint.
21601    /// 
21602    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#create-a-codespace-in-a-repository)
21603    ///
21604    /// # Content
21605    ///
21606    /// - [`&::std::option::Option<crate::v1_1_4::request::codespaces_create_with_repo_for_authenticated_user::body::Json>`](crate::v1_1_4::request::codespaces_create_with_repo_for_authenticated_user::body::Json)
21607    pub fn codespaces_create_with_repo_for_authenticated_user<Content>(
21608        &self,
21609        owner: &str,
21610        repo: &str,
21611        theContent: Content,
21612    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
21613    where
21614        Content: Copy + TryInto<crate::v1_1_4::request::codespaces_create_with_repo_for_authenticated_user::Content<::reqwest::blocking::Body>>,
21615        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::codespaces_create_with_repo_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
21616    {
21617        let mut theScheme = AuthScheme::from(&self.config.authentication);
21618
21619        while let Some(auth_step) = theScheme.step()? {
21620            match auth_step {
21621                ::authentic::AuthenticationStep::Request(auth_request) => {
21622                    theScheme.respond(self.client.execute(auth_request));
21623                }
21624                ::authentic::AuthenticationStep::WaitFor(duration) => {
21625                    (self.sleep)(duration);
21626                }
21627            }
21628        }
21629        let theBuilder = crate::v1_1_4::request::codespaces_create_with_repo_for_authenticated_user::reqwest_blocking_builder(
21630            self.config.base_url.as_ref(),
21631            owner,
21632            repo,
21633            self.config.user_agent.as_ref(),
21634            self.config.accept.as_deref(),
21635        )?
21636        .with_authentication(&theScheme)?;
21637
21638        let theRequest = crate::v1_1_4::request::codespaces_create_with_repo_for_authenticated_user::reqwest_blocking_request(
21639            theBuilder,
21640            theContent.try_into()?,
21641        )?;
21642
21643        ::log::debug!("HTTP request: {:?}", &theRequest);
21644
21645        let theResponse = self.client.execute(theRequest)?;
21646
21647        ::log::debug!("HTTP response: {:?}", &theResponse);
21648
21649        Ok(theResponse)
21650    }
21651
21652    /// List available machine types for a repository
21653    /// 
21654    /// List the machine types available for a given repository based on its configuration.
21655    /// 
21656    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
21657    /// 
21658    /// GitHub Apps must have write access to the `codespaces_metadata` repository permission to use this endpoint.
21659    /// 
21660    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#list-available-machine-types-for-a-repository)
21661    pub fn codespaces_repo_machines_for_authenticated_user(
21662        &self,
21663        owner: &str,
21664        repo: &str,
21665        location: ::std::option::Option<&str>,
21666    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21667        let mut theScheme = AuthScheme::from(&self.config.authentication);
21668
21669        while let Some(auth_step) = theScheme.step()? {
21670            match auth_step {
21671                ::authentic::AuthenticationStep::Request(auth_request) => {
21672                    theScheme.respond(self.client.execute(auth_request));
21673                }
21674                ::authentic::AuthenticationStep::WaitFor(duration) => {
21675                    (self.sleep)(duration);
21676                }
21677            }
21678        }
21679        let theBuilder = crate::v1_1_4::request::codespaces_repo_machines_for_authenticated_user::reqwest_blocking_builder(
21680            self.config.base_url.as_ref(),
21681            owner,
21682            repo,
21683            location,
21684            self.config.user_agent.as_ref(),
21685            self.config.accept.as_deref(),
21686        )?
21687        .with_authentication(&theScheme)?;
21688
21689        let theRequest =
21690            crate::v1_1_4::request::codespaces_repo_machines_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
21691
21692        ::log::debug!("HTTP request: {:?}", &theRequest);
21693
21694        let theResponse = self.client.execute(theRequest)?;
21695
21696        ::log::debug!("HTTP response: {:?}", &theResponse);
21697
21698        Ok(theResponse)
21699    }
21700
21701    /// List repository secrets
21702    /// 
21703    /// Lists all secrets available in a repository without revealing their encrypted values. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `codespaces_secrets` repository permission to use this endpoint.
21704    /// 
21705    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#list-repository-secrets)
21706    pub fn codespaces_list_repo_secrets(
21707        &self,
21708        owner: &str,
21709        repo: &str,
21710        per_page: ::std::option::Option<i64>,
21711        page: ::std::option::Option<i64>,
21712    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21713        let mut theScheme = AuthScheme::from(&self.config.authentication);
21714
21715        while let Some(auth_step) = theScheme.step()? {
21716            match auth_step {
21717                ::authentic::AuthenticationStep::Request(auth_request) => {
21718                    theScheme.respond(self.client.execute(auth_request));
21719                }
21720                ::authentic::AuthenticationStep::WaitFor(duration) => {
21721                    (self.sleep)(duration);
21722                }
21723            }
21724        }
21725        let theBuilder = crate::v1_1_4::request::codespaces_list_repo_secrets::reqwest_blocking_builder(
21726            self.config.base_url.as_ref(),
21727            owner,
21728            repo,
21729            per_page,
21730            page,
21731            self.config.user_agent.as_ref(),
21732            self.config.accept.as_deref(),
21733        )?
21734        .with_authentication(&theScheme)?;
21735
21736        let theRequest =
21737            crate::v1_1_4::request::codespaces_list_repo_secrets::reqwest_blocking_request(theBuilder)?;
21738
21739        ::log::debug!("HTTP request: {:?}", &theRequest);
21740
21741        let theResponse = self.client.execute(theRequest)?;
21742
21743        ::log::debug!("HTTP response: {:?}", &theResponse);
21744
21745        Ok(theResponse)
21746    }
21747
21748    /// Get a repository public key
21749    /// 
21750    /// Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `codespaces_secrets` repository permission to use this endpoint.
21751    /// 
21752    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#get-a-repository-public-key)
21753    pub fn codespaces_get_repo_public_key(
21754        &self,
21755        owner: &str,
21756        repo: &str,
21757    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21758        let mut theScheme = AuthScheme::from(&self.config.authentication);
21759
21760        while let Some(auth_step) = theScheme.step()? {
21761            match auth_step {
21762                ::authentic::AuthenticationStep::Request(auth_request) => {
21763                    theScheme.respond(self.client.execute(auth_request));
21764                }
21765                ::authentic::AuthenticationStep::WaitFor(duration) => {
21766                    (self.sleep)(duration);
21767                }
21768            }
21769        }
21770        let theBuilder = crate::v1_1_4::request::codespaces_get_repo_public_key::reqwest_blocking_builder(
21771            self.config.base_url.as_ref(),
21772            owner,
21773            repo,
21774            self.config.user_agent.as_ref(),
21775            self.config.accept.as_deref(),
21776        )?
21777        .with_authentication(&theScheme)?;
21778
21779        let theRequest =
21780            crate::v1_1_4::request::codespaces_get_repo_public_key::reqwest_blocking_request(theBuilder)?;
21781
21782        ::log::debug!("HTTP request: {:?}", &theRequest);
21783
21784        let theResponse = self.client.execute(theRequest)?;
21785
21786        ::log::debug!("HTTP response: {:?}", &theResponse);
21787
21788        Ok(theResponse)
21789    }
21790
21791    /// Get a repository secret
21792    /// 
21793    /// Gets a single repository secret without revealing its encrypted value. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `codespaces_secrets` repository permission to use this endpoint.
21794    /// 
21795    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#get-a-repository-secret)
21796    pub fn codespaces_get_repo_secret(
21797        &self,
21798        owner: &str,
21799        repo: &str,
21800        secret_name: &str,
21801    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21802        let mut theScheme = AuthScheme::from(&self.config.authentication);
21803
21804        while let Some(auth_step) = theScheme.step()? {
21805            match auth_step {
21806                ::authentic::AuthenticationStep::Request(auth_request) => {
21807                    theScheme.respond(self.client.execute(auth_request));
21808                }
21809                ::authentic::AuthenticationStep::WaitFor(duration) => {
21810                    (self.sleep)(duration);
21811                }
21812            }
21813        }
21814        let theBuilder = crate::v1_1_4::request::codespaces_get_repo_secret::reqwest_blocking_builder(
21815            self.config.base_url.as_ref(),
21816            owner,
21817            repo,
21818            secret_name,
21819            self.config.user_agent.as_ref(),
21820            self.config.accept.as_deref(),
21821        )?
21822        .with_authentication(&theScheme)?;
21823
21824        let theRequest =
21825            crate::v1_1_4::request::codespaces_get_repo_secret::reqwest_blocking_request(theBuilder)?;
21826
21827        ::log::debug!("HTTP request: {:?}", &theRequest);
21828
21829        let theResponse = self.client.execute(theRequest)?;
21830
21831        ::log::debug!("HTTP response: {:?}", &theResponse);
21832
21833        Ok(theResponse)
21834    }
21835
21836    /// Create or update a repository secret
21837    /// 
21838    /// Creates or updates a repository secret with an encrypted value. Encrypt your secret using
21839    /// [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages). You must authenticate using an access
21840    /// token with the `repo` scope to use this endpoint. GitHub Apps must have the `codespaces_secrets` repository
21841    /// permission to use this endpoint.
21842    /// 
21843    /// #### Example of encrypting a secret using Node.js
21844    /// 
21845    /// Encrypt your secret using the [tweetsodium](https://github.com/github/tweetsodium) library.
21846    /// 
21847    /// ```text
21848    /// const sodium = require('tweetsodium');
21849    /// 
21850    /// const key = "base64-encoded-public-key";
21851    /// const value = "plain-text-secret";
21852    /// 
21853    /// // Convert the message and key to Uint8Array's (Buffer implements that interface)
21854    /// const messageBytes = Buffer.from(value);
21855    /// const keyBytes = Buffer.from(key, 'base64');
21856    /// 
21857    /// // Encrypt using LibSodium.
21858    /// const encryptedBytes = sodium.seal(messageBytes, keyBytes);
21859    /// 
21860    /// // Base64 the encrypted secret
21861    /// const encrypted = Buffer.from(encryptedBytes).toString('base64');
21862    /// 
21863    /// console.log(encrypted);
21864    /// ```
21865    /// 
21866    /// 
21867    /// #### Example of encrypting a secret using Python
21868    /// 
21869    /// Encrypt your secret using [pynacl](https://pynacl.readthedocs.io/en/latest/public/#nacl-public-sealedbox) with Python 3.
21870    /// 
21871    /// ```text
21872    /// from base64 import b64encode
21873    /// from nacl import encoding, public
21874    /// 
21875    /// def encrypt(public_key: str, secret_value: str) -> str:
21876    ///   """Encrypt a Unicode string using the public key."""
21877    ///   public_key = public.PublicKey(public_key.encode("utf-8"), encoding.Base64Encoder())
21878    ///   sealed_box = public.SealedBox(public_key)
21879    ///   encrypted = sealed_box.encrypt(secret_value.encode("utf-8"))
21880    ///   return b64encode(encrypted).decode("utf-8")
21881    /// ```
21882    /// 
21883    /// #### Example of encrypting a secret using C#
21884    /// 
21885    /// Encrypt your secret using the [Sodium.Core](https://www.nuget.org/packages/Sodium.Core/) package.
21886    /// 
21887    /// ```text
21888    /// var secretValue = System.Text.Encoding.UTF8.GetBytes("mySecret");
21889    /// var publicKey = Convert.FromBase64String("2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=");
21890    /// 
21891    /// var sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);
21892    /// 
21893    /// Console.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));
21894    /// ```
21895    /// 
21896    /// #### Example of encrypting a secret using Ruby
21897    /// 
21898    /// Encrypt your secret using the [rbnacl](https://github.com/RubyCrypto/rbnacl) gem.
21899    /// 
21900    /// ```ruby
21901    /// require "rbnacl"
21902    /// require "base64"
21903    /// 
21904    /// key = Base64.decode64("+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=")
21905    /// public_key = RbNaCl::PublicKey.new(key)
21906    /// 
21907    /// box = RbNaCl::Boxes::Sealed.from_public_key(public_key)
21908    /// encrypted_secret = box.encrypt("my_secret")
21909    /// 
21910    /// # Print the base64 encoded secret
21911    /// puts Base64.strict_encode64(encrypted_secret)
21912    /// ```
21913    /// 
21914    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#create-or-update-a-repository-secret)
21915    ///
21916    /// # Content
21917    ///
21918    /// - [`&v1_1_4::request::codespaces_create_or_update_repo_secret::body::Json`](crate::v1_1_4::request::codespaces_create_or_update_repo_secret::body::Json)
21919    pub fn codespaces_create_or_update_repo_secret<Content>(
21920        &self,
21921        owner: &str,
21922        repo: &str,
21923        secret_name: &str,
21924        theContent: Content,
21925    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
21926    where
21927        Content: Copy + TryInto<crate::v1_1_4::request::codespaces_create_or_update_repo_secret::Content<::reqwest::blocking::Body>>,
21928        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::codespaces_create_or_update_repo_secret::Content<::reqwest::blocking::Body>>>::Error>
21929    {
21930        let mut theScheme = AuthScheme::from(&self.config.authentication);
21931
21932        while let Some(auth_step) = theScheme.step()? {
21933            match auth_step {
21934                ::authentic::AuthenticationStep::Request(auth_request) => {
21935                    theScheme.respond(self.client.execute(auth_request));
21936                }
21937                ::authentic::AuthenticationStep::WaitFor(duration) => {
21938                    (self.sleep)(duration);
21939                }
21940            }
21941        }
21942        let theBuilder = crate::v1_1_4::request::codespaces_create_or_update_repo_secret::reqwest_blocking_builder(
21943            self.config.base_url.as_ref(),
21944            owner,
21945            repo,
21946            secret_name,
21947            self.config.user_agent.as_ref(),
21948            self.config.accept.as_deref(),
21949        )?
21950        .with_authentication(&theScheme)?;
21951
21952        let theRequest = crate::v1_1_4::request::codespaces_create_or_update_repo_secret::reqwest_blocking_request(
21953            theBuilder,
21954            theContent.try_into()?,
21955        )?;
21956
21957        ::log::debug!("HTTP request: {:?}", &theRequest);
21958
21959        let theResponse = self.client.execute(theRequest)?;
21960
21961        ::log::debug!("HTTP response: {:?}", &theResponse);
21962
21963        Ok(theResponse)
21964    }
21965
21966    /// Delete a repository secret
21967    /// 
21968    /// Deletes a secret in a repository using the secret name. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `codespaces_secrets` repository permission to use this endpoint.
21969    /// 
21970    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#delete-a-repository-secret)
21971    pub fn codespaces_delete_repo_secret(
21972        &self,
21973        owner: &str,
21974        repo: &str,
21975        secret_name: &str,
21976    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
21977        let mut theScheme = AuthScheme::from(&self.config.authentication);
21978
21979        while let Some(auth_step) = theScheme.step()? {
21980            match auth_step {
21981                ::authentic::AuthenticationStep::Request(auth_request) => {
21982                    theScheme.respond(self.client.execute(auth_request));
21983                }
21984                ::authentic::AuthenticationStep::WaitFor(duration) => {
21985                    (self.sleep)(duration);
21986                }
21987            }
21988        }
21989        let theBuilder = crate::v1_1_4::request::codespaces_delete_repo_secret::reqwest_blocking_builder(
21990            self.config.base_url.as_ref(),
21991            owner,
21992            repo,
21993            secret_name,
21994            self.config.user_agent.as_ref(),
21995            self.config.accept.as_deref(),
21996        )?
21997        .with_authentication(&theScheme)?;
21998
21999        let theRequest =
22000            crate::v1_1_4::request::codespaces_delete_repo_secret::reqwest_blocking_request(theBuilder)?;
22001
22002        ::log::debug!("HTTP request: {:?}", &theRequest);
22003
22004        let theResponse = self.client.execute(theRequest)?;
22005
22006        ::log::debug!("HTTP response: {:?}", &theResponse);
22007
22008        Ok(theResponse)
22009    }
22010
22011    /// List repository collaborators
22012    /// 
22013    /// For organization-owned repositories, the list of collaborators includes outside collaborators, organization members that are direct collaborators, organization members with access through team memberships, organization members with access through default organization permissions, and organization owners.
22014    /// Organization members with write, maintain, or admin privileges on the organization-owned repository can use this endpoint.
22015    /// 
22016    /// Team members will include the members of child teams.
22017    /// 
22018    /// You must authenticate using an access token with the `read:org` and `repo` scopes with push access to use this
22019    /// endpoint. GitHub Apps must have the `members` organization permission and `metadata` repository permission to use this
22020    /// endpoint.
22021    /// 
22022    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repository-collaborators)
22023    pub fn repos_list_collaborators(
22024        &self,
22025        owner: &str,
22026        repo: &str,
22027        affiliation: ::std::option::Option<&str>,
22028        per_page: ::std::option::Option<i64>,
22029        page: ::std::option::Option<i64>,
22030    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22031        let mut theScheme = AuthScheme::from(&self.config.authentication);
22032
22033        while let Some(auth_step) = theScheme.step()? {
22034            match auth_step {
22035                ::authentic::AuthenticationStep::Request(auth_request) => {
22036                    theScheme.respond(self.client.execute(auth_request));
22037                }
22038                ::authentic::AuthenticationStep::WaitFor(duration) => {
22039                    (self.sleep)(duration);
22040                }
22041            }
22042        }
22043        let theBuilder = crate::v1_1_4::request::repos_list_collaborators::reqwest_blocking_builder(
22044            self.config.base_url.as_ref(),
22045            owner,
22046            repo,
22047            affiliation,
22048            per_page,
22049            page,
22050            self.config.user_agent.as_ref(),
22051            self.config.accept.as_deref(),
22052        )?
22053        .with_authentication(&theScheme)?;
22054
22055        let theRequest =
22056            crate::v1_1_4::request::repos_list_collaborators::reqwest_blocking_request(theBuilder)?;
22057
22058        ::log::debug!("HTTP request: {:?}", &theRequest);
22059
22060        let theResponse = self.client.execute(theRequest)?;
22061
22062        ::log::debug!("HTTP response: {:?}", &theResponse);
22063
22064        Ok(theResponse)
22065    }
22066
22067    /// Check if a user is a repository collaborator
22068    /// 
22069    /// For organization-owned repositories, the list of collaborators includes outside collaborators, organization members that are direct collaborators, organization members with access through team memberships, organization members with access through default organization permissions, and organization owners.
22070    /// 
22071    /// Team members will include the members of child teams.
22072    /// 
22073    /// You must authenticate using an access token with the `read:org` and `repo` scopes with push access to use this
22074    /// endpoint. GitHub Apps must have the `members` organization permission and `metadata` repository permission to use this
22075    /// endpoint.
22076    /// 
22077    /// [API method documentation](https://docs.github.com/rest/reference/repos#check-if-a-user-is-a-repository-collaborator)
22078    pub fn repos_check_collaborator(
22079        &self,
22080        owner: &str,
22081        repo: &str,
22082        username: &str,
22083    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22084        let mut theScheme = AuthScheme::from(&self.config.authentication);
22085
22086        while let Some(auth_step) = theScheme.step()? {
22087            match auth_step {
22088                ::authentic::AuthenticationStep::Request(auth_request) => {
22089                    theScheme.respond(self.client.execute(auth_request));
22090                }
22091                ::authentic::AuthenticationStep::WaitFor(duration) => {
22092                    (self.sleep)(duration);
22093                }
22094            }
22095        }
22096        let theBuilder = crate::v1_1_4::request::repos_check_collaborator::reqwest_blocking_builder(
22097            self.config.base_url.as_ref(),
22098            owner,
22099            repo,
22100            username,
22101            self.config.user_agent.as_ref(),
22102            self.config.accept.as_deref(),
22103        )?
22104        .with_authentication(&theScheme)?;
22105
22106        let theRequest =
22107            crate::v1_1_4::request::repos_check_collaborator::reqwest_blocking_request(theBuilder)?;
22108
22109        ::log::debug!("HTTP request: {:?}", &theRequest);
22110
22111        let theResponse = self.client.execute(theRequest)?;
22112
22113        ::log::debug!("HTTP response: {:?}", &theResponse);
22114
22115        Ok(theResponse)
22116    }
22117
22118    /// Add a repository collaborator
22119    /// 
22120    /// This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
22121    /// 
22122    /// Adding an outside collaborator may be restricted by enterprise administrators. For more information, see "[Enforcing repository management policies in your enterprise](https://docs.github.com/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-inviting-outside-collaborators-to-repositories)."
22123    /// 
22124    /// For more information on permission levels, see "[Repository permission levels for an organization](https://docs.github.com/github/setting-up-and-managing-organizations-and-teams/repository-permission-levels-for-an-organization#permission-levels-for-repositories-owned-by-an-organization)". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:
22125    /// 
22126    /// ```text
22127    /// Cannot assign {member} permission of {role name}
22128    /// ```
22129    /// 
22130    /// Note that, if you choose not to pass any parameters, you'll need to set `Content-Length` to zero when calling out to this endpoint. For more information, see "[HTTP verbs](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-verbs)."
22131    /// 
22132    /// The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the [repository invitations API endpoints](https://docs.github.com/rest/reference/repos#invitations).
22133    /// 
22134    /// **Updating an existing collaborator's permission level**
22135    /// 
22136    /// The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different `permission` parameter. The response will be a `204`, with no other indication that the permission level changed.
22137    /// 
22138    /// **Rate limits**
22139    /// 
22140    /// You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.
22141    /// 
22142    /// [API method documentation](https://docs.github.com/rest/reference/repos#add-a-repository-collaborator)
22143    ///
22144    /// # Content
22145    ///
22146    /// - [`&v1_1_4::request::repos_add_collaborator::body::Json`](crate::v1_1_4::request::repos_add_collaborator::body::Json)
22147    pub fn repos_add_collaborator<Content>(
22148        &self,
22149        owner: &str,
22150        repo: &str,
22151        username: &str,
22152        theContent: Content,
22153    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
22154    where
22155        Content: Copy + TryInto<crate::v1_1_4::request::repos_add_collaborator::Content<::reqwest::blocking::Body>>,
22156        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_add_collaborator::Content<::reqwest::blocking::Body>>>::Error>
22157    {
22158        let mut theScheme = AuthScheme::from(&self.config.authentication);
22159
22160        while let Some(auth_step) = theScheme.step()? {
22161            match auth_step {
22162                ::authentic::AuthenticationStep::Request(auth_request) => {
22163                    theScheme.respond(self.client.execute(auth_request));
22164                }
22165                ::authentic::AuthenticationStep::WaitFor(duration) => {
22166                    (self.sleep)(duration);
22167                }
22168            }
22169        }
22170        let theBuilder = crate::v1_1_4::request::repos_add_collaborator::reqwest_blocking_builder(
22171            self.config.base_url.as_ref(),
22172            owner,
22173            repo,
22174            username,
22175            self.config.user_agent.as_ref(),
22176            self.config.accept.as_deref(),
22177        )?
22178        .with_authentication(&theScheme)?;
22179
22180        let theRequest = crate::v1_1_4::request::repos_add_collaborator::reqwest_blocking_request(
22181            theBuilder,
22182            theContent.try_into()?,
22183        )?;
22184
22185        ::log::debug!("HTTP request: {:?}", &theRequest);
22186
22187        let theResponse = self.client.execute(theRequest)?;
22188
22189        ::log::debug!("HTTP response: {:?}", &theResponse);
22190
22191        Ok(theResponse)
22192    }
22193
22194    /// Remove a repository collaborator
22195    /// 
22196    /// [API method documentation](https://docs.github.com/rest/reference/repos#remove-a-repository-collaborator)
22197    pub fn repos_remove_collaborator(
22198        &self,
22199        owner: &str,
22200        repo: &str,
22201        username: &str,
22202    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22203        let mut theScheme = AuthScheme::from(&self.config.authentication);
22204
22205        while let Some(auth_step) = theScheme.step()? {
22206            match auth_step {
22207                ::authentic::AuthenticationStep::Request(auth_request) => {
22208                    theScheme.respond(self.client.execute(auth_request));
22209                }
22210                ::authentic::AuthenticationStep::WaitFor(duration) => {
22211                    (self.sleep)(duration);
22212                }
22213            }
22214        }
22215        let theBuilder = crate::v1_1_4::request::repos_remove_collaborator::reqwest_blocking_builder(
22216            self.config.base_url.as_ref(),
22217            owner,
22218            repo,
22219            username,
22220            self.config.user_agent.as_ref(),
22221            self.config.accept.as_deref(),
22222        )?
22223        .with_authentication(&theScheme)?;
22224
22225        let theRequest =
22226            crate::v1_1_4::request::repos_remove_collaborator::reqwest_blocking_request(theBuilder)?;
22227
22228        ::log::debug!("HTTP request: {:?}", &theRequest);
22229
22230        let theResponse = self.client.execute(theRequest)?;
22231
22232        ::log::debug!("HTTP response: {:?}", &theResponse);
22233
22234        Ok(theResponse)
22235    }
22236
22237    /// Get repository permissions for a user
22238    /// 
22239    /// Checks the repository permission of a collaborator. The possible repository permissions are `admin`, `write`, `read`, and `none`.
22240    /// 
22241    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-repository-permissions-for-a-user)
22242    pub fn repos_get_collaborator_permission_level(
22243        &self,
22244        owner: &str,
22245        repo: &str,
22246        username: &str,
22247    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22248        let mut theScheme = AuthScheme::from(&self.config.authentication);
22249
22250        while let Some(auth_step) = theScheme.step()? {
22251            match auth_step {
22252                ::authentic::AuthenticationStep::Request(auth_request) => {
22253                    theScheme.respond(self.client.execute(auth_request));
22254                }
22255                ::authentic::AuthenticationStep::WaitFor(duration) => {
22256                    (self.sleep)(duration);
22257                }
22258            }
22259        }
22260        let theBuilder = crate::v1_1_4::request::repos_get_collaborator_permission_level::reqwest_blocking_builder(
22261            self.config.base_url.as_ref(),
22262            owner,
22263            repo,
22264            username,
22265            self.config.user_agent.as_ref(),
22266            self.config.accept.as_deref(),
22267        )?
22268        .with_authentication(&theScheme)?;
22269
22270        let theRequest =
22271            crate::v1_1_4::request::repos_get_collaborator_permission_level::reqwest_blocking_request(theBuilder)?;
22272
22273        ::log::debug!("HTTP request: {:?}", &theRequest);
22274
22275        let theResponse = self.client.execute(theRequest)?;
22276
22277        ::log::debug!("HTTP response: {:?}", &theResponse);
22278
22279        Ok(theResponse)
22280    }
22281
22282    /// List commit comments for a repository
22283    /// 
22284    /// Commit Comments use [these custom media types](https://docs.github.com/rest/reference/repos#custom-media-types). You can read more about the use of media types in the API [here](https://docs.github.com/rest/overview/media-types/).
22285    /// 
22286    /// Comments are ordered by ascending ID.
22287    /// 
22288    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-commit-comments-for-a-repository)
22289    pub fn repos_list_commit_comments_for_repo(
22290        &self,
22291        owner: &str,
22292        repo: &str,
22293        per_page: ::std::option::Option<i64>,
22294        page: ::std::option::Option<i64>,
22295    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22296        let mut theScheme = AuthScheme::from(&self.config.authentication);
22297
22298        while let Some(auth_step) = theScheme.step()? {
22299            match auth_step {
22300                ::authentic::AuthenticationStep::Request(auth_request) => {
22301                    theScheme.respond(self.client.execute(auth_request));
22302                }
22303                ::authentic::AuthenticationStep::WaitFor(duration) => {
22304                    (self.sleep)(duration);
22305                }
22306            }
22307        }
22308        let theBuilder = crate::v1_1_4::request::repos_list_commit_comments_for_repo::reqwest_blocking_builder(
22309            self.config.base_url.as_ref(),
22310            owner,
22311            repo,
22312            per_page,
22313            page,
22314            self.config.user_agent.as_ref(),
22315            self.config.accept.as_deref(),
22316        )?
22317        .with_authentication(&theScheme)?;
22318
22319        let theRequest =
22320            crate::v1_1_4::request::repos_list_commit_comments_for_repo::reqwest_blocking_request(theBuilder)?;
22321
22322        ::log::debug!("HTTP request: {:?}", &theRequest);
22323
22324        let theResponse = self.client.execute(theRequest)?;
22325
22326        ::log::debug!("HTTP response: {:?}", &theResponse);
22327
22328        Ok(theResponse)
22329    }
22330
22331    /// Get a commit comment
22332    /// 
22333    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-commit-comment)
22334    pub fn repos_get_commit_comment(
22335        &self,
22336        owner: &str,
22337        repo: &str,
22338        comment_id: i64,
22339    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22340        let mut theScheme = AuthScheme::from(&self.config.authentication);
22341
22342        while let Some(auth_step) = theScheme.step()? {
22343            match auth_step {
22344                ::authentic::AuthenticationStep::Request(auth_request) => {
22345                    theScheme.respond(self.client.execute(auth_request));
22346                }
22347                ::authentic::AuthenticationStep::WaitFor(duration) => {
22348                    (self.sleep)(duration);
22349                }
22350            }
22351        }
22352        let theBuilder = crate::v1_1_4::request::repos_get_commit_comment::reqwest_blocking_builder(
22353            self.config.base_url.as_ref(),
22354            owner,
22355            repo,
22356            comment_id,
22357            self.config.user_agent.as_ref(),
22358            self.config.accept.as_deref(),
22359        )?
22360        .with_authentication(&theScheme)?;
22361
22362        let theRequest =
22363            crate::v1_1_4::request::repos_get_commit_comment::reqwest_blocking_request(theBuilder)?;
22364
22365        ::log::debug!("HTTP request: {:?}", &theRequest);
22366
22367        let theResponse = self.client.execute(theRequest)?;
22368
22369        ::log::debug!("HTTP response: {:?}", &theResponse);
22370
22371        Ok(theResponse)
22372    }
22373
22374    /// Delete a commit comment
22375    /// 
22376    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-commit-comment)
22377    pub fn repos_delete_commit_comment(
22378        &self,
22379        owner: &str,
22380        repo: &str,
22381        comment_id: i64,
22382    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22383        let mut theScheme = AuthScheme::from(&self.config.authentication);
22384
22385        while let Some(auth_step) = theScheme.step()? {
22386            match auth_step {
22387                ::authentic::AuthenticationStep::Request(auth_request) => {
22388                    theScheme.respond(self.client.execute(auth_request));
22389                }
22390                ::authentic::AuthenticationStep::WaitFor(duration) => {
22391                    (self.sleep)(duration);
22392                }
22393            }
22394        }
22395        let theBuilder = crate::v1_1_4::request::repos_delete_commit_comment::reqwest_blocking_builder(
22396            self.config.base_url.as_ref(),
22397            owner,
22398            repo,
22399            comment_id,
22400            self.config.user_agent.as_ref(),
22401            self.config.accept.as_deref(),
22402        )?
22403        .with_authentication(&theScheme)?;
22404
22405        let theRequest =
22406            crate::v1_1_4::request::repos_delete_commit_comment::reqwest_blocking_request(theBuilder)?;
22407
22408        ::log::debug!("HTTP request: {:?}", &theRequest);
22409
22410        let theResponse = self.client.execute(theRequest)?;
22411
22412        ::log::debug!("HTTP response: {:?}", &theResponse);
22413
22414        Ok(theResponse)
22415    }
22416
22417    /// Update a commit comment
22418    /// 
22419    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-a-commit-comment)
22420    ///
22421    /// # Content
22422    ///
22423    /// - [`&v1_1_4::request::repos_update_commit_comment::body::Json`](crate::v1_1_4::request::repos_update_commit_comment::body::Json)
22424    pub fn repos_update_commit_comment<Content>(
22425        &self,
22426        owner: &str,
22427        repo: &str,
22428        comment_id: i64,
22429        theContent: Content,
22430    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
22431    where
22432        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_commit_comment::Content<::reqwest::blocking::Body>>,
22433        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_commit_comment::Content<::reqwest::blocking::Body>>>::Error>
22434    {
22435        let mut theScheme = AuthScheme::from(&self.config.authentication);
22436
22437        while let Some(auth_step) = theScheme.step()? {
22438            match auth_step {
22439                ::authentic::AuthenticationStep::Request(auth_request) => {
22440                    theScheme.respond(self.client.execute(auth_request));
22441                }
22442                ::authentic::AuthenticationStep::WaitFor(duration) => {
22443                    (self.sleep)(duration);
22444                }
22445            }
22446        }
22447        let theBuilder = crate::v1_1_4::request::repos_update_commit_comment::reqwest_blocking_builder(
22448            self.config.base_url.as_ref(),
22449            owner,
22450            repo,
22451            comment_id,
22452            self.config.user_agent.as_ref(),
22453            self.config.accept.as_deref(),
22454        )?
22455        .with_authentication(&theScheme)?;
22456
22457        let theRequest = crate::v1_1_4::request::repos_update_commit_comment::reqwest_blocking_request(
22458            theBuilder,
22459            theContent.try_into()?,
22460        )?;
22461
22462        ::log::debug!("HTTP request: {:?}", &theRequest);
22463
22464        let theResponse = self.client.execute(theRequest)?;
22465
22466        ::log::debug!("HTTP response: {:?}", &theResponse);
22467
22468        Ok(theResponse)
22469    }
22470
22471    /// List reactions for a commit comment
22472    /// 
22473    /// List the reactions to a [commit comment](https://docs.github.com/rest/reference/repos#comments).
22474    /// 
22475    /// [API method documentation](https://docs.github.com/rest/reference/reactions#list-reactions-for-a-commit-comment)
22476    pub fn reactions_list_for_commit_comment(
22477        &self,
22478        owner: &str,
22479        repo: &str,
22480        comment_id: i64,
22481        content: ::std::option::Option<&str>,
22482        per_page: ::std::option::Option<i64>,
22483        page: ::std::option::Option<i64>,
22484    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22485        let mut theScheme = AuthScheme::from(&self.config.authentication);
22486
22487        while let Some(auth_step) = theScheme.step()? {
22488            match auth_step {
22489                ::authentic::AuthenticationStep::Request(auth_request) => {
22490                    theScheme.respond(self.client.execute(auth_request));
22491                }
22492                ::authentic::AuthenticationStep::WaitFor(duration) => {
22493                    (self.sleep)(duration);
22494                }
22495            }
22496        }
22497        let theBuilder = crate::v1_1_4::request::reactions_list_for_commit_comment::reqwest_blocking_builder(
22498            self.config.base_url.as_ref(),
22499            owner,
22500            repo,
22501            comment_id,
22502            content,
22503            per_page,
22504            page,
22505            self.config.user_agent.as_ref(),
22506            self.config.accept.as_deref(),
22507        )?
22508        .with_authentication(&theScheme)?;
22509
22510        let theRequest =
22511            crate::v1_1_4::request::reactions_list_for_commit_comment::reqwest_blocking_request(theBuilder)?;
22512
22513        ::log::debug!("HTTP request: {:?}", &theRequest);
22514
22515        let theResponse = self.client.execute(theRequest)?;
22516
22517        ::log::debug!("HTTP response: {:?}", &theResponse);
22518
22519        Ok(theResponse)
22520    }
22521
22522    /// Create reaction for a commit comment
22523    /// 
22524    /// Create a reaction to a [commit comment](https://docs.github.com/rest/reference/repos#comments). A response with an HTTP `200` status means that you already added the reaction type to this commit comment.
22525    /// 
22526    /// [API method documentation](https://docs.github.com/rest/reference/reactions#create-reaction-for-a-commit-comment)
22527    ///
22528    /// # Content
22529    ///
22530    /// - [`&v1_1_4::request::reactions_create_for_commit_comment::body::Json`](crate::v1_1_4::request::reactions_create_for_commit_comment::body::Json)
22531    pub fn reactions_create_for_commit_comment<Content>(
22532        &self,
22533        owner: &str,
22534        repo: &str,
22535        comment_id: i64,
22536        theContent: Content,
22537    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
22538    where
22539        Content: Copy + TryInto<crate::v1_1_4::request::reactions_create_for_commit_comment::Content<::reqwest::blocking::Body>>,
22540        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::reactions_create_for_commit_comment::Content<::reqwest::blocking::Body>>>::Error>
22541    {
22542        let mut theScheme = AuthScheme::from(&self.config.authentication);
22543
22544        while let Some(auth_step) = theScheme.step()? {
22545            match auth_step {
22546                ::authentic::AuthenticationStep::Request(auth_request) => {
22547                    theScheme.respond(self.client.execute(auth_request));
22548                }
22549                ::authentic::AuthenticationStep::WaitFor(duration) => {
22550                    (self.sleep)(duration);
22551                }
22552            }
22553        }
22554        let theBuilder = crate::v1_1_4::request::reactions_create_for_commit_comment::reqwest_blocking_builder(
22555            self.config.base_url.as_ref(),
22556            owner,
22557            repo,
22558            comment_id,
22559            self.config.user_agent.as_ref(),
22560            self.config.accept.as_deref(),
22561        )?
22562        .with_authentication(&theScheme)?;
22563
22564        let theRequest = crate::v1_1_4::request::reactions_create_for_commit_comment::reqwest_blocking_request(
22565            theBuilder,
22566            theContent.try_into()?,
22567        )?;
22568
22569        ::log::debug!("HTTP request: {:?}", &theRequest);
22570
22571        let theResponse = self.client.execute(theRequest)?;
22572
22573        ::log::debug!("HTTP response: {:?}", &theResponse);
22574
22575        Ok(theResponse)
22576    }
22577
22578    /// Delete a commit comment reaction
22579    /// 
22580    /// **Note:** You can also specify a repository by `repository_id` using the route `DELETE /repositories/:repository_id/comments/:comment_id/reactions/:reaction_id`.
22581    /// 
22582    /// Delete a reaction to a [commit comment](https://docs.github.com/rest/reference/repos#comments).
22583    /// 
22584    /// [API method documentation](https://docs.github.com/rest/reference/reactions#delete-a-commit-comment-reaction)
22585    pub fn reactions_delete_for_commit_comment(
22586        &self,
22587        owner: &str,
22588        repo: &str,
22589        comment_id: i64,
22590        reaction_id: i64,
22591    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22592        let mut theScheme = AuthScheme::from(&self.config.authentication);
22593
22594        while let Some(auth_step) = theScheme.step()? {
22595            match auth_step {
22596                ::authentic::AuthenticationStep::Request(auth_request) => {
22597                    theScheme.respond(self.client.execute(auth_request));
22598                }
22599                ::authentic::AuthenticationStep::WaitFor(duration) => {
22600                    (self.sleep)(duration);
22601                }
22602            }
22603        }
22604        let theBuilder = crate::v1_1_4::request::reactions_delete_for_commit_comment::reqwest_blocking_builder(
22605            self.config.base_url.as_ref(),
22606            owner,
22607            repo,
22608            comment_id,
22609            reaction_id,
22610            self.config.user_agent.as_ref(),
22611            self.config.accept.as_deref(),
22612        )?
22613        .with_authentication(&theScheme)?;
22614
22615        let theRequest =
22616            crate::v1_1_4::request::reactions_delete_for_commit_comment::reqwest_blocking_request(theBuilder)?;
22617
22618        ::log::debug!("HTTP request: {:?}", &theRequest);
22619
22620        let theResponse = self.client.execute(theRequest)?;
22621
22622        ::log::debug!("HTTP response: {:?}", &theResponse);
22623
22624        Ok(theResponse)
22625    }
22626
22627    /// List commits
22628    /// 
22629    /// **Signature verification object**
22630    /// 
22631    /// The response will include a `verification` object that describes the result of verifying the commit's signature. The following fields are included in the `verification` object:
22632    /// 
22633    /// | Name | Type | Description |
22634    /// | ---- | ---- | ----------- |
22635    /// | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |
22636    /// | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in table below. |
22637    /// | `signature` | `string` | The signature that was extracted from the commit. |
22638    /// | `payload` | `string` | The value that was signed. |
22639    /// 
22640    /// These are the possible values for `reason` in the `verification` object:
22641    /// 
22642    /// | Value | Description |
22643    /// | ----- | ----------- |
22644    /// | `expired_key` | The key that made the signature is expired. |
22645    /// | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |
22646    /// | `gpgverify_error` | There was an error communicating with the signature verification service. |
22647    /// | `gpgverify_unavailable` | The signature verification service is currently unavailable. |
22648    /// | `unsigned` | The object does not include a signature. |
22649    /// | `unknown_signature_type` | A non-PGP signature was found in the commit. |
22650    /// | `no_user` | No user was associated with the `committer` email address in the commit. |
22651    /// | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on her/his account. |
22652    /// | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |
22653    /// | `unknown_key` | The key that made the signature has not been registered with any user's account. |
22654    /// | `malformed_signature` | There was an error parsing the signature. |
22655    /// | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |
22656    /// | `valid` | None of the above errors applied, so the signature is considered to be verified. |
22657    /// 
22658    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-commits)
22659    #[allow(clippy::too_many_arguments)]
22660    pub fn repos_list_commits(
22661        &self,
22662        owner: &str,
22663        repo: &str,
22664        sha: ::std::option::Option<&str>,
22665        path: ::std::option::Option<&str>,
22666        author: ::std::option::Option<&str>,
22667        since: ::std::option::Option<&str>,
22668        until: ::std::option::Option<&str>,
22669        per_page: ::std::option::Option<i64>,
22670        page: ::std::option::Option<i64>,
22671    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22672        let mut theScheme = AuthScheme::from(&self.config.authentication);
22673
22674        while let Some(auth_step) = theScheme.step()? {
22675            match auth_step {
22676                ::authentic::AuthenticationStep::Request(auth_request) => {
22677                    theScheme.respond(self.client.execute(auth_request));
22678                }
22679                ::authentic::AuthenticationStep::WaitFor(duration) => {
22680                    (self.sleep)(duration);
22681                }
22682            }
22683        }
22684        let theBuilder = crate::v1_1_4::request::repos_list_commits::reqwest_blocking_builder(
22685            self.config.base_url.as_ref(),
22686            owner,
22687            repo,
22688            sha,
22689            path,
22690            author,
22691            since,
22692            until,
22693            per_page,
22694            page,
22695            self.config.user_agent.as_ref(),
22696            self.config.accept.as_deref(),
22697        )?
22698        .with_authentication(&theScheme)?;
22699
22700        let theRequest =
22701            crate::v1_1_4::request::repos_list_commits::reqwest_blocking_request(theBuilder)?;
22702
22703        ::log::debug!("HTTP request: {:?}", &theRequest);
22704
22705        let theResponse = self.client.execute(theRequest)?;
22706
22707        ::log::debug!("HTTP response: {:?}", &theResponse);
22708
22709        Ok(theResponse)
22710    }
22711
22712    /// List branches for HEAD commit
22713    /// 
22714    /// Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
22715    /// 
22716    /// Returns all branches where the given commit SHA is the HEAD, or latest commit for the branch.
22717    /// 
22718    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-branches-for-head-commit)
22719    pub fn repos_list_branches_for_head_commit(
22720        &self,
22721        owner: &str,
22722        repo: &str,
22723        commit_sha: &str,
22724    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22725        let mut theScheme = AuthScheme::from(&self.config.authentication);
22726
22727        while let Some(auth_step) = theScheme.step()? {
22728            match auth_step {
22729                ::authentic::AuthenticationStep::Request(auth_request) => {
22730                    theScheme.respond(self.client.execute(auth_request));
22731                }
22732                ::authentic::AuthenticationStep::WaitFor(duration) => {
22733                    (self.sleep)(duration);
22734                }
22735            }
22736        }
22737        let theBuilder = crate::v1_1_4::request::repos_list_branches_for_head_commit::reqwest_blocking_builder(
22738            self.config.base_url.as_ref(),
22739            owner,
22740            repo,
22741            commit_sha,
22742            self.config.user_agent.as_ref(),
22743            self.config.accept.as_deref(),
22744        )?
22745        .with_authentication(&theScheme)?;
22746
22747        let theRequest =
22748            crate::v1_1_4::request::repos_list_branches_for_head_commit::reqwest_blocking_request(theBuilder)?;
22749
22750        ::log::debug!("HTTP request: {:?}", &theRequest);
22751
22752        let theResponse = self.client.execute(theRequest)?;
22753
22754        ::log::debug!("HTTP response: {:?}", &theResponse);
22755
22756        Ok(theResponse)
22757    }
22758
22759    /// List commit comments
22760    /// 
22761    /// Use the `:commit_sha` to specify the commit that will have its comments listed.
22762    /// 
22763    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-commit-comments)
22764    pub fn repos_list_comments_for_commit(
22765        &self,
22766        owner: &str,
22767        repo: &str,
22768        commit_sha: &str,
22769        per_page: ::std::option::Option<i64>,
22770        page: ::std::option::Option<i64>,
22771    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22772        let mut theScheme = AuthScheme::from(&self.config.authentication);
22773
22774        while let Some(auth_step) = theScheme.step()? {
22775            match auth_step {
22776                ::authentic::AuthenticationStep::Request(auth_request) => {
22777                    theScheme.respond(self.client.execute(auth_request));
22778                }
22779                ::authentic::AuthenticationStep::WaitFor(duration) => {
22780                    (self.sleep)(duration);
22781                }
22782            }
22783        }
22784        let theBuilder = crate::v1_1_4::request::repos_list_comments_for_commit::reqwest_blocking_builder(
22785            self.config.base_url.as_ref(),
22786            owner,
22787            repo,
22788            commit_sha,
22789            per_page,
22790            page,
22791            self.config.user_agent.as_ref(),
22792            self.config.accept.as_deref(),
22793        )?
22794        .with_authentication(&theScheme)?;
22795
22796        let theRequest =
22797            crate::v1_1_4::request::repos_list_comments_for_commit::reqwest_blocking_request(theBuilder)?;
22798
22799        ::log::debug!("HTTP request: {:?}", &theRequest);
22800
22801        let theResponse = self.client.execute(theRequest)?;
22802
22803        ::log::debug!("HTTP response: {:?}", &theResponse);
22804
22805        Ok(theResponse)
22806    }
22807
22808    /// Create a commit comment
22809    /// 
22810    /// Create a comment for a commit using its `:commit_sha`.
22811    /// 
22812    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
22813    /// 
22814    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-commit-comment)
22815    ///
22816    /// # Content
22817    ///
22818    /// - [`&v1_1_4::request::repos_create_commit_comment::body::Json`](crate::v1_1_4::request::repos_create_commit_comment::body::Json)
22819    pub fn repos_create_commit_comment<Content>(
22820        &self,
22821        owner: &str,
22822        repo: &str,
22823        commit_sha: &str,
22824        theContent: Content,
22825    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
22826    where
22827        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_commit_comment::Content<::reqwest::blocking::Body>>,
22828        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_commit_comment::Content<::reqwest::blocking::Body>>>::Error>
22829    {
22830        let mut theScheme = AuthScheme::from(&self.config.authentication);
22831
22832        while let Some(auth_step) = theScheme.step()? {
22833            match auth_step {
22834                ::authentic::AuthenticationStep::Request(auth_request) => {
22835                    theScheme.respond(self.client.execute(auth_request));
22836                }
22837                ::authentic::AuthenticationStep::WaitFor(duration) => {
22838                    (self.sleep)(duration);
22839                }
22840            }
22841        }
22842        let theBuilder = crate::v1_1_4::request::repos_create_commit_comment::reqwest_blocking_builder(
22843            self.config.base_url.as_ref(),
22844            owner,
22845            repo,
22846            commit_sha,
22847            self.config.user_agent.as_ref(),
22848            self.config.accept.as_deref(),
22849        )?
22850        .with_authentication(&theScheme)?;
22851
22852        let theRequest = crate::v1_1_4::request::repos_create_commit_comment::reqwest_blocking_request(
22853            theBuilder,
22854            theContent.try_into()?,
22855        )?;
22856
22857        ::log::debug!("HTTP request: {:?}", &theRequest);
22858
22859        let theResponse = self.client.execute(theRequest)?;
22860
22861        ::log::debug!("HTTP response: {:?}", &theResponse);
22862
22863        Ok(theResponse)
22864    }
22865
22866    /// List pull requests associated with a commit
22867    /// 
22868    /// Lists the merged pull request that introduced the commit to the repository. If the commit is not present in the default branch, additionally returns open pull requests associated with the commit. The results may include open and closed pull requests.
22869    /// 
22870    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-pull-requests-associated-with-a-commit)
22871    pub fn repos_list_pull_requests_associated_with_commit(
22872        &self,
22873        owner: &str,
22874        repo: &str,
22875        commit_sha: &str,
22876        per_page: ::std::option::Option<i64>,
22877        page: ::std::option::Option<i64>,
22878    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22879        let mut theScheme = AuthScheme::from(&self.config.authentication);
22880
22881        while let Some(auth_step) = theScheme.step()? {
22882            match auth_step {
22883                ::authentic::AuthenticationStep::Request(auth_request) => {
22884                    theScheme.respond(self.client.execute(auth_request));
22885                }
22886                ::authentic::AuthenticationStep::WaitFor(duration) => {
22887                    (self.sleep)(duration);
22888                }
22889            }
22890        }
22891        let theBuilder = crate::v1_1_4::request::repos_list_pull_requests_associated_with_commit::reqwest_blocking_builder(
22892            self.config.base_url.as_ref(),
22893            owner,
22894            repo,
22895            commit_sha,
22896            per_page,
22897            page,
22898            self.config.user_agent.as_ref(),
22899            self.config.accept.as_deref(),
22900        )?
22901        .with_authentication(&theScheme)?;
22902
22903        let theRequest =
22904            crate::v1_1_4::request::repos_list_pull_requests_associated_with_commit::reqwest_blocking_request(theBuilder)?;
22905
22906        ::log::debug!("HTTP request: {:?}", &theRequest);
22907
22908        let theResponse = self.client.execute(theRequest)?;
22909
22910        ::log::debug!("HTTP response: {:?}", &theResponse);
22911
22912        Ok(theResponse)
22913    }
22914
22915    /// Get a commit
22916    /// 
22917    /// Returns the contents of a single commit reference. You must have `read` access for the repository to use this endpoint.
22918    /// 
22919    /// **Note:** If there are more than 300 files in the commit diff, the response will include pagination link headers for the remaining files, up to a limit of 3000 files. Each page contains the static commit information, and the only changes are to the file listing.
22920    /// 
22921    /// You can pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to  fetch `diff` and `patch` formats. Diffs with binary data will have no `patch` property.
22922    /// 
22923    /// To return only the SHA-1 hash of the commit reference, you can provide the `sha` custom [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) in the `Accept` header. You can use this endpoint to check if a remote reference's SHA-1 hash is the same as your local reference's SHA-1 hash by providing the local SHA-1 reference as the ETag.
22924    /// 
22925    /// **Signature verification object**
22926    /// 
22927    /// The response will include a `verification` object that describes the result of verifying the commit's signature. The following fields are included in the `verification` object:
22928    /// 
22929    /// | Name | Type | Description |
22930    /// | ---- | ---- | ----------- |
22931    /// | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |
22932    /// | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in table below. |
22933    /// | `signature` | `string` | The signature that was extracted from the commit. |
22934    /// | `payload` | `string` | The value that was signed. |
22935    /// 
22936    /// These are the possible values for `reason` in the `verification` object:
22937    /// 
22938    /// | Value | Description |
22939    /// | ----- | ----------- |
22940    /// | `expired_key` | The key that made the signature is expired. |
22941    /// | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |
22942    /// | `gpgverify_error` | There was an error communicating with the signature verification service. |
22943    /// | `gpgverify_unavailable` | The signature verification service is currently unavailable. |
22944    /// | `unsigned` | The object does not include a signature. |
22945    /// | `unknown_signature_type` | A non-PGP signature was found in the commit. |
22946    /// | `no_user` | No user was associated with the `committer` email address in the commit. |
22947    /// | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on her/his account. |
22948    /// | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |
22949    /// | `unknown_key` | The key that made the signature has not been registered with any user's account. |
22950    /// | `malformed_signature` | There was an error parsing the signature. |
22951    /// | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |
22952    /// | `valid` | None of the above errors applied, so the signature is considered to be verified. |
22953    /// 
22954    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-commit)
22955    pub fn repos_get_commit(
22956        &self,
22957        owner: &str,
22958        repo: &str,
22959        page: ::std::option::Option<i64>,
22960        per_page: ::std::option::Option<i64>,
22961        r#ref: &str,
22962    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
22963        let mut theScheme = AuthScheme::from(&self.config.authentication);
22964
22965        while let Some(auth_step) = theScheme.step()? {
22966            match auth_step {
22967                ::authentic::AuthenticationStep::Request(auth_request) => {
22968                    theScheme.respond(self.client.execute(auth_request));
22969                }
22970                ::authentic::AuthenticationStep::WaitFor(duration) => {
22971                    (self.sleep)(duration);
22972                }
22973            }
22974        }
22975        let theBuilder = crate::v1_1_4::request::repos_get_commit::reqwest_blocking_builder(
22976            self.config.base_url.as_ref(),
22977            owner,
22978            repo,
22979            r#ref,
22980            page,
22981            per_page,
22982            self.config.user_agent.as_ref(),
22983            self.config.accept.as_deref(),
22984        )?
22985        .with_authentication(&theScheme)?;
22986
22987        let theRequest =
22988            crate::v1_1_4::request::repos_get_commit::reqwest_blocking_request(theBuilder)?;
22989
22990        ::log::debug!("HTTP request: {:?}", &theRequest);
22991
22992        let theResponse = self.client.execute(theRequest)?;
22993
22994        ::log::debug!("HTTP response: {:?}", &theResponse);
22995
22996        Ok(theResponse)
22997    }
22998
22999    /// List check runs for a Git reference
23000    /// 
23001    /// **Note:** The Checks API only looks for pushes in the repository where the check suite or check run were created. Pushes to a branch in a forked repository are not detected and return an empty `pull_requests` array.
23002    /// 
23003    /// Lists check runs for a commit ref. The `ref` can be a SHA, branch name, or a tag name. GitHub Apps must have the `checks:read` permission on a private repository or pull access to a public repository to get check runs. OAuth Apps and authenticated users must have the `repo` scope to get check runs in a private repository.
23004    /// 
23005    /// [API method documentation](https://docs.github.com/rest/reference/checks#list-check-runs-for-a-git-reference)
23006    #[allow(clippy::too_many_arguments)]
23007    pub fn checks_list_for_ref(
23008        &self,
23009        owner: &str,
23010        repo: &str,
23011        r#ref: &str,
23012        check_name: ::std::option::Option<&str>,
23013        status: ::std::option::Option<&str>,
23014        filter: ::std::option::Option<&str>,
23015        per_page: ::std::option::Option<i64>,
23016        page: ::std::option::Option<i64>,
23017        app_id: ::std::option::Option<i64>,
23018    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23019        let mut theScheme = AuthScheme::from(&self.config.authentication);
23020
23021        while let Some(auth_step) = theScheme.step()? {
23022            match auth_step {
23023                ::authentic::AuthenticationStep::Request(auth_request) => {
23024                    theScheme.respond(self.client.execute(auth_request));
23025                }
23026                ::authentic::AuthenticationStep::WaitFor(duration) => {
23027                    (self.sleep)(duration);
23028                }
23029            }
23030        }
23031        let theBuilder = crate::v1_1_4::request::checks_list_for_ref::reqwest_blocking_builder(
23032            self.config.base_url.as_ref(),
23033            owner,
23034            repo,
23035            r#ref,
23036            check_name,
23037            status,
23038            filter,
23039            per_page,
23040            page,
23041            app_id,
23042            self.config.user_agent.as_ref(),
23043            self.config.accept.as_deref(),
23044        )?
23045        .with_authentication(&theScheme)?;
23046
23047        let theRequest =
23048            crate::v1_1_4::request::checks_list_for_ref::reqwest_blocking_request(theBuilder)?;
23049
23050        ::log::debug!("HTTP request: {:?}", &theRequest);
23051
23052        let theResponse = self.client.execute(theRequest)?;
23053
23054        ::log::debug!("HTTP response: {:?}", &theResponse);
23055
23056        Ok(theResponse)
23057    }
23058
23059    /// List check suites for a Git reference
23060    /// 
23061    /// **Note:** The Checks API only looks for pushes in the repository where the check suite or check run were created. Pushes to a branch in a forked repository are not detected and return an empty `pull_requests` array and a `null` value for `head_branch`.
23062    /// 
23063    /// Lists check suites for a commit `ref`. The `ref` can be a SHA, branch name, or a tag name. GitHub Apps must have the `checks:read` permission on a private repository or pull access to a public repository to list check suites. OAuth Apps and authenticated users must have the `repo` scope to get check suites in a private repository.
23064    /// 
23065    /// [API method documentation](https://docs.github.com/rest/reference/checks#list-check-suites-for-a-git-reference)
23066    #[allow(clippy::too_many_arguments)]
23067    pub fn checks_list_suites_for_ref(
23068        &self,
23069        owner: &str,
23070        repo: &str,
23071        r#ref: &str,
23072        app_id: ::std::option::Option<i64>,
23073        check_name: ::std::option::Option<&str>,
23074        per_page: ::std::option::Option<i64>,
23075        page: ::std::option::Option<i64>,
23076    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23077        let mut theScheme = AuthScheme::from(&self.config.authentication);
23078
23079        while let Some(auth_step) = theScheme.step()? {
23080            match auth_step {
23081                ::authentic::AuthenticationStep::Request(auth_request) => {
23082                    theScheme.respond(self.client.execute(auth_request));
23083                }
23084                ::authentic::AuthenticationStep::WaitFor(duration) => {
23085                    (self.sleep)(duration);
23086                }
23087            }
23088        }
23089        let theBuilder = crate::v1_1_4::request::checks_list_suites_for_ref::reqwest_blocking_builder(
23090            self.config.base_url.as_ref(),
23091            owner,
23092            repo,
23093            r#ref,
23094            app_id,
23095            check_name,
23096            per_page,
23097            page,
23098            self.config.user_agent.as_ref(),
23099            self.config.accept.as_deref(),
23100        )?
23101        .with_authentication(&theScheme)?;
23102
23103        let theRequest =
23104            crate::v1_1_4::request::checks_list_suites_for_ref::reqwest_blocking_request(theBuilder)?;
23105
23106        ::log::debug!("HTTP request: {:?}", &theRequest);
23107
23108        let theResponse = self.client.execute(theRequest)?;
23109
23110        ::log::debug!("HTTP response: {:?}", &theResponse);
23111
23112        Ok(theResponse)
23113    }
23114
23115    /// Get the combined status for a specific reference
23116    /// 
23117    /// Users with pull access in a repository can access a combined view of commit statuses for a given ref. The ref can be a SHA, a branch name, or a tag name.
23118    /// 
23119    /// 
23120    /// Additionally, a combined `state` is returned. The `state` is one of:
23121    /// 
23122    /// *   **failure** if any of the contexts report as `error` or `failure`
23123    /// *   **pending** if there are no statuses or a context is `pending`
23124    /// *   **success** if the latest status for all contexts is `success`
23125    /// 
23126    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-the-combined-status-for-a-specific-reference)
23127    pub fn repos_get_combined_status_for_ref(
23128        &self,
23129        owner: &str,
23130        repo: &str,
23131        r#ref: &str,
23132        per_page: ::std::option::Option<i64>,
23133        page: ::std::option::Option<i64>,
23134    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23135        let mut theScheme = AuthScheme::from(&self.config.authentication);
23136
23137        while let Some(auth_step) = theScheme.step()? {
23138            match auth_step {
23139                ::authentic::AuthenticationStep::Request(auth_request) => {
23140                    theScheme.respond(self.client.execute(auth_request));
23141                }
23142                ::authentic::AuthenticationStep::WaitFor(duration) => {
23143                    (self.sleep)(duration);
23144                }
23145            }
23146        }
23147        let theBuilder = crate::v1_1_4::request::repos_get_combined_status_for_ref::reqwest_blocking_builder(
23148            self.config.base_url.as_ref(),
23149            owner,
23150            repo,
23151            r#ref,
23152            per_page,
23153            page,
23154            self.config.user_agent.as_ref(),
23155            self.config.accept.as_deref(),
23156        )?
23157        .with_authentication(&theScheme)?;
23158
23159        let theRequest =
23160            crate::v1_1_4::request::repos_get_combined_status_for_ref::reqwest_blocking_request(theBuilder)?;
23161
23162        ::log::debug!("HTTP request: {:?}", &theRequest);
23163
23164        let theResponse = self.client.execute(theRequest)?;
23165
23166        ::log::debug!("HTTP response: {:?}", &theResponse);
23167
23168        Ok(theResponse)
23169    }
23170
23171    /// List commit statuses for a reference
23172    /// 
23173    /// Users with pull access in a repository can view commit statuses for a given ref. The ref can be a SHA, a branch name, or a tag name. Statuses are returned in reverse chronological order. The first status in the list will be the latest one.
23174    /// 
23175    /// This resource is also available via a legacy route: `GET /repos/:owner/:repo/statuses/:ref`.
23176    /// 
23177    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-commit-statuses-for-a-reference)
23178    pub fn repos_list_commit_statuses_for_ref(
23179        &self,
23180        owner: &str,
23181        repo: &str,
23182        r#ref: &str,
23183        per_page: ::std::option::Option<i64>,
23184        page: ::std::option::Option<i64>,
23185    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23186        let mut theScheme = AuthScheme::from(&self.config.authentication);
23187
23188        while let Some(auth_step) = theScheme.step()? {
23189            match auth_step {
23190                ::authentic::AuthenticationStep::Request(auth_request) => {
23191                    theScheme.respond(self.client.execute(auth_request));
23192                }
23193                ::authentic::AuthenticationStep::WaitFor(duration) => {
23194                    (self.sleep)(duration);
23195                }
23196            }
23197        }
23198        let theBuilder = crate::v1_1_4::request::repos_list_commit_statuses_for_ref::reqwest_blocking_builder(
23199            self.config.base_url.as_ref(),
23200            owner,
23201            repo,
23202            r#ref,
23203            per_page,
23204            page,
23205            self.config.user_agent.as_ref(),
23206            self.config.accept.as_deref(),
23207        )?
23208        .with_authentication(&theScheme)?;
23209
23210        let theRequest =
23211            crate::v1_1_4::request::repos_list_commit_statuses_for_ref::reqwest_blocking_request(theBuilder)?;
23212
23213        ::log::debug!("HTTP request: {:?}", &theRequest);
23214
23215        let theResponse = self.client.execute(theRequest)?;
23216
23217        ::log::debug!("HTTP response: {:?}", &theResponse);
23218
23219        Ok(theResponse)
23220    }
23221
23222    /// Get community profile metrics
23223    /// 
23224    /// This endpoint will return all community profile metrics, including an
23225    /// overall health score, repository description, the presence of documentation, detected
23226    /// code of conduct, detected license, and the presence of ISSUE\_TEMPLATE, PULL\_REQUEST\_TEMPLATE,
23227    /// README, and CONTRIBUTING files.
23228    /// 
23229    /// The `health_percentage` score is defined as a percentage of how many of
23230    /// these four documents are present: README, CONTRIBUTING, LICENSE, and
23231    /// CODE_OF_CONDUCT. For example, if all four documents are present, then
23232    /// the `health_percentage` is `100`. If only one is present, then the
23233    /// `health_percentage` is `25`.
23234    /// 
23235    /// `content_reports_enabled` is only returned for organization-owned repositories.
23236    /// 
23237    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-community-profile-metrics)
23238    pub fn repos_get_community_profile_metrics(
23239        &self,
23240        owner: &str,
23241        repo: &str,
23242    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23243        let mut theScheme = AuthScheme::from(&self.config.authentication);
23244
23245        while let Some(auth_step) = theScheme.step()? {
23246            match auth_step {
23247                ::authentic::AuthenticationStep::Request(auth_request) => {
23248                    theScheme.respond(self.client.execute(auth_request));
23249                }
23250                ::authentic::AuthenticationStep::WaitFor(duration) => {
23251                    (self.sleep)(duration);
23252                }
23253            }
23254        }
23255        let theBuilder = crate::v1_1_4::request::repos_get_community_profile_metrics::reqwest_blocking_builder(
23256            self.config.base_url.as_ref(),
23257            owner,
23258            repo,
23259            self.config.user_agent.as_ref(),
23260            self.config.accept.as_deref(),
23261        )?
23262        .with_authentication(&theScheme)?;
23263
23264        let theRequest =
23265            crate::v1_1_4::request::repos_get_community_profile_metrics::reqwest_blocking_request(theBuilder)?;
23266
23267        ::log::debug!("HTTP request: {:?}", &theRequest);
23268
23269        let theResponse = self.client.execute(theRequest)?;
23270
23271        ::log::debug!("HTTP response: {:?}", &theResponse);
23272
23273        Ok(theResponse)
23274    }
23275
23276    /// Compare two commits
23277    /// 
23278    /// The `basehead` param is comprised of two parts: `base` and `head`. Both must be branch names in `repo`. To compare branches across other repositories in the same network as `repo`, use the format `<USERNAME>:branch`.
23279    /// 
23280    /// The response from the API is equivalent to running the `git log base..head` command; however, commits are returned in chronological order. Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats.
23281    /// 
23282    /// The response also includes details on the files that were changed between the two commits. This includes the status of the change (for example, if a file was added, removed, modified, or renamed), and details of the change itself. For example, files with a `renamed` status have a `previous_filename` field showing the previous filename of the file, and files with a `modified` status have a `patch` field showing the changes made to the file.
23283    /// 
23284    /// **Working with large comparisons**
23285    /// 
23286    /// To process a response with a large number of commits, you can use (`per_page` or `page`) to paginate the results. When using paging, the list of changed files is only returned with page 1, but includes all changed files for the entire comparison. For more information on working with pagination, see "[Traversing with pagination](/rest/guides/traversing-with-pagination)."
23287    /// 
23288    /// When calling this API without any paging parameters (`per_page` or `page`), the returned list is limited to 250 commits and the last commit in the list is the most recent of the entire comparison. When a paging parameter is specified, the first commit in the returned list of each page is the earliest.
23289    /// 
23290    /// **Signature verification object**
23291    /// 
23292    /// The response will include a `verification` object that describes the result of verifying the commit's signature. The following fields are included in the `verification` object:
23293    /// 
23294    /// | Name | Type | Description |
23295    /// | ---- | ---- | ----------- |
23296    /// | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |
23297    /// | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in table below. |
23298    /// | `signature` | `string` | The signature that was extracted from the commit. |
23299    /// | `payload` | `string` | The value that was signed. |
23300    /// 
23301    /// These are the possible values for `reason` in the `verification` object:
23302    /// 
23303    /// | Value | Description |
23304    /// | ----- | ----------- |
23305    /// | `expired_key` | The key that made the signature is expired. |
23306    /// | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |
23307    /// | `gpgverify_error` | There was an error communicating with the signature verification service. |
23308    /// | `gpgverify_unavailable` | The signature verification service is currently unavailable. |
23309    /// | `unsigned` | The object does not include a signature. |
23310    /// | `unknown_signature_type` | A non-PGP signature was found in the commit. |
23311    /// | `no_user` | No user was associated with the `committer` email address in the commit. |
23312    /// | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on her/his account. |
23313    /// | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |
23314    /// | `unknown_key` | The key that made the signature has not been registered with any user's account. |
23315    /// | `malformed_signature` | There was an error parsing the signature. |
23316    /// | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |
23317    /// | `valid` | None of the above errors applied, so the signature is considered to be verified. |
23318    /// 
23319    /// [API method documentation](https://docs.github.com/rest/reference/repos#compare-two-commits)
23320    pub fn repos_compare_commits(
23321        &self,
23322        owner: &str,
23323        repo: &str,
23324        page: ::std::option::Option<i64>,
23325        per_page: ::std::option::Option<i64>,
23326        basehead: &str,
23327    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23328        let mut theScheme = AuthScheme::from(&self.config.authentication);
23329
23330        while let Some(auth_step) = theScheme.step()? {
23331            match auth_step {
23332                ::authentic::AuthenticationStep::Request(auth_request) => {
23333                    theScheme.respond(self.client.execute(auth_request));
23334                }
23335                ::authentic::AuthenticationStep::WaitFor(duration) => {
23336                    (self.sleep)(duration);
23337                }
23338            }
23339        }
23340        let theBuilder = crate::v1_1_4::request::repos_compare_commits::reqwest_blocking_builder(
23341            self.config.base_url.as_ref(),
23342            owner,
23343            repo,
23344            basehead,
23345            page,
23346            per_page,
23347            self.config.user_agent.as_ref(),
23348            self.config.accept.as_deref(),
23349        )?
23350        .with_authentication(&theScheme)?;
23351
23352        let theRequest =
23353            crate::v1_1_4::request::repos_compare_commits::reqwest_blocking_request(theBuilder)?;
23354
23355        ::log::debug!("HTTP request: {:?}", &theRequest);
23356
23357        let theResponse = self.client.execute(theRequest)?;
23358
23359        ::log::debug!("HTTP response: {:?}", &theResponse);
23360
23361        Ok(theResponse)
23362    }
23363
23364    /// Get repository content
23365    /// 
23366    /// Gets the contents of a file or directory in a repository. Specify the file path or directory in `:path`. If you omit
23367    /// `:path`, you will receive the contents of the repository's root directory. See the description below regarding what the API response includes for directories. 
23368    /// 
23369    /// Files and symlinks support [a custom media type](https://docs.github.com/rest/reference/repos#custom-media-types) for
23370    /// retrieving the raw content or rendered HTML (when supported). All content types support [a custom media
23371    /// type](https://docs.github.com/rest/reference/repos#custom-media-types) to ensure the content is returned in a consistent
23372    /// object format.
23373    /// 
23374    /// **Note**:
23375    /// *   To get a repository's contents recursively, you can [recursively get the tree](https://docs.github.com/rest/reference/git#trees).
23376    /// *   This API has an upper limit of 1,000 files for a directory. If you need to retrieve more files, use the [Git Trees
23377    /// API](https://docs.github.com/rest/reference/git#get-a-tree).
23378    /// *   This API supports files up to 1 megabyte in size.
23379    /// 
23380    /// #### If the content is a directory
23381    /// The response will be an array of objects, one object for each item in the directory.
23382    /// When listing the contents of a directory, submodules have their "type" specified as "file". Logically, the value
23383    /// _should_ be "submodule". This behavior exists in API v3 [for backwards compatibility purposes](https://git.io/v1YCW).
23384    /// In the next major version of the API, the type will be returned as "submodule".
23385    /// 
23386    /// #### If the content is a symlink 
23387    /// If the requested `:path` points to a symlink, and the symlink's target is a normal file in the repository, then the
23388    /// API responds with the content of the file (in the format shown in the example. Otherwise, the API responds with an object 
23389    /// describing the symlink itself.
23390    /// 
23391    /// #### If the content is a submodule
23392    /// The `submodule_git_url` identifies the location of the submodule repository, and the `sha` identifies a specific
23393    /// commit within the submodule repository. Git uses the given URL when cloning the submodule repository, and checks out
23394    /// the submodule at that specific commit.
23395    /// 
23396    /// If the submodule repository is not hosted on github.com, the Git URLs (`git_url` and `_links["git"]`) and the
23397    /// github.com URLs (`html_url` and `_links["html"]`) will have null values.
23398    /// 
23399    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-repository-content)
23400    pub fn repos_get_content(
23401        &self,
23402        owner: &str,
23403        repo: &str,
23404        path: &str,
23405        r#ref: ::std::option::Option<&str>,
23406    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23407        let mut theScheme = AuthScheme::from(&self.config.authentication);
23408
23409        while let Some(auth_step) = theScheme.step()? {
23410            match auth_step {
23411                ::authentic::AuthenticationStep::Request(auth_request) => {
23412                    theScheme.respond(self.client.execute(auth_request));
23413                }
23414                ::authentic::AuthenticationStep::WaitFor(duration) => {
23415                    (self.sleep)(duration);
23416                }
23417            }
23418        }
23419        let theBuilder = crate::v1_1_4::request::repos_get_content::reqwest_blocking_builder(
23420            self.config.base_url.as_ref(),
23421            owner,
23422            repo,
23423            path,
23424            r#ref,
23425            self.config.user_agent.as_ref(),
23426            self.config.accept.as_deref(),
23427        )?
23428        .with_authentication(&theScheme)?;
23429
23430        let theRequest =
23431            crate::v1_1_4::request::repos_get_content::reqwest_blocking_request(theBuilder)?;
23432
23433        ::log::debug!("HTTP request: {:?}", &theRequest);
23434
23435        let theResponse = self.client.execute(theRequest)?;
23436
23437        ::log::debug!("HTTP response: {:?}", &theResponse);
23438
23439        Ok(theResponse)
23440    }
23441
23442    /// Create or update file contents
23443    /// 
23444    /// Creates a new file or replaces an existing file in a repository.
23445    /// 
23446    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-or-update-file-contents)
23447    ///
23448    /// # Content
23449    ///
23450    /// - [`&v1_1_4::request::repos_create_or_update_file_contents::body::Json`](crate::v1_1_4::request::repos_create_or_update_file_contents::body::Json)
23451    pub fn repos_create_or_update_file_contents<Content>(
23452        &self,
23453        owner: &str,
23454        repo: &str,
23455        path: &str,
23456        theContent: Content,
23457    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
23458    where
23459        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_or_update_file_contents::Content<::reqwest::blocking::Body>>,
23460        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_or_update_file_contents::Content<::reqwest::blocking::Body>>>::Error>
23461    {
23462        let mut theScheme = AuthScheme::from(&self.config.authentication);
23463
23464        while let Some(auth_step) = theScheme.step()? {
23465            match auth_step {
23466                ::authentic::AuthenticationStep::Request(auth_request) => {
23467                    theScheme.respond(self.client.execute(auth_request));
23468                }
23469                ::authentic::AuthenticationStep::WaitFor(duration) => {
23470                    (self.sleep)(duration);
23471                }
23472            }
23473        }
23474        let theBuilder = crate::v1_1_4::request::repos_create_or_update_file_contents::reqwest_blocking_builder(
23475            self.config.base_url.as_ref(),
23476            owner,
23477            repo,
23478            path,
23479            self.config.user_agent.as_ref(),
23480            self.config.accept.as_deref(),
23481        )?
23482        .with_authentication(&theScheme)?;
23483
23484        let theRequest = crate::v1_1_4::request::repos_create_or_update_file_contents::reqwest_blocking_request(
23485            theBuilder,
23486            theContent.try_into()?,
23487        )?;
23488
23489        ::log::debug!("HTTP request: {:?}", &theRequest);
23490
23491        let theResponse = self.client.execute(theRequest)?;
23492
23493        ::log::debug!("HTTP response: {:?}", &theResponse);
23494
23495        Ok(theResponse)
23496    }
23497
23498    /// Delete a file
23499    /// 
23500    /// Deletes a file in a repository.
23501    /// 
23502    /// You can provide an additional `committer` parameter, which is an object containing information about the committer. Or, you can provide an `author` parameter, which is an object containing information about the author.
23503    /// 
23504    /// The `author` section is optional and is filled in with the `committer` information if omitted. If the `committer` information is omitted, the authenticated user's information is used.
23505    /// 
23506    /// You must provide values for both `name` and `email`, whether you choose to use `author` or `committer`. Otherwise, you'll receive a `422` status code.
23507    /// 
23508    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-file)
23509    ///
23510    /// # Content
23511    ///
23512    /// - [`&v1_1_4::request::repos_delete_file::body::Json`](crate::v1_1_4::request::repos_delete_file::body::Json)
23513    pub fn repos_delete_file<Content>(
23514        &self,
23515        owner: &str,
23516        repo: &str,
23517        path: &str,
23518        theContent: Content,
23519    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
23520    where
23521        Content: Copy + TryInto<crate::v1_1_4::request::repos_delete_file::Content<::reqwest::blocking::Body>>,
23522        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_delete_file::Content<::reqwest::blocking::Body>>>::Error>
23523    {
23524        let mut theScheme = AuthScheme::from(&self.config.authentication);
23525
23526        while let Some(auth_step) = theScheme.step()? {
23527            match auth_step {
23528                ::authentic::AuthenticationStep::Request(auth_request) => {
23529                    theScheme.respond(self.client.execute(auth_request));
23530                }
23531                ::authentic::AuthenticationStep::WaitFor(duration) => {
23532                    (self.sleep)(duration);
23533                }
23534            }
23535        }
23536        let theBuilder = crate::v1_1_4::request::repos_delete_file::reqwest_blocking_builder(
23537            self.config.base_url.as_ref(),
23538            owner,
23539            repo,
23540            path,
23541            self.config.user_agent.as_ref(),
23542            self.config.accept.as_deref(),
23543        )?
23544        .with_authentication(&theScheme)?;
23545
23546        let theRequest = crate::v1_1_4::request::repos_delete_file::reqwest_blocking_request(
23547            theBuilder,
23548            theContent.try_into()?,
23549        )?;
23550
23551        ::log::debug!("HTTP request: {:?}", &theRequest);
23552
23553        let theResponse = self.client.execute(theRequest)?;
23554
23555        ::log::debug!("HTTP response: {:?}", &theResponse);
23556
23557        Ok(theResponse)
23558    }
23559
23560    /// List repository contributors
23561    /// 
23562    /// Lists contributors to the specified repository and sorts them by the number of commits per contributor in descending order. This endpoint may return information that is a few hours old because the GitHub REST API v3 caches contributor data to improve performance.
23563    /// 
23564    /// GitHub identifies contributors by author email address. This endpoint groups contribution counts by GitHub user, which includes all associated email addresses. To improve performance, only the first 500 author email addresses in the repository link to GitHub users. The rest will appear as anonymous contributors without associated GitHub user information.
23565    /// 
23566    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repository-contributors)
23567    pub fn repos_list_contributors(
23568        &self,
23569        owner: &str,
23570        repo: &str,
23571        anon: ::std::option::Option<&str>,
23572        per_page: ::std::option::Option<i64>,
23573        page: ::std::option::Option<i64>,
23574    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23575        let mut theScheme = AuthScheme::from(&self.config.authentication);
23576
23577        while let Some(auth_step) = theScheme.step()? {
23578            match auth_step {
23579                ::authentic::AuthenticationStep::Request(auth_request) => {
23580                    theScheme.respond(self.client.execute(auth_request));
23581                }
23582                ::authentic::AuthenticationStep::WaitFor(duration) => {
23583                    (self.sleep)(duration);
23584                }
23585            }
23586        }
23587        let theBuilder = crate::v1_1_4::request::repos_list_contributors::reqwest_blocking_builder(
23588            self.config.base_url.as_ref(),
23589            owner,
23590            repo,
23591            anon,
23592            per_page,
23593            page,
23594            self.config.user_agent.as_ref(),
23595            self.config.accept.as_deref(),
23596        )?
23597        .with_authentication(&theScheme)?;
23598
23599        let theRequest =
23600            crate::v1_1_4::request::repos_list_contributors::reqwest_blocking_request(theBuilder)?;
23601
23602        ::log::debug!("HTTP request: {:?}", &theRequest);
23603
23604        let theResponse = self.client.execute(theRequest)?;
23605
23606        ::log::debug!("HTTP response: {:?}", &theResponse);
23607
23608        Ok(theResponse)
23609    }
23610
23611    /// List repository secrets
23612    /// 
23613    /// Lists all secrets available in a repository without revealing their encrypted values. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` repository permission to use this endpoint.
23614    /// 
23615    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#list-repository-secrets)
23616    pub fn dependabot_list_repo_secrets(
23617        &self,
23618        owner: &str,
23619        repo: &str,
23620        per_page: ::std::option::Option<i64>,
23621        page: ::std::option::Option<i64>,
23622    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23623        let mut theScheme = AuthScheme::from(&self.config.authentication);
23624
23625        while let Some(auth_step) = theScheme.step()? {
23626            match auth_step {
23627                ::authentic::AuthenticationStep::Request(auth_request) => {
23628                    theScheme.respond(self.client.execute(auth_request));
23629                }
23630                ::authentic::AuthenticationStep::WaitFor(duration) => {
23631                    (self.sleep)(duration);
23632                }
23633            }
23634        }
23635        let theBuilder = crate::v1_1_4::request::dependabot_list_repo_secrets::reqwest_blocking_builder(
23636            self.config.base_url.as_ref(),
23637            owner,
23638            repo,
23639            per_page,
23640            page,
23641            self.config.user_agent.as_ref(),
23642            self.config.accept.as_deref(),
23643        )?
23644        .with_authentication(&theScheme)?;
23645
23646        let theRequest =
23647            crate::v1_1_4::request::dependabot_list_repo_secrets::reqwest_blocking_request(theBuilder)?;
23648
23649        ::log::debug!("HTTP request: {:?}", &theRequest);
23650
23651        let theResponse = self.client.execute(theRequest)?;
23652
23653        ::log::debug!("HTTP response: {:?}", &theResponse);
23654
23655        Ok(theResponse)
23656    }
23657
23658    /// Get a repository public key
23659    /// 
23660    /// Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `dependabot_secrets` repository permission to use this endpoint.
23661    /// 
23662    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#get-a-repository-public-key)
23663    pub fn dependabot_get_repo_public_key(
23664        &self,
23665        owner: &str,
23666        repo: &str,
23667    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23668        let mut theScheme = AuthScheme::from(&self.config.authentication);
23669
23670        while let Some(auth_step) = theScheme.step()? {
23671            match auth_step {
23672                ::authentic::AuthenticationStep::Request(auth_request) => {
23673                    theScheme.respond(self.client.execute(auth_request));
23674                }
23675                ::authentic::AuthenticationStep::WaitFor(duration) => {
23676                    (self.sleep)(duration);
23677                }
23678            }
23679        }
23680        let theBuilder = crate::v1_1_4::request::dependabot_get_repo_public_key::reqwest_blocking_builder(
23681            self.config.base_url.as_ref(),
23682            owner,
23683            repo,
23684            self.config.user_agent.as_ref(),
23685            self.config.accept.as_deref(),
23686        )?
23687        .with_authentication(&theScheme)?;
23688
23689        let theRequest =
23690            crate::v1_1_4::request::dependabot_get_repo_public_key::reqwest_blocking_request(theBuilder)?;
23691
23692        ::log::debug!("HTTP request: {:?}", &theRequest);
23693
23694        let theResponse = self.client.execute(theRequest)?;
23695
23696        ::log::debug!("HTTP response: {:?}", &theResponse);
23697
23698        Ok(theResponse)
23699    }
23700
23701    /// Get a repository secret
23702    /// 
23703    /// Gets a single repository secret without revealing its encrypted value. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` repository permission to use this endpoint.
23704    /// 
23705    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#get-a-repository-secret)
23706    pub fn dependabot_get_repo_secret(
23707        &self,
23708        owner: &str,
23709        repo: &str,
23710        secret_name: &str,
23711    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23712        let mut theScheme = AuthScheme::from(&self.config.authentication);
23713
23714        while let Some(auth_step) = theScheme.step()? {
23715            match auth_step {
23716                ::authentic::AuthenticationStep::Request(auth_request) => {
23717                    theScheme.respond(self.client.execute(auth_request));
23718                }
23719                ::authentic::AuthenticationStep::WaitFor(duration) => {
23720                    (self.sleep)(duration);
23721                }
23722            }
23723        }
23724        let theBuilder = crate::v1_1_4::request::dependabot_get_repo_secret::reqwest_blocking_builder(
23725            self.config.base_url.as_ref(),
23726            owner,
23727            repo,
23728            secret_name,
23729            self.config.user_agent.as_ref(),
23730            self.config.accept.as_deref(),
23731        )?
23732        .with_authentication(&theScheme)?;
23733
23734        let theRequest =
23735            crate::v1_1_4::request::dependabot_get_repo_secret::reqwest_blocking_request(theBuilder)?;
23736
23737        ::log::debug!("HTTP request: {:?}", &theRequest);
23738
23739        let theResponse = self.client.execute(theRequest)?;
23740
23741        ::log::debug!("HTTP response: {:?}", &theResponse);
23742
23743        Ok(theResponse)
23744    }
23745
23746    /// Create or update a repository secret
23747    /// 
23748    /// Creates or updates a repository secret with an encrypted value. Encrypt your secret using
23749    /// [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages). You must authenticate using an access
23750    /// token with the `repo` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` repository
23751    /// permission to use this endpoint.
23752    /// 
23753    /// #### Example encrypting a secret using Node.js
23754    /// 
23755    /// Encrypt your secret using the [tweetsodium](https://github.com/github/tweetsodium) library.
23756    /// 
23757    /// ```text
23758    /// const sodium = require('tweetsodium');
23759    /// 
23760    /// const key = "base64-encoded-public-key";
23761    /// const value = "plain-text-secret";
23762    /// 
23763    /// // Convert the message and key to Uint8Array's (Buffer implements that interface)
23764    /// const messageBytes = Buffer.from(value);
23765    /// const keyBytes = Buffer.from(key, 'base64');
23766    /// 
23767    /// // Encrypt using LibSodium.
23768    /// const encryptedBytes = sodium.seal(messageBytes, keyBytes);
23769    /// 
23770    /// // Base64 the encrypted secret
23771    /// const encrypted = Buffer.from(encryptedBytes).toString('base64');
23772    /// 
23773    /// console.log(encrypted);
23774    /// ```
23775    /// 
23776    /// 
23777    /// #### Example encrypting a secret using Python
23778    /// 
23779    /// Encrypt your secret using [pynacl](https://pynacl.readthedocs.io/en/latest/public/#nacl-public-sealedbox) with Python 3.
23780    /// 
23781    /// ```text
23782    /// from base64 import b64encode
23783    /// from nacl import encoding, public
23784    /// 
23785    /// def encrypt(public_key: str, secret_value: str) -> str:
23786    ///   """Encrypt a Unicode string using the public key."""
23787    ///   public_key = public.PublicKey(public_key.encode("utf-8"), encoding.Base64Encoder())
23788    ///   sealed_box = public.SealedBox(public_key)
23789    ///   encrypted = sealed_box.encrypt(secret_value.encode("utf-8"))
23790    ///   return b64encode(encrypted).decode("utf-8")
23791    /// ```
23792    /// 
23793    /// #### Example encrypting a secret using C#
23794    /// 
23795    /// Encrypt your secret using the [Sodium.Core](https://www.nuget.org/packages/Sodium.Core/) package.
23796    /// 
23797    /// ```text
23798    /// var secretValue = System.Text.Encoding.UTF8.GetBytes("mySecret");
23799    /// var publicKey = Convert.FromBase64String("2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=");
23800    /// 
23801    /// var sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);
23802    /// 
23803    /// Console.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));
23804    /// ```
23805    /// 
23806    /// #### Example encrypting a secret using Ruby
23807    /// 
23808    /// Encrypt your secret using the [rbnacl](https://github.com/RubyCrypto/rbnacl) gem.
23809    /// 
23810    /// ```ruby
23811    /// require "rbnacl"
23812    /// require "base64"
23813    /// 
23814    /// key = Base64.decode64("+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=")
23815    /// public_key = RbNaCl::PublicKey.new(key)
23816    /// 
23817    /// box = RbNaCl::Boxes::Sealed.from_public_key(public_key)
23818    /// encrypted_secret = box.encrypt("my_secret")
23819    /// 
23820    /// # Print the base64 encoded secret
23821    /// puts Base64.strict_encode64(encrypted_secret)
23822    /// ```
23823    /// 
23824    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#create-or-update-a-repository-secret)
23825    ///
23826    /// # Content
23827    ///
23828    /// - [`&v1_1_4::request::dependabot_create_or_update_repo_secret::body::Json`](crate::v1_1_4::request::dependabot_create_or_update_repo_secret::body::Json)
23829    pub fn dependabot_create_or_update_repo_secret<Content>(
23830        &self,
23831        owner: &str,
23832        repo: &str,
23833        secret_name: &str,
23834        theContent: Content,
23835    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
23836    where
23837        Content: Copy + TryInto<crate::v1_1_4::request::dependabot_create_or_update_repo_secret::Content<::reqwest::blocking::Body>>,
23838        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::dependabot_create_or_update_repo_secret::Content<::reqwest::blocking::Body>>>::Error>
23839    {
23840        let mut theScheme = AuthScheme::from(&self.config.authentication);
23841
23842        while let Some(auth_step) = theScheme.step()? {
23843            match auth_step {
23844                ::authentic::AuthenticationStep::Request(auth_request) => {
23845                    theScheme.respond(self.client.execute(auth_request));
23846                }
23847                ::authentic::AuthenticationStep::WaitFor(duration) => {
23848                    (self.sleep)(duration);
23849                }
23850            }
23851        }
23852        let theBuilder = crate::v1_1_4::request::dependabot_create_or_update_repo_secret::reqwest_blocking_builder(
23853            self.config.base_url.as_ref(),
23854            owner,
23855            repo,
23856            secret_name,
23857            self.config.user_agent.as_ref(),
23858            self.config.accept.as_deref(),
23859        )?
23860        .with_authentication(&theScheme)?;
23861
23862        let theRequest = crate::v1_1_4::request::dependabot_create_or_update_repo_secret::reqwest_blocking_request(
23863            theBuilder,
23864            theContent.try_into()?,
23865        )?;
23866
23867        ::log::debug!("HTTP request: {:?}", &theRequest);
23868
23869        let theResponse = self.client.execute(theRequest)?;
23870
23871        ::log::debug!("HTTP response: {:?}", &theResponse);
23872
23873        Ok(theResponse)
23874    }
23875
23876    /// Delete a repository secret
23877    /// 
23878    /// Deletes a secret in a repository using the secret name. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `dependabot_secrets` repository permission to use this endpoint.
23879    /// 
23880    /// [API method documentation](https://docs.github.com/rest/reference/dependabot#delete-a-repository-secret)
23881    pub fn dependabot_delete_repo_secret(
23882        &self,
23883        owner: &str,
23884        repo: &str,
23885        secret_name: &str,
23886    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23887        let mut theScheme = AuthScheme::from(&self.config.authentication);
23888
23889        while let Some(auth_step) = theScheme.step()? {
23890            match auth_step {
23891                ::authentic::AuthenticationStep::Request(auth_request) => {
23892                    theScheme.respond(self.client.execute(auth_request));
23893                }
23894                ::authentic::AuthenticationStep::WaitFor(duration) => {
23895                    (self.sleep)(duration);
23896                }
23897            }
23898        }
23899        let theBuilder = crate::v1_1_4::request::dependabot_delete_repo_secret::reqwest_blocking_builder(
23900            self.config.base_url.as_ref(),
23901            owner,
23902            repo,
23903            secret_name,
23904            self.config.user_agent.as_ref(),
23905            self.config.accept.as_deref(),
23906        )?
23907        .with_authentication(&theScheme)?;
23908
23909        let theRequest =
23910            crate::v1_1_4::request::dependabot_delete_repo_secret::reqwest_blocking_request(theBuilder)?;
23911
23912        ::log::debug!("HTTP request: {:?}", &theRequest);
23913
23914        let theResponse = self.client.execute(theRequest)?;
23915
23916        ::log::debug!("HTTP response: {:?}", &theResponse);
23917
23918        Ok(theResponse)
23919    }
23920
23921    /// Get a diff of the dependencies between commits
23922    /// 
23923    /// Gets the diff of the dependency changes between two commits of a repository, based on the changes to the dependency manifests made in those commits.
23924    /// 
23925    /// [API method documentation](https://docs.github.com/rest/reference/dependency-graph#get-a-diff-of-the-dependencies-between-commits)
23926    pub fn dependency_graph_diff_range(
23927        &self,
23928        owner: &str,
23929        repo: &str,
23930        basehead: &str,
23931        name: ::std::option::Option<&str>,
23932    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23933        let mut theScheme = AuthScheme::from(&self.config.authentication);
23934
23935        while let Some(auth_step) = theScheme.step()? {
23936            match auth_step {
23937                ::authentic::AuthenticationStep::Request(auth_request) => {
23938                    theScheme.respond(self.client.execute(auth_request));
23939                }
23940                ::authentic::AuthenticationStep::WaitFor(duration) => {
23941                    (self.sleep)(duration);
23942                }
23943            }
23944        }
23945        let theBuilder = crate::v1_1_4::request::dependency_graph_diff_range::reqwest_blocking_builder(
23946            self.config.base_url.as_ref(),
23947            owner,
23948            repo,
23949            basehead,
23950            name,
23951            self.config.user_agent.as_ref(),
23952            self.config.accept.as_deref(),
23953        )?
23954        .with_authentication(&theScheme)?;
23955
23956        let theRequest =
23957            crate::v1_1_4::request::dependency_graph_diff_range::reqwest_blocking_request(theBuilder)?;
23958
23959        ::log::debug!("HTTP request: {:?}", &theRequest);
23960
23961        let theResponse = self.client.execute(theRequest)?;
23962
23963        ::log::debug!("HTTP response: {:?}", &theResponse);
23964
23965        Ok(theResponse)
23966    }
23967
23968    /// List deployments
23969    /// 
23970    /// Simple filtering of deployments is available via query parameters:
23971    /// 
23972    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-deployments)
23973    #[allow(clippy::too_many_arguments)]
23974    pub fn repos_list_deployments(
23975        &self,
23976        owner: &str,
23977        repo: &str,
23978        sha: ::std::option::Option<&str>,
23979        r#ref: ::std::option::Option<&str>,
23980        task: ::std::option::Option<&str>,
23981        environment: ::std::option::Option<::std::option::Option<&str>>,
23982        per_page: ::std::option::Option<i64>,
23983        page: ::std::option::Option<i64>,
23984    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
23985        let mut theScheme = AuthScheme::from(&self.config.authentication);
23986
23987        while let Some(auth_step) = theScheme.step()? {
23988            match auth_step {
23989                ::authentic::AuthenticationStep::Request(auth_request) => {
23990                    theScheme.respond(self.client.execute(auth_request));
23991                }
23992                ::authentic::AuthenticationStep::WaitFor(duration) => {
23993                    (self.sleep)(duration);
23994                }
23995            }
23996        }
23997        let theBuilder = crate::v1_1_4::request::repos_list_deployments::reqwest_blocking_builder(
23998            self.config.base_url.as_ref(),
23999            owner,
24000            repo,
24001            sha,
24002            r#ref,
24003            task,
24004            environment,
24005            per_page,
24006            page,
24007            self.config.user_agent.as_ref(),
24008            self.config.accept.as_deref(),
24009        )?
24010        .with_authentication(&theScheme)?;
24011
24012        let theRequest =
24013            crate::v1_1_4::request::repos_list_deployments::reqwest_blocking_request(theBuilder)?;
24014
24015        ::log::debug!("HTTP request: {:?}", &theRequest);
24016
24017        let theResponse = self.client.execute(theRequest)?;
24018
24019        ::log::debug!("HTTP response: {:?}", &theResponse);
24020
24021        Ok(theResponse)
24022    }
24023
24024    /// Create a deployment
24025    /// 
24026    /// Deployments offer a few configurable parameters with certain defaults.
24027    /// 
24028    /// The `ref` parameter can be any named branch, tag, or SHA. At GitHub we often deploy branches and verify them
24029    /// before we merge a pull request.
24030    /// 
24031    /// The `environment` parameter allows deployments to be issued to different runtime environments. Teams often have
24032    /// multiple environments for verifying their applications, such as `production`, `staging`, and `qa`. This parameter
24033    /// makes it easier to track which environments have requested deployments. The default environment is `production`.
24034    /// 
24035    /// The `auto_merge` parameter is used to ensure that the requested ref is not behind the repository's default branch. If
24036    /// the ref _is_ behind the default branch for the repository, we will attempt to merge it for you. If the merge succeeds,
24037    /// the API will return a successful merge commit. If merge conflicts prevent the merge from succeeding, the API will
24038    /// return a failure response.
24039    /// 
24040    /// By default, [commit statuses](https://docs.github.com/rest/reference/commits#commit-statuses) for every submitted context must be in a `success`
24041    /// state. The `required_contexts` parameter allows you to specify a subset of contexts that must be `success`, or to
24042    /// specify contexts that have not yet been submitted. You are not required to use commit statuses to deploy. If you do
24043    /// not require any contexts or create any commit statuses, the deployment will always succeed.
24044    /// 
24045    /// The `payload` parameter is available for any extra information that a deployment system might need. It is a JSON text
24046    /// field that will be passed on when a deployment event is dispatched.
24047    /// 
24048    /// The `task` parameter is used by the deployment system to allow different execution paths. In the web world this might
24049    /// be `deploy:migrations` to run schema changes on the system. In the compiled world this could be a flag to compile an
24050    /// application with debugging enabled.
24051    /// 
24052    /// Users with `repo` or `repo_deployment` scopes can create a deployment for a given ref.
24053    /// 
24054    /// #### Merged branch response
24055    /// You will see this response when GitHub automatically merges the base branch into the topic branch instead of creating
24056    /// a deployment. This auto-merge happens when:
24057    /// *   Auto-merge option is enabled in the repository
24058    /// *   Topic branch does not include the latest changes on the base branch, which is `master` in the response example
24059    /// *   There are no merge conflicts
24060    /// 
24061    /// If there are no new commits in the base branch, a new request to create a deployment should give a successful
24062    /// response.
24063    /// 
24064    /// #### Merge conflict response
24065    /// This error happens when the `auto_merge` option is enabled and when the default branch (in this case `master`), can't
24066    /// be merged into the branch that's being deployed (in this case `topic-branch`), due to merge conflicts.
24067    /// 
24068    /// #### Failed commit status checks
24069    /// This error happens when the `required_contexts` parameter indicates that one or more contexts need to have a `success`
24070    /// status for the commit to be deployed, but one or more of the required contexts do not have a state of `success`.
24071    /// 
24072    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-deployment)
24073    ///
24074    /// # Content
24075    ///
24076    /// - [`&v1_1_4::request::repos_create_deployment::body::Json`](crate::v1_1_4::request::repos_create_deployment::body::Json)
24077    pub fn repos_create_deployment<Content>(
24078        &self,
24079        owner: &str,
24080        repo: &str,
24081        theContent: Content,
24082    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
24083    where
24084        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_deployment::Content<::reqwest::blocking::Body>>,
24085        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_deployment::Content<::reqwest::blocking::Body>>>::Error>
24086    {
24087        let mut theScheme = AuthScheme::from(&self.config.authentication);
24088
24089        while let Some(auth_step) = theScheme.step()? {
24090            match auth_step {
24091                ::authentic::AuthenticationStep::Request(auth_request) => {
24092                    theScheme.respond(self.client.execute(auth_request));
24093                }
24094                ::authentic::AuthenticationStep::WaitFor(duration) => {
24095                    (self.sleep)(duration);
24096                }
24097            }
24098        }
24099        let theBuilder = crate::v1_1_4::request::repos_create_deployment::reqwest_blocking_builder(
24100            self.config.base_url.as_ref(),
24101            owner,
24102            repo,
24103            self.config.user_agent.as_ref(),
24104            self.config.accept.as_deref(),
24105        )?
24106        .with_authentication(&theScheme)?;
24107
24108        let theRequest = crate::v1_1_4::request::repos_create_deployment::reqwest_blocking_request(
24109            theBuilder,
24110            theContent.try_into()?,
24111        )?;
24112
24113        ::log::debug!("HTTP request: {:?}", &theRequest);
24114
24115        let theResponse = self.client.execute(theRequest)?;
24116
24117        ::log::debug!("HTTP response: {:?}", &theResponse);
24118
24119        Ok(theResponse)
24120    }
24121
24122    /// Get a deployment
24123    /// 
24124    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-deployment)
24125    pub fn repos_get_deployment(
24126        &self,
24127        owner: &str,
24128        repo: &str,
24129        deployment_id: i64,
24130    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24131        let mut theScheme = AuthScheme::from(&self.config.authentication);
24132
24133        while let Some(auth_step) = theScheme.step()? {
24134            match auth_step {
24135                ::authentic::AuthenticationStep::Request(auth_request) => {
24136                    theScheme.respond(self.client.execute(auth_request));
24137                }
24138                ::authentic::AuthenticationStep::WaitFor(duration) => {
24139                    (self.sleep)(duration);
24140                }
24141            }
24142        }
24143        let theBuilder = crate::v1_1_4::request::repos_get_deployment::reqwest_blocking_builder(
24144            self.config.base_url.as_ref(),
24145            owner,
24146            repo,
24147            deployment_id,
24148            self.config.user_agent.as_ref(),
24149            self.config.accept.as_deref(),
24150        )?
24151        .with_authentication(&theScheme)?;
24152
24153        let theRequest =
24154            crate::v1_1_4::request::repos_get_deployment::reqwest_blocking_request(theBuilder)?;
24155
24156        ::log::debug!("HTTP request: {:?}", &theRequest);
24157
24158        let theResponse = self.client.execute(theRequest)?;
24159
24160        ::log::debug!("HTTP response: {:?}", &theResponse);
24161
24162        Ok(theResponse)
24163    }
24164
24165    /// Delete a deployment
24166    /// 
24167    /// If the repository only has one deployment, you can delete the deployment regardless of its status. If the repository has more than one deployment, you can only delete inactive deployments. This ensures that repositories with multiple deployments will always have an active deployment. Anyone with `repo` or `repo_deployment` scopes can delete a deployment.
24168    /// 
24169    /// To set a deployment as inactive, you must:
24170    /// 
24171    /// *   Create a new deployment that is active so that the system has a record of the current state, then delete the previously active deployment.
24172    /// *   Mark the active deployment as inactive by adding any non-successful deployment status.
24173    /// 
24174    /// For more information, see "[Create a deployment](https://docs.github.com/rest/reference/repos/#create-a-deployment)" and "[Create a deployment status](https://docs.github.com/rest/reference/repos#create-a-deployment-status)."
24175    /// 
24176    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-deployment)
24177    pub fn repos_delete_deployment(
24178        &self,
24179        owner: &str,
24180        repo: &str,
24181        deployment_id: i64,
24182    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24183        let mut theScheme = AuthScheme::from(&self.config.authentication);
24184
24185        while let Some(auth_step) = theScheme.step()? {
24186            match auth_step {
24187                ::authentic::AuthenticationStep::Request(auth_request) => {
24188                    theScheme.respond(self.client.execute(auth_request));
24189                }
24190                ::authentic::AuthenticationStep::WaitFor(duration) => {
24191                    (self.sleep)(duration);
24192                }
24193            }
24194        }
24195        let theBuilder = crate::v1_1_4::request::repos_delete_deployment::reqwest_blocking_builder(
24196            self.config.base_url.as_ref(),
24197            owner,
24198            repo,
24199            deployment_id,
24200            self.config.user_agent.as_ref(),
24201            self.config.accept.as_deref(),
24202        )?
24203        .with_authentication(&theScheme)?;
24204
24205        let theRequest =
24206            crate::v1_1_4::request::repos_delete_deployment::reqwest_blocking_request(theBuilder)?;
24207
24208        ::log::debug!("HTTP request: {:?}", &theRequest);
24209
24210        let theResponse = self.client.execute(theRequest)?;
24211
24212        ::log::debug!("HTTP response: {:?}", &theResponse);
24213
24214        Ok(theResponse)
24215    }
24216
24217    /// List deployment statuses
24218    /// 
24219    /// Users with pull access can view deployment statuses for a deployment:
24220    /// 
24221    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-deployment-statuses)
24222    pub fn repos_list_deployment_statuses(
24223        &self,
24224        owner: &str,
24225        repo: &str,
24226        deployment_id: i64,
24227        per_page: ::std::option::Option<i64>,
24228        page: ::std::option::Option<i64>,
24229    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24230        let mut theScheme = AuthScheme::from(&self.config.authentication);
24231
24232        while let Some(auth_step) = theScheme.step()? {
24233            match auth_step {
24234                ::authentic::AuthenticationStep::Request(auth_request) => {
24235                    theScheme.respond(self.client.execute(auth_request));
24236                }
24237                ::authentic::AuthenticationStep::WaitFor(duration) => {
24238                    (self.sleep)(duration);
24239                }
24240            }
24241        }
24242        let theBuilder = crate::v1_1_4::request::repos_list_deployment_statuses::reqwest_blocking_builder(
24243            self.config.base_url.as_ref(),
24244            owner,
24245            repo,
24246            deployment_id,
24247            per_page,
24248            page,
24249            self.config.user_agent.as_ref(),
24250            self.config.accept.as_deref(),
24251        )?
24252        .with_authentication(&theScheme)?;
24253
24254        let theRequest =
24255            crate::v1_1_4::request::repos_list_deployment_statuses::reqwest_blocking_request(theBuilder)?;
24256
24257        ::log::debug!("HTTP request: {:?}", &theRequest);
24258
24259        let theResponse = self.client.execute(theRequest)?;
24260
24261        ::log::debug!("HTTP response: {:?}", &theResponse);
24262
24263        Ok(theResponse)
24264    }
24265
24266    /// Create a deployment status
24267    /// 
24268    /// Users with `push` access can create deployment statuses for a given deployment.
24269    /// 
24270    /// GitHub Apps require `read & write` access to "Deployments" and `read-only` access to "Repo contents" (for private repos). OAuth Apps require the `repo_deployment` scope.
24271    /// 
24272    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-deployment-status)
24273    ///
24274    /// # Content
24275    ///
24276    /// - [`&v1_1_4::request::repos_create_deployment_status::body::Json`](crate::v1_1_4::request::repos_create_deployment_status::body::Json)
24277    pub fn repos_create_deployment_status<Content>(
24278        &self,
24279        owner: &str,
24280        repo: &str,
24281        deployment_id: i64,
24282        theContent: Content,
24283    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
24284    where
24285        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_deployment_status::Content<::reqwest::blocking::Body>>,
24286        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_deployment_status::Content<::reqwest::blocking::Body>>>::Error>
24287    {
24288        let mut theScheme = AuthScheme::from(&self.config.authentication);
24289
24290        while let Some(auth_step) = theScheme.step()? {
24291            match auth_step {
24292                ::authentic::AuthenticationStep::Request(auth_request) => {
24293                    theScheme.respond(self.client.execute(auth_request));
24294                }
24295                ::authentic::AuthenticationStep::WaitFor(duration) => {
24296                    (self.sleep)(duration);
24297                }
24298            }
24299        }
24300        let theBuilder = crate::v1_1_4::request::repos_create_deployment_status::reqwest_blocking_builder(
24301            self.config.base_url.as_ref(),
24302            owner,
24303            repo,
24304            deployment_id,
24305            self.config.user_agent.as_ref(),
24306            self.config.accept.as_deref(),
24307        )?
24308        .with_authentication(&theScheme)?;
24309
24310        let theRequest = crate::v1_1_4::request::repos_create_deployment_status::reqwest_blocking_request(
24311            theBuilder,
24312            theContent.try_into()?,
24313        )?;
24314
24315        ::log::debug!("HTTP request: {:?}", &theRequest);
24316
24317        let theResponse = self.client.execute(theRequest)?;
24318
24319        ::log::debug!("HTTP response: {:?}", &theResponse);
24320
24321        Ok(theResponse)
24322    }
24323
24324    /// Get a deployment status
24325    /// 
24326    /// Users with pull access can view a deployment status for a deployment:
24327    /// 
24328    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-deployment-status)
24329    pub fn repos_get_deployment_status(
24330        &self,
24331        owner: &str,
24332        repo: &str,
24333        deployment_id: i64,
24334        status_id: i64,
24335    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24336        let mut theScheme = AuthScheme::from(&self.config.authentication);
24337
24338        while let Some(auth_step) = theScheme.step()? {
24339            match auth_step {
24340                ::authentic::AuthenticationStep::Request(auth_request) => {
24341                    theScheme.respond(self.client.execute(auth_request));
24342                }
24343                ::authentic::AuthenticationStep::WaitFor(duration) => {
24344                    (self.sleep)(duration);
24345                }
24346            }
24347        }
24348        let theBuilder = crate::v1_1_4::request::repos_get_deployment_status::reqwest_blocking_builder(
24349            self.config.base_url.as_ref(),
24350            owner,
24351            repo,
24352            deployment_id,
24353            status_id,
24354            self.config.user_agent.as_ref(),
24355            self.config.accept.as_deref(),
24356        )?
24357        .with_authentication(&theScheme)?;
24358
24359        let theRequest =
24360            crate::v1_1_4::request::repos_get_deployment_status::reqwest_blocking_request(theBuilder)?;
24361
24362        ::log::debug!("HTTP request: {:?}", &theRequest);
24363
24364        let theResponse = self.client.execute(theRequest)?;
24365
24366        ::log::debug!("HTTP response: {:?}", &theResponse);
24367
24368        Ok(theResponse)
24369    }
24370
24371    /// Create a repository dispatch event
24372    /// 
24373    /// You can use this endpoint to trigger a webhook event called `repository_dispatch` when you want activity that happens outside of GitHub to trigger a GitHub Actions workflow or GitHub App webhook. You must configure your GitHub Actions workflow or GitHub App to run when the `repository_dispatch` event occurs. For an example `repository_dispatch` webhook payload, see "[RepositoryDispatchEvent](https://docs.github.com/webhooks/event-payloads/#repository_dispatch)."
24374    /// 
24375    /// The `client_payload` parameter is available for any extra information that your workflow might need. This parameter is a JSON payload that will be passed on when the webhook event is dispatched. For example, the `client_payload` can include a message that a user would like to send using a GitHub Actions workflow. Or the `client_payload` can be used as a test to debug your workflow.
24376    /// 
24377    /// This endpoint requires write access to the repository by providing either:
24378    /// 
24379    ///   - Personal access tokens with `repo` scope. For more information, see "[Creating a personal access token for the command line](https://docs.github.com/articles/creating-a-personal-access-token-for-the-command-line)" in the GitHub Help documentation.
24380    ///   - GitHub Apps with both `metadata:read` and `contents:read&write` permissions.
24381    /// 
24382    /// This input example shows how you can use the `client_payload` as a test to debug your workflow.
24383    /// 
24384    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-repository-dispatch-event)
24385    ///
24386    /// # Content
24387    ///
24388    /// - [`&v1_1_4::request::repos_create_dispatch_event::body::Json`](crate::v1_1_4::request::repos_create_dispatch_event::body::Json)
24389    pub fn repos_create_dispatch_event<Content>(
24390        &self,
24391        owner: &str,
24392        repo: &str,
24393        theContent: Content,
24394    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
24395    where
24396        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_dispatch_event::Content<::reqwest::blocking::Body>>,
24397        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_dispatch_event::Content<::reqwest::blocking::Body>>>::Error>
24398    {
24399        let mut theScheme = AuthScheme::from(&self.config.authentication);
24400
24401        while let Some(auth_step) = theScheme.step()? {
24402            match auth_step {
24403                ::authentic::AuthenticationStep::Request(auth_request) => {
24404                    theScheme.respond(self.client.execute(auth_request));
24405                }
24406                ::authentic::AuthenticationStep::WaitFor(duration) => {
24407                    (self.sleep)(duration);
24408                }
24409            }
24410        }
24411        let theBuilder = crate::v1_1_4::request::repos_create_dispatch_event::reqwest_blocking_builder(
24412            self.config.base_url.as_ref(),
24413            owner,
24414            repo,
24415            self.config.user_agent.as_ref(),
24416            self.config.accept.as_deref(),
24417        )?
24418        .with_authentication(&theScheme)?;
24419
24420        let theRequest = crate::v1_1_4::request::repos_create_dispatch_event::reqwest_blocking_request(
24421            theBuilder,
24422            theContent.try_into()?,
24423        )?;
24424
24425        ::log::debug!("HTTP request: {:?}", &theRequest);
24426
24427        let theResponse = self.client.execute(theRequest)?;
24428
24429        ::log::debug!("HTTP response: {:?}", &theResponse);
24430
24431        Ok(theResponse)
24432    }
24433
24434    /// Get all environments
24435    /// 
24436    /// Get all environments for a repository.
24437    /// 
24438    /// Anyone with read access to the repository can use this endpoint. If the repository is private, you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
24439    /// 
24440    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-all-environments)
24441    pub fn repos_get_all_environments(
24442        &self,
24443        owner: &str,
24444        repo: &str,
24445        per_page: ::std::option::Option<i64>,
24446        page: ::std::option::Option<i64>,
24447    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24448        let mut theScheme = AuthScheme::from(&self.config.authentication);
24449
24450        while let Some(auth_step) = theScheme.step()? {
24451            match auth_step {
24452                ::authentic::AuthenticationStep::Request(auth_request) => {
24453                    theScheme.respond(self.client.execute(auth_request));
24454                }
24455                ::authentic::AuthenticationStep::WaitFor(duration) => {
24456                    (self.sleep)(duration);
24457                }
24458            }
24459        }
24460        let theBuilder = crate::v1_1_4::request::repos_get_all_environments::reqwest_blocking_builder(
24461            self.config.base_url.as_ref(),
24462            owner,
24463            repo,
24464            per_page,
24465            page,
24466            self.config.user_agent.as_ref(),
24467            self.config.accept.as_deref(),
24468        )?
24469        .with_authentication(&theScheme)?;
24470
24471        let theRequest =
24472            crate::v1_1_4::request::repos_get_all_environments::reqwest_blocking_request(theBuilder)?;
24473
24474        ::log::debug!("HTTP request: {:?}", &theRequest);
24475
24476        let theResponse = self.client.execute(theRequest)?;
24477
24478        ::log::debug!("HTTP response: {:?}", &theResponse);
24479
24480        Ok(theResponse)
24481    }
24482
24483    /// Get an environment
24484    /// 
24485    /// Anyone with read access to the repository can use this endpoint. If the repository is private, you must use an access token with the `repo` scope. GitHub Apps must have the `actions:read` permission to use this endpoint.
24486    /// 
24487    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-an-environment)
24488    pub fn repos_get_environment(
24489        &self,
24490        owner: &str,
24491        repo: &str,
24492        environment_name: &str,
24493    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24494        let mut theScheme = AuthScheme::from(&self.config.authentication);
24495
24496        while let Some(auth_step) = theScheme.step()? {
24497            match auth_step {
24498                ::authentic::AuthenticationStep::Request(auth_request) => {
24499                    theScheme.respond(self.client.execute(auth_request));
24500                }
24501                ::authentic::AuthenticationStep::WaitFor(duration) => {
24502                    (self.sleep)(duration);
24503                }
24504            }
24505        }
24506        let theBuilder = crate::v1_1_4::request::repos_get_environment::reqwest_blocking_builder(
24507            self.config.base_url.as_ref(),
24508            owner,
24509            repo,
24510            environment_name,
24511            self.config.user_agent.as_ref(),
24512            self.config.accept.as_deref(),
24513        )?
24514        .with_authentication(&theScheme)?;
24515
24516        let theRequest =
24517            crate::v1_1_4::request::repos_get_environment::reqwest_blocking_request(theBuilder)?;
24518
24519        ::log::debug!("HTTP request: {:?}", &theRequest);
24520
24521        let theResponse = self.client.execute(theRequest)?;
24522
24523        ::log::debug!("HTTP response: {:?}", &theResponse);
24524
24525        Ok(theResponse)
24526    }
24527
24528    /// Create or update an environment
24529    /// 
24530    /// Create or update an environment with protection rules, such as required reviewers. For more information about environment protection rules, see "[Environments](/actions/reference/environments#environment-protection-rules)."
24531    /// 
24532    /// **Note:** Although you can use this operation to specify that only branches that match specified name patterns can deploy to this environment, you must use the UI to set the name patterns. For more information, see "[Environments](/actions/reference/environments#deployment-branches)."
24533    /// 
24534    /// **Note:** To create or update secrets for an environment, see "[Secrets](/rest/reference/actions#secrets)."
24535    /// 
24536    /// You must authenticate using an access token with the repo scope to use this endpoint.
24537    /// 
24538    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-or-update-an-environment)
24539    ///
24540    /// # Content
24541    ///
24542    /// - [`&::std::option::Option<crate::v1_1_4::request::repos_create_or_update_environment::body::Json>`](crate::v1_1_4::request::repos_create_or_update_environment::body::Json)
24543    pub fn repos_create_or_update_environment<Content>(
24544        &self,
24545        owner: &str,
24546        repo: &str,
24547        environment_name: &str,
24548        theContent: Content,
24549    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
24550    where
24551        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_or_update_environment::Content<::reqwest::blocking::Body>>,
24552        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_or_update_environment::Content<::reqwest::blocking::Body>>>::Error>
24553    {
24554        let mut theScheme = AuthScheme::from(&self.config.authentication);
24555
24556        while let Some(auth_step) = theScheme.step()? {
24557            match auth_step {
24558                ::authentic::AuthenticationStep::Request(auth_request) => {
24559                    theScheme.respond(self.client.execute(auth_request));
24560                }
24561                ::authentic::AuthenticationStep::WaitFor(duration) => {
24562                    (self.sleep)(duration);
24563                }
24564            }
24565        }
24566        let theBuilder = crate::v1_1_4::request::repos_create_or_update_environment::reqwest_blocking_builder(
24567            self.config.base_url.as_ref(),
24568            owner,
24569            repo,
24570            environment_name,
24571            self.config.user_agent.as_ref(),
24572            self.config.accept.as_deref(),
24573        )?
24574        .with_authentication(&theScheme)?;
24575
24576        let theRequest = crate::v1_1_4::request::repos_create_or_update_environment::reqwest_blocking_request(
24577            theBuilder,
24578            theContent.try_into()?,
24579        )?;
24580
24581        ::log::debug!("HTTP request: {:?}", &theRequest);
24582
24583        let theResponse = self.client.execute(theRequest)?;
24584
24585        ::log::debug!("HTTP response: {:?}", &theResponse);
24586
24587        Ok(theResponse)
24588    }
24589
24590    /// Delete an environment
24591    /// 
24592    /// You must authenticate using an access token with the repo scope to use this endpoint.
24593    /// 
24594    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-an-environment)
24595    pub fn repos_delete_an_environment(
24596        &self,
24597        owner: &str,
24598        repo: &str,
24599        environment_name: &str,
24600    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24601        let mut theScheme = AuthScheme::from(&self.config.authentication);
24602
24603        while let Some(auth_step) = theScheme.step()? {
24604            match auth_step {
24605                ::authentic::AuthenticationStep::Request(auth_request) => {
24606                    theScheme.respond(self.client.execute(auth_request));
24607                }
24608                ::authentic::AuthenticationStep::WaitFor(duration) => {
24609                    (self.sleep)(duration);
24610                }
24611            }
24612        }
24613        let theBuilder = crate::v1_1_4::request::repos_delete_an_environment::reqwest_blocking_builder(
24614            self.config.base_url.as_ref(),
24615            owner,
24616            repo,
24617            environment_name,
24618            self.config.user_agent.as_ref(),
24619            self.config.accept.as_deref(),
24620        )?
24621        .with_authentication(&theScheme)?;
24622
24623        let theRequest =
24624            crate::v1_1_4::request::repos_delete_an_environment::reqwest_blocking_request(theBuilder)?;
24625
24626        ::log::debug!("HTTP request: {:?}", &theRequest);
24627
24628        let theResponse = self.client.execute(theRequest)?;
24629
24630        ::log::debug!("HTTP response: {:?}", &theResponse);
24631
24632        Ok(theResponse)
24633    }
24634
24635    /// List repository events
24636    /// 
24637    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-repository-events)
24638    pub fn activity_list_repo_events(
24639        &self,
24640        owner: &str,
24641        repo: &str,
24642        per_page: ::std::option::Option<i64>,
24643        page: ::std::option::Option<i64>,
24644    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24645        let mut theScheme = AuthScheme::from(&self.config.authentication);
24646
24647        while let Some(auth_step) = theScheme.step()? {
24648            match auth_step {
24649                ::authentic::AuthenticationStep::Request(auth_request) => {
24650                    theScheme.respond(self.client.execute(auth_request));
24651                }
24652                ::authentic::AuthenticationStep::WaitFor(duration) => {
24653                    (self.sleep)(duration);
24654                }
24655            }
24656        }
24657        let theBuilder = crate::v1_1_4::request::activity_list_repo_events::reqwest_blocking_builder(
24658            self.config.base_url.as_ref(),
24659            owner,
24660            repo,
24661            per_page,
24662            page,
24663            self.config.user_agent.as_ref(),
24664            self.config.accept.as_deref(),
24665        )?
24666        .with_authentication(&theScheme)?;
24667
24668        let theRequest =
24669            crate::v1_1_4::request::activity_list_repo_events::reqwest_blocking_request(theBuilder)?;
24670
24671        ::log::debug!("HTTP request: {:?}", &theRequest);
24672
24673        let theResponse = self.client.execute(theRequest)?;
24674
24675        ::log::debug!("HTTP response: {:?}", &theResponse);
24676
24677        Ok(theResponse)
24678    }
24679
24680    /// List forks
24681    /// 
24682    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-forks)
24683    pub fn repos_list_forks(
24684        &self,
24685        owner: &str,
24686        repo: &str,
24687        sort: ::std::option::Option<&str>,
24688        per_page: ::std::option::Option<i64>,
24689        page: ::std::option::Option<i64>,
24690    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24691        let mut theScheme = AuthScheme::from(&self.config.authentication);
24692
24693        while let Some(auth_step) = theScheme.step()? {
24694            match auth_step {
24695                ::authentic::AuthenticationStep::Request(auth_request) => {
24696                    theScheme.respond(self.client.execute(auth_request));
24697                }
24698                ::authentic::AuthenticationStep::WaitFor(duration) => {
24699                    (self.sleep)(duration);
24700                }
24701            }
24702        }
24703        let theBuilder = crate::v1_1_4::request::repos_list_forks::reqwest_blocking_builder(
24704            self.config.base_url.as_ref(),
24705            owner,
24706            repo,
24707            sort,
24708            per_page,
24709            page,
24710            self.config.user_agent.as_ref(),
24711            self.config.accept.as_deref(),
24712        )?
24713        .with_authentication(&theScheme)?;
24714
24715        let theRequest =
24716            crate::v1_1_4::request::repos_list_forks::reqwest_blocking_request(theBuilder)?;
24717
24718        ::log::debug!("HTTP request: {:?}", &theRequest);
24719
24720        let theResponse = self.client.execute(theRequest)?;
24721
24722        ::log::debug!("HTTP response: {:?}", &theResponse);
24723
24724        Ok(theResponse)
24725    }
24726
24727    /// Create a fork
24728    /// 
24729    /// Create a fork for the authenticated user.
24730    /// 
24731    /// **Note**: Forking a Repository happens asynchronously. You may have to wait a short period of time before you can access the git objects. If this takes longer than 5 minutes, be sure to contact [GitHub Support](https://support.github.com/contact?tags=dotcom-rest-api).
24732    /// 
24733    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-fork)
24734    ///
24735    /// # Content
24736    ///
24737    /// - [`&::std::option::Option<crate::v1_1_4::request::repos_create_fork::body::Json>`](crate::v1_1_4::request::repos_create_fork::body::Json)
24738    pub fn repos_create_fork<Content>(
24739        &self,
24740        owner: &str,
24741        repo: &str,
24742        theContent: Content,
24743    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
24744    where
24745        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_fork::Content<::reqwest::blocking::Body>>,
24746        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_fork::Content<::reqwest::blocking::Body>>>::Error>
24747    {
24748        let mut theScheme = AuthScheme::from(&self.config.authentication);
24749
24750        while let Some(auth_step) = theScheme.step()? {
24751            match auth_step {
24752                ::authentic::AuthenticationStep::Request(auth_request) => {
24753                    theScheme.respond(self.client.execute(auth_request));
24754                }
24755                ::authentic::AuthenticationStep::WaitFor(duration) => {
24756                    (self.sleep)(duration);
24757                }
24758            }
24759        }
24760        let theBuilder = crate::v1_1_4::request::repos_create_fork::reqwest_blocking_builder(
24761            self.config.base_url.as_ref(),
24762            owner,
24763            repo,
24764            self.config.user_agent.as_ref(),
24765            self.config.accept.as_deref(),
24766        )?
24767        .with_authentication(&theScheme)?;
24768
24769        let theRequest = crate::v1_1_4::request::repos_create_fork::reqwest_blocking_request(
24770            theBuilder,
24771            theContent.try_into()?,
24772        )?;
24773
24774        ::log::debug!("HTTP request: {:?}", &theRequest);
24775
24776        let theResponse = self.client.execute(theRequest)?;
24777
24778        ::log::debug!("HTTP response: {:?}", &theResponse);
24779
24780        Ok(theResponse)
24781    }
24782
24783    /// Create a blob
24784    /// 
24785    /// [API method documentation](https://docs.github.com/rest/reference/git#create-a-blob)
24786    ///
24787    /// # Content
24788    ///
24789    /// - [`&v1_1_4::request::git_create_blob::body::Json`](crate::v1_1_4::request::git_create_blob::body::Json)
24790    pub fn git_create_blob<Content>(
24791        &self,
24792        owner: &str,
24793        repo: &str,
24794        theContent: Content,
24795    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
24796    where
24797        Content: Copy + TryInto<crate::v1_1_4::request::git_create_blob::Content<::reqwest::blocking::Body>>,
24798        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::git_create_blob::Content<::reqwest::blocking::Body>>>::Error>
24799    {
24800        let mut theScheme = AuthScheme::from(&self.config.authentication);
24801
24802        while let Some(auth_step) = theScheme.step()? {
24803            match auth_step {
24804                ::authentic::AuthenticationStep::Request(auth_request) => {
24805                    theScheme.respond(self.client.execute(auth_request));
24806                }
24807                ::authentic::AuthenticationStep::WaitFor(duration) => {
24808                    (self.sleep)(duration);
24809                }
24810            }
24811        }
24812        let theBuilder = crate::v1_1_4::request::git_create_blob::reqwest_blocking_builder(
24813            self.config.base_url.as_ref(),
24814            owner,
24815            repo,
24816            self.config.user_agent.as_ref(),
24817            self.config.accept.as_deref(),
24818        )?
24819        .with_authentication(&theScheme)?;
24820
24821        let theRequest = crate::v1_1_4::request::git_create_blob::reqwest_blocking_request(
24822            theBuilder,
24823            theContent.try_into()?,
24824        )?;
24825
24826        ::log::debug!("HTTP request: {:?}", &theRequest);
24827
24828        let theResponse = self.client.execute(theRequest)?;
24829
24830        ::log::debug!("HTTP response: {:?}", &theResponse);
24831
24832        Ok(theResponse)
24833    }
24834
24835    /// Get a blob
24836    /// 
24837    /// The `content` in the response will always be Base64 encoded.
24838    /// 
24839    /// _Note_: This API supports blobs up to 100 megabytes in size.
24840    /// 
24841    /// [API method documentation](https://docs.github.com/rest/reference/git#get-a-blob)
24842    pub fn git_get_blob(
24843        &self,
24844        owner: &str,
24845        repo: &str,
24846        file_sha: &str,
24847    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
24848        let mut theScheme = AuthScheme::from(&self.config.authentication);
24849
24850        while let Some(auth_step) = theScheme.step()? {
24851            match auth_step {
24852                ::authentic::AuthenticationStep::Request(auth_request) => {
24853                    theScheme.respond(self.client.execute(auth_request));
24854                }
24855                ::authentic::AuthenticationStep::WaitFor(duration) => {
24856                    (self.sleep)(duration);
24857                }
24858            }
24859        }
24860        let theBuilder = crate::v1_1_4::request::git_get_blob::reqwest_blocking_builder(
24861            self.config.base_url.as_ref(),
24862            owner,
24863            repo,
24864            file_sha,
24865            self.config.user_agent.as_ref(),
24866            self.config.accept.as_deref(),
24867        )?
24868        .with_authentication(&theScheme)?;
24869
24870        let theRequest =
24871            crate::v1_1_4::request::git_get_blob::reqwest_blocking_request(theBuilder)?;
24872
24873        ::log::debug!("HTTP request: {:?}", &theRequest);
24874
24875        let theResponse = self.client.execute(theRequest)?;
24876
24877        ::log::debug!("HTTP response: {:?}", &theResponse);
24878
24879        Ok(theResponse)
24880    }
24881
24882    /// Create a commit
24883    /// 
24884    /// Creates a new Git [commit object](https://git-scm.com/book/en/v1/Git-Internals-Git-Objects#Commit-Objects).
24885    /// 
24886    /// **Signature verification object**
24887    /// 
24888    /// The response will include a `verification` object that describes the result of verifying the commit's signature. The following fields are included in the `verification` object:
24889    /// 
24890    /// | Name | Type | Description |
24891    /// | ---- | ---- | ----------- |
24892    /// | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |
24893    /// | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in the table below. |
24894    /// | `signature` | `string` | The signature that was extracted from the commit. |
24895    /// | `payload` | `string` | The value that was signed. |
24896    /// 
24897    /// These are the possible values for `reason` in the `verification` object:
24898    /// 
24899    /// | Value | Description |
24900    /// | ----- | ----------- |
24901    /// | `expired_key` | The key that made the signature is expired. |
24902    /// | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |
24903    /// | `gpgverify_error` | There was an error communicating with the signature verification service. |
24904    /// | `gpgverify_unavailable` | The signature verification service is currently unavailable. |
24905    /// | `unsigned` | The object does not include a signature. |
24906    /// | `unknown_signature_type` | A non-PGP signature was found in the commit. |
24907    /// | `no_user` | No user was associated with the `committer` email address in the commit. |
24908    /// | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on her/his account. |
24909    /// | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |
24910    /// | `unknown_key` | The key that made the signature has not been registered with any user's account. |
24911    /// | `malformed_signature` | There was an error parsing the signature. |
24912    /// | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |
24913    /// | `valid` | None of the above errors applied, so the signature is considered to be verified. |
24914    /// 
24915    /// [API method documentation](https://docs.github.com/rest/reference/git#create-a-commit)
24916    ///
24917    /// # Content
24918    ///
24919    /// - [`&v1_1_4::request::git_create_commit::body::Json`](crate::v1_1_4::request::git_create_commit::body::Json)
24920    pub fn git_create_commit<Content>(
24921        &self,
24922        owner: &str,
24923        repo: &str,
24924        theContent: Content,
24925    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
24926    where
24927        Content: Copy + TryInto<crate::v1_1_4::request::git_create_commit::Content<::reqwest::blocking::Body>>,
24928        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::git_create_commit::Content<::reqwest::blocking::Body>>>::Error>
24929    {
24930        let mut theScheme = AuthScheme::from(&self.config.authentication);
24931
24932        while let Some(auth_step) = theScheme.step()? {
24933            match auth_step {
24934                ::authentic::AuthenticationStep::Request(auth_request) => {
24935                    theScheme.respond(self.client.execute(auth_request));
24936                }
24937                ::authentic::AuthenticationStep::WaitFor(duration) => {
24938                    (self.sleep)(duration);
24939                }
24940            }
24941        }
24942        let theBuilder = crate::v1_1_4::request::git_create_commit::reqwest_blocking_builder(
24943            self.config.base_url.as_ref(),
24944            owner,
24945            repo,
24946            self.config.user_agent.as_ref(),
24947            self.config.accept.as_deref(),
24948        )?
24949        .with_authentication(&theScheme)?;
24950
24951        let theRequest = crate::v1_1_4::request::git_create_commit::reqwest_blocking_request(
24952            theBuilder,
24953            theContent.try_into()?,
24954        )?;
24955
24956        ::log::debug!("HTTP request: {:?}", &theRequest);
24957
24958        let theResponse = self.client.execute(theRequest)?;
24959
24960        ::log::debug!("HTTP response: {:?}", &theResponse);
24961
24962        Ok(theResponse)
24963    }
24964
24965    /// Get a commit
24966    /// 
24967    /// Gets a Git [commit object](https://git-scm.com/book/en/v1/Git-Internals-Git-Objects#Commit-Objects).
24968    /// 
24969    /// **Signature verification object**
24970    /// 
24971    /// The response will include a `verification` object that describes the result of verifying the commit's signature. The following fields are included in the `verification` object:
24972    /// 
24973    /// | Name | Type | Description |
24974    /// | ---- | ---- | ----------- |
24975    /// | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |
24976    /// | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in the table below. |
24977    /// | `signature` | `string` | The signature that was extracted from the commit. |
24978    /// | `payload` | `string` | The value that was signed. |
24979    /// 
24980    /// These are the possible values for `reason` in the `verification` object:
24981    /// 
24982    /// | Value | Description |
24983    /// | ----- | ----------- |
24984    /// | `expired_key` | The key that made the signature is expired. |
24985    /// | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |
24986    /// | `gpgverify_error` | There was an error communicating with the signature verification service. |
24987    /// | `gpgverify_unavailable` | The signature verification service is currently unavailable. |
24988    /// | `unsigned` | The object does not include a signature. |
24989    /// | `unknown_signature_type` | A non-PGP signature was found in the commit. |
24990    /// | `no_user` | No user was associated with the `committer` email address in the commit. |
24991    /// | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on her/his account. |
24992    /// | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |
24993    /// | `unknown_key` | The key that made the signature has not been registered with any user's account. |
24994    /// | `malformed_signature` | There was an error parsing the signature. |
24995    /// | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |
24996    /// | `valid` | None of the above errors applied, so the signature is considered to be verified. |
24997    /// 
24998    /// [API method documentation](https://docs.github.com/rest/reference/git#get-a-commit)
24999    pub fn git_get_commit(
25000        &self,
25001        owner: &str,
25002        repo: &str,
25003        commit_sha: &str,
25004    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25005        let mut theScheme = AuthScheme::from(&self.config.authentication);
25006
25007        while let Some(auth_step) = theScheme.step()? {
25008            match auth_step {
25009                ::authentic::AuthenticationStep::Request(auth_request) => {
25010                    theScheme.respond(self.client.execute(auth_request));
25011                }
25012                ::authentic::AuthenticationStep::WaitFor(duration) => {
25013                    (self.sleep)(duration);
25014                }
25015            }
25016        }
25017        let theBuilder = crate::v1_1_4::request::git_get_commit::reqwest_blocking_builder(
25018            self.config.base_url.as_ref(),
25019            owner,
25020            repo,
25021            commit_sha,
25022            self.config.user_agent.as_ref(),
25023            self.config.accept.as_deref(),
25024        )?
25025        .with_authentication(&theScheme)?;
25026
25027        let theRequest =
25028            crate::v1_1_4::request::git_get_commit::reqwest_blocking_request(theBuilder)?;
25029
25030        ::log::debug!("HTTP request: {:?}", &theRequest);
25031
25032        let theResponse = self.client.execute(theRequest)?;
25033
25034        ::log::debug!("HTTP response: {:?}", &theResponse);
25035
25036        Ok(theResponse)
25037    }
25038
25039    /// List matching references
25040    /// 
25041    /// Returns an array of references from your Git database that match the supplied name. The `:ref` in the URL must be formatted as `heads/<branch name>` for branches and `tags/<tag name>` for tags. If the `:ref` doesn't exist in the repository, but existing refs start with `:ref`, they will be returned as an array.
25042    /// 
25043    /// When you use this endpoint without providing a `:ref`, it will return an array of all the references from your Git database, including notes and stashes if they exist on the server. Anything in the namespace is returned, not just `heads` and `tags`.
25044    /// 
25045    /// **Note:** You need to explicitly [request a pull request](https://docs.github.com/rest/reference/pulls#get-a-pull-request) to trigger a test merge commit, which checks the mergeability of pull requests. For more information, see "[Checking mergeability of pull requests](https://docs.github.com/rest/guides/getting-started-with-the-git-database-api#checking-mergeability-of-pull-requests)".
25046    /// 
25047    /// If you request matching references for a branch named `feature` but the branch `feature` doesn't exist, the response can still include other matching head refs that start with the word `feature`, such as `featureA` and `featureB`.
25048    /// 
25049    /// [API method documentation](https://docs.github.com/rest/reference/git#list-matching-references)
25050    pub fn git_list_matching_refs(
25051        &self,
25052        owner: &str,
25053        repo: &str,
25054        r#ref: &str,
25055        per_page: ::std::option::Option<i64>,
25056        page: ::std::option::Option<i64>,
25057    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25058        let mut theScheme = AuthScheme::from(&self.config.authentication);
25059
25060        while let Some(auth_step) = theScheme.step()? {
25061            match auth_step {
25062                ::authentic::AuthenticationStep::Request(auth_request) => {
25063                    theScheme.respond(self.client.execute(auth_request));
25064                }
25065                ::authentic::AuthenticationStep::WaitFor(duration) => {
25066                    (self.sleep)(duration);
25067                }
25068            }
25069        }
25070        let theBuilder = crate::v1_1_4::request::git_list_matching_refs::reqwest_blocking_builder(
25071            self.config.base_url.as_ref(),
25072            owner,
25073            repo,
25074            r#ref,
25075            per_page,
25076            page,
25077            self.config.user_agent.as_ref(),
25078            self.config.accept.as_deref(),
25079        )?
25080        .with_authentication(&theScheme)?;
25081
25082        let theRequest =
25083            crate::v1_1_4::request::git_list_matching_refs::reqwest_blocking_request(theBuilder)?;
25084
25085        ::log::debug!("HTTP request: {:?}", &theRequest);
25086
25087        let theResponse = self.client.execute(theRequest)?;
25088
25089        ::log::debug!("HTTP response: {:?}", &theResponse);
25090
25091        Ok(theResponse)
25092    }
25093
25094    /// Get a reference
25095    /// 
25096    /// Returns a single reference from your Git database. The `:ref` in the URL must be formatted as `heads/<branch name>` for branches and `tags/<tag name>` for tags. If the `:ref` doesn't match an existing ref, a `404` is returned.
25097    /// 
25098    /// **Note:** You need to explicitly [request a pull request](https://docs.github.com/rest/reference/pulls#get-a-pull-request) to trigger a test merge commit, which checks the mergeability of pull requests. For more information, see "[Checking mergeability of pull requests](https://docs.github.com/rest/guides/getting-started-with-the-git-database-api#checking-mergeability-of-pull-requests)".
25099    /// 
25100    /// [API method documentation](https://docs.github.com/rest/reference/git#get-a-reference)
25101    pub fn git_get_ref(
25102        &self,
25103        owner: &str,
25104        repo: &str,
25105        r#ref: &str,
25106    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25107        let mut theScheme = AuthScheme::from(&self.config.authentication);
25108
25109        while let Some(auth_step) = theScheme.step()? {
25110            match auth_step {
25111                ::authentic::AuthenticationStep::Request(auth_request) => {
25112                    theScheme.respond(self.client.execute(auth_request));
25113                }
25114                ::authentic::AuthenticationStep::WaitFor(duration) => {
25115                    (self.sleep)(duration);
25116                }
25117            }
25118        }
25119        let theBuilder = crate::v1_1_4::request::git_get_ref::reqwest_blocking_builder(
25120            self.config.base_url.as_ref(),
25121            owner,
25122            repo,
25123            r#ref,
25124            self.config.user_agent.as_ref(),
25125            self.config.accept.as_deref(),
25126        )?
25127        .with_authentication(&theScheme)?;
25128
25129        let theRequest =
25130            crate::v1_1_4::request::git_get_ref::reqwest_blocking_request(theBuilder)?;
25131
25132        ::log::debug!("HTTP request: {:?}", &theRequest);
25133
25134        let theResponse = self.client.execute(theRequest)?;
25135
25136        ::log::debug!("HTTP response: {:?}", &theResponse);
25137
25138        Ok(theResponse)
25139    }
25140
25141    /// Create a reference
25142    /// 
25143    /// Creates a reference for your repository. You are unable to create new references for empty repositories, even if the commit SHA-1 hash used exists. Empty repositories are repositories without branches.
25144    /// 
25145    /// [API method documentation](https://docs.github.com/rest/reference/git#create-a-reference)
25146    ///
25147    /// # Content
25148    ///
25149    /// - [`&v1_1_4::request::git_create_ref::body::Json`](crate::v1_1_4::request::git_create_ref::body::Json)
25150    pub fn git_create_ref<Content>(
25151        &self,
25152        owner: &str,
25153        repo: &str,
25154        theContent: Content,
25155    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
25156    where
25157        Content: Copy + TryInto<crate::v1_1_4::request::git_create_ref::Content<::reqwest::blocking::Body>>,
25158        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::git_create_ref::Content<::reqwest::blocking::Body>>>::Error>
25159    {
25160        let mut theScheme = AuthScheme::from(&self.config.authentication);
25161
25162        while let Some(auth_step) = theScheme.step()? {
25163            match auth_step {
25164                ::authentic::AuthenticationStep::Request(auth_request) => {
25165                    theScheme.respond(self.client.execute(auth_request));
25166                }
25167                ::authentic::AuthenticationStep::WaitFor(duration) => {
25168                    (self.sleep)(duration);
25169                }
25170            }
25171        }
25172        let theBuilder = crate::v1_1_4::request::git_create_ref::reqwest_blocking_builder(
25173            self.config.base_url.as_ref(),
25174            owner,
25175            repo,
25176            self.config.user_agent.as_ref(),
25177            self.config.accept.as_deref(),
25178        )?
25179        .with_authentication(&theScheme)?;
25180
25181        let theRequest = crate::v1_1_4::request::git_create_ref::reqwest_blocking_request(
25182            theBuilder,
25183            theContent.try_into()?,
25184        )?;
25185
25186        ::log::debug!("HTTP request: {:?}", &theRequest);
25187
25188        let theResponse = self.client.execute(theRequest)?;
25189
25190        ::log::debug!("HTTP response: {:?}", &theResponse);
25191
25192        Ok(theResponse)
25193    }
25194
25195    /// Delete a reference
25196    /// 
25197    /// [API method documentation](https://docs.github.com/rest/reference/git#delete-a-reference)
25198    pub fn git_delete_ref(
25199        &self,
25200        owner: &str,
25201        repo: &str,
25202        r#ref: &str,
25203    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25204        let mut theScheme = AuthScheme::from(&self.config.authentication);
25205
25206        while let Some(auth_step) = theScheme.step()? {
25207            match auth_step {
25208                ::authentic::AuthenticationStep::Request(auth_request) => {
25209                    theScheme.respond(self.client.execute(auth_request));
25210                }
25211                ::authentic::AuthenticationStep::WaitFor(duration) => {
25212                    (self.sleep)(duration);
25213                }
25214            }
25215        }
25216        let theBuilder = crate::v1_1_4::request::git_delete_ref::reqwest_blocking_builder(
25217            self.config.base_url.as_ref(),
25218            owner,
25219            repo,
25220            r#ref,
25221            self.config.user_agent.as_ref(),
25222            self.config.accept.as_deref(),
25223        )?
25224        .with_authentication(&theScheme)?;
25225
25226        let theRequest =
25227            crate::v1_1_4::request::git_delete_ref::reqwest_blocking_request(theBuilder)?;
25228
25229        ::log::debug!("HTTP request: {:?}", &theRequest);
25230
25231        let theResponse = self.client.execute(theRequest)?;
25232
25233        ::log::debug!("HTTP response: {:?}", &theResponse);
25234
25235        Ok(theResponse)
25236    }
25237
25238    /// Update a reference
25239    /// 
25240    /// [API method documentation](https://docs.github.com/rest/reference/git#update-a-reference)
25241    ///
25242    /// # Content
25243    ///
25244    /// - [`&v1_1_4::request::git_update_ref::body::Json`](crate::v1_1_4::request::git_update_ref::body::Json)
25245    pub fn git_update_ref<Content>(
25246        &self,
25247        owner: &str,
25248        repo: &str,
25249        r#ref: &str,
25250        theContent: Content,
25251    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
25252    where
25253        Content: Copy + TryInto<crate::v1_1_4::request::git_update_ref::Content<::reqwest::blocking::Body>>,
25254        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::git_update_ref::Content<::reqwest::blocking::Body>>>::Error>
25255    {
25256        let mut theScheme = AuthScheme::from(&self.config.authentication);
25257
25258        while let Some(auth_step) = theScheme.step()? {
25259            match auth_step {
25260                ::authentic::AuthenticationStep::Request(auth_request) => {
25261                    theScheme.respond(self.client.execute(auth_request));
25262                }
25263                ::authentic::AuthenticationStep::WaitFor(duration) => {
25264                    (self.sleep)(duration);
25265                }
25266            }
25267        }
25268        let theBuilder = crate::v1_1_4::request::git_update_ref::reqwest_blocking_builder(
25269            self.config.base_url.as_ref(),
25270            owner,
25271            repo,
25272            r#ref,
25273            self.config.user_agent.as_ref(),
25274            self.config.accept.as_deref(),
25275        )?
25276        .with_authentication(&theScheme)?;
25277
25278        let theRequest = crate::v1_1_4::request::git_update_ref::reqwest_blocking_request(
25279            theBuilder,
25280            theContent.try_into()?,
25281        )?;
25282
25283        ::log::debug!("HTTP request: {:?}", &theRequest);
25284
25285        let theResponse = self.client.execute(theRequest)?;
25286
25287        ::log::debug!("HTTP response: {:?}", &theResponse);
25288
25289        Ok(theResponse)
25290    }
25291
25292    /// Create a tag object
25293    /// 
25294    /// Note that creating a tag object does not create the reference that makes a tag in Git. If you want to create an annotated tag in Git, you have to do this call to create the tag object, and then [create](https://docs.github.com/rest/reference/git#create-a-reference) the `refs/tags/[tag]` reference. If you want to create a lightweight tag, you only have to [create](https://docs.github.com/rest/reference/git#create-a-reference) the tag reference - this call would be unnecessary.
25295    /// 
25296    /// **Signature verification object**
25297    /// 
25298    /// The response will include a `verification` object that describes the result of verifying the commit's signature. The following fields are included in the `verification` object:
25299    /// 
25300    /// | Name | Type | Description |
25301    /// | ---- | ---- | ----------- |
25302    /// | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |
25303    /// | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in table below. |
25304    /// | `signature` | `string` | The signature that was extracted from the commit. |
25305    /// | `payload` | `string` | The value that was signed. |
25306    /// 
25307    /// These are the possible values for `reason` in the `verification` object:
25308    /// 
25309    /// | Value | Description |
25310    /// | ----- | ----------- |
25311    /// | `expired_key` | The key that made the signature is expired. |
25312    /// | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |
25313    /// | `gpgverify_error` | There was an error communicating with the signature verification service. |
25314    /// | `gpgverify_unavailable` | The signature verification service is currently unavailable. |
25315    /// | `unsigned` | The object does not include a signature. |
25316    /// | `unknown_signature_type` | A non-PGP signature was found in the commit. |
25317    /// | `no_user` | No user was associated with the `committer` email address in the commit. |
25318    /// | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on her/his account. |
25319    /// | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |
25320    /// | `unknown_key` | The key that made the signature has not been registered with any user's account. |
25321    /// | `malformed_signature` | There was an error parsing the signature. |
25322    /// | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |
25323    /// | `valid` | None of the above errors applied, so the signature is considered to be verified. |
25324    /// 
25325    /// [API method documentation](https://docs.github.com/rest/reference/git#create-a-tag-object)
25326    ///
25327    /// # Content
25328    ///
25329    /// - [`&v1_1_4::request::git_create_tag::body::Json`](crate::v1_1_4::request::git_create_tag::body::Json)
25330    pub fn git_create_tag<Content>(
25331        &self,
25332        owner: &str,
25333        repo: &str,
25334        theContent: Content,
25335    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
25336    where
25337        Content: Copy + TryInto<crate::v1_1_4::request::git_create_tag::Content<::reqwest::blocking::Body>>,
25338        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::git_create_tag::Content<::reqwest::blocking::Body>>>::Error>
25339    {
25340        let mut theScheme = AuthScheme::from(&self.config.authentication);
25341
25342        while let Some(auth_step) = theScheme.step()? {
25343            match auth_step {
25344                ::authentic::AuthenticationStep::Request(auth_request) => {
25345                    theScheme.respond(self.client.execute(auth_request));
25346                }
25347                ::authentic::AuthenticationStep::WaitFor(duration) => {
25348                    (self.sleep)(duration);
25349                }
25350            }
25351        }
25352        let theBuilder = crate::v1_1_4::request::git_create_tag::reqwest_blocking_builder(
25353            self.config.base_url.as_ref(),
25354            owner,
25355            repo,
25356            self.config.user_agent.as_ref(),
25357            self.config.accept.as_deref(),
25358        )?
25359        .with_authentication(&theScheme)?;
25360
25361        let theRequest = crate::v1_1_4::request::git_create_tag::reqwest_blocking_request(
25362            theBuilder,
25363            theContent.try_into()?,
25364        )?;
25365
25366        ::log::debug!("HTTP request: {:?}", &theRequest);
25367
25368        let theResponse = self.client.execute(theRequest)?;
25369
25370        ::log::debug!("HTTP response: {:?}", &theResponse);
25371
25372        Ok(theResponse)
25373    }
25374
25375    /// Get a tag
25376    /// 
25377    /// **Signature verification object**
25378    /// 
25379    /// The response will include a `verification` object that describes the result of verifying the commit's signature. The following fields are included in the `verification` object:
25380    /// 
25381    /// | Name | Type | Description |
25382    /// | ---- | ---- | ----------- |
25383    /// | `verified` | `boolean` | Indicates whether GitHub considers the signature in this commit to be verified. |
25384    /// | `reason` | `string` | The reason for verified value. Possible values and their meanings are enumerated in table below. |
25385    /// | `signature` | `string` | The signature that was extracted from the commit. |
25386    /// | `payload` | `string` | The value that was signed. |
25387    /// 
25388    /// These are the possible values for `reason` in the `verification` object:
25389    /// 
25390    /// | Value | Description |
25391    /// | ----- | ----------- |
25392    /// | `expired_key` | The key that made the signature is expired. |
25393    /// | `not_signing_key` | The "signing" flag is not among the usage flags in the GPG key that made the signature. |
25394    /// | `gpgverify_error` | There was an error communicating with the signature verification service. |
25395    /// | `gpgverify_unavailable` | The signature verification service is currently unavailable. |
25396    /// | `unsigned` | The object does not include a signature. |
25397    /// | `unknown_signature_type` | A non-PGP signature was found in the commit. |
25398    /// | `no_user` | No user was associated with the `committer` email address in the commit. |
25399    /// | `unverified_email` | The `committer` email address in the commit was associated with a user, but the email address is not verified on her/his account. |
25400    /// | `bad_email` | The `committer` email address in the commit is not included in the identities of the PGP key that made the signature. |
25401    /// | `unknown_key` | The key that made the signature has not been registered with any user's account. |
25402    /// | `malformed_signature` | There was an error parsing the signature. |
25403    /// | `invalid` | The signature could not be cryptographically verified using the key whose key-id was found in the signature. |
25404    /// | `valid` | None of the above errors applied, so the signature is considered to be verified. |
25405    /// 
25406    /// [API method documentation](https://docs.github.com/rest/reference/git#get-a-tag)
25407    pub fn git_get_tag(
25408        &self,
25409        owner: &str,
25410        repo: &str,
25411        tag_sha: &str,
25412    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25413        let mut theScheme = AuthScheme::from(&self.config.authentication);
25414
25415        while let Some(auth_step) = theScheme.step()? {
25416            match auth_step {
25417                ::authentic::AuthenticationStep::Request(auth_request) => {
25418                    theScheme.respond(self.client.execute(auth_request));
25419                }
25420                ::authentic::AuthenticationStep::WaitFor(duration) => {
25421                    (self.sleep)(duration);
25422                }
25423            }
25424        }
25425        let theBuilder = crate::v1_1_4::request::git_get_tag::reqwest_blocking_builder(
25426            self.config.base_url.as_ref(),
25427            owner,
25428            repo,
25429            tag_sha,
25430            self.config.user_agent.as_ref(),
25431            self.config.accept.as_deref(),
25432        )?
25433        .with_authentication(&theScheme)?;
25434
25435        let theRequest =
25436            crate::v1_1_4::request::git_get_tag::reqwest_blocking_request(theBuilder)?;
25437
25438        ::log::debug!("HTTP request: {:?}", &theRequest);
25439
25440        let theResponse = self.client.execute(theRequest)?;
25441
25442        ::log::debug!("HTTP response: {:?}", &theResponse);
25443
25444        Ok(theResponse)
25445    }
25446
25447    /// Create a tree
25448    /// 
25449    /// The tree creation API accepts nested entries. If you specify both a tree and a nested path modifying that tree, this endpoint will overwrite the contents of the tree with the new path contents, and create a new tree structure.
25450    /// 
25451    /// If you use this endpoint to add, delete, or modify the file contents in a tree, you will need to commit the tree and then update a branch to point to the commit. For more information see "[Create a commit](https://docs.github.com/rest/reference/git#create-a-commit)" and "[Update a reference](https://docs.github.com/rest/reference/git#update-a-reference)."
25452    /// 
25453    /// [API method documentation](https://docs.github.com/rest/reference/git#create-a-tree)
25454    ///
25455    /// # Content
25456    ///
25457    /// - [`&v1_1_4::request::git_create_tree::body::Json`](crate::v1_1_4::request::git_create_tree::body::Json)
25458    pub fn git_create_tree<Content>(
25459        &self,
25460        owner: &str,
25461        repo: &str,
25462        theContent: Content,
25463    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
25464    where
25465        Content: Copy + TryInto<crate::v1_1_4::request::git_create_tree::Content<::reqwest::blocking::Body>>,
25466        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::git_create_tree::Content<::reqwest::blocking::Body>>>::Error>
25467    {
25468        let mut theScheme = AuthScheme::from(&self.config.authentication);
25469
25470        while let Some(auth_step) = theScheme.step()? {
25471            match auth_step {
25472                ::authentic::AuthenticationStep::Request(auth_request) => {
25473                    theScheme.respond(self.client.execute(auth_request));
25474                }
25475                ::authentic::AuthenticationStep::WaitFor(duration) => {
25476                    (self.sleep)(duration);
25477                }
25478            }
25479        }
25480        let theBuilder = crate::v1_1_4::request::git_create_tree::reqwest_blocking_builder(
25481            self.config.base_url.as_ref(),
25482            owner,
25483            repo,
25484            self.config.user_agent.as_ref(),
25485            self.config.accept.as_deref(),
25486        )?
25487        .with_authentication(&theScheme)?;
25488
25489        let theRequest = crate::v1_1_4::request::git_create_tree::reqwest_blocking_request(
25490            theBuilder,
25491            theContent.try_into()?,
25492        )?;
25493
25494        ::log::debug!("HTTP request: {:?}", &theRequest);
25495
25496        let theResponse = self.client.execute(theRequest)?;
25497
25498        ::log::debug!("HTTP response: {:?}", &theResponse);
25499
25500        Ok(theResponse)
25501    }
25502
25503    /// Get a tree
25504    /// 
25505    /// Returns a single tree using the SHA1 value for that tree.
25506    /// 
25507    /// If `truncated` is `true` in the response then the number of items in the `tree` array exceeded our maximum limit. If you need to fetch more items, use the non-recursive method of fetching trees, and fetch one sub-tree at a time.
25508    /// 
25509    /// [API method documentation](https://docs.github.com/rest/reference/git#get-a-tree)
25510    pub fn git_get_tree(
25511        &self,
25512        owner: &str,
25513        repo: &str,
25514        tree_sha: &str,
25515        recursive: ::std::option::Option<&str>,
25516    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25517        let mut theScheme = AuthScheme::from(&self.config.authentication);
25518
25519        while let Some(auth_step) = theScheme.step()? {
25520            match auth_step {
25521                ::authentic::AuthenticationStep::Request(auth_request) => {
25522                    theScheme.respond(self.client.execute(auth_request));
25523                }
25524                ::authentic::AuthenticationStep::WaitFor(duration) => {
25525                    (self.sleep)(duration);
25526                }
25527            }
25528        }
25529        let theBuilder = crate::v1_1_4::request::git_get_tree::reqwest_blocking_builder(
25530            self.config.base_url.as_ref(),
25531            owner,
25532            repo,
25533            tree_sha,
25534            recursive,
25535            self.config.user_agent.as_ref(),
25536            self.config.accept.as_deref(),
25537        )?
25538        .with_authentication(&theScheme)?;
25539
25540        let theRequest =
25541            crate::v1_1_4::request::git_get_tree::reqwest_blocking_request(theBuilder)?;
25542
25543        ::log::debug!("HTTP request: {:?}", &theRequest);
25544
25545        let theResponse = self.client.execute(theRequest)?;
25546
25547        ::log::debug!("HTTP response: {:?}", &theResponse);
25548
25549        Ok(theResponse)
25550    }
25551
25552    /// List repository webhooks
25553    /// 
25554    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repository-webhooks)
25555    pub fn repos_list_webhooks(
25556        &self,
25557        owner: &str,
25558        repo: &str,
25559        per_page: ::std::option::Option<i64>,
25560        page: ::std::option::Option<i64>,
25561    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25562        let mut theScheme = AuthScheme::from(&self.config.authentication);
25563
25564        while let Some(auth_step) = theScheme.step()? {
25565            match auth_step {
25566                ::authentic::AuthenticationStep::Request(auth_request) => {
25567                    theScheme.respond(self.client.execute(auth_request));
25568                }
25569                ::authentic::AuthenticationStep::WaitFor(duration) => {
25570                    (self.sleep)(duration);
25571                }
25572            }
25573        }
25574        let theBuilder = crate::v1_1_4::request::repos_list_webhooks::reqwest_blocking_builder(
25575            self.config.base_url.as_ref(),
25576            owner,
25577            repo,
25578            per_page,
25579            page,
25580            self.config.user_agent.as_ref(),
25581            self.config.accept.as_deref(),
25582        )?
25583        .with_authentication(&theScheme)?;
25584
25585        let theRequest =
25586            crate::v1_1_4::request::repos_list_webhooks::reqwest_blocking_request(theBuilder)?;
25587
25588        ::log::debug!("HTTP request: {:?}", &theRequest);
25589
25590        let theResponse = self.client.execute(theRequest)?;
25591
25592        ::log::debug!("HTTP response: {:?}", &theResponse);
25593
25594        Ok(theResponse)
25595    }
25596
25597    /// Create a repository webhook
25598    /// 
25599    /// Repositories can have multiple webhooks installed. Each webhook should have a unique `config`. Multiple webhooks can
25600    /// share the same `config` as long as those webhooks do not have any `events` that overlap.
25601    /// 
25602    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-repository-webhook)
25603    ///
25604    /// # Content
25605    ///
25606    /// - [`&::std::option::Option<crate::v1_1_4::request::repos_create_webhook::body::Json>`](crate::v1_1_4::request::repos_create_webhook::body::Json)
25607    pub fn repos_create_webhook<Content>(
25608        &self,
25609        owner: &str,
25610        repo: &str,
25611        theContent: Content,
25612    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
25613    where
25614        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_webhook::Content<::reqwest::blocking::Body>>,
25615        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_webhook::Content<::reqwest::blocking::Body>>>::Error>
25616    {
25617        let mut theScheme = AuthScheme::from(&self.config.authentication);
25618
25619        while let Some(auth_step) = theScheme.step()? {
25620            match auth_step {
25621                ::authentic::AuthenticationStep::Request(auth_request) => {
25622                    theScheme.respond(self.client.execute(auth_request));
25623                }
25624                ::authentic::AuthenticationStep::WaitFor(duration) => {
25625                    (self.sleep)(duration);
25626                }
25627            }
25628        }
25629        let theBuilder = crate::v1_1_4::request::repos_create_webhook::reqwest_blocking_builder(
25630            self.config.base_url.as_ref(),
25631            owner,
25632            repo,
25633            self.config.user_agent.as_ref(),
25634            self.config.accept.as_deref(),
25635        )?
25636        .with_authentication(&theScheme)?;
25637
25638        let theRequest = crate::v1_1_4::request::repos_create_webhook::reqwest_blocking_request(
25639            theBuilder,
25640            theContent.try_into()?,
25641        )?;
25642
25643        ::log::debug!("HTTP request: {:?}", &theRequest);
25644
25645        let theResponse = self.client.execute(theRequest)?;
25646
25647        ::log::debug!("HTTP response: {:?}", &theResponse);
25648
25649        Ok(theResponse)
25650    }
25651
25652    /// Get a repository webhook
25653    /// 
25654    /// Returns a webhook configured in a repository. To get only the webhook `config` properties, see "[Get a webhook configuration for a repository](/rest/reference/repos#get-a-webhook-configuration-for-a-repository)."
25655    /// 
25656    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-repository-webhook)
25657    pub fn repos_get_webhook(
25658        &self,
25659        owner: &str,
25660        repo: &str,
25661        hook_id: i64,
25662    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25663        let mut theScheme = AuthScheme::from(&self.config.authentication);
25664
25665        while let Some(auth_step) = theScheme.step()? {
25666            match auth_step {
25667                ::authentic::AuthenticationStep::Request(auth_request) => {
25668                    theScheme.respond(self.client.execute(auth_request));
25669                }
25670                ::authentic::AuthenticationStep::WaitFor(duration) => {
25671                    (self.sleep)(duration);
25672                }
25673            }
25674        }
25675        let theBuilder = crate::v1_1_4::request::repos_get_webhook::reqwest_blocking_builder(
25676            self.config.base_url.as_ref(),
25677            owner,
25678            repo,
25679            hook_id,
25680            self.config.user_agent.as_ref(),
25681            self.config.accept.as_deref(),
25682        )?
25683        .with_authentication(&theScheme)?;
25684
25685        let theRequest =
25686            crate::v1_1_4::request::repos_get_webhook::reqwest_blocking_request(theBuilder)?;
25687
25688        ::log::debug!("HTTP request: {:?}", &theRequest);
25689
25690        let theResponse = self.client.execute(theRequest)?;
25691
25692        ::log::debug!("HTTP response: {:?}", &theResponse);
25693
25694        Ok(theResponse)
25695    }
25696
25697    /// Delete a repository webhook
25698    /// 
25699    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-repository-webhook)
25700    pub fn repos_delete_webhook(
25701        &self,
25702        owner: &str,
25703        repo: &str,
25704        hook_id: i64,
25705    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25706        let mut theScheme = AuthScheme::from(&self.config.authentication);
25707
25708        while let Some(auth_step) = theScheme.step()? {
25709            match auth_step {
25710                ::authentic::AuthenticationStep::Request(auth_request) => {
25711                    theScheme.respond(self.client.execute(auth_request));
25712                }
25713                ::authentic::AuthenticationStep::WaitFor(duration) => {
25714                    (self.sleep)(duration);
25715                }
25716            }
25717        }
25718        let theBuilder = crate::v1_1_4::request::repos_delete_webhook::reqwest_blocking_builder(
25719            self.config.base_url.as_ref(),
25720            owner,
25721            repo,
25722            hook_id,
25723            self.config.user_agent.as_ref(),
25724            self.config.accept.as_deref(),
25725        )?
25726        .with_authentication(&theScheme)?;
25727
25728        let theRequest =
25729            crate::v1_1_4::request::repos_delete_webhook::reqwest_blocking_request(theBuilder)?;
25730
25731        ::log::debug!("HTTP request: {:?}", &theRequest);
25732
25733        let theResponse = self.client.execute(theRequest)?;
25734
25735        ::log::debug!("HTTP response: {:?}", &theResponse);
25736
25737        Ok(theResponse)
25738    }
25739
25740    /// Update a repository webhook
25741    /// 
25742    /// Updates a webhook configured in a repository. If you previously had a `secret` set, you must provide the same `secret` or set a new `secret` or the secret will be removed. If you are only updating individual webhook `config` properties, use "[Update a webhook configuration for a repository](/rest/reference/repos#update-a-webhook-configuration-for-a-repository)."
25743    /// 
25744    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-a-repository-webhook)
25745    ///
25746    /// # Content
25747    ///
25748    /// - [`&v1_1_4::request::repos_update_webhook::body::Json`](crate::v1_1_4::request::repos_update_webhook::body::Json)
25749    pub fn repos_update_webhook<Content>(
25750        &self,
25751        owner: &str,
25752        repo: &str,
25753        hook_id: i64,
25754        theContent: Content,
25755    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
25756    where
25757        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_webhook::Content<::reqwest::blocking::Body>>,
25758        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_webhook::Content<::reqwest::blocking::Body>>>::Error>
25759    {
25760        let mut theScheme = AuthScheme::from(&self.config.authentication);
25761
25762        while let Some(auth_step) = theScheme.step()? {
25763            match auth_step {
25764                ::authentic::AuthenticationStep::Request(auth_request) => {
25765                    theScheme.respond(self.client.execute(auth_request));
25766                }
25767                ::authentic::AuthenticationStep::WaitFor(duration) => {
25768                    (self.sleep)(duration);
25769                }
25770            }
25771        }
25772        let theBuilder = crate::v1_1_4::request::repos_update_webhook::reqwest_blocking_builder(
25773            self.config.base_url.as_ref(),
25774            owner,
25775            repo,
25776            hook_id,
25777            self.config.user_agent.as_ref(),
25778            self.config.accept.as_deref(),
25779        )?
25780        .with_authentication(&theScheme)?;
25781
25782        let theRequest = crate::v1_1_4::request::repos_update_webhook::reqwest_blocking_request(
25783            theBuilder,
25784            theContent.try_into()?,
25785        )?;
25786
25787        ::log::debug!("HTTP request: {:?}", &theRequest);
25788
25789        let theResponse = self.client.execute(theRequest)?;
25790
25791        ::log::debug!("HTTP response: {:?}", &theResponse);
25792
25793        Ok(theResponse)
25794    }
25795
25796    /// Get a webhook configuration for a repository
25797    /// 
25798    /// Returns the webhook configuration for a repository. To get more information about the webhook, including the `active` state and `events`, use "[Get a repository webhook](/rest/reference/orgs#get-a-repository-webhook)."
25799    /// 
25800    /// Access tokens must have the `read:repo_hook` or `repo` scope, and GitHub Apps must have the `repository_hooks:read` permission.
25801    /// 
25802    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-webhook-configuration-for-a-repository)
25803    pub fn repos_get_webhook_config_for_repo(
25804        &self,
25805        owner: &str,
25806        repo: &str,
25807        hook_id: i64,
25808    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25809        let mut theScheme = AuthScheme::from(&self.config.authentication);
25810
25811        while let Some(auth_step) = theScheme.step()? {
25812            match auth_step {
25813                ::authentic::AuthenticationStep::Request(auth_request) => {
25814                    theScheme.respond(self.client.execute(auth_request));
25815                }
25816                ::authentic::AuthenticationStep::WaitFor(duration) => {
25817                    (self.sleep)(duration);
25818                }
25819            }
25820        }
25821        let theBuilder = crate::v1_1_4::request::repos_get_webhook_config_for_repo::reqwest_blocking_builder(
25822            self.config.base_url.as_ref(),
25823            owner,
25824            repo,
25825            hook_id,
25826            self.config.user_agent.as_ref(),
25827            self.config.accept.as_deref(),
25828        )?
25829        .with_authentication(&theScheme)?;
25830
25831        let theRequest =
25832            crate::v1_1_4::request::repos_get_webhook_config_for_repo::reqwest_blocking_request(theBuilder)?;
25833
25834        ::log::debug!("HTTP request: {:?}", &theRequest);
25835
25836        let theResponse = self.client.execute(theRequest)?;
25837
25838        ::log::debug!("HTTP response: {:?}", &theResponse);
25839
25840        Ok(theResponse)
25841    }
25842
25843    /// Update a webhook configuration for a repository
25844    /// 
25845    /// Updates the webhook configuration for a repository. To update more information about the webhook, including the `active` state and `events`, use "[Update a repository webhook](/rest/reference/orgs#update-a-repository-webhook)."
25846    /// 
25847    /// Access tokens must have the `write:repo_hook` or `repo` scope, and GitHub Apps must have the `repository_hooks:write` permission.
25848    /// 
25849    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-a-webhook-configuration-for-a-repository)
25850    ///
25851    /// # Content
25852    ///
25853    /// - [`&v1_1_4::request::repos_update_webhook_config_for_repo::body::Json`](crate::v1_1_4::request::repos_update_webhook_config_for_repo::body::Json)
25854    pub fn repos_update_webhook_config_for_repo<Content>(
25855        &self,
25856        owner: &str,
25857        repo: &str,
25858        hook_id: i64,
25859        theContent: Content,
25860    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
25861    where
25862        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_webhook_config_for_repo::Content<::reqwest::blocking::Body>>,
25863        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_webhook_config_for_repo::Content<::reqwest::blocking::Body>>>::Error>
25864    {
25865        let mut theScheme = AuthScheme::from(&self.config.authentication);
25866
25867        while let Some(auth_step) = theScheme.step()? {
25868            match auth_step {
25869                ::authentic::AuthenticationStep::Request(auth_request) => {
25870                    theScheme.respond(self.client.execute(auth_request));
25871                }
25872                ::authentic::AuthenticationStep::WaitFor(duration) => {
25873                    (self.sleep)(duration);
25874                }
25875            }
25876        }
25877        let theBuilder = crate::v1_1_4::request::repos_update_webhook_config_for_repo::reqwest_blocking_builder(
25878            self.config.base_url.as_ref(),
25879            owner,
25880            repo,
25881            hook_id,
25882            self.config.user_agent.as_ref(),
25883            self.config.accept.as_deref(),
25884        )?
25885        .with_authentication(&theScheme)?;
25886
25887        let theRequest = crate::v1_1_4::request::repos_update_webhook_config_for_repo::reqwest_blocking_request(
25888            theBuilder,
25889            theContent.try_into()?,
25890        )?;
25891
25892        ::log::debug!("HTTP request: {:?}", &theRequest);
25893
25894        let theResponse = self.client.execute(theRequest)?;
25895
25896        ::log::debug!("HTTP response: {:?}", &theResponse);
25897
25898        Ok(theResponse)
25899    }
25900
25901    /// List deliveries for a repository webhook
25902    /// 
25903    /// Returns a list of webhook deliveries for a webhook configured in a repository.
25904    /// 
25905    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-deliveries-for-a-repository-webhook)
25906    pub fn repos_list_webhook_deliveries(
25907        &self,
25908        owner: &str,
25909        repo: &str,
25910        hook_id: i64,
25911        per_page: ::std::option::Option<i64>,
25912        cursor: ::std::option::Option<&str>,
25913    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25914        let mut theScheme = AuthScheme::from(&self.config.authentication);
25915
25916        while let Some(auth_step) = theScheme.step()? {
25917            match auth_step {
25918                ::authentic::AuthenticationStep::Request(auth_request) => {
25919                    theScheme.respond(self.client.execute(auth_request));
25920                }
25921                ::authentic::AuthenticationStep::WaitFor(duration) => {
25922                    (self.sleep)(duration);
25923                }
25924            }
25925        }
25926        let theBuilder = crate::v1_1_4::request::repos_list_webhook_deliveries::reqwest_blocking_builder(
25927            self.config.base_url.as_ref(),
25928            owner,
25929            repo,
25930            hook_id,
25931            per_page,
25932            cursor,
25933            self.config.user_agent.as_ref(),
25934            self.config.accept.as_deref(),
25935        )?
25936        .with_authentication(&theScheme)?;
25937
25938        let theRequest =
25939            crate::v1_1_4::request::repos_list_webhook_deliveries::reqwest_blocking_request(theBuilder)?;
25940
25941        ::log::debug!("HTTP request: {:?}", &theRequest);
25942
25943        let theResponse = self.client.execute(theRequest)?;
25944
25945        ::log::debug!("HTTP response: {:?}", &theResponse);
25946
25947        Ok(theResponse)
25948    }
25949
25950    /// Get a delivery for a repository webhook
25951    /// 
25952    /// Returns a delivery for a webhook configured in a repository.
25953    /// 
25954    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-delivery-for-a-repository-webhook)
25955    pub fn repos_get_webhook_delivery(
25956        &self,
25957        owner: &str,
25958        repo: &str,
25959        hook_id: i64,
25960        delivery_id: i64,
25961    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
25962        let mut theScheme = AuthScheme::from(&self.config.authentication);
25963
25964        while let Some(auth_step) = theScheme.step()? {
25965            match auth_step {
25966                ::authentic::AuthenticationStep::Request(auth_request) => {
25967                    theScheme.respond(self.client.execute(auth_request));
25968                }
25969                ::authentic::AuthenticationStep::WaitFor(duration) => {
25970                    (self.sleep)(duration);
25971                }
25972            }
25973        }
25974        let theBuilder = crate::v1_1_4::request::repos_get_webhook_delivery::reqwest_blocking_builder(
25975            self.config.base_url.as_ref(),
25976            owner,
25977            repo,
25978            hook_id,
25979            delivery_id,
25980            self.config.user_agent.as_ref(),
25981            self.config.accept.as_deref(),
25982        )?
25983        .with_authentication(&theScheme)?;
25984
25985        let theRequest =
25986            crate::v1_1_4::request::repos_get_webhook_delivery::reqwest_blocking_request(theBuilder)?;
25987
25988        ::log::debug!("HTTP request: {:?}", &theRequest);
25989
25990        let theResponse = self.client.execute(theRequest)?;
25991
25992        ::log::debug!("HTTP response: {:?}", &theResponse);
25993
25994        Ok(theResponse)
25995    }
25996
25997    /// Redeliver a delivery for a repository webhook
25998    /// 
25999    /// Redeliver a webhook delivery for a webhook configured in a repository.
26000    /// 
26001    /// [API method documentation](https://docs.github.com/rest/reference/repos#redeliver-a-delivery-for-a-repository-webhook)
26002    pub fn repos_redeliver_webhook_delivery(
26003        &self,
26004        owner: &str,
26005        repo: &str,
26006        hook_id: i64,
26007        delivery_id: i64,
26008    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26009        let mut theScheme = AuthScheme::from(&self.config.authentication);
26010
26011        while let Some(auth_step) = theScheme.step()? {
26012            match auth_step {
26013                ::authentic::AuthenticationStep::Request(auth_request) => {
26014                    theScheme.respond(self.client.execute(auth_request));
26015                }
26016                ::authentic::AuthenticationStep::WaitFor(duration) => {
26017                    (self.sleep)(duration);
26018                }
26019            }
26020        }
26021        let theBuilder = crate::v1_1_4::request::repos_redeliver_webhook_delivery::reqwest_blocking_builder(
26022            self.config.base_url.as_ref(),
26023            owner,
26024            repo,
26025            hook_id,
26026            delivery_id,
26027            self.config.user_agent.as_ref(),
26028            self.config.accept.as_deref(),
26029        )?
26030        .with_authentication(&theScheme)?;
26031
26032        let theRequest =
26033            crate::v1_1_4::request::repos_redeliver_webhook_delivery::reqwest_blocking_request(theBuilder)?;
26034
26035        ::log::debug!("HTTP request: {:?}", &theRequest);
26036
26037        let theResponse = self.client.execute(theRequest)?;
26038
26039        ::log::debug!("HTTP response: {:?}", &theResponse);
26040
26041        Ok(theResponse)
26042    }
26043
26044    /// Ping a repository webhook
26045    /// 
26046    /// This will trigger a [ping event](https://docs.github.com/webhooks/#ping-event) to be sent to the hook.
26047    /// 
26048    /// [API method documentation](https://docs.github.com/rest/reference/repos#ping-a-repository-webhook)
26049    pub fn repos_ping_webhook(
26050        &self,
26051        owner: &str,
26052        repo: &str,
26053        hook_id: i64,
26054    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26055        let mut theScheme = AuthScheme::from(&self.config.authentication);
26056
26057        while let Some(auth_step) = theScheme.step()? {
26058            match auth_step {
26059                ::authentic::AuthenticationStep::Request(auth_request) => {
26060                    theScheme.respond(self.client.execute(auth_request));
26061                }
26062                ::authentic::AuthenticationStep::WaitFor(duration) => {
26063                    (self.sleep)(duration);
26064                }
26065            }
26066        }
26067        let theBuilder = crate::v1_1_4::request::repos_ping_webhook::reqwest_blocking_builder(
26068            self.config.base_url.as_ref(),
26069            owner,
26070            repo,
26071            hook_id,
26072            self.config.user_agent.as_ref(),
26073            self.config.accept.as_deref(),
26074        )?
26075        .with_authentication(&theScheme)?;
26076
26077        let theRequest =
26078            crate::v1_1_4::request::repos_ping_webhook::reqwest_blocking_request(theBuilder)?;
26079
26080        ::log::debug!("HTTP request: {:?}", &theRequest);
26081
26082        let theResponse = self.client.execute(theRequest)?;
26083
26084        ::log::debug!("HTTP response: {:?}", &theResponse);
26085
26086        Ok(theResponse)
26087    }
26088
26089    /// Test the push repository webhook
26090    /// 
26091    /// This will trigger the hook with the latest push to the current repository if the hook is subscribed to `push` events. If the hook is not subscribed to `push` events, the server will respond with 204 but no test POST will be generated.
26092    /// 
26093    /// **Note**: Previously `/repos/:owner/:repo/hooks/:hook_id/test`
26094    /// 
26095    /// [API method documentation](https://docs.github.com/rest/reference/repos#test-the-push-repository-webhook)
26096    pub fn repos_test_push_webhook(
26097        &self,
26098        owner: &str,
26099        repo: &str,
26100        hook_id: i64,
26101    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26102        let mut theScheme = AuthScheme::from(&self.config.authentication);
26103
26104        while let Some(auth_step) = theScheme.step()? {
26105            match auth_step {
26106                ::authentic::AuthenticationStep::Request(auth_request) => {
26107                    theScheme.respond(self.client.execute(auth_request));
26108                }
26109                ::authentic::AuthenticationStep::WaitFor(duration) => {
26110                    (self.sleep)(duration);
26111                }
26112            }
26113        }
26114        let theBuilder = crate::v1_1_4::request::repos_test_push_webhook::reqwest_blocking_builder(
26115            self.config.base_url.as_ref(),
26116            owner,
26117            repo,
26118            hook_id,
26119            self.config.user_agent.as_ref(),
26120            self.config.accept.as_deref(),
26121        )?
26122        .with_authentication(&theScheme)?;
26123
26124        let theRequest =
26125            crate::v1_1_4::request::repos_test_push_webhook::reqwest_blocking_request(theBuilder)?;
26126
26127        ::log::debug!("HTTP request: {:?}", &theRequest);
26128
26129        let theResponse = self.client.execute(theRequest)?;
26130
26131        ::log::debug!("HTTP response: {:?}", &theResponse);
26132
26133        Ok(theResponse)
26134    }
26135
26136    /// Get an import status
26137    /// 
26138    /// View the progress of an import.
26139    /// 
26140    /// **Import status**
26141    /// 
26142    /// This section includes details about the possible values of the `status` field of the Import Progress response.
26143    /// 
26144    /// An import that does not have errors will progress through these steps:
26145    /// 
26146    /// *   `detecting` - the "detection" step of the import is in progress because the request did not include a `vcs` parameter. The import is identifying the type of source control present at the URL.
26147    /// *   `importing` - the "raw" step of the import is in progress. This is where commit data is fetched from the original repository. The import progress response will include `commit_count` (the total number of raw commits that will be imported) and `percent` (0 - 100, the current progress through the import).
26148    /// *   `mapping` - the "rewrite" step of the import is in progress. This is where SVN branches are converted to Git branches, and where author updates are applied. The import progress response does not include progress information.
26149    /// *   `pushing` - the "push" step of the import is in progress. This is where the importer updates the repository on GitHub. The import progress response will include `push_percent`, which is the percent value reported by `git push` when it is "Writing objects".
26150    /// *   `complete` - the import is complete, and the repository is ready on GitHub.
26151    /// 
26152    /// If there are problems, you will see one of these in the `status` field:
26153    /// 
26154    /// *   `auth_failed` - the import requires authentication in order to connect to the original repository. To update authentication for the import, please see the [Update an import](https://docs.github.com/rest/reference/migrations#update-an-import) section.
26155    /// *   `error` - the import encountered an error. The import progress response will include the `failed_step` and an error message. Contact [GitHub Support](https://support.github.com/contact?tags=dotcom-rest-api) for more information.
26156    /// *   `detection_needs_auth` - the importer requires authentication for the originating repository to continue detection. To update authentication for the import, please see the [Update an import](https://docs.github.com/rest/reference/migrations#update-an-import) section.
26157    /// *   `detection_found_nothing` - the importer didn't recognize any source control at the URL. To resolve, [Cancel the import](https://docs.github.com/rest/reference/migrations#cancel-an-import) and [retry](https://docs.github.com/rest/reference/migrations#start-an-import) with the correct URL.
26158    /// *   `detection_found_multiple` - the importer found several projects or repositories at the provided URL. When this is the case, the Import Progress response will also include a `project_choices` field with the possible project choices as values. To update project choice, please see the [Update an import](https://docs.github.com/rest/reference/migrations#update-an-import) section.
26159    /// 
26160    /// **The project_choices field**
26161    /// 
26162    /// When multiple projects are found at the provided URL, the response hash will include a `project_choices` field, the value of which is an array of hashes each representing a project choice. The exact key/value pairs of the project hashes will differ depending on the version control type.
26163    /// 
26164    /// **Git LFS related fields**
26165    /// 
26166    /// This section includes details about Git LFS related fields that may be present in the Import Progress response.
26167    /// 
26168    /// *   `use_lfs` - describes whether the import has been opted in or out of using Git LFS. The value can be `opt_in`, `opt_out`, or `undecided` if no action has been taken.
26169    /// *   `has_large_files` - the boolean value describing whether files larger than 100MB were found during the `importing` step.
26170    /// *   `large_files_size` - the total size in gigabytes of files larger than 100MB found in the originating repository.
26171    /// *   `large_files_count` - the total number of files larger than 100MB found in the originating repository. To see a list of these files, make a "Get Large Files" request.
26172    /// 
26173    /// [API method documentation](https://docs.github.com/rest/reference/migrations#get-an-import-status)
26174    pub fn migrations_get_import_status(
26175        &self,
26176        owner: &str,
26177        repo: &str,
26178    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26179        let mut theScheme = AuthScheme::from(&self.config.authentication);
26180
26181        while let Some(auth_step) = theScheme.step()? {
26182            match auth_step {
26183                ::authentic::AuthenticationStep::Request(auth_request) => {
26184                    theScheme.respond(self.client.execute(auth_request));
26185                }
26186                ::authentic::AuthenticationStep::WaitFor(duration) => {
26187                    (self.sleep)(duration);
26188                }
26189            }
26190        }
26191        let theBuilder = crate::v1_1_4::request::migrations_get_import_status::reqwest_blocking_builder(
26192            self.config.base_url.as_ref(),
26193            owner,
26194            repo,
26195            self.config.user_agent.as_ref(),
26196            self.config.accept.as_deref(),
26197        )?
26198        .with_authentication(&theScheme)?;
26199
26200        let theRequest =
26201            crate::v1_1_4::request::migrations_get_import_status::reqwest_blocking_request(theBuilder)?;
26202
26203        ::log::debug!("HTTP request: {:?}", &theRequest);
26204
26205        let theResponse = self.client.execute(theRequest)?;
26206
26207        ::log::debug!("HTTP response: {:?}", &theResponse);
26208
26209        Ok(theResponse)
26210    }
26211
26212    /// Start an import
26213    /// 
26214    /// Start a source import to a GitHub repository using GitHub Importer.
26215    /// 
26216    /// [API method documentation](https://docs.github.com/rest/reference/migrations#start-an-import)
26217    ///
26218    /// # Content
26219    ///
26220    /// - [`&v1_1_4::request::migrations_start_import::body::Json`](crate::v1_1_4::request::migrations_start_import::body::Json)
26221    pub fn migrations_start_import<Content>(
26222        &self,
26223        owner: &str,
26224        repo: &str,
26225        theContent: Content,
26226    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
26227    where
26228        Content: Copy + TryInto<crate::v1_1_4::request::migrations_start_import::Content<::reqwest::blocking::Body>>,
26229        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::migrations_start_import::Content<::reqwest::blocking::Body>>>::Error>
26230    {
26231        let mut theScheme = AuthScheme::from(&self.config.authentication);
26232
26233        while let Some(auth_step) = theScheme.step()? {
26234            match auth_step {
26235                ::authentic::AuthenticationStep::Request(auth_request) => {
26236                    theScheme.respond(self.client.execute(auth_request));
26237                }
26238                ::authentic::AuthenticationStep::WaitFor(duration) => {
26239                    (self.sleep)(duration);
26240                }
26241            }
26242        }
26243        let theBuilder = crate::v1_1_4::request::migrations_start_import::reqwest_blocking_builder(
26244            self.config.base_url.as_ref(),
26245            owner,
26246            repo,
26247            self.config.user_agent.as_ref(),
26248            self.config.accept.as_deref(),
26249        )?
26250        .with_authentication(&theScheme)?;
26251
26252        let theRequest = crate::v1_1_4::request::migrations_start_import::reqwest_blocking_request(
26253            theBuilder,
26254            theContent.try_into()?,
26255        )?;
26256
26257        ::log::debug!("HTTP request: {:?}", &theRequest);
26258
26259        let theResponse = self.client.execute(theRequest)?;
26260
26261        ::log::debug!("HTTP response: {:?}", &theResponse);
26262
26263        Ok(theResponse)
26264    }
26265
26266    /// Cancel an import
26267    /// 
26268    /// Stop an import for a repository.
26269    /// 
26270    /// [API method documentation](https://docs.github.com/rest/reference/migrations#cancel-an-import)
26271    pub fn migrations_cancel_import(
26272        &self,
26273        owner: &str,
26274        repo: &str,
26275    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26276        let mut theScheme = AuthScheme::from(&self.config.authentication);
26277
26278        while let Some(auth_step) = theScheme.step()? {
26279            match auth_step {
26280                ::authentic::AuthenticationStep::Request(auth_request) => {
26281                    theScheme.respond(self.client.execute(auth_request));
26282                }
26283                ::authentic::AuthenticationStep::WaitFor(duration) => {
26284                    (self.sleep)(duration);
26285                }
26286            }
26287        }
26288        let theBuilder = crate::v1_1_4::request::migrations_cancel_import::reqwest_blocking_builder(
26289            self.config.base_url.as_ref(),
26290            owner,
26291            repo,
26292            self.config.user_agent.as_ref(),
26293            self.config.accept.as_deref(),
26294        )?
26295        .with_authentication(&theScheme)?;
26296
26297        let theRequest =
26298            crate::v1_1_4::request::migrations_cancel_import::reqwest_blocking_request(theBuilder)?;
26299
26300        ::log::debug!("HTTP request: {:?}", &theRequest);
26301
26302        let theResponse = self.client.execute(theRequest)?;
26303
26304        ::log::debug!("HTTP response: {:?}", &theResponse);
26305
26306        Ok(theResponse)
26307    }
26308
26309    /// Update an import
26310    /// 
26311    /// An import can be updated with credentials or a project choice by passing in the appropriate parameters in this API
26312    /// request. If no parameters are provided, the import will be restarted.
26313    /// 
26314    /// Some servers (e.g. TFS servers) can have several projects at a single URL. In those cases the import progress will
26315    /// have the status `detection_found_multiple` and the Import Progress response will include a `project_choices` array.
26316    /// You can select the project to import by providing one of the objects in the `project_choices` array in the update request.
26317    /// 
26318    /// [API method documentation](https://docs.github.com/rest/reference/migrations#update-an-import)
26319    ///
26320    /// # Content
26321    ///
26322    /// - [`&::std::option::Option<crate::v1_1_4::request::migrations_update_import::body::Json>`](crate::v1_1_4::request::migrations_update_import::body::Json)
26323    pub fn migrations_update_import<Content>(
26324        &self,
26325        owner: &str,
26326        repo: &str,
26327        theContent: Content,
26328    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
26329    where
26330        Content: Copy + TryInto<crate::v1_1_4::request::migrations_update_import::Content<::reqwest::blocking::Body>>,
26331        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::migrations_update_import::Content<::reqwest::blocking::Body>>>::Error>
26332    {
26333        let mut theScheme = AuthScheme::from(&self.config.authentication);
26334
26335        while let Some(auth_step) = theScheme.step()? {
26336            match auth_step {
26337                ::authentic::AuthenticationStep::Request(auth_request) => {
26338                    theScheme.respond(self.client.execute(auth_request));
26339                }
26340                ::authentic::AuthenticationStep::WaitFor(duration) => {
26341                    (self.sleep)(duration);
26342                }
26343            }
26344        }
26345        let theBuilder = crate::v1_1_4::request::migrations_update_import::reqwest_blocking_builder(
26346            self.config.base_url.as_ref(),
26347            owner,
26348            repo,
26349            self.config.user_agent.as_ref(),
26350            self.config.accept.as_deref(),
26351        )?
26352        .with_authentication(&theScheme)?;
26353
26354        let theRequest = crate::v1_1_4::request::migrations_update_import::reqwest_blocking_request(
26355            theBuilder,
26356            theContent.try_into()?,
26357        )?;
26358
26359        ::log::debug!("HTTP request: {:?}", &theRequest);
26360
26361        let theResponse = self.client.execute(theRequest)?;
26362
26363        ::log::debug!("HTTP response: {:?}", &theResponse);
26364
26365        Ok(theResponse)
26366    }
26367
26368    /// Get commit authors
26369    /// 
26370    /// Each type of source control system represents authors in a different way. For example, a Git commit author has a display name and an email address, but a Subversion commit author just has a username. The GitHub Importer will make the author information valid, but the author might not be correct. For example, it will change the bare Subversion username `hubot` into something like `hubot <hubot@12341234-abab-fefe-8787-fedcba987654>`.
26371    /// 
26372    /// This endpoint and the [Map a commit author](https://docs.github.com/rest/reference/migrations#map-a-commit-author) endpoint allow you to provide correct Git author information.
26373    /// 
26374    /// [API method documentation](https://docs.github.com/rest/reference/migrations#get-commit-authors)
26375    pub fn migrations_get_commit_authors(
26376        &self,
26377        owner: &str,
26378        repo: &str,
26379        since: ::std::option::Option<i64>,
26380    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26381        let mut theScheme = AuthScheme::from(&self.config.authentication);
26382
26383        while let Some(auth_step) = theScheme.step()? {
26384            match auth_step {
26385                ::authentic::AuthenticationStep::Request(auth_request) => {
26386                    theScheme.respond(self.client.execute(auth_request));
26387                }
26388                ::authentic::AuthenticationStep::WaitFor(duration) => {
26389                    (self.sleep)(duration);
26390                }
26391            }
26392        }
26393        let theBuilder = crate::v1_1_4::request::migrations_get_commit_authors::reqwest_blocking_builder(
26394            self.config.base_url.as_ref(),
26395            owner,
26396            repo,
26397            since,
26398            self.config.user_agent.as_ref(),
26399            self.config.accept.as_deref(),
26400        )?
26401        .with_authentication(&theScheme)?;
26402
26403        let theRequest =
26404            crate::v1_1_4::request::migrations_get_commit_authors::reqwest_blocking_request(theBuilder)?;
26405
26406        ::log::debug!("HTTP request: {:?}", &theRequest);
26407
26408        let theResponse = self.client.execute(theRequest)?;
26409
26410        ::log::debug!("HTTP response: {:?}", &theResponse);
26411
26412        Ok(theResponse)
26413    }
26414
26415    /// Map a commit author
26416    /// 
26417    /// Update an author's identity for the import. Your application can continue updating authors any time before you push new commits to the repository.
26418    /// 
26419    /// [API method documentation](https://docs.github.com/rest/reference/migrations#map-a-commit-author)
26420    ///
26421    /// # Content
26422    ///
26423    /// - [`&v1_1_4::request::migrations_map_commit_author::body::Json`](crate::v1_1_4::request::migrations_map_commit_author::body::Json)
26424    pub fn migrations_map_commit_author<Content>(
26425        &self,
26426        owner: &str,
26427        repo: &str,
26428        author_id: i64,
26429        theContent: Content,
26430    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
26431    where
26432        Content: Copy + TryInto<crate::v1_1_4::request::migrations_map_commit_author::Content<::reqwest::blocking::Body>>,
26433        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::migrations_map_commit_author::Content<::reqwest::blocking::Body>>>::Error>
26434    {
26435        let mut theScheme = AuthScheme::from(&self.config.authentication);
26436
26437        while let Some(auth_step) = theScheme.step()? {
26438            match auth_step {
26439                ::authentic::AuthenticationStep::Request(auth_request) => {
26440                    theScheme.respond(self.client.execute(auth_request));
26441                }
26442                ::authentic::AuthenticationStep::WaitFor(duration) => {
26443                    (self.sleep)(duration);
26444                }
26445            }
26446        }
26447        let theBuilder = crate::v1_1_4::request::migrations_map_commit_author::reqwest_blocking_builder(
26448            self.config.base_url.as_ref(),
26449            owner,
26450            repo,
26451            author_id,
26452            self.config.user_agent.as_ref(),
26453            self.config.accept.as_deref(),
26454        )?
26455        .with_authentication(&theScheme)?;
26456
26457        let theRequest = crate::v1_1_4::request::migrations_map_commit_author::reqwest_blocking_request(
26458            theBuilder,
26459            theContent.try_into()?,
26460        )?;
26461
26462        ::log::debug!("HTTP request: {:?}", &theRequest);
26463
26464        let theResponse = self.client.execute(theRequest)?;
26465
26466        ::log::debug!("HTTP response: {:?}", &theResponse);
26467
26468        Ok(theResponse)
26469    }
26470
26471    /// Get large files
26472    /// 
26473    /// List files larger than 100MB found during the import
26474    /// 
26475    /// [API method documentation](https://docs.github.com/rest/reference/migrations#get-large-files)
26476    pub fn migrations_get_large_files(
26477        &self,
26478        owner: &str,
26479        repo: &str,
26480    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26481        let mut theScheme = AuthScheme::from(&self.config.authentication);
26482
26483        while let Some(auth_step) = theScheme.step()? {
26484            match auth_step {
26485                ::authentic::AuthenticationStep::Request(auth_request) => {
26486                    theScheme.respond(self.client.execute(auth_request));
26487                }
26488                ::authentic::AuthenticationStep::WaitFor(duration) => {
26489                    (self.sleep)(duration);
26490                }
26491            }
26492        }
26493        let theBuilder = crate::v1_1_4::request::migrations_get_large_files::reqwest_blocking_builder(
26494            self.config.base_url.as_ref(),
26495            owner,
26496            repo,
26497            self.config.user_agent.as_ref(),
26498            self.config.accept.as_deref(),
26499        )?
26500        .with_authentication(&theScheme)?;
26501
26502        let theRequest =
26503            crate::v1_1_4::request::migrations_get_large_files::reqwest_blocking_request(theBuilder)?;
26504
26505        ::log::debug!("HTTP request: {:?}", &theRequest);
26506
26507        let theResponse = self.client.execute(theRequest)?;
26508
26509        ::log::debug!("HTTP response: {:?}", &theResponse);
26510
26511        Ok(theResponse)
26512    }
26513
26514    /// Update Git LFS preference
26515    /// 
26516    /// You can import repositories from Subversion, Mercurial, and TFS that include files larger than 100MB. This ability is powered by [Git LFS](https://git-lfs.github.com). You can learn more about our LFS feature and working with large files [on our help site](https://docs.github.com/articles/versioning-large-files/).
26517    /// 
26518    /// [API method documentation](https://docs.github.com/rest/reference/migrations#update-git-lfs-preference)
26519    ///
26520    /// # Content
26521    ///
26522    /// - [`&v1_1_4::request::migrations_set_lfs_preference::body::Json`](crate::v1_1_4::request::migrations_set_lfs_preference::body::Json)
26523    pub fn migrations_set_lfs_preference<Content>(
26524        &self,
26525        owner: &str,
26526        repo: &str,
26527        theContent: Content,
26528    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
26529    where
26530        Content: Copy + TryInto<crate::v1_1_4::request::migrations_set_lfs_preference::Content<::reqwest::blocking::Body>>,
26531        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::migrations_set_lfs_preference::Content<::reqwest::blocking::Body>>>::Error>
26532    {
26533        let mut theScheme = AuthScheme::from(&self.config.authentication);
26534
26535        while let Some(auth_step) = theScheme.step()? {
26536            match auth_step {
26537                ::authentic::AuthenticationStep::Request(auth_request) => {
26538                    theScheme.respond(self.client.execute(auth_request));
26539                }
26540                ::authentic::AuthenticationStep::WaitFor(duration) => {
26541                    (self.sleep)(duration);
26542                }
26543            }
26544        }
26545        let theBuilder = crate::v1_1_4::request::migrations_set_lfs_preference::reqwest_blocking_builder(
26546            self.config.base_url.as_ref(),
26547            owner,
26548            repo,
26549            self.config.user_agent.as_ref(),
26550            self.config.accept.as_deref(),
26551        )?
26552        .with_authentication(&theScheme)?;
26553
26554        let theRequest = crate::v1_1_4::request::migrations_set_lfs_preference::reqwest_blocking_request(
26555            theBuilder,
26556            theContent.try_into()?,
26557        )?;
26558
26559        ::log::debug!("HTTP request: {:?}", &theRequest);
26560
26561        let theResponse = self.client.execute(theRequest)?;
26562
26563        ::log::debug!("HTTP response: {:?}", &theResponse);
26564
26565        Ok(theResponse)
26566    }
26567
26568    /// Get a repository installation for the authenticated app
26569    /// 
26570    /// Enables an authenticated GitHub App to find the repository's installation information. The installation's account type will be either an organization or a user account, depending which account the repository belongs to.
26571    /// 
26572    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
26573    /// 
26574    /// [API method documentation](https://docs.github.com/rest/reference/apps#get-a-repository-installation-for-the-authenticated-app)
26575    pub fn apps_get_repo_installation(
26576        &self,
26577        owner: &str,
26578        repo: &str,
26579    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26580        let mut theScheme = AuthScheme::from(&self.config.authentication);
26581
26582        while let Some(auth_step) = theScheme.step()? {
26583            match auth_step {
26584                ::authentic::AuthenticationStep::Request(auth_request) => {
26585                    theScheme.respond(self.client.execute(auth_request));
26586                }
26587                ::authentic::AuthenticationStep::WaitFor(duration) => {
26588                    (self.sleep)(duration);
26589                }
26590            }
26591        }
26592        let theBuilder = crate::v1_1_4::request::apps_get_repo_installation::reqwest_blocking_builder(
26593            self.config.base_url.as_ref(),
26594            owner,
26595            repo,
26596            self.config.user_agent.as_ref(),
26597            self.config.accept.as_deref(),
26598        )?
26599        .with_authentication(&theScheme)?;
26600
26601        let theRequest =
26602            crate::v1_1_4::request::apps_get_repo_installation::reqwest_blocking_request(theBuilder)?;
26603
26604        ::log::debug!("HTTP request: {:?}", &theRequest);
26605
26606        let theResponse = self.client.execute(theRequest)?;
26607
26608        ::log::debug!("HTTP response: {:?}", &theResponse);
26609
26610        Ok(theResponse)
26611    }
26612
26613    /// Get interaction restrictions for a repository
26614    /// 
26615    /// Shows which type of GitHub user can interact with this repository and when the restriction expires. If there are no restrictions, you will see an empty response.
26616    /// 
26617    /// [API method documentation](https://docs.github.com/rest/reference/interactions#get-interaction-restrictions-for-a-repository)
26618    pub fn interactions_get_restrictions_for_repo(
26619        &self,
26620        owner: &str,
26621        repo: &str,
26622    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26623        let mut theScheme = AuthScheme::from(&self.config.authentication);
26624
26625        while let Some(auth_step) = theScheme.step()? {
26626            match auth_step {
26627                ::authentic::AuthenticationStep::Request(auth_request) => {
26628                    theScheme.respond(self.client.execute(auth_request));
26629                }
26630                ::authentic::AuthenticationStep::WaitFor(duration) => {
26631                    (self.sleep)(duration);
26632                }
26633            }
26634        }
26635        let theBuilder = crate::v1_1_4::request::interactions_get_restrictions_for_repo::reqwest_blocking_builder(
26636            self.config.base_url.as_ref(),
26637            owner,
26638            repo,
26639            self.config.user_agent.as_ref(),
26640            self.config.accept.as_deref(),
26641        )?
26642        .with_authentication(&theScheme)?;
26643
26644        let theRequest =
26645            crate::v1_1_4::request::interactions_get_restrictions_for_repo::reqwest_blocking_request(theBuilder)?;
26646
26647        ::log::debug!("HTTP request: {:?}", &theRequest);
26648
26649        let theResponse = self.client.execute(theRequest)?;
26650
26651        ::log::debug!("HTTP response: {:?}", &theResponse);
26652
26653        Ok(theResponse)
26654    }
26655
26656    /// Set interaction restrictions for a repository
26657    /// 
26658    /// Temporarily restricts interactions to a certain type of GitHub user within the given repository. You must have owner or admin access to set these restrictions. If an interaction limit is set for the user or organization that owns this repository, you will receive a `409 Conflict` response and will not be able to use this endpoint to change the interaction limit for a single repository.
26659    /// 
26660    /// [API method documentation](https://docs.github.com/rest/reference/interactions#set-interaction-restrictions-for-a-repository)
26661    ///
26662    /// # Content
26663    ///
26664    /// - [`&v1_1_4::schema::InteractionLimit`](crate::v1_1_4::schema::InteractionLimit)
26665    pub fn interactions_set_restrictions_for_repo<Content>(
26666        &self,
26667        owner: &str,
26668        repo: &str,
26669        theContent: Content,
26670    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
26671    where
26672        Content: Copy + TryInto<crate::v1_1_4::request::interactions_set_restrictions_for_repo::Content<::reqwest::blocking::Body>>,
26673        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::interactions_set_restrictions_for_repo::Content<::reqwest::blocking::Body>>>::Error>
26674    {
26675        let mut theScheme = AuthScheme::from(&self.config.authentication);
26676
26677        while let Some(auth_step) = theScheme.step()? {
26678            match auth_step {
26679                ::authentic::AuthenticationStep::Request(auth_request) => {
26680                    theScheme.respond(self.client.execute(auth_request));
26681                }
26682                ::authentic::AuthenticationStep::WaitFor(duration) => {
26683                    (self.sleep)(duration);
26684                }
26685            }
26686        }
26687        let theBuilder = crate::v1_1_4::request::interactions_set_restrictions_for_repo::reqwest_blocking_builder(
26688            self.config.base_url.as_ref(),
26689            owner,
26690            repo,
26691            self.config.user_agent.as_ref(),
26692            self.config.accept.as_deref(),
26693        )?
26694        .with_authentication(&theScheme)?;
26695
26696        let theRequest = crate::v1_1_4::request::interactions_set_restrictions_for_repo::reqwest_blocking_request(
26697            theBuilder,
26698            theContent.try_into()?,
26699        )?;
26700
26701        ::log::debug!("HTTP request: {:?}", &theRequest);
26702
26703        let theResponse = self.client.execute(theRequest)?;
26704
26705        ::log::debug!("HTTP response: {:?}", &theResponse);
26706
26707        Ok(theResponse)
26708    }
26709
26710    /// Remove interaction restrictions for a repository
26711    /// 
26712    /// Removes all interaction restrictions from the given repository. You must have owner or admin access to remove restrictions. If the interaction limit is set for the user or organization that owns this repository, you will receive a `409 Conflict` response and will not be able to use this endpoint to change the interaction limit for a single repository.
26713    /// 
26714    /// [API method documentation](https://docs.github.com/rest/reference/interactions#remove-interaction-restrictions-for-a-repository)
26715    pub fn interactions_remove_restrictions_for_repo(
26716        &self,
26717        owner: &str,
26718        repo: &str,
26719    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26720        let mut theScheme = AuthScheme::from(&self.config.authentication);
26721
26722        while let Some(auth_step) = theScheme.step()? {
26723            match auth_step {
26724                ::authentic::AuthenticationStep::Request(auth_request) => {
26725                    theScheme.respond(self.client.execute(auth_request));
26726                }
26727                ::authentic::AuthenticationStep::WaitFor(duration) => {
26728                    (self.sleep)(duration);
26729                }
26730            }
26731        }
26732        let theBuilder = crate::v1_1_4::request::interactions_remove_restrictions_for_repo::reqwest_blocking_builder(
26733            self.config.base_url.as_ref(),
26734            owner,
26735            repo,
26736            self.config.user_agent.as_ref(),
26737            self.config.accept.as_deref(),
26738        )?
26739        .with_authentication(&theScheme)?;
26740
26741        let theRequest =
26742            crate::v1_1_4::request::interactions_remove_restrictions_for_repo::reqwest_blocking_request(theBuilder)?;
26743
26744        ::log::debug!("HTTP request: {:?}", &theRequest);
26745
26746        let theResponse = self.client.execute(theRequest)?;
26747
26748        ::log::debug!("HTTP response: {:?}", &theResponse);
26749
26750        Ok(theResponse)
26751    }
26752
26753    /// List repository invitations
26754    /// 
26755    /// When authenticating as a user with admin rights to a repository, this endpoint will list all currently open repository invitations.
26756    /// 
26757    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repository-invitations)
26758    pub fn repos_list_invitations(
26759        &self,
26760        owner: &str,
26761        repo: &str,
26762        per_page: ::std::option::Option<i64>,
26763        page: ::std::option::Option<i64>,
26764    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26765        let mut theScheme = AuthScheme::from(&self.config.authentication);
26766
26767        while let Some(auth_step) = theScheme.step()? {
26768            match auth_step {
26769                ::authentic::AuthenticationStep::Request(auth_request) => {
26770                    theScheme.respond(self.client.execute(auth_request));
26771                }
26772                ::authentic::AuthenticationStep::WaitFor(duration) => {
26773                    (self.sleep)(duration);
26774                }
26775            }
26776        }
26777        let theBuilder = crate::v1_1_4::request::repos_list_invitations::reqwest_blocking_builder(
26778            self.config.base_url.as_ref(),
26779            owner,
26780            repo,
26781            per_page,
26782            page,
26783            self.config.user_agent.as_ref(),
26784            self.config.accept.as_deref(),
26785        )?
26786        .with_authentication(&theScheme)?;
26787
26788        let theRequest =
26789            crate::v1_1_4::request::repos_list_invitations::reqwest_blocking_request(theBuilder)?;
26790
26791        ::log::debug!("HTTP request: {:?}", &theRequest);
26792
26793        let theResponse = self.client.execute(theRequest)?;
26794
26795        ::log::debug!("HTTP response: {:?}", &theResponse);
26796
26797        Ok(theResponse)
26798    }
26799
26800    /// Delete a repository invitation
26801    /// 
26802    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-repository-invitation)
26803    pub fn repos_delete_invitation(
26804        &self,
26805        owner: &str,
26806        repo: &str,
26807        invitation_id: i64,
26808    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26809        let mut theScheme = AuthScheme::from(&self.config.authentication);
26810
26811        while let Some(auth_step) = theScheme.step()? {
26812            match auth_step {
26813                ::authentic::AuthenticationStep::Request(auth_request) => {
26814                    theScheme.respond(self.client.execute(auth_request));
26815                }
26816                ::authentic::AuthenticationStep::WaitFor(duration) => {
26817                    (self.sleep)(duration);
26818                }
26819            }
26820        }
26821        let theBuilder = crate::v1_1_4::request::repos_delete_invitation::reqwest_blocking_builder(
26822            self.config.base_url.as_ref(),
26823            owner,
26824            repo,
26825            invitation_id,
26826            self.config.user_agent.as_ref(),
26827            self.config.accept.as_deref(),
26828        )?
26829        .with_authentication(&theScheme)?;
26830
26831        let theRequest =
26832            crate::v1_1_4::request::repos_delete_invitation::reqwest_blocking_request(theBuilder)?;
26833
26834        ::log::debug!("HTTP request: {:?}", &theRequest);
26835
26836        let theResponse = self.client.execute(theRequest)?;
26837
26838        ::log::debug!("HTTP response: {:?}", &theResponse);
26839
26840        Ok(theResponse)
26841    }
26842
26843    /// Update a repository invitation
26844    /// 
26845    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-a-repository-invitation)
26846    ///
26847    /// # Content
26848    ///
26849    /// - [`&v1_1_4::request::repos_update_invitation::body::Json`](crate::v1_1_4::request::repos_update_invitation::body::Json)
26850    pub fn repos_update_invitation<Content>(
26851        &self,
26852        owner: &str,
26853        repo: &str,
26854        invitation_id: i64,
26855        theContent: Content,
26856    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
26857    where
26858        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_invitation::Content<::reqwest::blocking::Body>>,
26859        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_invitation::Content<::reqwest::blocking::Body>>>::Error>
26860    {
26861        let mut theScheme = AuthScheme::from(&self.config.authentication);
26862
26863        while let Some(auth_step) = theScheme.step()? {
26864            match auth_step {
26865                ::authentic::AuthenticationStep::Request(auth_request) => {
26866                    theScheme.respond(self.client.execute(auth_request));
26867                }
26868                ::authentic::AuthenticationStep::WaitFor(duration) => {
26869                    (self.sleep)(duration);
26870                }
26871            }
26872        }
26873        let theBuilder = crate::v1_1_4::request::repos_update_invitation::reqwest_blocking_builder(
26874            self.config.base_url.as_ref(),
26875            owner,
26876            repo,
26877            invitation_id,
26878            self.config.user_agent.as_ref(),
26879            self.config.accept.as_deref(),
26880        )?
26881        .with_authentication(&theScheme)?;
26882
26883        let theRequest = crate::v1_1_4::request::repos_update_invitation::reqwest_blocking_request(
26884            theBuilder,
26885            theContent.try_into()?,
26886        )?;
26887
26888        ::log::debug!("HTTP request: {:?}", &theRequest);
26889
26890        let theResponse = self.client.execute(theRequest)?;
26891
26892        ::log::debug!("HTTP response: {:?}", &theResponse);
26893
26894        Ok(theResponse)
26895    }
26896
26897    /// List repository issues
26898    /// 
26899    /// List issues in a repository.
26900    /// 
26901    /// **Note**: GitHub's REST API v3 considers every pull request an issue, but not every issue is a pull request. For this
26902    /// reason, "Issues" endpoints may return both issues and pull requests in the response. You can identify pull requests by
26903    /// the `pull_request` key. Be aware that the `id` of a pull request returned from "Issues" endpoints will be an _issue id_. To find out the pull
26904    /// request id, use the "[List pull requests](https://docs.github.com/rest/reference/pulls#list-pull-requests)" endpoint.
26905    /// 
26906    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-repository-issues)
26907    #[allow(clippy::too_many_arguments)]
26908    pub fn issues_list_for_repo(
26909        &self,
26910        owner: &str,
26911        repo: &str,
26912        milestone: ::std::option::Option<&str>,
26913        state: ::std::option::Option<&str>,
26914        assignee: ::std::option::Option<&str>,
26915        creator: ::std::option::Option<&str>,
26916        mentioned: ::std::option::Option<&str>,
26917        labels: ::std::option::Option<&str>,
26918        sort: &crate::types::Sort<'_>,
26919        since: ::std::option::Option<&str>,
26920        per_page: ::std::option::Option<i64>,
26921        page: ::std::option::Option<i64>,
26922    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
26923        let (sort, direction) = sort.extract();
26924        let mut theScheme = AuthScheme::from(&self.config.authentication);
26925
26926        while let Some(auth_step) = theScheme.step()? {
26927            match auth_step {
26928                ::authentic::AuthenticationStep::Request(auth_request) => {
26929                    theScheme.respond(self.client.execute(auth_request));
26930                }
26931                ::authentic::AuthenticationStep::WaitFor(duration) => {
26932                    (self.sleep)(duration);
26933                }
26934            }
26935        }
26936        let theBuilder = crate::v1_1_4::request::issues_list_for_repo::reqwest_blocking_builder(
26937            self.config.base_url.as_ref(),
26938            owner,
26939            repo,
26940            milestone,
26941            state,
26942            assignee,
26943            creator,
26944            mentioned,
26945            labels,
26946            sort,
26947            direction,
26948            since,
26949            per_page,
26950            page,
26951            self.config.user_agent.as_ref(),
26952            self.config.accept.as_deref(),
26953        )?
26954        .with_authentication(&theScheme)?;
26955
26956        let theRequest =
26957            crate::v1_1_4::request::issues_list_for_repo::reqwest_blocking_request(theBuilder)?;
26958
26959        ::log::debug!("HTTP request: {:?}", &theRequest);
26960
26961        let theResponse = self.client.execute(theRequest)?;
26962
26963        ::log::debug!("HTTP response: {:?}", &theResponse);
26964
26965        Ok(theResponse)
26966    }
26967
26968    /// Create an issue
26969    /// 
26970    /// Any user with pull access to a repository can create an issue. If [issues are disabled in the repository](https://docs.github.com/articles/disabling-issues/), the API returns a `410 Gone` status.
26971    /// 
26972    /// This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
26973    /// 
26974    /// [API method documentation](https://docs.github.com/rest/reference/issues#create-an-issue)
26975    ///
26976    /// # Content
26977    ///
26978    /// - [`&v1_1_4::request::issues_create::body::Json`](crate::v1_1_4::request::issues_create::body::Json)
26979    pub fn issues_create<Content>(
26980        &self,
26981        owner: &str,
26982        repo: &str,
26983        theContent: Content,
26984    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
26985    where
26986        Content: Copy + TryInto<crate::v1_1_4::request::issues_create::Content<::reqwest::blocking::Body>>,
26987        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_create::Content<::reqwest::blocking::Body>>>::Error>
26988    {
26989        let mut theScheme = AuthScheme::from(&self.config.authentication);
26990
26991        while let Some(auth_step) = theScheme.step()? {
26992            match auth_step {
26993                ::authentic::AuthenticationStep::Request(auth_request) => {
26994                    theScheme.respond(self.client.execute(auth_request));
26995                }
26996                ::authentic::AuthenticationStep::WaitFor(duration) => {
26997                    (self.sleep)(duration);
26998                }
26999            }
27000        }
27001        let theBuilder = crate::v1_1_4::request::issues_create::reqwest_blocking_builder(
27002            self.config.base_url.as_ref(),
27003            owner,
27004            repo,
27005            self.config.user_agent.as_ref(),
27006            self.config.accept.as_deref(),
27007        )?
27008        .with_authentication(&theScheme)?;
27009
27010        let theRequest = crate::v1_1_4::request::issues_create::reqwest_blocking_request(
27011            theBuilder,
27012            theContent.try_into()?,
27013        )?;
27014
27015        ::log::debug!("HTTP request: {:?}", &theRequest);
27016
27017        let theResponse = self.client.execute(theRequest)?;
27018
27019        ::log::debug!("HTTP response: {:?}", &theResponse);
27020
27021        Ok(theResponse)
27022    }
27023
27024    /// List issue comments for a repository
27025    /// 
27026    /// By default, Issue Comments are ordered by ascending ID.
27027    /// 
27028    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-issue-comments-for-a-repository)
27029    pub fn issues_list_comments_for_repo(
27030        &self,
27031        owner: &str,
27032        repo: &str,
27033        sort: &crate::types::Sort<'_>,
27034        since: ::std::option::Option<&str>,
27035        per_page: ::std::option::Option<i64>,
27036        page: ::std::option::Option<i64>,
27037    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27038        let (sort, direction) = sort.extract();
27039        let mut theScheme = AuthScheme::from(&self.config.authentication);
27040
27041        while let Some(auth_step) = theScheme.step()? {
27042            match auth_step {
27043                ::authentic::AuthenticationStep::Request(auth_request) => {
27044                    theScheme.respond(self.client.execute(auth_request));
27045                }
27046                ::authentic::AuthenticationStep::WaitFor(duration) => {
27047                    (self.sleep)(duration);
27048                }
27049            }
27050        }
27051        let theBuilder = crate::v1_1_4::request::issues_list_comments_for_repo::reqwest_blocking_builder(
27052            self.config.base_url.as_ref(),
27053            owner,
27054            repo,
27055            sort,
27056            direction,
27057            since,
27058            per_page,
27059            page,
27060            self.config.user_agent.as_ref(),
27061            self.config.accept.as_deref(),
27062        )?
27063        .with_authentication(&theScheme)?;
27064
27065        let theRequest =
27066            crate::v1_1_4::request::issues_list_comments_for_repo::reqwest_blocking_request(theBuilder)?;
27067
27068        ::log::debug!("HTTP request: {:?}", &theRequest);
27069
27070        let theResponse = self.client.execute(theRequest)?;
27071
27072        ::log::debug!("HTTP response: {:?}", &theResponse);
27073
27074        Ok(theResponse)
27075    }
27076
27077    /// Get an issue comment
27078    /// 
27079    /// [API method documentation](https://docs.github.com/rest/reference/issues#get-an-issue-comment)
27080    pub fn issues_get_comment(
27081        &self,
27082        owner: &str,
27083        repo: &str,
27084        comment_id: i64,
27085    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27086        let mut theScheme = AuthScheme::from(&self.config.authentication);
27087
27088        while let Some(auth_step) = theScheme.step()? {
27089            match auth_step {
27090                ::authentic::AuthenticationStep::Request(auth_request) => {
27091                    theScheme.respond(self.client.execute(auth_request));
27092                }
27093                ::authentic::AuthenticationStep::WaitFor(duration) => {
27094                    (self.sleep)(duration);
27095                }
27096            }
27097        }
27098        let theBuilder = crate::v1_1_4::request::issues_get_comment::reqwest_blocking_builder(
27099            self.config.base_url.as_ref(),
27100            owner,
27101            repo,
27102            comment_id,
27103            self.config.user_agent.as_ref(),
27104            self.config.accept.as_deref(),
27105        )?
27106        .with_authentication(&theScheme)?;
27107
27108        let theRequest =
27109            crate::v1_1_4::request::issues_get_comment::reqwest_blocking_request(theBuilder)?;
27110
27111        ::log::debug!("HTTP request: {:?}", &theRequest);
27112
27113        let theResponse = self.client.execute(theRequest)?;
27114
27115        ::log::debug!("HTTP response: {:?}", &theResponse);
27116
27117        Ok(theResponse)
27118    }
27119
27120    /// Delete an issue comment
27121    /// 
27122    /// [API method documentation](https://docs.github.com/rest/reference/issues#delete-an-issue-comment)
27123    pub fn issues_delete_comment(
27124        &self,
27125        owner: &str,
27126        repo: &str,
27127        comment_id: i64,
27128    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27129        let mut theScheme = AuthScheme::from(&self.config.authentication);
27130
27131        while let Some(auth_step) = theScheme.step()? {
27132            match auth_step {
27133                ::authentic::AuthenticationStep::Request(auth_request) => {
27134                    theScheme.respond(self.client.execute(auth_request));
27135                }
27136                ::authentic::AuthenticationStep::WaitFor(duration) => {
27137                    (self.sleep)(duration);
27138                }
27139            }
27140        }
27141        let theBuilder = crate::v1_1_4::request::issues_delete_comment::reqwest_blocking_builder(
27142            self.config.base_url.as_ref(),
27143            owner,
27144            repo,
27145            comment_id,
27146            self.config.user_agent.as_ref(),
27147            self.config.accept.as_deref(),
27148        )?
27149        .with_authentication(&theScheme)?;
27150
27151        let theRequest =
27152            crate::v1_1_4::request::issues_delete_comment::reqwest_blocking_request(theBuilder)?;
27153
27154        ::log::debug!("HTTP request: {:?}", &theRequest);
27155
27156        let theResponse = self.client.execute(theRequest)?;
27157
27158        ::log::debug!("HTTP response: {:?}", &theResponse);
27159
27160        Ok(theResponse)
27161    }
27162
27163    /// Update an issue comment
27164    /// 
27165    /// [API method documentation](https://docs.github.com/rest/reference/issues#update-an-issue-comment)
27166    ///
27167    /// # Content
27168    ///
27169    /// - [`&v1_1_4::request::issues_update_comment::body::Json`](crate::v1_1_4::request::issues_update_comment::body::Json)
27170    pub fn issues_update_comment<Content>(
27171        &self,
27172        owner: &str,
27173        repo: &str,
27174        comment_id: i64,
27175        theContent: Content,
27176    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
27177    where
27178        Content: Copy + TryInto<crate::v1_1_4::request::issues_update_comment::Content<::reqwest::blocking::Body>>,
27179        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_update_comment::Content<::reqwest::blocking::Body>>>::Error>
27180    {
27181        let mut theScheme = AuthScheme::from(&self.config.authentication);
27182
27183        while let Some(auth_step) = theScheme.step()? {
27184            match auth_step {
27185                ::authentic::AuthenticationStep::Request(auth_request) => {
27186                    theScheme.respond(self.client.execute(auth_request));
27187                }
27188                ::authentic::AuthenticationStep::WaitFor(duration) => {
27189                    (self.sleep)(duration);
27190                }
27191            }
27192        }
27193        let theBuilder = crate::v1_1_4::request::issues_update_comment::reqwest_blocking_builder(
27194            self.config.base_url.as_ref(),
27195            owner,
27196            repo,
27197            comment_id,
27198            self.config.user_agent.as_ref(),
27199            self.config.accept.as_deref(),
27200        )?
27201        .with_authentication(&theScheme)?;
27202
27203        let theRequest = crate::v1_1_4::request::issues_update_comment::reqwest_blocking_request(
27204            theBuilder,
27205            theContent.try_into()?,
27206        )?;
27207
27208        ::log::debug!("HTTP request: {:?}", &theRequest);
27209
27210        let theResponse = self.client.execute(theRequest)?;
27211
27212        ::log::debug!("HTTP response: {:?}", &theResponse);
27213
27214        Ok(theResponse)
27215    }
27216
27217    /// List reactions for an issue comment
27218    /// 
27219    /// List the reactions to an [issue comment](https://docs.github.com/rest/reference/issues#comments).
27220    /// 
27221    /// [API method documentation](https://docs.github.com/rest/reference/reactions#list-reactions-for-an-issue-comment)
27222    pub fn reactions_list_for_issue_comment(
27223        &self,
27224        owner: &str,
27225        repo: &str,
27226        comment_id: i64,
27227        content: ::std::option::Option<&str>,
27228        per_page: ::std::option::Option<i64>,
27229        page: ::std::option::Option<i64>,
27230    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27231        let mut theScheme = AuthScheme::from(&self.config.authentication);
27232
27233        while let Some(auth_step) = theScheme.step()? {
27234            match auth_step {
27235                ::authentic::AuthenticationStep::Request(auth_request) => {
27236                    theScheme.respond(self.client.execute(auth_request));
27237                }
27238                ::authentic::AuthenticationStep::WaitFor(duration) => {
27239                    (self.sleep)(duration);
27240                }
27241            }
27242        }
27243        let theBuilder = crate::v1_1_4::request::reactions_list_for_issue_comment::reqwest_blocking_builder(
27244            self.config.base_url.as_ref(),
27245            owner,
27246            repo,
27247            comment_id,
27248            content,
27249            per_page,
27250            page,
27251            self.config.user_agent.as_ref(),
27252            self.config.accept.as_deref(),
27253        )?
27254        .with_authentication(&theScheme)?;
27255
27256        let theRequest =
27257            crate::v1_1_4::request::reactions_list_for_issue_comment::reqwest_blocking_request(theBuilder)?;
27258
27259        ::log::debug!("HTTP request: {:?}", &theRequest);
27260
27261        let theResponse = self.client.execute(theRequest)?;
27262
27263        ::log::debug!("HTTP response: {:?}", &theResponse);
27264
27265        Ok(theResponse)
27266    }
27267
27268    /// Create reaction for an issue comment
27269    /// 
27270    /// Create a reaction to an [issue comment](https://docs.github.com/rest/reference/issues#comments). A response with an HTTP `200` status means that you already added the reaction type to this issue comment.
27271    /// 
27272    /// [API method documentation](https://docs.github.com/rest/reference/reactions#create-reaction-for-an-issue-comment)
27273    ///
27274    /// # Content
27275    ///
27276    /// - [`&v1_1_4::request::reactions_create_for_issue_comment::body::Json`](crate::v1_1_4::request::reactions_create_for_issue_comment::body::Json)
27277    pub fn reactions_create_for_issue_comment<Content>(
27278        &self,
27279        owner: &str,
27280        repo: &str,
27281        comment_id: i64,
27282        theContent: Content,
27283    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
27284    where
27285        Content: Copy + TryInto<crate::v1_1_4::request::reactions_create_for_issue_comment::Content<::reqwest::blocking::Body>>,
27286        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::reactions_create_for_issue_comment::Content<::reqwest::blocking::Body>>>::Error>
27287    {
27288        let mut theScheme = AuthScheme::from(&self.config.authentication);
27289
27290        while let Some(auth_step) = theScheme.step()? {
27291            match auth_step {
27292                ::authentic::AuthenticationStep::Request(auth_request) => {
27293                    theScheme.respond(self.client.execute(auth_request));
27294                }
27295                ::authentic::AuthenticationStep::WaitFor(duration) => {
27296                    (self.sleep)(duration);
27297                }
27298            }
27299        }
27300        let theBuilder = crate::v1_1_4::request::reactions_create_for_issue_comment::reqwest_blocking_builder(
27301            self.config.base_url.as_ref(),
27302            owner,
27303            repo,
27304            comment_id,
27305            self.config.user_agent.as_ref(),
27306            self.config.accept.as_deref(),
27307        )?
27308        .with_authentication(&theScheme)?;
27309
27310        let theRequest = crate::v1_1_4::request::reactions_create_for_issue_comment::reqwest_blocking_request(
27311            theBuilder,
27312            theContent.try_into()?,
27313        )?;
27314
27315        ::log::debug!("HTTP request: {:?}", &theRequest);
27316
27317        let theResponse = self.client.execute(theRequest)?;
27318
27319        ::log::debug!("HTTP response: {:?}", &theResponse);
27320
27321        Ok(theResponse)
27322    }
27323
27324    /// Delete an issue comment reaction
27325    /// 
27326    /// **Note:** You can also specify a repository by `repository_id` using the route `DELETE delete /repositories/:repository_id/issues/comments/:comment_id/reactions/:reaction_id`.
27327    /// 
27328    /// Delete a reaction to an [issue comment](https://docs.github.com/rest/reference/issues#comments).
27329    /// 
27330    /// [API method documentation](https://docs.github.com/rest/reference/reactions#delete-an-issue-comment-reaction)
27331    pub fn reactions_delete_for_issue_comment(
27332        &self,
27333        owner: &str,
27334        repo: &str,
27335        comment_id: i64,
27336        reaction_id: i64,
27337    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27338        let mut theScheme = AuthScheme::from(&self.config.authentication);
27339
27340        while let Some(auth_step) = theScheme.step()? {
27341            match auth_step {
27342                ::authentic::AuthenticationStep::Request(auth_request) => {
27343                    theScheme.respond(self.client.execute(auth_request));
27344                }
27345                ::authentic::AuthenticationStep::WaitFor(duration) => {
27346                    (self.sleep)(duration);
27347                }
27348            }
27349        }
27350        let theBuilder = crate::v1_1_4::request::reactions_delete_for_issue_comment::reqwest_blocking_builder(
27351            self.config.base_url.as_ref(),
27352            owner,
27353            repo,
27354            comment_id,
27355            reaction_id,
27356            self.config.user_agent.as_ref(),
27357            self.config.accept.as_deref(),
27358        )?
27359        .with_authentication(&theScheme)?;
27360
27361        let theRequest =
27362            crate::v1_1_4::request::reactions_delete_for_issue_comment::reqwest_blocking_request(theBuilder)?;
27363
27364        ::log::debug!("HTTP request: {:?}", &theRequest);
27365
27366        let theResponse = self.client.execute(theRequest)?;
27367
27368        ::log::debug!("HTTP response: {:?}", &theResponse);
27369
27370        Ok(theResponse)
27371    }
27372
27373    /// List issue events for a repository
27374    /// 
27375    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-issue-events-for-a-repository)
27376    pub fn issues_list_events_for_repo(
27377        &self,
27378        owner: &str,
27379        repo: &str,
27380        per_page: ::std::option::Option<i64>,
27381        page: ::std::option::Option<i64>,
27382    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27383        let mut theScheme = AuthScheme::from(&self.config.authentication);
27384
27385        while let Some(auth_step) = theScheme.step()? {
27386            match auth_step {
27387                ::authentic::AuthenticationStep::Request(auth_request) => {
27388                    theScheme.respond(self.client.execute(auth_request));
27389                }
27390                ::authentic::AuthenticationStep::WaitFor(duration) => {
27391                    (self.sleep)(duration);
27392                }
27393            }
27394        }
27395        let theBuilder = crate::v1_1_4::request::issues_list_events_for_repo::reqwest_blocking_builder(
27396            self.config.base_url.as_ref(),
27397            owner,
27398            repo,
27399            per_page,
27400            page,
27401            self.config.user_agent.as_ref(),
27402            self.config.accept.as_deref(),
27403        )?
27404        .with_authentication(&theScheme)?;
27405
27406        let theRequest =
27407            crate::v1_1_4::request::issues_list_events_for_repo::reqwest_blocking_request(theBuilder)?;
27408
27409        ::log::debug!("HTTP request: {:?}", &theRequest);
27410
27411        let theResponse = self.client.execute(theRequest)?;
27412
27413        ::log::debug!("HTTP response: {:?}", &theResponse);
27414
27415        Ok(theResponse)
27416    }
27417
27418    /// Get an issue event
27419    /// 
27420    /// [API method documentation](https://docs.github.com/rest/reference/issues#get-an-issue-event)
27421    pub fn issues_get_event(
27422        &self,
27423        owner: &str,
27424        repo: &str,
27425        event_id: i64,
27426    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27427        let mut theScheme = AuthScheme::from(&self.config.authentication);
27428
27429        while let Some(auth_step) = theScheme.step()? {
27430            match auth_step {
27431                ::authentic::AuthenticationStep::Request(auth_request) => {
27432                    theScheme.respond(self.client.execute(auth_request));
27433                }
27434                ::authentic::AuthenticationStep::WaitFor(duration) => {
27435                    (self.sleep)(duration);
27436                }
27437            }
27438        }
27439        let theBuilder = crate::v1_1_4::request::issues_get_event::reqwest_blocking_builder(
27440            self.config.base_url.as_ref(),
27441            owner,
27442            repo,
27443            event_id,
27444            self.config.user_agent.as_ref(),
27445            self.config.accept.as_deref(),
27446        )?
27447        .with_authentication(&theScheme)?;
27448
27449        let theRequest =
27450            crate::v1_1_4::request::issues_get_event::reqwest_blocking_request(theBuilder)?;
27451
27452        ::log::debug!("HTTP request: {:?}", &theRequest);
27453
27454        let theResponse = self.client.execute(theRequest)?;
27455
27456        ::log::debug!("HTTP response: {:?}", &theResponse);
27457
27458        Ok(theResponse)
27459    }
27460
27461    /// Get an issue
27462    /// 
27463    /// The API returns a [`301 Moved Permanently` status](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-redirects-redirects) if the issue was
27464    /// [transferred](https://docs.github.com/articles/transferring-an-issue-to-another-repository/) to another repository. If
27465    /// the issue was transferred to or deleted from a repository where the authenticated user lacks read access, the API
27466    /// returns a `404 Not Found` status. If the issue was deleted from a repository where the authenticated user has read
27467    /// access, the API returns a `410 Gone` status. To receive webhook events for transferred and deleted issues, subscribe
27468    /// to the [`issues`](https://docs.github.com/webhooks/event-payloads/#issues) webhook.
27469    /// 
27470    /// **Note**: GitHub's REST API v3 considers every pull request an issue, but not every issue is a pull request. For this
27471    /// reason, "Issues" endpoints may return both issues and pull requests in the response. You can identify pull requests by
27472    /// the `pull_request` key. Be aware that the `id` of a pull request returned from "Issues" endpoints will be an _issue id_. To find out the pull
27473    /// request id, use the "[List pull requests](https://docs.github.com/rest/reference/pulls#list-pull-requests)" endpoint.
27474    /// 
27475    /// [API method documentation](https://docs.github.com/rest/reference/issues#get-an-issue)
27476    pub fn issues_get(
27477        &self,
27478        owner: &str,
27479        repo: &str,
27480        issue_number: i64,
27481    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27482        let mut theScheme = AuthScheme::from(&self.config.authentication);
27483
27484        while let Some(auth_step) = theScheme.step()? {
27485            match auth_step {
27486                ::authentic::AuthenticationStep::Request(auth_request) => {
27487                    theScheme.respond(self.client.execute(auth_request));
27488                }
27489                ::authentic::AuthenticationStep::WaitFor(duration) => {
27490                    (self.sleep)(duration);
27491                }
27492            }
27493        }
27494        let theBuilder = crate::v1_1_4::request::issues_get::reqwest_blocking_builder(
27495            self.config.base_url.as_ref(),
27496            owner,
27497            repo,
27498            issue_number,
27499            self.config.user_agent.as_ref(),
27500            self.config.accept.as_deref(),
27501        )?
27502        .with_authentication(&theScheme)?;
27503
27504        let theRequest =
27505            crate::v1_1_4::request::issues_get::reqwest_blocking_request(theBuilder)?;
27506
27507        ::log::debug!("HTTP request: {:?}", &theRequest);
27508
27509        let theResponse = self.client.execute(theRequest)?;
27510
27511        ::log::debug!("HTTP response: {:?}", &theResponse);
27512
27513        Ok(theResponse)
27514    }
27515
27516    /// Update an issue
27517    /// 
27518    /// Issue owners and users with push access can edit an issue.
27519    /// 
27520    /// [API method documentation](https://docs.github.com/rest/reference/issues/#update-an-issue)
27521    ///
27522    /// # Content
27523    ///
27524    /// - [`&v1_1_4::request::issues_update::body::Json`](crate::v1_1_4::request::issues_update::body::Json)
27525    pub fn issues_update<Content>(
27526        &self,
27527        owner: &str,
27528        repo: &str,
27529        issue_number: i64,
27530        theContent: Content,
27531    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
27532    where
27533        Content: Copy + TryInto<crate::v1_1_4::request::issues_update::Content<::reqwest::blocking::Body>>,
27534        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_update::Content<::reqwest::blocking::Body>>>::Error>
27535    {
27536        let mut theScheme = AuthScheme::from(&self.config.authentication);
27537
27538        while let Some(auth_step) = theScheme.step()? {
27539            match auth_step {
27540                ::authentic::AuthenticationStep::Request(auth_request) => {
27541                    theScheme.respond(self.client.execute(auth_request));
27542                }
27543                ::authentic::AuthenticationStep::WaitFor(duration) => {
27544                    (self.sleep)(duration);
27545                }
27546            }
27547        }
27548        let theBuilder = crate::v1_1_4::request::issues_update::reqwest_blocking_builder(
27549            self.config.base_url.as_ref(),
27550            owner,
27551            repo,
27552            issue_number,
27553            self.config.user_agent.as_ref(),
27554            self.config.accept.as_deref(),
27555        )?
27556        .with_authentication(&theScheme)?;
27557
27558        let theRequest = crate::v1_1_4::request::issues_update::reqwest_blocking_request(
27559            theBuilder,
27560            theContent.try_into()?,
27561        )?;
27562
27563        ::log::debug!("HTTP request: {:?}", &theRequest);
27564
27565        let theResponse = self.client.execute(theRequest)?;
27566
27567        ::log::debug!("HTTP response: {:?}", &theResponse);
27568
27569        Ok(theResponse)
27570    }
27571
27572    /// Add assignees to an issue
27573    /// 
27574    /// Adds up to 10 assignees to an issue. Users already assigned to an issue are not replaced.
27575    /// 
27576    /// [API method documentation](https://docs.github.com/rest/reference/issues#add-assignees-to-an-issue)
27577    ///
27578    /// # Content
27579    ///
27580    /// - [`&v1_1_4::request::issues_add_assignees::body::Json`](crate::v1_1_4::request::issues_add_assignees::body::Json)
27581    pub fn issues_add_assignees<Content>(
27582        &self,
27583        owner: &str,
27584        repo: &str,
27585        issue_number: i64,
27586        theContent: Content,
27587    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
27588    where
27589        Content: Copy + TryInto<crate::v1_1_4::request::issues_add_assignees::Content<::reqwest::blocking::Body>>,
27590        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_add_assignees::Content<::reqwest::blocking::Body>>>::Error>
27591    {
27592        let mut theScheme = AuthScheme::from(&self.config.authentication);
27593
27594        while let Some(auth_step) = theScheme.step()? {
27595            match auth_step {
27596                ::authentic::AuthenticationStep::Request(auth_request) => {
27597                    theScheme.respond(self.client.execute(auth_request));
27598                }
27599                ::authentic::AuthenticationStep::WaitFor(duration) => {
27600                    (self.sleep)(duration);
27601                }
27602            }
27603        }
27604        let theBuilder = crate::v1_1_4::request::issues_add_assignees::reqwest_blocking_builder(
27605            self.config.base_url.as_ref(),
27606            owner,
27607            repo,
27608            issue_number,
27609            self.config.user_agent.as_ref(),
27610            self.config.accept.as_deref(),
27611        )?
27612        .with_authentication(&theScheme)?;
27613
27614        let theRequest = crate::v1_1_4::request::issues_add_assignees::reqwest_blocking_request(
27615            theBuilder,
27616            theContent.try_into()?,
27617        )?;
27618
27619        ::log::debug!("HTTP request: {:?}", &theRequest);
27620
27621        let theResponse = self.client.execute(theRequest)?;
27622
27623        ::log::debug!("HTTP response: {:?}", &theResponse);
27624
27625        Ok(theResponse)
27626    }
27627
27628    /// Remove assignees from an issue
27629    /// 
27630    /// Removes one or more assignees from an issue.
27631    /// 
27632    /// [API method documentation](https://docs.github.com/rest/reference/issues#remove-assignees-from-an-issue)
27633    ///
27634    /// # Content
27635    ///
27636    /// - [`&v1_1_4::request::issues_remove_assignees::body::Json`](crate::v1_1_4::request::issues_remove_assignees::body::Json)
27637    pub fn issues_remove_assignees<Content>(
27638        &self,
27639        owner: &str,
27640        repo: &str,
27641        issue_number: i64,
27642        theContent: Content,
27643    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
27644    where
27645        Content: Copy + TryInto<crate::v1_1_4::request::issues_remove_assignees::Content<::reqwest::blocking::Body>>,
27646        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_remove_assignees::Content<::reqwest::blocking::Body>>>::Error>
27647    {
27648        let mut theScheme = AuthScheme::from(&self.config.authentication);
27649
27650        while let Some(auth_step) = theScheme.step()? {
27651            match auth_step {
27652                ::authentic::AuthenticationStep::Request(auth_request) => {
27653                    theScheme.respond(self.client.execute(auth_request));
27654                }
27655                ::authentic::AuthenticationStep::WaitFor(duration) => {
27656                    (self.sleep)(duration);
27657                }
27658            }
27659        }
27660        let theBuilder = crate::v1_1_4::request::issues_remove_assignees::reqwest_blocking_builder(
27661            self.config.base_url.as_ref(),
27662            owner,
27663            repo,
27664            issue_number,
27665            self.config.user_agent.as_ref(),
27666            self.config.accept.as_deref(),
27667        )?
27668        .with_authentication(&theScheme)?;
27669
27670        let theRequest = crate::v1_1_4::request::issues_remove_assignees::reqwest_blocking_request(
27671            theBuilder,
27672            theContent.try_into()?,
27673        )?;
27674
27675        ::log::debug!("HTTP request: {:?}", &theRequest);
27676
27677        let theResponse = self.client.execute(theRequest)?;
27678
27679        ::log::debug!("HTTP response: {:?}", &theResponse);
27680
27681        Ok(theResponse)
27682    }
27683
27684    /// List issue comments
27685    /// 
27686    /// Issue Comments are ordered by ascending ID.
27687    /// 
27688    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-issue-comments)
27689    pub fn issues_list_comments(
27690        &self,
27691        owner: &str,
27692        repo: &str,
27693        issue_number: i64,
27694        since: ::std::option::Option<&str>,
27695        per_page: ::std::option::Option<i64>,
27696        page: ::std::option::Option<i64>,
27697    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27698        let mut theScheme = AuthScheme::from(&self.config.authentication);
27699
27700        while let Some(auth_step) = theScheme.step()? {
27701            match auth_step {
27702                ::authentic::AuthenticationStep::Request(auth_request) => {
27703                    theScheme.respond(self.client.execute(auth_request));
27704                }
27705                ::authentic::AuthenticationStep::WaitFor(duration) => {
27706                    (self.sleep)(duration);
27707                }
27708            }
27709        }
27710        let theBuilder = crate::v1_1_4::request::issues_list_comments::reqwest_blocking_builder(
27711            self.config.base_url.as_ref(),
27712            owner,
27713            repo,
27714            issue_number,
27715            since,
27716            per_page,
27717            page,
27718            self.config.user_agent.as_ref(),
27719            self.config.accept.as_deref(),
27720        )?
27721        .with_authentication(&theScheme)?;
27722
27723        let theRequest =
27724            crate::v1_1_4::request::issues_list_comments::reqwest_blocking_request(theBuilder)?;
27725
27726        ::log::debug!("HTTP request: {:?}", &theRequest);
27727
27728        let theResponse = self.client.execute(theRequest)?;
27729
27730        ::log::debug!("HTTP response: {:?}", &theResponse);
27731
27732        Ok(theResponse)
27733    }
27734
27735    /// Create an issue comment
27736    /// 
27737    /// This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
27738    /// 
27739    /// [API method documentation](https://docs.github.com/rest/reference/issues#create-an-issue-comment)
27740    ///
27741    /// # Content
27742    ///
27743    /// - [`&v1_1_4::request::issues_create_comment::body::Json`](crate::v1_1_4::request::issues_create_comment::body::Json)
27744    pub fn issues_create_comment<Content>(
27745        &self,
27746        owner: &str,
27747        repo: &str,
27748        issue_number: i64,
27749        theContent: Content,
27750    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
27751    where
27752        Content: Copy + TryInto<crate::v1_1_4::request::issues_create_comment::Content<::reqwest::blocking::Body>>,
27753        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_create_comment::Content<::reqwest::blocking::Body>>>::Error>
27754    {
27755        let mut theScheme = AuthScheme::from(&self.config.authentication);
27756
27757        while let Some(auth_step) = theScheme.step()? {
27758            match auth_step {
27759                ::authentic::AuthenticationStep::Request(auth_request) => {
27760                    theScheme.respond(self.client.execute(auth_request));
27761                }
27762                ::authentic::AuthenticationStep::WaitFor(duration) => {
27763                    (self.sleep)(duration);
27764                }
27765            }
27766        }
27767        let theBuilder = crate::v1_1_4::request::issues_create_comment::reqwest_blocking_builder(
27768            self.config.base_url.as_ref(),
27769            owner,
27770            repo,
27771            issue_number,
27772            self.config.user_agent.as_ref(),
27773            self.config.accept.as_deref(),
27774        )?
27775        .with_authentication(&theScheme)?;
27776
27777        let theRequest = crate::v1_1_4::request::issues_create_comment::reqwest_blocking_request(
27778            theBuilder,
27779            theContent.try_into()?,
27780        )?;
27781
27782        ::log::debug!("HTTP request: {:?}", &theRequest);
27783
27784        let theResponse = self.client.execute(theRequest)?;
27785
27786        ::log::debug!("HTTP response: {:?}", &theResponse);
27787
27788        Ok(theResponse)
27789    }
27790
27791    /// List issue events
27792    /// 
27793    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-issue-events)
27794    pub fn issues_list_events(
27795        &self,
27796        owner: &str,
27797        repo: &str,
27798        issue_number: i64,
27799        per_page: ::std::option::Option<i64>,
27800        page: ::std::option::Option<i64>,
27801    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27802        let mut theScheme = AuthScheme::from(&self.config.authentication);
27803
27804        while let Some(auth_step) = theScheme.step()? {
27805            match auth_step {
27806                ::authentic::AuthenticationStep::Request(auth_request) => {
27807                    theScheme.respond(self.client.execute(auth_request));
27808                }
27809                ::authentic::AuthenticationStep::WaitFor(duration) => {
27810                    (self.sleep)(duration);
27811                }
27812            }
27813        }
27814        let theBuilder = crate::v1_1_4::request::issues_list_events::reqwest_blocking_builder(
27815            self.config.base_url.as_ref(),
27816            owner,
27817            repo,
27818            issue_number,
27819            per_page,
27820            page,
27821            self.config.user_agent.as_ref(),
27822            self.config.accept.as_deref(),
27823        )?
27824        .with_authentication(&theScheme)?;
27825
27826        let theRequest =
27827            crate::v1_1_4::request::issues_list_events::reqwest_blocking_request(theBuilder)?;
27828
27829        ::log::debug!("HTTP request: {:?}", &theRequest);
27830
27831        let theResponse = self.client.execute(theRequest)?;
27832
27833        ::log::debug!("HTTP response: {:?}", &theResponse);
27834
27835        Ok(theResponse)
27836    }
27837
27838    /// List labels for an issue
27839    /// 
27840    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-labels-for-an-issue)
27841    pub fn issues_list_labels_on_issue(
27842        &self,
27843        owner: &str,
27844        repo: &str,
27845        issue_number: i64,
27846        per_page: ::std::option::Option<i64>,
27847        page: ::std::option::Option<i64>,
27848    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
27849        let mut theScheme = AuthScheme::from(&self.config.authentication);
27850
27851        while let Some(auth_step) = theScheme.step()? {
27852            match auth_step {
27853                ::authentic::AuthenticationStep::Request(auth_request) => {
27854                    theScheme.respond(self.client.execute(auth_request));
27855                }
27856                ::authentic::AuthenticationStep::WaitFor(duration) => {
27857                    (self.sleep)(duration);
27858                }
27859            }
27860        }
27861        let theBuilder = crate::v1_1_4::request::issues_list_labels_on_issue::reqwest_blocking_builder(
27862            self.config.base_url.as_ref(),
27863            owner,
27864            repo,
27865            issue_number,
27866            per_page,
27867            page,
27868            self.config.user_agent.as_ref(),
27869            self.config.accept.as_deref(),
27870        )?
27871        .with_authentication(&theScheme)?;
27872
27873        let theRequest =
27874            crate::v1_1_4::request::issues_list_labels_on_issue::reqwest_blocking_request(theBuilder)?;
27875
27876        ::log::debug!("HTTP request: {:?}", &theRequest);
27877
27878        let theResponse = self.client.execute(theRequest)?;
27879
27880        ::log::debug!("HTTP response: {:?}", &theResponse);
27881
27882        Ok(theResponse)
27883    }
27884
27885    /// Set labels for an issue
27886    /// 
27887    /// Removes any previous labels and sets the new labels for an issue.
27888    /// 
27889    /// [API method documentation](https://docs.github.com/rest/reference/issues#set-labels-for-an-issue)
27890    ///
27891    /// # Content
27892    ///
27893    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
27894    pub fn issues_set_labels<Content>(
27895        &self,
27896        owner: &str,
27897        repo: &str,
27898        issue_number: i64,
27899        theContent: Content,
27900    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
27901    where
27902        Content: Copy + TryInto<crate::v1_1_4::request::issues_set_labels::Content<::reqwest::blocking::Body>>,
27903        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_set_labels::Content<::reqwest::blocking::Body>>>::Error>
27904    {
27905        let mut theScheme = AuthScheme::from(&self.config.authentication);
27906
27907        while let Some(auth_step) = theScheme.step()? {
27908            match auth_step {
27909                ::authentic::AuthenticationStep::Request(auth_request) => {
27910                    theScheme.respond(self.client.execute(auth_request));
27911                }
27912                ::authentic::AuthenticationStep::WaitFor(duration) => {
27913                    (self.sleep)(duration);
27914                }
27915            }
27916        }
27917        let theBuilder = crate::v1_1_4::request::issues_set_labels::reqwest_blocking_builder(
27918            self.config.base_url.as_ref(),
27919            owner,
27920            repo,
27921            issue_number,
27922            self.config.user_agent.as_ref(),
27923            self.config.accept.as_deref(),
27924        )?
27925        .with_authentication(&theScheme)?;
27926
27927        let theRequest = crate::v1_1_4::request::issues_set_labels::reqwest_blocking_request(
27928            theBuilder,
27929            theContent.try_into()?,
27930        )?;
27931
27932        ::log::debug!("HTTP request: {:?}", &theRequest);
27933
27934        let theResponse = self.client.execute(theRequest)?;
27935
27936        ::log::debug!("HTTP response: {:?}", &theResponse);
27937
27938        Ok(theResponse)
27939    }
27940
27941    /// Add labels to an issue
27942    /// 
27943    /// [API method documentation](https://docs.github.com/rest/reference/issues#add-labels-to-an-issue)
27944    ///
27945    /// # Content
27946    ///
27947    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
27948    pub fn issues_add_labels<Content>(
27949        &self,
27950        owner: &str,
27951        repo: &str,
27952        issue_number: i64,
27953        theContent: Content,
27954    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
27955    where
27956        Content: Copy + TryInto<crate::v1_1_4::request::issues_add_labels::Content<::reqwest::blocking::Body>>,
27957        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_add_labels::Content<::reqwest::blocking::Body>>>::Error>
27958    {
27959        let mut theScheme = AuthScheme::from(&self.config.authentication);
27960
27961        while let Some(auth_step) = theScheme.step()? {
27962            match auth_step {
27963                ::authentic::AuthenticationStep::Request(auth_request) => {
27964                    theScheme.respond(self.client.execute(auth_request));
27965                }
27966                ::authentic::AuthenticationStep::WaitFor(duration) => {
27967                    (self.sleep)(duration);
27968                }
27969            }
27970        }
27971        let theBuilder = crate::v1_1_4::request::issues_add_labels::reqwest_blocking_builder(
27972            self.config.base_url.as_ref(),
27973            owner,
27974            repo,
27975            issue_number,
27976            self.config.user_agent.as_ref(),
27977            self.config.accept.as_deref(),
27978        )?
27979        .with_authentication(&theScheme)?;
27980
27981        let theRequest = crate::v1_1_4::request::issues_add_labels::reqwest_blocking_request(
27982            theBuilder,
27983            theContent.try_into()?,
27984        )?;
27985
27986        ::log::debug!("HTTP request: {:?}", &theRequest);
27987
27988        let theResponse = self.client.execute(theRequest)?;
27989
27990        ::log::debug!("HTTP response: {:?}", &theResponse);
27991
27992        Ok(theResponse)
27993    }
27994
27995    /// Remove all labels from an issue
27996    /// 
27997    /// [API method documentation](https://docs.github.com/rest/reference/issues#remove-all-labels-from-an-issue)
27998    pub fn issues_remove_all_labels(
27999        &self,
28000        owner: &str,
28001        repo: &str,
28002        issue_number: i64,
28003    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28004        let mut theScheme = AuthScheme::from(&self.config.authentication);
28005
28006        while let Some(auth_step) = theScheme.step()? {
28007            match auth_step {
28008                ::authentic::AuthenticationStep::Request(auth_request) => {
28009                    theScheme.respond(self.client.execute(auth_request));
28010                }
28011                ::authentic::AuthenticationStep::WaitFor(duration) => {
28012                    (self.sleep)(duration);
28013                }
28014            }
28015        }
28016        let theBuilder = crate::v1_1_4::request::issues_remove_all_labels::reqwest_blocking_builder(
28017            self.config.base_url.as_ref(),
28018            owner,
28019            repo,
28020            issue_number,
28021            self.config.user_agent.as_ref(),
28022            self.config.accept.as_deref(),
28023        )?
28024        .with_authentication(&theScheme)?;
28025
28026        let theRequest =
28027            crate::v1_1_4::request::issues_remove_all_labels::reqwest_blocking_request(theBuilder)?;
28028
28029        ::log::debug!("HTTP request: {:?}", &theRequest);
28030
28031        let theResponse = self.client.execute(theRequest)?;
28032
28033        ::log::debug!("HTTP response: {:?}", &theResponse);
28034
28035        Ok(theResponse)
28036    }
28037
28038    /// Remove a label from an issue
28039    /// 
28040    /// Removes the specified label from the issue, and returns the remaining labels on the issue. This endpoint returns a `404 Not Found` status if the label does not exist.
28041    /// 
28042    /// [API method documentation](https://docs.github.com/rest/reference/issues#remove-a-label-from-an-issue)
28043    pub fn issues_remove_label(
28044        &self,
28045        owner: &str,
28046        repo: &str,
28047        issue_number: i64,
28048        name: &str,
28049    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28050        let mut theScheme = AuthScheme::from(&self.config.authentication);
28051
28052        while let Some(auth_step) = theScheme.step()? {
28053            match auth_step {
28054                ::authentic::AuthenticationStep::Request(auth_request) => {
28055                    theScheme.respond(self.client.execute(auth_request));
28056                }
28057                ::authentic::AuthenticationStep::WaitFor(duration) => {
28058                    (self.sleep)(duration);
28059                }
28060            }
28061        }
28062        let theBuilder = crate::v1_1_4::request::issues_remove_label::reqwest_blocking_builder(
28063            self.config.base_url.as_ref(),
28064            owner,
28065            repo,
28066            issue_number,
28067            name,
28068            self.config.user_agent.as_ref(),
28069            self.config.accept.as_deref(),
28070        )?
28071        .with_authentication(&theScheme)?;
28072
28073        let theRequest =
28074            crate::v1_1_4::request::issues_remove_label::reqwest_blocking_request(theBuilder)?;
28075
28076        ::log::debug!("HTTP request: {:?}", &theRequest);
28077
28078        let theResponse = self.client.execute(theRequest)?;
28079
28080        ::log::debug!("HTTP response: {:?}", &theResponse);
28081
28082        Ok(theResponse)
28083    }
28084
28085    /// Lock an issue
28086    /// 
28087    /// Users with push access can lock an issue or pull request's conversation.
28088    /// 
28089    /// Note that, if you choose not to pass any parameters, you'll need to set `Content-Length` to zero when calling out to this endpoint. For more information, see "[HTTP verbs](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-verbs)."
28090    /// 
28091    /// [API method documentation](https://docs.github.com/rest/reference/issues#lock-an-issue)
28092    ///
28093    /// # Content
28094    ///
28095    /// - [`&::std::option::Option<crate::v1_1_4::request::issues_lock::body::Json>`](crate::v1_1_4::request::issues_lock::body::Json)
28096    pub fn issues_lock<Content>(
28097        &self,
28098        owner: &str,
28099        repo: &str,
28100        issue_number: i64,
28101        theContent: Content,
28102    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
28103    where
28104        Content: Copy + TryInto<crate::v1_1_4::request::issues_lock::Content<::reqwest::blocking::Body>>,
28105        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_lock::Content<::reqwest::blocking::Body>>>::Error>
28106    {
28107        let mut theScheme = AuthScheme::from(&self.config.authentication);
28108
28109        while let Some(auth_step) = theScheme.step()? {
28110            match auth_step {
28111                ::authentic::AuthenticationStep::Request(auth_request) => {
28112                    theScheme.respond(self.client.execute(auth_request));
28113                }
28114                ::authentic::AuthenticationStep::WaitFor(duration) => {
28115                    (self.sleep)(duration);
28116                }
28117            }
28118        }
28119        let theBuilder = crate::v1_1_4::request::issues_lock::reqwest_blocking_builder(
28120            self.config.base_url.as_ref(),
28121            owner,
28122            repo,
28123            issue_number,
28124            self.config.user_agent.as_ref(),
28125            self.config.accept.as_deref(),
28126        )?
28127        .with_authentication(&theScheme)?;
28128
28129        let theRequest = crate::v1_1_4::request::issues_lock::reqwest_blocking_request(
28130            theBuilder,
28131            theContent.try_into()?,
28132        )?;
28133
28134        ::log::debug!("HTTP request: {:?}", &theRequest);
28135
28136        let theResponse = self.client.execute(theRequest)?;
28137
28138        ::log::debug!("HTTP response: {:?}", &theResponse);
28139
28140        Ok(theResponse)
28141    }
28142
28143    /// Unlock an issue
28144    /// 
28145    /// Users with push access can unlock an issue's conversation.
28146    /// 
28147    /// [API method documentation](https://docs.github.com/rest/reference/issues#unlock-an-issue)
28148    pub fn issues_unlock(
28149        &self,
28150        owner: &str,
28151        repo: &str,
28152        issue_number: i64,
28153    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28154        let mut theScheme = AuthScheme::from(&self.config.authentication);
28155
28156        while let Some(auth_step) = theScheme.step()? {
28157            match auth_step {
28158                ::authentic::AuthenticationStep::Request(auth_request) => {
28159                    theScheme.respond(self.client.execute(auth_request));
28160                }
28161                ::authentic::AuthenticationStep::WaitFor(duration) => {
28162                    (self.sleep)(duration);
28163                }
28164            }
28165        }
28166        let theBuilder = crate::v1_1_4::request::issues_unlock::reqwest_blocking_builder(
28167            self.config.base_url.as_ref(),
28168            owner,
28169            repo,
28170            issue_number,
28171            self.config.user_agent.as_ref(),
28172            self.config.accept.as_deref(),
28173        )?
28174        .with_authentication(&theScheme)?;
28175
28176        let theRequest =
28177            crate::v1_1_4::request::issues_unlock::reqwest_blocking_request(theBuilder)?;
28178
28179        ::log::debug!("HTTP request: {:?}", &theRequest);
28180
28181        let theResponse = self.client.execute(theRequest)?;
28182
28183        ::log::debug!("HTTP response: {:?}", &theResponse);
28184
28185        Ok(theResponse)
28186    }
28187
28188    /// List reactions for an issue
28189    /// 
28190    /// List the reactions to an [issue](https://docs.github.com/rest/reference/issues).
28191    /// 
28192    /// [API method documentation](https://docs.github.com/rest/reference/reactions#list-reactions-for-an-issue)
28193    pub fn reactions_list_for_issue(
28194        &self,
28195        owner: &str,
28196        repo: &str,
28197        issue_number: i64,
28198        content: ::std::option::Option<&str>,
28199        per_page: ::std::option::Option<i64>,
28200        page: ::std::option::Option<i64>,
28201    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28202        let mut theScheme = AuthScheme::from(&self.config.authentication);
28203
28204        while let Some(auth_step) = theScheme.step()? {
28205            match auth_step {
28206                ::authentic::AuthenticationStep::Request(auth_request) => {
28207                    theScheme.respond(self.client.execute(auth_request));
28208                }
28209                ::authentic::AuthenticationStep::WaitFor(duration) => {
28210                    (self.sleep)(duration);
28211                }
28212            }
28213        }
28214        let theBuilder = crate::v1_1_4::request::reactions_list_for_issue::reqwest_blocking_builder(
28215            self.config.base_url.as_ref(),
28216            owner,
28217            repo,
28218            issue_number,
28219            content,
28220            per_page,
28221            page,
28222            self.config.user_agent.as_ref(),
28223            self.config.accept.as_deref(),
28224        )?
28225        .with_authentication(&theScheme)?;
28226
28227        let theRequest =
28228            crate::v1_1_4::request::reactions_list_for_issue::reqwest_blocking_request(theBuilder)?;
28229
28230        ::log::debug!("HTTP request: {:?}", &theRequest);
28231
28232        let theResponse = self.client.execute(theRequest)?;
28233
28234        ::log::debug!("HTTP response: {:?}", &theResponse);
28235
28236        Ok(theResponse)
28237    }
28238
28239    /// Create reaction for an issue
28240    /// 
28241    /// Create a reaction to an [issue](https://docs.github.com/rest/reference/issues/). A response with an HTTP `200` status means that you already added the reaction type to this issue.
28242    /// 
28243    /// [API method documentation](https://docs.github.com/rest/reference/reactions#create-reaction-for-an-issue)
28244    ///
28245    /// # Content
28246    ///
28247    /// - [`&v1_1_4::request::reactions_create_for_issue::body::Json`](crate::v1_1_4::request::reactions_create_for_issue::body::Json)
28248    pub fn reactions_create_for_issue<Content>(
28249        &self,
28250        owner: &str,
28251        repo: &str,
28252        issue_number: i64,
28253        theContent: Content,
28254    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
28255    where
28256        Content: Copy + TryInto<crate::v1_1_4::request::reactions_create_for_issue::Content<::reqwest::blocking::Body>>,
28257        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::reactions_create_for_issue::Content<::reqwest::blocking::Body>>>::Error>
28258    {
28259        let mut theScheme = AuthScheme::from(&self.config.authentication);
28260
28261        while let Some(auth_step) = theScheme.step()? {
28262            match auth_step {
28263                ::authentic::AuthenticationStep::Request(auth_request) => {
28264                    theScheme.respond(self.client.execute(auth_request));
28265                }
28266                ::authentic::AuthenticationStep::WaitFor(duration) => {
28267                    (self.sleep)(duration);
28268                }
28269            }
28270        }
28271        let theBuilder = crate::v1_1_4::request::reactions_create_for_issue::reqwest_blocking_builder(
28272            self.config.base_url.as_ref(),
28273            owner,
28274            repo,
28275            issue_number,
28276            self.config.user_agent.as_ref(),
28277            self.config.accept.as_deref(),
28278        )?
28279        .with_authentication(&theScheme)?;
28280
28281        let theRequest = crate::v1_1_4::request::reactions_create_for_issue::reqwest_blocking_request(
28282            theBuilder,
28283            theContent.try_into()?,
28284        )?;
28285
28286        ::log::debug!("HTTP request: {:?}", &theRequest);
28287
28288        let theResponse = self.client.execute(theRequest)?;
28289
28290        ::log::debug!("HTTP response: {:?}", &theResponse);
28291
28292        Ok(theResponse)
28293    }
28294
28295    /// Delete an issue reaction
28296    /// 
28297    /// **Note:** You can also specify a repository by `repository_id` using the route `DELETE /repositories/:repository_id/issues/:issue_number/reactions/:reaction_id`.
28298    /// 
28299    /// Delete a reaction to an [issue](https://docs.github.com/rest/reference/issues/).
28300    /// 
28301    /// [API method documentation](https://docs.github.com/rest/reference/reactions#delete-an-issue-reaction)
28302    pub fn reactions_delete_for_issue(
28303        &self,
28304        owner: &str,
28305        repo: &str,
28306        issue_number: i64,
28307        reaction_id: i64,
28308    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28309        let mut theScheme = AuthScheme::from(&self.config.authentication);
28310
28311        while let Some(auth_step) = theScheme.step()? {
28312            match auth_step {
28313                ::authentic::AuthenticationStep::Request(auth_request) => {
28314                    theScheme.respond(self.client.execute(auth_request));
28315                }
28316                ::authentic::AuthenticationStep::WaitFor(duration) => {
28317                    (self.sleep)(duration);
28318                }
28319            }
28320        }
28321        let theBuilder = crate::v1_1_4::request::reactions_delete_for_issue::reqwest_blocking_builder(
28322            self.config.base_url.as_ref(),
28323            owner,
28324            repo,
28325            issue_number,
28326            reaction_id,
28327            self.config.user_agent.as_ref(),
28328            self.config.accept.as_deref(),
28329        )?
28330        .with_authentication(&theScheme)?;
28331
28332        let theRequest =
28333            crate::v1_1_4::request::reactions_delete_for_issue::reqwest_blocking_request(theBuilder)?;
28334
28335        ::log::debug!("HTTP request: {:?}", &theRequest);
28336
28337        let theResponse = self.client.execute(theRequest)?;
28338
28339        ::log::debug!("HTTP response: {:?}", &theResponse);
28340
28341        Ok(theResponse)
28342    }
28343
28344    /// List timeline events for an issue
28345    /// 
28346    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-timeline-events-for-an-issue)
28347    pub fn issues_list_events_for_timeline(
28348        &self,
28349        owner: &str,
28350        repo: &str,
28351        issue_number: i64,
28352        per_page: ::std::option::Option<i64>,
28353        page: ::std::option::Option<i64>,
28354    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28355        let mut theScheme = AuthScheme::from(&self.config.authentication);
28356
28357        while let Some(auth_step) = theScheme.step()? {
28358            match auth_step {
28359                ::authentic::AuthenticationStep::Request(auth_request) => {
28360                    theScheme.respond(self.client.execute(auth_request));
28361                }
28362                ::authentic::AuthenticationStep::WaitFor(duration) => {
28363                    (self.sleep)(duration);
28364                }
28365            }
28366        }
28367        let theBuilder = crate::v1_1_4::request::issues_list_events_for_timeline::reqwest_blocking_builder(
28368            self.config.base_url.as_ref(),
28369            owner,
28370            repo,
28371            issue_number,
28372            per_page,
28373            page,
28374            self.config.user_agent.as_ref(),
28375            self.config.accept.as_deref(),
28376        )?
28377        .with_authentication(&theScheme)?;
28378
28379        let theRequest =
28380            crate::v1_1_4::request::issues_list_events_for_timeline::reqwest_blocking_request(theBuilder)?;
28381
28382        ::log::debug!("HTTP request: {:?}", &theRequest);
28383
28384        let theResponse = self.client.execute(theRequest)?;
28385
28386        ::log::debug!("HTTP response: {:?}", &theResponse);
28387
28388        Ok(theResponse)
28389    }
28390
28391    /// List deploy keys
28392    /// 
28393    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-deploy-keys)
28394    pub fn repos_list_deploy_keys(
28395        &self,
28396        owner: &str,
28397        repo: &str,
28398        per_page: ::std::option::Option<i64>,
28399        page: ::std::option::Option<i64>,
28400    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28401        let mut theScheme = AuthScheme::from(&self.config.authentication);
28402
28403        while let Some(auth_step) = theScheme.step()? {
28404            match auth_step {
28405                ::authentic::AuthenticationStep::Request(auth_request) => {
28406                    theScheme.respond(self.client.execute(auth_request));
28407                }
28408                ::authentic::AuthenticationStep::WaitFor(duration) => {
28409                    (self.sleep)(duration);
28410                }
28411            }
28412        }
28413        let theBuilder = crate::v1_1_4::request::repos_list_deploy_keys::reqwest_blocking_builder(
28414            self.config.base_url.as_ref(),
28415            owner,
28416            repo,
28417            per_page,
28418            page,
28419            self.config.user_agent.as_ref(),
28420            self.config.accept.as_deref(),
28421        )?
28422        .with_authentication(&theScheme)?;
28423
28424        let theRequest =
28425            crate::v1_1_4::request::repos_list_deploy_keys::reqwest_blocking_request(theBuilder)?;
28426
28427        ::log::debug!("HTTP request: {:?}", &theRequest);
28428
28429        let theResponse = self.client.execute(theRequest)?;
28430
28431        ::log::debug!("HTTP response: {:?}", &theResponse);
28432
28433        Ok(theResponse)
28434    }
28435
28436    /// Create a deploy key
28437    /// 
28438    /// You can create a read-only deploy key.
28439    /// 
28440    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-deploy-key)
28441    ///
28442    /// # Content
28443    ///
28444    /// - [`&v1_1_4::request::repos_create_deploy_key::body::Json`](crate::v1_1_4::request::repos_create_deploy_key::body::Json)
28445    pub fn repos_create_deploy_key<Content>(
28446        &self,
28447        owner: &str,
28448        repo: &str,
28449        theContent: Content,
28450    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
28451    where
28452        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_deploy_key::Content<::reqwest::blocking::Body>>,
28453        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_deploy_key::Content<::reqwest::blocking::Body>>>::Error>
28454    {
28455        let mut theScheme = AuthScheme::from(&self.config.authentication);
28456
28457        while let Some(auth_step) = theScheme.step()? {
28458            match auth_step {
28459                ::authentic::AuthenticationStep::Request(auth_request) => {
28460                    theScheme.respond(self.client.execute(auth_request));
28461                }
28462                ::authentic::AuthenticationStep::WaitFor(duration) => {
28463                    (self.sleep)(duration);
28464                }
28465            }
28466        }
28467        let theBuilder = crate::v1_1_4::request::repos_create_deploy_key::reqwest_blocking_builder(
28468            self.config.base_url.as_ref(),
28469            owner,
28470            repo,
28471            self.config.user_agent.as_ref(),
28472            self.config.accept.as_deref(),
28473        )?
28474        .with_authentication(&theScheme)?;
28475
28476        let theRequest = crate::v1_1_4::request::repos_create_deploy_key::reqwest_blocking_request(
28477            theBuilder,
28478            theContent.try_into()?,
28479        )?;
28480
28481        ::log::debug!("HTTP request: {:?}", &theRequest);
28482
28483        let theResponse = self.client.execute(theRequest)?;
28484
28485        ::log::debug!("HTTP response: {:?}", &theResponse);
28486
28487        Ok(theResponse)
28488    }
28489
28490    /// Get a deploy key
28491    /// 
28492    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-deploy-key)
28493    pub fn repos_get_deploy_key(
28494        &self,
28495        owner: &str,
28496        repo: &str,
28497        key_id: i64,
28498    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28499        let mut theScheme = AuthScheme::from(&self.config.authentication);
28500
28501        while let Some(auth_step) = theScheme.step()? {
28502            match auth_step {
28503                ::authentic::AuthenticationStep::Request(auth_request) => {
28504                    theScheme.respond(self.client.execute(auth_request));
28505                }
28506                ::authentic::AuthenticationStep::WaitFor(duration) => {
28507                    (self.sleep)(duration);
28508                }
28509            }
28510        }
28511        let theBuilder = crate::v1_1_4::request::repos_get_deploy_key::reqwest_blocking_builder(
28512            self.config.base_url.as_ref(),
28513            owner,
28514            repo,
28515            key_id,
28516            self.config.user_agent.as_ref(),
28517            self.config.accept.as_deref(),
28518        )?
28519        .with_authentication(&theScheme)?;
28520
28521        let theRequest =
28522            crate::v1_1_4::request::repos_get_deploy_key::reqwest_blocking_request(theBuilder)?;
28523
28524        ::log::debug!("HTTP request: {:?}", &theRequest);
28525
28526        let theResponse = self.client.execute(theRequest)?;
28527
28528        ::log::debug!("HTTP response: {:?}", &theResponse);
28529
28530        Ok(theResponse)
28531    }
28532
28533    /// Delete a deploy key
28534    /// 
28535    /// Deploy keys are immutable. If you need to update a key, remove the key and create a new one instead.
28536    /// 
28537    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-deploy-key)
28538    pub fn repos_delete_deploy_key(
28539        &self,
28540        owner: &str,
28541        repo: &str,
28542        key_id: i64,
28543    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28544        let mut theScheme = AuthScheme::from(&self.config.authentication);
28545
28546        while let Some(auth_step) = theScheme.step()? {
28547            match auth_step {
28548                ::authentic::AuthenticationStep::Request(auth_request) => {
28549                    theScheme.respond(self.client.execute(auth_request));
28550                }
28551                ::authentic::AuthenticationStep::WaitFor(duration) => {
28552                    (self.sleep)(duration);
28553                }
28554            }
28555        }
28556        let theBuilder = crate::v1_1_4::request::repos_delete_deploy_key::reqwest_blocking_builder(
28557            self.config.base_url.as_ref(),
28558            owner,
28559            repo,
28560            key_id,
28561            self.config.user_agent.as_ref(),
28562            self.config.accept.as_deref(),
28563        )?
28564        .with_authentication(&theScheme)?;
28565
28566        let theRequest =
28567            crate::v1_1_4::request::repos_delete_deploy_key::reqwest_blocking_request(theBuilder)?;
28568
28569        ::log::debug!("HTTP request: {:?}", &theRequest);
28570
28571        let theResponse = self.client.execute(theRequest)?;
28572
28573        ::log::debug!("HTTP response: {:?}", &theResponse);
28574
28575        Ok(theResponse)
28576    }
28577
28578    /// List labels for a repository
28579    /// 
28580    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-labels-for-a-repository)
28581    pub fn issues_list_labels_for_repo(
28582        &self,
28583        owner: &str,
28584        repo: &str,
28585        per_page: ::std::option::Option<i64>,
28586        page: ::std::option::Option<i64>,
28587    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28588        let mut theScheme = AuthScheme::from(&self.config.authentication);
28589
28590        while let Some(auth_step) = theScheme.step()? {
28591            match auth_step {
28592                ::authentic::AuthenticationStep::Request(auth_request) => {
28593                    theScheme.respond(self.client.execute(auth_request));
28594                }
28595                ::authentic::AuthenticationStep::WaitFor(duration) => {
28596                    (self.sleep)(duration);
28597                }
28598            }
28599        }
28600        let theBuilder = crate::v1_1_4::request::issues_list_labels_for_repo::reqwest_blocking_builder(
28601            self.config.base_url.as_ref(),
28602            owner,
28603            repo,
28604            per_page,
28605            page,
28606            self.config.user_agent.as_ref(),
28607            self.config.accept.as_deref(),
28608        )?
28609        .with_authentication(&theScheme)?;
28610
28611        let theRequest =
28612            crate::v1_1_4::request::issues_list_labels_for_repo::reqwest_blocking_request(theBuilder)?;
28613
28614        ::log::debug!("HTTP request: {:?}", &theRequest);
28615
28616        let theResponse = self.client.execute(theRequest)?;
28617
28618        ::log::debug!("HTTP response: {:?}", &theResponse);
28619
28620        Ok(theResponse)
28621    }
28622
28623    /// Create a label
28624    /// 
28625    /// [API method documentation](https://docs.github.com/rest/reference/issues#create-a-label)
28626    ///
28627    /// # Content
28628    ///
28629    /// - [`&v1_1_4::request::issues_create_label::body::Json`](crate::v1_1_4::request::issues_create_label::body::Json)
28630    pub fn issues_create_label<Content>(
28631        &self,
28632        owner: &str,
28633        repo: &str,
28634        theContent: Content,
28635    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
28636    where
28637        Content: Copy + TryInto<crate::v1_1_4::request::issues_create_label::Content<::reqwest::blocking::Body>>,
28638        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_create_label::Content<::reqwest::blocking::Body>>>::Error>
28639    {
28640        let mut theScheme = AuthScheme::from(&self.config.authentication);
28641
28642        while let Some(auth_step) = theScheme.step()? {
28643            match auth_step {
28644                ::authentic::AuthenticationStep::Request(auth_request) => {
28645                    theScheme.respond(self.client.execute(auth_request));
28646                }
28647                ::authentic::AuthenticationStep::WaitFor(duration) => {
28648                    (self.sleep)(duration);
28649                }
28650            }
28651        }
28652        let theBuilder = crate::v1_1_4::request::issues_create_label::reqwest_blocking_builder(
28653            self.config.base_url.as_ref(),
28654            owner,
28655            repo,
28656            self.config.user_agent.as_ref(),
28657            self.config.accept.as_deref(),
28658        )?
28659        .with_authentication(&theScheme)?;
28660
28661        let theRequest = crate::v1_1_4::request::issues_create_label::reqwest_blocking_request(
28662            theBuilder,
28663            theContent.try_into()?,
28664        )?;
28665
28666        ::log::debug!("HTTP request: {:?}", &theRequest);
28667
28668        let theResponse = self.client.execute(theRequest)?;
28669
28670        ::log::debug!("HTTP response: {:?}", &theResponse);
28671
28672        Ok(theResponse)
28673    }
28674
28675    /// Get a label
28676    /// 
28677    /// [API method documentation](https://docs.github.com/rest/reference/issues#get-a-label)
28678    pub fn issues_get_label(
28679        &self,
28680        owner: &str,
28681        repo: &str,
28682        name: &str,
28683    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28684        let mut theScheme = AuthScheme::from(&self.config.authentication);
28685
28686        while let Some(auth_step) = theScheme.step()? {
28687            match auth_step {
28688                ::authentic::AuthenticationStep::Request(auth_request) => {
28689                    theScheme.respond(self.client.execute(auth_request));
28690                }
28691                ::authentic::AuthenticationStep::WaitFor(duration) => {
28692                    (self.sleep)(duration);
28693                }
28694            }
28695        }
28696        let theBuilder = crate::v1_1_4::request::issues_get_label::reqwest_blocking_builder(
28697            self.config.base_url.as_ref(),
28698            owner,
28699            repo,
28700            name,
28701            self.config.user_agent.as_ref(),
28702            self.config.accept.as_deref(),
28703        )?
28704        .with_authentication(&theScheme)?;
28705
28706        let theRequest =
28707            crate::v1_1_4::request::issues_get_label::reqwest_blocking_request(theBuilder)?;
28708
28709        ::log::debug!("HTTP request: {:?}", &theRequest);
28710
28711        let theResponse = self.client.execute(theRequest)?;
28712
28713        ::log::debug!("HTTP response: {:?}", &theResponse);
28714
28715        Ok(theResponse)
28716    }
28717
28718    /// Delete a label
28719    /// 
28720    /// [API method documentation](https://docs.github.com/rest/reference/issues#delete-a-label)
28721    pub fn issues_delete_label(
28722        &self,
28723        owner: &str,
28724        repo: &str,
28725        name: &str,
28726    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28727        let mut theScheme = AuthScheme::from(&self.config.authentication);
28728
28729        while let Some(auth_step) = theScheme.step()? {
28730            match auth_step {
28731                ::authentic::AuthenticationStep::Request(auth_request) => {
28732                    theScheme.respond(self.client.execute(auth_request));
28733                }
28734                ::authentic::AuthenticationStep::WaitFor(duration) => {
28735                    (self.sleep)(duration);
28736                }
28737            }
28738        }
28739        let theBuilder = crate::v1_1_4::request::issues_delete_label::reqwest_blocking_builder(
28740            self.config.base_url.as_ref(),
28741            owner,
28742            repo,
28743            name,
28744            self.config.user_agent.as_ref(),
28745            self.config.accept.as_deref(),
28746        )?
28747        .with_authentication(&theScheme)?;
28748
28749        let theRequest =
28750            crate::v1_1_4::request::issues_delete_label::reqwest_blocking_request(theBuilder)?;
28751
28752        ::log::debug!("HTTP request: {:?}", &theRequest);
28753
28754        let theResponse = self.client.execute(theRequest)?;
28755
28756        ::log::debug!("HTTP response: {:?}", &theResponse);
28757
28758        Ok(theResponse)
28759    }
28760
28761    /// Update a label
28762    /// 
28763    /// [API method documentation](https://docs.github.com/rest/reference/issues#update-a-label)
28764    ///
28765    /// # Content
28766    ///
28767    /// - [`&v1_1_4::request::issues_update_label::body::Json`](crate::v1_1_4::request::issues_update_label::body::Json)
28768    pub fn issues_update_label<Content>(
28769        &self,
28770        owner: &str,
28771        repo: &str,
28772        name: &str,
28773        theContent: Content,
28774    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
28775    where
28776        Content: Copy + TryInto<crate::v1_1_4::request::issues_update_label::Content<::reqwest::blocking::Body>>,
28777        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_update_label::Content<::reqwest::blocking::Body>>>::Error>
28778    {
28779        let mut theScheme = AuthScheme::from(&self.config.authentication);
28780
28781        while let Some(auth_step) = theScheme.step()? {
28782            match auth_step {
28783                ::authentic::AuthenticationStep::Request(auth_request) => {
28784                    theScheme.respond(self.client.execute(auth_request));
28785                }
28786                ::authentic::AuthenticationStep::WaitFor(duration) => {
28787                    (self.sleep)(duration);
28788                }
28789            }
28790        }
28791        let theBuilder = crate::v1_1_4::request::issues_update_label::reqwest_blocking_builder(
28792            self.config.base_url.as_ref(),
28793            owner,
28794            repo,
28795            name,
28796            self.config.user_agent.as_ref(),
28797            self.config.accept.as_deref(),
28798        )?
28799        .with_authentication(&theScheme)?;
28800
28801        let theRequest = crate::v1_1_4::request::issues_update_label::reqwest_blocking_request(
28802            theBuilder,
28803            theContent.try_into()?,
28804        )?;
28805
28806        ::log::debug!("HTTP request: {:?}", &theRequest);
28807
28808        let theResponse = self.client.execute(theRequest)?;
28809
28810        ::log::debug!("HTTP response: {:?}", &theResponse);
28811
28812        Ok(theResponse)
28813    }
28814
28815    /// List repository languages
28816    /// 
28817    /// Lists languages for the specified repository. The value shown for each language is the number of bytes of code written in that language.
28818    /// 
28819    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repository-languages)
28820    pub fn repos_list_languages(
28821        &self,
28822        owner: &str,
28823        repo: &str,
28824    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28825        let mut theScheme = AuthScheme::from(&self.config.authentication);
28826
28827        while let Some(auth_step) = theScheme.step()? {
28828            match auth_step {
28829                ::authentic::AuthenticationStep::Request(auth_request) => {
28830                    theScheme.respond(self.client.execute(auth_request));
28831                }
28832                ::authentic::AuthenticationStep::WaitFor(duration) => {
28833                    (self.sleep)(duration);
28834                }
28835            }
28836        }
28837        let theBuilder = crate::v1_1_4::request::repos_list_languages::reqwest_blocking_builder(
28838            self.config.base_url.as_ref(),
28839            owner,
28840            repo,
28841            self.config.user_agent.as_ref(),
28842            self.config.accept.as_deref(),
28843        )?
28844        .with_authentication(&theScheme)?;
28845
28846        let theRequest =
28847            crate::v1_1_4::request::repos_list_languages::reqwest_blocking_request(theBuilder)?;
28848
28849        ::log::debug!("HTTP request: {:?}", &theRequest);
28850
28851        let theResponse = self.client.execute(theRequest)?;
28852
28853        ::log::debug!("HTTP response: {:?}", &theResponse);
28854
28855        Ok(theResponse)
28856    }
28857
28858    /// Enable Git LFS for a repository
28859    /// 
28860    /// [API method documentation](https://docs.github.com/rest/reference/repos#enable-git-lfs-for-a-repository)
28861    pub fn repos_enable_lfs_for_repo(
28862        &self,
28863        owner: &str,
28864        repo: &str,
28865    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28866        let mut theScheme = AuthScheme::from(&self.config.authentication);
28867
28868        while let Some(auth_step) = theScheme.step()? {
28869            match auth_step {
28870                ::authentic::AuthenticationStep::Request(auth_request) => {
28871                    theScheme.respond(self.client.execute(auth_request));
28872                }
28873                ::authentic::AuthenticationStep::WaitFor(duration) => {
28874                    (self.sleep)(duration);
28875                }
28876            }
28877        }
28878        let theBuilder = crate::v1_1_4::request::repos_enable_lfs_for_repo::reqwest_blocking_builder(
28879            self.config.base_url.as_ref(),
28880            owner,
28881            repo,
28882            self.config.user_agent.as_ref(),
28883            self.config.accept.as_deref(),
28884        )?
28885        .with_authentication(&theScheme)?;
28886
28887        let theRequest =
28888            crate::v1_1_4::request::repos_enable_lfs_for_repo::reqwest_blocking_request(theBuilder)?;
28889
28890        ::log::debug!("HTTP request: {:?}", &theRequest);
28891
28892        let theResponse = self.client.execute(theRequest)?;
28893
28894        ::log::debug!("HTTP response: {:?}", &theResponse);
28895
28896        Ok(theResponse)
28897    }
28898
28899    /// Disable Git LFS for a repository
28900    /// 
28901    /// [API method documentation](https://docs.github.com/rest/reference/repos#disable-git-lfs-for-a-repository)
28902    pub fn repos_disable_lfs_for_repo(
28903        &self,
28904        owner: &str,
28905        repo: &str,
28906    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28907        let mut theScheme = AuthScheme::from(&self.config.authentication);
28908
28909        while let Some(auth_step) = theScheme.step()? {
28910            match auth_step {
28911                ::authentic::AuthenticationStep::Request(auth_request) => {
28912                    theScheme.respond(self.client.execute(auth_request));
28913                }
28914                ::authentic::AuthenticationStep::WaitFor(duration) => {
28915                    (self.sleep)(duration);
28916                }
28917            }
28918        }
28919        let theBuilder = crate::v1_1_4::request::repos_disable_lfs_for_repo::reqwest_blocking_builder(
28920            self.config.base_url.as_ref(),
28921            owner,
28922            repo,
28923            self.config.user_agent.as_ref(),
28924            self.config.accept.as_deref(),
28925        )?
28926        .with_authentication(&theScheme)?;
28927
28928        let theRequest =
28929            crate::v1_1_4::request::repos_disable_lfs_for_repo::reqwest_blocking_request(theBuilder)?;
28930
28931        ::log::debug!("HTTP request: {:?}", &theRequest);
28932
28933        let theResponse = self.client.execute(theRequest)?;
28934
28935        ::log::debug!("HTTP response: {:?}", &theResponse);
28936
28937        Ok(theResponse)
28938    }
28939
28940    /// Get the license for a repository
28941    /// 
28942    /// This method returns the contents of the repository's license file, if one is detected.
28943    /// 
28944    /// Similar to [Get repository content](https://docs.github.com/rest/reference/repos#get-repository-content), this method also supports [custom media types](https://docs.github.com/rest/overview/media-types) for retrieving the raw license content or rendered license HTML.
28945    /// 
28946    /// [API method documentation](https://docs.github.com/rest/reference/licenses/#get-the-license-for-a-repository)
28947    pub fn licenses_get_for_repo(
28948        &self,
28949        owner: &str,
28950        repo: &str,
28951    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
28952        let mut theScheme = AuthScheme::from(&self.config.authentication);
28953
28954        while let Some(auth_step) = theScheme.step()? {
28955            match auth_step {
28956                ::authentic::AuthenticationStep::Request(auth_request) => {
28957                    theScheme.respond(self.client.execute(auth_request));
28958                }
28959                ::authentic::AuthenticationStep::WaitFor(duration) => {
28960                    (self.sleep)(duration);
28961                }
28962            }
28963        }
28964        let theBuilder = crate::v1_1_4::request::licenses_get_for_repo::reqwest_blocking_builder(
28965            self.config.base_url.as_ref(),
28966            owner,
28967            repo,
28968            self.config.user_agent.as_ref(),
28969            self.config.accept.as_deref(),
28970        )?
28971        .with_authentication(&theScheme)?;
28972
28973        let theRequest =
28974            crate::v1_1_4::request::licenses_get_for_repo::reqwest_blocking_request(theBuilder)?;
28975
28976        ::log::debug!("HTTP request: {:?}", &theRequest);
28977
28978        let theResponse = self.client.execute(theRequest)?;
28979
28980        ::log::debug!("HTTP response: {:?}", &theResponse);
28981
28982        Ok(theResponse)
28983    }
28984
28985    /// Sync a fork branch with the upstream repository
28986    /// 
28987    /// Sync a branch of a forked repository to keep it up-to-date with the upstream repository.
28988    /// 
28989    /// [API method documentation](https://docs.github.com/rest/reference/repos#sync-a-fork-branch-with-the-upstream-repository)
28990    ///
28991    /// # Content
28992    ///
28993    /// - [`&v1_1_4::request::repos_merge_upstream::body::Json`](crate::v1_1_4::request::repos_merge_upstream::body::Json)
28994    pub fn repos_merge_upstream<Content>(
28995        &self,
28996        owner: &str,
28997        repo: &str,
28998        theContent: Content,
28999    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
29000    where
29001        Content: Copy + TryInto<crate::v1_1_4::request::repos_merge_upstream::Content<::reqwest::blocking::Body>>,
29002        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_merge_upstream::Content<::reqwest::blocking::Body>>>::Error>
29003    {
29004        let mut theScheme = AuthScheme::from(&self.config.authentication);
29005
29006        while let Some(auth_step) = theScheme.step()? {
29007            match auth_step {
29008                ::authentic::AuthenticationStep::Request(auth_request) => {
29009                    theScheme.respond(self.client.execute(auth_request));
29010                }
29011                ::authentic::AuthenticationStep::WaitFor(duration) => {
29012                    (self.sleep)(duration);
29013                }
29014            }
29015        }
29016        let theBuilder = crate::v1_1_4::request::repos_merge_upstream::reqwest_blocking_builder(
29017            self.config.base_url.as_ref(),
29018            owner,
29019            repo,
29020            self.config.user_agent.as_ref(),
29021            self.config.accept.as_deref(),
29022        )?
29023        .with_authentication(&theScheme)?;
29024
29025        let theRequest = crate::v1_1_4::request::repos_merge_upstream::reqwest_blocking_request(
29026            theBuilder,
29027            theContent.try_into()?,
29028        )?;
29029
29030        ::log::debug!("HTTP request: {:?}", &theRequest);
29031
29032        let theResponse = self.client.execute(theRequest)?;
29033
29034        ::log::debug!("HTTP response: {:?}", &theResponse);
29035
29036        Ok(theResponse)
29037    }
29038
29039    /// Merge a branch
29040    /// 
29041    /// [API method documentation](https://docs.github.com/rest/reference/repos#merge-a-branch)
29042    ///
29043    /// # Content
29044    ///
29045    /// - [`&v1_1_4::request::repos_merge::body::Json`](crate::v1_1_4::request::repos_merge::body::Json)
29046    pub fn repos_merge<Content>(
29047        &self,
29048        owner: &str,
29049        repo: &str,
29050        theContent: Content,
29051    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
29052    where
29053        Content: Copy + TryInto<crate::v1_1_4::request::repos_merge::Content<::reqwest::blocking::Body>>,
29054        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_merge::Content<::reqwest::blocking::Body>>>::Error>
29055    {
29056        let mut theScheme = AuthScheme::from(&self.config.authentication);
29057
29058        while let Some(auth_step) = theScheme.step()? {
29059            match auth_step {
29060                ::authentic::AuthenticationStep::Request(auth_request) => {
29061                    theScheme.respond(self.client.execute(auth_request));
29062                }
29063                ::authentic::AuthenticationStep::WaitFor(duration) => {
29064                    (self.sleep)(duration);
29065                }
29066            }
29067        }
29068        let theBuilder = crate::v1_1_4::request::repos_merge::reqwest_blocking_builder(
29069            self.config.base_url.as_ref(),
29070            owner,
29071            repo,
29072            self.config.user_agent.as_ref(),
29073            self.config.accept.as_deref(),
29074        )?
29075        .with_authentication(&theScheme)?;
29076
29077        let theRequest = crate::v1_1_4::request::repos_merge::reqwest_blocking_request(
29078            theBuilder,
29079            theContent.try_into()?,
29080        )?;
29081
29082        ::log::debug!("HTTP request: {:?}", &theRequest);
29083
29084        let theResponse = self.client.execute(theRequest)?;
29085
29086        ::log::debug!("HTTP response: {:?}", &theResponse);
29087
29088        Ok(theResponse)
29089    }
29090
29091    /// List milestones
29092    /// 
29093    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-milestones)
29094    pub fn issues_list_milestones(
29095        &self,
29096        owner: &str,
29097        repo: &str,
29098        state: ::std::option::Option<&str>,
29099        sort: &crate::types::Sort<'_>,
29100        per_page: ::std::option::Option<i64>,
29101        page: ::std::option::Option<i64>,
29102    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29103        let (sort, direction) = sort.extract();
29104        let mut theScheme = AuthScheme::from(&self.config.authentication);
29105
29106        while let Some(auth_step) = theScheme.step()? {
29107            match auth_step {
29108                ::authentic::AuthenticationStep::Request(auth_request) => {
29109                    theScheme.respond(self.client.execute(auth_request));
29110                }
29111                ::authentic::AuthenticationStep::WaitFor(duration) => {
29112                    (self.sleep)(duration);
29113                }
29114            }
29115        }
29116        let theBuilder = crate::v1_1_4::request::issues_list_milestones::reqwest_blocking_builder(
29117            self.config.base_url.as_ref(),
29118            owner,
29119            repo,
29120            state,
29121            sort,
29122            direction,
29123            per_page,
29124            page,
29125            self.config.user_agent.as_ref(),
29126            self.config.accept.as_deref(),
29127        )?
29128        .with_authentication(&theScheme)?;
29129
29130        let theRequest =
29131            crate::v1_1_4::request::issues_list_milestones::reqwest_blocking_request(theBuilder)?;
29132
29133        ::log::debug!("HTTP request: {:?}", &theRequest);
29134
29135        let theResponse = self.client.execute(theRequest)?;
29136
29137        ::log::debug!("HTTP response: {:?}", &theResponse);
29138
29139        Ok(theResponse)
29140    }
29141
29142    /// Create a milestone
29143    /// 
29144    /// [API method documentation](https://docs.github.com/rest/reference/issues#create-a-milestone)
29145    ///
29146    /// # Content
29147    ///
29148    /// - [`&v1_1_4::request::issues_create_milestone::body::Json`](crate::v1_1_4::request::issues_create_milestone::body::Json)
29149    pub fn issues_create_milestone<Content>(
29150        &self,
29151        owner: &str,
29152        repo: &str,
29153        theContent: Content,
29154    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
29155    where
29156        Content: Copy + TryInto<crate::v1_1_4::request::issues_create_milestone::Content<::reqwest::blocking::Body>>,
29157        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_create_milestone::Content<::reqwest::blocking::Body>>>::Error>
29158    {
29159        let mut theScheme = AuthScheme::from(&self.config.authentication);
29160
29161        while let Some(auth_step) = theScheme.step()? {
29162            match auth_step {
29163                ::authentic::AuthenticationStep::Request(auth_request) => {
29164                    theScheme.respond(self.client.execute(auth_request));
29165                }
29166                ::authentic::AuthenticationStep::WaitFor(duration) => {
29167                    (self.sleep)(duration);
29168                }
29169            }
29170        }
29171        let theBuilder = crate::v1_1_4::request::issues_create_milestone::reqwest_blocking_builder(
29172            self.config.base_url.as_ref(),
29173            owner,
29174            repo,
29175            self.config.user_agent.as_ref(),
29176            self.config.accept.as_deref(),
29177        )?
29178        .with_authentication(&theScheme)?;
29179
29180        let theRequest = crate::v1_1_4::request::issues_create_milestone::reqwest_blocking_request(
29181            theBuilder,
29182            theContent.try_into()?,
29183        )?;
29184
29185        ::log::debug!("HTTP request: {:?}", &theRequest);
29186
29187        let theResponse = self.client.execute(theRequest)?;
29188
29189        ::log::debug!("HTTP response: {:?}", &theResponse);
29190
29191        Ok(theResponse)
29192    }
29193
29194    /// Get a milestone
29195    /// 
29196    /// [API method documentation](https://docs.github.com/rest/reference/issues#get-a-milestone)
29197    pub fn issues_get_milestone(
29198        &self,
29199        owner: &str,
29200        repo: &str,
29201        milestone_number: i64,
29202    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29203        let mut theScheme = AuthScheme::from(&self.config.authentication);
29204
29205        while let Some(auth_step) = theScheme.step()? {
29206            match auth_step {
29207                ::authentic::AuthenticationStep::Request(auth_request) => {
29208                    theScheme.respond(self.client.execute(auth_request));
29209                }
29210                ::authentic::AuthenticationStep::WaitFor(duration) => {
29211                    (self.sleep)(duration);
29212                }
29213            }
29214        }
29215        let theBuilder = crate::v1_1_4::request::issues_get_milestone::reqwest_blocking_builder(
29216            self.config.base_url.as_ref(),
29217            owner,
29218            repo,
29219            milestone_number,
29220            self.config.user_agent.as_ref(),
29221            self.config.accept.as_deref(),
29222        )?
29223        .with_authentication(&theScheme)?;
29224
29225        let theRequest =
29226            crate::v1_1_4::request::issues_get_milestone::reqwest_blocking_request(theBuilder)?;
29227
29228        ::log::debug!("HTTP request: {:?}", &theRequest);
29229
29230        let theResponse = self.client.execute(theRequest)?;
29231
29232        ::log::debug!("HTTP response: {:?}", &theResponse);
29233
29234        Ok(theResponse)
29235    }
29236
29237    /// Delete a milestone
29238    /// 
29239    /// [API method documentation](https://docs.github.com/rest/reference/issues#delete-a-milestone)
29240    pub fn issues_delete_milestone(
29241        &self,
29242        owner: &str,
29243        repo: &str,
29244        milestone_number: i64,
29245    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29246        let mut theScheme = AuthScheme::from(&self.config.authentication);
29247
29248        while let Some(auth_step) = theScheme.step()? {
29249            match auth_step {
29250                ::authentic::AuthenticationStep::Request(auth_request) => {
29251                    theScheme.respond(self.client.execute(auth_request));
29252                }
29253                ::authentic::AuthenticationStep::WaitFor(duration) => {
29254                    (self.sleep)(duration);
29255                }
29256            }
29257        }
29258        let theBuilder = crate::v1_1_4::request::issues_delete_milestone::reqwest_blocking_builder(
29259            self.config.base_url.as_ref(),
29260            owner,
29261            repo,
29262            milestone_number,
29263            self.config.user_agent.as_ref(),
29264            self.config.accept.as_deref(),
29265        )?
29266        .with_authentication(&theScheme)?;
29267
29268        let theRequest =
29269            crate::v1_1_4::request::issues_delete_milestone::reqwest_blocking_request(theBuilder)?;
29270
29271        ::log::debug!("HTTP request: {:?}", &theRequest);
29272
29273        let theResponse = self.client.execute(theRequest)?;
29274
29275        ::log::debug!("HTTP response: {:?}", &theResponse);
29276
29277        Ok(theResponse)
29278    }
29279
29280    /// Update a milestone
29281    /// 
29282    /// [API method documentation](https://docs.github.com/rest/reference/issues#update-a-milestone)
29283    ///
29284    /// # Content
29285    ///
29286    /// - [`&v1_1_4::request::issues_update_milestone::body::Json`](crate::v1_1_4::request::issues_update_milestone::body::Json)
29287    pub fn issues_update_milestone<Content>(
29288        &self,
29289        owner: &str,
29290        repo: &str,
29291        milestone_number: i64,
29292        theContent: Content,
29293    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
29294    where
29295        Content: Copy + TryInto<crate::v1_1_4::request::issues_update_milestone::Content<::reqwest::blocking::Body>>,
29296        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::issues_update_milestone::Content<::reqwest::blocking::Body>>>::Error>
29297    {
29298        let mut theScheme = AuthScheme::from(&self.config.authentication);
29299
29300        while let Some(auth_step) = theScheme.step()? {
29301            match auth_step {
29302                ::authentic::AuthenticationStep::Request(auth_request) => {
29303                    theScheme.respond(self.client.execute(auth_request));
29304                }
29305                ::authentic::AuthenticationStep::WaitFor(duration) => {
29306                    (self.sleep)(duration);
29307                }
29308            }
29309        }
29310        let theBuilder = crate::v1_1_4::request::issues_update_milestone::reqwest_blocking_builder(
29311            self.config.base_url.as_ref(),
29312            owner,
29313            repo,
29314            milestone_number,
29315            self.config.user_agent.as_ref(),
29316            self.config.accept.as_deref(),
29317        )?
29318        .with_authentication(&theScheme)?;
29319
29320        let theRequest = crate::v1_1_4::request::issues_update_milestone::reqwest_blocking_request(
29321            theBuilder,
29322            theContent.try_into()?,
29323        )?;
29324
29325        ::log::debug!("HTTP request: {:?}", &theRequest);
29326
29327        let theResponse = self.client.execute(theRequest)?;
29328
29329        ::log::debug!("HTTP response: {:?}", &theResponse);
29330
29331        Ok(theResponse)
29332    }
29333
29334    /// List labels for issues in a milestone
29335    /// 
29336    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-labels-for-issues-in-a-milestone)
29337    pub fn issues_list_labels_for_milestone(
29338        &self,
29339        owner: &str,
29340        repo: &str,
29341        milestone_number: i64,
29342        per_page: ::std::option::Option<i64>,
29343        page: ::std::option::Option<i64>,
29344    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29345        let mut theScheme = AuthScheme::from(&self.config.authentication);
29346
29347        while let Some(auth_step) = theScheme.step()? {
29348            match auth_step {
29349                ::authentic::AuthenticationStep::Request(auth_request) => {
29350                    theScheme.respond(self.client.execute(auth_request));
29351                }
29352                ::authentic::AuthenticationStep::WaitFor(duration) => {
29353                    (self.sleep)(duration);
29354                }
29355            }
29356        }
29357        let theBuilder = crate::v1_1_4::request::issues_list_labels_for_milestone::reqwest_blocking_builder(
29358            self.config.base_url.as_ref(),
29359            owner,
29360            repo,
29361            milestone_number,
29362            per_page,
29363            page,
29364            self.config.user_agent.as_ref(),
29365            self.config.accept.as_deref(),
29366        )?
29367        .with_authentication(&theScheme)?;
29368
29369        let theRequest =
29370            crate::v1_1_4::request::issues_list_labels_for_milestone::reqwest_blocking_request(theBuilder)?;
29371
29372        ::log::debug!("HTTP request: {:?}", &theRequest);
29373
29374        let theResponse = self.client.execute(theRequest)?;
29375
29376        ::log::debug!("HTTP response: {:?}", &theResponse);
29377
29378        Ok(theResponse)
29379    }
29380
29381    /// List repository notifications for the authenticated user
29382    /// 
29383    /// List all notifications for the current user.
29384    /// 
29385    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-repository-notifications-for-the-authenticated-user)
29386    #[allow(clippy::too_many_arguments)]
29387    pub fn activity_list_repo_notifications_for_authenticated_user(
29388        &self,
29389        owner: &str,
29390        repo: &str,
29391        all: ::std::option::Option<bool>,
29392        participating: ::std::option::Option<bool>,
29393        since: ::std::option::Option<&str>,
29394        before: ::std::option::Option<&str>,
29395        per_page: ::std::option::Option<i64>,
29396        page: ::std::option::Option<i64>,
29397    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29398        let mut theScheme = AuthScheme::from(&self.config.authentication);
29399
29400        while let Some(auth_step) = theScheme.step()? {
29401            match auth_step {
29402                ::authentic::AuthenticationStep::Request(auth_request) => {
29403                    theScheme.respond(self.client.execute(auth_request));
29404                }
29405                ::authentic::AuthenticationStep::WaitFor(duration) => {
29406                    (self.sleep)(duration);
29407                }
29408            }
29409        }
29410        let theBuilder = crate::v1_1_4::request::activity_list_repo_notifications_for_authenticated_user::reqwest_blocking_builder(
29411            self.config.base_url.as_ref(),
29412            owner,
29413            repo,
29414            all,
29415            participating,
29416            since,
29417            before,
29418            per_page,
29419            page,
29420            self.config.user_agent.as_ref(),
29421            self.config.accept.as_deref(),
29422        )?
29423        .with_authentication(&theScheme)?;
29424
29425        let theRequest =
29426            crate::v1_1_4::request::activity_list_repo_notifications_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
29427
29428        ::log::debug!("HTTP request: {:?}", &theRequest);
29429
29430        let theResponse = self.client.execute(theRequest)?;
29431
29432        ::log::debug!("HTTP response: {:?}", &theResponse);
29433
29434        Ok(theResponse)
29435    }
29436
29437    /// Mark repository notifications as read
29438    /// 
29439    /// Marks all notifications in a repository as "read" removes them from the [default view on GitHub](https://github.com/notifications). If the number of notifications is too large to complete in one request, you will receive a `202 Accepted` status and GitHub will run an asynchronous process to mark notifications as "read." To check whether any "unread" notifications remain, you can use the [List repository notifications for the authenticated user](https://docs.github.com/rest/reference/activity#list-repository-notifications-for-the-authenticated-user) endpoint and pass the query parameter `all=false`.
29440    /// 
29441    /// [API method documentation](https://docs.github.com/rest/reference/activity#mark-repository-notifications-as-read)
29442    ///
29443    /// # Content
29444    ///
29445    /// - [`&v1_1_4::request::activity_mark_repo_notifications_as_read::body::Json`](crate::v1_1_4::request::activity_mark_repo_notifications_as_read::body::Json)
29446    pub fn activity_mark_repo_notifications_as_read<Content>(
29447        &self,
29448        owner: &str,
29449        repo: &str,
29450        theContent: Content,
29451    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
29452    where
29453        Content: Copy + TryInto<crate::v1_1_4::request::activity_mark_repo_notifications_as_read::Content<::reqwest::blocking::Body>>,
29454        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::activity_mark_repo_notifications_as_read::Content<::reqwest::blocking::Body>>>::Error>
29455    {
29456        let mut theScheme = AuthScheme::from(&self.config.authentication);
29457
29458        while let Some(auth_step) = theScheme.step()? {
29459            match auth_step {
29460                ::authentic::AuthenticationStep::Request(auth_request) => {
29461                    theScheme.respond(self.client.execute(auth_request));
29462                }
29463                ::authentic::AuthenticationStep::WaitFor(duration) => {
29464                    (self.sleep)(duration);
29465                }
29466            }
29467        }
29468        let theBuilder = crate::v1_1_4::request::activity_mark_repo_notifications_as_read::reqwest_blocking_builder(
29469            self.config.base_url.as_ref(),
29470            owner,
29471            repo,
29472            self.config.user_agent.as_ref(),
29473            self.config.accept.as_deref(),
29474        )?
29475        .with_authentication(&theScheme)?;
29476
29477        let theRequest = crate::v1_1_4::request::activity_mark_repo_notifications_as_read::reqwest_blocking_request(
29478            theBuilder,
29479            theContent.try_into()?,
29480        )?;
29481
29482        ::log::debug!("HTTP request: {:?}", &theRequest);
29483
29484        let theResponse = self.client.execute(theRequest)?;
29485
29486        ::log::debug!("HTTP response: {:?}", &theResponse);
29487
29488        Ok(theResponse)
29489    }
29490
29491    /// Get a GitHub Pages site
29492    /// 
29493    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-github-pages-site)
29494    pub fn repos_get_pages(
29495        &self,
29496        owner: &str,
29497        repo: &str,
29498    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29499        let mut theScheme = AuthScheme::from(&self.config.authentication);
29500
29501        while let Some(auth_step) = theScheme.step()? {
29502            match auth_step {
29503                ::authentic::AuthenticationStep::Request(auth_request) => {
29504                    theScheme.respond(self.client.execute(auth_request));
29505                }
29506                ::authentic::AuthenticationStep::WaitFor(duration) => {
29507                    (self.sleep)(duration);
29508                }
29509            }
29510        }
29511        let theBuilder = crate::v1_1_4::request::repos_get_pages::reqwest_blocking_builder(
29512            self.config.base_url.as_ref(),
29513            owner,
29514            repo,
29515            self.config.user_agent.as_ref(),
29516            self.config.accept.as_deref(),
29517        )?
29518        .with_authentication(&theScheme)?;
29519
29520        let theRequest =
29521            crate::v1_1_4::request::repos_get_pages::reqwest_blocking_request(theBuilder)?;
29522
29523        ::log::debug!("HTTP request: {:?}", &theRequest);
29524
29525        let theResponse = self.client.execute(theRequest)?;
29526
29527        ::log::debug!("HTTP response: {:?}", &theResponse);
29528
29529        Ok(theResponse)
29530    }
29531
29532    /// Update information about a GitHub Pages site
29533    /// 
29534    /// Updates information for a GitHub Pages site. For more information, see "[About GitHub Pages](/github/working-with-github-pages/about-github-pages).
29535    /// 
29536    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-information-about-a-github-pages-site)
29537    ///
29538    /// # Content
29539    ///
29540    /// - [`&v1_1_4::request::repos_update_information_about_pages_site::body::Json`](crate::v1_1_4::request::repos_update_information_about_pages_site::body::Json)
29541    pub fn repos_update_information_about_pages_site<Content>(
29542        &self,
29543        owner: &str,
29544        repo: &str,
29545        theContent: Content,
29546    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
29547    where
29548        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_information_about_pages_site::Content<::reqwest::blocking::Body>>,
29549        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_information_about_pages_site::Content<::reqwest::blocking::Body>>>::Error>
29550    {
29551        let mut theScheme = AuthScheme::from(&self.config.authentication);
29552
29553        while let Some(auth_step) = theScheme.step()? {
29554            match auth_step {
29555                ::authentic::AuthenticationStep::Request(auth_request) => {
29556                    theScheme.respond(self.client.execute(auth_request));
29557                }
29558                ::authentic::AuthenticationStep::WaitFor(duration) => {
29559                    (self.sleep)(duration);
29560                }
29561            }
29562        }
29563        let theBuilder = crate::v1_1_4::request::repos_update_information_about_pages_site::reqwest_blocking_builder(
29564            self.config.base_url.as_ref(),
29565            owner,
29566            repo,
29567            self.config.user_agent.as_ref(),
29568            self.config.accept.as_deref(),
29569        )?
29570        .with_authentication(&theScheme)?;
29571
29572        let theRequest = crate::v1_1_4::request::repos_update_information_about_pages_site::reqwest_blocking_request(
29573            theBuilder,
29574            theContent.try_into()?,
29575        )?;
29576
29577        ::log::debug!("HTTP request: {:?}", &theRequest);
29578
29579        let theResponse = self.client.execute(theRequest)?;
29580
29581        ::log::debug!("HTTP response: {:?}", &theResponse);
29582
29583        Ok(theResponse)
29584    }
29585
29586    /// Create a GitHub Pages site
29587    /// 
29588    /// Configures a GitHub Pages site. For more information, see "[About GitHub Pages](/github/working-with-github-pages/about-github-pages)."
29589    /// 
29590    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-github-pages-site)
29591    ///
29592    /// # Content
29593    ///
29594    /// - [`&::std::option::Option<crate::v1_1_4::request::repos_create_pages_site::body::Json>`](crate::v1_1_4::request::repos_create_pages_site::body::Json)
29595    pub fn repos_create_pages_site<Content>(
29596        &self,
29597        owner: &str,
29598        repo: &str,
29599        theContent: Content,
29600    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
29601    where
29602        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_pages_site::Content<::reqwest::blocking::Body>>,
29603        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_pages_site::Content<::reqwest::blocking::Body>>>::Error>
29604    {
29605        let mut theScheme = AuthScheme::from(&self.config.authentication);
29606
29607        while let Some(auth_step) = theScheme.step()? {
29608            match auth_step {
29609                ::authentic::AuthenticationStep::Request(auth_request) => {
29610                    theScheme.respond(self.client.execute(auth_request));
29611                }
29612                ::authentic::AuthenticationStep::WaitFor(duration) => {
29613                    (self.sleep)(duration);
29614                }
29615            }
29616        }
29617        let theBuilder = crate::v1_1_4::request::repos_create_pages_site::reqwest_blocking_builder(
29618            self.config.base_url.as_ref(),
29619            owner,
29620            repo,
29621            self.config.user_agent.as_ref(),
29622            self.config.accept.as_deref(),
29623        )?
29624        .with_authentication(&theScheme)?;
29625
29626        let theRequest = crate::v1_1_4::request::repos_create_pages_site::reqwest_blocking_request(
29627            theBuilder,
29628            theContent.try_into()?,
29629        )?;
29630
29631        ::log::debug!("HTTP request: {:?}", &theRequest);
29632
29633        let theResponse = self.client.execute(theRequest)?;
29634
29635        ::log::debug!("HTTP response: {:?}", &theResponse);
29636
29637        Ok(theResponse)
29638    }
29639
29640    /// Delete a GitHub Pages site
29641    /// 
29642    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-github-pages-site)
29643    pub fn repos_delete_pages_site(
29644        &self,
29645        owner: &str,
29646        repo: &str,
29647    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29648        let mut theScheme = AuthScheme::from(&self.config.authentication);
29649
29650        while let Some(auth_step) = theScheme.step()? {
29651            match auth_step {
29652                ::authentic::AuthenticationStep::Request(auth_request) => {
29653                    theScheme.respond(self.client.execute(auth_request));
29654                }
29655                ::authentic::AuthenticationStep::WaitFor(duration) => {
29656                    (self.sleep)(duration);
29657                }
29658            }
29659        }
29660        let theBuilder = crate::v1_1_4::request::repos_delete_pages_site::reqwest_blocking_builder(
29661            self.config.base_url.as_ref(),
29662            owner,
29663            repo,
29664            self.config.user_agent.as_ref(),
29665            self.config.accept.as_deref(),
29666        )?
29667        .with_authentication(&theScheme)?;
29668
29669        let theRequest =
29670            crate::v1_1_4::request::repos_delete_pages_site::reqwest_blocking_request(theBuilder)?;
29671
29672        ::log::debug!("HTTP request: {:?}", &theRequest);
29673
29674        let theResponse = self.client.execute(theRequest)?;
29675
29676        ::log::debug!("HTTP response: {:?}", &theResponse);
29677
29678        Ok(theResponse)
29679    }
29680
29681    /// List GitHub Pages builds
29682    /// 
29683    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-github-pages-builds)
29684    pub fn repos_list_pages_builds(
29685        &self,
29686        owner: &str,
29687        repo: &str,
29688        per_page: ::std::option::Option<i64>,
29689        page: ::std::option::Option<i64>,
29690    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29691        let mut theScheme = AuthScheme::from(&self.config.authentication);
29692
29693        while let Some(auth_step) = theScheme.step()? {
29694            match auth_step {
29695                ::authentic::AuthenticationStep::Request(auth_request) => {
29696                    theScheme.respond(self.client.execute(auth_request));
29697                }
29698                ::authentic::AuthenticationStep::WaitFor(duration) => {
29699                    (self.sleep)(duration);
29700                }
29701            }
29702        }
29703        let theBuilder = crate::v1_1_4::request::repos_list_pages_builds::reqwest_blocking_builder(
29704            self.config.base_url.as_ref(),
29705            owner,
29706            repo,
29707            per_page,
29708            page,
29709            self.config.user_agent.as_ref(),
29710            self.config.accept.as_deref(),
29711        )?
29712        .with_authentication(&theScheme)?;
29713
29714        let theRequest =
29715            crate::v1_1_4::request::repos_list_pages_builds::reqwest_blocking_request(theBuilder)?;
29716
29717        ::log::debug!("HTTP request: {:?}", &theRequest);
29718
29719        let theResponse = self.client.execute(theRequest)?;
29720
29721        ::log::debug!("HTTP response: {:?}", &theResponse);
29722
29723        Ok(theResponse)
29724    }
29725
29726    /// Request a GitHub Pages build
29727    /// 
29728    /// You can request that your site be built from the latest revision on the default branch. This has the same effect as pushing a commit to your default branch, but does not require an additional commit. Manually triggering page builds can be helpful when diagnosing build warnings and failures.
29729    /// 
29730    /// Build requests are limited to one concurrent build per repository and one concurrent build per requester. If you request a build while another is still in progress, the second request will be queued until the first completes.
29731    /// 
29732    /// [API method documentation](https://docs.github.com/rest/reference/repos#request-a-github-pages-build)
29733    pub fn repos_request_pages_build(
29734        &self,
29735        owner: &str,
29736        repo: &str,
29737    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29738        let mut theScheme = AuthScheme::from(&self.config.authentication);
29739
29740        while let Some(auth_step) = theScheme.step()? {
29741            match auth_step {
29742                ::authentic::AuthenticationStep::Request(auth_request) => {
29743                    theScheme.respond(self.client.execute(auth_request));
29744                }
29745                ::authentic::AuthenticationStep::WaitFor(duration) => {
29746                    (self.sleep)(duration);
29747                }
29748            }
29749        }
29750        let theBuilder = crate::v1_1_4::request::repos_request_pages_build::reqwest_blocking_builder(
29751            self.config.base_url.as_ref(),
29752            owner,
29753            repo,
29754            self.config.user_agent.as_ref(),
29755            self.config.accept.as_deref(),
29756        )?
29757        .with_authentication(&theScheme)?;
29758
29759        let theRequest =
29760            crate::v1_1_4::request::repos_request_pages_build::reqwest_blocking_request(theBuilder)?;
29761
29762        ::log::debug!("HTTP request: {:?}", &theRequest);
29763
29764        let theResponse = self.client.execute(theRequest)?;
29765
29766        ::log::debug!("HTTP response: {:?}", &theResponse);
29767
29768        Ok(theResponse)
29769    }
29770
29771    /// Get latest Pages build
29772    /// 
29773    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-latest-pages-build)
29774    pub fn repos_get_latest_pages_build(
29775        &self,
29776        owner: &str,
29777        repo: &str,
29778    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29779        let mut theScheme = AuthScheme::from(&self.config.authentication);
29780
29781        while let Some(auth_step) = theScheme.step()? {
29782            match auth_step {
29783                ::authentic::AuthenticationStep::Request(auth_request) => {
29784                    theScheme.respond(self.client.execute(auth_request));
29785                }
29786                ::authentic::AuthenticationStep::WaitFor(duration) => {
29787                    (self.sleep)(duration);
29788                }
29789            }
29790        }
29791        let theBuilder = crate::v1_1_4::request::repos_get_latest_pages_build::reqwest_blocking_builder(
29792            self.config.base_url.as_ref(),
29793            owner,
29794            repo,
29795            self.config.user_agent.as_ref(),
29796            self.config.accept.as_deref(),
29797        )?
29798        .with_authentication(&theScheme)?;
29799
29800        let theRequest =
29801            crate::v1_1_4::request::repos_get_latest_pages_build::reqwest_blocking_request(theBuilder)?;
29802
29803        ::log::debug!("HTTP request: {:?}", &theRequest);
29804
29805        let theResponse = self.client.execute(theRequest)?;
29806
29807        ::log::debug!("HTTP response: {:?}", &theResponse);
29808
29809        Ok(theResponse)
29810    }
29811
29812    /// Get GitHub Pages build
29813    /// 
29814    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-github-pages-build)
29815    pub fn repos_get_pages_build(
29816        &self,
29817        owner: &str,
29818        repo: &str,
29819        build_id: i64,
29820    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29821        let mut theScheme = AuthScheme::from(&self.config.authentication);
29822
29823        while let Some(auth_step) = theScheme.step()? {
29824            match auth_step {
29825                ::authentic::AuthenticationStep::Request(auth_request) => {
29826                    theScheme.respond(self.client.execute(auth_request));
29827                }
29828                ::authentic::AuthenticationStep::WaitFor(duration) => {
29829                    (self.sleep)(duration);
29830                }
29831            }
29832        }
29833        let theBuilder = crate::v1_1_4::request::repos_get_pages_build::reqwest_blocking_builder(
29834            self.config.base_url.as_ref(),
29835            owner,
29836            repo,
29837            build_id,
29838            self.config.user_agent.as_ref(),
29839            self.config.accept.as_deref(),
29840        )?
29841        .with_authentication(&theScheme)?;
29842
29843        let theRequest =
29844            crate::v1_1_4::request::repos_get_pages_build::reqwest_blocking_request(theBuilder)?;
29845
29846        ::log::debug!("HTTP request: {:?}", &theRequest);
29847
29848        let theResponse = self.client.execute(theRequest)?;
29849
29850        ::log::debug!("HTTP response: {:?}", &theResponse);
29851
29852        Ok(theResponse)
29853    }
29854
29855    /// Get a DNS health check for GitHub Pages
29856    /// 
29857    /// Gets a health check of the DNS settings for the `CNAME` record configured for a repository's GitHub Pages.
29858    /// 
29859    /// The first request to this endpoint returns a `202 Accepted` status and starts an asynchronous background task to get the results for the domain. After the background task completes, subsequent requests to this endpoint return a `200 OK` status with the health check results in the response.
29860    /// 
29861    /// Users must have admin or owner permissions. GitHub Apps must have the `pages:write` and `administration:write` permission to use this endpoint.
29862    /// 
29863    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-dns-health-check-for-github-pages)
29864    pub fn repos_get_pages_health_check(
29865        &self,
29866        owner: &str,
29867        repo: &str,
29868    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29869        let mut theScheme = AuthScheme::from(&self.config.authentication);
29870
29871        while let Some(auth_step) = theScheme.step()? {
29872            match auth_step {
29873                ::authentic::AuthenticationStep::Request(auth_request) => {
29874                    theScheme.respond(self.client.execute(auth_request));
29875                }
29876                ::authentic::AuthenticationStep::WaitFor(duration) => {
29877                    (self.sleep)(duration);
29878                }
29879            }
29880        }
29881        let theBuilder = crate::v1_1_4::request::repos_get_pages_health_check::reqwest_blocking_builder(
29882            self.config.base_url.as_ref(),
29883            owner,
29884            repo,
29885            self.config.user_agent.as_ref(),
29886            self.config.accept.as_deref(),
29887        )?
29888        .with_authentication(&theScheme)?;
29889
29890        let theRequest =
29891            crate::v1_1_4::request::repos_get_pages_health_check::reqwest_blocking_request(theBuilder)?;
29892
29893        ::log::debug!("HTTP request: {:?}", &theRequest);
29894
29895        let theResponse = self.client.execute(theRequest)?;
29896
29897        ::log::debug!("HTTP response: {:?}", &theResponse);
29898
29899        Ok(theResponse)
29900    }
29901
29902    /// List repository projects
29903    /// 
29904    /// Lists the projects in a repository. Returns a `404 Not Found` status if projects are disabled in the repository. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned.
29905    /// 
29906    /// [API method documentation](https://docs.github.com/rest/reference/projects#list-repository-projects)
29907    pub fn projects_list_for_repo(
29908        &self,
29909        owner: &str,
29910        repo: &str,
29911        state: ::std::option::Option<&str>,
29912        per_page: ::std::option::Option<i64>,
29913        page: ::std::option::Option<i64>,
29914    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
29915        let mut theScheme = AuthScheme::from(&self.config.authentication);
29916
29917        while let Some(auth_step) = theScheme.step()? {
29918            match auth_step {
29919                ::authentic::AuthenticationStep::Request(auth_request) => {
29920                    theScheme.respond(self.client.execute(auth_request));
29921                }
29922                ::authentic::AuthenticationStep::WaitFor(duration) => {
29923                    (self.sleep)(duration);
29924                }
29925            }
29926        }
29927        let theBuilder = crate::v1_1_4::request::projects_list_for_repo::reqwest_blocking_builder(
29928            self.config.base_url.as_ref(),
29929            owner,
29930            repo,
29931            state,
29932            per_page,
29933            page,
29934            self.config.user_agent.as_ref(),
29935            self.config.accept.as_deref(),
29936        )?
29937        .with_authentication(&theScheme)?;
29938
29939        let theRequest =
29940            crate::v1_1_4::request::projects_list_for_repo::reqwest_blocking_request(theBuilder)?;
29941
29942        ::log::debug!("HTTP request: {:?}", &theRequest);
29943
29944        let theResponse = self.client.execute(theRequest)?;
29945
29946        ::log::debug!("HTTP response: {:?}", &theResponse);
29947
29948        Ok(theResponse)
29949    }
29950
29951    /// Create a repository project
29952    /// 
29953    /// Creates a repository project board. Returns a `404 Not Found` status if projects are disabled in the repository. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned.
29954    /// 
29955    /// [API method documentation](https://docs.github.com/rest/reference/projects#create-a-repository-project)
29956    ///
29957    /// # Content
29958    ///
29959    /// - [`&v1_1_4::request::projects_create_for_repo::body::Json`](crate::v1_1_4::request::projects_create_for_repo::body::Json)
29960    pub fn projects_create_for_repo<Content>(
29961        &self,
29962        owner: &str,
29963        repo: &str,
29964        theContent: Content,
29965    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
29966    where
29967        Content: Copy + TryInto<crate::v1_1_4::request::projects_create_for_repo::Content<::reqwest::blocking::Body>>,
29968        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_create_for_repo::Content<::reqwest::blocking::Body>>>::Error>
29969    {
29970        let mut theScheme = AuthScheme::from(&self.config.authentication);
29971
29972        while let Some(auth_step) = theScheme.step()? {
29973            match auth_step {
29974                ::authentic::AuthenticationStep::Request(auth_request) => {
29975                    theScheme.respond(self.client.execute(auth_request));
29976                }
29977                ::authentic::AuthenticationStep::WaitFor(duration) => {
29978                    (self.sleep)(duration);
29979                }
29980            }
29981        }
29982        let theBuilder = crate::v1_1_4::request::projects_create_for_repo::reqwest_blocking_builder(
29983            self.config.base_url.as_ref(),
29984            owner,
29985            repo,
29986            self.config.user_agent.as_ref(),
29987            self.config.accept.as_deref(),
29988        )?
29989        .with_authentication(&theScheme)?;
29990
29991        let theRequest = crate::v1_1_4::request::projects_create_for_repo::reqwest_blocking_request(
29992            theBuilder,
29993            theContent.try_into()?,
29994        )?;
29995
29996        ::log::debug!("HTTP request: {:?}", &theRequest);
29997
29998        let theResponse = self.client.execute(theRequest)?;
29999
30000        ::log::debug!("HTTP response: {:?}", &theResponse);
30001
30002        Ok(theResponse)
30003    }
30004
30005    /// List pull requests
30006    /// 
30007    /// Draft pull requests are available in public repositories with GitHub Free and GitHub Free for organizations, GitHub Pro, and legacy per-repository billing plans, and in public and private repositories with GitHub Team and GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
30008    /// 
30009    /// [API method documentation](https://docs.github.com/rest/reference/pulls#list-pull-requests)
30010    #[allow(clippy::too_many_arguments)]
30011    pub fn pulls_list(
30012        &self,
30013        owner: &str,
30014        repo: &str,
30015        state: ::std::option::Option<&str>,
30016        head: ::std::option::Option<&str>,
30017        base: ::std::option::Option<&str>,
30018        sort: &crate::types::Sort<'_>,
30019        per_page: ::std::option::Option<i64>,
30020        page: ::std::option::Option<i64>,
30021    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30022        let (sort, direction) = sort.extract();
30023        let mut theScheme = AuthScheme::from(&self.config.authentication);
30024
30025        while let Some(auth_step) = theScheme.step()? {
30026            match auth_step {
30027                ::authentic::AuthenticationStep::Request(auth_request) => {
30028                    theScheme.respond(self.client.execute(auth_request));
30029                }
30030                ::authentic::AuthenticationStep::WaitFor(duration) => {
30031                    (self.sleep)(duration);
30032                }
30033            }
30034        }
30035        let theBuilder = crate::v1_1_4::request::pulls_list::reqwest_blocking_builder(
30036            self.config.base_url.as_ref(),
30037            owner,
30038            repo,
30039            state,
30040            head,
30041            base,
30042            sort,
30043            direction,
30044            per_page,
30045            page,
30046            self.config.user_agent.as_ref(),
30047            self.config.accept.as_deref(),
30048        )?
30049        .with_authentication(&theScheme)?;
30050
30051        let theRequest =
30052            crate::v1_1_4::request::pulls_list::reqwest_blocking_request(theBuilder)?;
30053
30054        ::log::debug!("HTTP request: {:?}", &theRequest);
30055
30056        let theResponse = self.client.execute(theRequest)?;
30057
30058        ::log::debug!("HTTP response: {:?}", &theResponse);
30059
30060        Ok(theResponse)
30061    }
30062
30063    /// Create a pull request
30064    /// 
30065    /// Draft pull requests are available in public repositories with GitHub Free and GitHub Free for organizations, GitHub Pro, and legacy per-repository billing plans, and in public and private repositories with GitHub Team and GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
30066    /// 
30067    /// To open or update a pull request in a public repository, you must have write access to the head or the source branch. For organization-owned repositories, you must be a member of the organization that owns the repository to open or update a pull request.
30068    /// 
30069    /// You can create a new pull request.
30070    /// 
30071    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-rate-limits)" for details.
30072    /// 
30073    /// [API method documentation](https://docs.github.com/rest/reference/pulls#create-a-pull-request)
30074    ///
30075    /// # Content
30076    ///
30077    /// - [`&v1_1_4::request::pulls_create::body::Json`](crate::v1_1_4::request::pulls_create::body::Json)
30078    pub fn pulls_create<Content>(
30079        &self,
30080        owner: &str,
30081        repo: &str,
30082        theContent: Content,
30083    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
30084    where
30085        Content: Copy + TryInto<crate::v1_1_4::request::pulls_create::Content<::reqwest::blocking::Body>>,
30086        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_create::Content<::reqwest::blocking::Body>>>::Error>
30087    {
30088        let mut theScheme = AuthScheme::from(&self.config.authentication);
30089
30090        while let Some(auth_step) = theScheme.step()? {
30091            match auth_step {
30092                ::authentic::AuthenticationStep::Request(auth_request) => {
30093                    theScheme.respond(self.client.execute(auth_request));
30094                }
30095                ::authentic::AuthenticationStep::WaitFor(duration) => {
30096                    (self.sleep)(duration);
30097                }
30098            }
30099        }
30100        let theBuilder = crate::v1_1_4::request::pulls_create::reqwest_blocking_builder(
30101            self.config.base_url.as_ref(),
30102            owner,
30103            repo,
30104            self.config.user_agent.as_ref(),
30105            self.config.accept.as_deref(),
30106        )?
30107        .with_authentication(&theScheme)?;
30108
30109        let theRequest = crate::v1_1_4::request::pulls_create::reqwest_blocking_request(
30110            theBuilder,
30111            theContent.try_into()?,
30112        )?;
30113
30114        ::log::debug!("HTTP request: {:?}", &theRequest);
30115
30116        let theResponse = self.client.execute(theRequest)?;
30117
30118        ::log::debug!("HTTP response: {:?}", &theResponse);
30119
30120        Ok(theResponse)
30121    }
30122
30123    /// List review comments in a repository
30124    /// 
30125    /// Lists review comments for all pull requests in a repository. By default, review comments are in ascending order by ID.
30126    /// 
30127    /// [API method documentation](https://docs.github.com/rest/reference/pulls#list-review-comments-in-a-repository)
30128    pub fn pulls_list_review_comments_for_repo(
30129        &self,
30130        owner: &str,
30131        repo: &str,
30132        sort: &crate::types::Sort<'_>,
30133        since: ::std::option::Option<&str>,
30134        per_page: ::std::option::Option<i64>,
30135        page: ::std::option::Option<i64>,
30136    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30137        let (sort, direction) = sort.extract();
30138        let mut theScheme = AuthScheme::from(&self.config.authentication);
30139
30140        while let Some(auth_step) = theScheme.step()? {
30141            match auth_step {
30142                ::authentic::AuthenticationStep::Request(auth_request) => {
30143                    theScheme.respond(self.client.execute(auth_request));
30144                }
30145                ::authentic::AuthenticationStep::WaitFor(duration) => {
30146                    (self.sleep)(duration);
30147                }
30148            }
30149        }
30150        let theBuilder = crate::v1_1_4::request::pulls_list_review_comments_for_repo::reqwest_blocking_builder(
30151            self.config.base_url.as_ref(),
30152            owner,
30153            repo,
30154            sort,
30155            direction,
30156            since,
30157            per_page,
30158            page,
30159            self.config.user_agent.as_ref(),
30160            self.config.accept.as_deref(),
30161        )?
30162        .with_authentication(&theScheme)?;
30163
30164        let theRequest =
30165            crate::v1_1_4::request::pulls_list_review_comments_for_repo::reqwest_blocking_request(theBuilder)?;
30166
30167        ::log::debug!("HTTP request: {:?}", &theRequest);
30168
30169        let theResponse = self.client.execute(theRequest)?;
30170
30171        ::log::debug!("HTTP response: {:?}", &theResponse);
30172
30173        Ok(theResponse)
30174    }
30175
30176    /// Get a review comment for a pull request
30177    /// 
30178    /// Provides details for a review comment.
30179    /// 
30180    /// [API method documentation](https://docs.github.com/rest/reference/pulls#get-a-review-comment-for-a-pull-request)
30181    pub fn pulls_get_review_comment(
30182        &self,
30183        owner: &str,
30184        repo: &str,
30185        comment_id: i64,
30186    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30187        let mut theScheme = AuthScheme::from(&self.config.authentication);
30188
30189        while let Some(auth_step) = theScheme.step()? {
30190            match auth_step {
30191                ::authentic::AuthenticationStep::Request(auth_request) => {
30192                    theScheme.respond(self.client.execute(auth_request));
30193                }
30194                ::authentic::AuthenticationStep::WaitFor(duration) => {
30195                    (self.sleep)(duration);
30196                }
30197            }
30198        }
30199        let theBuilder = crate::v1_1_4::request::pulls_get_review_comment::reqwest_blocking_builder(
30200            self.config.base_url.as_ref(),
30201            owner,
30202            repo,
30203            comment_id,
30204            self.config.user_agent.as_ref(),
30205            self.config.accept.as_deref(),
30206        )?
30207        .with_authentication(&theScheme)?;
30208
30209        let theRequest =
30210            crate::v1_1_4::request::pulls_get_review_comment::reqwest_blocking_request(theBuilder)?;
30211
30212        ::log::debug!("HTTP request: {:?}", &theRequest);
30213
30214        let theResponse = self.client.execute(theRequest)?;
30215
30216        ::log::debug!("HTTP response: {:?}", &theResponse);
30217
30218        Ok(theResponse)
30219    }
30220
30221    /// Delete a review comment for a pull request
30222    /// 
30223    /// Deletes a review comment.
30224    /// 
30225    /// [API method documentation](https://docs.github.com/rest/reference/pulls#delete-a-review-comment-for-a-pull-request)
30226    pub fn pulls_delete_review_comment(
30227        &self,
30228        owner: &str,
30229        repo: &str,
30230        comment_id: i64,
30231    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30232        let mut theScheme = AuthScheme::from(&self.config.authentication);
30233
30234        while let Some(auth_step) = theScheme.step()? {
30235            match auth_step {
30236                ::authentic::AuthenticationStep::Request(auth_request) => {
30237                    theScheme.respond(self.client.execute(auth_request));
30238                }
30239                ::authentic::AuthenticationStep::WaitFor(duration) => {
30240                    (self.sleep)(duration);
30241                }
30242            }
30243        }
30244        let theBuilder = crate::v1_1_4::request::pulls_delete_review_comment::reqwest_blocking_builder(
30245            self.config.base_url.as_ref(),
30246            owner,
30247            repo,
30248            comment_id,
30249            self.config.user_agent.as_ref(),
30250            self.config.accept.as_deref(),
30251        )?
30252        .with_authentication(&theScheme)?;
30253
30254        let theRequest =
30255            crate::v1_1_4::request::pulls_delete_review_comment::reqwest_blocking_request(theBuilder)?;
30256
30257        ::log::debug!("HTTP request: {:?}", &theRequest);
30258
30259        let theResponse = self.client.execute(theRequest)?;
30260
30261        ::log::debug!("HTTP response: {:?}", &theResponse);
30262
30263        Ok(theResponse)
30264    }
30265
30266    /// Update a review comment for a pull request
30267    /// 
30268    /// Enables you to edit a review comment.
30269    /// 
30270    /// [API method documentation](https://docs.github.com/rest/reference/pulls#update-a-review-comment-for-a-pull-request)
30271    ///
30272    /// # Content
30273    ///
30274    /// - [`&v1_1_4::request::pulls_update_review_comment::body::Json`](crate::v1_1_4::request::pulls_update_review_comment::body::Json)
30275    pub fn pulls_update_review_comment<Content>(
30276        &self,
30277        owner: &str,
30278        repo: &str,
30279        comment_id: i64,
30280        theContent: Content,
30281    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
30282    where
30283        Content: Copy + TryInto<crate::v1_1_4::request::pulls_update_review_comment::Content<::reqwest::blocking::Body>>,
30284        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_update_review_comment::Content<::reqwest::blocking::Body>>>::Error>
30285    {
30286        let mut theScheme = AuthScheme::from(&self.config.authentication);
30287
30288        while let Some(auth_step) = theScheme.step()? {
30289            match auth_step {
30290                ::authentic::AuthenticationStep::Request(auth_request) => {
30291                    theScheme.respond(self.client.execute(auth_request));
30292                }
30293                ::authentic::AuthenticationStep::WaitFor(duration) => {
30294                    (self.sleep)(duration);
30295                }
30296            }
30297        }
30298        let theBuilder = crate::v1_1_4::request::pulls_update_review_comment::reqwest_blocking_builder(
30299            self.config.base_url.as_ref(),
30300            owner,
30301            repo,
30302            comment_id,
30303            self.config.user_agent.as_ref(),
30304            self.config.accept.as_deref(),
30305        )?
30306        .with_authentication(&theScheme)?;
30307
30308        let theRequest = crate::v1_1_4::request::pulls_update_review_comment::reqwest_blocking_request(
30309            theBuilder,
30310            theContent.try_into()?,
30311        )?;
30312
30313        ::log::debug!("HTTP request: {:?}", &theRequest);
30314
30315        let theResponse = self.client.execute(theRequest)?;
30316
30317        ::log::debug!("HTTP response: {:?}", &theResponse);
30318
30319        Ok(theResponse)
30320    }
30321
30322    /// List reactions for a pull request review comment
30323    /// 
30324    /// List the reactions to a [pull request review comment](https://docs.github.com/rest/reference/pulls#review-comments).
30325    /// 
30326    /// [API method documentation](https://docs.github.com/rest/reference/reactions#list-reactions-for-a-pull-request-review-comment)
30327    pub fn reactions_list_for_pull_request_review_comment(
30328        &self,
30329        owner: &str,
30330        repo: &str,
30331        comment_id: i64,
30332        content: ::std::option::Option<&str>,
30333        per_page: ::std::option::Option<i64>,
30334        page: ::std::option::Option<i64>,
30335    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30336        let mut theScheme = AuthScheme::from(&self.config.authentication);
30337
30338        while let Some(auth_step) = theScheme.step()? {
30339            match auth_step {
30340                ::authentic::AuthenticationStep::Request(auth_request) => {
30341                    theScheme.respond(self.client.execute(auth_request));
30342                }
30343                ::authentic::AuthenticationStep::WaitFor(duration) => {
30344                    (self.sleep)(duration);
30345                }
30346            }
30347        }
30348        let theBuilder = crate::v1_1_4::request::reactions_list_for_pull_request_review_comment::reqwest_blocking_builder(
30349            self.config.base_url.as_ref(),
30350            owner,
30351            repo,
30352            comment_id,
30353            content,
30354            per_page,
30355            page,
30356            self.config.user_agent.as_ref(),
30357            self.config.accept.as_deref(),
30358        )?
30359        .with_authentication(&theScheme)?;
30360
30361        let theRequest =
30362            crate::v1_1_4::request::reactions_list_for_pull_request_review_comment::reqwest_blocking_request(theBuilder)?;
30363
30364        ::log::debug!("HTTP request: {:?}", &theRequest);
30365
30366        let theResponse = self.client.execute(theRequest)?;
30367
30368        ::log::debug!("HTTP response: {:?}", &theResponse);
30369
30370        Ok(theResponse)
30371    }
30372
30373    /// Create reaction for a pull request review comment
30374    /// 
30375    /// Create a reaction to a [pull request review comment](https://docs.github.com/rest/reference/pulls#comments). A response with an HTTP `200` status means that you already added the reaction type to this pull request review comment.
30376    /// 
30377    /// [API method documentation](https://docs.github.com/rest/reference/reactions#create-reaction-for-a-pull-request-review-comment)
30378    ///
30379    /// # Content
30380    ///
30381    /// - [`&v1_1_4::request::reactions_create_for_pull_request_review_comment::body::Json`](crate::v1_1_4::request::reactions_create_for_pull_request_review_comment::body::Json)
30382    pub fn reactions_create_for_pull_request_review_comment<Content>(
30383        &self,
30384        owner: &str,
30385        repo: &str,
30386        comment_id: i64,
30387        theContent: Content,
30388    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
30389    where
30390        Content: Copy + TryInto<crate::v1_1_4::request::reactions_create_for_pull_request_review_comment::Content<::reqwest::blocking::Body>>,
30391        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::reactions_create_for_pull_request_review_comment::Content<::reqwest::blocking::Body>>>::Error>
30392    {
30393        let mut theScheme = AuthScheme::from(&self.config.authentication);
30394
30395        while let Some(auth_step) = theScheme.step()? {
30396            match auth_step {
30397                ::authentic::AuthenticationStep::Request(auth_request) => {
30398                    theScheme.respond(self.client.execute(auth_request));
30399                }
30400                ::authentic::AuthenticationStep::WaitFor(duration) => {
30401                    (self.sleep)(duration);
30402                }
30403            }
30404        }
30405        let theBuilder = crate::v1_1_4::request::reactions_create_for_pull_request_review_comment::reqwest_blocking_builder(
30406            self.config.base_url.as_ref(),
30407            owner,
30408            repo,
30409            comment_id,
30410            self.config.user_agent.as_ref(),
30411            self.config.accept.as_deref(),
30412        )?
30413        .with_authentication(&theScheme)?;
30414
30415        let theRequest = crate::v1_1_4::request::reactions_create_for_pull_request_review_comment::reqwest_blocking_request(
30416            theBuilder,
30417            theContent.try_into()?,
30418        )?;
30419
30420        ::log::debug!("HTTP request: {:?}", &theRequest);
30421
30422        let theResponse = self.client.execute(theRequest)?;
30423
30424        ::log::debug!("HTTP response: {:?}", &theResponse);
30425
30426        Ok(theResponse)
30427    }
30428
30429    /// Delete a pull request comment reaction
30430    /// 
30431    /// **Note:** You can also specify a repository by `repository_id` using the route `DELETE /repositories/:repository_id/pulls/comments/:comment_id/reactions/:reaction_id.`
30432    /// 
30433    /// Delete a reaction to a [pull request review comment](https://docs.github.com/rest/reference/pulls#review-comments).
30434    /// 
30435    /// [API method documentation](https://docs.github.com/rest/reference/reactions#delete-a-pull-request-comment-reaction)
30436    pub fn reactions_delete_for_pull_request_comment(
30437        &self,
30438        owner: &str,
30439        repo: &str,
30440        comment_id: i64,
30441        reaction_id: i64,
30442    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30443        let mut theScheme = AuthScheme::from(&self.config.authentication);
30444
30445        while let Some(auth_step) = theScheme.step()? {
30446            match auth_step {
30447                ::authentic::AuthenticationStep::Request(auth_request) => {
30448                    theScheme.respond(self.client.execute(auth_request));
30449                }
30450                ::authentic::AuthenticationStep::WaitFor(duration) => {
30451                    (self.sleep)(duration);
30452                }
30453            }
30454        }
30455        let theBuilder = crate::v1_1_4::request::reactions_delete_for_pull_request_comment::reqwest_blocking_builder(
30456            self.config.base_url.as_ref(),
30457            owner,
30458            repo,
30459            comment_id,
30460            reaction_id,
30461            self.config.user_agent.as_ref(),
30462            self.config.accept.as_deref(),
30463        )?
30464        .with_authentication(&theScheme)?;
30465
30466        let theRequest =
30467            crate::v1_1_4::request::reactions_delete_for_pull_request_comment::reqwest_blocking_request(theBuilder)?;
30468
30469        ::log::debug!("HTTP request: {:?}", &theRequest);
30470
30471        let theResponse = self.client.execute(theRequest)?;
30472
30473        ::log::debug!("HTTP response: {:?}", &theResponse);
30474
30475        Ok(theResponse)
30476    }
30477
30478    /// Get a pull request
30479    /// 
30480    /// Draft pull requests are available in public repositories with GitHub Free and GitHub Free for organizations, GitHub Pro, and legacy per-repository billing plans, and in public and private repositories with GitHub Team and GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
30481    /// 
30482    /// Lists details of a pull request by providing its number.
30483    /// 
30484    /// When you get, [create](https://docs.github.com/rest/reference/pulls/#create-a-pull-request), or [edit](https://docs.github.com/rest/reference/pulls#update-a-pull-request) a pull request, GitHub creates a merge commit to test whether the pull request can be automatically merged into the base branch. This test commit is not added to the base branch or the head branch. You can review the status of the test commit using the `mergeable` key. For more information, see "[Checking mergeability of pull requests](https://docs.github.com/rest/guides/getting-started-with-the-git-database-api#checking-mergeability-of-pull-requests)".
30485    /// 
30486    /// The value of the `mergeable` attribute can be `true`, `false`, or `null`. If the value is `null`, then GitHub has started a background job to compute the mergeability. After giving the job time to complete, resubmit the request. When the job finishes, you will see a non-`null` value for the `mergeable` attribute in the response. If `mergeable` is `true`, then `merge_commit_sha` will be the SHA of the _test_ merge commit.
30487    /// 
30488    /// The value of the `merge_commit_sha` attribute changes depending on the state of the pull request. Before merging a pull request, the `merge_commit_sha` attribute holds the SHA of the _test_ merge commit. After merging a pull request, the `merge_commit_sha` attribute changes depending on how you merged the pull request:
30489    /// 
30490    /// *   If merged as a [merge commit](https://docs.github.com/articles/about-merge-methods-on-github/), `merge_commit_sha` represents the SHA of the merge commit.
30491    /// *   If merged via a [squash](https://docs.github.com/articles/about-merge-methods-on-github/#squashing-your-merge-commits), `merge_commit_sha` represents the SHA of the squashed commit on the base branch.
30492    /// *   If [rebased](https://docs.github.com/articles/about-merge-methods-on-github/#rebasing-and-merging-your-commits), `merge_commit_sha` represents the commit that the base branch was updated to.
30493    /// 
30494    /// Pass the appropriate [media type](https://docs.github.com/rest/overview/media-types/#commits-commit-comparison-and-pull-requests) to fetch diff and patch formats.
30495    /// 
30496    /// [API method documentation](https://docs.github.com/rest/reference/pulls#get-a-pull-request)
30497    pub fn pulls_get(
30498        &self,
30499        owner: &str,
30500        repo: &str,
30501        pull_number: i64,
30502    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30503        let mut theScheme = AuthScheme::from(&self.config.authentication);
30504
30505        while let Some(auth_step) = theScheme.step()? {
30506            match auth_step {
30507                ::authentic::AuthenticationStep::Request(auth_request) => {
30508                    theScheme.respond(self.client.execute(auth_request));
30509                }
30510                ::authentic::AuthenticationStep::WaitFor(duration) => {
30511                    (self.sleep)(duration);
30512                }
30513            }
30514        }
30515        let theBuilder = crate::v1_1_4::request::pulls_get::reqwest_blocking_builder(
30516            self.config.base_url.as_ref(),
30517            owner,
30518            repo,
30519            pull_number,
30520            self.config.user_agent.as_ref(),
30521            self.config.accept.as_deref(),
30522        )?
30523        .with_authentication(&theScheme)?;
30524
30525        let theRequest =
30526            crate::v1_1_4::request::pulls_get::reqwest_blocking_request(theBuilder)?;
30527
30528        ::log::debug!("HTTP request: {:?}", &theRequest);
30529
30530        let theResponse = self.client.execute(theRequest)?;
30531
30532        ::log::debug!("HTTP response: {:?}", &theResponse);
30533
30534        Ok(theResponse)
30535    }
30536
30537    /// Update a pull request
30538    /// 
30539    /// Draft pull requests are available in public repositories with GitHub Free and GitHub Free for organizations, GitHub Pro, and legacy per-repository billing plans, and in public and private repositories with GitHub Team and GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
30540    /// 
30541    /// To open or update a pull request in a public repository, you must have write access to the head or the source branch. For organization-owned repositories, you must be a member of the organization that owns the repository to open or update a pull request.
30542    /// 
30543    /// [API method documentation](https://docs.github.com/rest/reference/pulls/#update-a-pull-request)
30544    ///
30545    /// # Content
30546    ///
30547    /// - [`&v1_1_4::request::pulls_update::body::Json`](crate::v1_1_4::request::pulls_update::body::Json)
30548    pub fn pulls_update<Content>(
30549        &self,
30550        owner: &str,
30551        repo: &str,
30552        pull_number: i64,
30553        theContent: Content,
30554    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
30555    where
30556        Content: Copy + TryInto<crate::v1_1_4::request::pulls_update::Content<::reqwest::blocking::Body>>,
30557        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_update::Content<::reqwest::blocking::Body>>>::Error>
30558    {
30559        let mut theScheme = AuthScheme::from(&self.config.authentication);
30560
30561        while let Some(auth_step) = theScheme.step()? {
30562            match auth_step {
30563                ::authentic::AuthenticationStep::Request(auth_request) => {
30564                    theScheme.respond(self.client.execute(auth_request));
30565                }
30566                ::authentic::AuthenticationStep::WaitFor(duration) => {
30567                    (self.sleep)(duration);
30568                }
30569            }
30570        }
30571        let theBuilder = crate::v1_1_4::request::pulls_update::reqwest_blocking_builder(
30572            self.config.base_url.as_ref(),
30573            owner,
30574            repo,
30575            pull_number,
30576            self.config.user_agent.as_ref(),
30577            self.config.accept.as_deref(),
30578        )?
30579        .with_authentication(&theScheme)?;
30580
30581        let theRequest = crate::v1_1_4::request::pulls_update::reqwest_blocking_request(
30582            theBuilder,
30583            theContent.try_into()?,
30584        )?;
30585
30586        ::log::debug!("HTTP request: {:?}", &theRequest);
30587
30588        let theResponse = self.client.execute(theRequest)?;
30589
30590        ::log::debug!("HTTP response: {:?}", &theResponse);
30591
30592        Ok(theResponse)
30593    }
30594
30595    /// Create a codespace from a pull request
30596    /// 
30597    /// Creates a codespace owned by the authenticated user for the specified pull request.
30598    /// 
30599    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
30600    /// 
30601    /// GitHub Apps must have write access to the `codespaces` repository permission to use this endpoint.
30602    /// 
30603    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#create-a-codespace-from-a-pull-request)
30604    ///
30605    /// # Content
30606    ///
30607    /// - [`&::std::option::Option<crate::v1_1_4::request::codespaces_create_with_pr_for_authenticated_user::body::Json>`](crate::v1_1_4::request::codespaces_create_with_pr_for_authenticated_user::body::Json)
30608    pub fn codespaces_create_with_pr_for_authenticated_user<Content>(
30609        &self,
30610        owner: &str,
30611        repo: &str,
30612        pull_number: i64,
30613        theContent: Content,
30614    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
30615    where
30616        Content: Copy + TryInto<crate::v1_1_4::request::codespaces_create_with_pr_for_authenticated_user::Content<::reqwest::blocking::Body>>,
30617        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::codespaces_create_with_pr_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
30618    {
30619        let mut theScheme = AuthScheme::from(&self.config.authentication);
30620
30621        while let Some(auth_step) = theScheme.step()? {
30622            match auth_step {
30623                ::authentic::AuthenticationStep::Request(auth_request) => {
30624                    theScheme.respond(self.client.execute(auth_request));
30625                }
30626                ::authentic::AuthenticationStep::WaitFor(duration) => {
30627                    (self.sleep)(duration);
30628                }
30629            }
30630        }
30631        let theBuilder = crate::v1_1_4::request::codespaces_create_with_pr_for_authenticated_user::reqwest_blocking_builder(
30632            self.config.base_url.as_ref(),
30633            owner,
30634            repo,
30635            pull_number,
30636            self.config.user_agent.as_ref(),
30637            self.config.accept.as_deref(),
30638        )?
30639        .with_authentication(&theScheme)?;
30640
30641        let theRequest = crate::v1_1_4::request::codespaces_create_with_pr_for_authenticated_user::reqwest_blocking_request(
30642            theBuilder,
30643            theContent.try_into()?,
30644        )?;
30645
30646        ::log::debug!("HTTP request: {:?}", &theRequest);
30647
30648        let theResponse = self.client.execute(theRequest)?;
30649
30650        ::log::debug!("HTTP response: {:?}", &theResponse);
30651
30652        Ok(theResponse)
30653    }
30654
30655    /// List review comments on a pull request
30656    /// 
30657    /// Lists all review comments for a pull request. By default, review comments are in ascending order by ID.
30658    /// 
30659    /// [API method documentation](https://docs.github.com/rest/reference/pulls#list-review-comments-on-a-pull-request)
30660    #[allow(clippy::too_many_arguments)]
30661    pub fn pulls_list_review_comments(
30662        &self,
30663        owner: &str,
30664        repo: &str,
30665        pull_number: i64,
30666        sort: &crate::types::Sort<'_>,
30667        since: ::std::option::Option<&str>,
30668        per_page: ::std::option::Option<i64>,
30669        page: ::std::option::Option<i64>,
30670    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30671        let (sort, direction) = sort.extract();
30672        let mut theScheme = AuthScheme::from(&self.config.authentication);
30673
30674        while let Some(auth_step) = theScheme.step()? {
30675            match auth_step {
30676                ::authentic::AuthenticationStep::Request(auth_request) => {
30677                    theScheme.respond(self.client.execute(auth_request));
30678                }
30679                ::authentic::AuthenticationStep::WaitFor(duration) => {
30680                    (self.sleep)(duration);
30681                }
30682            }
30683        }
30684        let theBuilder = crate::v1_1_4::request::pulls_list_review_comments::reqwest_blocking_builder(
30685            self.config.base_url.as_ref(),
30686            owner,
30687            repo,
30688            pull_number,
30689            sort,
30690            direction,
30691            since,
30692            per_page,
30693            page,
30694            self.config.user_agent.as_ref(),
30695            self.config.accept.as_deref(),
30696        )?
30697        .with_authentication(&theScheme)?;
30698
30699        let theRequest =
30700            crate::v1_1_4::request::pulls_list_review_comments::reqwest_blocking_request(theBuilder)?;
30701
30702        ::log::debug!("HTTP request: {:?}", &theRequest);
30703
30704        let theResponse = self.client.execute(theRequest)?;
30705
30706        ::log::debug!("HTTP response: {:?}", &theResponse);
30707
30708        Ok(theResponse)
30709    }
30710
30711    /// Create a review comment for a pull request
30712    /// 
30713    /// Creates a review comment in the pull request diff. To add a regular comment to a pull request timeline, see "[Create an issue comment](https://docs.github.com/rest/reference/issues#create-an-issue-comment)." We recommend creating a review comment using `line`, `side`, and optionally `start_line` and `start_side` if your comment applies to more than one line in the pull request diff.
30714    /// 
30715    /// The `position` parameter is deprecated. If you use `position`, the `line`, `side`, `start_line`, and `start_side` parameters are not required.
30716    /// 
30717    /// **Note:** The position value equals the number of lines down from the first "@@" hunk header in the file you want to add a comment. The line just below the "@@" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file.
30718    /// 
30719    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
30720    /// 
30721    /// [API method documentation](https://docs.github.com/rest/reference/pulls#create-a-review-comment-for-a-pull-request)
30722    ///
30723    /// # Content
30724    ///
30725    /// - [`&v1_1_4::request::pulls_create_review_comment::body::Json`](crate::v1_1_4::request::pulls_create_review_comment::body::Json)
30726    pub fn pulls_create_review_comment<Content>(
30727        &self,
30728        owner: &str,
30729        repo: &str,
30730        pull_number: i64,
30731        theContent: Content,
30732    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
30733    where
30734        Content: Copy + TryInto<crate::v1_1_4::request::pulls_create_review_comment::Content<::reqwest::blocking::Body>>,
30735        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_create_review_comment::Content<::reqwest::blocking::Body>>>::Error>
30736    {
30737        let mut theScheme = AuthScheme::from(&self.config.authentication);
30738
30739        while let Some(auth_step) = theScheme.step()? {
30740            match auth_step {
30741                ::authentic::AuthenticationStep::Request(auth_request) => {
30742                    theScheme.respond(self.client.execute(auth_request));
30743                }
30744                ::authentic::AuthenticationStep::WaitFor(duration) => {
30745                    (self.sleep)(duration);
30746                }
30747            }
30748        }
30749        let theBuilder = crate::v1_1_4::request::pulls_create_review_comment::reqwest_blocking_builder(
30750            self.config.base_url.as_ref(),
30751            owner,
30752            repo,
30753            pull_number,
30754            self.config.user_agent.as_ref(),
30755            self.config.accept.as_deref(),
30756        )?
30757        .with_authentication(&theScheme)?;
30758
30759        let theRequest = crate::v1_1_4::request::pulls_create_review_comment::reqwest_blocking_request(
30760            theBuilder,
30761            theContent.try_into()?,
30762        )?;
30763
30764        ::log::debug!("HTTP request: {:?}", &theRequest);
30765
30766        let theResponse = self.client.execute(theRequest)?;
30767
30768        ::log::debug!("HTTP response: {:?}", &theResponse);
30769
30770        Ok(theResponse)
30771    }
30772
30773    /// Create a reply for a review comment
30774    /// 
30775    /// Creates a reply to a review comment for a pull request. For the `comment_id`, provide the ID of the review comment you are replying to. This must be the ID of a _top-level review comment_, not a reply to that comment. Replies to replies are not supported.
30776    /// 
30777    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
30778    /// 
30779    /// [API method documentation](https://docs.github.com/rest/reference/pulls#create-a-reply-for-a-review-comment)
30780    ///
30781    /// # Content
30782    ///
30783    /// - [`&v1_1_4::request::pulls_create_reply_for_review_comment::body::Json`](crate::v1_1_4::request::pulls_create_reply_for_review_comment::body::Json)
30784    pub fn pulls_create_reply_for_review_comment<Content>(
30785        &self,
30786        owner: &str,
30787        repo: &str,
30788        pull_number: i64,
30789        comment_id: i64,
30790        theContent: Content,
30791    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
30792    where
30793        Content: Copy + TryInto<crate::v1_1_4::request::pulls_create_reply_for_review_comment::Content<::reqwest::blocking::Body>>,
30794        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_create_reply_for_review_comment::Content<::reqwest::blocking::Body>>>::Error>
30795    {
30796        let mut theScheme = AuthScheme::from(&self.config.authentication);
30797
30798        while let Some(auth_step) = theScheme.step()? {
30799            match auth_step {
30800                ::authentic::AuthenticationStep::Request(auth_request) => {
30801                    theScheme.respond(self.client.execute(auth_request));
30802                }
30803                ::authentic::AuthenticationStep::WaitFor(duration) => {
30804                    (self.sleep)(duration);
30805                }
30806            }
30807        }
30808        let theBuilder = crate::v1_1_4::request::pulls_create_reply_for_review_comment::reqwest_blocking_builder(
30809            self.config.base_url.as_ref(),
30810            owner,
30811            repo,
30812            pull_number,
30813            comment_id,
30814            self.config.user_agent.as_ref(),
30815            self.config.accept.as_deref(),
30816        )?
30817        .with_authentication(&theScheme)?;
30818
30819        let theRequest = crate::v1_1_4::request::pulls_create_reply_for_review_comment::reqwest_blocking_request(
30820            theBuilder,
30821            theContent.try_into()?,
30822        )?;
30823
30824        ::log::debug!("HTTP request: {:?}", &theRequest);
30825
30826        let theResponse = self.client.execute(theRequest)?;
30827
30828        ::log::debug!("HTTP response: {:?}", &theResponse);
30829
30830        Ok(theResponse)
30831    }
30832
30833    /// List commits on a pull request
30834    /// 
30835    /// Lists a maximum of 250 commits for a pull request. To receive a complete commit list for pull requests with more than 250 commits, use the [List commits](https://docs.github.com/rest/reference/repos#list-commits) endpoint.
30836    /// 
30837    /// [API method documentation](https://docs.github.com/rest/reference/pulls#list-commits-on-a-pull-request)
30838    pub fn pulls_list_commits(
30839        &self,
30840        owner: &str,
30841        repo: &str,
30842        pull_number: i64,
30843        per_page: ::std::option::Option<i64>,
30844        page: ::std::option::Option<i64>,
30845    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30846        let mut theScheme = AuthScheme::from(&self.config.authentication);
30847
30848        while let Some(auth_step) = theScheme.step()? {
30849            match auth_step {
30850                ::authentic::AuthenticationStep::Request(auth_request) => {
30851                    theScheme.respond(self.client.execute(auth_request));
30852                }
30853                ::authentic::AuthenticationStep::WaitFor(duration) => {
30854                    (self.sleep)(duration);
30855                }
30856            }
30857        }
30858        let theBuilder = crate::v1_1_4::request::pulls_list_commits::reqwest_blocking_builder(
30859            self.config.base_url.as_ref(),
30860            owner,
30861            repo,
30862            pull_number,
30863            per_page,
30864            page,
30865            self.config.user_agent.as_ref(),
30866            self.config.accept.as_deref(),
30867        )?
30868        .with_authentication(&theScheme)?;
30869
30870        let theRequest =
30871            crate::v1_1_4::request::pulls_list_commits::reqwest_blocking_request(theBuilder)?;
30872
30873        ::log::debug!("HTTP request: {:?}", &theRequest);
30874
30875        let theResponse = self.client.execute(theRequest)?;
30876
30877        ::log::debug!("HTTP response: {:?}", &theResponse);
30878
30879        Ok(theResponse)
30880    }
30881
30882    /// List pull requests files
30883    /// 
30884    /// **Note:** Responses include a maximum of 3000 files. The paginated response returns 30 files per page by default.
30885    /// 
30886    /// [API method documentation](https://docs.github.com/rest/reference/pulls#list-pull-requests-files)
30887    pub fn pulls_list_files(
30888        &self,
30889        owner: &str,
30890        repo: &str,
30891        pull_number: i64,
30892        per_page: ::std::option::Option<i64>,
30893        page: ::std::option::Option<i64>,
30894    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30895        let mut theScheme = AuthScheme::from(&self.config.authentication);
30896
30897        while let Some(auth_step) = theScheme.step()? {
30898            match auth_step {
30899                ::authentic::AuthenticationStep::Request(auth_request) => {
30900                    theScheme.respond(self.client.execute(auth_request));
30901                }
30902                ::authentic::AuthenticationStep::WaitFor(duration) => {
30903                    (self.sleep)(duration);
30904                }
30905            }
30906        }
30907        let theBuilder = crate::v1_1_4::request::pulls_list_files::reqwest_blocking_builder(
30908            self.config.base_url.as_ref(),
30909            owner,
30910            repo,
30911            pull_number,
30912            per_page,
30913            page,
30914            self.config.user_agent.as_ref(),
30915            self.config.accept.as_deref(),
30916        )?
30917        .with_authentication(&theScheme)?;
30918
30919        let theRequest =
30920            crate::v1_1_4::request::pulls_list_files::reqwest_blocking_request(theBuilder)?;
30921
30922        ::log::debug!("HTTP request: {:?}", &theRequest);
30923
30924        let theResponse = self.client.execute(theRequest)?;
30925
30926        ::log::debug!("HTTP response: {:?}", &theResponse);
30927
30928        Ok(theResponse)
30929    }
30930
30931    /// Check if a pull request has been merged
30932    /// 
30933    /// [API method documentation](https://docs.github.com/rest/reference/pulls#check-if-a-pull-request-has-been-merged)
30934    pub fn pulls_check_if_merged(
30935        &self,
30936        owner: &str,
30937        repo: &str,
30938        pull_number: i64,
30939    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
30940        let mut theScheme = AuthScheme::from(&self.config.authentication);
30941
30942        while let Some(auth_step) = theScheme.step()? {
30943            match auth_step {
30944                ::authentic::AuthenticationStep::Request(auth_request) => {
30945                    theScheme.respond(self.client.execute(auth_request));
30946                }
30947                ::authentic::AuthenticationStep::WaitFor(duration) => {
30948                    (self.sleep)(duration);
30949                }
30950            }
30951        }
30952        let theBuilder = crate::v1_1_4::request::pulls_check_if_merged::reqwest_blocking_builder(
30953            self.config.base_url.as_ref(),
30954            owner,
30955            repo,
30956            pull_number,
30957            self.config.user_agent.as_ref(),
30958            self.config.accept.as_deref(),
30959        )?
30960        .with_authentication(&theScheme)?;
30961
30962        let theRequest =
30963            crate::v1_1_4::request::pulls_check_if_merged::reqwest_blocking_request(theBuilder)?;
30964
30965        ::log::debug!("HTTP request: {:?}", &theRequest);
30966
30967        let theResponse = self.client.execute(theRequest)?;
30968
30969        ::log::debug!("HTTP response: {:?}", &theResponse);
30970
30971        Ok(theResponse)
30972    }
30973
30974    /// Merge a pull request
30975    /// 
30976    /// This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
30977    /// 
30978    /// [API method documentation](https://docs.github.com/rest/reference/pulls#merge-a-pull-request)
30979    ///
30980    /// # Content
30981    ///
30982    /// - [`&::std::option::Option<crate::v1_1_4::request::pulls_merge::body::Json>`](crate::v1_1_4::request::pulls_merge::body::Json)
30983    pub fn pulls_merge<Content>(
30984        &self,
30985        owner: &str,
30986        repo: &str,
30987        pull_number: i64,
30988        theContent: Content,
30989    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
30990    where
30991        Content: Copy + TryInto<crate::v1_1_4::request::pulls_merge::Content<::reqwest::blocking::Body>>,
30992        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_merge::Content<::reqwest::blocking::Body>>>::Error>
30993    {
30994        let mut theScheme = AuthScheme::from(&self.config.authentication);
30995
30996        while let Some(auth_step) = theScheme.step()? {
30997            match auth_step {
30998                ::authentic::AuthenticationStep::Request(auth_request) => {
30999                    theScheme.respond(self.client.execute(auth_request));
31000                }
31001                ::authentic::AuthenticationStep::WaitFor(duration) => {
31002                    (self.sleep)(duration);
31003                }
31004            }
31005        }
31006        let theBuilder = crate::v1_1_4::request::pulls_merge::reqwest_blocking_builder(
31007            self.config.base_url.as_ref(),
31008            owner,
31009            repo,
31010            pull_number,
31011            self.config.user_agent.as_ref(),
31012            self.config.accept.as_deref(),
31013        )?
31014        .with_authentication(&theScheme)?;
31015
31016        let theRequest = crate::v1_1_4::request::pulls_merge::reqwest_blocking_request(
31017            theBuilder,
31018            theContent.try_into()?,
31019        )?;
31020
31021        ::log::debug!("HTTP request: {:?}", &theRequest);
31022
31023        let theResponse = self.client.execute(theRequest)?;
31024
31025        ::log::debug!("HTTP response: {:?}", &theResponse);
31026
31027        Ok(theResponse)
31028    }
31029
31030    /// List requested reviewers for a pull request
31031    /// 
31032    /// [API method documentation](https://docs.github.com/rest/reference/pulls#list-requested-reviewers-for-a-pull-request)
31033    pub fn pulls_list_requested_reviewers(
31034        &self,
31035        owner: &str,
31036        repo: &str,
31037        pull_number: i64,
31038        per_page: ::std::option::Option<i64>,
31039        page: ::std::option::Option<i64>,
31040    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31041        let mut theScheme = AuthScheme::from(&self.config.authentication);
31042
31043        while let Some(auth_step) = theScheme.step()? {
31044            match auth_step {
31045                ::authentic::AuthenticationStep::Request(auth_request) => {
31046                    theScheme.respond(self.client.execute(auth_request));
31047                }
31048                ::authentic::AuthenticationStep::WaitFor(duration) => {
31049                    (self.sleep)(duration);
31050                }
31051            }
31052        }
31053        let theBuilder = crate::v1_1_4::request::pulls_list_requested_reviewers::reqwest_blocking_builder(
31054            self.config.base_url.as_ref(),
31055            owner,
31056            repo,
31057            pull_number,
31058            per_page,
31059            page,
31060            self.config.user_agent.as_ref(),
31061            self.config.accept.as_deref(),
31062        )?
31063        .with_authentication(&theScheme)?;
31064
31065        let theRequest =
31066            crate::v1_1_4::request::pulls_list_requested_reviewers::reqwest_blocking_request(theBuilder)?;
31067
31068        ::log::debug!("HTTP request: {:?}", &theRequest);
31069
31070        let theResponse = self.client.execute(theRequest)?;
31071
31072        ::log::debug!("HTTP response: {:?}", &theResponse);
31073
31074        Ok(theResponse)
31075    }
31076
31077    /// Request reviewers for a pull request
31078    /// 
31079    /// This endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
31080    /// 
31081    /// [API method documentation](https://docs.github.com/rest/reference/pulls#request-reviewers-for-a-pull-request)
31082    ///
31083    /// # Content
31084    ///
31085    /// - [`&v1_1_4::request::pulls_request_reviewers::body::Json`](crate::v1_1_4::request::pulls_request_reviewers::body::Json)
31086    pub fn pulls_request_reviewers<Content>(
31087        &self,
31088        owner: &str,
31089        repo: &str,
31090        pull_number: i64,
31091        theContent: Content,
31092    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
31093    where
31094        Content: Copy + TryInto<crate::v1_1_4::request::pulls_request_reviewers::Content<::reqwest::blocking::Body>>,
31095        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_request_reviewers::Content<::reqwest::blocking::Body>>>::Error>
31096    {
31097        let mut theScheme = AuthScheme::from(&self.config.authentication);
31098
31099        while let Some(auth_step) = theScheme.step()? {
31100            match auth_step {
31101                ::authentic::AuthenticationStep::Request(auth_request) => {
31102                    theScheme.respond(self.client.execute(auth_request));
31103                }
31104                ::authentic::AuthenticationStep::WaitFor(duration) => {
31105                    (self.sleep)(duration);
31106                }
31107            }
31108        }
31109        let theBuilder = crate::v1_1_4::request::pulls_request_reviewers::reqwest_blocking_builder(
31110            self.config.base_url.as_ref(),
31111            owner,
31112            repo,
31113            pull_number,
31114            self.config.user_agent.as_ref(),
31115            self.config.accept.as_deref(),
31116        )?
31117        .with_authentication(&theScheme)?;
31118
31119        let theRequest = crate::v1_1_4::request::pulls_request_reviewers::reqwest_blocking_request(
31120            theBuilder,
31121            theContent.try_into()?,
31122        )?;
31123
31124        ::log::debug!("HTTP request: {:?}", &theRequest);
31125
31126        let theResponse = self.client.execute(theRequest)?;
31127
31128        ::log::debug!("HTTP response: {:?}", &theResponse);
31129
31130        Ok(theResponse)
31131    }
31132
31133    /// Remove requested reviewers from a pull request
31134    /// 
31135    /// [API method documentation](https://docs.github.com/rest/reference/pulls#remove-requested-reviewers-from-a-pull-request)
31136    ///
31137    /// # Content
31138    ///
31139    /// - [`&v1_1_4::request::pulls_remove_requested_reviewers::body::Json`](crate::v1_1_4::request::pulls_remove_requested_reviewers::body::Json)
31140    pub fn pulls_remove_requested_reviewers<Content>(
31141        &self,
31142        owner: &str,
31143        repo: &str,
31144        pull_number: i64,
31145        theContent: Content,
31146    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
31147    where
31148        Content: Copy + TryInto<crate::v1_1_4::request::pulls_remove_requested_reviewers::Content<::reqwest::blocking::Body>>,
31149        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_remove_requested_reviewers::Content<::reqwest::blocking::Body>>>::Error>
31150    {
31151        let mut theScheme = AuthScheme::from(&self.config.authentication);
31152
31153        while let Some(auth_step) = theScheme.step()? {
31154            match auth_step {
31155                ::authentic::AuthenticationStep::Request(auth_request) => {
31156                    theScheme.respond(self.client.execute(auth_request));
31157                }
31158                ::authentic::AuthenticationStep::WaitFor(duration) => {
31159                    (self.sleep)(duration);
31160                }
31161            }
31162        }
31163        let theBuilder = crate::v1_1_4::request::pulls_remove_requested_reviewers::reqwest_blocking_builder(
31164            self.config.base_url.as_ref(),
31165            owner,
31166            repo,
31167            pull_number,
31168            self.config.user_agent.as_ref(),
31169            self.config.accept.as_deref(),
31170        )?
31171        .with_authentication(&theScheme)?;
31172
31173        let theRequest = crate::v1_1_4::request::pulls_remove_requested_reviewers::reqwest_blocking_request(
31174            theBuilder,
31175            theContent.try_into()?,
31176        )?;
31177
31178        ::log::debug!("HTTP request: {:?}", &theRequest);
31179
31180        let theResponse = self.client.execute(theRequest)?;
31181
31182        ::log::debug!("HTTP response: {:?}", &theResponse);
31183
31184        Ok(theResponse)
31185    }
31186
31187    /// List reviews for a pull request
31188    /// 
31189    /// The list of reviews returns in chronological order.
31190    /// 
31191    /// [API method documentation](https://docs.github.com/rest/reference/pulls#list-reviews-for-a-pull-request)
31192    pub fn pulls_list_reviews(
31193        &self,
31194        owner: &str,
31195        repo: &str,
31196        pull_number: i64,
31197        per_page: ::std::option::Option<i64>,
31198        page: ::std::option::Option<i64>,
31199    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31200        let mut theScheme = AuthScheme::from(&self.config.authentication);
31201
31202        while let Some(auth_step) = theScheme.step()? {
31203            match auth_step {
31204                ::authentic::AuthenticationStep::Request(auth_request) => {
31205                    theScheme.respond(self.client.execute(auth_request));
31206                }
31207                ::authentic::AuthenticationStep::WaitFor(duration) => {
31208                    (self.sleep)(duration);
31209                }
31210            }
31211        }
31212        let theBuilder = crate::v1_1_4::request::pulls_list_reviews::reqwest_blocking_builder(
31213            self.config.base_url.as_ref(),
31214            owner,
31215            repo,
31216            pull_number,
31217            per_page,
31218            page,
31219            self.config.user_agent.as_ref(),
31220            self.config.accept.as_deref(),
31221        )?
31222        .with_authentication(&theScheme)?;
31223
31224        let theRequest =
31225            crate::v1_1_4::request::pulls_list_reviews::reqwest_blocking_request(theBuilder)?;
31226
31227        ::log::debug!("HTTP request: {:?}", &theRequest);
31228
31229        let theResponse = self.client.execute(theRequest)?;
31230
31231        ::log::debug!("HTTP response: {:?}", &theResponse);
31232
31233        Ok(theResponse)
31234    }
31235
31236    /// Create a review for a pull request
31237    /// 
31238    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
31239    /// 
31240    /// Pull request reviews created in the `PENDING` state do not include the `submitted_at` property in the response.
31241    /// 
31242    /// **Note:** To comment on a specific line in a file, you need to first determine the _position_ of that line in the diff. The GitHub REST API v3 offers the `application/vnd.github.v3.diff` [media type](https://docs.github.com/rest/overview/media-types#commits-commit-comparison-and-pull-requests). To see a pull request diff, add this media type to the `Accept` header of a call to the [single pull request](https://docs.github.com/rest/reference/pulls#get-a-pull-request) endpoint.
31243    /// 
31244    /// The `position` value equals the number of lines down from the first "@@" hunk header in the file you want to add a comment. The line just below the "@@" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file.
31245    /// 
31246    /// [API method documentation](https://docs.github.com/rest/reference/pulls#create-a-review-for-a-pull-request)
31247    ///
31248    /// # Content
31249    ///
31250    /// - [`&v1_1_4::request::pulls_create_review::body::Json`](crate::v1_1_4::request::pulls_create_review::body::Json)
31251    pub fn pulls_create_review<Content>(
31252        &self,
31253        owner: &str,
31254        repo: &str,
31255        pull_number: i64,
31256        theContent: Content,
31257    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
31258    where
31259        Content: Copy + TryInto<crate::v1_1_4::request::pulls_create_review::Content<::reqwest::blocking::Body>>,
31260        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_create_review::Content<::reqwest::blocking::Body>>>::Error>
31261    {
31262        let mut theScheme = AuthScheme::from(&self.config.authentication);
31263
31264        while let Some(auth_step) = theScheme.step()? {
31265            match auth_step {
31266                ::authentic::AuthenticationStep::Request(auth_request) => {
31267                    theScheme.respond(self.client.execute(auth_request));
31268                }
31269                ::authentic::AuthenticationStep::WaitFor(duration) => {
31270                    (self.sleep)(duration);
31271                }
31272            }
31273        }
31274        let theBuilder = crate::v1_1_4::request::pulls_create_review::reqwest_blocking_builder(
31275            self.config.base_url.as_ref(),
31276            owner,
31277            repo,
31278            pull_number,
31279            self.config.user_agent.as_ref(),
31280            self.config.accept.as_deref(),
31281        )?
31282        .with_authentication(&theScheme)?;
31283
31284        let theRequest = crate::v1_1_4::request::pulls_create_review::reqwest_blocking_request(
31285            theBuilder,
31286            theContent.try_into()?,
31287        )?;
31288
31289        ::log::debug!("HTTP request: {:?}", &theRequest);
31290
31291        let theResponse = self.client.execute(theRequest)?;
31292
31293        ::log::debug!("HTTP response: {:?}", &theResponse);
31294
31295        Ok(theResponse)
31296    }
31297
31298    /// Get a review for a pull request
31299    /// 
31300    /// [API method documentation](https://docs.github.com/rest/reference/pulls#get-a-review-for-a-pull-request)
31301    pub fn pulls_get_review(
31302        &self,
31303        owner: &str,
31304        repo: &str,
31305        pull_number: i64,
31306        review_id: i64,
31307    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31308        let mut theScheme = AuthScheme::from(&self.config.authentication);
31309
31310        while let Some(auth_step) = theScheme.step()? {
31311            match auth_step {
31312                ::authentic::AuthenticationStep::Request(auth_request) => {
31313                    theScheme.respond(self.client.execute(auth_request));
31314                }
31315                ::authentic::AuthenticationStep::WaitFor(duration) => {
31316                    (self.sleep)(duration);
31317                }
31318            }
31319        }
31320        let theBuilder = crate::v1_1_4::request::pulls_get_review::reqwest_blocking_builder(
31321            self.config.base_url.as_ref(),
31322            owner,
31323            repo,
31324            pull_number,
31325            review_id,
31326            self.config.user_agent.as_ref(),
31327            self.config.accept.as_deref(),
31328        )?
31329        .with_authentication(&theScheme)?;
31330
31331        let theRequest =
31332            crate::v1_1_4::request::pulls_get_review::reqwest_blocking_request(theBuilder)?;
31333
31334        ::log::debug!("HTTP request: {:?}", &theRequest);
31335
31336        let theResponse = self.client.execute(theRequest)?;
31337
31338        ::log::debug!("HTTP response: {:?}", &theResponse);
31339
31340        Ok(theResponse)
31341    }
31342
31343    /// Update a review for a pull request
31344    /// 
31345    /// Update the review summary comment with new text.
31346    /// 
31347    /// [API method documentation](https://docs.github.com/rest/reference/pulls#update-a-review-for-a-pull-request)
31348    ///
31349    /// # Content
31350    ///
31351    /// - [`&v1_1_4::request::pulls_update_review::body::Json`](crate::v1_1_4::request::pulls_update_review::body::Json)
31352    pub fn pulls_update_review<Content>(
31353        &self,
31354        owner: &str,
31355        repo: &str,
31356        pull_number: i64,
31357        review_id: i64,
31358        theContent: Content,
31359    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
31360    where
31361        Content: Copy + TryInto<crate::v1_1_4::request::pulls_update_review::Content<::reqwest::blocking::Body>>,
31362        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_update_review::Content<::reqwest::blocking::Body>>>::Error>
31363    {
31364        let mut theScheme = AuthScheme::from(&self.config.authentication);
31365
31366        while let Some(auth_step) = theScheme.step()? {
31367            match auth_step {
31368                ::authentic::AuthenticationStep::Request(auth_request) => {
31369                    theScheme.respond(self.client.execute(auth_request));
31370                }
31371                ::authentic::AuthenticationStep::WaitFor(duration) => {
31372                    (self.sleep)(duration);
31373                }
31374            }
31375        }
31376        let theBuilder = crate::v1_1_4::request::pulls_update_review::reqwest_blocking_builder(
31377            self.config.base_url.as_ref(),
31378            owner,
31379            repo,
31380            pull_number,
31381            review_id,
31382            self.config.user_agent.as_ref(),
31383            self.config.accept.as_deref(),
31384        )?
31385        .with_authentication(&theScheme)?;
31386
31387        let theRequest = crate::v1_1_4::request::pulls_update_review::reqwest_blocking_request(
31388            theBuilder,
31389            theContent.try_into()?,
31390        )?;
31391
31392        ::log::debug!("HTTP request: {:?}", &theRequest);
31393
31394        let theResponse = self.client.execute(theRequest)?;
31395
31396        ::log::debug!("HTTP response: {:?}", &theResponse);
31397
31398        Ok(theResponse)
31399    }
31400
31401    /// Delete a pending review for a pull request
31402    /// 
31403    /// [API method documentation](https://docs.github.com/rest/reference/pulls#delete-a-pending-review-for-a-pull-request)
31404    pub fn pulls_delete_pending_review(
31405        &self,
31406        owner: &str,
31407        repo: &str,
31408        pull_number: i64,
31409        review_id: i64,
31410    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31411        let mut theScheme = AuthScheme::from(&self.config.authentication);
31412
31413        while let Some(auth_step) = theScheme.step()? {
31414            match auth_step {
31415                ::authentic::AuthenticationStep::Request(auth_request) => {
31416                    theScheme.respond(self.client.execute(auth_request));
31417                }
31418                ::authentic::AuthenticationStep::WaitFor(duration) => {
31419                    (self.sleep)(duration);
31420                }
31421            }
31422        }
31423        let theBuilder = crate::v1_1_4::request::pulls_delete_pending_review::reqwest_blocking_builder(
31424            self.config.base_url.as_ref(),
31425            owner,
31426            repo,
31427            pull_number,
31428            review_id,
31429            self.config.user_agent.as_ref(),
31430            self.config.accept.as_deref(),
31431        )?
31432        .with_authentication(&theScheme)?;
31433
31434        let theRequest =
31435            crate::v1_1_4::request::pulls_delete_pending_review::reqwest_blocking_request(theBuilder)?;
31436
31437        ::log::debug!("HTTP request: {:?}", &theRequest);
31438
31439        let theResponse = self.client.execute(theRequest)?;
31440
31441        ::log::debug!("HTTP response: {:?}", &theResponse);
31442
31443        Ok(theResponse)
31444    }
31445
31446    /// List comments for a pull request review
31447    /// 
31448    /// List comments for a specific pull request review.
31449    /// 
31450    /// [API method documentation](https://docs.github.com/rest/reference/pulls#list-comments-for-a-pull-request-review)
31451    pub fn pulls_list_comments_for_review(
31452        &self,
31453        owner: &str,
31454        repo: &str,
31455        pull_number: i64,
31456        review_id: i64,
31457        per_page: ::std::option::Option<i64>,
31458        page: ::std::option::Option<i64>,
31459    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31460        let mut theScheme = AuthScheme::from(&self.config.authentication);
31461
31462        while let Some(auth_step) = theScheme.step()? {
31463            match auth_step {
31464                ::authentic::AuthenticationStep::Request(auth_request) => {
31465                    theScheme.respond(self.client.execute(auth_request));
31466                }
31467                ::authentic::AuthenticationStep::WaitFor(duration) => {
31468                    (self.sleep)(duration);
31469                }
31470            }
31471        }
31472        let theBuilder = crate::v1_1_4::request::pulls_list_comments_for_review::reqwest_blocking_builder(
31473            self.config.base_url.as_ref(),
31474            owner,
31475            repo,
31476            pull_number,
31477            review_id,
31478            per_page,
31479            page,
31480            self.config.user_agent.as_ref(),
31481            self.config.accept.as_deref(),
31482        )?
31483        .with_authentication(&theScheme)?;
31484
31485        let theRequest =
31486            crate::v1_1_4::request::pulls_list_comments_for_review::reqwest_blocking_request(theBuilder)?;
31487
31488        ::log::debug!("HTTP request: {:?}", &theRequest);
31489
31490        let theResponse = self.client.execute(theRequest)?;
31491
31492        ::log::debug!("HTTP response: {:?}", &theResponse);
31493
31494        Ok(theResponse)
31495    }
31496
31497    /// Dismiss a review for a pull request
31498    /// 
31499    /// **Note:** To dismiss a pull request review on a [protected branch](https://docs.github.com/rest/reference/repos#branches), you must be a repository administrator or be included in the list of people or teams who can dismiss pull request reviews.
31500    /// 
31501    /// [API method documentation](https://docs.github.com/rest/reference/pulls#dismiss-a-review-for-a-pull-request)
31502    ///
31503    /// # Content
31504    ///
31505    /// - [`&v1_1_4::request::pulls_dismiss_review::body::Json`](crate::v1_1_4::request::pulls_dismiss_review::body::Json)
31506    pub fn pulls_dismiss_review<Content>(
31507        &self,
31508        owner: &str,
31509        repo: &str,
31510        pull_number: i64,
31511        review_id: i64,
31512        theContent: Content,
31513    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
31514    where
31515        Content: Copy + TryInto<crate::v1_1_4::request::pulls_dismiss_review::Content<::reqwest::blocking::Body>>,
31516        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_dismiss_review::Content<::reqwest::blocking::Body>>>::Error>
31517    {
31518        let mut theScheme = AuthScheme::from(&self.config.authentication);
31519
31520        while let Some(auth_step) = theScheme.step()? {
31521            match auth_step {
31522                ::authentic::AuthenticationStep::Request(auth_request) => {
31523                    theScheme.respond(self.client.execute(auth_request));
31524                }
31525                ::authentic::AuthenticationStep::WaitFor(duration) => {
31526                    (self.sleep)(duration);
31527                }
31528            }
31529        }
31530        let theBuilder = crate::v1_1_4::request::pulls_dismiss_review::reqwest_blocking_builder(
31531            self.config.base_url.as_ref(),
31532            owner,
31533            repo,
31534            pull_number,
31535            review_id,
31536            self.config.user_agent.as_ref(),
31537            self.config.accept.as_deref(),
31538        )?
31539        .with_authentication(&theScheme)?;
31540
31541        let theRequest = crate::v1_1_4::request::pulls_dismiss_review::reqwest_blocking_request(
31542            theBuilder,
31543            theContent.try_into()?,
31544        )?;
31545
31546        ::log::debug!("HTTP request: {:?}", &theRequest);
31547
31548        let theResponse = self.client.execute(theRequest)?;
31549
31550        ::log::debug!("HTTP response: {:?}", &theResponse);
31551
31552        Ok(theResponse)
31553    }
31554
31555    /// Submit a review for a pull request
31556    /// 
31557    /// [API method documentation](https://docs.github.com/rest/reference/pulls#submit-a-review-for-a-pull-request)
31558    ///
31559    /// # Content
31560    ///
31561    /// - [`&v1_1_4::request::pulls_submit_review::body::Json`](crate::v1_1_4::request::pulls_submit_review::body::Json)
31562    pub fn pulls_submit_review<Content>(
31563        &self,
31564        owner: &str,
31565        repo: &str,
31566        pull_number: i64,
31567        review_id: i64,
31568        theContent: Content,
31569    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
31570    where
31571        Content: Copy + TryInto<crate::v1_1_4::request::pulls_submit_review::Content<::reqwest::blocking::Body>>,
31572        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_submit_review::Content<::reqwest::blocking::Body>>>::Error>
31573    {
31574        let mut theScheme = AuthScheme::from(&self.config.authentication);
31575
31576        while let Some(auth_step) = theScheme.step()? {
31577            match auth_step {
31578                ::authentic::AuthenticationStep::Request(auth_request) => {
31579                    theScheme.respond(self.client.execute(auth_request));
31580                }
31581                ::authentic::AuthenticationStep::WaitFor(duration) => {
31582                    (self.sleep)(duration);
31583                }
31584            }
31585        }
31586        let theBuilder = crate::v1_1_4::request::pulls_submit_review::reqwest_blocking_builder(
31587            self.config.base_url.as_ref(),
31588            owner,
31589            repo,
31590            pull_number,
31591            review_id,
31592            self.config.user_agent.as_ref(),
31593            self.config.accept.as_deref(),
31594        )?
31595        .with_authentication(&theScheme)?;
31596
31597        let theRequest = crate::v1_1_4::request::pulls_submit_review::reqwest_blocking_request(
31598            theBuilder,
31599            theContent.try_into()?,
31600        )?;
31601
31602        ::log::debug!("HTTP request: {:?}", &theRequest);
31603
31604        let theResponse = self.client.execute(theRequest)?;
31605
31606        ::log::debug!("HTTP response: {:?}", &theResponse);
31607
31608        Ok(theResponse)
31609    }
31610
31611    /// Update a pull request branch
31612    /// 
31613    /// Updates the pull request branch with the latest upstream changes by merging HEAD from the base branch into the pull request branch.
31614    /// 
31615    /// [API method documentation](https://docs.github.com/rest/reference/pulls#update-a-pull-request-branch)
31616    ///
31617    /// # Content
31618    ///
31619    /// - [`&::std::option::Option<crate::v1_1_4::request::pulls_update_branch::body::Json>`](crate::v1_1_4::request::pulls_update_branch::body::Json)
31620    pub fn pulls_update_branch<Content>(
31621        &self,
31622        owner: &str,
31623        repo: &str,
31624        pull_number: i64,
31625        theContent: Content,
31626    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
31627    where
31628        Content: Copy + TryInto<crate::v1_1_4::request::pulls_update_branch::Content<::reqwest::blocking::Body>>,
31629        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::pulls_update_branch::Content<::reqwest::blocking::Body>>>::Error>
31630    {
31631        let mut theScheme = AuthScheme::from(&self.config.authentication);
31632
31633        while let Some(auth_step) = theScheme.step()? {
31634            match auth_step {
31635                ::authentic::AuthenticationStep::Request(auth_request) => {
31636                    theScheme.respond(self.client.execute(auth_request));
31637                }
31638                ::authentic::AuthenticationStep::WaitFor(duration) => {
31639                    (self.sleep)(duration);
31640                }
31641            }
31642        }
31643        let theBuilder = crate::v1_1_4::request::pulls_update_branch::reqwest_blocking_builder(
31644            self.config.base_url.as_ref(),
31645            owner,
31646            repo,
31647            pull_number,
31648            self.config.user_agent.as_ref(),
31649            self.config.accept.as_deref(),
31650        )?
31651        .with_authentication(&theScheme)?;
31652
31653        let theRequest = crate::v1_1_4::request::pulls_update_branch::reqwest_blocking_request(
31654            theBuilder,
31655            theContent.try_into()?,
31656        )?;
31657
31658        ::log::debug!("HTTP request: {:?}", &theRequest);
31659
31660        let theResponse = self.client.execute(theRequest)?;
31661
31662        ::log::debug!("HTTP response: {:?}", &theResponse);
31663
31664        Ok(theResponse)
31665    }
31666
31667    /// Get a repository README
31668    /// 
31669    /// Gets the preferred README for a repository.
31670    /// 
31671    /// READMEs support [custom media types](https://docs.github.com/rest/reference/repos#custom-media-types) for retrieving the raw content or rendered HTML.
31672    /// 
31673    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-repository-readme)
31674    pub fn repos_get_readme(
31675        &self,
31676        owner: &str,
31677        repo: &str,
31678        r#ref: ::std::option::Option<&str>,
31679    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31680        let mut theScheme = AuthScheme::from(&self.config.authentication);
31681
31682        while let Some(auth_step) = theScheme.step()? {
31683            match auth_step {
31684                ::authentic::AuthenticationStep::Request(auth_request) => {
31685                    theScheme.respond(self.client.execute(auth_request));
31686                }
31687                ::authentic::AuthenticationStep::WaitFor(duration) => {
31688                    (self.sleep)(duration);
31689                }
31690            }
31691        }
31692        let theBuilder = crate::v1_1_4::request::repos_get_readme::reqwest_blocking_builder(
31693            self.config.base_url.as_ref(),
31694            owner,
31695            repo,
31696            r#ref,
31697            self.config.user_agent.as_ref(),
31698            self.config.accept.as_deref(),
31699        )?
31700        .with_authentication(&theScheme)?;
31701
31702        let theRequest =
31703            crate::v1_1_4::request::repos_get_readme::reqwest_blocking_request(theBuilder)?;
31704
31705        ::log::debug!("HTTP request: {:?}", &theRequest);
31706
31707        let theResponse = self.client.execute(theRequest)?;
31708
31709        ::log::debug!("HTTP response: {:?}", &theResponse);
31710
31711        Ok(theResponse)
31712    }
31713
31714    /// Get a repository README for a directory
31715    /// 
31716    /// Gets the README from a repository directory.
31717    /// 
31718    /// READMEs support [custom media types](https://docs.github.com/rest/reference/repos#custom-media-types) for retrieving the raw content or rendered HTML.
31719    /// 
31720    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-repository-directory-readme)
31721    pub fn repos_get_readme_in_directory(
31722        &self,
31723        owner: &str,
31724        repo: &str,
31725        dir: &str,
31726        r#ref: ::std::option::Option<&str>,
31727    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31728        let mut theScheme = AuthScheme::from(&self.config.authentication);
31729
31730        while let Some(auth_step) = theScheme.step()? {
31731            match auth_step {
31732                ::authentic::AuthenticationStep::Request(auth_request) => {
31733                    theScheme.respond(self.client.execute(auth_request));
31734                }
31735                ::authentic::AuthenticationStep::WaitFor(duration) => {
31736                    (self.sleep)(duration);
31737                }
31738            }
31739        }
31740        let theBuilder = crate::v1_1_4::request::repos_get_readme_in_directory::reqwest_blocking_builder(
31741            self.config.base_url.as_ref(),
31742            owner,
31743            repo,
31744            dir,
31745            r#ref,
31746            self.config.user_agent.as_ref(),
31747            self.config.accept.as_deref(),
31748        )?
31749        .with_authentication(&theScheme)?;
31750
31751        let theRequest =
31752            crate::v1_1_4::request::repos_get_readme_in_directory::reqwest_blocking_request(theBuilder)?;
31753
31754        ::log::debug!("HTTP request: {:?}", &theRequest);
31755
31756        let theResponse = self.client.execute(theRequest)?;
31757
31758        ::log::debug!("HTTP response: {:?}", &theResponse);
31759
31760        Ok(theResponse)
31761    }
31762
31763    /// List releases
31764    /// 
31765    /// This returns a list of releases, which does not include regular Git tags that have not been associated with a release. To get a list of Git tags, use the [Repository Tags API](https://docs.github.com/rest/reference/repos#list-repository-tags).
31766    /// 
31767    /// Information about published releases are available to everyone. Only users with push access will receive listings for draft releases.
31768    /// 
31769    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-releases)
31770    pub fn repos_list_releases(
31771        &self,
31772        owner: &str,
31773        repo: &str,
31774        per_page: ::std::option::Option<i64>,
31775        page: ::std::option::Option<i64>,
31776    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31777        let mut theScheme = AuthScheme::from(&self.config.authentication);
31778
31779        while let Some(auth_step) = theScheme.step()? {
31780            match auth_step {
31781                ::authentic::AuthenticationStep::Request(auth_request) => {
31782                    theScheme.respond(self.client.execute(auth_request));
31783                }
31784                ::authentic::AuthenticationStep::WaitFor(duration) => {
31785                    (self.sleep)(duration);
31786                }
31787            }
31788        }
31789        let theBuilder = crate::v1_1_4::request::repos_list_releases::reqwest_blocking_builder(
31790            self.config.base_url.as_ref(),
31791            owner,
31792            repo,
31793            per_page,
31794            page,
31795            self.config.user_agent.as_ref(),
31796            self.config.accept.as_deref(),
31797        )?
31798        .with_authentication(&theScheme)?;
31799
31800        let theRequest =
31801            crate::v1_1_4::request::repos_list_releases::reqwest_blocking_request(theBuilder)?;
31802
31803        ::log::debug!("HTTP request: {:?}", &theRequest);
31804
31805        let theResponse = self.client.execute(theRequest)?;
31806
31807        ::log::debug!("HTTP response: {:?}", &theResponse);
31808
31809        Ok(theResponse)
31810    }
31811
31812    /// Create a release
31813    /// 
31814    /// Users with push access to the repository can create a release.
31815    /// 
31816    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
31817    /// 
31818    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-release)
31819    ///
31820    /// # Content
31821    ///
31822    /// - [`&v1_1_4::request::repos_create_release::body::Json`](crate::v1_1_4::request::repos_create_release::body::Json)
31823    pub fn repos_create_release<Content>(
31824        &self,
31825        owner: &str,
31826        repo: &str,
31827        theContent: Content,
31828    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
31829    where
31830        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_release::Content<::reqwest::blocking::Body>>,
31831        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_release::Content<::reqwest::blocking::Body>>>::Error>
31832    {
31833        let mut theScheme = AuthScheme::from(&self.config.authentication);
31834
31835        while let Some(auth_step) = theScheme.step()? {
31836            match auth_step {
31837                ::authentic::AuthenticationStep::Request(auth_request) => {
31838                    theScheme.respond(self.client.execute(auth_request));
31839                }
31840                ::authentic::AuthenticationStep::WaitFor(duration) => {
31841                    (self.sleep)(duration);
31842                }
31843            }
31844        }
31845        let theBuilder = crate::v1_1_4::request::repos_create_release::reqwest_blocking_builder(
31846            self.config.base_url.as_ref(),
31847            owner,
31848            repo,
31849            self.config.user_agent.as_ref(),
31850            self.config.accept.as_deref(),
31851        )?
31852        .with_authentication(&theScheme)?;
31853
31854        let theRequest = crate::v1_1_4::request::repos_create_release::reqwest_blocking_request(
31855            theBuilder,
31856            theContent.try_into()?,
31857        )?;
31858
31859        ::log::debug!("HTTP request: {:?}", &theRequest);
31860
31861        let theResponse = self.client.execute(theRequest)?;
31862
31863        ::log::debug!("HTTP response: {:?}", &theResponse);
31864
31865        Ok(theResponse)
31866    }
31867
31868    /// Get a release asset
31869    /// 
31870    /// To download the asset's binary content, set the `Accept` header of the request to [`application/octet-stream`](https://docs.github.com/rest/overview/media-types). The API will either redirect the client to the location, or stream it directly if possible. API clients should handle both a `200` or `302` response.
31871    /// 
31872    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-release-asset)
31873    pub fn repos_get_release_asset(
31874        &self,
31875        owner: &str,
31876        repo: &str,
31877        asset_id: i64,
31878    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31879        let mut theScheme = AuthScheme::from(&self.config.authentication);
31880
31881        while let Some(auth_step) = theScheme.step()? {
31882            match auth_step {
31883                ::authentic::AuthenticationStep::Request(auth_request) => {
31884                    theScheme.respond(self.client.execute(auth_request));
31885                }
31886                ::authentic::AuthenticationStep::WaitFor(duration) => {
31887                    (self.sleep)(duration);
31888                }
31889            }
31890        }
31891        let theBuilder = crate::v1_1_4::request::repos_get_release_asset::reqwest_blocking_builder(
31892            self.config.base_url.as_ref(),
31893            owner,
31894            repo,
31895            asset_id,
31896            self.config.user_agent.as_ref(),
31897            self.config.accept.as_deref(),
31898        )?
31899        .with_authentication(&theScheme)?;
31900
31901        let theRequest =
31902            crate::v1_1_4::request::repos_get_release_asset::reqwest_blocking_request(theBuilder)?;
31903
31904        ::log::debug!("HTTP request: {:?}", &theRequest);
31905
31906        let theResponse = self.client.execute(theRequest)?;
31907
31908        ::log::debug!("HTTP response: {:?}", &theResponse);
31909
31910        Ok(theResponse)
31911    }
31912
31913    /// Delete a release asset
31914    /// 
31915    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-release-asset)
31916    pub fn repos_delete_release_asset(
31917        &self,
31918        owner: &str,
31919        repo: &str,
31920        asset_id: i64,
31921    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
31922        let mut theScheme = AuthScheme::from(&self.config.authentication);
31923
31924        while let Some(auth_step) = theScheme.step()? {
31925            match auth_step {
31926                ::authentic::AuthenticationStep::Request(auth_request) => {
31927                    theScheme.respond(self.client.execute(auth_request));
31928                }
31929                ::authentic::AuthenticationStep::WaitFor(duration) => {
31930                    (self.sleep)(duration);
31931                }
31932            }
31933        }
31934        let theBuilder = crate::v1_1_4::request::repos_delete_release_asset::reqwest_blocking_builder(
31935            self.config.base_url.as_ref(),
31936            owner,
31937            repo,
31938            asset_id,
31939            self.config.user_agent.as_ref(),
31940            self.config.accept.as_deref(),
31941        )?
31942        .with_authentication(&theScheme)?;
31943
31944        let theRequest =
31945            crate::v1_1_4::request::repos_delete_release_asset::reqwest_blocking_request(theBuilder)?;
31946
31947        ::log::debug!("HTTP request: {:?}", &theRequest);
31948
31949        let theResponse = self.client.execute(theRequest)?;
31950
31951        ::log::debug!("HTTP response: {:?}", &theResponse);
31952
31953        Ok(theResponse)
31954    }
31955
31956    /// Update a release asset
31957    /// 
31958    /// Users with push access to the repository can edit a release asset.
31959    /// 
31960    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-a-release-asset)
31961    ///
31962    /// # Content
31963    ///
31964    /// - [`&v1_1_4::request::repos_update_release_asset::body::Json`](crate::v1_1_4::request::repos_update_release_asset::body::Json)
31965    pub fn repos_update_release_asset<Content>(
31966        &self,
31967        owner: &str,
31968        repo: &str,
31969        asset_id: i64,
31970        theContent: Content,
31971    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
31972    where
31973        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_release_asset::Content<::reqwest::blocking::Body>>,
31974        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_release_asset::Content<::reqwest::blocking::Body>>>::Error>
31975    {
31976        let mut theScheme = AuthScheme::from(&self.config.authentication);
31977
31978        while let Some(auth_step) = theScheme.step()? {
31979            match auth_step {
31980                ::authentic::AuthenticationStep::Request(auth_request) => {
31981                    theScheme.respond(self.client.execute(auth_request));
31982                }
31983                ::authentic::AuthenticationStep::WaitFor(duration) => {
31984                    (self.sleep)(duration);
31985                }
31986            }
31987        }
31988        let theBuilder = crate::v1_1_4::request::repos_update_release_asset::reqwest_blocking_builder(
31989            self.config.base_url.as_ref(),
31990            owner,
31991            repo,
31992            asset_id,
31993            self.config.user_agent.as_ref(),
31994            self.config.accept.as_deref(),
31995        )?
31996        .with_authentication(&theScheme)?;
31997
31998        let theRequest = crate::v1_1_4::request::repos_update_release_asset::reqwest_blocking_request(
31999            theBuilder,
32000            theContent.try_into()?,
32001        )?;
32002
32003        ::log::debug!("HTTP request: {:?}", &theRequest);
32004
32005        let theResponse = self.client.execute(theRequest)?;
32006
32007        ::log::debug!("HTTP response: {:?}", &theResponse);
32008
32009        Ok(theResponse)
32010    }
32011
32012    /// Generate release notes content for a release
32013    /// 
32014    /// Generate a name and body describing a [release](https://docs.github.com/rest/reference/repos#releases). The body content will be markdown formatted and contain information like the changes since last release and users who contributed. The generated release notes are not saved anywhere. They are intended to be generated and used when creating a new release.
32015    /// 
32016    /// [API method documentation](https://docs.github.com/rest/reference/repos#generate-release-notes)
32017    ///
32018    /// # Content
32019    ///
32020    /// - [`&v1_1_4::request::repos_generate_release_notes::body::Json`](crate::v1_1_4::request::repos_generate_release_notes::body::Json)
32021    pub fn repos_generate_release_notes<Content>(
32022        &self,
32023        owner: &str,
32024        repo: &str,
32025        theContent: Content,
32026    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
32027    where
32028        Content: Copy + TryInto<crate::v1_1_4::request::repos_generate_release_notes::Content<::reqwest::blocking::Body>>,
32029        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_generate_release_notes::Content<::reqwest::blocking::Body>>>::Error>
32030    {
32031        let mut theScheme = AuthScheme::from(&self.config.authentication);
32032
32033        while let Some(auth_step) = theScheme.step()? {
32034            match auth_step {
32035                ::authentic::AuthenticationStep::Request(auth_request) => {
32036                    theScheme.respond(self.client.execute(auth_request));
32037                }
32038                ::authentic::AuthenticationStep::WaitFor(duration) => {
32039                    (self.sleep)(duration);
32040                }
32041            }
32042        }
32043        let theBuilder = crate::v1_1_4::request::repos_generate_release_notes::reqwest_blocking_builder(
32044            self.config.base_url.as_ref(),
32045            owner,
32046            repo,
32047            self.config.user_agent.as_ref(),
32048            self.config.accept.as_deref(),
32049        )?
32050        .with_authentication(&theScheme)?;
32051
32052        let theRequest = crate::v1_1_4::request::repos_generate_release_notes::reqwest_blocking_request(
32053            theBuilder,
32054            theContent.try_into()?,
32055        )?;
32056
32057        ::log::debug!("HTTP request: {:?}", &theRequest);
32058
32059        let theResponse = self.client.execute(theRequest)?;
32060
32061        ::log::debug!("HTTP response: {:?}", &theResponse);
32062
32063        Ok(theResponse)
32064    }
32065
32066    /// Get the latest release
32067    /// 
32068    /// View the latest published full release for the repository.
32069    /// 
32070    /// The latest release is the most recent non-prerelease, non-draft release, sorted by the `created_at` attribute. The `created_at` attribute is the date of the commit used for the release, and not the date when the release was drafted or published.
32071    /// 
32072    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-the-latest-release)
32073    pub fn repos_get_latest_release(
32074        &self,
32075        owner: &str,
32076        repo: &str,
32077    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32078        let mut theScheme = AuthScheme::from(&self.config.authentication);
32079
32080        while let Some(auth_step) = theScheme.step()? {
32081            match auth_step {
32082                ::authentic::AuthenticationStep::Request(auth_request) => {
32083                    theScheme.respond(self.client.execute(auth_request));
32084                }
32085                ::authentic::AuthenticationStep::WaitFor(duration) => {
32086                    (self.sleep)(duration);
32087                }
32088            }
32089        }
32090        let theBuilder = crate::v1_1_4::request::repos_get_latest_release::reqwest_blocking_builder(
32091            self.config.base_url.as_ref(),
32092            owner,
32093            repo,
32094            self.config.user_agent.as_ref(),
32095            self.config.accept.as_deref(),
32096        )?
32097        .with_authentication(&theScheme)?;
32098
32099        let theRequest =
32100            crate::v1_1_4::request::repos_get_latest_release::reqwest_blocking_request(theBuilder)?;
32101
32102        ::log::debug!("HTTP request: {:?}", &theRequest);
32103
32104        let theResponse = self.client.execute(theRequest)?;
32105
32106        ::log::debug!("HTTP response: {:?}", &theResponse);
32107
32108        Ok(theResponse)
32109    }
32110
32111    /// Get a release by tag name
32112    /// 
32113    /// Get a published release with the specified tag.
32114    /// 
32115    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-release-by-tag-name)
32116    pub fn repos_get_release_by_tag(
32117        &self,
32118        owner: &str,
32119        repo: &str,
32120        tag: &str,
32121    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32122        let mut theScheme = AuthScheme::from(&self.config.authentication);
32123
32124        while let Some(auth_step) = theScheme.step()? {
32125            match auth_step {
32126                ::authentic::AuthenticationStep::Request(auth_request) => {
32127                    theScheme.respond(self.client.execute(auth_request));
32128                }
32129                ::authentic::AuthenticationStep::WaitFor(duration) => {
32130                    (self.sleep)(duration);
32131                }
32132            }
32133        }
32134        let theBuilder = crate::v1_1_4::request::repos_get_release_by_tag::reqwest_blocking_builder(
32135            self.config.base_url.as_ref(),
32136            owner,
32137            repo,
32138            tag,
32139            self.config.user_agent.as_ref(),
32140            self.config.accept.as_deref(),
32141        )?
32142        .with_authentication(&theScheme)?;
32143
32144        let theRequest =
32145            crate::v1_1_4::request::repos_get_release_by_tag::reqwest_blocking_request(theBuilder)?;
32146
32147        ::log::debug!("HTTP request: {:?}", &theRequest);
32148
32149        let theResponse = self.client.execute(theRequest)?;
32150
32151        ::log::debug!("HTTP response: {:?}", &theResponse);
32152
32153        Ok(theResponse)
32154    }
32155
32156    /// Get a release
32157    /// 
32158    /// **Note:** This returns an `upload_url` key corresponding to the endpoint for uploading release assets. This key is a [hypermedia resource](https://docs.github.com/rest/overview/resources-in-the-rest-api#hypermedia).
32159    /// 
32160    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-a-release)
32161    pub fn repos_get_release(
32162        &self,
32163        owner: &str,
32164        repo: &str,
32165        release_id: i64,
32166    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32167        let mut theScheme = AuthScheme::from(&self.config.authentication);
32168
32169        while let Some(auth_step) = theScheme.step()? {
32170            match auth_step {
32171                ::authentic::AuthenticationStep::Request(auth_request) => {
32172                    theScheme.respond(self.client.execute(auth_request));
32173                }
32174                ::authentic::AuthenticationStep::WaitFor(duration) => {
32175                    (self.sleep)(duration);
32176                }
32177            }
32178        }
32179        let theBuilder = crate::v1_1_4::request::repos_get_release::reqwest_blocking_builder(
32180            self.config.base_url.as_ref(),
32181            owner,
32182            repo,
32183            release_id,
32184            self.config.user_agent.as_ref(),
32185            self.config.accept.as_deref(),
32186        )?
32187        .with_authentication(&theScheme)?;
32188
32189        let theRequest =
32190            crate::v1_1_4::request::repos_get_release::reqwest_blocking_request(theBuilder)?;
32191
32192        ::log::debug!("HTTP request: {:?}", &theRequest);
32193
32194        let theResponse = self.client.execute(theRequest)?;
32195
32196        ::log::debug!("HTTP response: {:?}", &theResponse);
32197
32198        Ok(theResponse)
32199    }
32200
32201    /// Delete a release
32202    /// 
32203    /// Users with push access to the repository can delete a release.
32204    /// 
32205    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-a-release)
32206    pub fn repos_delete_release(
32207        &self,
32208        owner: &str,
32209        repo: &str,
32210        release_id: i64,
32211    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32212        let mut theScheme = AuthScheme::from(&self.config.authentication);
32213
32214        while let Some(auth_step) = theScheme.step()? {
32215            match auth_step {
32216                ::authentic::AuthenticationStep::Request(auth_request) => {
32217                    theScheme.respond(self.client.execute(auth_request));
32218                }
32219                ::authentic::AuthenticationStep::WaitFor(duration) => {
32220                    (self.sleep)(duration);
32221                }
32222            }
32223        }
32224        let theBuilder = crate::v1_1_4::request::repos_delete_release::reqwest_blocking_builder(
32225            self.config.base_url.as_ref(),
32226            owner,
32227            repo,
32228            release_id,
32229            self.config.user_agent.as_ref(),
32230            self.config.accept.as_deref(),
32231        )?
32232        .with_authentication(&theScheme)?;
32233
32234        let theRequest =
32235            crate::v1_1_4::request::repos_delete_release::reqwest_blocking_request(theBuilder)?;
32236
32237        ::log::debug!("HTTP request: {:?}", &theRequest);
32238
32239        let theResponse = self.client.execute(theRequest)?;
32240
32241        ::log::debug!("HTTP response: {:?}", &theResponse);
32242
32243        Ok(theResponse)
32244    }
32245
32246    /// Update a release
32247    /// 
32248    /// Users with push access to the repository can edit a release.
32249    /// 
32250    /// [API method documentation](https://docs.github.com/rest/reference/repos#update-a-release)
32251    ///
32252    /// # Content
32253    ///
32254    /// - [`&v1_1_4::request::repos_update_release::body::Json`](crate::v1_1_4::request::repos_update_release::body::Json)
32255    pub fn repos_update_release<Content>(
32256        &self,
32257        owner: &str,
32258        repo: &str,
32259        release_id: i64,
32260        theContent: Content,
32261    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
32262    where
32263        Content: Copy + TryInto<crate::v1_1_4::request::repos_update_release::Content<::reqwest::blocking::Body>>,
32264        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_update_release::Content<::reqwest::blocking::Body>>>::Error>
32265    {
32266        let mut theScheme = AuthScheme::from(&self.config.authentication);
32267
32268        while let Some(auth_step) = theScheme.step()? {
32269            match auth_step {
32270                ::authentic::AuthenticationStep::Request(auth_request) => {
32271                    theScheme.respond(self.client.execute(auth_request));
32272                }
32273                ::authentic::AuthenticationStep::WaitFor(duration) => {
32274                    (self.sleep)(duration);
32275                }
32276            }
32277        }
32278        let theBuilder = crate::v1_1_4::request::repos_update_release::reqwest_blocking_builder(
32279            self.config.base_url.as_ref(),
32280            owner,
32281            repo,
32282            release_id,
32283            self.config.user_agent.as_ref(),
32284            self.config.accept.as_deref(),
32285        )?
32286        .with_authentication(&theScheme)?;
32287
32288        let theRequest = crate::v1_1_4::request::repos_update_release::reqwest_blocking_request(
32289            theBuilder,
32290            theContent.try_into()?,
32291        )?;
32292
32293        ::log::debug!("HTTP request: {:?}", &theRequest);
32294
32295        let theResponse = self.client.execute(theRequest)?;
32296
32297        ::log::debug!("HTTP response: {:?}", &theResponse);
32298
32299        Ok(theResponse)
32300    }
32301
32302    /// List release assets
32303    /// 
32304    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-release-assets)
32305    pub fn repos_list_release_assets(
32306        &self,
32307        owner: &str,
32308        repo: &str,
32309        release_id: i64,
32310        per_page: ::std::option::Option<i64>,
32311        page: ::std::option::Option<i64>,
32312    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32313        let mut theScheme = AuthScheme::from(&self.config.authentication);
32314
32315        while let Some(auth_step) = theScheme.step()? {
32316            match auth_step {
32317                ::authentic::AuthenticationStep::Request(auth_request) => {
32318                    theScheme.respond(self.client.execute(auth_request));
32319                }
32320                ::authentic::AuthenticationStep::WaitFor(duration) => {
32321                    (self.sleep)(duration);
32322                }
32323            }
32324        }
32325        let theBuilder = crate::v1_1_4::request::repos_list_release_assets::reqwest_blocking_builder(
32326            self.config.base_url.as_ref(),
32327            owner,
32328            repo,
32329            release_id,
32330            per_page,
32331            page,
32332            self.config.user_agent.as_ref(),
32333            self.config.accept.as_deref(),
32334        )?
32335        .with_authentication(&theScheme)?;
32336
32337        let theRequest =
32338            crate::v1_1_4::request::repos_list_release_assets::reqwest_blocking_request(theBuilder)?;
32339
32340        ::log::debug!("HTTP request: {:?}", &theRequest);
32341
32342        let theResponse = self.client.execute(theRequest)?;
32343
32344        ::log::debug!("HTTP response: {:?}", &theResponse);
32345
32346        Ok(theResponse)
32347    }
32348
32349    /// Upload a release asset
32350    /// 
32351    /// This endpoint makes use of [a Hypermedia relation](https://docs.github.com/rest/overview/resources-in-the-rest-api#hypermedia) to determine which URL to access. The endpoint you call to upload release assets is specific to your release. Use the `upload_url` returned in
32352    /// the response of the [Create a release endpoint](https://docs.github.com/rest/reference/repos#create-a-release) to upload a release asset.
32353    /// 
32354    /// You need to use an HTTP client which supports [SNI](http://en.wikipedia.org/wiki/Server_Name_Indication) to make calls to this endpoint.
32355    /// 
32356    /// Most libraries will set the required `Content-Length` header automatically. Use the required `Content-Type` header to provide the media type of the asset. For a list of media types, see [Media Types](https://www.iana.org/assignments/media-types/media-types.xhtml). For example: 
32357    /// 
32358    /// `application/zip`
32359    /// 
32360    /// GitHub expects the asset data in its raw binary form, rather than JSON. You will send the raw binary content of the asset as the request body. Everything else about the endpoint is the same as the rest of the API. For example,
32361    /// you'll still need to pass your authentication to be able to upload an asset.
32362    /// 
32363    /// When an upstream failure occurs, you will receive a `502 Bad Gateway` status. This may leave an empty asset with a state of `starter`. It can be safely deleted.
32364    /// 
32365    /// **Notes:**
32366    /// *   GitHub renames asset filenames that have special characters, non-alphanumeric characters, and leading or trailing periods. The "[List assets for a release](https://docs.github.com/rest/reference/repos#list-assets-for-a-release)"
32367    /// endpoint lists the renamed filenames. For more information and help, contact [GitHub Support](https://support.github.com/contact?tags=dotcom-rest-api).
32368    /// *   If you upload an asset with the same filename as another uploaded asset, you'll receive an error and must delete the old file before you can re-upload the new asset.
32369    /// 
32370    /// [API method documentation](https://docs.github.com/rest/reference/repos#upload-a-release-asset)
32371    pub fn repos_upload_release_asset<Content>(
32372        &self,
32373        owner: &str,
32374        repo: &str,
32375        release_id: i64,
32376        name: &str,
32377        label: ::std::option::Option<&str>,
32378        theContent: Content,
32379    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
32380    where
32381        Content: Copy + TryInto<crate::v1_1_4::request::repos_upload_release_asset::Content<::reqwest::blocking::Body>>,
32382        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_upload_release_asset::Content<::reqwest::blocking::Body>>>::Error>
32383    {
32384        let mut theScheme = AuthScheme::from(&self.config.authentication);
32385
32386        while let Some(auth_step) = theScheme.step()? {
32387            match auth_step {
32388                ::authentic::AuthenticationStep::Request(auth_request) => {
32389                    theScheme.respond(self.client.execute(auth_request));
32390                }
32391                ::authentic::AuthenticationStep::WaitFor(duration) => {
32392                    (self.sleep)(duration);
32393                }
32394            }
32395        }
32396        let theBuilder = crate::v1_1_4::request::repos_upload_release_asset::reqwest_blocking_builder(
32397            self.config.base_url.as_ref(),
32398            owner,
32399            repo,
32400            release_id,
32401            name,
32402            label,
32403            self.config.user_agent.as_ref(),
32404            self.config.accept.as_deref(),
32405        )?
32406        .with_authentication(&theScheme)?;
32407
32408        let theRequest = crate::v1_1_4::request::repos_upload_release_asset::reqwest_blocking_request(
32409            theBuilder,
32410            theContent.try_into()?,
32411        )?;
32412
32413        ::log::debug!("HTTP request: {:?}", &theRequest);
32414
32415        let theResponse = self.client.execute(theRequest)?;
32416
32417        ::log::debug!("HTTP response: {:?}", &theResponse);
32418
32419        Ok(theResponse)
32420    }
32421
32422    /// List reactions for a release
32423    /// 
32424    /// List the reactions to a [release](https://docs.github.com/rest/reference/repos#releases).
32425    /// 
32426    /// [API method documentation](https://docs.github.com/rest/reference/reactions/#list-reactions-for-a-release)
32427    pub fn reactions_list_for_release(
32428        &self,
32429        owner: &str,
32430        repo: &str,
32431        release_id: i64,
32432        content: ::std::option::Option<&str>,
32433        per_page: ::std::option::Option<i64>,
32434        page: ::std::option::Option<i64>,
32435    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32436        let mut theScheme = AuthScheme::from(&self.config.authentication);
32437
32438        while let Some(auth_step) = theScheme.step()? {
32439            match auth_step {
32440                ::authentic::AuthenticationStep::Request(auth_request) => {
32441                    theScheme.respond(self.client.execute(auth_request));
32442                }
32443                ::authentic::AuthenticationStep::WaitFor(duration) => {
32444                    (self.sleep)(duration);
32445                }
32446            }
32447        }
32448        let theBuilder = crate::v1_1_4::request::reactions_list_for_release::reqwest_blocking_builder(
32449            self.config.base_url.as_ref(),
32450            owner,
32451            repo,
32452            release_id,
32453            content,
32454            per_page,
32455            page,
32456            self.config.user_agent.as_ref(),
32457            self.config.accept.as_deref(),
32458        )?
32459        .with_authentication(&theScheme)?;
32460
32461        let theRequest =
32462            crate::v1_1_4::request::reactions_list_for_release::reqwest_blocking_request(theBuilder)?;
32463
32464        ::log::debug!("HTTP request: {:?}", &theRequest);
32465
32466        let theResponse = self.client.execute(theRequest)?;
32467
32468        ::log::debug!("HTTP response: {:?}", &theResponse);
32469
32470        Ok(theResponse)
32471    }
32472
32473    /// Create reaction for a release
32474    /// 
32475    /// Create a reaction to a [release](https://docs.github.com/rest/reference/repos#releases). A response with a `Status: 200 OK` means that you already added the reaction type to this release.
32476    /// 
32477    /// [API method documentation](https://docs.github.com/rest/reference/reactions/#create-reaction-for-a-release)
32478    ///
32479    /// # Content
32480    ///
32481    /// - [`&v1_1_4::request::reactions_create_for_release::body::Json`](crate::v1_1_4::request::reactions_create_for_release::body::Json)
32482    pub fn reactions_create_for_release<Content>(
32483        &self,
32484        owner: &str,
32485        repo: &str,
32486        release_id: i64,
32487        theContent: Content,
32488    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
32489    where
32490        Content: Copy + TryInto<crate::v1_1_4::request::reactions_create_for_release::Content<::reqwest::blocking::Body>>,
32491        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::reactions_create_for_release::Content<::reqwest::blocking::Body>>>::Error>
32492    {
32493        let mut theScheme = AuthScheme::from(&self.config.authentication);
32494
32495        while let Some(auth_step) = theScheme.step()? {
32496            match auth_step {
32497                ::authentic::AuthenticationStep::Request(auth_request) => {
32498                    theScheme.respond(self.client.execute(auth_request));
32499                }
32500                ::authentic::AuthenticationStep::WaitFor(duration) => {
32501                    (self.sleep)(duration);
32502                }
32503            }
32504        }
32505        let theBuilder = crate::v1_1_4::request::reactions_create_for_release::reqwest_blocking_builder(
32506            self.config.base_url.as_ref(),
32507            owner,
32508            repo,
32509            release_id,
32510            self.config.user_agent.as_ref(),
32511            self.config.accept.as_deref(),
32512        )?
32513        .with_authentication(&theScheme)?;
32514
32515        let theRequest = crate::v1_1_4::request::reactions_create_for_release::reqwest_blocking_request(
32516            theBuilder,
32517            theContent.try_into()?,
32518        )?;
32519
32520        ::log::debug!("HTTP request: {:?}", &theRequest);
32521
32522        let theResponse = self.client.execute(theRequest)?;
32523
32524        ::log::debug!("HTTP response: {:?}", &theResponse);
32525
32526        Ok(theResponse)
32527    }
32528
32529    /// Delete a release reaction
32530    /// 
32531    /// **Note:** You can also specify a repository by `repository_id` using the route `DELETE delete /repositories/:repository_id/releases/:release_id/reactions/:reaction_id`.
32532    /// 
32533    /// Delete a reaction to a [release](https://docs.github.com/rest/reference/repos#releases).
32534    /// 
32535    /// [API method documentation](https://docs.github.com/rest/reference/reactions/#delete-a-release-reaction)
32536    pub fn reactions_delete_for_release(
32537        &self,
32538        owner: &str,
32539        repo: &str,
32540        release_id: i64,
32541        reaction_id: i64,
32542    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32543        let mut theScheme = AuthScheme::from(&self.config.authentication);
32544
32545        while let Some(auth_step) = theScheme.step()? {
32546            match auth_step {
32547                ::authentic::AuthenticationStep::Request(auth_request) => {
32548                    theScheme.respond(self.client.execute(auth_request));
32549                }
32550                ::authentic::AuthenticationStep::WaitFor(duration) => {
32551                    (self.sleep)(duration);
32552                }
32553            }
32554        }
32555        let theBuilder = crate::v1_1_4::request::reactions_delete_for_release::reqwest_blocking_builder(
32556            self.config.base_url.as_ref(),
32557            owner,
32558            repo,
32559            release_id,
32560            reaction_id,
32561            self.config.user_agent.as_ref(),
32562            self.config.accept.as_deref(),
32563        )?
32564        .with_authentication(&theScheme)?;
32565
32566        let theRequest =
32567            crate::v1_1_4::request::reactions_delete_for_release::reqwest_blocking_request(theBuilder)?;
32568
32569        ::log::debug!("HTTP request: {:?}", &theRequest);
32570
32571        let theResponse = self.client.execute(theRequest)?;
32572
32573        ::log::debug!("HTTP response: {:?}", &theResponse);
32574
32575        Ok(theResponse)
32576    }
32577
32578    /// List secret scanning alerts for a repository
32579    /// 
32580    /// Lists secret scanning alerts for an eligible repository, from newest to oldest.
32581    /// To use this endpoint, you must be an administrator for the repository or for the organization that owns the repository, and you must use a personal access token with the `repo` scope or `security_events` scope.
32582    /// For public repositories, you may instead use the `public_repo` scope.
32583    /// 
32584    /// GitHub Apps must have the `secret_scanning_alerts` read permission to use this endpoint.
32585    /// 
32586    /// [API method documentation](https://docs.github.com/rest/reference/secret-scanning#list-secret-scanning-alerts-for-a-repository)
32587    #[allow(clippy::too_many_arguments)]
32588    pub fn secret_scanning_list_alerts_for_repo(
32589        &self,
32590        owner: &str,
32591        repo: &str,
32592        state: ::std::option::Option<&str>,
32593        secret_type: ::std::option::Option<&str>,
32594        resolution: ::std::option::Option<&str>,
32595        page: ::std::option::Option<i64>,
32596        per_page: ::std::option::Option<i64>,
32597    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32598        let mut theScheme = AuthScheme::from(&self.config.authentication);
32599
32600        while let Some(auth_step) = theScheme.step()? {
32601            match auth_step {
32602                ::authentic::AuthenticationStep::Request(auth_request) => {
32603                    theScheme.respond(self.client.execute(auth_request));
32604                }
32605                ::authentic::AuthenticationStep::WaitFor(duration) => {
32606                    (self.sleep)(duration);
32607                }
32608            }
32609        }
32610        let theBuilder = crate::v1_1_4::request::secret_scanning_list_alerts_for_repo::reqwest_blocking_builder(
32611            self.config.base_url.as_ref(),
32612            owner,
32613            repo,
32614            state,
32615            secret_type,
32616            resolution,
32617            page,
32618            per_page,
32619            self.config.user_agent.as_ref(),
32620            self.config.accept.as_deref(),
32621        )?
32622        .with_authentication(&theScheme)?;
32623
32624        let theRequest =
32625            crate::v1_1_4::request::secret_scanning_list_alerts_for_repo::reqwest_blocking_request(theBuilder)?;
32626
32627        ::log::debug!("HTTP request: {:?}", &theRequest);
32628
32629        let theResponse = self.client.execute(theRequest)?;
32630
32631        ::log::debug!("HTTP response: {:?}", &theResponse);
32632
32633        Ok(theResponse)
32634    }
32635
32636    /// Get a secret scanning alert
32637    /// 
32638    /// Gets a single secret scanning alert detected in an eligible repository.
32639    /// To use this endpoint, you must be an administrator for the repository or for the organization that owns the repository, and you must use a personal access token with the `repo` scope or `security_events` scope.
32640    /// For public repositories, you may instead use the `public_repo` scope.
32641    /// 
32642    /// GitHub Apps must have the `secret_scanning_alerts` read permission to use this endpoint.
32643    /// 
32644    /// [API method documentation](https://docs.github.com/rest/reference/secret-scanning#get-a-secret-scanning-alert)
32645    pub fn secret_scanning_get_alert(
32646        &self,
32647        owner: &str,
32648        repo: &str,
32649        alert_number: i64,
32650    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32651        let mut theScheme = AuthScheme::from(&self.config.authentication);
32652
32653        while let Some(auth_step) = theScheme.step()? {
32654            match auth_step {
32655                ::authentic::AuthenticationStep::Request(auth_request) => {
32656                    theScheme.respond(self.client.execute(auth_request));
32657                }
32658                ::authentic::AuthenticationStep::WaitFor(duration) => {
32659                    (self.sleep)(duration);
32660                }
32661            }
32662        }
32663        let theBuilder = crate::v1_1_4::request::secret_scanning_get_alert::reqwest_blocking_builder(
32664            self.config.base_url.as_ref(),
32665            owner,
32666            repo,
32667            alert_number,
32668            self.config.user_agent.as_ref(),
32669            self.config.accept.as_deref(),
32670        )?
32671        .with_authentication(&theScheme)?;
32672
32673        let theRequest =
32674            crate::v1_1_4::request::secret_scanning_get_alert::reqwest_blocking_request(theBuilder)?;
32675
32676        ::log::debug!("HTTP request: {:?}", &theRequest);
32677
32678        let theResponse = self.client.execute(theRequest)?;
32679
32680        ::log::debug!("HTTP response: {:?}", &theResponse);
32681
32682        Ok(theResponse)
32683    }
32684
32685    /// Update a secret scanning alert
32686    /// 
32687    /// Updates the status of a secret scanning alert in an eligible repository.
32688    /// To use this endpoint, you must be an administrator for the repository or for the organization that owns the repository, and you must use a personal access token with the `repo` scope or `security_events` scope.
32689    /// For public repositories, you may instead use the `public_repo` scope.
32690    /// 
32691    /// GitHub Apps must have the `secret_scanning_alerts` write permission to use this endpoint.
32692    /// 
32693    /// [API method documentation](https://docs.github.com/rest/reference/secret-scanning#update-a-secret-scanning-alert)
32694    ///
32695    /// # Content
32696    ///
32697    /// - [`&v1_1_4::request::secret_scanning_update_alert::body::Json`](crate::v1_1_4::request::secret_scanning_update_alert::body::Json)
32698    pub fn secret_scanning_update_alert<Content>(
32699        &self,
32700        owner: &str,
32701        repo: &str,
32702        alert_number: i64,
32703        theContent: Content,
32704    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
32705    where
32706        Content: Copy + TryInto<crate::v1_1_4::request::secret_scanning_update_alert::Content<::reqwest::blocking::Body>>,
32707        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::secret_scanning_update_alert::Content<::reqwest::blocking::Body>>>::Error>
32708    {
32709        let mut theScheme = AuthScheme::from(&self.config.authentication);
32710
32711        while let Some(auth_step) = theScheme.step()? {
32712            match auth_step {
32713                ::authentic::AuthenticationStep::Request(auth_request) => {
32714                    theScheme.respond(self.client.execute(auth_request));
32715                }
32716                ::authentic::AuthenticationStep::WaitFor(duration) => {
32717                    (self.sleep)(duration);
32718                }
32719            }
32720        }
32721        let theBuilder = crate::v1_1_4::request::secret_scanning_update_alert::reqwest_blocking_builder(
32722            self.config.base_url.as_ref(),
32723            owner,
32724            repo,
32725            alert_number,
32726            self.config.user_agent.as_ref(),
32727            self.config.accept.as_deref(),
32728        )?
32729        .with_authentication(&theScheme)?;
32730
32731        let theRequest = crate::v1_1_4::request::secret_scanning_update_alert::reqwest_blocking_request(
32732            theBuilder,
32733            theContent.try_into()?,
32734        )?;
32735
32736        ::log::debug!("HTTP request: {:?}", &theRequest);
32737
32738        let theResponse = self.client.execute(theRequest)?;
32739
32740        ::log::debug!("HTTP response: {:?}", &theResponse);
32741
32742        Ok(theResponse)
32743    }
32744
32745    /// List locations for a secret scanning alert
32746    /// 
32747    /// Lists all locations for a given secret scanning alert for an eligible repository.
32748    /// To use this endpoint, you must be an administrator for the repository or for the organization that owns the repository, and you must use a personal access token with the `repo` scope or `security_events` scope.
32749    /// For public repositories, you may instead use the `public_repo` scope.
32750    /// 
32751    /// GitHub Apps must have the `secret_scanning_alerts` read permission to use this endpoint.
32752    /// 
32753    /// [API method documentation](https://docs.github.com/rest/reference/secret-scanning#list-locations-for-a-secret-scanning-alert)
32754    pub fn secret_scanning_list_locations_for_alert(
32755        &self,
32756        owner: &str,
32757        repo: &str,
32758        alert_number: i64,
32759        page: ::std::option::Option<i64>,
32760        per_page: ::std::option::Option<i64>,
32761    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32762        let mut theScheme = AuthScheme::from(&self.config.authentication);
32763
32764        while let Some(auth_step) = theScheme.step()? {
32765            match auth_step {
32766                ::authentic::AuthenticationStep::Request(auth_request) => {
32767                    theScheme.respond(self.client.execute(auth_request));
32768                }
32769                ::authentic::AuthenticationStep::WaitFor(duration) => {
32770                    (self.sleep)(duration);
32771                }
32772            }
32773        }
32774        let theBuilder = crate::v1_1_4::request::secret_scanning_list_locations_for_alert::reqwest_blocking_builder(
32775            self.config.base_url.as_ref(),
32776            owner,
32777            repo,
32778            alert_number,
32779            page,
32780            per_page,
32781            self.config.user_agent.as_ref(),
32782            self.config.accept.as_deref(),
32783        )?
32784        .with_authentication(&theScheme)?;
32785
32786        let theRequest =
32787            crate::v1_1_4::request::secret_scanning_list_locations_for_alert::reqwest_blocking_request(theBuilder)?;
32788
32789        ::log::debug!("HTTP request: {:?}", &theRequest);
32790
32791        let theResponse = self.client.execute(theRequest)?;
32792
32793        ::log::debug!("HTTP response: {:?}", &theResponse);
32794
32795        Ok(theResponse)
32796    }
32797
32798    /// List stargazers
32799    /// 
32800    /// Lists the people that have starred the repository.
32801    /// 
32802    /// You can also find out _when_ stars were created by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
32803    /// 
32804    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-stargazers)
32805    pub fn activity_list_stargazers_for_repo(
32806        &self,
32807        owner: &str,
32808        repo: &str,
32809        per_page: ::std::option::Option<i64>,
32810        page: ::std::option::Option<i64>,
32811    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32812        let mut theScheme = AuthScheme::from(&self.config.authentication);
32813
32814        while let Some(auth_step) = theScheme.step()? {
32815            match auth_step {
32816                ::authentic::AuthenticationStep::Request(auth_request) => {
32817                    theScheme.respond(self.client.execute(auth_request));
32818                }
32819                ::authentic::AuthenticationStep::WaitFor(duration) => {
32820                    (self.sleep)(duration);
32821                }
32822            }
32823        }
32824        let theBuilder = crate::v1_1_4::request::activity_list_stargazers_for_repo::reqwest_blocking_builder(
32825            self.config.base_url.as_ref(),
32826            owner,
32827            repo,
32828            per_page,
32829            page,
32830            self.config.user_agent.as_ref(),
32831            self.config.accept.as_deref(),
32832        )?
32833        .with_authentication(&theScheme)?;
32834
32835        let theRequest =
32836            crate::v1_1_4::request::activity_list_stargazers_for_repo::reqwest_blocking_request(theBuilder)?;
32837
32838        ::log::debug!("HTTP request: {:?}", &theRequest);
32839
32840        let theResponse = self.client.execute(theRequest)?;
32841
32842        ::log::debug!("HTTP response: {:?}", &theResponse);
32843
32844        Ok(theResponse)
32845    }
32846
32847    /// Get the weekly commit activity
32848    /// 
32849    /// Returns a weekly aggregate of the number of additions and deletions pushed to a repository.
32850    /// 
32851    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-the-weekly-commit-activity)
32852    pub fn repos_get_code_frequency_stats(
32853        &self,
32854        owner: &str,
32855        repo: &str,
32856    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32857        let mut theScheme = AuthScheme::from(&self.config.authentication);
32858
32859        while let Some(auth_step) = theScheme.step()? {
32860            match auth_step {
32861                ::authentic::AuthenticationStep::Request(auth_request) => {
32862                    theScheme.respond(self.client.execute(auth_request));
32863                }
32864                ::authentic::AuthenticationStep::WaitFor(duration) => {
32865                    (self.sleep)(duration);
32866                }
32867            }
32868        }
32869        let theBuilder = crate::v1_1_4::request::repos_get_code_frequency_stats::reqwest_blocking_builder(
32870            self.config.base_url.as_ref(),
32871            owner,
32872            repo,
32873            self.config.user_agent.as_ref(),
32874            self.config.accept.as_deref(),
32875        )?
32876        .with_authentication(&theScheme)?;
32877
32878        let theRequest =
32879            crate::v1_1_4::request::repos_get_code_frequency_stats::reqwest_blocking_request(theBuilder)?;
32880
32881        ::log::debug!("HTTP request: {:?}", &theRequest);
32882
32883        let theResponse = self.client.execute(theRequest)?;
32884
32885        ::log::debug!("HTTP response: {:?}", &theResponse);
32886
32887        Ok(theResponse)
32888    }
32889
32890    /// Get the last year of commit activity
32891    /// 
32892    /// Returns the last year of commit activity grouped by week. The `days` array is a group of commits per day, starting on `Sunday`.
32893    /// 
32894    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-the-last-year-of-commit-activity)
32895    pub fn repos_get_commit_activity_stats(
32896        &self,
32897        owner: &str,
32898        repo: &str,
32899    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32900        let mut theScheme = AuthScheme::from(&self.config.authentication);
32901
32902        while let Some(auth_step) = theScheme.step()? {
32903            match auth_step {
32904                ::authentic::AuthenticationStep::Request(auth_request) => {
32905                    theScheme.respond(self.client.execute(auth_request));
32906                }
32907                ::authentic::AuthenticationStep::WaitFor(duration) => {
32908                    (self.sleep)(duration);
32909                }
32910            }
32911        }
32912        let theBuilder = crate::v1_1_4::request::repos_get_commit_activity_stats::reqwest_blocking_builder(
32913            self.config.base_url.as_ref(),
32914            owner,
32915            repo,
32916            self.config.user_agent.as_ref(),
32917            self.config.accept.as_deref(),
32918        )?
32919        .with_authentication(&theScheme)?;
32920
32921        let theRequest =
32922            crate::v1_1_4::request::repos_get_commit_activity_stats::reqwest_blocking_request(theBuilder)?;
32923
32924        ::log::debug!("HTTP request: {:?}", &theRequest);
32925
32926        let theResponse = self.client.execute(theRequest)?;
32927
32928        ::log::debug!("HTTP response: {:?}", &theResponse);
32929
32930        Ok(theResponse)
32931    }
32932
32933    /// Get all contributor commit activity
32934    /// 
32935    /// Returns the `total` number of commits authored by the contributor. In addition, the response includes a Weekly Hash (`weeks` array) with the following information:
32936    /// 
32937    /// *   `w` - Start of the week, given as a [Unix timestamp](http://en.wikipedia.org/wiki/Unix_time).
32938    /// *   `a` - Number of additions
32939    /// *   `d` - Number of deletions
32940    /// *   `c` - Number of commits
32941    /// 
32942    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-all-contributor-commit-activity)
32943    pub fn repos_get_contributors_stats(
32944        &self,
32945        owner: &str,
32946        repo: &str,
32947    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32948        let mut theScheme = AuthScheme::from(&self.config.authentication);
32949
32950        while let Some(auth_step) = theScheme.step()? {
32951            match auth_step {
32952                ::authentic::AuthenticationStep::Request(auth_request) => {
32953                    theScheme.respond(self.client.execute(auth_request));
32954                }
32955                ::authentic::AuthenticationStep::WaitFor(duration) => {
32956                    (self.sleep)(duration);
32957                }
32958            }
32959        }
32960        let theBuilder = crate::v1_1_4::request::repos_get_contributors_stats::reqwest_blocking_builder(
32961            self.config.base_url.as_ref(),
32962            owner,
32963            repo,
32964            self.config.user_agent.as_ref(),
32965            self.config.accept.as_deref(),
32966        )?
32967        .with_authentication(&theScheme)?;
32968
32969        let theRequest =
32970            crate::v1_1_4::request::repos_get_contributors_stats::reqwest_blocking_request(theBuilder)?;
32971
32972        ::log::debug!("HTTP request: {:?}", &theRequest);
32973
32974        let theResponse = self.client.execute(theRequest)?;
32975
32976        ::log::debug!("HTTP response: {:?}", &theResponse);
32977
32978        Ok(theResponse)
32979    }
32980
32981    /// Get the weekly commit count
32982    /// 
32983    /// Returns the total commit counts for the `owner` and total commit counts in `all`. `all` is everyone combined, including the `owner` in the last 52 weeks. If you'd like to get the commit counts for non-owners, you can subtract `owner` from `all`.
32984    /// 
32985    /// The array order is oldest week (index 0) to most recent week.
32986    /// 
32987    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-the-weekly-commit-count)
32988    pub fn repos_get_participation_stats(
32989        &self,
32990        owner: &str,
32991        repo: &str,
32992    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
32993        let mut theScheme = AuthScheme::from(&self.config.authentication);
32994
32995        while let Some(auth_step) = theScheme.step()? {
32996            match auth_step {
32997                ::authentic::AuthenticationStep::Request(auth_request) => {
32998                    theScheme.respond(self.client.execute(auth_request));
32999                }
33000                ::authentic::AuthenticationStep::WaitFor(duration) => {
33001                    (self.sleep)(duration);
33002                }
33003            }
33004        }
33005        let theBuilder = crate::v1_1_4::request::repos_get_participation_stats::reqwest_blocking_builder(
33006            self.config.base_url.as_ref(),
33007            owner,
33008            repo,
33009            self.config.user_agent.as_ref(),
33010            self.config.accept.as_deref(),
33011        )?
33012        .with_authentication(&theScheme)?;
33013
33014        let theRequest =
33015            crate::v1_1_4::request::repos_get_participation_stats::reqwest_blocking_request(theBuilder)?;
33016
33017        ::log::debug!("HTTP request: {:?}", &theRequest);
33018
33019        let theResponse = self.client.execute(theRequest)?;
33020
33021        ::log::debug!("HTTP response: {:?}", &theResponse);
33022
33023        Ok(theResponse)
33024    }
33025
33026    /// Get the hourly commit count for each day
33027    /// 
33028    /// Each array contains the day number, hour number, and number of commits:
33029    /// 
33030    /// *   `0-6`: Sunday - Saturday
33031    /// *   `0-23`: Hour of day
33032    /// *   Number of commits
33033    /// 
33034    /// For example, `[2, 14, 25]` indicates that there were 25 total commits, during the 2:00pm hour on Tuesdays. All times are based on the time zone of individual commits.
33035    /// 
33036    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-the-hourly-commit-count-for-each-day)
33037    pub fn repos_get_punch_card_stats(
33038        &self,
33039        owner: &str,
33040        repo: &str,
33041    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33042        let mut theScheme = AuthScheme::from(&self.config.authentication);
33043
33044        while let Some(auth_step) = theScheme.step()? {
33045            match auth_step {
33046                ::authentic::AuthenticationStep::Request(auth_request) => {
33047                    theScheme.respond(self.client.execute(auth_request));
33048                }
33049                ::authentic::AuthenticationStep::WaitFor(duration) => {
33050                    (self.sleep)(duration);
33051                }
33052            }
33053        }
33054        let theBuilder = crate::v1_1_4::request::repos_get_punch_card_stats::reqwest_blocking_builder(
33055            self.config.base_url.as_ref(),
33056            owner,
33057            repo,
33058            self.config.user_agent.as_ref(),
33059            self.config.accept.as_deref(),
33060        )?
33061        .with_authentication(&theScheme)?;
33062
33063        let theRequest =
33064            crate::v1_1_4::request::repos_get_punch_card_stats::reqwest_blocking_request(theBuilder)?;
33065
33066        ::log::debug!("HTTP request: {:?}", &theRequest);
33067
33068        let theResponse = self.client.execute(theRequest)?;
33069
33070        ::log::debug!("HTTP response: {:?}", &theResponse);
33071
33072        Ok(theResponse)
33073    }
33074
33075    /// Create a commit status
33076    /// 
33077    /// Users with push access in a repository can create commit statuses for a given SHA.
33078    /// 
33079    /// Note: there is a limit of 1000 statuses per `sha` and `context` within a repository. Attempts to create more than 1000 statuses will result in a validation error.
33080    /// 
33081    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-commit-status)
33082    ///
33083    /// # Content
33084    ///
33085    /// - [`&v1_1_4::request::repos_create_commit_status::body::Json`](crate::v1_1_4::request::repos_create_commit_status::body::Json)
33086    pub fn repos_create_commit_status<Content>(
33087        &self,
33088        owner: &str,
33089        repo: &str,
33090        sha: &str,
33091        theContent: Content,
33092    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
33093    where
33094        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_commit_status::Content<::reqwest::blocking::Body>>,
33095        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_commit_status::Content<::reqwest::blocking::Body>>>::Error>
33096    {
33097        let mut theScheme = AuthScheme::from(&self.config.authentication);
33098
33099        while let Some(auth_step) = theScheme.step()? {
33100            match auth_step {
33101                ::authentic::AuthenticationStep::Request(auth_request) => {
33102                    theScheme.respond(self.client.execute(auth_request));
33103                }
33104                ::authentic::AuthenticationStep::WaitFor(duration) => {
33105                    (self.sleep)(duration);
33106                }
33107            }
33108        }
33109        let theBuilder = crate::v1_1_4::request::repos_create_commit_status::reqwest_blocking_builder(
33110            self.config.base_url.as_ref(),
33111            owner,
33112            repo,
33113            sha,
33114            self.config.user_agent.as_ref(),
33115            self.config.accept.as_deref(),
33116        )?
33117        .with_authentication(&theScheme)?;
33118
33119        let theRequest = crate::v1_1_4::request::repos_create_commit_status::reqwest_blocking_request(
33120            theBuilder,
33121            theContent.try_into()?,
33122        )?;
33123
33124        ::log::debug!("HTTP request: {:?}", &theRequest);
33125
33126        let theResponse = self.client.execute(theRequest)?;
33127
33128        ::log::debug!("HTTP response: {:?}", &theResponse);
33129
33130        Ok(theResponse)
33131    }
33132
33133    /// List watchers
33134    /// 
33135    /// Lists the people watching the specified repository.
33136    /// 
33137    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-watchers)
33138    pub fn activity_list_watchers_for_repo(
33139        &self,
33140        owner: &str,
33141        repo: &str,
33142        per_page: ::std::option::Option<i64>,
33143        page: ::std::option::Option<i64>,
33144    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33145        let mut theScheme = AuthScheme::from(&self.config.authentication);
33146
33147        while let Some(auth_step) = theScheme.step()? {
33148            match auth_step {
33149                ::authentic::AuthenticationStep::Request(auth_request) => {
33150                    theScheme.respond(self.client.execute(auth_request));
33151                }
33152                ::authentic::AuthenticationStep::WaitFor(duration) => {
33153                    (self.sleep)(duration);
33154                }
33155            }
33156        }
33157        let theBuilder = crate::v1_1_4::request::activity_list_watchers_for_repo::reqwest_blocking_builder(
33158            self.config.base_url.as_ref(),
33159            owner,
33160            repo,
33161            per_page,
33162            page,
33163            self.config.user_agent.as_ref(),
33164            self.config.accept.as_deref(),
33165        )?
33166        .with_authentication(&theScheme)?;
33167
33168        let theRequest =
33169            crate::v1_1_4::request::activity_list_watchers_for_repo::reqwest_blocking_request(theBuilder)?;
33170
33171        ::log::debug!("HTTP request: {:?}", &theRequest);
33172
33173        let theResponse = self.client.execute(theRequest)?;
33174
33175        ::log::debug!("HTTP response: {:?}", &theResponse);
33176
33177        Ok(theResponse)
33178    }
33179
33180    /// Get a repository subscription
33181    /// 
33182    /// [API method documentation](https://docs.github.com/rest/reference/activity#get-a-repository-subscription)
33183    pub fn activity_get_repo_subscription(
33184        &self,
33185        owner: &str,
33186        repo: &str,
33187    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33188        let mut theScheme = AuthScheme::from(&self.config.authentication);
33189
33190        while let Some(auth_step) = theScheme.step()? {
33191            match auth_step {
33192                ::authentic::AuthenticationStep::Request(auth_request) => {
33193                    theScheme.respond(self.client.execute(auth_request));
33194                }
33195                ::authentic::AuthenticationStep::WaitFor(duration) => {
33196                    (self.sleep)(duration);
33197                }
33198            }
33199        }
33200        let theBuilder = crate::v1_1_4::request::activity_get_repo_subscription::reqwest_blocking_builder(
33201            self.config.base_url.as_ref(),
33202            owner,
33203            repo,
33204            self.config.user_agent.as_ref(),
33205            self.config.accept.as_deref(),
33206        )?
33207        .with_authentication(&theScheme)?;
33208
33209        let theRequest =
33210            crate::v1_1_4::request::activity_get_repo_subscription::reqwest_blocking_request(theBuilder)?;
33211
33212        ::log::debug!("HTTP request: {:?}", &theRequest);
33213
33214        let theResponse = self.client.execute(theRequest)?;
33215
33216        ::log::debug!("HTTP response: {:?}", &theResponse);
33217
33218        Ok(theResponse)
33219    }
33220
33221    /// Set a repository subscription
33222    /// 
33223    /// If you would like to watch a repository, set `subscribed` to `true`. If you would like to ignore notifications made within a repository, set `ignored` to `true`. If you would like to stop watching a repository, [delete the repository's subscription](https://docs.github.com/rest/reference/activity#delete-a-repository-subscription) completely.
33224    /// 
33225    /// [API method documentation](https://docs.github.com/rest/reference/activity#set-a-repository-subscription)
33226    ///
33227    /// # Content
33228    ///
33229    /// - [`&v1_1_4::request::activity_set_repo_subscription::body::Json`](crate::v1_1_4::request::activity_set_repo_subscription::body::Json)
33230    pub fn activity_set_repo_subscription<Content>(
33231        &self,
33232        owner: &str,
33233        repo: &str,
33234        theContent: Content,
33235    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
33236    where
33237        Content: Copy + TryInto<crate::v1_1_4::request::activity_set_repo_subscription::Content<::reqwest::blocking::Body>>,
33238        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::activity_set_repo_subscription::Content<::reqwest::blocking::Body>>>::Error>
33239    {
33240        let mut theScheme = AuthScheme::from(&self.config.authentication);
33241
33242        while let Some(auth_step) = theScheme.step()? {
33243            match auth_step {
33244                ::authentic::AuthenticationStep::Request(auth_request) => {
33245                    theScheme.respond(self.client.execute(auth_request));
33246                }
33247                ::authentic::AuthenticationStep::WaitFor(duration) => {
33248                    (self.sleep)(duration);
33249                }
33250            }
33251        }
33252        let theBuilder = crate::v1_1_4::request::activity_set_repo_subscription::reqwest_blocking_builder(
33253            self.config.base_url.as_ref(),
33254            owner,
33255            repo,
33256            self.config.user_agent.as_ref(),
33257            self.config.accept.as_deref(),
33258        )?
33259        .with_authentication(&theScheme)?;
33260
33261        let theRequest = crate::v1_1_4::request::activity_set_repo_subscription::reqwest_blocking_request(
33262            theBuilder,
33263            theContent.try_into()?,
33264        )?;
33265
33266        ::log::debug!("HTTP request: {:?}", &theRequest);
33267
33268        let theResponse = self.client.execute(theRequest)?;
33269
33270        ::log::debug!("HTTP response: {:?}", &theResponse);
33271
33272        Ok(theResponse)
33273    }
33274
33275    /// Delete a repository subscription
33276    /// 
33277    /// This endpoint should only be used to stop watching a repository. To control whether or not you wish to receive notifications from a repository, [set the repository's subscription manually](https://docs.github.com/rest/reference/activity#set-a-repository-subscription).
33278    /// 
33279    /// [API method documentation](https://docs.github.com/rest/reference/activity#delete-a-repository-subscription)
33280    pub fn activity_delete_repo_subscription(
33281        &self,
33282        owner: &str,
33283        repo: &str,
33284    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33285        let mut theScheme = AuthScheme::from(&self.config.authentication);
33286
33287        while let Some(auth_step) = theScheme.step()? {
33288            match auth_step {
33289                ::authentic::AuthenticationStep::Request(auth_request) => {
33290                    theScheme.respond(self.client.execute(auth_request));
33291                }
33292                ::authentic::AuthenticationStep::WaitFor(duration) => {
33293                    (self.sleep)(duration);
33294                }
33295            }
33296        }
33297        let theBuilder = crate::v1_1_4::request::activity_delete_repo_subscription::reqwest_blocking_builder(
33298            self.config.base_url.as_ref(),
33299            owner,
33300            repo,
33301            self.config.user_agent.as_ref(),
33302            self.config.accept.as_deref(),
33303        )?
33304        .with_authentication(&theScheme)?;
33305
33306        let theRequest =
33307            crate::v1_1_4::request::activity_delete_repo_subscription::reqwest_blocking_request(theBuilder)?;
33308
33309        ::log::debug!("HTTP request: {:?}", &theRequest);
33310
33311        let theResponse = self.client.execute(theRequest)?;
33312
33313        ::log::debug!("HTTP response: {:?}", &theResponse);
33314
33315        Ok(theResponse)
33316    }
33317
33318    /// List repository tags
33319    /// 
33320    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repository-tags)
33321    pub fn repos_list_tags(
33322        &self,
33323        owner: &str,
33324        repo: &str,
33325        per_page: ::std::option::Option<i64>,
33326        page: ::std::option::Option<i64>,
33327    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33328        let mut theScheme = AuthScheme::from(&self.config.authentication);
33329
33330        while let Some(auth_step) = theScheme.step()? {
33331            match auth_step {
33332                ::authentic::AuthenticationStep::Request(auth_request) => {
33333                    theScheme.respond(self.client.execute(auth_request));
33334                }
33335                ::authentic::AuthenticationStep::WaitFor(duration) => {
33336                    (self.sleep)(duration);
33337                }
33338            }
33339        }
33340        let theBuilder = crate::v1_1_4::request::repos_list_tags::reqwest_blocking_builder(
33341            self.config.base_url.as_ref(),
33342            owner,
33343            repo,
33344            per_page,
33345            page,
33346            self.config.user_agent.as_ref(),
33347            self.config.accept.as_deref(),
33348        )?
33349        .with_authentication(&theScheme)?;
33350
33351        let theRequest =
33352            crate::v1_1_4::request::repos_list_tags::reqwest_blocking_request(theBuilder)?;
33353
33354        ::log::debug!("HTTP request: {:?}", &theRequest);
33355
33356        let theResponse = self.client.execute(theRequest)?;
33357
33358        ::log::debug!("HTTP response: {:?}", &theResponse);
33359
33360        Ok(theResponse)
33361    }
33362
33363    /// List tag protection states for a repository
33364    /// 
33365    /// This returns the tag protection states of a repository.
33366    /// 
33367    /// This information is only available to repository administrators.
33368    /// 
33369    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-tag-protection-state-of-a-repository)
33370    pub fn repos_list_tag_protection(
33371        &self,
33372        owner: &str,
33373        repo: &str,
33374    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33375        let mut theScheme = AuthScheme::from(&self.config.authentication);
33376
33377        while let Some(auth_step) = theScheme.step()? {
33378            match auth_step {
33379                ::authentic::AuthenticationStep::Request(auth_request) => {
33380                    theScheme.respond(self.client.execute(auth_request));
33381                }
33382                ::authentic::AuthenticationStep::WaitFor(duration) => {
33383                    (self.sleep)(duration);
33384                }
33385            }
33386        }
33387        let theBuilder = crate::v1_1_4::request::repos_list_tag_protection::reqwest_blocking_builder(
33388            self.config.base_url.as_ref(),
33389            owner,
33390            repo,
33391            self.config.user_agent.as_ref(),
33392            self.config.accept.as_deref(),
33393        )?
33394        .with_authentication(&theScheme)?;
33395
33396        let theRequest =
33397            crate::v1_1_4::request::repos_list_tag_protection::reqwest_blocking_request(theBuilder)?;
33398
33399        ::log::debug!("HTTP request: {:?}", &theRequest);
33400
33401        let theResponse = self.client.execute(theRequest)?;
33402
33403        ::log::debug!("HTTP response: {:?}", &theResponse);
33404
33405        Ok(theResponse)
33406    }
33407
33408    /// Create a tag protection state for a repository
33409    /// 
33410    /// This creates a tag protection state for a repository.
33411    /// This endpoint is only available to repository administrators.
33412    /// 
33413    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-tag-protection-state-for-a-repository)
33414    ///
33415    /// # Content
33416    ///
33417    /// - [`&v1_1_4::request::repos_create_tag_protection::body::Json`](crate::v1_1_4::request::repos_create_tag_protection::body::Json)
33418    pub fn repos_create_tag_protection<Content>(
33419        &self,
33420        owner: &str,
33421        repo: &str,
33422        theContent: Content,
33423    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
33424    where
33425        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_tag_protection::Content<::reqwest::blocking::Body>>,
33426        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_tag_protection::Content<::reqwest::blocking::Body>>>::Error>
33427    {
33428        let mut theScheme = AuthScheme::from(&self.config.authentication);
33429
33430        while let Some(auth_step) = theScheme.step()? {
33431            match auth_step {
33432                ::authentic::AuthenticationStep::Request(auth_request) => {
33433                    theScheme.respond(self.client.execute(auth_request));
33434                }
33435                ::authentic::AuthenticationStep::WaitFor(duration) => {
33436                    (self.sleep)(duration);
33437                }
33438            }
33439        }
33440        let theBuilder = crate::v1_1_4::request::repos_create_tag_protection::reqwest_blocking_builder(
33441            self.config.base_url.as_ref(),
33442            owner,
33443            repo,
33444            self.config.user_agent.as_ref(),
33445            self.config.accept.as_deref(),
33446        )?
33447        .with_authentication(&theScheme)?;
33448
33449        let theRequest = crate::v1_1_4::request::repos_create_tag_protection::reqwest_blocking_request(
33450            theBuilder,
33451            theContent.try_into()?,
33452        )?;
33453
33454        ::log::debug!("HTTP request: {:?}", &theRequest);
33455
33456        let theResponse = self.client.execute(theRequest)?;
33457
33458        ::log::debug!("HTTP response: {:?}", &theResponse);
33459
33460        Ok(theResponse)
33461    }
33462
33463    /// Delete a tag protection state for a repository
33464    /// 
33465    /// This deletes a tag protection state for a repository.
33466    /// This endpoint is only available to repository administrators.
33467    /// 
33468    /// [API method documentation](https://docs.github.com/rest/reference/repos#delete-tag-protection-state-for-a-repository)
33469    pub fn repos_delete_tag_protection(
33470        &self,
33471        owner: &str,
33472        repo: &str,
33473        tag_protection_id: i64,
33474    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33475        let mut theScheme = AuthScheme::from(&self.config.authentication);
33476
33477        while let Some(auth_step) = theScheme.step()? {
33478            match auth_step {
33479                ::authentic::AuthenticationStep::Request(auth_request) => {
33480                    theScheme.respond(self.client.execute(auth_request));
33481                }
33482                ::authentic::AuthenticationStep::WaitFor(duration) => {
33483                    (self.sleep)(duration);
33484                }
33485            }
33486        }
33487        let theBuilder = crate::v1_1_4::request::repos_delete_tag_protection::reqwest_blocking_builder(
33488            self.config.base_url.as_ref(),
33489            owner,
33490            repo,
33491            tag_protection_id,
33492            self.config.user_agent.as_ref(),
33493            self.config.accept.as_deref(),
33494        )?
33495        .with_authentication(&theScheme)?;
33496
33497        let theRequest =
33498            crate::v1_1_4::request::repos_delete_tag_protection::reqwest_blocking_request(theBuilder)?;
33499
33500        ::log::debug!("HTTP request: {:?}", &theRequest);
33501
33502        let theResponse = self.client.execute(theRequest)?;
33503
33504        ::log::debug!("HTTP response: {:?}", &theResponse);
33505
33506        Ok(theResponse)
33507    }
33508
33509    /// Download a repository archive (tar)
33510    /// 
33511    /// Gets a redirect URL to download a tar archive for a repository. If you omit `:ref`, the repository’s default branch (usually
33512    /// `master`) will be used. Please make sure your HTTP framework is configured to follow redirects or you will need to use
33513    /// the `Location` header to make a second `GET` request.
33514    /// **Note**: For private repositories, these links are temporary and expire after five minutes.
33515    /// 
33516    /// [API method documentation](https://docs.github.com/rest/reference/repos#download-a-repository-archive)
33517    pub fn repos_download_tarball_archive(
33518        &self,
33519        owner: &str,
33520        repo: &str,
33521        r#ref: &str,
33522    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33523        let mut theScheme = AuthScheme::from(&self.config.authentication);
33524
33525        while let Some(auth_step) = theScheme.step()? {
33526            match auth_step {
33527                ::authentic::AuthenticationStep::Request(auth_request) => {
33528                    theScheme.respond(self.client.execute(auth_request));
33529                }
33530                ::authentic::AuthenticationStep::WaitFor(duration) => {
33531                    (self.sleep)(duration);
33532                }
33533            }
33534        }
33535        let theBuilder = crate::v1_1_4::request::repos_download_tarball_archive::reqwest_blocking_builder(
33536            self.config.base_url.as_ref(),
33537            owner,
33538            repo,
33539            r#ref,
33540            self.config.user_agent.as_ref(),
33541            self.config.accept.as_deref(),
33542        )?
33543        .with_authentication(&theScheme)?;
33544
33545        let theRequest =
33546            crate::v1_1_4::request::repos_download_tarball_archive::reqwest_blocking_request(theBuilder)?;
33547
33548        ::log::debug!("HTTP request: {:?}", &theRequest);
33549
33550        let theResponse = self.client.execute(theRequest)?;
33551
33552        ::log::debug!("HTTP response: {:?}", &theResponse);
33553
33554        Ok(theResponse)
33555    }
33556
33557    /// List repository teams
33558    /// 
33559    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repository-teams)
33560    pub fn repos_list_teams(
33561        &self,
33562        owner: &str,
33563        repo: &str,
33564        per_page: ::std::option::Option<i64>,
33565        page: ::std::option::Option<i64>,
33566    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33567        let mut theScheme = AuthScheme::from(&self.config.authentication);
33568
33569        while let Some(auth_step) = theScheme.step()? {
33570            match auth_step {
33571                ::authentic::AuthenticationStep::Request(auth_request) => {
33572                    theScheme.respond(self.client.execute(auth_request));
33573                }
33574                ::authentic::AuthenticationStep::WaitFor(duration) => {
33575                    (self.sleep)(duration);
33576                }
33577            }
33578        }
33579        let theBuilder = crate::v1_1_4::request::repos_list_teams::reqwest_blocking_builder(
33580            self.config.base_url.as_ref(),
33581            owner,
33582            repo,
33583            per_page,
33584            page,
33585            self.config.user_agent.as_ref(),
33586            self.config.accept.as_deref(),
33587        )?
33588        .with_authentication(&theScheme)?;
33589
33590        let theRequest =
33591            crate::v1_1_4::request::repos_list_teams::reqwest_blocking_request(theBuilder)?;
33592
33593        ::log::debug!("HTTP request: {:?}", &theRequest);
33594
33595        let theResponse = self.client.execute(theRequest)?;
33596
33597        ::log::debug!("HTTP response: {:?}", &theResponse);
33598
33599        Ok(theResponse)
33600    }
33601
33602    /// Get all repository topics
33603    /// 
33604    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-all-repository-topics)
33605    pub fn repos_get_all_topics(
33606        &self,
33607        owner: &str,
33608        repo: &str,
33609        page: ::std::option::Option<i64>,
33610        per_page: ::std::option::Option<i64>,
33611    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33612        let mut theScheme = AuthScheme::from(&self.config.authentication);
33613
33614        while let Some(auth_step) = theScheme.step()? {
33615            match auth_step {
33616                ::authentic::AuthenticationStep::Request(auth_request) => {
33617                    theScheme.respond(self.client.execute(auth_request));
33618                }
33619                ::authentic::AuthenticationStep::WaitFor(duration) => {
33620                    (self.sleep)(duration);
33621                }
33622            }
33623        }
33624        let theBuilder = crate::v1_1_4::request::repos_get_all_topics::reqwest_blocking_builder(
33625            self.config.base_url.as_ref(),
33626            owner,
33627            repo,
33628            page,
33629            per_page,
33630            self.config.user_agent.as_ref(),
33631            self.config.accept.as_deref(),
33632        )?
33633        .with_authentication(&theScheme)?;
33634
33635        let theRequest =
33636            crate::v1_1_4::request::repos_get_all_topics::reqwest_blocking_request(theBuilder)?;
33637
33638        ::log::debug!("HTTP request: {:?}", &theRequest);
33639
33640        let theResponse = self.client.execute(theRequest)?;
33641
33642        ::log::debug!("HTTP response: {:?}", &theResponse);
33643
33644        Ok(theResponse)
33645    }
33646
33647    /// Replace all repository topics
33648    /// 
33649    /// [API method documentation](https://docs.github.com/rest/reference/repos#replace-all-repository-topics)
33650    ///
33651    /// # Content
33652    ///
33653    /// - [`&v1_1_4::request::repos_replace_all_topics::body::Json`](crate::v1_1_4::request::repos_replace_all_topics::body::Json)
33654    pub fn repos_replace_all_topics<Content>(
33655        &self,
33656        owner: &str,
33657        repo: &str,
33658        theContent: Content,
33659    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
33660    where
33661        Content: Copy + TryInto<crate::v1_1_4::request::repos_replace_all_topics::Content<::reqwest::blocking::Body>>,
33662        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_replace_all_topics::Content<::reqwest::blocking::Body>>>::Error>
33663    {
33664        let mut theScheme = AuthScheme::from(&self.config.authentication);
33665
33666        while let Some(auth_step) = theScheme.step()? {
33667            match auth_step {
33668                ::authentic::AuthenticationStep::Request(auth_request) => {
33669                    theScheme.respond(self.client.execute(auth_request));
33670                }
33671                ::authentic::AuthenticationStep::WaitFor(duration) => {
33672                    (self.sleep)(duration);
33673                }
33674            }
33675        }
33676        let theBuilder = crate::v1_1_4::request::repos_replace_all_topics::reqwest_blocking_builder(
33677            self.config.base_url.as_ref(),
33678            owner,
33679            repo,
33680            self.config.user_agent.as_ref(),
33681            self.config.accept.as_deref(),
33682        )?
33683        .with_authentication(&theScheme)?;
33684
33685        let theRequest = crate::v1_1_4::request::repos_replace_all_topics::reqwest_blocking_request(
33686            theBuilder,
33687            theContent.try_into()?,
33688        )?;
33689
33690        ::log::debug!("HTTP request: {:?}", &theRequest);
33691
33692        let theResponse = self.client.execute(theRequest)?;
33693
33694        ::log::debug!("HTTP response: {:?}", &theResponse);
33695
33696        Ok(theResponse)
33697    }
33698
33699    /// Get repository clones
33700    /// 
33701    /// Get the total number of clones and breakdown per day or week for the last 14 days. Timestamps are aligned to UTC midnight of the beginning of the day or week. Week begins on Monday.
33702    /// 
33703    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-repository-clones)
33704    pub fn repos_get_clones(
33705        &self,
33706        owner: &str,
33707        repo: &str,
33708        per: ::std::option::Option<&str>,
33709    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33710        let mut theScheme = AuthScheme::from(&self.config.authentication);
33711
33712        while let Some(auth_step) = theScheme.step()? {
33713            match auth_step {
33714                ::authentic::AuthenticationStep::Request(auth_request) => {
33715                    theScheme.respond(self.client.execute(auth_request));
33716                }
33717                ::authentic::AuthenticationStep::WaitFor(duration) => {
33718                    (self.sleep)(duration);
33719                }
33720            }
33721        }
33722        let theBuilder = crate::v1_1_4::request::repos_get_clones::reqwest_blocking_builder(
33723            self.config.base_url.as_ref(),
33724            owner,
33725            repo,
33726            per,
33727            self.config.user_agent.as_ref(),
33728            self.config.accept.as_deref(),
33729        )?
33730        .with_authentication(&theScheme)?;
33731
33732        let theRequest =
33733            crate::v1_1_4::request::repos_get_clones::reqwest_blocking_request(theBuilder)?;
33734
33735        ::log::debug!("HTTP request: {:?}", &theRequest);
33736
33737        let theResponse = self.client.execute(theRequest)?;
33738
33739        ::log::debug!("HTTP response: {:?}", &theResponse);
33740
33741        Ok(theResponse)
33742    }
33743
33744    /// Get top referral paths
33745    /// 
33746    /// Get the top 10 popular contents over the last 14 days.
33747    /// 
33748    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-top-referral-paths)
33749    pub fn repos_get_top_paths(
33750        &self,
33751        owner: &str,
33752        repo: &str,
33753    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33754        let mut theScheme = AuthScheme::from(&self.config.authentication);
33755
33756        while let Some(auth_step) = theScheme.step()? {
33757            match auth_step {
33758                ::authentic::AuthenticationStep::Request(auth_request) => {
33759                    theScheme.respond(self.client.execute(auth_request));
33760                }
33761                ::authentic::AuthenticationStep::WaitFor(duration) => {
33762                    (self.sleep)(duration);
33763                }
33764            }
33765        }
33766        let theBuilder = crate::v1_1_4::request::repos_get_top_paths::reqwest_blocking_builder(
33767            self.config.base_url.as_ref(),
33768            owner,
33769            repo,
33770            self.config.user_agent.as_ref(),
33771            self.config.accept.as_deref(),
33772        )?
33773        .with_authentication(&theScheme)?;
33774
33775        let theRequest =
33776            crate::v1_1_4::request::repos_get_top_paths::reqwest_blocking_request(theBuilder)?;
33777
33778        ::log::debug!("HTTP request: {:?}", &theRequest);
33779
33780        let theResponse = self.client.execute(theRequest)?;
33781
33782        ::log::debug!("HTTP response: {:?}", &theResponse);
33783
33784        Ok(theResponse)
33785    }
33786
33787    /// Get top referral sources
33788    /// 
33789    /// Get the top 10 referrers over the last 14 days.
33790    /// 
33791    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-top-referral-sources)
33792    pub fn repos_get_top_referrers(
33793        &self,
33794        owner: &str,
33795        repo: &str,
33796    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33797        let mut theScheme = AuthScheme::from(&self.config.authentication);
33798
33799        while let Some(auth_step) = theScheme.step()? {
33800            match auth_step {
33801                ::authentic::AuthenticationStep::Request(auth_request) => {
33802                    theScheme.respond(self.client.execute(auth_request));
33803                }
33804                ::authentic::AuthenticationStep::WaitFor(duration) => {
33805                    (self.sleep)(duration);
33806                }
33807            }
33808        }
33809        let theBuilder = crate::v1_1_4::request::repos_get_top_referrers::reqwest_blocking_builder(
33810            self.config.base_url.as_ref(),
33811            owner,
33812            repo,
33813            self.config.user_agent.as_ref(),
33814            self.config.accept.as_deref(),
33815        )?
33816        .with_authentication(&theScheme)?;
33817
33818        let theRequest =
33819            crate::v1_1_4::request::repos_get_top_referrers::reqwest_blocking_request(theBuilder)?;
33820
33821        ::log::debug!("HTTP request: {:?}", &theRequest);
33822
33823        let theResponse = self.client.execute(theRequest)?;
33824
33825        ::log::debug!("HTTP response: {:?}", &theResponse);
33826
33827        Ok(theResponse)
33828    }
33829
33830    /// Get page views
33831    /// 
33832    /// Get the total number of views and breakdown per day or week for the last 14 days. Timestamps are aligned to UTC midnight of the beginning of the day or week. Week begins on Monday.
33833    /// 
33834    /// [API method documentation](https://docs.github.com/rest/reference/repos#get-page-views)
33835    pub fn repos_get_views(
33836        &self,
33837        owner: &str,
33838        repo: &str,
33839        per: ::std::option::Option<&str>,
33840    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33841        let mut theScheme = AuthScheme::from(&self.config.authentication);
33842
33843        while let Some(auth_step) = theScheme.step()? {
33844            match auth_step {
33845                ::authentic::AuthenticationStep::Request(auth_request) => {
33846                    theScheme.respond(self.client.execute(auth_request));
33847                }
33848                ::authentic::AuthenticationStep::WaitFor(duration) => {
33849                    (self.sleep)(duration);
33850                }
33851            }
33852        }
33853        let theBuilder = crate::v1_1_4::request::repos_get_views::reqwest_blocking_builder(
33854            self.config.base_url.as_ref(),
33855            owner,
33856            repo,
33857            per,
33858            self.config.user_agent.as_ref(),
33859            self.config.accept.as_deref(),
33860        )?
33861        .with_authentication(&theScheme)?;
33862
33863        let theRequest =
33864            crate::v1_1_4::request::repos_get_views::reqwest_blocking_request(theBuilder)?;
33865
33866        ::log::debug!("HTTP request: {:?}", &theRequest);
33867
33868        let theResponse = self.client.execute(theRequest)?;
33869
33870        ::log::debug!("HTTP response: {:?}", &theResponse);
33871
33872        Ok(theResponse)
33873    }
33874
33875    /// Transfer a repository
33876    /// 
33877    /// A transfer request will need to be accepted by the new owner when transferring a personal repository to another user. The response will contain the original `owner`, and the transfer will continue asynchronously. For more details on the requirements to transfer personal and organization-owned repositories, see [about repository transfers](https://docs.github.com/articles/about-repository-transfers/).
33878    /// 
33879    /// [API method documentation](https://docs.github.com/rest/reference/repos#transfer-a-repository)
33880    ///
33881    /// # Content
33882    ///
33883    /// - [`&v1_1_4::request::repos_transfer::body::Json`](crate::v1_1_4::request::repos_transfer::body::Json)
33884    pub fn repos_transfer<Content>(
33885        &self,
33886        owner: &str,
33887        repo: &str,
33888        theContent: Content,
33889    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
33890    where
33891        Content: Copy + TryInto<crate::v1_1_4::request::repos_transfer::Content<::reqwest::blocking::Body>>,
33892        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_transfer::Content<::reqwest::blocking::Body>>>::Error>
33893    {
33894        let mut theScheme = AuthScheme::from(&self.config.authentication);
33895
33896        while let Some(auth_step) = theScheme.step()? {
33897            match auth_step {
33898                ::authentic::AuthenticationStep::Request(auth_request) => {
33899                    theScheme.respond(self.client.execute(auth_request));
33900                }
33901                ::authentic::AuthenticationStep::WaitFor(duration) => {
33902                    (self.sleep)(duration);
33903                }
33904            }
33905        }
33906        let theBuilder = crate::v1_1_4::request::repos_transfer::reqwest_blocking_builder(
33907            self.config.base_url.as_ref(),
33908            owner,
33909            repo,
33910            self.config.user_agent.as_ref(),
33911            self.config.accept.as_deref(),
33912        )?
33913        .with_authentication(&theScheme)?;
33914
33915        let theRequest = crate::v1_1_4::request::repos_transfer::reqwest_blocking_request(
33916            theBuilder,
33917            theContent.try_into()?,
33918        )?;
33919
33920        ::log::debug!("HTTP request: {:?}", &theRequest);
33921
33922        let theResponse = self.client.execute(theRequest)?;
33923
33924        ::log::debug!("HTTP response: {:?}", &theResponse);
33925
33926        Ok(theResponse)
33927    }
33928
33929    /// Check if vulnerability alerts are enabled for a repository
33930    /// 
33931    /// Shows whether dependency alerts are enabled or disabled for a repository. The authenticated user must have admin access to the repository. For more information, see "[About security alerts for vulnerable dependencies](https://docs.github.com/en/articles/about-security-alerts-for-vulnerable-dependencies)".
33932    /// 
33933    /// [API method documentation](https://docs.github.com/rest/reference/repos#check-if-vulnerability-alerts-are-enabled-for-a-repository)
33934    pub fn repos_check_vulnerability_alerts(
33935        &self,
33936        owner: &str,
33937        repo: &str,
33938    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33939        let mut theScheme = AuthScheme::from(&self.config.authentication);
33940
33941        while let Some(auth_step) = theScheme.step()? {
33942            match auth_step {
33943                ::authentic::AuthenticationStep::Request(auth_request) => {
33944                    theScheme.respond(self.client.execute(auth_request));
33945                }
33946                ::authentic::AuthenticationStep::WaitFor(duration) => {
33947                    (self.sleep)(duration);
33948                }
33949            }
33950        }
33951        let theBuilder = crate::v1_1_4::request::repos_check_vulnerability_alerts::reqwest_blocking_builder(
33952            self.config.base_url.as_ref(),
33953            owner,
33954            repo,
33955            self.config.user_agent.as_ref(),
33956            self.config.accept.as_deref(),
33957        )?
33958        .with_authentication(&theScheme)?;
33959
33960        let theRequest =
33961            crate::v1_1_4::request::repos_check_vulnerability_alerts::reqwest_blocking_request(theBuilder)?;
33962
33963        ::log::debug!("HTTP request: {:?}", &theRequest);
33964
33965        let theResponse = self.client.execute(theRequest)?;
33966
33967        ::log::debug!("HTTP response: {:?}", &theResponse);
33968
33969        Ok(theResponse)
33970    }
33971
33972    /// Enable vulnerability alerts
33973    /// 
33974    /// Enables dependency alerts and the dependency graph for a repository. The authenticated user must have admin access to the repository. For more information, see "[About security alerts for vulnerable dependencies](https://docs.github.com/en/articles/about-security-alerts-for-vulnerable-dependencies)".
33975    /// 
33976    /// [API method documentation](https://docs.github.com/rest/reference/repos#enable-vulnerability-alerts)
33977    pub fn repos_enable_vulnerability_alerts(
33978        &self,
33979        owner: &str,
33980        repo: &str,
33981    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
33982        let mut theScheme = AuthScheme::from(&self.config.authentication);
33983
33984        while let Some(auth_step) = theScheme.step()? {
33985            match auth_step {
33986                ::authentic::AuthenticationStep::Request(auth_request) => {
33987                    theScheme.respond(self.client.execute(auth_request));
33988                }
33989                ::authentic::AuthenticationStep::WaitFor(duration) => {
33990                    (self.sleep)(duration);
33991                }
33992            }
33993        }
33994        let theBuilder = crate::v1_1_4::request::repos_enable_vulnerability_alerts::reqwest_blocking_builder(
33995            self.config.base_url.as_ref(),
33996            owner,
33997            repo,
33998            self.config.user_agent.as_ref(),
33999            self.config.accept.as_deref(),
34000        )?
34001        .with_authentication(&theScheme)?;
34002
34003        let theRequest =
34004            crate::v1_1_4::request::repos_enable_vulnerability_alerts::reqwest_blocking_request(theBuilder)?;
34005
34006        ::log::debug!("HTTP request: {:?}", &theRequest);
34007
34008        let theResponse = self.client.execute(theRequest)?;
34009
34010        ::log::debug!("HTTP response: {:?}", &theResponse);
34011
34012        Ok(theResponse)
34013    }
34014
34015    /// Disable vulnerability alerts
34016    /// 
34017    /// Disables dependency alerts and the dependency graph for a repository. The authenticated user must have admin access to the repository. For more information, see "[About security alerts for vulnerable dependencies](https://docs.github.com/en/articles/about-security-alerts-for-vulnerable-dependencies)".
34018    /// 
34019    /// [API method documentation](https://docs.github.com/rest/reference/repos#disable-vulnerability-alerts)
34020    pub fn repos_disable_vulnerability_alerts(
34021        &self,
34022        owner: &str,
34023        repo: &str,
34024    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34025        let mut theScheme = AuthScheme::from(&self.config.authentication);
34026
34027        while let Some(auth_step) = theScheme.step()? {
34028            match auth_step {
34029                ::authentic::AuthenticationStep::Request(auth_request) => {
34030                    theScheme.respond(self.client.execute(auth_request));
34031                }
34032                ::authentic::AuthenticationStep::WaitFor(duration) => {
34033                    (self.sleep)(duration);
34034                }
34035            }
34036        }
34037        let theBuilder = crate::v1_1_4::request::repos_disable_vulnerability_alerts::reqwest_blocking_builder(
34038            self.config.base_url.as_ref(),
34039            owner,
34040            repo,
34041            self.config.user_agent.as_ref(),
34042            self.config.accept.as_deref(),
34043        )?
34044        .with_authentication(&theScheme)?;
34045
34046        let theRequest =
34047            crate::v1_1_4::request::repos_disable_vulnerability_alerts::reqwest_blocking_request(theBuilder)?;
34048
34049        ::log::debug!("HTTP request: {:?}", &theRequest);
34050
34051        let theResponse = self.client.execute(theRequest)?;
34052
34053        ::log::debug!("HTTP response: {:?}", &theResponse);
34054
34055        Ok(theResponse)
34056    }
34057
34058    /// Download a repository archive (zip)
34059    /// 
34060    /// Gets a redirect URL to download a zip archive for a repository. If you omit `:ref`, the repository’s default branch (usually
34061    /// `master`) will be used. Please make sure your HTTP framework is configured to follow redirects or you will need to use
34062    /// the `Location` header to make a second `GET` request.
34063    /// **Note**: For private repositories, these links are temporary and expire after five minutes.
34064    /// 
34065    /// [API method documentation](https://docs.github.com/rest/reference/repos#download-a-repository-archive)
34066    pub fn repos_download_zipball_archive(
34067        &self,
34068        owner: &str,
34069        repo: &str,
34070        r#ref: &str,
34071    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34072        let mut theScheme = AuthScheme::from(&self.config.authentication);
34073
34074        while let Some(auth_step) = theScheme.step()? {
34075            match auth_step {
34076                ::authentic::AuthenticationStep::Request(auth_request) => {
34077                    theScheme.respond(self.client.execute(auth_request));
34078                }
34079                ::authentic::AuthenticationStep::WaitFor(duration) => {
34080                    (self.sleep)(duration);
34081                }
34082            }
34083        }
34084        let theBuilder = crate::v1_1_4::request::repos_download_zipball_archive::reqwest_blocking_builder(
34085            self.config.base_url.as_ref(),
34086            owner,
34087            repo,
34088            r#ref,
34089            self.config.user_agent.as_ref(),
34090            self.config.accept.as_deref(),
34091        )?
34092        .with_authentication(&theScheme)?;
34093
34094        let theRequest =
34095            crate::v1_1_4::request::repos_download_zipball_archive::reqwest_blocking_request(theBuilder)?;
34096
34097        ::log::debug!("HTTP request: {:?}", &theRequest);
34098
34099        let theResponse = self.client.execute(theRequest)?;
34100
34101        ::log::debug!("HTTP response: {:?}", &theResponse);
34102
34103        Ok(theResponse)
34104    }
34105
34106    /// Create a repository using a template
34107    /// 
34108    /// Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.
34109    /// 
34110    /// **OAuth scope requirements**
34111    /// 
34112    /// When using [OAuth](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:
34113    /// 
34114    /// *   `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.
34115    /// *   `repo` scope to create a private repository
34116    /// 
34117    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-repository-using-a-template)
34118    ///
34119    /// # Content
34120    ///
34121    /// - [`&v1_1_4::request::repos_create_using_template::body::Json`](crate::v1_1_4::request::repos_create_using_template::body::Json)
34122    pub fn repos_create_using_template<Content>(
34123        &self,
34124        template_owner: &str,
34125        template_repo: &str,
34126        theContent: Content,
34127    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
34128    where
34129        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_using_template::Content<::reqwest::blocking::Body>>,
34130        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_using_template::Content<::reqwest::blocking::Body>>>::Error>
34131    {
34132        let mut theScheme = AuthScheme::from(&self.config.authentication);
34133
34134        while let Some(auth_step) = theScheme.step()? {
34135            match auth_step {
34136                ::authentic::AuthenticationStep::Request(auth_request) => {
34137                    theScheme.respond(self.client.execute(auth_request));
34138                }
34139                ::authentic::AuthenticationStep::WaitFor(duration) => {
34140                    (self.sleep)(duration);
34141                }
34142            }
34143        }
34144        let theBuilder = crate::v1_1_4::request::repos_create_using_template::reqwest_blocking_builder(
34145            self.config.base_url.as_ref(),
34146            template_owner,
34147            template_repo,
34148            self.config.user_agent.as_ref(),
34149            self.config.accept.as_deref(),
34150        )?
34151        .with_authentication(&theScheme)?;
34152
34153        let theRequest = crate::v1_1_4::request::repos_create_using_template::reqwest_blocking_request(
34154            theBuilder,
34155            theContent.try_into()?,
34156        )?;
34157
34158        ::log::debug!("HTTP request: {:?}", &theRequest);
34159
34160        let theResponse = self.client.execute(theRequest)?;
34161
34162        ::log::debug!("HTTP response: {:?}", &theResponse);
34163
34164        Ok(theResponse)
34165    }
34166
34167    /// List public repositories
34168    /// 
34169    /// Lists all public repositories in the order that they were created.
34170    /// 
34171    /// Note:
34172    /// - For GitHub Enterprise Server, this endpoint will only list repositories available to all users on the enterprise.
34173    /// - Pagination is powered exclusively by the `since` parameter. Use the [Link header](https://docs.github.com/rest/overview/resources-in-the-rest-api#link-header) to get the URL for the next page of repositories.
34174    /// 
34175    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-public-repositories)
34176    pub fn repos_list_public(
34177        &self,
34178        since: ::std::option::Option<i64>,
34179    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34180        let mut theScheme = AuthScheme::from(&self.config.authentication);
34181
34182        while let Some(auth_step) = theScheme.step()? {
34183            match auth_step {
34184                ::authentic::AuthenticationStep::Request(auth_request) => {
34185                    theScheme.respond(self.client.execute(auth_request));
34186                }
34187                ::authentic::AuthenticationStep::WaitFor(duration) => {
34188                    (self.sleep)(duration);
34189                }
34190            }
34191        }
34192        let theBuilder = crate::v1_1_4::request::repos_list_public::reqwest_blocking_builder(
34193            self.config.base_url.as_ref(),
34194            since,
34195            self.config.user_agent.as_ref(),
34196            self.config.accept.as_deref(),
34197        )?
34198        .with_authentication(&theScheme)?;
34199
34200        let theRequest =
34201            crate::v1_1_4::request::repos_list_public::reqwest_blocking_request(theBuilder)?;
34202
34203        ::log::debug!("HTTP request: {:?}", &theRequest);
34204
34205        let theResponse = self.client.execute(theRequest)?;
34206
34207        ::log::debug!("HTTP response: {:?}", &theResponse);
34208
34209        Ok(theResponse)
34210    }
34211
34212    /// List environment secrets
34213    /// 
34214    /// Lists all secrets available in an environment without revealing their encrypted values. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `secrets` repository permission to use this endpoint.
34215    /// 
34216    /// [API method documentation](https://docs.github.com/rest/reference/actions#list-environment-secrets)
34217    pub fn actions_list_environment_secrets(
34218        &self,
34219        repository_id: i64,
34220        environment_name: &str,
34221        per_page: ::std::option::Option<i64>,
34222        page: ::std::option::Option<i64>,
34223    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34224        let mut theScheme = AuthScheme::from(&self.config.authentication);
34225
34226        while let Some(auth_step) = theScheme.step()? {
34227            match auth_step {
34228                ::authentic::AuthenticationStep::Request(auth_request) => {
34229                    theScheme.respond(self.client.execute(auth_request));
34230                }
34231                ::authentic::AuthenticationStep::WaitFor(duration) => {
34232                    (self.sleep)(duration);
34233                }
34234            }
34235        }
34236        let theBuilder = crate::v1_1_4::request::actions_list_environment_secrets::reqwest_blocking_builder(
34237            self.config.base_url.as_ref(),
34238            repository_id,
34239            environment_name,
34240            per_page,
34241            page,
34242            self.config.user_agent.as_ref(),
34243            self.config.accept.as_deref(),
34244        )?
34245        .with_authentication(&theScheme)?;
34246
34247        let theRequest =
34248            crate::v1_1_4::request::actions_list_environment_secrets::reqwest_blocking_request(theBuilder)?;
34249
34250        ::log::debug!("HTTP request: {:?}", &theRequest);
34251
34252        let theResponse = self.client.execute(theRequest)?;
34253
34254        ::log::debug!("HTTP response: {:?}", &theResponse);
34255
34256        Ok(theResponse)
34257    }
34258
34259    /// Get an environment public key
34260    /// 
34261    /// Get the public key for an environment, which you need to encrypt environment secrets. You need to encrypt a secret before you can create or update secrets. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope. GitHub Apps must have the `secrets` repository permission to use this endpoint.
34262    /// 
34263    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-an-environment-public-key)
34264    pub fn actions_get_environment_public_key(
34265        &self,
34266        repository_id: i64,
34267        environment_name: &str,
34268    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34269        let mut theScheme = AuthScheme::from(&self.config.authentication);
34270
34271        while let Some(auth_step) = theScheme.step()? {
34272            match auth_step {
34273                ::authentic::AuthenticationStep::Request(auth_request) => {
34274                    theScheme.respond(self.client.execute(auth_request));
34275                }
34276                ::authentic::AuthenticationStep::WaitFor(duration) => {
34277                    (self.sleep)(duration);
34278                }
34279            }
34280        }
34281        let theBuilder = crate::v1_1_4::request::actions_get_environment_public_key::reqwest_blocking_builder(
34282            self.config.base_url.as_ref(),
34283            repository_id,
34284            environment_name,
34285            self.config.user_agent.as_ref(),
34286            self.config.accept.as_deref(),
34287        )?
34288        .with_authentication(&theScheme)?;
34289
34290        let theRequest =
34291            crate::v1_1_4::request::actions_get_environment_public_key::reqwest_blocking_request(theBuilder)?;
34292
34293        ::log::debug!("HTTP request: {:?}", &theRequest);
34294
34295        let theResponse = self.client.execute(theRequest)?;
34296
34297        ::log::debug!("HTTP response: {:?}", &theResponse);
34298
34299        Ok(theResponse)
34300    }
34301
34302    /// Get an environment secret
34303    /// 
34304    /// Gets a single environment secret without revealing its encrypted value. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `secrets` repository permission to use this endpoint.
34305    /// 
34306    /// [API method documentation](https://docs.github.com/rest/reference/actions#get-an-environment-secret)
34307    pub fn actions_get_environment_secret(
34308        &self,
34309        repository_id: i64,
34310        environment_name: &str,
34311        secret_name: &str,
34312    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34313        let mut theScheme = AuthScheme::from(&self.config.authentication);
34314
34315        while let Some(auth_step) = theScheme.step()? {
34316            match auth_step {
34317                ::authentic::AuthenticationStep::Request(auth_request) => {
34318                    theScheme.respond(self.client.execute(auth_request));
34319                }
34320                ::authentic::AuthenticationStep::WaitFor(duration) => {
34321                    (self.sleep)(duration);
34322                }
34323            }
34324        }
34325        let theBuilder = crate::v1_1_4::request::actions_get_environment_secret::reqwest_blocking_builder(
34326            self.config.base_url.as_ref(),
34327            repository_id,
34328            environment_name,
34329            secret_name,
34330            self.config.user_agent.as_ref(),
34331            self.config.accept.as_deref(),
34332        )?
34333        .with_authentication(&theScheme)?;
34334
34335        let theRequest =
34336            crate::v1_1_4::request::actions_get_environment_secret::reqwest_blocking_request(theBuilder)?;
34337
34338        ::log::debug!("HTTP request: {:?}", &theRequest);
34339
34340        let theResponse = self.client.execute(theRequest)?;
34341
34342        ::log::debug!("HTTP response: {:?}", &theResponse);
34343
34344        Ok(theResponse)
34345    }
34346
34347    /// Create or update an environment secret
34348    /// 
34349    /// Creates or updates an environment secret with an encrypted value. Encrypt your secret using
34350    /// [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages). You must authenticate using an access
34351    /// token with the `repo` scope to use this endpoint. GitHub Apps must have the `secrets` repository permission to use
34352    /// this endpoint.
34353    /// 
34354    /// #### Example encrypting a secret using Node.js
34355    /// 
34356    /// Encrypt your secret using the [tweetsodium](https://github.com/github/tweetsodium) library.
34357    /// 
34358    /// ```text
34359    /// const sodium = require('tweetsodium');
34360    /// 
34361    /// const key = "base64-encoded-public-key";
34362    /// const value = "plain-text-secret";
34363    /// 
34364    /// // Convert the message and key to Uint8Array's (Buffer implements that interface)
34365    /// const messageBytes = Buffer.from(value);
34366    /// const keyBytes = Buffer.from(key, 'base64');
34367    /// 
34368    /// // Encrypt using LibSodium.
34369    /// const encryptedBytes = sodium.seal(messageBytes, keyBytes);
34370    /// 
34371    /// // Base64 the encrypted secret
34372    /// const encrypted = Buffer.from(encryptedBytes).toString('base64');
34373    /// 
34374    /// console.log(encrypted);
34375    /// ```
34376    /// 
34377    /// 
34378    /// #### Example encrypting a secret using Python
34379    /// 
34380    /// Encrypt your secret using [pynacl](https://pynacl.readthedocs.io/en/latest/public/#nacl-public-sealedbox) with Python 3.
34381    /// 
34382    /// ```text
34383    /// from base64 import b64encode
34384    /// from nacl import encoding, public
34385    /// 
34386    /// def encrypt(public_key: str, secret_value: str) -> str:
34387    ///   """Encrypt a Unicode string using the public key."""
34388    ///   public_key = public.PublicKey(public_key.encode("utf-8"), encoding.Base64Encoder())
34389    ///   sealed_box = public.SealedBox(public_key)
34390    ///   encrypted = sealed_box.encrypt(secret_value.encode("utf-8"))
34391    ///   return b64encode(encrypted).decode("utf-8")
34392    /// ```
34393    /// 
34394    /// #### Example encrypting a secret using C#
34395    /// 
34396    /// Encrypt your secret using the [Sodium.Core](https://www.nuget.org/packages/Sodium.Core/) package.
34397    /// 
34398    /// ```text
34399    /// var secretValue = System.Text.Encoding.UTF8.GetBytes("mySecret");
34400    /// var publicKey = Convert.FromBase64String("2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=");
34401    /// 
34402    /// var sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);
34403    /// 
34404    /// Console.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));
34405    /// ```
34406    /// 
34407    /// #### Example encrypting a secret using Ruby
34408    /// 
34409    /// Encrypt your secret using the [rbnacl](https://github.com/RubyCrypto/rbnacl) gem.
34410    /// 
34411    /// ```ruby
34412    /// require "rbnacl"
34413    /// require "base64"
34414    /// 
34415    /// key = Base64.decode64("+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=")
34416    /// public_key = RbNaCl::PublicKey.new(key)
34417    /// 
34418    /// box = RbNaCl::Boxes::Sealed.from_public_key(public_key)
34419    /// encrypted_secret = box.encrypt("my_secret")
34420    /// 
34421    /// # Print the base64 encoded secret
34422    /// puts Base64.strict_encode64(encrypted_secret)
34423    /// ```
34424    /// 
34425    /// [API method documentation](https://docs.github.com/rest/reference/actions#create-or-update-an-environment-secret)
34426    ///
34427    /// # Content
34428    ///
34429    /// - [`&v1_1_4::request::actions_create_or_update_environment_secret::body::Json`](crate::v1_1_4::request::actions_create_or_update_environment_secret::body::Json)
34430    pub fn actions_create_or_update_environment_secret<Content>(
34431        &self,
34432        repository_id: i64,
34433        environment_name: &str,
34434        secret_name: &str,
34435        theContent: Content,
34436    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
34437    where
34438        Content: Copy + TryInto<crate::v1_1_4::request::actions_create_or_update_environment_secret::Content<::reqwest::blocking::Body>>,
34439        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::actions_create_or_update_environment_secret::Content<::reqwest::blocking::Body>>>::Error>
34440    {
34441        let mut theScheme = AuthScheme::from(&self.config.authentication);
34442
34443        while let Some(auth_step) = theScheme.step()? {
34444            match auth_step {
34445                ::authentic::AuthenticationStep::Request(auth_request) => {
34446                    theScheme.respond(self.client.execute(auth_request));
34447                }
34448                ::authentic::AuthenticationStep::WaitFor(duration) => {
34449                    (self.sleep)(duration);
34450                }
34451            }
34452        }
34453        let theBuilder = crate::v1_1_4::request::actions_create_or_update_environment_secret::reqwest_blocking_builder(
34454            self.config.base_url.as_ref(),
34455            repository_id,
34456            environment_name,
34457            secret_name,
34458            self.config.user_agent.as_ref(),
34459            self.config.accept.as_deref(),
34460        )?
34461        .with_authentication(&theScheme)?;
34462
34463        let theRequest = crate::v1_1_4::request::actions_create_or_update_environment_secret::reqwest_blocking_request(
34464            theBuilder,
34465            theContent.try_into()?,
34466        )?;
34467
34468        ::log::debug!("HTTP request: {:?}", &theRequest);
34469
34470        let theResponse = self.client.execute(theRequest)?;
34471
34472        ::log::debug!("HTTP response: {:?}", &theResponse);
34473
34474        Ok(theResponse)
34475    }
34476
34477    /// Delete an environment secret
34478    /// 
34479    /// Deletes a secret in an environment using the secret name. You must authenticate using an access token with the `repo` scope to use this endpoint. GitHub Apps must have the `secrets` repository permission to use this endpoint.
34480    /// 
34481    /// [API method documentation](https://docs.github.com/rest/reference/actions#delete-an-environment-secret)
34482    pub fn actions_delete_environment_secret(
34483        &self,
34484        repository_id: i64,
34485        environment_name: &str,
34486        secret_name: &str,
34487    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34488        let mut theScheme = AuthScheme::from(&self.config.authentication);
34489
34490        while let Some(auth_step) = theScheme.step()? {
34491            match auth_step {
34492                ::authentic::AuthenticationStep::Request(auth_request) => {
34493                    theScheme.respond(self.client.execute(auth_request));
34494                }
34495                ::authentic::AuthenticationStep::WaitFor(duration) => {
34496                    (self.sleep)(duration);
34497                }
34498            }
34499        }
34500        let theBuilder = crate::v1_1_4::request::actions_delete_environment_secret::reqwest_blocking_builder(
34501            self.config.base_url.as_ref(),
34502            repository_id,
34503            environment_name,
34504            secret_name,
34505            self.config.user_agent.as_ref(),
34506            self.config.accept.as_deref(),
34507        )?
34508        .with_authentication(&theScheme)?;
34509
34510        let theRequest =
34511            crate::v1_1_4::request::actions_delete_environment_secret::reqwest_blocking_request(theBuilder)?;
34512
34513        ::log::debug!("HTTP request: {:?}", &theRequest);
34514
34515        let theResponse = self.client.execute(theRequest)?;
34516
34517        ::log::debug!("HTTP response: {:?}", &theResponse);
34518
34519        Ok(theResponse)
34520    }
34521
34522    /// List provisioned SCIM groups for an enterprise
34523    /// 
34524    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34525    /// 
34526    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#list-provisioned-scim-groups-for-an-enterprise)
34527    pub fn enterprise_admin_list_provisioned_groups_enterprise(
34528        &self,
34529        enterprise: &str,
34530        start_index: ::std::option::Option<i64>,
34531        count: ::std::option::Option<i64>,
34532        filter: ::std::option::Option<&str>,
34533        excluded_attributes: ::std::option::Option<&str>,
34534    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34535        let mut theScheme = AuthScheme::from(&self.config.authentication);
34536
34537        while let Some(auth_step) = theScheme.step()? {
34538            match auth_step {
34539                ::authentic::AuthenticationStep::Request(auth_request) => {
34540                    theScheme.respond(self.client.execute(auth_request));
34541                }
34542                ::authentic::AuthenticationStep::WaitFor(duration) => {
34543                    (self.sleep)(duration);
34544                }
34545            }
34546        }
34547        let theBuilder = crate::v1_1_4::request::enterprise_admin_list_provisioned_groups_enterprise::reqwest_blocking_builder(
34548            self.config.base_url.as_ref(),
34549            enterprise,
34550            start_index,
34551            count,
34552            filter,
34553            excluded_attributes,
34554            self.config.user_agent.as_ref(),
34555            self.config.accept.as_deref(),
34556        )?
34557        .with_authentication(&theScheme)?;
34558
34559        let theRequest =
34560            crate::v1_1_4::request::enterprise_admin_list_provisioned_groups_enterprise::reqwest_blocking_request(theBuilder)?;
34561
34562        ::log::debug!("HTTP request: {:?}", &theRequest);
34563
34564        let theResponse = self.client.execute(theRequest)?;
34565
34566        ::log::debug!("HTTP response: {:?}", &theResponse);
34567
34568        Ok(theResponse)
34569    }
34570
34571    /// Provision a SCIM enterprise group and invite users
34572    /// 
34573    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34574    /// 
34575    /// Provision an enterprise group, and invite users to the group. This sends invitation emails to the email address of the invited users to join the GitHub organization that the SCIM group corresponds to.
34576    /// 
34577    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#provision-a-scim-enterprise-group-and-invite-users)
34578    ///
34579    /// # Content
34580    ///
34581    /// - [`&v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_group::body::Json`](crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_group::body::Json)
34582    pub fn enterprise_admin_provision_and_invite_enterprise_group<Content>(
34583        &self,
34584        enterprise: &str,
34585        theContent: Content,
34586    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
34587    where
34588        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_group::Content<::reqwest::blocking::Body>>,
34589        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_group::Content<::reqwest::blocking::Body>>>::Error>
34590    {
34591        let mut theScheme = AuthScheme::from(&self.config.authentication);
34592
34593        while let Some(auth_step) = theScheme.step()? {
34594            match auth_step {
34595                ::authentic::AuthenticationStep::Request(auth_request) => {
34596                    theScheme.respond(self.client.execute(auth_request));
34597                }
34598                ::authentic::AuthenticationStep::WaitFor(duration) => {
34599                    (self.sleep)(duration);
34600                }
34601            }
34602        }
34603        let theBuilder = crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_group::reqwest_blocking_builder(
34604            self.config.base_url.as_ref(),
34605            enterprise,
34606            self.config.user_agent.as_ref(),
34607            self.config.accept.as_deref(),
34608        )?
34609        .with_authentication(&theScheme)?;
34610
34611        let theRequest = crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_group::reqwest_blocking_request(
34612            theBuilder,
34613            theContent.try_into()?,
34614        )?;
34615
34616        ::log::debug!("HTTP request: {:?}", &theRequest);
34617
34618        let theResponse = self.client.execute(theRequest)?;
34619
34620        ::log::debug!("HTTP response: {:?}", &theResponse);
34621
34622        Ok(theResponse)
34623    }
34624
34625    /// Get SCIM provisioning information for an enterprise group
34626    /// 
34627    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34628    /// 
34629    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#get-scim-provisioning-information-for-an-enterprise-group)
34630    pub fn enterprise_admin_get_provisioning_information_for_enterprise_group(
34631        &self,
34632        enterprise: &str,
34633        scim_group_id: &str,
34634        excluded_attributes: ::std::option::Option<&str>,
34635    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34636        let mut theScheme = AuthScheme::from(&self.config.authentication);
34637
34638        while let Some(auth_step) = theScheme.step()? {
34639            match auth_step {
34640                ::authentic::AuthenticationStep::Request(auth_request) => {
34641                    theScheme.respond(self.client.execute(auth_request));
34642                }
34643                ::authentic::AuthenticationStep::WaitFor(duration) => {
34644                    (self.sleep)(duration);
34645                }
34646            }
34647        }
34648        let theBuilder = crate::v1_1_4::request::enterprise_admin_get_provisioning_information_for_enterprise_group::reqwest_blocking_builder(
34649            self.config.base_url.as_ref(),
34650            enterprise,
34651            scim_group_id,
34652            excluded_attributes,
34653            self.config.user_agent.as_ref(),
34654            self.config.accept.as_deref(),
34655        )?
34656        .with_authentication(&theScheme)?;
34657
34658        let theRequest =
34659            crate::v1_1_4::request::enterprise_admin_get_provisioning_information_for_enterprise_group::reqwest_blocking_request(theBuilder)?;
34660
34661        ::log::debug!("HTTP request: {:?}", &theRequest);
34662
34663        let theResponse = self.client.execute(theRequest)?;
34664
34665        ::log::debug!("HTTP response: {:?}", &theResponse);
34666
34667        Ok(theResponse)
34668    }
34669
34670    /// Set SCIM information for a provisioned enterprise group
34671    /// 
34672    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34673    /// 
34674    /// Replaces an existing provisioned group’s information. You must provide all the information required for the group as if you were provisioning it for the first time. Any existing group information that you don't provide will be removed, including group membership. If you want to only update a specific attribute, use the [Update an attribute for a SCIM enterprise group](#update-an-attribute-for-a-scim-enterprise-group) endpoint instead.
34675    /// 
34676    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#set-scim-information-for-a-provisioned-enterprise-group)
34677    ///
34678    /// # Content
34679    ///
34680    /// - [`&v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_group::body::Json`](crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_group::body::Json)
34681    pub fn enterprise_admin_set_information_for_provisioned_enterprise_group<Content>(
34682        &self,
34683        enterprise: &str,
34684        scim_group_id: &str,
34685        theContent: Content,
34686    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
34687    where
34688        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_group::Content<::reqwest::blocking::Body>>,
34689        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_group::Content<::reqwest::blocking::Body>>>::Error>
34690    {
34691        let mut theScheme = AuthScheme::from(&self.config.authentication);
34692
34693        while let Some(auth_step) = theScheme.step()? {
34694            match auth_step {
34695                ::authentic::AuthenticationStep::Request(auth_request) => {
34696                    theScheme.respond(self.client.execute(auth_request));
34697                }
34698                ::authentic::AuthenticationStep::WaitFor(duration) => {
34699                    (self.sleep)(duration);
34700                }
34701            }
34702        }
34703        let theBuilder = crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_group::reqwest_blocking_builder(
34704            self.config.base_url.as_ref(),
34705            enterprise,
34706            scim_group_id,
34707            self.config.user_agent.as_ref(),
34708            self.config.accept.as_deref(),
34709        )?
34710        .with_authentication(&theScheme)?;
34711
34712        let theRequest = crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_group::reqwest_blocking_request(
34713            theBuilder,
34714            theContent.try_into()?,
34715        )?;
34716
34717        ::log::debug!("HTTP request: {:?}", &theRequest);
34718
34719        let theResponse = self.client.execute(theRequest)?;
34720
34721        ::log::debug!("HTTP response: {:?}", &theResponse);
34722
34723        Ok(theResponse)
34724    }
34725
34726    /// Delete a SCIM group from an enterprise
34727    /// 
34728    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34729    /// 
34730    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#delete-a-scim-group-from-an-enterprise)
34731    pub fn enterprise_admin_delete_scim_group_from_enterprise(
34732        &self,
34733        enterprise: &str,
34734        scim_group_id: &str,
34735    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34736        let mut theScheme = AuthScheme::from(&self.config.authentication);
34737
34738        while let Some(auth_step) = theScheme.step()? {
34739            match auth_step {
34740                ::authentic::AuthenticationStep::Request(auth_request) => {
34741                    theScheme.respond(self.client.execute(auth_request));
34742                }
34743                ::authentic::AuthenticationStep::WaitFor(duration) => {
34744                    (self.sleep)(duration);
34745                }
34746            }
34747        }
34748        let theBuilder = crate::v1_1_4::request::enterprise_admin_delete_scim_group_from_enterprise::reqwest_blocking_builder(
34749            self.config.base_url.as_ref(),
34750            enterprise,
34751            scim_group_id,
34752            self.config.user_agent.as_ref(),
34753            self.config.accept.as_deref(),
34754        )?
34755        .with_authentication(&theScheme)?;
34756
34757        let theRequest =
34758            crate::v1_1_4::request::enterprise_admin_delete_scim_group_from_enterprise::reqwest_blocking_request(theBuilder)?;
34759
34760        ::log::debug!("HTTP request: {:?}", &theRequest);
34761
34762        let theResponse = self.client.execute(theRequest)?;
34763
34764        ::log::debug!("HTTP response: {:?}", &theResponse);
34765
34766        Ok(theResponse)
34767    }
34768
34769    /// Update an attribute for a SCIM enterprise group
34770    /// 
34771    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34772    /// 
34773    /// Allows you to change a provisioned group’s individual attributes. To change a group’s values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the [SCIM specification](https://tools.ietf.org/html/rfc7644#section-3.5.2).
34774    /// 
34775    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#update-an-attribute-for-a-scim-enterprise-group)
34776    ///
34777    /// # Content
34778    ///
34779    /// - [`&v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_group::body::Json`](crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_group::body::Json)
34780    pub fn enterprise_admin_update_attribute_for_enterprise_group<Content>(
34781        &self,
34782        enterprise: &str,
34783        scim_group_id: &str,
34784        theContent: Content,
34785    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
34786    where
34787        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_group::Content<::reqwest::blocking::Body>>,
34788        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_group::Content<::reqwest::blocking::Body>>>::Error>
34789    {
34790        let mut theScheme = AuthScheme::from(&self.config.authentication);
34791
34792        while let Some(auth_step) = theScheme.step()? {
34793            match auth_step {
34794                ::authentic::AuthenticationStep::Request(auth_request) => {
34795                    theScheme.respond(self.client.execute(auth_request));
34796                }
34797                ::authentic::AuthenticationStep::WaitFor(duration) => {
34798                    (self.sleep)(duration);
34799                }
34800            }
34801        }
34802        let theBuilder = crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_group::reqwest_blocking_builder(
34803            self.config.base_url.as_ref(),
34804            enterprise,
34805            scim_group_id,
34806            self.config.user_agent.as_ref(),
34807            self.config.accept.as_deref(),
34808        )?
34809        .with_authentication(&theScheme)?;
34810
34811        let theRequest = crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_group::reqwest_blocking_request(
34812            theBuilder,
34813            theContent.try_into()?,
34814        )?;
34815
34816        ::log::debug!("HTTP request: {:?}", &theRequest);
34817
34818        let theResponse = self.client.execute(theRequest)?;
34819
34820        ::log::debug!("HTTP response: {:?}", &theResponse);
34821
34822        Ok(theResponse)
34823    }
34824
34825    /// List SCIM provisioned identities for an enterprise
34826    /// 
34827    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34828    /// 
34829    /// Retrieves a paginated list of all provisioned enterprise members, including pending invitations.
34830    /// 
34831    /// When a user with a SAML-provisioned external identity leaves (or is removed from) an enterprise, the account's metadata is immediately removed. However, the returned list of user accounts might not always match the organization or enterprise member list you see on GitHub. This can happen in certain cases where an external identity associated with an organization will not match an organization member:
34832    ///   - When a user with a SCIM-provisioned external identity is removed from an enterprise, the account's metadata is preserved to allow the user to re-join the organization in the future.
34833    ///   - When inviting a user to join an organization, you can expect to see their external identity in the results before they accept the invitation, or if the invitation is cancelled (or never accepted).
34834    ///   - When a user is invited over SCIM, an external identity is created that matches with the invitee's email address. However, this identity is only linked to a user account when the user accepts the invitation by going through SAML SSO.
34835    /// 
34836    /// The returned list of external identities can include an entry for a `null` user. These are unlinked SAML identities that are created when a user goes through the following Single Sign-On (SSO) process but does not sign in to their GitHub account after completing SSO:
34837    /// 
34838    /// 1. The user is granted access by the IdP and is not a member of the GitHub enterprise.
34839    /// 
34840    /// 1. The user attempts to access the GitHub enterprise and initiates the SAML SSO process, and is not currently signed in to their GitHub account.
34841    /// 
34842    /// 1. After successfully authenticating with the SAML SSO IdP, the `null` external identity entry is created and the user is prompted to sign in to their GitHub account:
34843    ///    - If the user signs in, their GitHub account is linked to this entry.
34844    ///    - If the user does not sign in (or does not create a new account when prompted), they are not added to the GitHub enterprise, and the external identity `null` entry remains in place.
34845    /// 
34846    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#list-scim-provisioned-identities-for-an-enterprise)
34847    pub fn enterprise_admin_list_provisioned_identities_enterprise(
34848        &self,
34849        enterprise: &str,
34850        start_index: ::std::option::Option<i64>,
34851        count: ::std::option::Option<i64>,
34852        filter: ::std::option::Option<&str>,
34853    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34854        let mut theScheme = AuthScheme::from(&self.config.authentication);
34855
34856        while let Some(auth_step) = theScheme.step()? {
34857            match auth_step {
34858                ::authentic::AuthenticationStep::Request(auth_request) => {
34859                    theScheme.respond(self.client.execute(auth_request));
34860                }
34861                ::authentic::AuthenticationStep::WaitFor(duration) => {
34862                    (self.sleep)(duration);
34863                }
34864            }
34865        }
34866        let theBuilder = crate::v1_1_4::request::enterprise_admin_list_provisioned_identities_enterprise::reqwest_blocking_builder(
34867            self.config.base_url.as_ref(),
34868            enterprise,
34869            start_index,
34870            count,
34871            filter,
34872            self.config.user_agent.as_ref(),
34873            self.config.accept.as_deref(),
34874        )?
34875        .with_authentication(&theScheme)?;
34876
34877        let theRequest =
34878            crate::v1_1_4::request::enterprise_admin_list_provisioned_identities_enterprise::reqwest_blocking_request(theBuilder)?;
34879
34880        ::log::debug!("HTTP request: {:?}", &theRequest);
34881
34882        let theResponse = self.client.execute(theRequest)?;
34883
34884        ::log::debug!("HTTP response: {:?}", &theResponse);
34885
34886        Ok(theResponse)
34887    }
34888
34889    /// Provision and invite a SCIM enterprise user
34890    /// 
34891    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34892    /// 
34893    /// Provision enterprise membership for a user, and send organization invitation emails to the email address.
34894    /// 
34895    /// You can optionally include the groups a user will be invited to join. If you do not provide a list of `groups`, the user is provisioned for the enterprise, but no organization invitation emails will be sent.
34896    /// 
34897    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#provision-and-invite-a-scim-enterprise-user)
34898    ///
34899    /// # Content
34900    ///
34901    /// - [`&v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_user::body::Json`](crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_user::body::Json)
34902    pub fn enterprise_admin_provision_and_invite_enterprise_user<Content>(
34903        &self,
34904        enterprise: &str,
34905        theContent: Content,
34906    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
34907    where
34908        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_user::Content<::reqwest::blocking::Body>>,
34909        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_user::Content<::reqwest::blocking::Body>>>::Error>
34910    {
34911        let mut theScheme = AuthScheme::from(&self.config.authentication);
34912
34913        while let Some(auth_step) = theScheme.step()? {
34914            match auth_step {
34915                ::authentic::AuthenticationStep::Request(auth_request) => {
34916                    theScheme.respond(self.client.execute(auth_request));
34917                }
34918                ::authentic::AuthenticationStep::WaitFor(duration) => {
34919                    (self.sleep)(duration);
34920                }
34921            }
34922        }
34923        let theBuilder = crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_user::reqwest_blocking_builder(
34924            self.config.base_url.as_ref(),
34925            enterprise,
34926            self.config.user_agent.as_ref(),
34927            self.config.accept.as_deref(),
34928        )?
34929        .with_authentication(&theScheme)?;
34930
34931        let theRequest = crate::v1_1_4::request::enterprise_admin_provision_and_invite_enterprise_user::reqwest_blocking_request(
34932            theBuilder,
34933            theContent.try_into()?,
34934        )?;
34935
34936        ::log::debug!("HTTP request: {:?}", &theRequest);
34937
34938        let theResponse = self.client.execute(theRequest)?;
34939
34940        ::log::debug!("HTTP response: {:?}", &theResponse);
34941
34942        Ok(theResponse)
34943    }
34944
34945    /// Get SCIM provisioning information for an enterprise user
34946    /// 
34947    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34948    /// 
34949    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#get-scim-provisioning-information-for-an-enterprise-user)
34950    pub fn enterprise_admin_get_provisioning_information_for_enterprise_user(
34951        &self,
34952        enterprise: &str,
34953        scim_user_id: &str,
34954    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
34955        let mut theScheme = AuthScheme::from(&self.config.authentication);
34956
34957        while let Some(auth_step) = theScheme.step()? {
34958            match auth_step {
34959                ::authentic::AuthenticationStep::Request(auth_request) => {
34960                    theScheme.respond(self.client.execute(auth_request));
34961                }
34962                ::authentic::AuthenticationStep::WaitFor(duration) => {
34963                    (self.sleep)(duration);
34964                }
34965            }
34966        }
34967        let theBuilder = crate::v1_1_4::request::enterprise_admin_get_provisioning_information_for_enterprise_user::reqwest_blocking_builder(
34968            self.config.base_url.as_ref(),
34969            enterprise,
34970            scim_user_id,
34971            self.config.user_agent.as_ref(),
34972            self.config.accept.as_deref(),
34973        )?
34974        .with_authentication(&theScheme)?;
34975
34976        let theRequest =
34977            crate::v1_1_4::request::enterprise_admin_get_provisioning_information_for_enterprise_user::reqwest_blocking_request(theBuilder)?;
34978
34979        ::log::debug!("HTTP request: {:?}", &theRequest);
34980
34981        let theResponse = self.client.execute(theRequest)?;
34982
34983        ::log::debug!("HTTP response: {:?}", &theResponse);
34984
34985        Ok(theResponse)
34986    }
34987
34988    /// Set SCIM information for a provisioned enterprise user
34989    /// 
34990    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
34991    /// 
34992    /// Replaces an existing provisioned user's information. You must provide all the information required for the user as if you were provisioning them for the first time. Any existing user information that you don't provide will be removed. If you want to only update a specific attribute, use the [Update an attribute for a SCIM user](#update-an-attribute-for-an-enterprise-scim-user) endpoint instead.
34993    /// 
34994    /// You must at least provide the required values for the user: `userName`, `name`, and `emails`.
34995    /// 
34996    /// **Warning:** Setting `active: false` removes the user from the enterprise, deletes the external identity, and deletes the associated `{scim_user_id}`.
34997    /// 
34998    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#set-scim-information-for-a-provisioned-enterprise-user)
34999    ///
35000    /// # Content
35001    ///
35002    /// - [`&v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_user::body::Json`](crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_user::body::Json)
35003    pub fn enterprise_admin_set_information_for_provisioned_enterprise_user<Content>(
35004        &self,
35005        enterprise: &str,
35006        scim_user_id: &str,
35007        theContent: Content,
35008    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
35009    where
35010        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_user::Content<::reqwest::blocking::Body>>,
35011        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_user::Content<::reqwest::blocking::Body>>>::Error>
35012    {
35013        let mut theScheme = AuthScheme::from(&self.config.authentication);
35014
35015        while let Some(auth_step) = theScheme.step()? {
35016            match auth_step {
35017                ::authentic::AuthenticationStep::Request(auth_request) => {
35018                    theScheme.respond(self.client.execute(auth_request));
35019                }
35020                ::authentic::AuthenticationStep::WaitFor(duration) => {
35021                    (self.sleep)(duration);
35022                }
35023            }
35024        }
35025        let theBuilder = crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_user::reqwest_blocking_builder(
35026            self.config.base_url.as_ref(),
35027            enterprise,
35028            scim_user_id,
35029            self.config.user_agent.as_ref(),
35030            self.config.accept.as_deref(),
35031        )?
35032        .with_authentication(&theScheme)?;
35033
35034        let theRequest = crate::v1_1_4::request::enterprise_admin_set_information_for_provisioned_enterprise_user::reqwest_blocking_request(
35035            theBuilder,
35036            theContent.try_into()?,
35037        )?;
35038
35039        ::log::debug!("HTTP request: {:?}", &theRequest);
35040
35041        let theResponse = self.client.execute(theRequest)?;
35042
35043        ::log::debug!("HTTP response: {:?}", &theResponse);
35044
35045        Ok(theResponse)
35046    }
35047
35048    /// Delete a SCIM user from an enterprise
35049    /// 
35050    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
35051    /// 
35052    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#delete-a-scim-user-from-an-enterprise)
35053    pub fn enterprise_admin_delete_user_from_enterprise(
35054        &self,
35055        enterprise: &str,
35056        scim_user_id: &str,
35057    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35058        let mut theScheme = AuthScheme::from(&self.config.authentication);
35059
35060        while let Some(auth_step) = theScheme.step()? {
35061            match auth_step {
35062                ::authentic::AuthenticationStep::Request(auth_request) => {
35063                    theScheme.respond(self.client.execute(auth_request));
35064                }
35065                ::authentic::AuthenticationStep::WaitFor(duration) => {
35066                    (self.sleep)(duration);
35067                }
35068            }
35069        }
35070        let theBuilder = crate::v1_1_4::request::enterprise_admin_delete_user_from_enterprise::reqwest_blocking_builder(
35071            self.config.base_url.as_ref(),
35072            enterprise,
35073            scim_user_id,
35074            self.config.user_agent.as_ref(),
35075            self.config.accept.as_deref(),
35076        )?
35077        .with_authentication(&theScheme)?;
35078
35079        let theRequest =
35080            crate::v1_1_4::request::enterprise_admin_delete_user_from_enterprise::reqwest_blocking_request(theBuilder)?;
35081
35082        ::log::debug!("HTTP request: {:?}", &theRequest);
35083
35084        let theResponse = self.client.execute(theRequest)?;
35085
35086        ::log::debug!("HTTP response: {:?}", &theResponse);
35087
35088        Ok(theResponse)
35089    }
35090
35091    /// Update an attribute for a SCIM enterprise user
35092    /// 
35093    /// **Note:** The SCIM API endpoints for enterprise accounts are currently in beta and are subject to change.
35094    /// 
35095    /// Allows you to change a provisioned user's individual attributes. To change a user's values, you must provide a specific `Operations` JSON format that contains at least one of the `add`, `remove`, or `replace` operations. For examples and more information on the SCIM operations format, see the [SCIM specification](https://tools.ietf.org/html/rfc7644#section-3.5.2).
35096    /// 
35097    /// **Note:** Complicated SCIM `path` selectors that include filters are not supported. For example, a `path` selector defined as `"path": "emails[type eq \"work\"]"` will not work.
35098    /// 
35099    /// **Warning:** If you set `active:false` using the `replace` operation (as shown in the JSON example below), it removes the user from the enterprise, deletes the external identity, and deletes the associated `:scim_user_id`.
35100    /// 
35101    /// ```text
35102    /// {
35103    ///   "Operations":[{
35104    ///     "op":"replace",
35105    ///     "value":{
35106    ///       "active":false
35107    ///     }
35108    ///   }]
35109    /// }
35110    /// ```
35111    /// 
35112    /// [API method documentation](https://docs.github.com/rest/reference/enterprise-admin#update-an-attribute-for-a-scim-enterprise-user)
35113    ///
35114    /// # Content
35115    ///
35116    /// - [`&v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_user::body::Json`](crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_user::body::Json)
35117    pub fn enterprise_admin_update_attribute_for_enterprise_user<Content>(
35118        &self,
35119        enterprise: &str,
35120        scim_user_id: &str,
35121        theContent: Content,
35122    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
35123    where
35124        Content: Copy + TryInto<crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_user::Content<::reqwest::blocking::Body>>,
35125        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_user::Content<::reqwest::blocking::Body>>>::Error>
35126    {
35127        let mut theScheme = AuthScheme::from(&self.config.authentication);
35128
35129        while let Some(auth_step) = theScheme.step()? {
35130            match auth_step {
35131                ::authentic::AuthenticationStep::Request(auth_request) => {
35132                    theScheme.respond(self.client.execute(auth_request));
35133                }
35134                ::authentic::AuthenticationStep::WaitFor(duration) => {
35135                    (self.sleep)(duration);
35136                }
35137            }
35138        }
35139        let theBuilder = crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_user::reqwest_blocking_builder(
35140            self.config.base_url.as_ref(),
35141            enterprise,
35142            scim_user_id,
35143            self.config.user_agent.as_ref(),
35144            self.config.accept.as_deref(),
35145        )?
35146        .with_authentication(&theScheme)?;
35147
35148        let theRequest = crate::v1_1_4::request::enterprise_admin_update_attribute_for_enterprise_user::reqwest_blocking_request(
35149            theBuilder,
35150            theContent.try_into()?,
35151        )?;
35152
35153        ::log::debug!("HTTP request: {:?}", &theRequest);
35154
35155        let theResponse = self.client.execute(theRequest)?;
35156
35157        ::log::debug!("HTTP response: {:?}", &theResponse);
35158
35159        Ok(theResponse)
35160    }
35161
35162    /// List SCIM provisioned identities
35163    /// 
35164    /// Retrieves a paginated list of all provisioned organization members, including pending invitations. If you provide the `filter` parameter, the resources for all matching provisions members are returned.
35165    /// 
35166    /// When a user with a SAML-provisioned external identity leaves (or is removed from) an organization, the account's metadata is immediately removed. However, the returned list of user accounts might not always match the organization or enterprise member list you see on GitHub. This can happen in certain cases where an external identity associated with an organization will not match an organization member:
35167    ///   - When a user with a SCIM-provisioned external identity is removed from an organization, the account's metadata is preserved to allow the user to re-join the organization in the future.
35168    ///   - When inviting a user to join an organization, you can expect to see their external identity in the results before they accept the invitation, or if the invitation is cancelled (or never accepted).
35169    ///   - When a user is invited over SCIM, an external identity is created that matches with the invitee's email address. However, this identity is only linked to a user account when the user accepts the invitation by going through SAML SSO.
35170    /// 
35171    /// The returned list of external identities can include an entry for a `null` user. These are unlinked SAML identities that are created when a user goes through the following Single Sign-On (SSO) process but does not sign in to their GitHub account after completing SSO:
35172    /// 
35173    /// 1. The user is granted access by the IdP and is not a member of the GitHub organization.
35174    /// 
35175    /// 1. The user attempts to access the GitHub organization and initiates the SAML SSO process, and is not currently signed in to their GitHub account.
35176    /// 
35177    /// 1. After successfully authenticating with the SAML SSO IdP, the `null` external identity entry is created and the user is prompted to sign in to their GitHub account:
35178    ///    - If the user signs in, their GitHub account is linked to this entry.
35179    ///    - If the user does not sign in (or does not create a new account when prompted), they are not added to the GitHub organization, and the external identity `null` entry remains in place.
35180    /// 
35181    /// [API method documentation](https://docs.github.com/rest/reference/scim#list-scim-provisioned-identities)
35182    pub fn scim_list_provisioned_identities(
35183        &self,
35184        org: &str,
35185        start_index: ::std::option::Option<i64>,
35186        count: ::std::option::Option<i64>,
35187        filter: ::std::option::Option<&str>,
35188    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35189        let mut theScheme = AuthScheme::from(&self.config.authentication);
35190
35191        while let Some(auth_step) = theScheme.step()? {
35192            match auth_step {
35193                ::authentic::AuthenticationStep::Request(auth_request) => {
35194                    theScheme.respond(self.client.execute(auth_request));
35195                }
35196                ::authentic::AuthenticationStep::WaitFor(duration) => {
35197                    (self.sleep)(duration);
35198                }
35199            }
35200        }
35201        let theBuilder = crate::v1_1_4::request::scim_list_provisioned_identities::reqwest_blocking_builder(
35202            self.config.base_url.as_ref(),
35203            org,
35204            start_index,
35205            count,
35206            filter,
35207            self.config.user_agent.as_ref(),
35208            self.config.accept.as_deref(),
35209        )?
35210        .with_authentication(&theScheme)?;
35211
35212        let theRequest =
35213            crate::v1_1_4::request::scim_list_provisioned_identities::reqwest_blocking_request(theBuilder)?;
35214
35215        ::log::debug!("HTTP request: {:?}", &theRequest);
35216
35217        let theResponse = self.client.execute(theRequest)?;
35218
35219        ::log::debug!("HTTP response: {:?}", &theResponse);
35220
35221        Ok(theResponse)
35222    }
35223
35224    /// Provision and invite a SCIM user
35225    /// 
35226    /// Provision organization membership for a user, and send an activation email to the email address.
35227    /// 
35228    /// [API method documentation](https://docs.github.com/rest/reference/scim#provision-and-invite-a-scim-user)
35229    ///
35230    /// # Content
35231    ///
35232    /// - [`&v1_1_4::request::scim_provision_and_invite_user::body::Json`](crate::v1_1_4::request::scim_provision_and_invite_user::body::Json)
35233    pub fn scim_provision_and_invite_user<Content>(
35234        &self,
35235        org: &str,
35236        theContent: Content,
35237    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
35238    where
35239        Content: Copy + TryInto<crate::v1_1_4::request::scim_provision_and_invite_user::Content<::reqwest::blocking::Body>>,
35240        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::scim_provision_and_invite_user::Content<::reqwest::blocking::Body>>>::Error>
35241    {
35242        let mut theScheme = AuthScheme::from(&self.config.authentication);
35243
35244        while let Some(auth_step) = theScheme.step()? {
35245            match auth_step {
35246                ::authentic::AuthenticationStep::Request(auth_request) => {
35247                    theScheme.respond(self.client.execute(auth_request));
35248                }
35249                ::authentic::AuthenticationStep::WaitFor(duration) => {
35250                    (self.sleep)(duration);
35251                }
35252            }
35253        }
35254        let theBuilder = crate::v1_1_4::request::scim_provision_and_invite_user::reqwest_blocking_builder(
35255            self.config.base_url.as_ref(),
35256            org,
35257            self.config.user_agent.as_ref(),
35258            self.config.accept.as_deref(),
35259        )?
35260        .with_authentication(&theScheme)?;
35261
35262        let theRequest = crate::v1_1_4::request::scim_provision_and_invite_user::reqwest_blocking_request(
35263            theBuilder,
35264            theContent.try_into()?,
35265        )?;
35266
35267        ::log::debug!("HTTP request: {:?}", &theRequest);
35268
35269        let theResponse = self.client.execute(theRequest)?;
35270
35271        ::log::debug!("HTTP response: {:?}", &theResponse);
35272
35273        Ok(theResponse)
35274    }
35275
35276    /// Get SCIM provisioning information for a user
35277    /// 
35278    /// [API method documentation](https://docs.github.com/rest/reference/scim#get-scim-provisioning-information-for-a-user)
35279    pub fn scim_get_provisioning_information_for_user(
35280        &self,
35281        org: &str,
35282        scim_user_id: &str,
35283    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35284        let mut theScheme = AuthScheme::from(&self.config.authentication);
35285
35286        while let Some(auth_step) = theScheme.step()? {
35287            match auth_step {
35288                ::authentic::AuthenticationStep::Request(auth_request) => {
35289                    theScheme.respond(self.client.execute(auth_request));
35290                }
35291                ::authentic::AuthenticationStep::WaitFor(duration) => {
35292                    (self.sleep)(duration);
35293                }
35294            }
35295        }
35296        let theBuilder = crate::v1_1_4::request::scim_get_provisioning_information_for_user::reqwest_blocking_builder(
35297            self.config.base_url.as_ref(),
35298            org,
35299            scim_user_id,
35300            self.config.user_agent.as_ref(),
35301            self.config.accept.as_deref(),
35302        )?
35303        .with_authentication(&theScheme)?;
35304
35305        let theRequest =
35306            crate::v1_1_4::request::scim_get_provisioning_information_for_user::reqwest_blocking_request(theBuilder)?;
35307
35308        ::log::debug!("HTTP request: {:?}", &theRequest);
35309
35310        let theResponse = self.client.execute(theRequest)?;
35311
35312        ::log::debug!("HTTP response: {:?}", &theResponse);
35313
35314        Ok(theResponse)
35315    }
35316
35317    /// Update a provisioned organization membership
35318    /// 
35319    /// Replaces an existing provisioned user's information. You must provide all the information required for the user as if you were provisioning them for the first time. Any existing user information that you don't provide will be removed. If you want to only update a specific attribute, use the [Update an attribute for a SCIM user](https://docs.github.com/rest/reference/scim#update-an-attribute-for-a-scim-user) endpoint instead.
35320    /// 
35321    /// You must at least provide the required values for the user: `userName`, `name`, and `emails`.
35322    /// 
35323    /// **Warning:** Setting `active: false` removes the user from the organization, deletes the external identity, and deletes the associated `{scim_user_id}`.
35324    /// 
35325    /// [API method documentation](https://docs.github.com/rest/reference/scim#set-scim-information-for-a-provisioned-user)
35326    ///
35327    /// # Content
35328    ///
35329    /// - [`&v1_1_4::request::scim_set_information_for_provisioned_user::body::Json`](crate::v1_1_4::request::scim_set_information_for_provisioned_user::body::Json)
35330    pub fn scim_set_information_for_provisioned_user<Content>(
35331        &self,
35332        org: &str,
35333        scim_user_id: &str,
35334        theContent: Content,
35335    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
35336    where
35337        Content: Copy + TryInto<crate::v1_1_4::request::scim_set_information_for_provisioned_user::Content<::reqwest::blocking::Body>>,
35338        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::scim_set_information_for_provisioned_user::Content<::reqwest::blocking::Body>>>::Error>
35339    {
35340        let mut theScheme = AuthScheme::from(&self.config.authentication);
35341
35342        while let Some(auth_step) = theScheme.step()? {
35343            match auth_step {
35344                ::authentic::AuthenticationStep::Request(auth_request) => {
35345                    theScheme.respond(self.client.execute(auth_request));
35346                }
35347                ::authentic::AuthenticationStep::WaitFor(duration) => {
35348                    (self.sleep)(duration);
35349                }
35350            }
35351        }
35352        let theBuilder = crate::v1_1_4::request::scim_set_information_for_provisioned_user::reqwest_blocking_builder(
35353            self.config.base_url.as_ref(),
35354            org,
35355            scim_user_id,
35356            self.config.user_agent.as_ref(),
35357            self.config.accept.as_deref(),
35358        )?
35359        .with_authentication(&theScheme)?;
35360
35361        let theRequest = crate::v1_1_4::request::scim_set_information_for_provisioned_user::reqwest_blocking_request(
35362            theBuilder,
35363            theContent.try_into()?,
35364        )?;
35365
35366        ::log::debug!("HTTP request: {:?}", &theRequest);
35367
35368        let theResponse = self.client.execute(theRequest)?;
35369
35370        ::log::debug!("HTTP response: {:?}", &theResponse);
35371
35372        Ok(theResponse)
35373    }
35374
35375    /// Delete a SCIM user from an organization
35376    /// 
35377    /// [API method documentation](https://docs.github.com/rest/reference/scim#delete-a-scim-user-from-an-organization)
35378    pub fn scim_delete_user_from_org(
35379        &self,
35380        org: &str,
35381        scim_user_id: &str,
35382    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35383        let mut theScheme = AuthScheme::from(&self.config.authentication);
35384
35385        while let Some(auth_step) = theScheme.step()? {
35386            match auth_step {
35387                ::authentic::AuthenticationStep::Request(auth_request) => {
35388                    theScheme.respond(self.client.execute(auth_request));
35389                }
35390                ::authentic::AuthenticationStep::WaitFor(duration) => {
35391                    (self.sleep)(duration);
35392                }
35393            }
35394        }
35395        let theBuilder = crate::v1_1_4::request::scim_delete_user_from_org::reqwest_blocking_builder(
35396            self.config.base_url.as_ref(),
35397            org,
35398            scim_user_id,
35399            self.config.user_agent.as_ref(),
35400            self.config.accept.as_deref(),
35401        )?
35402        .with_authentication(&theScheme)?;
35403
35404        let theRequest =
35405            crate::v1_1_4::request::scim_delete_user_from_org::reqwest_blocking_request(theBuilder)?;
35406
35407        ::log::debug!("HTTP request: {:?}", &theRequest);
35408
35409        let theResponse = self.client.execute(theRequest)?;
35410
35411        ::log::debug!("HTTP response: {:?}", &theResponse);
35412
35413        Ok(theResponse)
35414    }
35415
35416    /// Update an attribute for a SCIM user
35417    /// 
35418    /// Allows you to change a provisioned user's individual attributes. To change a user's values, you must provide a specific `Operations` JSON format that contains at least one of the `add`, `remove`, or `replace` operations. For examples and more information on the SCIM operations format, see the [SCIM specification](https://tools.ietf.org/html/rfc7644#section-3.5.2).
35419    /// 
35420    /// **Note:** Complicated SCIM `path` selectors that include filters are not supported. For example, a `path` selector defined as `"path": "emails[type eq \"work\"]"` will not work.
35421    /// 
35422    /// **Warning:** If you set `active:false` using the `replace` operation (as shown in the JSON example below), it removes the user from the organization, deletes the external identity, and deletes the associated `:scim_user_id`.
35423    /// 
35424    /// ```text
35425    /// {
35426    ///   "Operations":[{
35427    ///     "op":"replace",
35428    ///     "value":{
35429    ///       "active":false
35430    ///     }
35431    ///   }]
35432    /// }
35433    /// ```
35434    /// 
35435    /// [API method documentation](https://docs.github.com/rest/reference/scim#update-an-attribute-for-a-scim-user)
35436    ///
35437    /// # Content
35438    ///
35439    /// - [`&v1_1_4::request::scim_update_attribute_for_user::body::Json`](crate::v1_1_4::request::scim_update_attribute_for_user::body::Json)
35440    pub fn scim_update_attribute_for_user<Content>(
35441        &self,
35442        org: &str,
35443        scim_user_id: &str,
35444        theContent: Content,
35445    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
35446    where
35447        Content: Copy + TryInto<crate::v1_1_4::request::scim_update_attribute_for_user::Content<::reqwest::blocking::Body>>,
35448        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::scim_update_attribute_for_user::Content<::reqwest::blocking::Body>>>::Error>
35449    {
35450        let mut theScheme = AuthScheme::from(&self.config.authentication);
35451
35452        while let Some(auth_step) = theScheme.step()? {
35453            match auth_step {
35454                ::authentic::AuthenticationStep::Request(auth_request) => {
35455                    theScheme.respond(self.client.execute(auth_request));
35456                }
35457                ::authentic::AuthenticationStep::WaitFor(duration) => {
35458                    (self.sleep)(duration);
35459                }
35460            }
35461        }
35462        let theBuilder = crate::v1_1_4::request::scim_update_attribute_for_user::reqwest_blocking_builder(
35463            self.config.base_url.as_ref(),
35464            org,
35465            scim_user_id,
35466            self.config.user_agent.as_ref(),
35467            self.config.accept.as_deref(),
35468        )?
35469        .with_authentication(&theScheme)?;
35470
35471        let theRequest = crate::v1_1_4::request::scim_update_attribute_for_user::reqwest_blocking_request(
35472            theBuilder,
35473            theContent.try_into()?,
35474        )?;
35475
35476        ::log::debug!("HTTP request: {:?}", &theRequest);
35477
35478        let theResponse = self.client.execute(theRequest)?;
35479
35480        ::log::debug!("HTTP response: {:?}", &theResponse);
35481
35482        Ok(theResponse)
35483    }
35484
35485    /// Search code
35486    /// 
35487    /// Searches for query terms inside of a file. This method returns up to 100 results [per page](https://docs.github.com/rest/overview/resources-in-the-rest-api#pagination).
35488    /// 
35489    /// When searching for code, you can get text match metadata for the file **content** and file **path** fields when you pass the `text-match` media type. For more details about how to receive highlighted search results, see [Text match metadata](https://docs.github.com/rest/reference/search#text-match-metadata).
35490    /// 
35491    /// For example, if you want to find the definition of the `addClass` function inside [jQuery](https://github.com/jquery/jquery) repository, your query would look something like this:
35492    /// 
35493    /// `q=addClass+in:file+language:js+repo:jquery/jquery`
35494    /// 
35495    /// This query searches for the keyword `addClass` within a file's contents. The query limits the search to files where the language is JavaScript in the `jquery/jquery` repository.
35496    /// 
35497    /// #### Considerations for code search
35498    /// 
35499    /// Due to the complexity of searching code, there are a few restrictions on how searches are performed:
35500    /// 
35501    /// *   Only the _default branch_ is considered. In most cases, this will be the `master` branch.
35502    /// *   Only files smaller than 384 KB are searchable.
35503    /// *   You must always include at least one search term when searching source code. For example, searching for [`language:go`](https://github.com/search?utf8=%E2%9C%93&q=language%3Ago&type=Code) is not valid, while [`amazing
35504    /// language:go`](https://github.com/search?utf8=%E2%9C%93&q=amazing+language%3Ago&type=Code) is.
35505    /// 
35506    /// [API method documentation](https://docs.github.com/rest/reference/search#search-code)
35507    pub fn search_code(
35508        &self,
35509        q: &str,
35510        sort: ::std::option::Option<&str>,
35511        order: ::std::option::Option<&str>,
35512        per_page: ::std::option::Option<i64>,
35513        page: ::std::option::Option<i64>,
35514    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35515        let mut theScheme = AuthScheme::from(&self.config.authentication);
35516
35517        while let Some(auth_step) = theScheme.step()? {
35518            match auth_step {
35519                ::authentic::AuthenticationStep::Request(auth_request) => {
35520                    theScheme.respond(self.client.execute(auth_request));
35521                }
35522                ::authentic::AuthenticationStep::WaitFor(duration) => {
35523                    (self.sleep)(duration);
35524                }
35525            }
35526        }
35527        let theBuilder = crate::v1_1_4::request::search_code::reqwest_blocking_builder(
35528            self.config.base_url.as_ref(),
35529            q,
35530            sort,
35531            order,
35532            per_page,
35533            page,
35534            self.config.user_agent.as_ref(),
35535            self.config.accept.as_deref(),
35536        )?
35537        .with_authentication(&theScheme)?;
35538
35539        let theRequest =
35540            crate::v1_1_4::request::search_code::reqwest_blocking_request(theBuilder)?;
35541
35542        ::log::debug!("HTTP request: {:?}", &theRequest);
35543
35544        let theResponse = self.client.execute(theRequest)?;
35545
35546        ::log::debug!("HTTP response: {:?}", &theResponse);
35547
35548        Ok(theResponse)
35549    }
35550
35551    /// Search commits
35552    /// 
35553    /// Find commits via various criteria on the default branch (usually `master`). This method returns up to 100 results [per page](https://docs.github.com/rest/overview/resources-in-the-rest-api#pagination).
35554    /// 
35555    /// When searching for commits, you can get text match metadata for the **message** field when you provide the `text-match` media type. For more details about how to receive highlighted search results, see [Text match
35556    /// metadata](https://docs.github.com/rest/reference/search#text-match-metadata).
35557    /// 
35558    /// For example, if you want to find commits related to CSS in the [octocat/Spoon-Knife](https://github.com/octocat/Spoon-Knife) repository. Your query would look something like this:
35559    /// 
35560    /// `q=repo:octocat/Spoon-Knife+css`
35561    /// 
35562    /// [API method documentation](https://docs.github.com/rest/reference/search#search-commits)
35563    pub fn search_commits(
35564        &self,
35565        q: &str,
35566        sort: ::std::option::Option<&str>,
35567        order: ::std::option::Option<&str>,
35568        per_page: ::std::option::Option<i64>,
35569        page: ::std::option::Option<i64>,
35570    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35571        let mut theScheme = AuthScheme::from(&self.config.authentication);
35572
35573        while let Some(auth_step) = theScheme.step()? {
35574            match auth_step {
35575                ::authentic::AuthenticationStep::Request(auth_request) => {
35576                    theScheme.respond(self.client.execute(auth_request));
35577                }
35578                ::authentic::AuthenticationStep::WaitFor(duration) => {
35579                    (self.sleep)(duration);
35580                }
35581            }
35582        }
35583        let theBuilder = crate::v1_1_4::request::search_commits::reqwest_blocking_builder(
35584            self.config.base_url.as_ref(),
35585            q,
35586            sort,
35587            order,
35588            per_page,
35589            page,
35590            self.config.user_agent.as_ref(),
35591            self.config.accept.as_deref(),
35592        )?
35593        .with_authentication(&theScheme)?;
35594
35595        let theRequest =
35596            crate::v1_1_4::request::search_commits::reqwest_blocking_request(theBuilder)?;
35597
35598        ::log::debug!("HTTP request: {:?}", &theRequest);
35599
35600        let theResponse = self.client.execute(theRequest)?;
35601
35602        ::log::debug!("HTTP response: {:?}", &theResponse);
35603
35604        Ok(theResponse)
35605    }
35606
35607    /// Search issues and pull requests
35608    /// 
35609    /// Find issues by state and keyword. This method returns up to 100 results [per page](https://docs.github.com/rest/overview/resources-in-the-rest-api#pagination).
35610    /// 
35611    /// When searching for issues, you can get text match metadata for the issue **title**, issue **body**, and issue **comment body** fields when you pass the `text-match` media type. For more details about how to receive highlighted
35612    /// search results, see [Text match metadata](https://docs.github.com/rest/reference/search#text-match-metadata).
35613    /// 
35614    /// For example, if you want to find the oldest unresolved Python bugs on Windows. Your query might look something like this.
35615    /// 
35616    /// `q=windows+label:bug+language:python+state:open&sort=created&order=asc`
35617    /// 
35618    /// This query searches for the keyword `windows`, within any open issue that is labeled as `bug`. The search runs across repositories whose primary language is Python. The results are sorted by creation date in ascending order, which means the oldest issues appear first in the search results.
35619    /// 
35620    /// **Note:** For [user-to-server](https://docs.github.com/developers/apps/identifying-and-authorizing-users-for-github-apps#user-to-server-requests) GitHub App requests, you can't retrieve a combination of issues and pull requests in a single query. Requests that don't include the `is:issue` or `is:pull-request` qualifier will receive an HTTP `422 Unprocessable Entity` response. To get results for both issues and pull requests, you must send separate queries for issues and pull requests. For more information about the `is` qualifier, see "[Searching only issues or pull requests](https://docs.github.com/github/searching-for-information-on-github/searching-issues-and-pull-requests#search-only-issues-or-pull-requests)."
35621    /// 
35622    /// [API method documentation](https://docs.github.com/rest/reference/search#search-issues-and-pull-requests)
35623    pub fn search_issues_and_pull_requests(
35624        &self,
35625        q: &str,
35626        sort: ::std::option::Option<&str>,
35627        order: ::std::option::Option<&str>,
35628        per_page: ::std::option::Option<i64>,
35629        page: ::std::option::Option<i64>,
35630    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35631        let mut theScheme = AuthScheme::from(&self.config.authentication);
35632
35633        while let Some(auth_step) = theScheme.step()? {
35634            match auth_step {
35635                ::authentic::AuthenticationStep::Request(auth_request) => {
35636                    theScheme.respond(self.client.execute(auth_request));
35637                }
35638                ::authentic::AuthenticationStep::WaitFor(duration) => {
35639                    (self.sleep)(duration);
35640                }
35641            }
35642        }
35643        let theBuilder = crate::v1_1_4::request::search_issues_and_pull_requests::reqwest_blocking_builder(
35644            self.config.base_url.as_ref(),
35645            q,
35646            sort,
35647            order,
35648            per_page,
35649            page,
35650            self.config.user_agent.as_ref(),
35651            self.config.accept.as_deref(),
35652        )?
35653        .with_authentication(&theScheme)?;
35654
35655        let theRequest =
35656            crate::v1_1_4::request::search_issues_and_pull_requests::reqwest_blocking_request(theBuilder)?;
35657
35658        ::log::debug!("HTTP request: {:?}", &theRequest);
35659
35660        let theResponse = self.client.execute(theRequest)?;
35661
35662        ::log::debug!("HTTP response: {:?}", &theResponse);
35663
35664        Ok(theResponse)
35665    }
35666
35667    /// Search labels
35668    /// 
35669    /// Find labels in a repository with names or descriptions that match search keywords. Returns up to 100 results [per page](https://docs.github.com/rest/overview/resources-in-the-rest-api#pagination).
35670    /// 
35671    /// When searching for labels, you can get text match metadata for the label **name** and **description** fields when you pass the `text-match` media type. For more details about how to receive highlighted search results, see [Text match metadata](https://docs.github.com/rest/reference/search#text-match-metadata).
35672    /// 
35673    /// For example, if you want to find labels in the `linguist` repository that match `bug`, `defect`, or `enhancement`. Your query might look like this:
35674    /// 
35675    /// `q=bug+defect+enhancement&repository_id=64778136`
35676    /// 
35677    /// The labels that best match the query appear first in the search results.
35678    /// 
35679    /// [API method documentation](https://docs.github.com/rest/reference/search#search-labels)
35680    pub fn search_labels(
35681        &self,
35682        repository_id: i64,
35683        q: &str,
35684        sort: ::std::option::Option<&str>,
35685        order: ::std::option::Option<&str>,
35686        per_page: ::std::option::Option<i64>,
35687        page: ::std::option::Option<i64>,
35688    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35689        let mut theScheme = AuthScheme::from(&self.config.authentication);
35690
35691        while let Some(auth_step) = theScheme.step()? {
35692            match auth_step {
35693                ::authentic::AuthenticationStep::Request(auth_request) => {
35694                    theScheme.respond(self.client.execute(auth_request));
35695                }
35696                ::authentic::AuthenticationStep::WaitFor(duration) => {
35697                    (self.sleep)(duration);
35698                }
35699            }
35700        }
35701        let theBuilder = crate::v1_1_4::request::search_labels::reqwest_blocking_builder(
35702            self.config.base_url.as_ref(),
35703            repository_id,
35704            q,
35705            sort,
35706            order,
35707            per_page,
35708            page,
35709            self.config.user_agent.as_ref(),
35710            self.config.accept.as_deref(),
35711        )?
35712        .with_authentication(&theScheme)?;
35713
35714        let theRequest =
35715            crate::v1_1_4::request::search_labels::reqwest_blocking_request(theBuilder)?;
35716
35717        ::log::debug!("HTTP request: {:?}", &theRequest);
35718
35719        let theResponse = self.client.execute(theRequest)?;
35720
35721        ::log::debug!("HTTP response: {:?}", &theResponse);
35722
35723        Ok(theResponse)
35724    }
35725
35726    /// Search repositories
35727    /// 
35728    /// Find repositories via various criteria. This method returns up to 100 results [per page](https://docs.github.com/rest/overview/resources-in-the-rest-api#pagination).
35729    /// 
35730    /// When searching for repositories, you can get text match metadata for the **name** and **description** fields when you pass the `text-match` media type. For more details about how to receive highlighted search results, see [Text match metadata](https://docs.github.com/rest/reference/search#text-match-metadata).
35731    /// 
35732    /// For example, if you want to search for popular Tetris repositories written in assembly code, your query might look like this:
35733    /// 
35734    /// `q=tetris+language:assembly&sort=stars&order=desc`
35735    /// 
35736    /// This query searches for repositories with the word `tetris` in the name, the description, or the README. The results are limited to repositories where the primary language is assembly. The results are sorted by stars in descending order, so that the most popular repositories appear first in the search results.
35737    /// 
35738    /// [API method documentation](https://docs.github.com/rest/reference/search#search-repositories)
35739    pub fn search_repos(
35740        &self,
35741        q: &str,
35742        sort: ::std::option::Option<&str>,
35743        order: ::std::option::Option<&str>,
35744        per_page: ::std::option::Option<i64>,
35745        page: ::std::option::Option<i64>,
35746    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35747        let mut theScheme = AuthScheme::from(&self.config.authentication);
35748
35749        while let Some(auth_step) = theScheme.step()? {
35750            match auth_step {
35751                ::authentic::AuthenticationStep::Request(auth_request) => {
35752                    theScheme.respond(self.client.execute(auth_request));
35753                }
35754                ::authentic::AuthenticationStep::WaitFor(duration) => {
35755                    (self.sleep)(duration);
35756                }
35757            }
35758        }
35759        let theBuilder = crate::v1_1_4::request::search_repos::reqwest_blocking_builder(
35760            self.config.base_url.as_ref(),
35761            q,
35762            sort,
35763            order,
35764            per_page,
35765            page,
35766            self.config.user_agent.as_ref(),
35767            self.config.accept.as_deref(),
35768        )?
35769        .with_authentication(&theScheme)?;
35770
35771        let theRequest =
35772            crate::v1_1_4::request::search_repos::reqwest_blocking_request(theBuilder)?;
35773
35774        ::log::debug!("HTTP request: {:?}", &theRequest);
35775
35776        let theResponse = self.client.execute(theRequest)?;
35777
35778        ::log::debug!("HTTP response: {:?}", &theResponse);
35779
35780        Ok(theResponse)
35781    }
35782
35783    /// Search topics
35784    /// 
35785    /// Find topics via various criteria. Results are sorted by best match. This method returns up to 100 results [per page](https://docs.github.com/rest/overview/resources-in-the-rest-api#pagination). See "[Searching topics](https://docs.github.com/articles/searching-topics/)" for a detailed list of qualifiers.
35786    /// 
35787    /// When searching for topics, you can get text match metadata for the topic's **short\_description**, **description**, **name**, or **display\_name** field when you pass the `text-match` media type. For more details about how to receive highlighted search results, see [Text match metadata](https://docs.github.com/rest/reference/search#text-match-metadata).
35788    /// 
35789    /// For example, if you want to search for topics related to Ruby that are featured on <https://github.com/topics> your query might look like this:
35790    /// 
35791    /// `q=ruby+is:featured`
35792    /// 
35793    /// This query searches for topics with the keyword `ruby` and limits the results to find only topics that are featured. The topics that are the best match for the query appear first in the search results.
35794    /// 
35795    /// [API method documentation](https://docs.github.com/rest/reference/search#search-topics)
35796    pub fn search_topics(
35797        &self,
35798        q: &str,
35799        per_page: ::std::option::Option<i64>,
35800        page: ::std::option::Option<i64>,
35801    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35802        let mut theScheme = AuthScheme::from(&self.config.authentication);
35803
35804        while let Some(auth_step) = theScheme.step()? {
35805            match auth_step {
35806                ::authentic::AuthenticationStep::Request(auth_request) => {
35807                    theScheme.respond(self.client.execute(auth_request));
35808                }
35809                ::authentic::AuthenticationStep::WaitFor(duration) => {
35810                    (self.sleep)(duration);
35811                }
35812            }
35813        }
35814        let theBuilder = crate::v1_1_4::request::search_topics::reqwest_blocking_builder(
35815            self.config.base_url.as_ref(),
35816            q,
35817            per_page,
35818            page,
35819            self.config.user_agent.as_ref(),
35820            self.config.accept.as_deref(),
35821        )?
35822        .with_authentication(&theScheme)?;
35823
35824        let theRequest =
35825            crate::v1_1_4::request::search_topics::reqwest_blocking_request(theBuilder)?;
35826
35827        ::log::debug!("HTTP request: {:?}", &theRequest);
35828
35829        let theResponse = self.client.execute(theRequest)?;
35830
35831        ::log::debug!("HTTP response: {:?}", &theResponse);
35832
35833        Ok(theResponse)
35834    }
35835
35836    /// Search users
35837    /// 
35838    /// Find users via various criteria. This method returns up to 100 results [per page](https://docs.github.com/rest/overview/resources-in-the-rest-api#pagination).
35839    /// 
35840    /// When searching for users, you can get text match metadata for the issue **login**, **email**, and **name** fields when you pass the `text-match` media type. For more details about highlighting search results, see [Text match metadata](https://docs.github.com/rest/reference/search#text-match-metadata). For more details about how to receive highlighted search results, see [Text match metadata](https://docs.github.com/rest/reference/search#text-match-metadata).
35841    /// 
35842    /// For example, if you're looking for a list of popular users, you might try this query:
35843    /// 
35844    /// `q=tom+repos:%3E42+followers:%3E1000`
35845    /// 
35846    /// This query searches for users with the name `tom`. The results are restricted to users with more than 42 repositories and over 1,000 followers.
35847    /// 
35848    /// [API method documentation](https://docs.github.com/rest/reference/search#search-users)
35849    pub fn search_users(
35850        &self,
35851        q: &str,
35852        sort: ::std::option::Option<&str>,
35853        order: ::std::option::Option<&str>,
35854        per_page: ::std::option::Option<i64>,
35855        page: ::std::option::Option<i64>,
35856    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35857        let mut theScheme = AuthScheme::from(&self.config.authentication);
35858
35859        while let Some(auth_step) = theScheme.step()? {
35860            match auth_step {
35861                ::authentic::AuthenticationStep::Request(auth_request) => {
35862                    theScheme.respond(self.client.execute(auth_request));
35863                }
35864                ::authentic::AuthenticationStep::WaitFor(duration) => {
35865                    (self.sleep)(duration);
35866                }
35867            }
35868        }
35869        let theBuilder = crate::v1_1_4::request::search_users::reqwest_blocking_builder(
35870            self.config.base_url.as_ref(),
35871            q,
35872            sort,
35873            order,
35874            per_page,
35875            page,
35876            self.config.user_agent.as_ref(),
35877            self.config.accept.as_deref(),
35878        )?
35879        .with_authentication(&theScheme)?;
35880
35881        let theRequest =
35882            crate::v1_1_4::request::search_users::reqwest_blocking_request(theBuilder)?;
35883
35884        ::log::debug!("HTTP request: {:?}", &theRequest);
35885
35886        let theResponse = self.client.execute(theRequest)?;
35887
35888        ::log::debug!("HTTP response: {:?}", &theResponse);
35889
35890        Ok(theResponse)
35891    }
35892
35893    /// Get a team (Legacy)
35894    /// 
35895    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the [Get a team by name](https://docs.github.com/rest/reference/teams#get-a-team-by-name) endpoint.
35896    /// 
35897    /// [API method documentation](https://docs.github.com/rest/reference/teams/#get-a-team-legacy)
35898    pub fn teams_get_legacy(
35899        &self,
35900        team_id: i64,
35901    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35902        let mut theScheme = AuthScheme::from(&self.config.authentication);
35903
35904        while let Some(auth_step) = theScheme.step()? {
35905            match auth_step {
35906                ::authentic::AuthenticationStep::Request(auth_request) => {
35907                    theScheme.respond(self.client.execute(auth_request));
35908                }
35909                ::authentic::AuthenticationStep::WaitFor(duration) => {
35910                    (self.sleep)(duration);
35911                }
35912            }
35913        }
35914        let theBuilder = crate::v1_1_4::request::teams_get_legacy::reqwest_blocking_builder(
35915            self.config.base_url.as_ref(),
35916            team_id,
35917            self.config.user_agent.as_ref(),
35918            self.config.accept.as_deref(),
35919        )?
35920        .with_authentication(&theScheme)?;
35921
35922        let theRequest =
35923            crate::v1_1_4::request::teams_get_legacy::reqwest_blocking_request(theBuilder)?;
35924
35925        ::log::debug!("HTTP request: {:?}", &theRequest);
35926
35927        let theResponse = self.client.execute(theRequest)?;
35928
35929        ::log::debug!("HTTP response: {:?}", &theResponse);
35930
35931        Ok(theResponse)
35932    }
35933
35934    /// Delete a team (Legacy)
35935    /// 
35936    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Delete a team](https://docs.github.com/rest/reference/teams#delete-a-team) endpoint.
35937    /// 
35938    /// To delete a team, the authenticated user must be an organization owner or team maintainer.
35939    /// 
35940    /// If you are an organization owner, deleting a parent team will delete all of its child teams as well.
35941    /// 
35942    /// [API method documentation](https://docs.github.com/rest/reference/teams/#delete-a-team-legacy)
35943    pub fn teams_delete_legacy(
35944        &self,
35945        team_id: i64,
35946    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
35947        let mut theScheme = AuthScheme::from(&self.config.authentication);
35948
35949        while let Some(auth_step) = theScheme.step()? {
35950            match auth_step {
35951                ::authentic::AuthenticationStep::Request(auth_request) => {
35952                    theScheme.respond(self.client.execute(auth_request));
35953                }
35954                ::authentic::AuthenticationStep::WaitFor(duration) => {
35955                    (self.sleep)(duration);
35956                }
35957            }
35958        }
35959        let theBuilder = crate::v1_1_4::request::teams_delete_legacy::reqwest_blocking_builder(
35960            self.config.base_url.as_ref(),
35961            team_id,
35962            self.config.user_agent.as_ref(),
35963            self.config.accept.as_deref(),
35964        )?
35965        .with_authentication(&theScheme)?;
35966
35967        let theRequest =
35968            crate::v1_1_4::request::teams_delete_legacy::reqwest_blocking_request(theBuilder)?;
35969
35970        ::log::debug!("HTTP request: {:?}", &theRequest);
35971
35972        let theResponse = self.client.execute(theRequest)?;
35973
35974        ::log::debug!("HTTP response: {:?}", &theResponse);
35975
35976        Ok(theResponse)
35977    }
35978
35979    /// Update a team (Legacy)
35980    /// 
35981    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Update a team](https://docs.github.com/rest/reference/teams#update-a-team) endpoint.
35982    /// 
35983    /// To edit a team, the authenticated user must either be an organization owner or a team maintainer.
35984    /// 
35985    /// **Note:** With nested teams, the `privacy` for parent teams cannot be `secret`.
35986    /// 
35987    /// [API method documentation](https://docs.github.com/rest/reference/teams/#update-a-team-legacy)
35988    ///
35989    /// # Content
35990    ///
35991    /// - [`&v1_1_4::request::teams_update_legacy::body::Json`](crate::v1_1_4::request::teams_update_legacy::body::Json)
35992    pub fn teams_update_legacy<Content>(
35993        &self,
35994        team_id: i64,
35995        theContent: Content,
35996    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
35997    where
35998        Content: Copy + TryInto<crate::v1_1_4::request::teams_update_legacy::Content<::reqwest::blocking::Body>>,
35999        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_update_legacy::Content<::reqwest::blocking::Body>>>::Error>
36000    {
36001        let mut theScheme = AuthScheme::from(&self.config.authentication);
36002
36003        while let Some(auth_step) = theScheme.step()? {
36004            match auth_step {
36005                ::authentic::AuthenticationStep::Request(auth_request) => {
36006                    theScheme.respond(self.client.execute(auth_request));
36007                }
36008                ::authentic::AuthenticationStep::WaitFor(duration) => {
36009                    (self.sleep)(duration);
36010                }
36011            }
36012        }
36013        let theBuilder = crate::v1_1_4::request::teams_update_legacy::reqwest_blocking_builder(
36014            self.config.base_url.as_ref(),
36015            team_id,
36016            self.config.user_agent.as_ref(),
36017            self.config.accept.as_deref(),
36018        )?
36019        .with_authentication(&theScheme)?;
36020
36021        let theRequest = crate::v1_1_4::request::teams_update_legacy::reqwest_blocking_request(
36022            theBuilder,
36023            theContent.try_into()?,
36024        )?;
36025
36026        ::log::debug!("HTTP request: {:?}", &theRequest);
36027
36028        let theResponse = self.client.execute(theRequest)?;
36029
36030        ::log::debug!("HTTP response: {:?}", &theResponse);
36031
36032        Ok(theResponse)
36033    }
36034
36035    /// List discussions (Legacy)
36036    /// 
36037    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List discussions`](https://docs.github.com/rest/reference/teams#list-discussions) endpoint.
36038    /// 
36039    /// List all discussions on a team's page. OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36040    /// 
36041    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-discussions-legacy)
36042    pub fn teams_list_discussions_legacy(
36043        &self,
36044        team_id: i64,
36045        direction: ::std::option::Option<&str>,
36046        per_page: ::std::option::Option<i64>,
36047        page: ::std::option::Option<i64>,
36048    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36049        let mut theScheme = AuthScheme::from(&self.config.authentication);
36050
36051        while let Some(auth_step) = theScheme.step()? {
36052            match auth_step {
36053                ::authentic::AuthenticationStep::Request(auth_request) => {
36054                    theScheme.respond(self.client.execute(auth_request));
36055                }
36056                ::authentic::AuthenticationStep::WaitFor(duration) => {
36057                    (self.sleep)(duration);
36058                }
36059            }
36060        }
36061        let theBuilder = crate::v1_1_4::request::teams_list_discussions_legacy::reqwest_blocking_builder(
36062            self.config.base_url.as_ref(),
36063            team_id,
36064            direction,
36065            per_page,
36066            page,
36067            self.config.user_agent.as_ref(),
36068            self.config.accept.as_deref(),
36069        )?
36070        .with_authentication(&theScheme)?;
36071
36072        let theRequest =
36073            crate::v1_1_4::request::teams_list_discussions_legacy::reqwest_blocking_request(theBuilder)?;
36074
36075        ::log::debug!("HTTP request: {:?}", &theRequest);
36076
36077        let theResponse = self.client.execute(theRequest)?;
36078
36079        ::log::debug!("HTTP response: {:?}", &theResponse);
36080
36081        Ok(theResponse)
36082    }
36083
36084    /// Create a discussion (Legacy)
36085    /// 
36086    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`Create a discussion`](https://docs.github.com/rest/reference/teams#create-a-discussion) endpoint.
36087    /// 
36088    /// Creates a new discussion post on a team's page. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36089    /// 
36090    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
36091    /// 
36092    /// [API method documentation](https://docs.github.com/rest/reference/teams#create-a-discussion-legacy)
36093    ///
36094    /// # Content
36095    ///
36096    /// - [`&v1_1_4::request::teams_create_discussion_legacy::body::Json`](crate::v1_1_4::request::teams_create_discussion_legacy::body::Json)
36097    pub fn teams_create_discussion_legacy<Content>(
36098        &self,
36099        team_id: i64,
36100        theContent: Content,
36101    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
36102    where
36103        Content: Copy + TryInto<crate::v1_1_4::request::teams_create_discussion_legacy::Content<::reqwest::blocking::Body>>,
36104        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_create_discussion_legacy::Content<::reqwest::blocking::Body>>>::Error>
36105    {
36106        let mut theScheme = AuthScheme::from(&self.config.authentication);
36107
36108        while let Some(auth_step) = theScheme.step()? {
36109            match auth_step {
36110                ::authentic::AuthenticationStep::Request(auth_request) => {
36111                    theScheme.respond(self.client.execute(auth_request));
36112                }
36113                ::authentic::AuthenticationStep::WaitFor(duration) => {
36114                    (self.sleep)(duration);
36115                }
36116            }
36117        }
36118        let theBuilder = crate::v1_1_4::request::teams_create_discussion_legacy::reqwest_blocking_builder(
36119            self.config.base_url.as_ref(),
36120            team_id,
36121            self.config.user_agent.as_ref(),
36122            self.config.accept.as_deref(),
36123        )?
36124        .with_authentication(&theScheme)?;
36125
36126        let theRequest = crate::v1_1_4::request::teams_create_discussion_legacy::reqwest_blocking_request(
36127            theBuilder,
36128            theContent.try_into()?,
36129        )?;
36130
36131        ::log::debug!("HTTP request: {:?}", &theRequest);
36132
36133        let theResponse = self.client.execute(theRequest)?;
36134
36135        ::log::debug!("HTTP response: {:?}", &theResponse);
36136
36137        Ok(theResponse)
36138    }
36139
36140    /// Get a discussion (Legacy)
36141    /// 
36142    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Get a discussion](https://docs.github.com/rest/reference/teams#get-a-discussion) endpoint.
36143    /// 
36144    /// Get a specific discussion on a team's page. OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36145    /// 
36146    /// [API method documentation](https://docs.github.com/rest/reference/teams#get-a-discussion-legacy)
36147    pub fn teams_get_discussion_legacy(
36148        &self,
36149        team_id: i64,
36150        discussion_number: i64,
36151    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36152        let mut theScheme = AuthScheme::from(&self.config.authentication);
36153
36154        while let Some(auth_step) = theScheme.step()? {
36155            match auth_step {
36156                ::authentic::AuthenticationStep::Request(auth_request) => {
36157                    theScheme.respond(self.client.execute(auth_request));
36158                }
36159                ::authentic::AuthenticationStep::WaitFor(duration) => {
36160                    (self.sleep)(duration);
36161                }
36162            }
36163        }
36164        let theBuilder = crate::v1_1_4::request::teams_get_discussion_legacy::reqwest_blocking_builder(
36165            self.config.base_url.as_ref(),
36166            team_id,
36167            discussion_number,
36168            self.config.user_agent.as_ref(),
36169            self.config.accept.as_deref(),
36170        )?
36171        .with_authentication(&theScheme)?;
36172
36173        let theRequest =
36174            crate::v1_1_4::request::teams_get_discussion_legacy::reqwest_blocking_request(theBuilder)?;
36175
36176        ::log::debug!("HTTP request: {:?}", &theRequest);
36177
36178        let theResponse = self.client.execute(theRequest)?;
36179
36180        ::log::debug!("HTTP response: {:?}", &theResponse);
36181
36182        Ok(theResponse)
36183    }
36184
36185    /// Delete a discussion (Legacy)
36186    /// 
36187    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`Delete a discussion`](https://docs.github.com/rest/reference/teams#delete-a-discussion) endpoint.
36188    /// 
36189    /// Delete a discussion from a team's page. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36190    /// 
36191    /// [API method documentation](https://docs.github.com/rest/reference/teams#delete-a-discussion-legacy)
36192    pub fn teams_delete_discussion_legacy(
36193        &self,
36194        team_id: i64,
36195        discussion_number: i64,
36196    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36197        let mut theScheme = AuthScheme::from(&self.config.authentication);
36198
36199        while let Some(auth_step) = theScheme.step()? {
36200            match auth_step {
36201                ::authentic::AuthenticationStep::Request(auth_request) => {
36202                    theScheme.respond(self.client.execute(auth_request));
36203                }
36204                ::authentic::AuthenticationStep::WaitFor(duration) => {
36205                    (self.sleep)(duration);
36206                }
36207            }
36208        }
36209        let theBuilder = crate::v1_1_4::request::teams_delete_discussion_legacy::reqwest_blocking_builder(
36210            self.config.base_url.as_ref(),
36211            team_id,
36212            discussion_number,
36213            self.config.user_agent.as_ref(),
36214            self.config.accept.as_deref(),
36215        )?
36216        .with_authentication(&theScheme)?;
36217
36218        let theRequest =
36219            crate::v1_1_4::request::teams_delete_discussion_legacy::reqwest_blocking_request(theBuilder)?;
36220
36221        ::log::debug!("HTTP request: {:?}", &theRequest);
36222
36223        let theResponse = self.client.execute(theRequest)?;
36224
36225        ::log::debug!("HTTP response: {:?}", &theResponse);
36226
36227        Ok(theResponse)
36228    }
36229
36230    /// Update a discussion (Legacy)
36231    /// 
36232    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Update a discussion](https://docs.github.com/rest/reference/teams#update-a-discussion) endpoint.
36233    /// 
36234    /// Edits the title and body text of a discussion post. Only the parameters you provide are updated. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36235    /// 
36236    /// [API method documentation](https://docs.github.com/rest/reference/teams#update-a-discussion-legacy)
36237    ///
36238    /// # Content
36239    ///
36240    /// - [`&v1_1_4::request::teams_update_discussion_legacy::body::Json`](crate::v1_1_4::request::teams_update_discussion_legacy::body::Json)
36241    pub fn teams_update_discussion_legacy<Content>(
36242        &self,
36243        team_id: i64,
36244        discussion_number: i64,
36245        theContent: Content,
36246    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
36247    where
36248        Content: Copy + TryInto<crate::v1_1_4::request::teams_update_discussion_legacy::Content<::reqwest::blocking::Body>>,
36249        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_update_discussion_legacy::Content<::reqwest::blocking::Body>>>::Error>
36250    {
36251        let mut theScheme = AuthScheme::from(&self.config.authentication);
36252
36253        while let Some(auth_step) = theScheme.step()? {
36254            match auth_step {
36255                ::authentic::AuthenticationStep::Request(auth_request) => {
36256                    theScheme.respond(self.client.execute(auth_request));
36257                }
36258                ::authentic::AuthenticationStep::WaitFor(duration) => {
36259                    (self.sleep)(duration);
36260                }
36261            }
36262        }
36263        let theBuilder = crate::v1_1_4::request::teams_update_discussion_legacy::reqwest_blocking_builder(
36264            self.config.base_url.as_ref(),
36265            team_id,
36266            discussion_number,
36267            self.config.user_agent.as_ref(),
36268            self.config.accept.as_deref(),
36269        )?
36270        .with_authentication(&theScheme)?;
36271
36272        let theRequest = crate::v1_1_4::request::teams_update_discussion_legacy::reqwest_blocking_request(
36273            theBuilder,
36274            theContent.try_into()?,
36275        )?;
36276
36277        ::log::debug!("HTTP request: {:?}", &theRequest);
36278
36279        let theResponse = self.client.execute(theRequest)?;
36280
36281        ::log::debug!("HTTP response: {:?}", &theResponse);
36282
36283        Ok(theResponse)
36284    }
36285
36286    /// List discussion comments (Legacy)
36287    /// 
36288    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [List discussion comments](https://docs.github.com/rest/reference/teams#list-discussion-comments) endpoint.
36289    /// 
36290    /// List all comments on a team discussion. OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36291    /// 
36292    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-discussion-comments-legacy)
36293    pub fn teams_list_discussion_comments_legacy(
36294        &self,
36295        team_id: i64,
36296        discussion_number: i64,
36297        direction: ::std::option::Option<&str>,
36298        per_page: ::std::option::Option<i64>,
36299        page: ::std::option::Option<i64>,
36300    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36301        let mut theScheme = AuthScheme::from(&self.config.authentication);
36302
36303        while let Some(auth_step) = theScheme.step()? {
36304            match auth_step {
36305                ::authentic::AuthenticationStep::Request(auth_request) => {
36306                    theScheme.respond(self.client.execute(auth_request));
36307                }
36308                ::authentic::AuthenticationStep::WaitFor(duration) => {
36309                    (self.sleep)(duration);
36310                }
36311            }
36312        }
36313        let theBuilder = crate::v1_1_4::request::teams_list_discussion_comments_legacy::reqwest_blocking_builder(
36314            self.config.base_url.as_ref(),
36315            team_id,
36316            discussion_number,
36317            direction,
36318            per_page,
36319            page,
36320            self.config.user_agent.as_ref(),
36321            self.config.accept.as_deref(),
36322        )?
36323        .with_authentication(&theScheme)?;
36324
36325        let theRequest =
36326            crate::v1_1_4::request::teams_list_discussion_comments_legacy::reqwest_blocking_request(theBuilder)?;
36327
36328        ::log::debug!("HTTP request: {:?}", &theRequest);
36329
36330        let theResponse = self.client.execute(theRequest)?;
36331
36332        ::log::debug!("HTTP response: {:?}", &theResponse);
36333
36334        Ok(theResponse)
36335    }
36336
36337    /// Create a discussion comment (Legacy)
36338    /// 
36339    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Create a discussion comment](https://docs.github.com/rest/reference/teams#create-a-discussion-comment) endpoint.
36340    /// 
36341    /// Creates a new comment on a team discussion. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36342    /// 
36343    /// This endpoint triggers [notifications](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. See "[Secondary rate limits](https://docs.github.com/rest/overview/resources-in-the-rest-api#secondary-rate-limits)" and "[Dealing with secondary rate limits](https://docs.github.com/rest/guides/best-practices-for-integrators#dealing-with-secondary-rate-limits)" for details.
36344    /// 
36345    /// [API method documentation](https://docs.github.com/rest/reference/teams#create-a-discussion-comment-legacy)
36346    ///
36347    /// # Content
36348    ///
36349    /// - [`&v1_1_4::request::teams_create_discussion_comment_legacy::body::Json`](crate::v1_1_4::request::teams_create_discussion_comment_legacy::body::Json)
36350    pub fn teams_create_discussion_comment_legacy<Content>(
36351        &self,
36352        team_id: i64,
36353        discussion_number: i64,
36354        theContent: Content,
36355    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
36356    where
36357        Content: Copy + TryInto<crate::v1_1_4::request::teams_create_discussion_comment_legacy::Content<::reqwest::blocking::Body>>,
36358        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_create_discussion_comment_legacy::Content<::reqwest::blocking::Body>>>::Error>
36359    {
36360        let mut theScheme = AuthScheme::from(&self.config.authentication);
36361
36362        while let Some(auth_step) = theScheme.step()? {
36363            match auth_step {
36364                ::authentic::AuthenticationStep::Request(auth_request) => {
36365                    theScheme.respond(self.client.execute(auth_request));
36366                }
36367                ::authentic::AuthenticationStep::WaitFor(duration) => {
36368                    (self.sleep)(duration);
36369                }
36370            }
36371        }
36372        let theBuilder = crate::v1_1_4::request::teams_create_discussion_comment_legacy::reqwest_blocking_builder(
36373            self.config.base_url.as_ref(),
36374            team_id,
36375            discussion_number,
36376            self.config.user_agent.as_ref(),
36377            self.config.accept.as_deref(),
36378        )?
36379        .with_authentication(&theScheme)?;
36380
36381        let theRequest = crate::v1_1_4::request::teams_create_discussion_comment_legacy::reqwest_blocking_request(
36382            theBuilder,
36383            theContent.try_into()?,
36384        )?;
36385
36386        ::log::debug!("HTTP request: {:?}", &theRequest);
36387
36388        let theResponse = self.client.execute(theRequest)?;
36389
36390        ::log::debug!("HTTP response: {:?}", &theResponse);
36391
36392        Ok(theResponse)
36393    }
36394
36395    /// Get a discussion comment (Legacy)
36396    /// 
36397    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Get a discussion comment](https://docs.github.com/rest/reference/teams#get-a-discussion-comment) endpoint.
36398    /// 
36399    /// Get a specific comment on a team discussion. OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36400    /// 
36401    /// [API method documentation](https://docs.github.com/rest/reference/teams#get-a-discussion-comment-legacy)
36402    pub fn teams_get_discussion_comment_legacy(
36403        &self,
36404        team_id: i64,
36405        discussion_number: i64,
36406        comment_number: i64,
36407    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36408        let mut theScheme = AuthScheme::from(&self.config.authentication);
36409
36410        while let Some(auth_step) = theScheme.step()? {
36411            match auth_step {
36412                ::authentic::AuthenticationStep::Request(auth_request) => {
36413                    theScheme.respond(self.client.execute(auth_request));
36414                }
36415                ::authentic::AuthenticationStep::WaitFor(duration) => {
36416                    (self.sleep)(duration);
36417                }
36418            }
36419        }
36420        let theBuilder = crate::v1_1_4::request::teams_get_discussion_comment_legacy::reqwest_blocking_builder(
36421            self.config.base_url.as_ref(),
36422            team_id,
36423            discussion_number,
36424            comment_number,
36425            self.config.user_agent.as_ref(),
36426            self.config.accept.as_deref(),
36427        )?
36428        .with_authentication(&theScheme)?;
36429
36430        let theRequest =
36431            crate::v1_1_4::request::teams_get_discussion_comment_legacy::reqwest_blocking_request(theBuilder)?;
36432
36433        ::log::debug!("HTTP request: {:?}", &theRequest);
36434
36435        let theResponse = self.client.execute(theRequest)?;
36436
36437        ::log::debug!("HTTP response: {:?}", &theResponse);
36438
36439        Ok(theResponse)
36440    }
36441
36442    /// Delete a discussion comment (Legacy)
36443    /// 
36444    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Delete a discussion comment](https://docs.github.com/rest/reference/teams#delete-a-discussion-comment) endpoint.
36445    /// 
36446    /// Deletes a comment on a team discussion. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36447    /// 
36448    /// [API method documentation](https://docs.github.com/rest/reference/teams#delete-a-discussion-comment-legacy)
36449    pub fn teams_delete_discussion_comment_legacy(
36450        &self,
36451        team_id: i64,
36452        discussion_number: i64,
36453        comment_number: i64,
36454    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36455        let mut theScheme = AuthScheme::from(&self.config.authentication);
36456
36457        while let Some(auth_step) = theScheme.step()? {
36458            match auth_step {
36459                ::authentic::AuthenticationStep::Request(auth_request) => {
36460                    theScheme.respond(self.client.execute(auth_request));
36461                }
36462                ::authentic::AuthenticationStep::WaitFor(duration) => {
36463                    (self.sleep)(duration);
36464                }
36465            }
36466        }
36467        let theBuilder = crate::v1_1_4::request::teams_delete_discussion_comment_legacy::reqwest_blocking_builder(
36468            self.config.base_url.as_ref(),
36469            team_id,
36470            discussion_number,
36471            comment_number,
36472            self.config.user_agent.as_ref(),
36473            self.config.accept.as_deref(),
36474        )?
36475        .with_authentication(&theScheme)?;
36476
36477        let theRequest =
36478            crate::v1_1_4::request::teams_delete_discussion_comment_legacy::reqwest_blocking_request(theBuilder)?;
36479
36480        ::log::debug!("HTTP request: {:?}", &theRequest);
36481
36482        let theResponse = self.client.execute(theRequest)?;
36483
36484        ::log::debug!("HTTP response: {:?}", &theResponse);
36485
36486        Ok(theResponse)
36487    }
36488
36489    /// Update a discussion comment (Legacy)
36490    /// 
36491    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Update a discussion comment](https://docs.github.com/rest/reference/teams#update-a-discussion-comment) endpoint.
36492    /// 
36493    /// Edits the body text of a discussion comment. OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36494    /// 
36495    /// [API method documentation](https://docs.github.com/rest/reference/teams#update-a-discussion-comment-legacy)
36496    ///
36497    /// # Content
36498    ///
36499    /// - [`&v1_1_4::request::teams_update_discussion_comment_legacy::body::Json`](crate::v1_1_4::request::teams_update_discussion_comment_legacy::body::Json)
36500    pub fn teams_update_discussion_comment_legacy<Content>(
36501        &self,
36502        team_id: i64,
36503        discussion_number: i64,
36504        comment_number: i64,
36505        theContent: Content,
36506    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
36507    where
36508        Content: Copy + TryInto<crate::v1_1_4::request::teams_update_discussion_comment_legacy::Content<::reqwest::blocking::Body>>,
36509        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_update_discussion_comment_legacy::Content<::reqwest::blocking::Body>>>::Error>
36510    {
36511        let mut theScheme = AuthScheme::from(&self.config.authentication);
36512
36513        while let Some(auth_step) = theScheme.step()? {
36514            match auth_step {
36515                ::authentic::AuthenticationStep::Request(auth_request) => {
36516                    theScheme.respond(self.client.execute(auth_request));
36517                }
36518                ::authentic::AuthenticationStep::WaitFor(duration) => {
36519                    (self.sleep)(duration);
36520                }
36521            }
36522        }
36523        let theBuilder = crate::v1_1_4::request::teams_update_discussion_comment_legacy::reqwest_blocking_builder(
36524            self.config.base_url.as_ref(),
36525            team_id,
36526            discussion_number,
36527            comment_number,
36528            self.config.user_agent.as_ref(),
36529            self.config.accept.as_deref(),
36530        )?
36531        .with_authentication(&theScheme)?;
36532
36533        let theRequest = crate::v1_1_4::request::teams_update_discussion_comment_legacy::reqwest_blocking_request(
36534            theBuilder,
36535            theContent.try_into()?,
36536        )?;
36537
36538        ::log::debug!("HTTP request: {:?}", &theRequest);
36539
36540        let theResponse = self.client.execute(theRequest)?;
36541
36542        ::log::debug!("HTTP response: {:?}", &theResponse);
36543
36544        Ok(theResponse)
36545    }
36546
36547    /// List reactions for a team discussion comment (Legacy)
36548    /// 
36549    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List reactions for a team discussion comment`](https://docs.github.com/rest/reference/reactions#list-reactions-for-a-team-discussion-comment) endpoint.
36550    /// 
36551    /// List the reactions to a [team discussion comment](https://docs.github.com/rest/reference/teams#discussion-comments). OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36552    /// 
36553    /// [API method documentation](https://docs.github.com/rest/reference/reactions/#list-reactions-for-a-team-discussion-comment-legacy)
36554    pub fn reactions_list_for_team_discussion_comment_legacy(
36555        &self,
36556        team_id: i64,
36557        discussion_number: i64,
36558        comment_number: i64,
36559        content: ::std::option::Option<&str>,
36560        per_page: ::std::option::Option<i64>,
36561        page: ::std::option::Option<i64>,
36562    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36563        let mut theScheme = AuthScheme::from(&self.config.authentication);
36564
36565        while let Some(auth_step) = theScheme.step()? {
36566            match auth_step {
36567                ::authentic::AuthenticationStep::Request(auth_request) => {
36568                    theScheme.respond(self.client.execute(auth_request));
36569                }
36570                ::authentic::AuthenticationStep::WaitFor(duration) => {
36571                    (self.sleep)(duration);
36572                }
36573            }
36574        }
36575        let theBuilder = crate::v1_1_4::request::reactions_list_for_team_discussion_comment_legacy::reqwest_blocking_builder(
36576            self.config.base_url.as_ref(),
36577            team_id,
36578            discussion_number,
36579            comment_number,
36580            content,
36581            per_page,
36582            page,
36583            self.config.user_agent.as_ref(),
36584            self.config.accept.as_deref(),
36585        )?
36586        .with_authentication(&theScheme)?;
36587
36588        let theRequest =
36589            crate::v1_1_4::request::reactions_list_for_team_discussion_comment_legacy::reqwest_blocking_request(theBuilder)?;
36590
36591        ::log::debug!("HTTP request: {:?}", &theRequest);
36592
36593        let theResponse = self.client.execute(theRequest)?;
36594
36595        ::log::debug!("HTTP response: {:?}", &theResponse);
36596
36597        Ok(theResponse)
36598    }
36599
36600    /// Create reaction for a team discussion comment (Legacy)
36601    /// 
36602    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new "[Create reaction for a team discussion comment](https://docs.github.com/rest/reference/reactions#create-reaction-for-a-team-discussion-comment)" endpoint.
36603    /// 
36604    /// Create a reaction to a [team discussion comment](https://docs.github.com/rest/reference/teams#discussion-comments). OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/). A response with an HTTP `200` status means that you already added the reaction type to this team discussion comment.
36605    /// 
36606    /// [API method documentation](https://docs.github.com/rest/reference/reactions/#create-reaction-for-a-team-discussion-comment-legacy)
36607    ///
36608    /// # Content
36609    ///
36610    /// - [`&v1_1_4::request::reactions_create_for_team_discussion_comment_legacy::body::Json`](crate::v1_1_4::request::reactions_create_for_team_discussion_comment_legacy::body::Json)
36611    pub fn reactions_create_for_team_discussion_comment_legacy<Content>(
36612        &self,
36613        team_id: i64,
36614        discussion_number: i64,
36615        comment_number: i64,
36616        theContent: Content,
36617    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
36618    where
36619        Content: Copy + TryInto<crate::v1_1_4::request::reactions_create_for_team_discussion_comment_legacy::Content<::reqwest::blocking::Body>>,
36620        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::reactions_create_for_team_discussion_comment_legacy::Content<::reqwest::blocking::Body>>>::Error>
36621    {
36622        let mut theScheme = AuthScheme::from(&self.config.authentication);
36623
36624        while let Some(auth_step) = theScheme.step()? {
36625            match auth_step {
36626                ::authentic::AuthenticationStep::Request(auth_request) => {
36627                    theScheme.respond(self.client.execute(auth_request));
36628                }
36629                ::authentic::AuthenticationStep::WaitFor(duration) => {
36630                    (self.sleep)(duration);
36631                }
36632            }
36633        }
36634        let theBuilder = crate::v1_1_4::request::reactions_create_for_team_discussion_comment_legacy::reqwest_blocking_builder(
36635            self.config.base_url.as_ref(),
36636            team_id,
36637            discussion_number,
36638            comment_number,
36639            self.config.user_agent.as_ref(),
36640            self.config.accept.as_deref(),
36641        )?
36642        .with_authentication(&theScheme)?;
36643
36644        let theRequest = crate::v1_1_4::request::reactions_create_for_team_discussion_comment_legacy::reqwest_blocking_request(
36645            theBuilder,
36646            theContent.try_into()?,
36647        )?;
36648
36649        ::log::debug!("HTTP request: {:?}", &theRequest);
36650
36651        let theResponse = self.client.execute(theRequest)?;
36652
36653        ::log::debug!("HTTP response: {:?}", &theResponse);
36654
36655        Ok(theResponse)
36656    }
36657
36658    /// List reactions for a team discussion (Legacy)
36659    /// 
36660    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List reactions for a team discussion`](https://docs.github.com/rest/reference/reactions#list-reactions-for-a-team-discussion) endpoint.
36661    /// 
36662    /// List the reactions to a [team discussion](https://docs.github.com/rest/reference/teams#discussions). OAuth access tokens require the `read:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
36663    /// 
36664    /// [API method documentation](https://docs.github.com/rest/reference/reactions/#list-reactions-for-a-team-discussion-legacy)
36665    pub fn reactions_list_for_team_discussion_legacy(
36666        &self,
36667        team_id: i64,
36668        discussion_number: i64,
36669        content: ::std::option::Option<&str>,
36670        per_page: ::std::option::Option<i64>,
36671        page: ::std::option::Option<i64>,
36672    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36673        let mut theScheme = AuthScheme::from(&self.config.authentication);
36674
36675        while let Some(auth_step) = theScheme.step()? {
36676            match auth_step {
36677                ::authentic::AuthenticationStep::Request(auth_request) => {
36678                    theScheme.respond(self.client.execute(auth_request));
36679                }
36680                ::authentic::AuthenticationStep::WaitFor(duration) => {
36681                    (self.sleep)(duration);
36682                }
36683            }
36684        }
36685        let theBuilder = crate::v1_1_4::request::reactions_list_for_team_discussion_legacy::reqwest_blocking_builder(
36686            self.config.base_url.as_ref(),
36687            team_id,
36688            discussion_number,
36689            content,
36690            per_page,
36691            page,
36692            self.config.user_agent.as_ref(),
36693            self.config.accept.as_deref(),
36694        )?
36695        .with_authentication(&theScheme)?;
36696
36697        let theRequest =
36698            crate::v1_1_4::request::reactions_list_for_team_discussion_legacy::reqwest_blocking_request(theBuilder)?;
36699
36700        ::log::debug!("HTTP request: {:?}", &theRequest);
36701
36702        let theResponse = self.client.execute(theRequest)?;
36703
36704        ::log::debug!("HTTP response: {:?}", &theResponse);
36705
36706        Ok(theResponse)
36707    }
36708
36709    /// Create reaction for a team discussion (Legacy)
36710    /// 
36711    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`Create reaction for a team discussion`](https://docs.github.com/rest/reference/reactions#create-reaction-for-a-team-discussion) endpoint.
36712    /// 
36713    /// Create a reaction to a [team discussion](https://docs.github.com/rest/reference/teams#discussions). OAuth access tokens require the `write:discussion` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/). A response with an HTTP `200` status means that you already added the reaction type to this team discussion.
36714    /// 
36715    /// [API method documentation](https://docs.github.com/rest/reference/reactions/#create-reaction-for-a-team-discussion-legacy)
36716    ///
36717    /// # Content
36718    ///
36719    /// - [`&v1_1_4::request::reactions_create_for_team_discussion_legacy::body::Json`](crate::v1_1_4::request::reactions_create_for_team_discussion_legacy::body::Json)
36720    pub fn reactions_create_for_team_discussion_legacy<Content>(
36721        &self,
36722        team_id: i64,
36723        discussion_number: i64,
36724        theContent: Content,
36725    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
36726    where
36727        Content: Copy + TryInto<crate::v1_1_4::request::reactions_create_for_team_discussion_legacy::Content<::reqwest::blocking::Body>>,
36728        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::reactions_create_for_team_discussion_legacy::Content<::reqwest::blocking::Body>>>::Error>
36729    {
36730        let mut theScheme = AuthScheme::from(&self.config.authentication);
36731
36732        while let Some(auth_step) = theScheme.step()? {
36733            match auth_step {
36734                ::authentic::AuthenticationStep::Request(auth_request) => {
36735                    theScheme.respond(self.client.execute(auth_request));
36736                }
36737                ::authentic::AuthenticationStep::WaitFor(duration) => {
36738                    (self.sleep)(duration);
36739                }
36740            }
36741        }
36742        let theBuilder = crate::v1_1_4::request::reactions_create_for_team_discussion_legacy::reqwest_blocking_builder(
36743            self.config.base_url.as_ref(),
36744            team_id,
36745            discussion_number,
36746            self.config.user_agent.as_ref(),
36747            self.config.accept.as_deref(),
36748        )?
36749        .with_authentication(&theScheme)?;
36750
36751        let theRequest = crate::v1_1_4::request::reactions_create_for_team_discussion_legacy::reqwest_blocking_request(
36752            theBuilder,
36753            theContent.try_into()?,
36754        )?;
36755
36756        ::log::debug!("HTTP request: {:?}", &theRequest);
36757
36758        let theResponse = self.client.execute(theRequest)?;
36759
36760        ::log::debug!("HTTP response: {:?}", &theResponse);
36761
36762        Ok(theResponse)
36763    }
36764
36765    /// List pending team invitations (Legacy)
36766    /// 
36767    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List pending team invitations`](https://docs.github.com/rest/reference/teams#list-pending-team-invitations) endpoint.
36768    /// 
36769    /// The return hash contains a `role` field which refers to the Organization Invitation role and will be one of the following values: `direct_member`, `admin`, `billing_manager`, `hiring_manager`, or `reinstate`. If the invitee is not a GitHub member, the `login` field in the return hash will be `null`.
36770    /// 
36771    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-pending-team-invitations-legacy)
36772    pub fn teams_list_pending_invitations_legacy(
36773        &self,
36774        team_id: i64,
36775        per_page: ::std::option::Option<i64>,
36776        page: ::std::option::Option<i64>,
36777    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36778        let mut theScheme = AuthScheme::from(&self.config.authentication);
36779
36780        while let Some(auth_step) = theScheme.step()? {
36781            match auth_step {
36782                ::authentic::AuthenticationStep::Request(auth_request) => {
36783                    theScheme.respond(self.client.execute(auth_request));
36784                }
36785                ::authentic::AuthenticationStep::WaitFor(duration) => {
36786                    (self.sleep)(duration);
36787                }
36788            }
36789        }
36790        let theBuilder = crate::v1_1_4::request::teams_list_pending_invitations_legacy::reqwest_blocking_builder(
36791            self.config.base_url.as_ref(),
36792            team_id,
36793            per_page,
36794            page,
36795            self.config.user_agent.as_ref(),
36796            self.config.accept.as_deref(),
36797        )?
36798        .with_authentication(&theScheme)?;
36799
36800        let theRequest =
36801            crate::v1_1_4::request::teams_list_pending_invitations_legacy::reqwest_blocking_request(theBuilder)?;
36802
36803        ::log::debug!("HTTP request: {:?}", &theRequest);
36804
36805        let theResponse = self.client.execute(theRequest)?;
36806
36807        ::log::debug!("HTTP response: {:?}", &theResponse);
36808
36809        Ok(theResponse)
36810    }
36811
36812    /// List team members (Legacy)
36813    /// 
36814    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List team members`](https://docs.github.com/rest/reference/teams#list-team-members) endpoint.
36815    /// 
36816    /// Team members will include the members of child teams.
36817    /// 
36818    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-team-members-legacy)
36819    pub fn teams_list_members_legacy(
36820        &self,
36821        team_id: i64,
36822        role: ::std::option::Option<&str>,
36823        per_page: ::std::option::Option<i64>,
36824        page: ::std::option::Option<i64>,
36825    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36826        let mut theScheme = AuthScheme::from(&self.config.authentication);
36827
36828        while let Some(auth_step) = theScheme.step()? {
36829            match auth_step {
36830                ::authentic::AuthenticationStep::Request(auth_request) => {
36831                    theScheme.respond(self.client.execute(auth_request));
36832                }
36833                ::authentic::AuthenticationStep::WaitFor(duration) => {
36834                    (self.sleep)(duration);
36835                }
36836            }
36837        }
36838        let theBuilder = crate::v1_1_4::request::teams_list_members_legacy::reqwest_blocking_builder(
36839            self.config.base_url.as_ref(),
36840            team_id,
36841            role,
36842            per_page,
36843            page,
36844            self.config.user_agent.as_ref(),
36845            self.config.accept.as_deref(),
36846        )?
36847        .with_authentication(&theScheme)?;
36848
36849        let theRequest =
36850            crate::v1_1_4::request::teams_list_members_legacy::reqwest_blocking_request(theBuilder)?;
36851
36852        ::log::debug!("HTTP request: {:?}", &theRequest);
36853
36854        let theResponse = self.client.execute(theRequest)?;
36855
36856        ::log::debug!("HTTP response: {:?}", &theResponse);
36857
36858        Ok(theResponse)
36859    }
36860
36861    /// Get team member (Legacy)
36862    /// 
36863    /// The "Get team member" endpoint (described below) is deprecated.
36864    /// 
36865    /// We recommend using the [Get team membership for a user](https://docs.github.com/rest/reference/teams#get-team-membership-for-a-user) endpoint instead. It allows you to get both active and pending memberships.
36866    /// 
36867    /// To list members in a team, the team must be visible to the authenticated user.
36868    /// 
36869    /// [API method documentation](https://docs.github.com/rest/reference/teams#get-team-member-legacy)
36870    pub fn teams_get_member_legacy(
36871        &self,
36872        team_id: i64,
36873        username: &str,
36874    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36875        let mut theScheme = AuthScheme::from(&self.config.authentication);
36876
36877        while let Some(auth_step) = theScheme.step()? {
36878            match auth_step {
36879                ::authentic::AuthenticationStep::Request(auth_request) => {
36880                    theScheme.respond(self.client.execute(auth_request));
36881                }
36882                ::authentic::AuthenticationStep::WaitFor(duration) => {
36883                    (self.sleep)(duration);
36884                }
36885            }
36886        }
36887        let theBuilder = crate::v1_1_4::request::teams_get_member_legacy::reqwest_blocking_builder(
36888            self.config.base_url.as_ref(),
36889            team_id,
36890            username,
36891            self.config.user_agent.as_ref(),
36892            self.config.accept.as_deref(),
36893        )?
36894        .with_authentication(&theScheme)?;
36895
36896        let theRequest =
36897            crate::v1_1_4::request::teams_get_member_legacy::reqwest_blocking_request(theBuilder)?;
36898
36899        ::log::debug!("HTTP request: {:?}", &theRequest);
36900
36901        let theResponse = self.client.execute(theRequest)?;
36902
36903        ::log::debug!("HTTP response: {:?}", &theResponse);
36904
36905        Ok(theResponse)
36906    }
36907
36908    /// Add team member (Legacy)
36909    /// 
36910    /// The "Add team member" endpoint (described below) is deprecated.
36911    /// 
36912    /// We recommend using the [Add or update team membership for a user](https://docs.github.com/rest/reference/teams#add-or-update-team-membership-for-a-user) endpoint instead. It allows you to invite new organization members to your teams.
36913    /// 
36914    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
36915    /// 
36916    /// To add someone to a team, the authenticated user must be an organization owner or a team maintainer in the team they're changing. The person being added to the team must be a member of the team's organization.
36917    /// 
36918    /// **Note:** When you have team synchronization set up for a team with your organization's identity provider (IdP), you will see an error if you attempt to use the API for making changes to the team's membership. If you have access to manage group membership in your IdP, you can manage GitHub team membership through your identity provider, which automatically adds and removes team members in an organization. For more information, see "[Synchronizing teams between your identity provider and GitHub](https://docs.github.com/articles/synchronizing-teams-between-your-identity-provider-and-github/)."
36919    /// 
36920    /// Note that you'll need to set `Content-Length` to zero when calling out to this endpoint. For more information, see "[HTTP verbs](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-verbs)."
36921    /// 
36922    /// [API method documentation](https://docs.github.com/rest/reference/teams#add-team-member-legacy)
36923    pub fn teams_add_member_legacy(
36924        &self,
36925        team_id: i64,
36926        username: &str,
36927    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36928        let mut theScheme = AuthScheme::from(&self.config.authentication);
36929
36930        while let Some(auth_step) = theScheme.step()? {
36931            match auth_step {
36932                ::authentic::AuthenticationStep::Request(auth_request) => {
36933                    theScheme.respond(self.client.execute(auth_request));
36934                }
36935                ::authentic::AuthenticationStep::WaitFor(duration) => {
36936                    (self.sleep)(duration);
36937                }
36938            }
36939        }
36940        let theBuilder = crate::v1_1_4::request::teams_add_member_legacy::reqwest_blocking_builder(
36941            self.config.base_url.as_ref(),
36942            team_id,
36943            username,
36944            self.config.user_agent.as_ref(),
36945            self.config.accept.as_deref(),
36946        )?
36947        .with_authentication(&theScheme)?;
36948
36949        let theRequest =
36950            crate::v1_1_4::request::teams_add_member_legacy::reqwest_blocking_request(theBuilder)?;
36951
36952        ::log::debug!("HTTP request: {:?}", &theRequest);
36953
36954        let theResponse = self.client.execute(theRequest)?;
36955
36956        ::log::debug!("HTTP response: {:?}", &theResponse);
36957
36958        Ok(theResponse)
36959    }
36960
36961    /// Remove team member (Legacy)
36962    /// 
36963    /// The "Remove team member" endpoint (described below) is deprecated.
36964    /// 
36965    /// We recommend using the [Remove team membership for a user](https://docs.github.com/rest/reference/teams#remove-team-membership-for-a-user) endpoint instead. It allows you to remove both active and pending memberships.
36966    /// 
36967    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
36968    /// 
36969    /// To remove a team member, the authenticated user must have 'admin' permissions to the team or be an owner of the org that the team is associated with. Removing a team member does not delete the user, it just removes them from the team.
36970    /// 
36971    /// **Note:** When you have team synchronization set up for a team with your organization's identity provider (IdP), you will see an error if you attempt to use the API for making changes to the team's membership. If you have access to manage group membership in your IdP, you can manage GitHub team membership through your identity provider, which automatically adds and removes team members in an organization. For more information, see "[Synchronizing teams between your identity provider and GitHub](https://docs.github.com/articles/synchronizing-teams-between-your-identity-provider-and-github/)."
36972    /// 
36973    /// [API method documentation](https://docs.github.com/rest/reference/teams#remove-team-member-legacy)
36974    pub fn teams_remove_member_legacy(
36975        &self,
36976        team_id: i64,
36977        username: &str,
36978    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
36979        let mut theScheme = AuthScheme::from(&self.config.authentication);
36980
36981        while let Some(auth_step) = theScheme.step()? {
36982            match auth_step {
36983                ::authentic::AuthenticationStep::Request(auth_request) => {
36984                    theScheme.respond(self.client.execute(auth_request));
36985                }
36986                ::authentic::AuthenticationStep::WaitFor(duration) => {
36987                    (self.sleep)(duration);
36988                }
36989            }
36990        }
36991        let theBuilder = crate::v1_1_4::request::teams_remove_member_legacy::reqwest_blocking_builder(
36992            self.config.base_url.as_ref(),
36993            team_id,
36994            username,
36995            self.config.user_agent.as_ref(),
36996            self.config.accept.as_deref(),
36997        )?
36998        .with_authentication(&theScheme)?;
36999
37000        let theRequest =
37001            crate::v1_1_4::request::teams_remove_member_legacy::reqwest_blocking_request(theBuilder)?;
37002
37003        ::log::debug!("HTTP request: {:?}", &theRequest);
37004
37005        let theResponse = self.client.execute(theRequest)?;
37006
37007        ::log::debug!("HTTP response: {:?}", &theResponse);
37008
37009        Ok(theResponse)
37010    }
37011
37012    /// Get team membership for a user (Legacy)
37013    /// 
37014    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Get team membership for a user](https://docs.github.com/rest/reference/teams#get-team-membership-for-a-user) endpoint.
37015    /// 
37016    /// Team members will include the members of child teams.
37017    /// 
37018    /// To get a user's membership with a team, the team must be visible to the authenticated user.
37019    /// 
37020    /// **Note:**
37021    /// The response contains the `state` of the membership and the member's `role`.
37022    /// 
37023    /// The `role` for organization owners is set to `maintainer`. For more information about `maintainer` roles, see [Create a team](https://docs.github.com/rest/reference/teams#create-a-team).
37024    /// 
37025    /// [API method documentation](https://docs.github.com/rest/reference/teams#get-team-membership-for-a-user-legacy)
37026    pub fn teams_get_membership_for_user_legacy(
37027        &self,
37028        team_id: i64,
37029        username: &str,
37030    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37031        let mut theScheme = AuthScheme::from(&self.config.authentication);
37032
37033        while let Some(auth_step) = theScheme.step()? {
37034            match auth_step {
37035                ::authentic::AuthenticationStep::Request(auth_request) => {
37036                    theScheme.respond(self.client.execute(auth_request));
37037                }
37038                ::authentic::AuthenticationStep::WaitFor(duration) => {
37039                    (self.sleep)(duration);
37040                }
37041            }
37042        }
37043        let theBuilder = crate::v1_1_4::request::teams_get_membership_for_user_legacy::reqwest_blocking_builder(
37044            self.config.base_url.as_ref(),
37045            team_id,
37046            username,
37047            self.config.user_agent.as_ref(),
37048            self.config.accept.as_deref(),
37049        )?
37050        .with_authentication(&theScheme)?;
37051
37052        let theRequest =
37053            crate::v1_1_4::request::teams_get_membership_for_user_legacy::reqwest_blocking_request(theBuilder)?;
37054
37055        ::log::debug!("HTTP request: {:?}", &theRequest);
37056
37057        let theResponse = self.client.execute(theRequest)?;
37058
37059        ::log::debug!("HTTP response: {:?}", &theResponse);
37060
37061        Ok(theResponse)
37062    }
37063
37064    /// Add or update team membership for a user (Legacy)
37065    /// 
37066    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Add or update team membership for a user](https://docs.github.com/rest/reference/teams#add-or-update-team-membership-for-a-user) endpoint.
37067    /// 
37068    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
37069    /// 
37070    /// If the user is already a member of the team's organization, this endpoint will add the user to the team. To add a membership between an organization member and a team, the authenticated user must be an organization owner or a team maintainer.
37071    /// 
37072    /// **Note:** When you have team synchronization set up for a team with your organization's identity provider (IdP), you will see an error if you attempt to use the API for making changes to the team's membership. If you have access to manage group membership in your IdP, you can manage GitHub team membership through your identity provider, which automatically adds and removes team members in an organization. For more information, see "[Synchronizing teams between your identity provider and GitHub](https://docs.github.com/articles/synchronizing-teams-between-your-identity-provider-and-github/)."
37073    /// 
37074    /// If the user is unaffiliated with the team's organization, this endpoint will send an invitation to the user via email. This newly-created membership will be in the "pending" state until the user accepts the invitation, at which point the membership will transition to the "active" state and the user will be added as a member of the team. To add a membership between an unaffiliated user and a team, the authenticated user must be an organization owner.
37075    /// 
37076    /// If the user is already a member of the team, this endpoint will update the role of the team member's role. To update the membership of a team member, the authenticated user must be an organization owner or a team maintainer.
37077    /// 
37078    /// [API method documentation](https://docs.github.com/rest/reference/teams#add-or-update-team-membership-for-a-user-legacy)
37079    ///
37080    /// # Content
37081    ///
37082    /// - [`&v1_1_4::request::teams_add_or_update_membership_for_user_legacy::body::Json`](crate::v1_1_4::request::teams_add_or_update_membership_for_user_legacy::body::Json)
37083    pub fn teams_add_or_update_membership_for_user_legacy<Content>(
37084        &self,
37085        team_id: i64,
37086        username: &str,
37087        theContent: Content,
37088    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
37089    where
37090        Content: Copy + TryInto<crate::v1_1_4::request::teams_add_or_update_membership_for_user_legacy::Content<::reqwest::blocking::Body>>,
37091        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_add_or_update_membership_for_user_legacy::Content<::reqwest::blocking::Body>>>::Error>
37092    {
37093        let mut theScheme = AuthScheme::from(&self.config.authentication);
37094
37095        while let Some(auth_step) = theScheme.step()? {
37096            match auth_step {
37097                ::authentic::AuthenticationStep::Request(auth_request) => {
37098                    theScheme.respond(self.client.execute(auth_request));
37099                }
37100                ::authentic::AuthenticationStep::WaitFor(duration) => {
37101                    (self.sleep)(duration);
37102                }
37103            }
37104        }
37105        let theBuilder = crate::v1_1_4::request::teams_add_or_update_membership_for_user_legacy::reqwest_blocking_builder(
37106            self.config.base_url.as_ref(),
37107            team_id,
37108            username,
37109            self.config.user_agent.as_ref(),
37110            self.config.accept.as_deref(),
37111        )?
37112        .with_authentication(&theScheme)?;
37113
37114        let theRequest = crate::v1_1_4::request::teams_add_or_update_membership_for_user_legacy::reqwest_blocking_request(
37115            theBuilder,
37116            theContent.try_into()?,
37117        )?;
37118
37119        ::log::debug!("HTTP request: {:?}", &theRequest);
37120
37121        let theResponse = self.client.execute(theRequest)?;
37122
37123        ::log::debug!("HTTP response: {:?}", &theResponse);
37124
37125        Ok(theResponse)
37126    }
37127
37128    /// Remove team membership for a user (Legacy)
37129    /// 
37130    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Remove team membership for a user](https://docs.github.com/rest/reference/teams#remove-team-membership-for-a-user) endpoint.
37131    /// 
37132    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
37133    /// 
37134    /// To remove a membership between a user and a team, the authenticated user must have 'admin' permissions to the team or be an owner of the organization that the team is associated with. Removing team membership does not delete the user, it just removes their membership from the team.
37135    /// 
37136    /// **Note:** When you have team synchronization set up for a team with your organization's identity provider (IdP), you will see an error if you attempt to use the API for making changes to the team's membership. If you have access to manage group membership in your IdP, you can manage GitHub team membership through your identity provider, which automatically adds and removes team members in an organization. For more information, see "[Synchronizing teams between your identity provider and GitHub](https://docs.github.com/articles/synchronizing-teams-between-your-identity-provider-and-github/)."
37137    /// 
37138    /// [API method documentation](https://docs.github.com/rest/reference/teams#remove-team-membership-for-a-user-legacy)
37139    pub fn teams_remove_membership_for_user_legacy(
37140        &self,
37141        team_id: i64,
37142        username: &str,
37143    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37144        let mut theScheme = AuthScheme::from(&self.config.authentication);
37145
37146        while let Some(auth_step) = theScheme.step()? {
37147            match auth_step {
37148                ::authentic::AuthenticationStep::Request(auth_request) => {
37149                    theScheme.respond(self.client.execute(auth_request));
37150                }
37151                ::authentic::AuthenticationStep::WaitFor(duration) => {
37152                    (self.sleep)(duration);
37153                }
37154            }
37155        }
37156        let theBuilder = crate::v1_1_4::request::teams_remove_membership_for_user_legacy::reqwest_blocking_builder(
37157            self.config.base_url.as_ref(),
37158            team_id,
37159            username,
37160            self.config.user_agent.as_ref(),
37161            self.config.accept.as_deref(),
37162        )?
37163        .with_authentication(&theScheme)?;
37164
37165        let theRequest =
37166            crate::v1_1_4::request::teams_remove_membership_for_user_legacy::reqwest_blocking_request(theBuilder)?;
37167
37168        ::log::debug!("HTTP request: {:?}", &theRequest);
37169
37170        let theResponse = self.client.execute(theRequest)?;
37171
37172        ::log::debug!("HTTP response: {:?}", &theResponse);
37173
37174        Ok(theResponse)
37175    }
37176
37177    /// List team projects (Legacy)
37178    /// 
37179    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List team projects`](https://docs.github.com/rest/reference/teams#list-team-projects) endpoint.
37180    /// 
37181    /// Lists the organization projects for a team.
37182    /// 
37183    /// [API method documentation](https://docs.github.com/rest/reference/teams/#list-team-projects-legacy)
37184    pub fn teams_list_projects_legacy(
37185        &self,
37186        team_id: i64,
37187        per_page: ::std::option::Option<i64>,
37188        page: ::std::option::Option<i64>,
37189    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37190        let mut theScheme = AuthScheme::from(&self.config.authentication);
37191
37192        while let Some(auth_step) = theScheme.step()? {
37193            match auth_step {
37194                ::authentic::AuthenticationStep::Request(auth_request) => {
37195                    theScheme.respond(self.client.execute(auth_request));
37196                }
37197                ::authentic::AuthenticationStep::WaitFor(duration) => {
37198                    (self.sleep)(duration);
37199                }
37200            }
37201        }
37202        let theBuilder = crate::v1_1_4::request::teams_list_projects_legacy::reqwest_blocking_builder(
37203            self.config.base_url.as_ref(),
37204            team_id,
37205            per_page,
37206            page,
37207            self.config.user_agent.as_ref(),
37208            self.config.accept.as_deref(),
37209        )?
37210        .with_authentication(&theScheme)?;
37211
37212        let theRequest =
37213            crate::v1_1_4::request::teams_list_projects_legacy::reqwest_blocking_request(theBuilder)?;
37214
37215        ::log::debug!("HTTP request: {:?}", &theRequest);
37216
37217        let theResponse = self.client.execute(theRequest)?;
37218
37219        ::log::debug!("HTTP response: {:?}", &theResponse);
37220
37221        Ok(theResponse)
37222    }
37223
37224    /// Check team permissions for a project (Legacy)
37225    /// 
37226    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a project](https://docs.github.com/rest/reference/teams#check-team-permissions-for-a-project) endpoint.
37227    /// 
37228    /// Checks whether a team has `read`, `write`, or `admin` permissions for an organization project. The response includes projects inherited from a parent team.
37229    /// 
37230    /// [API method documentation](https://docs.github.com/rest/reference/teams/#check-team-permissions-for-a-project-legacy)
37231    pub fn teams_check_permissions_for_project_legacy(
37232        &self,
37233        team_id: i64,
37234        project_id: i64,
37235    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37236        let mut theScheme = AuthScheme::from(&self.config.authentication);
37237
37238        while let Some(auth_step) = theScheme.step()? {
37239            match auth_step {
37240                ::authentic::AuthenticationStep::Request(auth_request) => {
37241                    theScheme.respond(self.client.execute(auth_request));
37242                }
37243                ::authentic::AuthenticationStep::WaitFor(duration) => {
37244                    (self.sleep)(duration);
37245                }
37246            }
37247        }
37248        let theBuilder = crate::v1_1_4::request::teams_check_permissions_for_project_legacy::reqwest_blocking_builder(
37249            self.config.base_url.as_ref(),
37250            team_id,
37251            project_id,
37252            self.config.user_agent.as_ref(),
37253            self.config.accept.as_deref(),
37254        )?
37255        .with_authentication(&theScheme)?;
37256
37257        let theRequest =
37258            crate::v1_1_4::request::teams_check_permissions_for_project_legacy::reqwest_blocking_request(theBuilder)?;
37259
37260        ::log::debug!("HTTP request: {:?}", &theRequest);
37261
37262        let theResponse = self.client.execute(theRequest)?;
37263
37264        ::log::debug!("HTTP response: {:?}", &theResponse);
37265
37266        Ok(theResponse)
37267    }
37268
37269    /// Add or update team project permissions (Legacy)
37270    /// 
37271    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Add or update team project permissions](https://docs.github.com/rest/reference/teams#add-or-update-team-project-permissions) endpoint.
37272    /// 
37273    /// Adds an organization project to a team. To add a project to a team or update the team's permission on a project, the authenticated user must have `admin` permissions for the project. The project and team must be part of the same organization.
37274    /// 
37275    /// [API method documentation](https://docs.github.com/rest/reference/teams/#add-or-update-team-project-permissions-legacy)
37276    ///
37277    /// # Content
37278    ///
37279    /// - [`&v1_1_4::request::teams_add_or_update_project_permissions_legacy::body::Json`](crate::v1_1_4::request::teams_add_or_update_project_permissions_legacy::body::Json)
37280    pub fn teams_add_or_update_project_permissions_legacy<Content>(
37281        &self,
37282        team_id: i64,
37283        project_id: i64,
37284        theContent: Content,
37285    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
37286    where
37287        Content: Copy + TryInto<crate::v1_1_4::request::teams_add_or_update_project_permissions_legacy::Content<::reqwest::blocking::Body>>,
37288        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_add_or_update_project_permissions_legacy::Content<::reqwest::blocking::Body>>>::Error>
37289    {
37290        let mut theScheme = AuthScheme::from(&self.config.authentication);
37291
37292        while let Some(auth_step) = theScheme.step()? {
37293            match auth_step {
37294                ::authentic::AuthenticationStep::Request(auth_request) => {
37295                    theScheme.respond(self.client.execute(auth_request));
37296                }
37297                ::authentic::AuthenticationStep::WaitFor(duration) => {
37298                    (self.sleep)(duration);
37299                }
37300            }
37301        }
37302        let theBuilder = crate::v1_1_4::request::teams_add_or_update_project_permissions_legacy::reqwest_blocking_builder(
37303            self.config.base_url.as_ref(),
37304            team_id,
37305            project_id,
37306            self.config.user_agent.as_ref(),
37307            self.config.accept.as_deref(),
37308        )?
37309        .with_authentication(&theScheme)?;
37310
37311        let theRequest = crate::v1_1_4::request::teams_add_or_update_project_permissions_legacy::reqwest_blocking_request(
37312            theBuilder,
37313            theContent.try_into()?,
37314        )?;
37315
37316        ::log::debug!("HTTP request: {:?}", &theRequest);
37317
37318        let theResponse = self.client.execute(theRequest)?;
37319
37320        ::log::debug!("HTTP response: {:?}", &theResponse);
37321
37322        Ok(theResponse)
37323    }
37324
37325    /// Remove a project from a team (Legacy)
37326    /// 
37327    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Remove a project from a team](https://docs.github.com/rest/reference/teams#remove-a-project-from-a-team) endpoint.
37328    /// 
37329    /// Removes an organization project from a team. An organization owner or a team maintainer can remove any project from the team. To remove a project from a team as an organization member, the authenticated user must have `read` access to both the team and project, or `admin` access to the team or project. **Note:** This endpoint removes the project from the team, but does not delete it.
37330    /// 
37331    /// [API method documentation](https://docs.github.com/rest/reference/teams/#remove-a-project-from-a-team-legacy)
37332    pub fn teams_remove_project_legacy(
37333        &self,
37334        team_id: i64,
37335        project_id: i64,
37336    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37337        let mut theScheme = AuthScheme::from(&self.config.authentication);
37338
37339        while let Some(auth_step) = theScheme.step()? {
37340            match auth_step {
37341                ::authentic::AuthenticationStep::Request(auth_request) => {
37342                    theScheme.respond(self.client.execute(auth_request));
37343                }
37344                ::authentic::AuthenticationStep::WaitFor(duration) => {
37345                    (self.sleep)(duration);
37346                }
37347            }
37348        }
37349        let theBuilder = crate::v1_1_4::request::teams_remove_project_legacy::reqwest_blocking_builder(
37350            self.config.base_url.as_ref(),
37351            team_id,
37352            project_id,
37353            self.config.user_agent.as_ref(),
37354            self.config.accept.as_deref(),
37355        )?
37356        .with_authentication(&theScheme)?;
37357
37358        let theRequest =
37359            crate::v1_1_4::request::teams_remove_project_legacy::reqwest_blocking_request(theBuilder)?;
37360
37361        ::log::debug!("HTTP request: {:?}", &theRequest);
37362
37363        let theResponse = self.client.execute(theRequest)?;
37364
37365        ::log::debug!("HTTP response: {:?}", &theResponse);
37366
37367        Ok(theResponse)
37368    }
37369
37370    /// List team repositories (Legacy)
37371    /// 
37372    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [List team repositories](https://docs.github.com/rest/reference/teams#list-team-repositories) endpoint.
37373    /// 
37374    /// [API method documentation](https://docs.github.com/rest/reference/teams/#list-team-repositories-legacy)
37375    pub fn teams_list_repos_legacy(
37376        &self,
37377        team_id: i64,
37378        per_page: ::std::option::Option<i64>,
37379        page: ::std::option::Option<i64>,
37380    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37381        let mut theScheme = AuthScheme::from(&self.config.authentication);
37382
37383        while let Some(auth_step) = theScheme.step()? {
37384            match auth_step {
37385                ::authentic::AuthenticationStep::Request(auth_request) => {
37386                    theScheme.respond(self.client.execute(auth_request));
37387                }
37388                ::authentic::AuthenticationStep::WaitFor(duration) => {
37389                    (self.sleep)(duration);
37390                }
37391            }
37392        }
37393        let theBuilder = crate::v1_1_4::request::teams_list_repos_legacy::reqwest_blocking_builder(
37394            self.config.base_url.as_ref(),
37395            team_id,
37396            per_page,
37397            page,
37398            self.config.user_agent.as_ref(),
37399            self.config.accept.as_deref(),
37400        )?
37401        .with_authentication(&theScheme)?;
37402
37403        let theRequest =
37404            crate::v1_1_4::request::teams_list_repos_legacy::reqwest_blocking_request(theBuilder)?;
37405
37406        ::log::debug!("HTTP request: {:?}", &theRequest);
37407
37408        let theResponse = self.client.execute(theRequest)?;
37409
37410        ::log::debug!("HTTP response: {:?}", &theResponse);
37411
37412        Ok(theResponse)
37413    }
37414
37415    /// Check team permissions for a repository (Legacy)
37416    /// 
37417    /// **Note**: Repositories inherited through a parent team will also be checked.
37418    /// 
37419    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a repository](https://docs.github.com/rest/reference/teams#check-team-permissions-for-a-repository) endpoint.
37420    /// 
37421    /// You can also get information about the specified repository, including what permissions the team grants on it, by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
37422    /// 
37423    /// [API method documentation](https://docs.github.com/rest/reference/teams/#check-team-permissions-for-a-repository-legacy)
37424    pub fn teams_check_permissions_for_repo_legacy(
37425        &self,
37426        team_id: i64,
37427        owner: &str,
37428        repo: &str,
37429    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37430        let mut theScheme = AuthScheme::from(&self.config.authentication);
37431
37432        while let Some(auth_step) = theScheme.step()? {
37433            match auth_step {
37434                ::authentic::AuthenticationStep::Request(auth_request) => {
37435                    theScheme.respond(self.client.execute(auth_request));
37436                }
37437                ::authentic::AuthenticationStep::WaitFor(duration) => {
37438                    (self.sleep)(duration);
37439                }
37440            }
37441        }
37442        let theBuilder = crate::v1_1_4::request::teams_check_permissions_for_repo_legacy::reqwest_blocking_builder(
37443            self.config.base_url.as_ref(),
37444            team_id,
37445            owner,
37446            repo,
37447            self.config.user_agent.as_ref(),
37448            self.config.accept.as_deref(),
37449        )?
37450        .with_authentication(&theScheme)?;
37451
37452        let theRequest =
37453            crate::v1_1_4::request::teams_check_permissions_for_repo_legacy::reqwest_blocking_request(theBuilder)?;
37454
37455        ::log::debug!("HTTP request: {:?}", &theRequest);
37456
37457        let theResponse = self.client.execute(theRequest)?;
37458
37459        ::log::debug!("HTTP response: {:?}", &theResponse);
37460
37461        Ok(theResponse)
37462    }
37463
37464    /// Add or update team repository permissions (Legacy)
37465    /// 
37466    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new "[Add or update team repository permissions](https://docs.github.com/rest/reference/teams#add-or-update-team-repository-permissions)" endpoint.
37467    /// 
37468    /// To add a repository to a team or update the team's permission on a repository, the authenticated user must have admin access to the repository, and must be able to see the team. The repository must be owned by the organization, or a direct fork of a repository owned by the organization. You will get a `422 Unprocessable Entity` status if you attempt to add a repository to a team that is not owned by the organization.
37469    /// 
37470    /// Note that, if you choose not to pass any parameters, you'll need to set `Content-Length` to zero when calling out to this endpoint. For more information, see "[HTTP verbs](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-verbs)."
37471    /// 
37472    /// [API method documentation](https://docs.github.com/rest/reference/teams/#add-or-update-team-repository-permissions-legacy)
37473    ///
37474    /// # Content
37475    ///
37476    /// - [`&v1_1_4::request::teams_add_or_update_repo_permissions_legacy::body::Json`](crate::v1_1_4::request::teams_add_or_update_repo_permissions_legacy::body::Json)
37477    pub fn teams_add_or_update_repo_permissions_legacy<Content>(
37478        &self,
37479        team_id: i64,
37480        owner: &str,
37481        repo: &str,
37482        theContent: Content,
37483    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
37484    where
37485        Content: Copy + TryInto<crate::v1_1_4::request::teams_add_or_update_repo_permissions_legacy::Content<::reqwest::blocking::Body>>,
37486        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_add_or_update_repo_permissions_legacy::Content<::reqwest::blocking::Body>>>::Error>
37487    {
37488        let mut theScheme = AuthScheme::from(&self.config.authentication);
37489
37490        while let Some(auth_step) = theScheme.step()? {
37491            match auth_step {
37492                ::authentic::AuthenticationStep::Request(auth_request) => {
37493                    theScheme.respond(self.client.execute(auth_request));
37494                }
37495                ::authentic::AuthenticationStep::WaitFor(duration) => {
37496                    (self.sleep)(duration);
37497                }
37498            }
37499        }
37500        let theBuilder = crate::v1_1_4::request::teams_add_or_update_repo_permissions_legacy::reqwest_blocking_builder(
37501            self.config.base_url.as_ref(),
37502            team_id,
37503            owner,
37504            repo,
37505            self.config.user_agent.as_ref(),
37506            self.config.accept.as_deref(),
37507        )?
37508        .with_authentication(&theScheme)?;
37509
37510        let theRequest = crate::v1_1_4::request::teams_add_or_update_repo_permissions_legacy::reqwest_blocking_request(
37511            theBuilder,
37512            theContent.try_into()?,
37513        )?;
37514
37515        ::log::debug!("HTTP request: {:?}", &theRequest);
37516
37517        let theResponse = self.client.execute(theRequest)?;
37518
37519        ::log::debug!("HTTP response: {:?}", &theResponse);
37520
37521        Ok(theResponse)
37522    }
37523
37524    /// Remove a repository from a team (Legacy)
37525    /// 
37526    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [Remove a repository from a team](https://docs.github.com/rest/reference/teams#remove-a-repository-from-a-team) endpoint.
37527    /// 
37528    /// If the authenticated user is an organization owner or a team maintainer, they can remove any repositories from the team. To remove a repository from a team as an organization member, the authenticated user must have admin access to the repository and must be able to see the team. NOTE: This does not delete the repository, it just removes it from the team.
37529    /// 
37530    /// [API method documentation](https://docs.github.com/rest/reference/teams/#remove-a-repository-from-a-team-legacy)
37531    pub fn teams_remove_repo_legacy(
37532        &self,
37533        team_id: i64,
37534        owner: &str,
37535        repo: &str,
37536    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37537        let mut theScheme = AuthScheme::from(&self.config.authentication);
37538
37539        while let Some(auth_step) = theScheme.step()? {
37540            match auth_step {
37541                ::authentic::AuthenticationStep::Request(auth_request) => {
37542                    theScheme.respond(self.client.execute(auth_request));
37543                }
37544                ::authentic::AuthenticationStep::WaitFor(duration) => {
37545                    (self.sleep)(duration);
37546                }
37547            }
37548        }
37549        let theBuilder = crate::v1_1_4::request::teams_remove_repo_legacy::reqwest_blocking_builder(
37550            self.config.base_url.as_ref(),
37551            team_id,
37552            owner,
37553            repo,
37554            self.config.user_agent.as_ref(),
37555            self.config.accept.as_deref(),
37556        )?
37557        .with_authentication(&theScheme)?;
37558
37559        let theRequest =
37560            crate::v1_1_4::request::teams_remove_repo_legacy::reqwest_blocking_request(theBuilder)?;
37561
37562        ::log::debug!("HTTP request: {:?}", &theRequest);
37563
37564        let theResponse = self.client.execute(theRequest)?;
37565
37566        ::log::debug!("HTTP response: {:?}", &theResponse);
37567
37568        Ok(theResponse)
37569    }
37570
37571    /// List IdP groups for a team (Legacy)
37572    /// 
37573    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List IdP groups for a team`](https://docs.github.com/rest/reference/teams#list-idp-groups-for-a-team) endpoint.
37574    /// 
37575    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
37576    /// 
37577    /// List IdP groups connected to a team on GitHub.
37578    /// 
37579    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-idp-groups-for-a-team-legacy)
37580    pub fn teams_list_idp_groups_for_legacy(
37581        &self,
37582        team_id: i64,
37583    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37584        let mut theScheme = AuthScheme::from(&self.config.authentication);
37585
37586        while let Some(auth_step) = theScheme.step()? {
37587            match auth_step {
37588                ::authentic::AuthenticationStep::Request(auth_request) => {
37589                    theScheme.respond(self.client.execute(auth_request));
37590                }
37591                ::authentic::AuthenticationStep::WaitFor(duration) => {
37592                    (self.sleep)(duration);
37593                }
37594            }
37595        }
37596        let theBuilder = crate::v1_1_4::request::teams_list_idp_groups_for_legacy::reqwest_blocking_builder(
37597            self.config.base_url.as_ref(),
37598            team_id,
37599            self.config.user_agent.as_ref(),
37600            self.config.accept.as_deref(),
37601        )?
37602        .with_authentication(&theScheme)?;
37603
37604        let theRequest =
37605            crate::v1_1_4::request::teams_list_idp_groups_for_legacy::reqwest_blocking_request(theBuilder)?;
37606
37607        ::log::debug!("HTTP request: {:?}", &theRequest);
37608
37609        let theResponse = self.client.execute(theRequest)?;
37610
37611        ::log::debug!("HTTP response: {:?}", &theResponse);
37612
37613        Ok(theResponse)
37614    }
37615
37616    /// Create or update IdP group connections (Legacy)
37617    /// 
37618    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`Create or update IdP group connections`](https://docs.github.com/rest/reference/teams#create-or-update-idp-group-connections) endpoint.
37619    /// 
37620    /// Team synchronization is available for organizations using GitHub Enterprise Cloud. For more information, see [GitHub's products](https://docs.github.com/github/getting-started-with-github/githubs-products) in the GitHub Help documentation.
37621    /// 
37622    /// Creates, updates, or removes a connection between a team and an IdP group. When adding groups to a team, you must include all new and existing groups to avoid replacing existing groups with the new ones. Specifying an empty `groups` array will remove all connections for a team.
37623    /// 
37624    /// [API method documentation](https://docs.github.com/rest/reference/teams#create-or-update-idp-group-connections-legacy)
37625    ///
37626    /// # Content
37627    ///
37628    /// - [`&v1_1_4::request::teams_create_or_update_idp_group_connections_legacy::body::Json`](crate::v1_1_4::request::teams_create_or_update_idp_group_connections_legacy::body::Json)
37629    pub fn teams_create_or_update_idp_group_connections_legacy<Content>(
37630        &self,
37631        team_id: i64,
37632        theContent: Content,
37633    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
37634    where
37635        Content: Copy + TryInto<crate::v1_1_4::request::teams_create_or_update_idp_group_connections_legacy::Content<::reqwest::blocking::Body>>,
37636        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::teams_create_or_update_idp_group_connections_legacy::Content<::reqwest::blocking::Body>>>::Error>
37637    {
37638        let mut theScheme = AuthScheme::from(&self.config.authentication);
37639
37640        while let Some(auth_step) = theScheme.step()? {
37641            match auth_step {
37642                ::authentic::AuthenticationStep::Request(auth_request) => {
37643                    theScheme.respond(self.client.execute(auth_request));
37644                }
37645                ::authentic::AuthenticationStep::WaitFor(duration) => {
37646                    (self.sleep)(duration);
37647                }
37648            }
37649        }
37650        let theBuilder = crate::v1_1_4::request::teams_create_or_update_idp_group_connections_legacy::reqwest_blocking_builder(
37651            self.config.base_url.as_ref(),
37652            team_id,
37653            self.config.user_agent.as_ref(),
37654            self.config.accept.as_deref(),
37655        )?
37656        .with_authentication(&theScheme)?;
37657
37658        let theRequest = crate::v1_1_4::request::teams_create_or_update_idp_group_connections_legacy::reqwest_blocking_request(
37659            theBuilder,
37660            theContent.try_into()?,
37661        )?;
37662
37663        ::log::debug!("HTTP request: {:?}", &theRequest);
37664
37665        let theResponse = self.client.execute(theRequest)?;
37666
37667        ::log::debug!("HTTP response: {:?}", &theResponse);
37668
37669        Ok(theResponse)
37670    }
37671
37672    /// List child teams (Legacy)
37673    /// 
37674    /// **Deprecation Notice:** This endpoint route is deprecated and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List child teams`](https://docs.github.com/rest/reference/teams#list-child-teams) endpoint.
37675    /// 
37676    /// [API method documentation](https://docs.github.com/rest/reference/teams/#list-child-teams-legacy)
37677    pub fn teams_list_child_legacy(
37678        &self,
37679        team_id: i64,
37680        per_page: ::std::option::Option<i64>,
37681        page: ::std::option::Option<i64>,
37682    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37683        let mut theScheme = AuthScheme::from(&self.config.authentication);
37684
37685        while let Some(auth_step) = theScheme.step()? {
37686            match auth_step {
37687                ::authentic::AuthenticationStep::Request(auth_request) => {
37688                    theScheme.respond(self.client.execute(auth_request));
37689                }
37690                ::authentic::AuthenticationStep::WaitFor(duration) => {
37691                    (self.sleep)(duration);
37692                }
37693            }
37694        }
37695        let theBuilder = crate::v1_1_4::request::teams_list_child_legacy::reqwest_blocking_builder(
37696            self.config.base_url.as_ref(),
37697            team_id,
37698            per_page,
37699            page,
37700            self.config.user_agent.as_ref(),
37701            self.config.accept.as_deref(),
37702        )?
37703        .with_authentication(&theScheme)?;
37704
37705        let theRequest =
37706            crate::v1_1_4::request::teams_list_child_legacy::reqwest_blocking_request(theBuilder)?;
37707
37708        ::log::debug!("HTTP request: {:?}", &theRequest);
37709
37710        let theResponse = self.client.execute(theRequest)?;
37711
37712        ::log::debug!("HTTP response: {:?}", &theResponse);
37713
37714        Ok(theResponse)
37715    }
37716
37717    /// Get the authenticated user
37718    /// 
37719    /// If the authenticated user is authenticated through basic authentication or OAuth with the `user` scope, then the response lists public and private profile information.
37720    /// 
37721    /// If the authenticated user is authenticated through OAuth without the `user` scope, then the response lists only public profile information.
37722    /// 
37723    /// [API method documentation](https://docs.github.com/rest/reference/users#get-the-authenticated-user)
37724    pub fn users_get_authenticated(
37725        &self,
37726    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37727        let mut theScheme = AuthScheme::from(&self.config.authentication);
37728
37729        while let Some(auth_step) = theScheme.step()? {
37730            match auth_step {
37731                ::authentic::AuthenticationStep::Request(auth_request) => {
37732                    theScheme.respond(self.client.execute(auth_request));
37733                }
37734                ::authentic::AuthenticationStep::WaitFor(duration) => {
37735                    (self.sleep)(duration);
37736                }
37737            }
37738        }
37739        let theBuilder = crate::v1_1_4::request::users_get_authenticated::reqwest_blocking_builder(
37740            self.config.base_url.as_ref(),
37741            self.config.user_agent.as_ref(),
37742            self.config.accept.as_deref(),
37743        )?
37744        .with_authentication(&theScheme)?;
37745
37746        let theRequest =
37747            crate::v1_1_4::request::users_get_authenticated::reqwest_blocking_request(theBuilder)?;
37748
37749        ::log::debug!("HTTP request: {:?}", &theRequest);
37750
37751        let theResponse = self.client.execute(theRequest)?;
37752
37753        ::log::debug!("HTTP response: {:?}", &theResponse);
37754
37755        Ok(theResponse)
37756    }
37757
37758    /// Update the authenticated user
37759    /// 
37760    /// **Note:** If your email is set to private and you send an `email` parameter as part of this request to update your profile, your privacy settings are still enforced: the email address will not be displayed on your public profile or via the API.
37761    /// 
37762    /// [API method documentation](https://docs.github.com/rest/reference/users/#update-the-authenticated-user)
37763    ///
37764    /// # Content
37765    ///
37766    /// - [`&v1_1_4::request::users_update_authenticated::body::Json`](crate::v1_1_4::request::users_update_authenticated::body::Json)
37767    pub fn users_update_authenticated<Content>(
37768        &self,
37769        theContent: Content,
37770    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
37771    where
37772        Content: Copy + TryInto<crate::v1_1_4::request::users_update_authenticated::Content<::reqwest::blocking::Body>>,
37773        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::users_update_authenticated::Content<::reqwest::blocking::Body>>>::Error>
37774    {
37775        let mut theScheme = AuthScheme::from(&self.config.authentication);
37776
37777        while let Some(auth_step) = theScheme.step()? {
37778            match auth_step {
37779                ::authentic::AuthenticationStep::Request(auth_request) => {
37780                    theScheme.respond(self.client.execute(auth_request));
37781                }
37782                ::authentic::AuthenticationStep::WaitFor(duration) => {
37783                    (self.sleep)(duration);
37784                }
37785            }
37786        }
37787        let theBuilder = crate::v1_1_4::request::users_update_authenticated::reqwest_blocking_builder(
37788            self.config.base_url.as_ref(),
37789            self.config.user_agent.as_ref(),
37790            self.config.accept.as_deref(),
37791        )?
37792        .with_authentication(&theScheme)?;
37793
37794        let theRequest = crate::v1_1_4::request::users_update_authenticated::reqwest_blocking_request(
37795            theBuilder,
37796            theContent.try_into()?,
37797        )?;
37798
37799        ::log::debug!("HTTP request: {:?}", &theRequest);
37800
37801        let theResponse = self.client.execute(theRequest)?;
37802
37803        ::log::debug!("HTTP response: {:?}", &theResponse);
37804
37805        Ok(theResponse)
37806    }
37807
37808    /// List users blocked by the authenticated user
37809    /// 
37810    /// List the users you've blocked on your personal account.
37811    /// 
37812    /// [API method documentation](https://docs.github.com/rest/reference/users#list-users-blocked-by-the-authenticated-user)
37813    pub fn users_list_blocked_by_authenticated_user(
37814        &self,
37815    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37816        let mut theScheme = AuthScheme::from(&self.config.authentication);
37817
37818        while let Some(auth_step) = theScheme.step()? {
37819            match auth_step {
37820                ::authentic::AuthenticationStep::Request(auth_request) => {
37821                    theScheme.respond(self.client.execute(auth_request));
37822                }
37823                ::authentic::AuthenticationStep::WaitFor(duration) => {
37824                    (self.sleep)(duration);
37825                }
37826            }
37827        }
37828        let theBuilder = crate::v1_1_4::request::users_list_blocked_by_authenticated_user::reqwest_blocking_builder(
37829            self.config.base_url.as_ref(),
37830            self.config.user_agent.as_ref(),
37831            self.config.accept.as_deref(),
37832        )?
37833        .with_authentication(&theScheme)?;
37834
37835        let theRequest =
37836            crate::v1_1_4::request::users_list_blocked_by_authenticated_user::reqwest_blocking_request(theBuilder)?;
37837
37838        ::log::debug!("HTTP request: {:?}", &theRequest);
37839
37840        let theResponse = self.client.execute(theRequest)?;
37841
37842        ::log::debug!("HTTP response: {:?}", &theResponse);
37843
37844        Ok(theResponse)
37845    }
37846
37847    /// Check if a user is blocked by the authenticated user
37848    /// 
37849    /// [API method documentation](https://docs.github.com/rest/reference/users#check-if-a-user-is-blocked-by-the-authenticated-user)
37850    pub fn users_check_blocked(
37851        &self,
37852        username: &str,
37853    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37854        let mut theScheme = AuthScheme::from(&self.config.authentication);
37855
37856        while let Some(auth_step) = theScheme.step()? {
37857            match auth_step {
37858                ::authentic::AuthenticationStep::Request(auth_request) => {
37859                    theScheme.respond(self.client.execute(auth_request));
37860                }
37861                ::authentic::AuthenticationStep::WaitFor(duration) => {
37862                    (self.sleep)(duration);
37863                }
37864            }
37865        }
37866        let theBuilder = crate::v1_1_4::request::users_check_blocked::reqwest_blocking_builder(
37867            self.config.base_url.as_ref(),
37868            username,
37869            self.config.user_agent.as_ref(),
37870            self.config.accept.as_deref(),
37871        )?
37872        .with_authentication(&theScheme)?;
37873
37874        let theRequest =
37875            crate::v1_1_4::request::users_check_blocked::reqwest_blocking_request(theBuilder)?;
37876
37877        ::log::debug!("HTTP request: {:?}", &theRequest);
37878
37879        let theResponse = self.client.execute(theRequest)?;
37880
37881        ::log::debug!("HTTP response: {:?}", &theResponse);
37882
37883        Ok(theResponse)
37884    }
37885
37886    /// Block a user
37887    /// 
37888    /// [API method documentation](https://docs.github.com/rest/reference/users#block-a-user)
37889    pub fn users_block(
37890        &self,
37891        username: &str,
37892    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37893        let mut theScheme = AuthScheme::from(&self.config.authentication);
37894
37895        while let Some(auth_step) = theScheme.step()? {
37896            match auth_step {
37897                ::authentic::AuthenticationStep::Request(auth_request) => {
37898                    theScheme.respond(self.client.execute(auth_request));
37899                }
37900                ::authentic::AuthenticationStep::WaitFor(duration) => {
37901                    (self.sleep)(duration);
37902                }
37903            }
37904        }
37905        let theBuilder = crate::v1_1_4::request::users_block::reqwest_blocking_builder(
37906            self.config.base_url.as_ref(),
37907            username,
37908            self.config.user_agent.as_ref(),
37909            self.config.accept.as_deref(),
37910        )?
37911        .with_authentication(&theScheme)?;
37912
37913        let theRequest =
37914            crate::v1_1_4::request::users_block::reqwest_blocking_request(theBuilder)?;
37915
37916        ::log::debug!("HTTP request: {:?}", &theRequest);
37917
37918        let theResponse = self.client.execute(theRequest)?;
37919
37920        ::log::debug!("HTTP response: {:?}", &theResponse);
37921
37922        Ok(theResponse)
37923    }
37924
37925    /// Unblock a user
37926    /// 
37927    /// [API method documentation](https://docs.github.com/rest/reference/users#unblock-a-user)
37928    pub fn users_unblock(
37929        &self,
37930        username: &str,
37931    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37932        let mut theScheme = AuthScheme::from(&self.config.authentication);
37933
37934        while let Some(auth_step) = theScheme.step()? {
37935            match auth_step {
37936                ::authentic::AuthenticationStep::Request(auth_request) => {
37937                    theScheme.respond(self.client.execute(auth_request));
37938                }
37939                ::authentic::AuthenticationStep::WaitFor(duration) => {
37940                    (self.sleep)(duration);
37941                }
37942            }
37943        }
37944        let theBuilder = crate::v1_1_4::request::users_unblock::reqwest_blocking_builder(
37945            self.config.base_url.as_ref(),
37946            username,
37947            self.config.user_agent.as_ref(),
37948            self.config.accept.as_deref(),
37949        )?
37950        .with_authentication(&theScheme)?;
37951
37952        let theRequest =
37953            crate::v1_1_4::request::users_unblock::reqwest_blocking_request(theBuilder)?;
37954
37955        ::log::debug!("HTTP request: {:?}", &theRequest);
37956
37957        let theResponse = self.client.execute(theRequest)?;
37958
37959        ::log::debug!("HTTP response: {:?}", &theResponse);
37960
37961        Ok(theResponse)
37962    }
37963
37964    /// List codespaces for the authenticated user
37965    /// 
37966    /// Lists the authenticated user's codespaces.
37967    /// 
37968    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
37969    /// 
37970    /// GitHub Apps must have read access to the `codespaces` repository permission to use this endpoint.
37971    /// 
37972    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#list-codespaces-for-the-authenticated-user)
37973    pub fn codespaces_list_for_authenticated_user(
37974        &self,
37975        per_page: ::std::option::Option<i64>,
37976        page: ::std::option::Option<i64>,
37977        repository_id: ::std::option::Option<i64>,
37978    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
37979        let mut theScheme = AuthScheme::from(&self.config.authentication);
37980
37981        while let Some(auth_step) = theScheme.step()? {
37982            match auth_step {
37983                ::authentic::AuthenticationStep::Request(auth_request) => {
37984                    theScheme.respond(self.client.execute(auth_request));
37985                }
37986                ::authentic::AuthenticationStep::WaitFor(duration) => {
37987                    (self.sleep)(duration);
37988                }
37989            }
37990        }
37991        let theBuilder = crate::v1_1_4::request::codespaces_list_for_authenticated_user::reqwest_blocking_builder(
37992            self.config.base_url.as_ref(),
37993            per_page,
37994            page,
37995            repository_id,
37996            self.config.user_agent.as_ref(),
37997            self.config.accept.as_deref(),
37998        )?
37999        .with_authentication(&theScheme)?;
38000
38001        let theRequest =
38002            crate::v1_1_4::request::codespaces_list_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38003
38004        ::log::debug!("HTTP request: {:?}", &theRequest);
38005
38006        let theResponse = self.client.execute(theRequest)?;
38007
38008        ::log::debug!("HTTP response: {:?}", &theResponse);
38009
38010        Ok(theResponse)
38011    }
38012
38013    /// Create a codespace for the authenticated user
38014    /// 
38015    /// Creates a new codespace, owned by the authenticated user.
38016    /// 
38017    /// This endpoint requires either a `repository_id` OR a `pull_request` but not both.
38018    /// 
38019    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
38020    /// 
38021    /// GitHub Apps must have write access to the `codespaces` repository permission to use this endpoint.
38022    /// 
38023    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#create-a-codespace-for-the-authenticated-user)
38024    ///
38025    /// # Content
38026    ///
38027    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
38028    pub fn codespaces_create_for_authenticated_user<Content>(
38029        &self,
38030        theContent: Content,
38031    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
38032    where
38033        Content: Copy + TryInto<crate::v1_1_4::request::codespaces_create_for_authenticated_user::Content<::reqwest::blocking::Body>>,
38034        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::codespaces_create_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
38035    {
38036        let mut theScheme = AuthScheme::from(&self.config.authentication);
38037
38038        while let Some(auth_step) = theScheme.step()? {
38039            match auth_step {
38040                ::authentic::AuthenticationStep::Request(auth_request) => {
38041                    theScheme.respond(self.client.execute(auth_request));
38042                }
38043                ::authentic::AuthenticationStep::WaitFor(duration) => {
38044                    (self.sleep)(duration);
38045                }
38046            }
38047        }
38048        let theBuilder = crate::v1_1_4::request::codespaces_create_for_authenticated_user::reqwest_blocking_builder(
38049            self.config.base_url.as_ref(),
38050            self.config.user_agent.as_ref(),
38051            self.config.accept.as_deref(),
38052        )?
38053        .with_authentication(&theScheme)?;
38054
38055        let theRequest = crate::v1_1_4::request::codespaces_create_for_authenticated_user::reqwest_blocking_request(
38056            theBuilder,
38057            theContent.try_into()?,
38058        )?;
38059
38060        ::log::debug!("HTTP request: {:?}", &theRequest);
38061
38062        let theResponse = self.client.execute(theRequest)?;
38063
38064        ::log::debug!("HTTP response: {:?}", &theResponse);
38065
38066        Ok(theResponse)
38067    }
38068
38069    /// List secrets for the authenticated user
38070    /// 
38071    /// Lists all secrets available for a user's Codespaces without revealing their
38072    /// encrypted values.
38073    /// 
38074    /// You must authenticate using an access token with the `codespace` or `codespace:secrets` scope to use this endpoint. User must have Codespaces access to use this endpoint.
38075    /// 
38076    /// GitHub Apps must have read access to the `codespaces_user_secrets` user permission to use this endpoint.
38077    /// 
38078    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#list-secrets-for-the-authenticated-user)
38079    pub fn codespaces_list_secrets_for_authenticated_user(
38080        &self,
38081        per_page: ::std::option::Option<i64>,
38082        page: ::std::option::Option<i64>,
38083    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38084        let mut theScheme = AuthScheme::from(&self.config.authentication);
38085
38086        while let Some(auth_step) = theScheme.step()? {
38087            match auth_step {
38088                ::authentic::AuthenticationStep::Request(auth_request) => {
38089                    theScheme.respond(self.client.execute(auth_request));
38090                }
38091                ::authentic::AuthenticationStep::WaitFor(duration) => {
38092                    (self.sleep)(duration);
38093                }
38094            }
38095        }
38096        let theBuilder = crate::v1_1_4::request::codespaces_list_secrets_for_authenticated_user::reqwest_blocking_builder(
38097            self.config.base_url.as_ref(),
38098            per_page,
38099            page,
38100            self.config.user_agent.as_ref(),
38101            self.config.accept.as_deref(),
38102        )?
38103        .with_authentication(&theScheme)?;
38104
38105        let theRequest =
38106            crate::v1_1_4::request::codespaces_list_secrets_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38107
38108        ::log::debug!("HTTP request: {:?}", &theRequest);
38109
38110        let theResponse = self.client.execute(theRequest)?;
38111
38112        ::log::debug!("HTTP response: {:?}", &theResponse);
38113
38114        Ok(theResponse)
38115    }
38116
38117    /// Get public key for the authenticated user
38118    /// 
38119    /// Gets your public key, which you need to encrypt secrets. You need to encrypt a secret before you can create or update secrets.
38120    /// 
38121    /// You must authenticate using an access token with the `codespace` or `codespace:secrets` scope to use this endpoint. User must have Codespaces access to use this endpoint.
38122    /// 
38123    /// GitHub Apps must have read access to the `codespaces_user_secrets` user permission to use this endpoint.
38124    /// 
38125    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#get-public-key-for-the-authenticated-user)
38126    pub fn codespaces_get_public_key_for_authenticated_user(
38127        &self,
38128    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38129        let mut theScheme = AuthScheme::from(&self.config.authentication);
38130
38131        while let Some(auth_step) = theScheme.step()? {
38132            match auth_step {
38133                ::authentic::AuthenticationStep::Request(auth_request) => {
38134                    theScheme.respond(self.client.execute(auth_request));
38135                }
38136                ::authentic::AuthenticationStep::WaitFor(duration) => {
38137                    (self.sleep)(duration);
38138                }
38139            }
38140        }
38141        let theBuilder = crate::v1_1_4::request::codespaces_get_public_key_for_authenticated_user::reqwest_blocking_builder(
38142            self.config.base_url.as_ref(),
38143            self.config.user_agent.as_ref(),
38144            self.config.accept.as_deref(),
38145        )?
38146        .with_authentication(&theScheme)?;
38147
38148        let theRequest =
38149            crate::v1_1_4::request::codespaces_get_public_key_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38150
38151        ::log::debug!("HTTP request: {:?}", &theRequest);
38152
38153        let theResponse = self.client.execute(theRequest)?;
38154
38155        ::log::debug!("HTTP response: {:?}", &theResponse);
38156
38157        Ok(theResponse)
38158    }
38159
38160    /// Get a secret for the authenticated user
38161    /// 
38162    /// Gets a secret available to a user's codespaces without revealing its encrypted value.
38163    /// 
38164    /// You must authenticate using an access token with the `codespace` or `codespace:secrets` scope to use this endpoint. User must have Codespaces access to use this endpoint.
38165    /// 
38166    /// GitHub Apps must have read access to the `codespaces_user_secrets` user permission to use this endpoint.
38167    /// 
38168    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#get-a-secret-for-the-authenticated-user)
38169    pub fn codespaces_get_secret_for_authenticated_user(
38170        &self,
38171        secret_name: &str,
38172    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38173        let mut theScheme = AuthScheme::from(&self.config.authentication);
38174
38175        while let Some(auth_step) = theScheme.step()? {
38176            match auth_step {
38177                ::authentic::AuthenticationStep::Request(auth_request) => {
38178                    theScheme.respond(self.client.execute(auth_request));
38179                }
38180                ::authentic::AuthenticationStep::WaitFor(duration) => {
38181                    (self.sleep)(duration);
38182                }
38183            }
38184        }
38185        let theBuilder = crate::v1_1_4::request::codespaces_get_secret_for_authenticated_user::reqwest_blocking_builder(
38186            self.config.base_url.as_ref(),
38187            secret_name,
38188            self.config.user_agent.as_ref(),
38189            self.config.accept.as_deref(),
38190        )?
38191        .with_authentication(&theScheme)?;
38192
38193        let theRequest =
38194            crate::v1_1_4::request::codespaces_get_secret_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38195
38196        ::log::debug!("HTTP request: {:?}", &theRequest);
38197
38198        let theResponse = self.client.execute(theRequest)?;
38199
38200        ::log::debug!("HTTP response: {:?}", &theResponse);
38201
38202        Ok(theResponse)
38203    }
38204
38205    /// Create or update a secret for the authenticated user
38206    /// 
38207    /// Creates or updates a secret for a user's codespace with an encrypted value. Encrypt your secret using
38208    /// [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages).
38209    /// 
38210    /// You must authenticate using an access token with the `codespace` or `codespace:secrets` scope to use this endpoint. User must also have Codespaces access to use this endpoint.
38211    /// 
38212    /// GitHub Apps must have read access to the `codespaces_user_secrets` user permission and `codespaces_secrets` repository permission on all referenced repositories to use this endpoint.
38213    /// 
38214    /// #### Example encrypting a secret using Node.js
38215    /// 
38216    /// Encrypt your secret using the [tweetsodium](https://github.com/github/tweetsodium) library.
38217    /// 
38218    /// ```text
38219    /// const sodium = require('tweetsodium');
38220    /// 
38221    /// const key = "base64-encoded-public-key";
38222    /// const value = "plain-text-secret";
38223    /// 
38224    /// // Convert the message and key to Uint8Array's (Buffer implements that interface)
38225    /// const messageBytes = Buffer.from(value);
38226    /// const keyBytes = Buffer.from(key, 'base64');
38227    /// 
38228    /// // Encrypt using LibSodium.
38229    /// const encryptedBytes = sodium.seal(messageBytes, keyBytes);
38230    /// 
38231    /// // Base64 the encrypted secret
38232    /// const encrypted = Buffer.from(encryptedBytes).toString('base64');
38233    /// 
38234    /// console.log(encrypted);
38235    /// ```
38236    /// 
38237    /// 
38238    /// #### Example encrypting a secret using Python
38239    /// 
38240    /// Encrypt your secret using [pynacl](https://pynacl.readthedocs.io/en/latest/public/#nacl-public-sealedbox) with Python 3.
38241    /// 
38242    /// ```text
38243    /// from base64 import b64encode
38244    /// from nacl import encoding, public
38245    /// 
38246    /// def encrypt(public_key: str, secret_value: str) -> str:
38247    ///   """Encrypt a Unicode string using the public key."""
38248    ///   public_key = public.PublicKey(public_key.encode("utf-8"), encoding.Base64Encoder())
38249    ///   sealed_box = public.SealedBox(public_key)
38250    ///   encrypted = sealed_box.encrypt(secret_value.encode("utf-8"))
38251    ///   return b64encode(encrypted).decode("utf-8")
38252    /// ```
38253    /// 
38254    /// #### Example encrypting a secret using C#
38255    /// 
38256    /// Encrypt your secret using the [Sodium.Core](https://www.nuget.org/packages/Sodium.Core/) package.
38257    /// 
38258    /// ```text
38259    /// var secretValue = System.Text.Encoding.UTF8.GetBytes("mySecret");
38260    /// var publicKey = Convert.FromBase64String("2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=");
38261    /// 
38262    /// var sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);
38263    /// 
38264    /// Console.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));
38265    /// ```
38266    /// 
38267    /// #### Example encrypting a secret using Ruby
38268    /// 
38269    /// Encrypt your secret using the [rbnacl](https://github.com/RubyCrypto/rbnacl) gem.
38270    /// 
38271    /// ```ruby
38272    /// require "rbnacl"
38273    /// require "base64"
38274    /// 
38275    /// key = Base64.decode64("+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=")
38276    /// public_key = RbNaCl::PublicKey.new(key)
38277    /// 
38278    /// box = RbNaCl::Boxes::Sealed.from_public_key(public_key)
38279    /// encrypted_secret = box.encrypt("my_secret")
38280    /// 
38281    /// # Print the base64 encoded secret
38282    /// puts Base64.strict_encode64(encrypted_secret)
38283    /// ```
38284    /// 
38285    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#create-or-update-a-secret-for-the-authenticated-user)
38286    ///
38287    /// # Content
38288    ///
38289    /// - [`&v1_1_4::request::codespaces_create_or_update_secret_for_authenticated_user::body::Json`](crate::v1_1_4::request::codespaces_create_or_update_secret_for_authenticated_user::body::Json)
38290    pub fn codespaces_create_or_update_secret_for_authenticated_user<Content>(
38291        &self,
38292        secret_name: &str,
38293        theContent: Content,
38294    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
38295    where
38296        Content: Copy + TryInto<crate::v1_1_4::request::codespaces_create_or_update_secret_for_authenticated_user::Content<::reqwest::blocking::Body>>,
38297        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::codespaces_create_or_update_secret_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
38298    {
38299        let mut theScheme = AuthScheme::from(&self.config.authentication);
38300
38301        while let Some(auth_step) = theScheme.step()? {
38302            match auth_step {
38303                ::authentic::AuthenticationStep::Request(auth_request) => {
38304                    theScheme.respond(self.client.execute(auth_request));
38305                }
38306                ::authentic::AuthenticationStep::WaitFor(duration) => {
38307                    (self.sleep)(duration);
38308                }
38309            }
38310        }
38311        let theBuilder = crate::v1_1_4::request::codespaces_create_or_update_secret_for_authenticated_user::reqwest_blocking_builder(
38312            self.config.base_url.as_ref(),
38313            secret_name,
38314            self.config.user_agent.as_ref(),
38315            self.config.accept.as_deref(),
38316        )?
38317        .with_authentication(&theScheme)?;
38318
38319        let theRequest = crate::v1_1_4::request::codespaces_create_or_update_secret_for_authenticated_user::reqwest_blocking_request(
38320            theBuilder,
38321            theContent.try_into()?,
38322        )?;
38323
38324        ::log::debug!("HTTP request: {:?}", &theRequest);
38325
38326        let theResponse = self.client.execute(theRequest)?;
38327
38328        ::log::debug!("HTTP response: {:?}", &theResponse);
38329
38330        Ok(theResponse)
38331    }
38332
38333    /// Delete a secret for the authenticated user
38334    /// 
38335    /// Deletes a secret from a user's codespaces using the secret name. Deleting the secret will remove access from all codespaces that were allowed to access the secret.
38336    /// 
38337    /// You must authenticate using an access token with the `codespace` or `codespace:secrets` scope to use this endpoint. User must have Codespaces access to use this endpoint.
38338    /// 
38339    /// GitHub Apps must have write access to the `codespaces_user_secrets` user permission to use this endpoint.
38340    /// 
38341    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#delete-a-secret-for-the-authenticated-user)
38342    pub fn codespaces_delete_secret_for_authenticated_user(
38343        &self,
38344        secret_name: &str,
38345    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38346        let mut theScheme = AuthScheme::from(&self.config.authentication);
38347
38348        while let Some(auth_step) = theScheme.step()? {
38349            match auth_step {
38350                ::authentic::AuthenticationStep::Request(auth_request) => {
38351                    theScheme.respond(self.client.execute(auth_request));
38352                }
38353                ::authentic::AuthenticationStep::WaitFor(duration) => {
38354                    (self.sleep)(duration);
38355                }
38356            }
38357        }
38358        let theBuilder = crate::v1_1_4::request::codespaces_delete_secret_for_authenticated_user::reqwest_blocking_builder(
38359            self.config.base_url.as_ref(),
38360            secret_name,
38361            self.config.user_agent.as_ref(),
38362            self.config.accept.as_deref(),
38363        )?
38364        .with_authentication(&theScheme)?;
38365
38366        let theRequest =
38367            crate::v1_1_4::request::codespaces_delete_secret_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38368
38369        ::log::debug!("HTTP request: {:?}", &theRequest);
38370
38371        let theResponse = self.client.execute(theRequest)?;
38372
38373        ::log::debug!("HTTP response: {:?}", &theResponse);
38374
38375        Ok(theResponse)
38376    }
38377
38378    /// List selected repositories for a user secret
38379    /// 
38380    /// List the repositories that have been granted the ability to use a user's codespace secret.
38381    /// 
38382    /// You must authenticate using an access token with the `codespace` or `codespace:secrets` scope to use this endpoint. User must have Codespaces access to use this endpoint.
38383    /// 
38384    /// GitHub Apps must have read access to the `codespaces_user_secrets` user permission and write access to the `codespaces_secrets` repository permission on all referenced repositories to use this endpoint.
38385    /// 
38386    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#list-selected-repositories-for-a-user-secret)
38387    pub fn codespaces_list_repositories_for_secret_for_authenticated_user(
38388        &self,
38389        secret_name: &str,
38390    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38391        let mut theScheme = AuthScheme::from(&self.config.authentication);
38392
38393        while let Some(auth_step) = theScheme.step()? {
38394            match auth_step {
38395                ::authentic::AuthenticationStep::Request(auth_request) => {
38396                    theScheme.respond(self.client.execute(auth_request));
38397                }
38398                ::authentic::AuthenticationStep::WaitFor(duration) => {
38399                    (self.sleep)(duration);
38400                }
38401            }
38402        }
38403        let theBuilder = crate::v1_1_4::request::codespaces_list_repositories_for_secret_for_authenticated_user::reqwest_blocking_builder(
38404            self.config.base_url.as_ref(),
38405            secret_name,
38406            self.config.user_agent.as_ref(),
38407            self.config.accept.as_deref(),
38408        )?
38409        .with_authentication(&theScheme)?;
38410
38411        let theRequest =
38412            crate::v1_1_4::request::codespaces_list_repositories_for_secret_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38413
38414        ::log::debug!("HTTP request: {:?}", &theRequest);
38415
38416        let theResponse = self.client.execute(theRequest)?;
38417
38418        ::log::debug!("HTTP response: {:?}", &theResponse);
38419
38420        Ok(theResponse)
38421    }
38422
38423    /// Set selected repositories for a user secret
38424    /// 
38425    /// Select the repositories that will use a user's codespace secret.
38426    /// 
38427    /// You must authenticate using an access token with the `codespace` or `codespace:secrets` scope to use this endpoint. User must have Codespaces access to use this endpoint.
38428    /// 
38429    /// GitHub Apps must have write access to the `codespaces_user_secrets` user permission and write access to the `codespaces_secrets` repository permission on all referenced repositories to use this endpoint.
38430    /// 
38431    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#set-selected-repositories-for-a-user-secret)
38432    ///
38433    /// # Content
38434    ///
38435    /// - [`&v1_1_4::request::codespaces_set_repositories_for_secret_for_authenticated_user::body::Json`](crate::v1_1_4::request::codespaces_set_repositories_for_secret_for_authenticated_user::body::Json)
38436    pub fn codespaces_set_repositories_for_secret_for_authenticated_user<Content>(
38437        &self,
38438        secret_name: &str,
38439        theContent: Content,
38440    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
38441    where
38442        Content: Copy + TryInto<crate::v1_1_4::request::codespaces_set_repositories_for_secret_for_authenticated_user::Content<::reqwest::blocking::Body>>,
38443        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::codespaces_set_repositories_for_secret_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
38444    {
38445        let mut theScheme = AuthScheme::from(&self.config.authentication);
38446
38447        while let Some(auth_step) = theScheme.step()? {
38448            match auth_step {
38449                ::authentic::AuthenticationStep::Request(auth_request) => {
38450                    theScheme.respond(self.client.execute(auth_request));
38451                }
38452                ::authentic::AuthenticationStep::WaitFor(duration) => {
38453                    (self.sleep)(duration);
38454                }
38455            }
38456        }
38457        let theBuilder = crate::v1_1_4::request::codespaces_set_repositories_for_secret_for_authenticated_user::reqwest_blocking_builder(
38458            self.config.base_url.as_ref(),
38459            secret_name,
38460            self.config.user_agent.as_ref(),
38461            self.config.accept.as_deref(),
38462        )?
38463        .with_authentication(&theScheme)?;
38464
38465        let theRequest = crate::v1_1_4::request::codespaces_set_repositories_for_secret_for_authenticated_user::reqwest_blocking_request(
38466            theBuilder,
38467            theContent.try_into()?,
38468        )?;
38469
38470        ::log::debug!("HTTP request: {:?}", &theRequest);
38471
38472        let theResponse = self.client.execute(theRequest)?;
38473
38474        ::log::debug!("HTTP response: {:?}", &theResponse);
38475
38476        Ok(theResponse)
38477    }
38478
38479    /// Add a selected repository to a user secret
38480    /// 
38481    /// Adds a repository to the selected repositories for a user's codespace secret.
38482    /// You must authenticate using an access token with the `codespace` or `codespace:secrets` scope to use this endpoint. User must have Codespaces access to use this endpoint.
38483    /// GitHub Apps must have write access to the `codespaces_user_secrets` user permission and write access to the `codespaces_secrets` repository permission on the referenced repository to use this endpoint.
38484    /// 
38485    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#add-a-selected-repository-to-a-user-secret)
38486    pub fn codespaces_add_repository_for_secret_for_authenticated_user(
38487        &self,
38488        secret_name: &str,
38489        repository_id: i64,
38490    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38491        let mut theScheme = AuthScheme::from(&self.config.authentication);
38492
38493        while let Some(auth_step) = theScheme.step()? {
38494            match auth_step {
38495                ::authentic::AuthenticationStep::Request(auth_request) => {
38496                    theScheme.respond(self.client.execute(auth_request));
38497                }
38498                ::authentic::AuthenticationStep::WaitFor(duration) => {
38499                    (self.sleep)(duration);
38500                }
38501            }
38502        }
38503        let theBuilder = crate::v1_1_4::request::codespaces_add_repository_for_secret_for_authenticated_user::reqwest_blocking_builder(
38504            self.config.base_url.as_ref(),
38505            secret_name,
38506            repository_id,
38507            self.config.user_agent.as_ref(),
38508            self.config.accept.as_deref(),
38509        )?
38510        .with_authentication(&theScheme)?;
38511
38512        let theRequest =
38513            crate::v1_1_4::request::codespaces_add_repository_for_secret_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38514
38515        ::log::debug!("HTTP request: {:?}", &theRequest);
38516
38517        let theResponse = self.client.execute(theRequest)?;
38518
38519        ::log::debug!("HTTP response: {:?}", &theResponse);
38520
38521        Ok(theResponse)
38522    }
38523
38524    /// Remove a selected repository from a user secret
38525    /// 
38526    /// Removes a repository from the selected repositories for a user's codespace secret.
38527    /// You must authenticate using an access token with the `codespace` or `codespace:secrets` scope to use this endpoint. User must have Codespaces access to use this endpoint.
38528    /// GitHub Apps must have write access to the `codespaces_user_secrets` user permission to use this endpoint.
38529    /// 
38530    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#remove-a-selected-repository-from-a-user-secret)
38531    pub fn codespaces_remove_repository_for_secret_for_authenticated_user(
38532        &self,
38533        secret_name: &str,
38534        repository_id: i64,
38535    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38536        let mut theScheme = AuthScheme::from(&self.config.authentication);
38537
38538        while let Some(auth_step) = theScheme.step()? {
38539            match auth_step {
38540                ::authentic::AuthenticationStep::Request(auth_request) => {
38541                    theScheme.respond(self.client.execute(auth_request));
38542                }
38543                ::authentic::AuthenticationStep::WaitFor(duration) => {
38544                    (self.sleep)(duration);
38545                }
38546            }
38547        }
38548        let theBuilder = crate::v1_1_4::request::codespaces_remove_repository_for_secret_for_authenticated_user::reqwest_blocking_builder(
38549            self.config.base_url.as_ref(),
38550            secret_name,
38551            repository_id,
38552            self.config.user_agent.as_ref(),
38553            self.config.accept.as_deref(),
38554        )?
38555        .with_authentication(&theScheme)?;
38556
38557        let theRequest =
38558            crate::v1_1_4::request::codespaces_remove_repository_for_secret_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38559
38560        ::log::debug!("HTTP request: {:?}", &theRequest);
38561
38562        let theResponse = self.client.execute(theRequest)?;
38563
38564        ::log::debug!("HTTP response: {:?}", &theResponse);
38565
38566        Ok(theResponse)
38567    }
38568
38569    /// Get a codespace for the authenticated user
38570    /// 
38571    /// Gets information about a user's codespace.
38572    /// 
38573    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
38574    /// 
38575    /// GitHub Apps must have read access to the `codespaces` repository permission to use this endpoint.
38576    /// 
38577    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#get-a-codespace-for-the-authenticated-user)
38578    pub fn codespaces_get_for_authenticated_user(
38579        &self,
38580        codespace_name: &str,
38581    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38582        let mut theScheme = AuthScheme::from(&self.config.authentication);
38583
38584        while let Some(auth_step) = theScheme.step()? {
38585            match auth_step {
38586                ::authentic::AuthenticationStep::Request(auth_request) => {
38587                    theScheme.respond(self.client.execute(auth_request));
38588                }
38589                ::authentic::AuthenticationStep::WaitFor(duration) => {
38590                    (self.sleep)(duration);
38591                }
38592            }
38593        }
38594        let theBuilder = crate::v1_1_4::request::codespaces_get_for_authenticated_user::reqwest_blocking_builder(
38595            self.config.base_url.as_ref(),
38596            codespace_name,
38597            self.config.user_agent.as_ref(),
38598            self.config.accept.as_deref(),
38599        )?
38600        .with_authentication(&theScheme)?;
38601
38602        let theRequest =
38603            crate::v1_1_4::request::codespaces_get_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38604
38605        ::log::debug!("HTTP request: {:?}", &theRequest);
38606
38607        let theResponse = self.client.execute(theRequest)?;
38608
38609        ::log::debug!("HTTP response: {:?}", &theResponse);
38610
38611        Ok(theResponse)
38612    }
38613
38614    /// Delete a codespace for the authenticated user
38615    /// 
38616    /// Deletes a user's codespace.
38617    /// 
38618    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
38619    /// 
38620    /// GitHub Apps must have write access to the `codespaces` repository permission to use this endpoint.
38621    /// 
38622    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#delete-a-codespace-for-the-authenticated-user)
38623    pub fn codespaces_delete_for_authenticated_user(
38624        &self,
38625        codespace_name: &str,
38626    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38627        let mut theScheme = AuthScheme::from(&self.config.authentication);
38628
38629        while let Some(auth_step) = theScheme.step()? {
38630            match auth_step {
38631                ::authentic::AuthenticationStep::Request(auth_request) => {
38632                    theScheme.respond(self.client.execute(auth_request));
38633                }
38634                ::authentic::AuthenticationStep::WaitFor(duration) => {
38635                    (self.sleep)(duration);
38636                }
38637            }
38638        }
38639        let theBuilder = crate::v1_1_4::request::codespaces_delete_for_authenticated_user::reqwest_blocking_builder(
38640            self.config.base_url.as_ref(),
38641            codespace_name,
38642            self.config.user_agent.as_ref(),
38643            self.config.accept.as_deref(),
38644        )?
38645        .with_authentication(&theScheme)?;
38646
38647        let theRequest =
38648            crate::v1_1_4::request::codespaces_delete_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38649
38650        ::log::debug!("HTTP request: {:?}", &theRequest);
38651
38652        let theResponse = self.client.execute(theRequest)?;
38653
38654        ::log::debug!("HTTP response: {:?}", &theResponse);
38655
38656        Ok(theResponse)
38657    }
38658
38659    /// Update a codespace for the authenticated user
38660    /// 
38661    /// Updates a codespace owned by the authenticated user. Currently only the codespace's machine type and recent folders can be modified using this endpoint.
38662    /// 
38663    /// If you specify a new machine type it will be applied the next time your codespace is started.
38664    /// 
38665    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
38666    /// 
38667    /// GitHub Apps must have write access to the `codespaces` repository permission to use this endpoint.
38668    /// 
38669    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#update-a-codespace-for-the-authenticated-user)
38670    ///
38671    /// # Content
38672    ///
38673    /// - [`&v1_1_4::request::codespaces_update_for_authenticated_user::body::Json`](crate::v1_1_4::request::codespaces_update_for_authenticated_user::body::Json)
38674    pub fn codespaces_update_for_authenticated_user<Content>(
38675        &self,
38676        codespace_name: &str,
38677        theContent: Content,
38678    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
38679    where
38680        Content: Copy + TryInto<crate::v1_1_4::request::codespaces_update_for_authenticated_user::Content<::reqwest::blocking::Body>>,
38681        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::codespaces_update_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
38682    {
38683        let mut theScheme = AuthScheme::from(&self.config.authentication);
38684
38685        while let Some(auth_step) = theScheme.step()? {
38686            match auth_step {
38687                ::authentic::AuthenticationStep::Request(auth_request) => {
38688                    theScheme.respond(self.client.execute(auth_request));
38689                }
38690                ::authentic::AuthenticationStep::WaitFor(duration) => {
38691                    (self.sleep)(duration);
38692                }
38693            }
38694        }
38695        let theBuilder = crate::v1_1_4::request::codespaces_update_for_authenticated_user::reqwest_blocking_builder(
38696            self.config.base_url.as_ref(),
38697            codespace_name,
38698            self.config.user_agent.as_ref(),
38699            self.config.accept.as_deref(),
38700        )?
38701        .with_authentication(&theScheme)?;
38702
38703        let theRequest = crate::v1_1_4::request::codespaces_update_for_authenticated_user::reqwest_blocking_request(
38704            theBuilder,
38705            theContent.try_into()?,
38706        )?;
38707
38708        ::log::debug!("HTTP request: {:?}", &theRequest);
38709
38710        let theResponse = self.client.execute(theRequest)?;
38711
38712        ::log::debug!("HTTP response: {:?}", &theResponse);
38713
38714        Ok(theResponse)
38715    }
38716
38717    /// Export a codespace for the authenticated user
38718    /// 
38719    /// Triggers an export of the specified codespace and returns a URL and ID where the status of the export can be monitored.
38720    /// 
38721    /// You must authenticate using a personal access token with the `codespace` scope to use this endpoint.
38722    /// 
38723    /// GitHub Apps must have write access to the `codespaces_lifecycle_admin` repository permission to use this endpoint.
38724    pub fn codespaces_export_for_authenticated_user(
38725        &self,
38726        codespace_name: &str,
38727    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38728        let mut theScheme = AuthScheme::from(&self.config.authentication);
38729
38730        while let Some(auth_step) = theScheme.step()? {
38731            match auth_step {
38732                ::authentic::AuthenticationStep::Request(auth_request) => {
38733                    theScheme.respond(self.client.execute(auth_request));
38734                }
38735                ::authentic::AuthenticationStep::WaitFor(duration) => {
38736                    (self.sleep)(duration);
38737                }
38738            }
38739        }
38740        let theBuilder = crate::v1_1_4::request::codespaces_export_for_authenticated_user::reqwest_blocking_builder(
38741            self.config.base_url.as_ref(),
38742            codespace_name,
38743            self.config.user_agent.as_ref(),
38744            self.config.accept.as_deref(),
38745        )?
38746        .with_authentication(&theScheme)?;
38747
38748        let theRequest =
38749            crate::v1_1_4::request::codespaces_export_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38750
38751        ::log::debug!("HTTP request: {:?}", &theRequest);
38752
38753        let theResponse = self.client.execute(theRequest)?;
38754
38755        ::log::debug!("HTTP response: {:?}", &theResponse);
38756
38757        Ok(theResponse)
38758    }
38759
38760    /// Get details about a codespace export
38761    /// 
38762    /// Gets information about an export of a codespace.
38763    /// 
38764    /// You must authenticate using a personal access token with the `codespace` scope to use this endpoint.
38765    /// 
38766    /// GitHub Apps must have read access to the `codespaces_lifecycle_admin` repository permission to use this endpoint.
38767    pub fn codespaces_get_export_details_for_authenticated_user(
38768        &self,
38769        codespace_name: &str,
38770        export_id: &str,
38771    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38772        let mut theScheme = AuthScheme::from(&self.config.authentication);
38773
38774        while let Some(auth_step) = theScheme.step()? {
38775            match auth_step {
38776                ::authentic::AuthenticationStep::Request(auth_request) => {
38777                    theScheme.respond(self.client.execute(auth_request));
38778                }
38779                ::authentic::AuthenticationStep::WaitFor(duration) => {
38780                    (self.sleep)(duration);
38781                }
38782            }
38783        }
38784        let theBuilder = crate::v1_1_4::request::codespaces_get_export_details_for_authenticated_user::reqwest_blocking_builder(
38785            self.config.base_url.as_ref(),
38786            codespace_name,
38787            export_id,
38788            self.config.user_agent.as_ref(),
38789            self.config.accept.as_deref(),
38790        )?
38791        .with_authentication(&theScheme)?;
38792
38793        let theRequest =
38794            crate::v1_1_4::request::codespaces_get_export_details_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38795
38796        ::log::debug!("HTTP request: {:?}", &theRequest);
38797
38798        let theResponse = self.client.execute(theRequest)?;
38799
38800        ::log::debug!("HTTP response: {:?}", &theResponse);
38801
38802        Ok(theResponse)
38803    }
38804
38805    /// List machine types for a codespace
38806    /// 
38807    /// List the machine types a codespace can transition to use.
38808    /// 
38809    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
38810    /// 
38811    /// GitHub Apps must have read access to the `codespaces_metadata` repository permission to use this endpoint.
38812    /// 
38813    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#list-machine-types-for-a-codespace)
38814    pub fn codespaces_codespace_machines_for_authenticated_user(
38815        &self,
38816        codespace_name: &str,
38817    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38818        let mut theScheme = AuthScheme::from(&self.config.authentication);
38819
38820        while let Some(auth_step) = theScheme.step()? {
38821            match auth_step {
38822                ::authentic::AuthenticationStep::Request(auth_request) => {
38823                    theScheme.respond(self.client.execute(auth_request));
38824                }
38825                ::authentic::AuthenticationStep::WaitFor(duration) => {
38826                    (self.sleep)(duration);
38827                }
38828            }
38829        }
38830        let theBuilder = crate::v1_1_4::request::codespaces_codespace_machines_for_authenticated_user::reqwest_blocking_builder(
38831            self.config.base_url.as_ref(),
38832            codespace_name,
38833            self.config.user_agent.as_ref(),
38834            self.config.accept.as_deref(),
38835        )?
38836        .with_authentication(&theScheme)?;
38837
38838        let theRequest =
38839            crate::v1_1_4::request::codespaces_codespace_machines_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38840
38841        ::log::debug!("HTTP request: {:?}", &theRequest);
38842
38843        let theResponse = self.client.execute(theRequest)?;
38844
38845        ::log::debug!("HTTP response: {:?}", &theResponse);
38846
38847        Ok(theResponse)
38848    }
38849
38850    /// Start a codespace for the authenticated user
38851    /// 
38852    /// Starts a user's codespace.
38853    /// 
38854    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
38855    /// 
38856    /// GitHub Apps must have write access to the `codespaces_lifecycle_admin` repository permission to use this endpoint.
38857    /// 
38858    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#start-a-codespace-for-the-authenticated-user)
38859    pub fn codespaces_start_for_authenticated_user(
38860        &self,
38861        codespace_name: &str,
38862    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38863        let mut theScheme = AuthScheme::from(&self.config.authentication);
38864
38865        while let Some(auth_step) = theScheme.step()? {
38866            match auth_step {
38867                ::authentic::AuthenticationStep::Request(auth_request) => {
38868                    theScheme.respond(self.client.execute(auth_request));
38869                }
38870                ::authentic::AuthenticationStep::WaitFor(duration) => {
38871                    (self.sleep)(duration);
38872                }
38873            }
38874        }
38875        let theBuilder = crate::v1_1_4::request::codespaces_start_for_authenticated_user::reqwest_blocking_builder(
38876            self.config.base_url.as_ref(),
38877            codespace_name,
38878            self.config.user_agent.as_ref(),
38879            self.config.accept.as_deref(),
38880        )?
38881        .with_authentication(&theScheme)?;
38882
38883        let theRequest =
38884            crate::v1_1_4::request::codespaces_start_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38885
38886        ::log::debug!("HTTP request: {:?}", &theRequest);
38887
38888        let theResponse = self.client.execute(theRequest)?;
38889
38890        ::log::debug!("HTTP response: {:?}", &theResponse);
38891
38892        Ok(theResponse)
38893    }
38894
38895    /// Stop a codespace for the authenticated user
38896    /// 
38897    /// Stops a user's codespace.
38898    /// 
38899    /// You must authenticate using an access token with the `codespace` scope to use this endpoint.
38900    /// 
38901    /// GitHub Apps must have write access to the `codespaces_lifecycle_admin` repository permission to use this endpoint.
38902    /// 
38903    /// [API method documentation](https://docs.github.com/rest/reference/codespaces#stop-a-codespace-for-the-authenticated-user)
38904    pub fn codespaces_stop_for_authenticated_user(
38905        &self,
38906        codespace_name: &str,
38907    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
38908        let mut theScheme = AuthScheme::from(&self.config.authentication);
38909
38910        while let Some(auth_step) = theScheme.step()? {
38911            match auth_step {
38912                ::authentic::AuthenticationStep::Request(auth_request) => {
38913                    theScheme.respond(self.client.execute(auth_request));
38914                }
38915                ::authentic::AuthenticationStep::WaitFor(duration) => {
38916                    (self.sleep)(duration);
38917                }
38918            }
38919        }
38920        let theBuilder = crate::v1_1_4::request::codespaces_stop_for_authenticated_user::reqwest_blocking_builder(
38921            self.config.base_url.as_ref(),
38922            codespace_name,
38923            self.config.user_agent.as_ref(),
38924            self.config.accept.as_deref(),
38925        )?
38926        .with_authentication(&theScheme)?;
38927
38928        let theRequest =
38929            crate::v1_1_4::request::codespaces_stop_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
38930
38931        ::log::debug!("HTTP request: {:?}", &theRequest);
38932
38933        let theResponse = self.client.execute(theRequest)?;
38934
38935        ::log::debug!("HTTP response: {:?}", &theResponse);
38936
38937        Ok(theResponse)
38938    }
38939
38940    /// Set primary email visibility for the authenticated user
38941    /// 
38942    /// Sets the visibility for your primary email addresses.
38943    /// 
38944    /// [API method documentation](https://docs.github.com/rest/reference/users#set-primary-email-visibility-for-the-authenticated-user)
38945    ///
38946    /// # Content
38947    ///
38948    /// - [`&v1_1_4::request::users_set_primary_email_visibility_for_authenticated_user::body::Json`](crate::v1_1_4::request::users_set_primary_email_visibility_for_authenticated_user::body::Json)
38949    pub fn users_set_primary_email_visibility_for_authenticated_user<Content>(
38950        &self,
38951        theContent: Content,
38952    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
38953    where
38954        Content: Copy + TryInto<crate::v1_1_4::request::users_set_primary_email_visibility_for_authenticated_user::Content<::reqwest::blocking::Body>>,
38955        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::users_set_primary_email_visibility_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
38956    {
38957        let mut theScheme = AuthScheme::from(&self.config.authentication);
38958
38959        while let Some(auth_step) = theScheme.step()? {
38960            match auth_step {
38961                ::authentic::AuthenticationStep::Request(auth_request) => {
38962                    theScheme.respond(self.client.execute(auth_request));
38963                }
38964                ::authentic::AuthenticationStep::WaitFor(duration) => {
38965                    (self.sleep)(duration);
38966                }
38967            }
38968        }
38969        let theBuilder = crate::v1_1_4::request::users_set_primary_email_visibility_for_authenticated_user::reqwest_blocking_builder(
38970            self.config.base_url.as_ref(),
38971            self.config.user_agent.as_ref(),
38972            self.config.accept.as_deref(),
38973        )?
38974        .with_authentication(&theScheme)?;
38975
38976        let theRequest = crate::v1_1_4::request::users_set_primary_email_visibility_for_authenticated_user::reqwest_blocking_request(
38977            theBuilder,
38978            theContent.try_into()?,
38979        )?;
38980
38981        ::log::debug!("HTTP request: {:?}", &theRequest);
38982
38983        let theResponse = self.client.execute(theRequest)?;
38984
38985        ::log::debug!("HTTP response: {:?}", &theResponse);
38986
38987        Ok(theResponse)
38988    }
38989
38990    /// List email addresses for the authenticated user
38991    /// 
38992    /// Lists all of your email addresses, and specifies which one is visible to the public. This endpoint is accessible with the `user:email` scope.
38993    /// 
38994    /// [API method documentation](https://docs.github.com/rest/reference/users#list-email-addresses-for-the-authenticated-user)
38995    pub fn users_list_emails_for_authenticated_user(
38996        &self,
38997        per_page: ::std::option::Option<i64>,
38998        page: ::std::option::Option<i64>,
38999    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39000        let mut theScheme = AuthScheme::from(&self.config.authentication);
39001
39002        while let Some(auth_step) = theScheme.step()? {
39003            match auth_step {
39004                ::authentic::AuthenticationStep::Request(auth_request) => {
39005                    theScheme.respond(self.client.execute(auth_request));
39006                }
39007                ::authentic::AuthenticationStep::WaitFor(duration) => {
39008                    (self.sleep)(duration);
39009                }
39010            }
39011        }
39012        let theBuilder = crate::v1_1_4::request::users_list_emails_for_authenticated_user::reqwest_blocking_builder(
39013            self.config.base_url.as_ref(),
39014            per_page,
39015            page,
39016            self.config.user_agent.as_ref(),
39017            self.config.accept.as_deref(),
39018        )?
39019        .with_authentication(&theScheme)?;
39020
39021        let theRequest =
39022            crate::v1_1_4::request::users_list_emails_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39023
39024        ::log::debug!("HTTP request: {:?}", &theRequest);
39025
39026        let theResponse = self.client.execute(theRequest)?;
39027
39028        ::log::debug!("HTTP response: {:?}", &theResponse);
39029
39030        Ok(theResponse)
39031    }
39032
39033    /// Add an email address for the authenticated user
39034    /// 
39035    /// This endpoint is accessible with the `user` scope.
39036    /// 
39037    /// [API method documentation](https://docs.github.com/rest/reference/users#add-an-email-address-for-the-authenticated-user)
39038    ///
39039    /// # Content
39040    ///
39041    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
39042    pub fn users_add_email_for_authenticated_user<Content>(
39043        &self,
39044        theContent: Content,
39045    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
39046    where
39047        Content: Copy + TryInto<crate::v1_1_4::request::users_add_email_for_authenticated_user::Content<::reqwest::blocking::Body>>,
39048        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::users_add_email_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
39049    {
39050        let mut theScheme = AuthScheme::from(&self.config.authentication);
39051
39052        while let Some(auth_step) = theScheme.step()? {
39053            match auth_step {
39054                ::authentic::AuthenticationStep::Request(auth_request) => {
39055                    theScheme.respond(self.client.execute(auth_request));
39056                }
39057                ::authentic::AuthenticationStep::WaitFor(duration) => {
39058                    (self.sleep)(duration);
39059                }
39060            }
39061        }
39062        let theBuilder = crate::v1_1_4::request::users_add_email_for_authenticated_user::reqwest_blocking_builder(
39063            self.config.base_url.as_ref(),
39064            self.config.user_agent.as_ref(),
39065            self.config.accept.as_deref(),
39066        )?
39067        .with_authentication(&theScheme)?;
39068
39069        let theRequest = crate::v1_1_4::request::users_add_email_for_authenticated_user::reqwest_blocking_request(
39070            theBuilder,
39071            theContent.try_into()?,
39072        )?;
39073
39074        ::log::debug!("HTTP request: {:?}", &theRequest);
39075
39076        let theResponse = self.client.execute(theRequest)?;
39077
39078        ::log::debug!("HTTP response: {:?}", &theResponse);
39079
39080        Ok(theResponse)
39081    }
39082
39083    /// Delete an email address for the authenticated user
39084    /// 
39085    /// This endpoint is accessible with the `user` scope.
39086    /// 
39087    /// [API method documentation](https://docs.github.com/rest/reference/users#delete-an-email-address-for-the-authenticated-user)
39088    ///
39089    /// # Content
39090    ///
39091    /// - [`&::serde_json::value::Value`](::serde_json::value::Value)
39092    pub fn users_delete_email_for_authenticated_user<Content>(
39093        &self,
39094        theContent: Content,
39095    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
39096    where
39097        Content: Copy + TryInto<crate::v1_1_4::request::users_delete_email_for_authenticated_user::Content<::reqwest::blocking::Body>>,
39098        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::users_delete_email_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
39099    {
39100        let mut theScheme = AuthScheme::from(&self.config.authentication);
39101
39102        while let Some(auth_step) = theScheme.step()? {
39103            match auth_step {
39104                ::authentic::AuthenticationStep::Request(auth_request) => {
39105                    theScheme.respond(self.client.execute(auth_request));
39106                }
39107                ::authentic::AuthenticationStep::WaitFor(duration) => {
39108                    (self.sleep)(duration);
39109                }
39110            }
39111        }
39112        let theBuilder = crate::v1_1_4::request::users_delete_email_for_authenticated_user::reqwest_blocking_builder(
39113            self.config.base_url.as_ref(),
39114            self.config.user_agent.as_ref(),
39115            self.config.accept.as_deref(),
39116        )?
39117        .with_authentication(&theScheme)?;
39118
39119        let theRequest = crate::v1_1_4::request::users_delete_email_for_authenticated_user::reqwest_blocking_request(
39120            theBuilder,
39121            theContent.try_into()?,
39122        )?;
39123
39124        ::log::debug!("HTTP request: {:?}", &theRequest);
39125
39126        let theResponse = self.client.execute(theRequest)?;
39127
39128        ::log::debug!("HTTP response: {:?}", &theResponse);
39129
39130        Ok(theResponse)
39131    }
39132
39133    /// List followers of the authenticated user
39134    /// 
39135    /// Lists the people following the authenticated user.
39136    /// 
39137    /// [API method documentation](https://docs.github.com/rest/reference/users#list-followers-of-the-authenticated-user)
39138    pub fn users_list_followers_for_authenticated_user(
39139        &self,
39140        per_page: ::std::option::Option<i64>,
39141        page: ::std::option::Option<i64>,
39142    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39143        let mut theScheme = AuthScheme::from(&self.config.authentication);
39144
39145        while let Some(auth_step) = theScheme.step()? {
39146            match auth_step {
39147                ::authentic::AuthenticationStep::Request(auth_request) => {
39148                    theScheme.respond(self.client.execute(auth_request));
39149                }
39150                ::authentic::AuthenticationStep::WaitFor(duration) => {
39151                    (self.sleep)(duration);
39152                }
39153            }
39154        }
39155        let theBuilder = crate::v1_1_4::request::users_list_followers_for_authenticated_user::reqwest_blocking_builder(
39156            self.config.base_url.as_ref(),
39157            per_page,
39158            page,
39159            self.config.user_agent.as_ref(),
39160            self.config.accept.as_deref(),
39161        )?
39162        .with_authentication(&theScheme)?;
39163
39164        let theRequest =
39165            crate::v1_1_4::request::users_list_followers_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39166
39167        ::log::debug!("HTTP request: {:?}", &theRequest);
39168
39169        let theResponse = self.client.execute(theRequest)?;
39170
39171        ::log::debug!("HTTP response: {:?}", &theResponse);
39172
39173        Ok(theResponse)
39174    }
39175
39176    /// List the people the authenticated user follows
39177    /// 
39178    /// Lists the people who the authenticated user follows.
39179    /// 
39180    /// [API method documentation](https://docs.github.com/rest/reference/users#list-the-people-the-authenticated-user-follows)
39181    pub fn users_list_followed_by_authenticated_user(
39182        &self,
39183        per_page: ::std::option::Option<i64>,
39184        page: ::std::option::Option<i64>,
39185    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39186        let mut theScheme = AuthScheme::from(&self.config.authentication);
39187
39188        while let Some(auth_step) = theScheme.step()? {
39189            match auth_step {
39190                ::authentic::AuthenticationStep::Request(auth_request) => {
39191                    theScheme.respond(self.client.execute(auth_request));
39192                }
39193                ::authentic::AuthenticationStep::WaitFor(duration) => {
39194                    (self.sleep)(duration);
39195                }
39196            }
39197        }
39198        let theBuilder = crate::v1_1_4::request::users_list_followed_by_authenticated_user::reqwest_blocking_builder(
39199            self.config.base_url.as_ref(),
39200            per_page,
39201            page,
39202            self.config.user_agent.as_ref(),
39203            self.config.accept.as_deref(),
39204        )?
39205        .with_authentication(&theScheme)?;
39206
39207        let theRequest =
39208            crate::v1_1_4::request::users_list_followed_by_authenticated_user::reqwest_blocking_request(theBuilder)?;
39209
39210        ::log::debug!("HTTP request: {:?}", &theRequest);
39211
39212        let theResponse = self.client.execute(theRequest)?;
39213
39214        ::log::debug!("HTTP response: {:?}", &theResponse);
39215
39216        Ok(theResponse)
39217    }
39218
39219    /// Check if a person is followed by the authenticated user
39220    /// 
39221    /// [API method documentation](https://docs.github.com/rest/reference/users#check-if-a-person-is-followed-by-the-authenticated-user)
39222    pub fn users_check_person_is_followed_by_authenticated(
39223        &self,
39224        username: &str,
39225    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39226        let mut theScheme = AuthScheme::from(&self.config.authentication);
39227
39228        while let Some(auth_step) = theScheme.step()? {
39229            match auth_step {
39230                ::authentic::AuthenticationStep::Request(auth_request) => {
39231                    theScheme.respond(self.client.execute(auth_request));
39232                }
39233                ::authentic::AuthenticationStep::WaitFor(duration) => {
39234                    (self.sleep)(duration);
39235                }
39236            }
39237        }
39238        let theBuilder = crate::v1_1_4::request::users_check_person_is_followed_by_authenticated::reqwest_blocking_builder(
39239            self.config.base_url.as_ref(),
39240            username,
39241            self.config.user_agent.as_ref(),
39242            self.config.accept.as_deref(),
39243        )?
39244        .with_authentication(&theScheme)?;
39245
39246        let theRequest =
39247            crate::v1_1_4::request::users_check_person_is_followed_by_authenticated::reqwest_blocking_request(theBuilder)?;
39248
39249        ::log::debug!("HTTP request: {:?}", &theRequest);
39250
39251        let theResponse = self.client.execute(theRequest)?;
39252
39253        ::log::debug!("HTTP response: {:?}", &theResponse);
39254
39255        Ok(theResponse)
39256    }
39257
39258    /// Follow a user
39259    /// 
39260    /// Note that you'll need to set `Content-Length` to zero when calling out to this endpoint. For more information, see "[HTTP verbs](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-verbs)."
39261    /// 
39262    /// Following a user requires the user to be logged in and authenticated with basic auth or OAuth with the `user:follow` scope.
39263    /// 
39264    /// [API method documentation](https://docs.github.com/rest/reference/users#follow-a-user)
39265    pub fn users_follow(
39266        &self,
39267        username: &str,
39268    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39269        let mut theScheme = AuthScheme::from(&self.config.authentication);
39270
39271        while let Some(auth_step) = theScheme.step()? {
39272            match auth_step {
39273                ::authentic::AuthenticationStep::Request(auth_request) => {
39274                    theScheme.respond(self.client.execute(auth_request));
39275                }
39276                ::authentic::AuthenticationStep::WaitFor(duration) => {
39277                    (self.sleep)(duration);
39278                }
39279            }
39280        }
39281        let theBuilder = crate::v1_1_4::request::users_follow::reqwest_blocking_builder(
39282            self.config.base_url.as_ref(),
39283            username,
39284            self.config.user_agent.as_ref(),
39285            self.config.accept.as_deref(),
39286        )?
39287        .with_authentication(&theScheme)?;
39288
39289        let theRequest =
39290            crate::v1_1_4::request::users_follow::reqwest_blocking_request(theBuilder)?;
39291
39292        ::log::debug!("HTTP request: {:?}", &theRequest);
39293
39294        let theResponse = self.client.execute(theRequest)?;
39295
39296        ::log::debug!("HTTP response: {:?}", &theResponse);
39297
39298        Ok(theResponse)
39299    }
39300
39301    /// Unfollow a user
39302    /// 
39303    /// Unfollowing a user requires the user to be logged in and authenticated with basic auth or OAuth with the `user:follow` scope.
39304    /// 
39305    /// [API method documentation](https://docs.github.com/rest/reference/users#unfollow-a-user)
39306    pub fn users_unfollow(
39307        &self,
39308        username: &str,
39309    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39310        let mut theScheme = AuthScheme::from(&self.config.authentication);
39311
39312        while let Some(auth_step) = theScheme.step()? {
39313            match auth_step {
39314                ::authentic::AuthenticationStep::Request(auth_request) => {
39315                    theScheme.respond(self.client.execute(auth_request));
39316                }
39317                ::authentic::AuthenticationStep::WaitFor(duration) => {
39318                    (self.sleep)(duration);
39319                }
39320            }
39321        }
39322        let theBuilder = crate::v1_1_4::request::users_unfollow::reqwest_blocking_builder(
39323            self.config.base_url.as_ref(),
39324            username,
39325            self.config.user_agent.as_ref(),
39326            self.config.accept.as_deref(),
39327        )?
39328        .with_authentication(&theScheme)?;
39329
39330        let theRequest =
39331            crate::v1_1_4::request::users_unfollow::reqwest_blocking_request(theBuilder)?;
39332
39333        ::log::debug!("HTTP request: {:?}", &theRequest);
39334
39335        let theResponse = self.client.execute(theRequest)?;
39336
39337        ::log::debug!("HTTP response: {:?}", &theResponse);
39338
39339        Ok(theResponse)
39340    }
39341
39342    /// List GPG keys for the authenticated user
39343    /// 
39344    /// Lists the current user's GPG keys. Requires that you are authenticated via Basic Auth or via OAuth with at least `read:gpg_key` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
39345    /// 
39346    /// [API method documentation](https://docs.github.com/rest/reference/users#list-gpg-keys-for-the-authenticated-user)
39347    pub fn users_list_gpg_keys_for_authenticated_user(
39348        &self,
39349        per_page: ::std::option::Option<i64>,
39350        page: ::std::option::Option<i64>,
39351    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39352        let mut theScheme = AuthScheme::from(&self.config.authentication);
39353
39354        while let Some(auth_step) = theScheme.step()? {
39355            match auth_step {
39356                ::authentic::AuthenticationStep::Request(auth_request) => {
39357                    theScheme.respond(self.client.execute(auth_request));
39358                }
39359                ::authentic::AuthenticationStep::WaitFor(duration) => {
39360                    (self.sleep)(duration);
39361                }
39362            }
39363        }
39364        let theBuilder = crate::v1_1_4::request::users_list_gpg_keys_for_authenticated_user::reqwest_blocking_builder(
39365            self.config.base_url.as_ref(),
39366            per_page,
39367            page,
39368            self.config.user_agent.as_ref(),
39369            self.config.accept.as_deref(),
39370        )?
39371        .with_authentication(&theScheme)?;
39372
39373        let theRequest =
39374            crate::v1_1_4::request::users_list_gpg_keys_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39375
39376        ::log::debug!("HTTP request: {:?}", &theRequest);
39377
39378        let theResponse = self.client.execute(theRequest)?;
39379
39380        ::log::debug!("HTTP response: {:?}", &theResponse);
39381
39382        Ok(theResponse)
39383    }
39384
39385    /// Create a GPG key for the authenticated user
39386    /// 
39387    /// Adds a GPG key to the authenticated user's GitHub account. Requires that you are authenticated via Basic Auth, or OAuth with at least `write:gpg_key` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
39388    /// 
39389    /// [API method documentation](https://docs.github.com/rest/reference/users#create-a-gpg-key-for-the-authenticated-user)
39390    ///
39391    /// # Content
39392    ///
39393    /// - [`&v1_1_4::request::users_create_gpg_key_for_authenticated_user::body::Json`](crate::v1_1_4::request::users_create_gpg_key_for_authenticated_user::body::Json)
39394    pub fn users_create_gpg_key_for_authenticated_user<Content>(
39395        &self,
39396        theContent: Content,
39397    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
39398    where
39399        Content: Copy + TryInto<crate::v1_1_4::request::users_create_gpg_key_for_authenticated_user::Content<::reqwest::blocking::Body>>,
39400        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::users_create_gpg_key_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
39401    {
39402        let mut theScheme = AuthScheme::from(&self.config.authentication);
39403
39404        while let Some(auth_step) = theScheme.step()? {
39405            match auth_step {
39406                ::authentic::AuthenticationStep::Request(auth_request) => {
39407                    theScheme.respond(self.client.execute(auth_request));
39408                }
39409                ::authentic::AuthenticationStep::WaitFor(duration) => {
39410                    (self.sleep)(duration);
39411                }
39412            }
39413        }
39414        let theBuilder = crate::v1_1_4::request::users_create_gpg_key_for_authenticated_user::reqwest_blocking_builder(
39415            self.config.base_url.as_ref(),
39416            self.config.user_agent.as_ref(),
39417            self.config.accept.as_deref(),
39418        )?
39419        .with_authentication(&theScheme)?;
39420
39421        let theRequest = crate::v1_1_4::request::users_create_gpg_key_for_authenticated_user::reqwest_blocking_request(
39422            theBuilder,
39423            theContent.try_into()?,
39424        )?;
39425
39426        ::log::debug!("HTTP request: {:?}", &theRequest);
39427
39428        let theResponse = self.client.execute(theRequest)?;
39429
39430        ::log::debug!("HTTP response: {:?}", &theResponse);
39431
39432        Ok(theResponse)
39433    }
39434
39435    /// Get a GPG key for the authenticated user
39436    /// 
39437    /// View extended details for a single GPG key. Requires that you are authenticated via Basic Auth or via OAuth with at least `read:gpg_key` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
39438    /// 
39439    /// [API method documentation](https://docs.github.com/rest/reference/users#get-a-gpg-key-for-the-authenticated-user)
39440    pub fn users_get_gpg_key_for_authenticated_user(
39441        &self,
39442        gpg_key_id: i64,
39443    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39444        let mut theScheme = AuthScheme::from(&self.config.authentication);
39445
39446        while let Some(auth_step) = theScheme.step()? {
39447            match auth_step {
39448                ::authentic::AuthenticationStep::Request(auth_request) => {
39449                    theScheme.respond(self.client.execute(auth_request));
39450                }
39451                ::authentic::AuthenticationStep::WaitFor(duration) => {
39452                    (self.sleep)(duration);
39453                }
39454            }
39455        }
39456        let theBuilder = crate::v1_1_4::request::users_get_gpg_key_for_authenticated_user::reqwest_blocking_builder(
39457            self.config.base_url.as_ref(),
39458            gpg_key_id,
39459            self.config.user_agent.as_ref(),
39460            self.config.accept.as_deref(),
39461        )?
39462        .with_authentication(&theScheme)?;
39463
39464        let theRequest =
39465            crate::v1_1_4::request::users_get_gpg_key_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39466
39467        ::log::debug!("HTTP request: {:?}", &theRequest);
39468
39469        let theResponse = self.client.execute(theRequest)?;
39470
39471        ::log::debug!("HTTP response: {:?}", &theResponse);
39472
39473        Ok(theResponse)
39474    }
39475
39476    /// Delete a GPG key for the authenticated user
39477    /// 
39478    /// Removes a GPG key from the authenticated user's GitHub account. Requires that you are authenticated via Basic Auth or via OAuth with at least `admin:gpg_key` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
39479    /// 
39480    /// [API method documentation](https://docs.github.com/rest/reference/users#delete-a-gpg-key-for-the-authenticated-user)
39481    pub fn users_delete_gpg_key_for_authenticated_user(
39482        &self,
39483        gpg_key_id: i64,
39484    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39485        let mut theScheme = AuthScheme::from(&self.config.authentication);
39486
39487        while let Some(auth_step) = theScheme.step()? {
39488            match auth_step {
39489                ::authentic::AuthenticationStep::Request(auth_request) => {
39490                    theScheme.respond(self.client.execute(auth_request));
39491                }
39492                ::authentic::AuthenticationStep::WaitFor(duration) => {
39493                    (self.sleep)(duration);
39494                }
39495            }
39496        }
39497        let theBuilder = crate::v1_1_4::request::users_delete_gpg_key_for_authenticated_user::reqwest_blocking_builder(
39498            self.config.base_url.as_ref(),
39499            gpg_key_id,
39500            self.config.user_agent.as_ref(),
39501            self.config.accept.as_deref(),
39502        )?
39503        .with_authentication(&theScheme)?;
39504
39505        let theRequest =
39506            crate::v1_1_4::request::users_delete_gpg_key_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39507
39508        ::log::debug!("HTTP request: {:?}", &theRequest);
39509
39510        let theResponse = self.client.execute(theRequest)?;
39511
39512        ::log::debug!("HTTP response: {:?}", &theResponse);
39513
39514        Ok(theResponse)
39515    }
39516
39517    /// List app installations accessible to the user access token
39518    /// 
39519    /// Lists installations of your GitHub App that the authenticated user has explicit permission (`:read`, `:write`, or `:admin`) to access.
39520    /// 
39521    /// You must use a [user-to-server OAuth access token](https://docs.github.com/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/#identifying-users-on-your-site), created for a user who has authorized your GitHub App, to access this endpoint.
39522    /// 
39523    /// The authenticated user has explicit permission to access repositories they own, repositories where they are a collaborator, and repositories that they can access through an organization membership.
39524    /// 
39525    /// You can find the permissions for the installation under the `permissions` key.
39526    /// 
39527    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-app-installations-accessible-to-the-user-access-token)
39528    pub fn apps_list_installations_for_authenticated_user(
39529        &self,
39530        per_page: ::std::option::Option<i64>,
39531        page: ::std::option::Option<i64>,
39532    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39533        let mut theScheme = AuthScheme::from(&self.config.authentication);
39534
39535        while let Some(auth_step) = theScheme.step()? {
39536            match auth_step {
39537                ::authentic::AuthenticationStep::Request(auth_request) => {
39538                    theScheme.respond(self.client.execute(auth_request));
39539                }
39540                ::authentic::AuthenticationStep::WaitFor(duration) => {
39541                    (self.sleep)(duration);
39542                }
39543            }
39544        }
39545        let theBuilder = crate::v1_1_4::request::apps_list_installations_for_authenticated_user::reqwest_blocking_builder(
39546            self.config.base_url.as_ref(),
39547            per_page,
39548            page,
39549            self.config.user_agent.as_ref(),
39550            self.config.accept.as_deref(),
39551        )?
39552        .with_authentication(&theScheme)?;
39553
39554        let theRequest =
39555            crate::v1_1_4::request::apps_list_installations_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39556
39557        ::log::debug!("HTTP request: {:?}", &theRequest);
39558
39559        let theResponse = self.client.execute(theRequest)?;
39560
39561        ::log::debug!("HTTP response: {:?}", &theResponse);
39562
39563        Ok(theResponse)
39564    }
39565
39566    /// List repositories accessible to the user access token
39567    /// 
39568    /// List repositories that the authenticated user has explicit permission (`:read`, `:write`, or `:admin`) to access for an installation.
39569    /// 
39570    /// The authenticated user has explicit permission to access repositories they own, repositories where they are a collaborator, and repositories that they can access through an organization membership.
39571    /// 
39572    /// You must use a [user-to-server OAuth access token](https://docs.github.com/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/#identifying-users-on-your-site), created for a user who has authorized your GitHub App, to access this endpoint.
39573    /// 
39574    /// The access the user has to each repository is included in the hash under the `permissions` key.
39575    /// 
39576    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-repositories-accessible-to-the-user-access-token)
39577    pub fn apps_list_installation_repos_for_authenticated_user(
39578        &self,
39579        installation_id: i64,
39580        per_page: ::std::option::Option<i64>,
39581        page: ::std::option::Option<i64>,
39582    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39583        let mut theScheme = AuthScheme::from(&self.config.authentication);
39584
39585        while let Some(auth_step) = theScheme.step()? {
39586            match auth_step {
39587                ::authentic::AuthenticationStep::Request(auth_request) => {
39588                    theScheme.respond(self.client.execute(auth_request));
39589                }
39590                ::authentic::AuthenticationStep::WaitFor(duration) => {
39591                    (self.sleep)(duration);
39592                }
39593            }
39594        }
39595        let theBuilder = crate::v1_1_4::request::apps_list_installation_repos_for_authenticated_user::reqwest_blocking_builder(
39596            self.config.base_url.as_ref(),
39597            installation_id,
39598            per_page,
39599            page,
39600            self.config.user_agent.as_ref(),
39601            self.config.accept.as_deref(),
39602        )?
39603        .with_authentication(&theScheme)?;
39604
39605        let theRequest =
39606            crate::v1_1_4::request::apps_list_installation_repos_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39607
39608        ::log::debug!("HTTP request: {:?}", &theRequest);
39609
39610        let theResponse = self.client.execute(theRequest)?;
39611
39612        ::log::debug!("HTTP response: {:?}", &theResponse);
39613
39614        Ok(theResponse)
39615    }
39616
39617    /// Add a repository to an app installation
39618    /// 
39619    /// Add a single repository to an installation. The authenticated user must have admin access to the repository.
39620    /// 
39621    /// You must use a personal access token (which you can create via the [command line](https://docs.github.com/github/authenticating-to-github/creating-a-personal-access-token) or [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)) to access this endpoint.
39622    /// 
39623    /// [API method documentation](https://docs.github.com/rest/reference/apps#add-a-repository-to-an-app-installation)
39624    pub fn apps_add_repo_to_installation_for_authenticated_user(
39625        &self,
39626        installation_id: i64,
39627        repository_id: i64,
39628    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39629        let mut theScheme = AuthScheme::from(&self.config.authentication);
39630
39631        while let Some(auth_step) = theScheme.step()? {
39632            match auth_step {
39633                ::authentic::AuthenticationStep::Request(auth_request) => {
39634                    theScheme.respond(self.client.execute(auth_request));
39635                }
39636                ::authentic::AuthenticationStep::WaitFor(duration) => {
39637                    (self.sleep)(duration);
39638                }
39639            }
39640        }
39641        let theBuilder = crate::v1_1_4::request::apps_add_repo_to_installation_for_authenticated_user::reqwest_blocking_builder(
39642            self.config.base_url.as_ref(),
39643            installation_id,
39644            repository_id,
39645            self.config.user_agent.as_ref(),
39646            self.config.accept.as_deref(),
39647        )?
39648        .with_authentication(&theScheme)?;
39649
39650        let theRequest =
39651            crate::v1_1_4::request::apps_add_repo_to_installation_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39652
39653        ::log::debug!("HTTP request: {:?}", &theRequest);
39654
39655        let theResponse = self.client.execute(theRequest)?;
39656
39657        ::log::debug!("HTTP response: {:?}", &theResponse);
39658
39659        Ok(theResponse)
39660    }
39661
39662    /// Remove a repository from an app installation
39663    /// 
39664    /// Remove a single repository from an installation. The authenticated user must have admin access to the repository.
39665    /// 
39666    /// You must use a personal access token (which you can create via the [command line](https://docs.github.com/github/authenticating-to-github/creating-a-personal-access-token) or [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)) to access this endpoint.
39667    /// 
39668    /// [API method documentation](https://docs.github.com/rest/reference/apps#remove-a-repository-from-an-app-installation)
39669    pub fn apps_remove_repo_from_installation_for_authenticated_user(
39670        &self,
39671        installation_id: i64,
39672        repository_id: i64,
39673    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39674        let mut theScheme = AuthScheme::from(&self.config.authentication);
39675
39676        while let Some(auth_step) = theScheme.step()? {
39677            match auth_step {
39678                ::authentic::AuthenticationStep::Request(auth_request) => {
39679                    theScheme.respond(self.client.execute(auth_request));
39680                }
39681                ::authentic::AuthenticationStep::WaitFor(duration) => {
39682                    (self.sleep)(duration);
39683                }
39684            }
39685        }
39686        let theBuilder = crate::v1_1_4::request::apps_remove_repo_from_installation_for_authenticated_user::reqwest_blocking_builder(
39687            self.config.base_url.as_ref(),
39688            installation_id,
39689            repository_id,
39690            self.config.user_agent.as_ref(),
39691            self.config.accept.as_deref(),
39692        )?
39693        .with_authentication(&theScheme)?;
39694
39695        let theRequest =
39696            crate::v1_1_4::request::apps_remove_repo_from_installation_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39697
39698        ::log::debug!("HTTP request: {:?}", &theRequest);
39699
39700        let theResponse = self.client.execute(theRequest)?;
39701
39702        ::log::debug!("HTTP response: {:?}", &theResponse);
39703
39704        Ok(theResponse)
39705    }
39706
39707    /// Get interaction restrictions for your public repositories
39708    /// 
39709    /// Shows which type of GitHub user can interact with your public repositories and when the restriction expires.
39710    /// 
39711    /// [API method documentation](https://docs.github.com/rest/reference/interactions#get-interaction-restrictions-for-your-public-repositories)
39712    pub fn interactions_get_restrictions_for_authenticated_user(
39713        &self,
39714    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39715        let mut theScheme = AuthScheme::from(&self.config.authentication);
39716
39717        while let Some(auth_step) = theScheme.step()? {
39718            match auth_step {
39719                ::authentic::AuthenticationStep::Request(auth_request) => {
39720                    theScheme.respond(self.client.execute(auth_request));
39721                }
39722                ::authentic::AuthenticationStep::WaitFor(duration) => {
39723                    (self.sleep)(duration);
39724                }
39725            }
39726        }
39727        let theBuilder = crate::v1_1_4::request::interactions_get_restrictions_for_authenticated_user::reqwest_blocking_builder(
39728            self.config.base_url.as_ref(),
39729            self.config.user_agent.as_ref(),
39730            self.config.accept.as_deref(),
39731        )?
39732        .with_authentication(&theScheme)?;
39733
39734        let theRequest =
39735            crate::v1_1_4::request::interactions_get_restrictions_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39736
39737        ::log::debug!("HTTP request: {:?}", &theRequest);
39738
39739        let theResponse = self.client.execute(theRequest)?;
39740
39741        ::log::debug!("HTTP response: {:?}", &theResponse);
39742
39743        Ok(theResponse)
39744    }
39745
39746    /// Set interaction restrictions for your public repositories
39747    /// 
39748    /// Temporarily restricts which type of GitHub user can interact with your public repositories. Setting the interaction limit at the user level will overwrite any interaction limits that are set for individual repositories owned by the user.
39749    /// 
39750    /// [API method documentation](https://docs.github.com/rest/reference/interactions#set-interaction-restrictions-for-your-public-repositories)
39751    ///
39752    /// # Content
39753    ///
39754    /// - [`&v1_1_4::schema::InteractionLimit`](crate::v1_1_4::schema::InteractionLimit)
39755    pub fn interactions_set_restrictions_for_authenticated_user<Content>(
39756        &self,
39757        theContent: Content,
39758    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
39759    where
39760        Content: Copy + TryInto<crate::v1_1_4::request::interactions_set_restrictions_for_authenticated_user::Content<::reqwest::blocking::Body>>,
39761        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::interactions_set_restrictions_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
39762    {
39763        let mut theScheme = AuthScheme::from(&self.config.authentication);
39764
39765        while let Some(auth_step) = theScheme.step()? {
39766            match auth_step {
39767                ::authentic::AuthenticationStep::Request(auth_request) => {
39768                    theScheme.respond(self.client.execute(auth_request));
39769                }
39770                ::authentic::AuthenticationStep::WaitFor(duration) => {
39771                    (self.sleep)(duration);
39772                }
39773            }
39774        }
39775        let theBuilder = crate::v1_1_4::request::interactions_set_restrictions_for_authenticated_user::reqwest_blocking_builder(
39776            self.config.base_url.as_ref(),
39777            self.config.user_agent.as_ref(),
39778            self.config.accept.as_deref(),
39779        )?
39780        .with_authentication(&theScheme)?;
39781
39782        let theRequest = crate::v1_1_4::request::interactions_set_restrictions_for_authenticated_user::reqwest_blocking_request(
39783            theBuilder,
39784            theContent.try_into()?,
39785        )?;
39786
39787        ::log::debug!("HTTP request: {:?}", &theRequest);
39788
39789        let theResponse = self.client.execute(theRequest)?;
39790
39791        ::log::debug!("HTTP response: {:?}", &theResponse);
39792
39793        Ok(theResponse)
39794    }
39795
39796    /// Remove interaction restrictions from your public repositories
39797    /// 
39798    /// Removes any interaction restrictions from your public repositories.
39799    /// 
39800    /// [API method documentation](https://docs.github.com/rest/reference/interactions#remove-interaction-restrictions-from-your-public-repositories)
39801    pub fn interactions_remove_restrictions_for_authenticated_user(
39802        &self,
39803    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39804        let mut theScheme = AuthScheme::from(&self.config.authentication);
39805
39806        while let Some(auth_step) = theScheme.step()? {
39807            match auth_step {
39808                ::authentic::AuthenticationStep::Request(auth_request) => {
39809                    theScheme.respond(self.client.execute(auth_request));
39810                }
39811                ::authentic::AuthenticationStep::WaitFor(duration) => {
39812                    (self.sleep)(duration);
39813                }
39814            }
39815        }
39816        let theBuilder = crate::v1_1_4::request::interactions_remove_restrictions_for_authenticated_user::reqwest_blocking_builder(
39817            self.config.base_url.as_ref(),
39818            self.config.user_agent.as_ref(),
39819            self.config.accept.as_deref(),
39820        )?
39821        .with_authentication(&theScheme)?;
39822
39823        let theRequest =
39824            crate::v1_1_4::request::interactions_remove_restrictions_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39825
39826        ::log::debug!("HTTP request: {:?}", &theRequest);
39827
39828        let theResponse = self.client.execute(theRequest)?;
39829
39830        ::log::debug!("HTTP response: {:?}", &theResponse);
39831
39832        Ok(theResponse)
39833    }
39834
39835    /// List user account issues assigned to the authenticated user
39836    /// 
39837    /// List issues across owned and member repositories assigned to the authenticated user.
39838    /// 
39839    /// **Note**: GitHub's REST API v3 considers every pull request an issue, but not every issue is a pull request. For this
39840    /// reason, "Issues" endpoints may return both issues and pull requests in the response. You can identify pull requests by
39841    /// the `pull_request` key. Be aware that the `id` of a pull request returned from "Issues" endpoints will be an _issue id_. To find out the pull
39842    /// request id, use the "[List pull requests](https://docs.github.com/rest/reference/pulls#list-pull-requests)" endpoint.
39843    /// 
39844    /// [API method documentation](https://docs.github.com/rest/reference/issues#list-user-account-issues-assigned-to-the-authenticated-user)
39845    pub fn issues_list_for_authenticated_user(
39846        &self,
39847        filter: &crate::types::IssueFilter<'_>,
39848        sort: &crate::types::Sort<'_>,
39849        per_page: ::std::option::Option<i64>,
39850        page: ::std::option::Option<i64>,
39851    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39852        let (sort, direction) = sort.extract();
39853        let mut theScheme = AuthScheme::from(&self.config.authentication);
39854
39855        while let Some(auth_step) = theScheme.step()? {
39856            match auth_step {
39857                ::authentic::AuthenticationStep::Request(auth_request) => {
39858                    theScheme.respond(self.client.execute(auth_request));
39859                }
39860                ::authentic::AuthenticationStep::WaitFor(duration) => {
39861                    (self.sleep)(duration);
39862                }
39863            }
39864        }
39865        let theBuilder = crate::v1_1_4::request::issues_list_for_authenticated_user::reqwest_blocking_builder(
39866            self.config.base_url.as_ref(),
39867            filter.filter,
39868            filter.state,
39869            filter.labels,
39870            sort,
39871            direction,
39872            filter.since,
39873            per_page,
39874            page,
39875            self.config.user_agent.as_ref(),
39876            self.config.accept.as_deref(),
39877        )?
39878        .with_authentication(&theScheme)?;
39879
39880        let theRequest =
39881            crate::v1_1_4::request::issues_list_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39882
39883        ::log::debug!("HTTP request: {:?}", &theRequest);
39884
39885        let theResponse = self.client.execute(theRequest)?;
39886
39887        ::log::debug!("HTTP response: {:?}", &theResponse);
39888
39889        Ok(theResponse)
39890    }
39891
39892    /// List public SSH keys for the authenticated user
39893    /// 
39894    /// Lists the public SSH keys for the authenticated user's GitHub account. Requires that you are authenticated via Basic Auth or via OAuth with at least `read:public_key` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
39895    /// 
39896    /// [API method documentation](https://docs.github.com/rest/reference/users#list-public-ssh-keys-for-the-authenticated-user)
39897    pub fn users_list_public_ssh_keys_for_authenticated_user(
39898        &self,
39899        per_page: ::std::option::Option<i64>,
39900        page: ::std::option::Option<i64>,
39901    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39902        let mut theScheme = AuthScheme::from(&self.config.authentication);
39903
39904        while let Some(auth_step) = theScheme.step()? {
39905            match auth_step {
39906                ::authentic::AuthenticationStep::Request(auth_request) => {
39907                    theScheme.respond(self.client.execute(auth_request));
39908                }
39909                ::authentic::AuthenticationStep::WaitFor(duration) => {
39910                    (self.sleep)(duration);
39911                }
39912            }
39913        }
39914        let theBuilder = crate::v1_1_4::request::users_list_public_ssh_keys_for_authenticated_user::reqwest_blocking_builder(
39915            self.config.base_url.as_ref(),
39916            per_page,
39917            page,
39918            self.config.user_agent.as_ref(),
39919            self.config.accept.as_deref(),
39920        )?
39921        .with_authentication(&theScheme)?;
39922
39923        let theRequest =
39924            crate::v1_1_4::request::users_list_public_ssh_keys_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
39925
39926        ::log::debug!("HTTP request: {:?}", &theRequest);
39927
39928        let theResponse = self.client.execute(theRequest)?;
39929
39930        ::log::debug!("HTTP response: {:?}", &theResponse);
39931
39932        Ok(theResponse)
39933    }
39934
39935    /// Create a public SSH key for the authenticated user
39936    /// 
39937    /// Adds a public SSH key to the authenticated user's GitHub account. Requires that you are authenticated via Basic Auth, or OAuth with at least `write:public_key` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
39938    /// 
39939    /// [API method documentation](https://docs.github.com/rest/reference/users#create-a-public-ssh-key-for-the-authenticated-user)
39940    ///
39941    /// # Content
39942    ///
39943    /// - [`&v1_1_4::request::users_create_public_ssh_key_for_authenticated_user::body::Json`](crate::v1_1_4::request::users_create_public_ssh_key_for_authenticated_user::body::Json)
39944    pub fn users_create_public_ssh_key_for_authenticated_user<Content>(
39945        &self,
39946        theContent: Content,
39947    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
39948    where
39949        Content: Copy + TryInto<crate::v1_1_4::request::users_create_public_ssh_key_for_authenticated_user::Content<::reqwest::blocking::Body>>,
39950        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::users_create_public_ssh_key_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
39951    {
39952        let mut theScheme = AuthScheme::from(&self.config.authentication);
39953
39954        while let Some(auth_step) = theScheme.step()? {
39955            match auth_step {
39956                ::authentic::AuthenticationStep::Request(auth_request) => {
39957                    theScheme.respond(self.client.execute(auth_request));
39958                }
39959                ::authentic::AuthenticationStep::WaitFor(duration) => {
39960                    (self.sleep)(duration);
39961                }
39962            }
39963        }
39964        let theBuilder = crate::v1_1_4::request::users_create_public_ssh_key_for_authenticated_user::reqwest_blocking_builder(
39965            self.config.base_url.as_ref(),
39966            self.config.user_agent.as_ref(),
39967            self.config.accept.as_deref(),
39968        )?
39969        .with_authentication(&theScheme)?;
39970
39971        let theRequest = crate::v1_1_4::request::users_create_public_ssh_key_for_authenticated_user::reqwest_blocking_request(
39972            theBuilder,
39973            theContent.try_into()?,
39974        )?;
39975
39976        ::log::debug!("HTTP request: {:?}", &theRequest);
39977
39978        let theResponse = self.client.execute(theRequest)?;
39979
39980        ::log::debug!("HTTP response: {:?}", &theResponse);
39981
39982        Ok(theResponse)
39983    }
39984
39985    /// Get a public SSH key for the authenticated user
39986    /// 
39987    /// View extended details for a single public SSH key. Requires that you are authenticated via Basic Auth or via OAuth with at least `read:public_key` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
39988    /// 
39989    /// [API method documentation](https://docs.github.com/rest/reference/users#get-a-public-ssh-key-for-the-authenticated-user)
39990    pub fn users_get_public_ssh_key_for_authenticated_user(
39991        &self,
39992        key_id: i64,
39993    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
39994        let mut theScheme = AuthScheme::from(&self.config.authentication);
39995
39996        while let Some(auth_step) = theScheme.step()? {
39997            match auth_step {
39998                ::authentic::AuthenticationStep::Request(auth_request) => {
39999                    theScheme.respond(self.client.execute(auth_request));
40000                }
40001                ::authentic::AuthenticationStep::WaitFor(duration) => {
40002                    (self.sleep)(duration);
40003                }
40004            }
40005        }
40006        let theBuilder = crate::v1_1_4::request::users_get_public_ssh_key_for_authenticated_user::reqwest_blocking_builder(
40007            self.config.base_url.as_ref(),
40008            key_id,
40009            self.config.user_agent.as_ref(),
40010            self.config.accept.as_deref(),
40011        )?
40012        .with_authentication(&theScheme)?;
40013
40014        let theRequest =
40015            crate::v1_1_4::request::users_get_public_ssh_key_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40016
40017        ::log::debug!("HTTP request: {:?}", &theRequest);
40018
40019        let theResponse = self.client.execute(theRequest)?;
40020
40021        ::log::debug!("HTTP response: {:?}", &theResponse);
40022
40023        Ok(theResponse)
40024    }
40025
40026    /// Delete a public SSH key for the authenticated user
40027    /// 
40028    /// Removes a public SSH key from the authenticated user's GitHub account. Requires that you are authenticated via Basic Auth or via OAuth with at least `admin:public_key` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).
40029    /// 
40030    /// [API method documentation](https://docs.github.com/rest/reference/users#delete-a-public-ssh-key-for-the-authenticated-user)
40031    pub fn users_delete_public_ssh_key_for_authenticated_user(
40032        &self,
40033        key_id: i64,
40034    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40035        let mut theScheme = AuthScheme::from(&self.config.authentication);
40036
40037        while let Some(auth_step) = theScheme.step()? {
40038            match auth_step {
40039                ::authentic::AuthenticationStep::Request(auth_request) => {
40040                    theScheme.respond(self.client.execute(auth_request));
40041                }
40042                ::authentic::AuthenticationStep::WaitFor(duration) => {
40043                    (self.sleep)(duration);
40044                }
40045            }
40046        }
40047        let theBuilder = crate::v1_1_4::request::users_delete_public_ssh_key_for_authenticated_user::reqwest_blocking_builder(
40048            self.config.base_url.as_ref(),
40049            key_id,
40050            self.config.user_agent.as_ref(),
40051            self.config.accept.as_deref(),
40052        )?
40053        .with_authentication(&theScheme)?;
40054
40055        let theRequest =
40056            crate::v1_1_4::request::users_delete_public_ssh_key_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40057
40058        ::log::debug!("HTTP request: {:?}", &theRequest);
40059
40060        let theResponse = self.client.execute(theRequest)?;
40061
40062        ::log::debug!("HTTP response: {:?}", &theResponse);
40063
40064        Ok(theResponse)
40065    }
40066
40067    /// List subscriptions for the authenticated user
40068    /// 
40069    /// Lists the active subscriptions for the authenticated user. You must use a [user-to-server OAuth access token](https://docs.github.com/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/#identifying-users-on-your-site), created for a user who has authorized your GitHub App, to access this endpoint. . OAuth Apps must authenticate using an [OAuth token](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/).
40070    /// 
40071    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-subscriptions-for-the-authenticated-user)
40072    pub fn apps_list_subscriptions_for_authenticated_user(
40073        &self,
40074        per_page: ::std::option::Option<i64>,
40075        page: ::std::option::Option<i64>,
40076    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40077        let mut theScheme = AuthScheme::from(&self.config.authentication);
40078
40079        while let Some(auth_step) = theScheme.step()? {
40080            match auth_step {
40081                ::authentic::AuthenticationStep::Request(auth_request) => {
40082                    theScheme.respond(self.client.execute(auth_request));
40083                }
40084                ::authentic::AuthenticationStep::WaitFor(duration) => {
40085                    (self.sleep)(duration);
40086                }
40087            }
40088        }
40089        let theBuilder = crate::v1_1_4::request::apps_list_subscriptions_for_authenticated_user::reqwest_blocking_builder(
40090            self.config.base_url.as_ref(),
40091            per_page,
40092            page,
40093            self.config.user_agent.as_ref(),
40094            self.config.accept.as_deref(),
40095        )?
40096        .with_authentication(&theScheme)?;
40097
40098        let theRequest =
40099            crate::v1_1_4::request::apps_list_subscriptions_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40100
40101        ::log::debug!("HTTP request: {:?}", &theRequest);
40102
40103        let theResponse = self.client.execute(theRequest)?;
40104
40105        ::log::debug!("HTTP response: {:?}", &theResponse);
40106
40107        Ok(theResponse)
40108    }
40109
40110    /// List subscriptions for the authenticated user (stubbed)
40111    /// 
40112    /// Lists the active subscriptions for the authenticated user. You must use a [user-to-server OAuth access token](https://docs.github.com/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/#identifying-users-on-your-site), created for a user who has authorized your GitHub App, to access this endpoint. . OAuth Apps must authenticate using an [OAuth token](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/).
40113    /// 
40114    /// [API method documentation](https://docs.github.com/rest/reference/apps#list-subscriptions-for-the-authenticated-user-stubbed)
40115    pub fn apps_list_subscriptions_for_authenticated_user_stubbed(
40116        &self,
40117        per_page: ::std::option::Option<i64>,
40118        page: ::std::option::Option<i64>,
40119    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40120        let mut theScheme = AuthScheme::from(&self.config.authentication);
40121
40122        while let Some(auth_step) = theScheme.step()? {
40123            match auth_step {
40124                ::authentic::AuthenticationStep::Request(auth_request) => {
40125                    theScheme.respond(self.client.execute(auth_request));
40126                }
40127                ::authentic::AuthenticationStep::WaitFor(duration) => {
40128                    (self.sleep)(duration);
40129                }
40130            }
40131        }
40132        let theBuilder = crate::v1_1_4::request::apps_list_subscriptions_for_authenticated_user_stubbed::reqwest_blocking_builder(
40133            self.config.base_url.as_ref(),
40134            per_page,
40135            page,
40136            self.config.user_agent.as_ref(),
40137            self.config.accept.as_deref(),
40138        )?
40139        .with_authentication(&theScheme)?;
40140
40141        let theRequest =
40142            crate::v1_1_4::request::apps_list_subscriptions_for_authenticated_user_stubbed::reqwest_blocking_request(theBuilder)?;
40143
40144        ::log::debug!("HTTP request: {:?}", &theRequest);
40145
40146        let theResponse = self.client.execute(theRequest)?;
40147
40148        ::log::debug!("HTTP response: {:?}", &theResponse);
40149
40150        Ok(theResponse)
40151    }
40152
40153    /// List organization memberships for the authenticated user
40154    /// 
40155    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-organization-memberships-for-the-authenticated-user)
40156    pub fn orgs_list_memberships_for_authenticated_user(
40157        &self,
40158        state: ::std::option::Option<&str>,
40159        per_page: ::std::option::Option<i64>,
40160        page: ::std::option::Option<i64>,
40161    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40162        let mut theScheme = AuthScheme::from(&self.config.authentication);
40163
40164        while let Some(auth_step) = theScheme.step()? {
40165            match auth_step {
40166                ::authentic::AuthenticationStep::Request(auth_request) => {
40167                    theScheme.respond(self.client.execute(auth_request));
40168                }
40169                ::authentic::AuthenticationStep::WaitFor(duration) => {
40170                    (self.sleep)(duration);
40171                }
40172            }
40173        }
40174        let theBuilder = crate::v1_1_4::request::orgs_list_memberships_for_authenticated_user::reqwest_blocking_builder(
40175            self.config.base_url.as_ref(),
40176            state,
40177            per_page,
40178            page,
40179            self.config.user_agent.as_ref(),
40180            self.config.accept.as_deref(),
40181        )?
40182        .with_authentication(&theScheme)?;
40183
40184        let theRequest =
40185            crate::v1_1_4::request::orgs_list_memberships_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40186
40187        ::log::debug!("HTTP request: {:?}", &theRequest);
40188
40189        let theResponse = self.client.execute(theRequest)?;
40190
40191        ::log::debug!("HTTP response: {:?}", &theResponse);
40192
40193        Ok(theResponse)
40194    }
40195
40196    /// Get an organization membership for the authenticated user
40197    /// 
40198    /// [API method documentation](https://docs.github.com/rest/reference/orgs#get-an-organization-membership-for-the-authenticated-user)
40199    pub fn orgs_get_membership_for_authenticated_user(
40200        &self,
40201        org: &str,
40202    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40203        let mut theScheme = AuthScheme::from(&self.config.authentication);
40204
40205        while let Some(auth_step) = theScheme.step()? {
40206            match auth_step {
40207                ::authentic::AuthenticationStep::Request(auth_request) => {
40208                    theScheme.respond(self.client.execute(auth_request));
40209                }
40210                ::authentic::AuthenticationStep::WaitFor(duration) => {
40211                    (self.sleep)(duration);
40212                }
40213            }
40214        }
40215        let theBuilder = crate::v1_1_4::request::orgs_get_membership_for_authenticated_user::reqwest_blocking_builder(
40216            self.config.base_url.as_ref(),
40217            org,
40218            self.config.user_agent.as_ref(),
40219            self.config.accept.as_deref(),
40220        )?
40221        .with_authentication(&theScheme)?;
40222
40223        let theRequest =
40224            crate::v1_1_4::request::orgs_get_membership_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40225
40226        ::log::debug!("HTTP request: {:?}", &theRequest);
40227
40228        let theResponse = self.client.execute(theRequest)?;
40229
40230        ::log::debug!("HTTP response: {:?}", &theResponse);
40231
40232        Ok(theResponse)
40233    }
40234
40235    /// Update an organization membership for the authenticated user
40236    /// 
40237    /// [API method documentation](https://docs.github.com/rest/reference/orgs#update-an-organization-membership-for-the-authenticated-user)
40238    ///
40239    /// # Content
40240    ///
40241    /// - [`&v1_1_4::request::orgs_update_membership_for_authenticated_user::body::Json`](crate::v1_1_4::request::orgs_update_membership_for_authenticated_user::body::Json)
40242    pub fn orgs_update_membership_for_authenticated_user<Content>(
40243        &self,
40244        org: &str,
40245        theContent: Content,
40246    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
40247    where
40248        Content: Copy + TryInto<crate::v1_1_4::request::orgs_update_membership_for_authenticated_user::Content<::reqwest::blocking::Body>>,
40249        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::orgs_update_membership_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
40250    {
40251        let mut theScheme = AuthScheme::from(&self.config.authentication);
40252
40253        while let Some(auth_step) = theScheme.step()? {
40254            match auth_step {
40255                ::authentic::AuthenticationStep::Request(auth_request) => {
40256                    theScheme.respond(self.client.execute(auth_request));
40257                }
40258                ::authentic::AuthenticationStep::WaitFor(duration) => {
40259                    (self.sleep)(duration);
40260                }
40261            }
40262        }
40263        let theBuilder = crate::v1_1_4::request::orgs_update_membership_for_authenticated_user::reqwest_blocking_builder(
40264            self.config.base_url.as_ref(),
40265            org,
40266            self.config.user_agent.as_ref(),
40267            self.config.accept.as_deref(),
40268        )?
40269        .with_authentication(&theScheme)?;
40270
40271        let theRequest = crate::v1_1_4::request::orgs_update_membership_for_authenticated_user::reqwest_blocking_request(
40272            theBuilder,
40273            theContent.try_into()?,
40274        )?;
40275
40276        ::log::debug!("HTTP request: {:?}", &theRequest);
40277
40278        let theResponse = self.client.execute(theRequest)?;
40279
40280        ::log::debug!("HTTP response: {:?}", &theResponse);
40281
40282        Ok(theResponse)
40283    }
40284
40285    /// List user migrations
40286    /// 
40287    /// Lists all migrations a user has started.
40288    /// 
40289    /// [API method documentation](https://docs.github.com/rest/reference/migrations#list-user-migrations)
40290    pub fn migrations_list_for_authenticated_user(
40291        &self,
40292        per_page: ::std::option::Option<i64>,
40293        page: ::std::option::Option<i64>,
40294    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40295        let mut theScheme = AuthScheme::from(&self.config.authentication);
40296
40297        while let Some(auth_step) = theScheme.step()? {
40298            match auth_step {
40299                ::authentic::AuthenticationStep::Request(auth_request) => {
40300                    theScheme.respond(self.client.execute(auth_request));
40301                }
40302                ::authentic::AuthenticationStep::WaitFor(duration) => {
40303                    (self.sleep)(duration);
40304                }
40305            }
40306        }
40307        let theBuilder = crate::v1_1_4::request::migrations_list_for_authenticated_user::reqwest_blocking_builder(
40308            self.config.base_url.as_ref(),
40309            per_page,
40310            page,
40311            self.config.user_agent.as_ref(),
40312            self.config.accept.as_deref(),
40313        )?
40314        .with_authentication(&theScheme)?;
40315
40316        let theRequest =
40317            crate::v1_1_4::request::migrations_list_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40318
40319        ::log::debug!("HTTP request: {:?}", &theRequest);
40320
40321        let theResponse = self.client.execute(theRequest)?;
40322
40323        ::log::debug!("HTTP response: {:?}", &theResponse);
40324
40325        Ok(theResponse)
40326    }
40327
40328    /// Start a user migration
40329    /// 
40330    /// Initiates the generation of a user migration archive.
40331    /// 
40332    /// [API method documentation](https://docs.github.com/rest/reference/migrations#start-a-user-migration)
40333    ///
40334    /// # Content
40335    ///
40336    /// - [`&v1_1_4::request::migrations_start_for_authenticated_user::body::Json`](crate::v1_1_4::request::migrations_start_for_authenticated_user::body::Json)
40337    pub fn migrations_start_for_authenticated_user<Content>(
40338        &self,
40339        theContent: Content,
40340    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
40341    where
40342        Content: Copy + TryInto<crate::v1_1_4::request::migrations_start_for_authenticated_user::Content<::reqwest::blocking::Body>>,
40343        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::migrations_start_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
40344    {
40345        let mut theScheme = AuthScheme::from(&self.config.authentication);
40346
40347        while let Some(auth_step) = theScheme.step()? {
40348            match auth_step {
40349                ::authentic::AuthenticationStep::Request(auth_request) => {
40350                    theScheme.respond(self.client.execute(auth_request));
40351                }
40352                ::authentic::AuthenticationStep::WaitFor(duration) => {
40353                    (self.sleep)(duration);
40354                }
40355            }
40356        }
40357        let theBuilder = crate::v1_1_4::request::migrations_start_for_authenticated_user::reqwest_blocking_builder(
40358            self.config.base_url.as_ref(),
40359            self.config.user_agent.as_ref(),
40360            self.config.accept.as_deref(),
40361        )?
40362        .with_authentication(&theScheme)?;
40363
40364        let theRequest = crate::v1_1_4::request::migrations_start_for_authenticated_user::reqwest_blocking_request(
40365            theBuilder,
40366            theContent.try_into()?,
40367        )?;
40368
40369        ::log::debug!("HTTP request: {:?}", &theRequest);
40370
40371        let theResponse = self.client.execute(theRequest)?;
40372
40373        ::log::debug!("HTTP response: {:?}", &theResponse);
40374
40375        Ok(theResponse)
40376    }
40377
40378    /// Get a user migration status
40379    /// 
40380    /// Fetches a single user migration. The response includes the `state` of the migration, which can be one of the following values:
40381    /// 
40382    /// *   `pending` - the migration hasn't started yet.
40383    /// *   `exporting` - the migration is in progress.
40384    /// *   `exported` - the migration finished successfully.
40385    /// *   `failed` - the migration failed.
40386    /// 
40387    /// Once the migration has been `exported` you can [download the migration archive](https://docs.github.com/rest/reference/migrations#download-a-user-migration-archive).
40388    /// 
40389    /// [API method documentation](https://docs.github.com/rest/reference/migrations#get-a-user-migration-status)
40390    pub fn migrations_get_status_for_authenticated_user(
40391        &self,
40392        migration_id: i64,
40393        exclude: ::std::option::Option<&[::std::borrow::Cow<'_, str>]>,
40394    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40395        let mut theScheme = AuthScheme::from(&self.config.authentication);
40396
40397        while let Some(auth_step) = theScheme.step()? {
40398            match auth_step {
40399                ::authentic::AuthenticationStep::Request(auth_request) => {
40400                    theScheme.respond(self.client.execute(auth_request));
40401                }
40402                ::authentic::AuthenticationStep::WaitFor(duration) => {
40403                    (self.sleep)(duration);
40404                }
40405            }
40406        }
40407        let theBuilder = crate::v1_1_4::request::migrations_get_status_for_authenticated_user::reqwest_blocking_builder(
40408            self.config.base_url.as_ref(),
40409            migration_id,
40410            exclude,
40411            self.config.user_agent.as_ref(),
40412            self.config.accept.as_deref(),
40413        )?
40414        .with_authentication(&theScheme)?;
40415
40416        let theRequest =
40417            crate::v1_1_4::request::migrations_get_status_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40418
40419        ::log::debug!("HTTP request: {:?}", &theRequest);
40420
40421        let theResponse = self.client.execute(theRequest)?;
40422
40423        ::log::debug!("HTTP response: {:?}", &theResponse);
40424
40425        Ok(theResponse)
40426    }
40427
40428    /// Download a user migration archive
40429    /// 
40430    /// Fetches the URL to download the migration archive as a `tar.gz` file. Depending on the resources your repository uses, the migration archive can contain JSON files with data for these objects:
40431    /// 
40432    /// *   attachments
40433    /// *   bases
40434    /// *   commit\_comments
40435    /// *   issue\_comments
40436    /// *   issue\_events
40437    /// *   issues
40438    /// *   milestones
40439    /// *   organizations
40440    /// *   projects
40441    /// *   protected\_branches
40442    /// *   pull\_request\_reviews
40443    /// *   pull\_requests
40444    /// *   releases
40445    /// *   repositories
40446    /// *   review\_comments
40447    /// *   schema
40448    /// *   users
40449    /// 
40450    /// The archive will also contain an `attachments` directory that includes all attachment files uploaded to GitHub.com and a `repositories` directory that contains the repository's Git data.
40451    /// 
40452    /// [API method documentation](https://docs.github.com/rest/reference/migrations#download-a-user-migration-archive)
40453    pub fn migrations_get_archive_for_authenticated_user(
40454        &self,
40455        migration_id: i64,
40456    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40457        let mut theScheme = AuthScheme::from(&self.config.authentication);
40458
40459        while let Some(auth_step) = theScheme.step()? {
40460            match auth_step {
40461                ::authentic::AuthenticationStep::Request(auth_request) => {
40462                    theScheme.respond(self.client.execute(auth_request));
40463                }
40464                ::authentic::AuthenticationStep::WaitFor(duration) => {
40465                    (self.sleep)(duration);
40466                }
40467            }
40468        }
40469        let theBuilder = crate::v1_1_4::request::migrations_get_archive_for_authenticated_user::reqwest_blocking_builder(
40470            self.config.base_url.as_ref(),
40471            migration_id,
40472            self.config.user_agent.as_ref(),
40473            self.config.accept.as_deref(),
40474        )?
40475        .with_authentication(&theScheme)?;
40476
40477        let theRequest =
40478            crate::v1_1_4::request::migrations_get_archive_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40479
40480        ::log::debug!("HTTP request: {:?}", &theRequest);
40481
40482        let theResponse = self.client.execute(theRequest)?;
40483
40484        ::log::debug!("HTTP response: {:?}", &theResponse);
40485
40486        Ok(theResponse)
40487    }
40488
40489    /// Delete a user migration archive
40490    /// 
40491    /// Deletes a previous migration archive. Downloadable migration archives are automatically deleted after seven days. Migration metadata, which is returned in the [List user migrations](https://docs.github.com/rest/reference/migrations#list-user-migrations) and [Get a user migration status](https://docs.github.com/rest/reference/migrations#get-a-user-migration-status) endpoints, will continue to be available even after an archive is deleted.
40492    /// 
40493    /// [API method documentation](https://docs.github.com/rest/reference/migrations#delete-a-user-migration-archive)
40494    pub fn migrations_delete_archive_for_authenticated_user(
40495        &self,
40496        migration_id: i64,
40497    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40498        let mut theScheme = AuthScheme::from(&self.config.authentication);
40499
40500        while let Some(auth_step) = theScheme.step()? {
40501            match auth_step {
40502                ::authentic::AuthenticationStep::Request(auth_request) => {
40503                    theScheme.respond(self.client.execute(auth_request));
40504                }
40505                ::authentic::AuthenticationStep::WaitFor(duration) => {
40506                    (self.sleep)(duration);
40507                }
40508            }
40509        }
40510        let theBuilder = crate::v1_1_4::request::migrations_delete_archive_for_authenticated_user::reqwest_blocking_builder(
40511            self.config.base_url.as_ref(),
40512            migration_id,
40513            self.config.user_agent.as_ref(),
40514            self.config.accept.as_deref(),
40515        )?
40516        .with_authentication(&theScheme)?;
40517
40518        let theRequest =
40519            crate::v1_1_4::request::migrations_delete_archive_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40520
40521        ::log::debug!("HTTP request: {:?}", &theRequest);
40522
40523        let theResponse = self.client.execute(theRequest)?;
40524
40525        ::log::debug!("HTTP response: {:?}", &theResponse);
40526
40527        Ok(theResponse)
40528    }
40529
40530    /// Unlock a user repository
40531    /// 
40532    /// Unlocks a repository. You can lock repositories when you [start a user migration](https://docs.github.com/rest/reference/migrations#start-a-user-migration). Once the migration is complete you can unlock each repository to begin using it again or [delete the repository](https://docs.github.com/rest/reference/repos#delete-a-repository) if you no longer need the source data. Returns a status of `404 Not Found` if the repository is not locked.
40533    /// 
40534    /// [API method documentation](https://docs.github.com/rest/reference/migrations#unlock-a-user-repository)
40535    pub fn migrations_unlock_repo_for_authenticated_user(
40536        &self,
40537        migration_id: i64,
40538        repo_name: &str,
40539    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40540        let mut theScheme = AuthScheme::from(&self.config.authentication);
40541
40542        while let Some(auth_step) = theScheme.step()? {
40543            match auth_step {
40544                ::authentic::AuthenticationStep::Request(auth_request) => {
40545                    theScheme.respond(self.client.execute(auth_request));
40546                }
40547                ::authentic::AuthenticationStep::WaitFor(duration) => {
40548                    (self.sleep)(duration);
40549                }
40550            }
40551        }
40552        let theBuilder = crate::v1_1_4::request::migrations_unlock_repo_for_authenticated_user::reqwest_blocking_builder(
40553            self.config.base_url.as_ref(),
40554            migration_id,
40555            repo_name,
40556            self.config.user_agent.as_ref(),
40557            self.config.accept.as_deref(),
40558        )?
40559        .with_authentication(&theScheme)?;
40560
40561        let theRequest =
40562            crate::v1_1_4::request::migrations_unlock_repo_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40563
40564        ::log::debug!("HTTP request: {:?}", &theRequest);
40565
40566        let theResponse = self.client.execute(theRequest)?;
40567
40568        ::log::debug!("HTTP response: {:?}", &theResponse);
40569
40570        Ok(theResponse)
40571    }
40572
40573    /// List repositories for a user migration
40574    /// 
40575    /// Lists all the repositories for this user migration.
40576    /// 
40577    /// [API method documentation](https://docs.github.com/rest/reference/migrations#list-repositories-for-a-user-migration)
40578    pub fn migrations_list_repos_for_authenticated_user(
40579        &self,
40580        migration_id: i64,
40581        per_page: ::std::option::Option<i64>,
40582        page: ::std::option::Option<i64>,
40583    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40584        let mut theScheme = AuthScheme::from(&self.config.authentication);
40585
40586        while let Some(auth_step) = theScheme.step()? {
40587            match auth_step {
40588                ::authentic::AuthenticationStep::Request(auth_request) => {
40589                    theScheme.respond(self.client.execute(auth_request));
40590                }
40591                ::authentic::AuthenticationStep::WaitFor(duration) => {
40592                    (self.sleep)(duration);
40593                }
40594            }
40595        }
40596        let theBuilder = crate::v1_1_4::request::migrations_list_repos_for_authenticated_user::reqwest_blocking_builder(
40597            self.config.base_url.as_ref(),
40598            migration_id,
40599            per_page,
40600            page,
40601            self.config.user_agent.as_ref(),
40602            self.config.accept.as_deref(),
40603        )?
40604        .with_authentication(&theScheme)?;
40605
40606        let theRequest =
40607            crate::v1_1_4::request::migrations_list_repos_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40608
40609        ::log::debug!("HTTP request: {:?}", &theRequest);
40610
40611        let theResponse = self.client.execute(theRequest)?;
40612
40613        ::log::debug!("HTTP response: {:?}", &theResponse);
40614
40615        Ok(theResponse)
40616    }
40617
40618    /// List organizations for the authenticated user
40619    /// 
40620    /// List organizations for the authenticated user.
40621    /// 
40622    /// **OAuth scope requirements**
40623    /// 
40624    /// This only lists organizations that your authorization allows you to operate on in some way (e.g., you can list teams with `read:org` scope, you can publicize your organization membership with `user` scope, etc.). Therefore, this API requires at least `user` or `read:org` scope. OAuth requests with insufficient scope receive a `403 Forbidden` response.
40625    /// 
40626    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-organizations-for-the-authenticated-user)
40627    pub fn orgs_list_for_authenticated_user(
40628        &self,
40629        per_page: ::std::option::Option<i64>,
40630        page: ::std::option::Option<i64>,
40631    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40632        let mut theScheme = AuthScheme::from(&self.config.authentication);
40633
40634        while let Some(auth_step) = theScheme.step()? {
40635            match auth_step {
40636                ::authentic::AuthenticationStep::Request(auth_request) => {
40637                    theScheme.respond(self.client.execute(auth_request));
40638                }
40639                ::authentic::AuthenticationStep::WaitFor(duration) => {
40640                    (self.sleep)(duration);
40641                }
40642            }
40643        }
40644        let theBuilder = crate::v1_1_4::request::orgs_list_for_authenticated_user::reqwest_blocking_builder(
40645            self.config.base_url.as_ref(),
40646            per_page,
40647            page,
40648            self.config.user_agent.as_ref(),
40649            self.config.accept.as_deref(),
40650        )?
40651        .with_authentication(&theScheme)?;
40652
40653        let theRequest =
40654            crate::v1_1_4::request::orgs_list_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40655
40656        ::log::debug!("HTTP request: {:?}", &theRequest);
40657
40658        let theResponse = self.client.execute(theRequest)?;
40659
40660        ::log::debug!("HTTP response: {:?}", &theResponse);
40661
40662        Ok(theResponse)
40663    }
40664
40665    /// List packages for the authenticated user's namespace
40666    /// 
40667    /// Lists packages owned by the authenticated user within the user's namespace.
40668    /// 
40669    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
40670    /// If `package_type` is not `container`, your token must also include the `repo` scope.
40671    /// 
40672    /// [API method documentation](https://docs.github.com/rest/reference/packages#list-packages-for-the-authenticated-user)
40673    pub fn packages_list_packages_for_authenticated_user(
40674        &self,
40675        package_type: &str,
40676        visibility: ::std::option::Option<&str>,
40677    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40678        let mut theScheme = AuthScheme::from(&self.config.authentication);
40679
40680        while let Some(auth_step) = theScheme.step()? {
40681            match auth_step {
40682                ::authentic::AuthenticationStep::Request(auth_request) => {
40683                    theScheme.respond(self.client.execute(auth_request));
40684                }
40685                ::authentic::AuthenticationStep::WaitFor(duration) => {
40686                    (self.sleep)(duration);
40687                }
40688            }
40689        }
40690        let theBuilder = crate::v1_1_4::request::packages_list_packages_for_authenticated_user::reqwest_blocking_builder(
40691            self.config.base_url.as_ref(),
40692            package_type,
40693            visibility,
40694            self.config.user_agent.as_ref(),
40695            self.config.accept.as_deref(),
40696        )?
40697        .with_authentication(&theScheme)?;
40698
40699        let theRequest =
40700            crate::v1_1_4::request::packages_list_packages_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40701
40702        ::log::debug!("HTTP request: {:?}", &theRequest);
40703
40704        let theResponse = self.client.execute(theRequest)?;
40705
40706        ::log::debug!("HTTP response: {:?}", &theResponse);
40707
40708        Ok(theResponse)
40709    }
40710
40711    /// Get a package for the authenticated user
40712    /// 
40713    /// Gets a specific package for a package owned by the authenticated user.
40714    /// 
40715    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
40716    /// If `package_type` is not `container`, your token must also include the `repo` scope.
40717    /// 
40718    /// [API method documentation](https://docs.github.com/rest/reference/packages#get-a-package-for-the-authenticated-user)
40719    pub fn packages_get_package_for_authenticated_user(
40720        &self,
40721        package_type: &str,
40722        package_name: &str,
40723    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40724        let mut theScheme = AuthScheme::from(&self.config.authentication);
40725
40726        while let Some(auth_step) = theScheme.step()? {
40727            match auth_step {
40728                ::authentic::AuthenticationStep::Request(auth_request) => {
40729                    theScheme.respond(self.client.execute(auth_request));
40730                }
40731                ::authentic::AuthenticationStep::WaitFor(duration) => {
40732                    (self.sleep)(duration);
40733                }
40734            }
40735        }
40736        let theBuilder = crate::v1_1_4::request::packages_get_package_for_authenticated_user::reqwest_blocking_builder(
40737            self.config.base_url.as_ref(),
40738            package_type,
40739            package_name,
40740            self.config.user_agent.as_ref(),
40741            self.config.accept.as_deref(),
40742        )?
40743        .with_authentication(&theScheme)?;
40744
40745        let theRequest =
40746            crate::v1_1_4::request::packages_get_package_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40747
40748        ::log::debug!("HTTP request: {:?}", &theRequest);
40749
40750        let theResponse = self.client.execute(theRequest)?;
40751
40752        ::log::debug!("HTTP response: {:?}", &theResponse);
40753
40754        Ok(theResponse)
40755    }
40756
40757    /// Delete a package for the authenticated user
40758    /// 
40759    /// Deletes a package owned by the authenticated user. You cannot delete a public package if any version of the package has more than 5,000 downloads. In this scenario, contact GitHub support for further assistance.
40760    /// 
40761    /// To use this endpoint, you must authenticate using an access token with the `packages:read` and `packages:delete` scopes.
40762    /// If `package_type` is not `container`, your token must also include the `repo` scope.
40763    /// 
40764    /// [API method documentation](https://docs.github.com/rest/reference/packages#delete-a-package-for-the-authenticated-user)
40765    pub fn packages_delete_package_for_authenticated_user(
40766        &self,
40767        package_type: &str,
40768        package_name: &str,
40769    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40770        let mut theScheme = AuthScheme::from(&self.config.authentication);
40771
40772        while let Some(auth_step) = theScheme.step()? {
40773            match auth_step {
40774                ::authentic::AuthenticationStep::Request(auth_request) => {
40775                    theScheme.respond(self.client.execute(auth_request));
40776                }
40777                ::authentic::AuthenticationStep::WaitFor(duration) => {
40778                    (self.sleep)(duration);
40779                }
40780            }
40781        }
40782        let theBuilder = crate::v1_1_4::request::packages_delete_package_for_authenticated_user::reqwest_blocking_builder(
40783            self.config.base_url.as_ref(),
40784            package_type,
40785            package_name,
40786            self.config.user_agent.as_ref(),
40787            self.config.accept.as_deref(),
40788        )?
40789        .with_authentication(&theScheme)?;
40790
40791        let theRequest =
40792            crate::v1_1_4::request::packages_delete_package_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40793
40794        ::log::debug!("HTTP request: {:?}", &theRequest);
40795
40796        let theResponse = self.client.execute(theRequest)?;
40797
40798        ::log::debug!("HTTP response: {:?}", &theResponse);
40799
40800        Ok(theResponse)
40801    }
40802
40803    /// Restore a package for the authenticated user
40804    /// 
40805    /// Restores a package owned by the authenticated user.
40806    /// 
40807    /// You can restore a deleted package under the following conditions:
40808    ///   - The package was deleted within the last 30 days.
40809    ///   - The same package namespace and version is still available and not reused for a new package. If the same package namespace is not available, you will not be able to restore your package. In this scenario, to restore the deleted package, you must delete the new package that uses the deleted package's namespace first.
40810    /// 
40811    /// To use this endpoint, you must authenticate using an access token with the `packages:read` and `packages:write` scopes. If `package_type` is not `container`, your token must also include the `repo` scope.
40812    /// 
40813    /// [API method documentation](https://docs.github.com/rest/reference/packages#restore-a-package-for-the-authenticated-user)
40814    pub fn packages_restore_package_for_authenticated_user(
40815        &self,
40816        package_type: &str,
40817        package_name: &str,
40818        token: ::std::option::Option<&str>,
40819    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40820        let mut theScheme = AuthScheme::from(&self.config.authentication);
40821
40822        while let Some(auth_step) = theScheme.step()? {
40823            match auth_step {
40824                ::authentic::AuthenticationStep::Request(auth_request) => {
40825                    theScheme.respond(self.client.execute(auth_request));
40826                }
40827                ::authentic::AuthenticationStep::WaitFor(duration) => {
40828                    (self.sleep)(duration);
40829                }
40830            }
40831        }
40832        let theBuilder = crate::v1_1_4::request::packages_restore_package_for_authenticated_user::reqwest_blocking_builder(
40833            self.config.base_url.as_ref(),
40834            package_type,
40835            package_name,
40836            token,
40837            self.config.user_agent.as_ref(),
40838            self.config.accept.as_deref(),
40839        )?
40840        .with_authentication(&theScheme)?;
40841
40842        let theRequest =
40843            crate::v1_1_4::request::packages_restore_package_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40844
40845        ::log::debug!("HTTP request: {:?}", &theRequest);
40846
40847        let theResponse = self.client.execute(theRequest)?;
40848
40849        ::log::debug!("HTTP response: {:?}", &theResponse);
40850
40851        Ok(theResponse)
40852    }
40853
40854    /// Get all package versions for a package owned by the authenticated user
40855    /// 
40856    /// Returns all package versions for a package owned by the authenticated user.
40857    /// 
40858    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
40859    /// If `package_type` is not `container`, your token must also include the `repo` scope.
40860    /// 
40861    /// [API method documentation](https://docs.github.com/rest/reference/packages#get-all-package-versions-for-a-package-owned-by-the-authenticated-user)
40862    pub fn packages_get_all_package_versions_for_package_owned_by_authenticated_user(
40863        &self,
40864        package_type: &str,
40865        package_name: &str,
40866        page: ::std::option::Option<i64>,
40867        per_page: ::std::option::Option<i64>,
40868        state: ::std::option::Option<&str>,
40869    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40870        let mut theScheme = AuthScheme::from(&self.config.authentication);
40871
40872        while let Some(auth_step) = theScheme.step()? {
40873            match auth_step {
40874                ::authentic::AuthenticationStep::Request(auth_request) => {
40875                    theScheme.respond(self.client.execute(auth_request));
40876                }
40877                ::authentic::AuthenticationStep::WaitFor(duration) => {
40878                    (self.sleep)(duration);
40879                }
40880            }
40881        }
40882        let theBuilder = crate::v1_1_4::request::packages_get_all_package_versions_for_package_owned_by_authenticated_user::reqwest_blocking_builder(
40883            self.config.base_url.as_ref(),
40884            package_type,
40885            package_name,
40886            page,
40887            per_page,
40888            state,
40889            self.config.user_agent.as_ref(),
40890            self.config.accept.as_deref(),
40891        )?
40892        .with_authentication(&theScheme)?;
40893
40894        let theRequest =
40895            crate::v1_1_4::request::packages_get_all_package_versions_for_package_owned_by_authenticated_user::reqwest_blocking_request(theBuilder)?;
40896
40897        ::log::debug!("HTTP request: {:?}", &theRequest);
40898
40899        let theResponse = self.client.execute(theRequest)?;
40900
40901        ::log::debug!("HTTP response: {:?}", &theResponse);
40902
40903        Ok(theResponse)
40904    }
40905
40906    /// Get a package version for the authenticated user
40907    /// 
40908    /// Gets a specific package version for a package owned by the authenticated user.
40909    /// 
40910    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
40911    /// If `package_type` is not `container`, your token must also include the `repo` scope.
40912    /// 
40913    /// [API method documentation](https://docs.github.com/rest/reference/packages#get-a-package-version-for-the-authenticated-user)
40914    pub fn packages_get_package_version_for_authenticated_user(
40915        &self,
40916        package_type: &str,
40917        package_name: &str,
40918        package_version_id: i64,
40919    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40920        let mut theScheme = AuthScheme::from(&self.config.authentication);
40921
40922        while let Some(auth_step) = theScheme.step()? {
40923            match auth_step {
40924                ::authentic::AuthenticationStep::Request(auth_request) => {
40925                    theScheme.respond(self.client.execute(auth_request));
40926                }
40927                ::authentic::AuthenticationStep::WaitFor(duration) => {
40928                    (self.sleep)(duration);
40929                }
40930            }
40931        }
40932        let theBuilder = crate::v1_1_4::request::packages_get_package_version_for_authenticated_user::reqwest_blocking_builder(
40933            self.config.base_url.as_ref(),
40934            package_type,
40935            package_name,
40936            package_version_id,
40937            self.config.user_agent.as_ref(),
40938            self.config.accept.as_deref(),
40939        )?
40940        .with_authentication(&theScheme)?;
40941
40942        let theRequest =
40943            crate::v1_1_4::request::packages_get_package_version_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40944
40945        ::log::debug!("HTTP request: {:?}", &theRequest);
40946
40947        let theResponse = self.client.execute(theRequest)?;
40948
40949        ::log::debug!("HTTP response: {:?}", &theResponse);
40950
40951        Ok(theResponse)
40952    }
40953
40954    /// Delete a package version for the authenticated user
40955    /// 
40956    /// Deletes a specific package version for a package owned by the authenticated user.  If the package is public and the package version has more than 5,000 downloads, you cannot delete the package version. In this scenario, contact GitHub support for further assistance.
40957    /// 
40958    /// To use this endpoint, you must have admin permissions in the organization and authenticate using an access token with the `packages:read` and `packages:delete` scopes.
40959    /// If `package_type` is not `container`, your token must also include the `repo` scope.
40960    /// 
40961    /// [API method documentation](https://docs.github.com/rest/reference/packages#delete-a-package-version-for-the-authenticated-user)
40962    pub fn packages_delete_package_version_for_authenticated_user(
40963        &self,
40964        package_type: &str,
40965        package_name: &str,
40966        package_version_id: i64,
40967    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
40968        let mut theScheme = AuthScheme::from(&self.config.authentication);
40969
40970        while let Some(auth_step) = theScheme.step()? {
40971            match auth_step {
40972                ::authentic::AuthenticationStep::Request(auth_request) => {
40973                    theScheme.respond(self.client.execute(auth_request));
40974                }
40975                ::authentic::AuthenticationStep::WaitFor(duration) => {
40976                    (self.sleep)(duration);
40977                }
40978            }
40979        }
40980        let theBuilder = crate::v1_1_4::request::packages_delete_package_version_for_authenticated_user::reqwest_blocking_builder(
40981            self.config.base_url.as_ref(),
40982            package_type,
40983            package_name,
40984            package_version_id,
40985            self.config.user_agent.as_ref(),
40986            self.config.accept.as_deref(),
40987        )?
40988        .with_authentication(&theScheme)?;
40989
40990        let theRequest =
40991            crate::v1_1_4::request::packages_delete_package_version_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
40992
40993        ::log::debug!("HTTP request: {:?}", &theRequest);
40994
40995        let theResponse = self.client.execute(theRequest)?;
40996
40997        ::log::debug!("HTTP response: {:?}", &theResponse);
40998
40999        Ok(theResponse)
41000    }
41001
41002    /// Restore a package version for the authenticated user
41003    /// 
41004    /// Restores a package version owned by the authenticated user.
41005    /// 
41006    /// You can restore a deleted package version under the following conditions:
41007    ///   - The package was deleted within the last 30 days.
41008    ///   - The same package namespace and version is still available and not reused for a new package. If the same package namespace is not available, you will not be able to restore your package. In this scenario, to restore the deleted package, you must delete the new package that uses the deleted package's namespace first.
41009    /// 
41010    /// To use this endpoint, you must authenticate using an access token with the `packages:read` and `packages:write` scopes. If `package_type` is not `container`, your token must also include the `repo` scope.
41011    /// 
41012    /// [API method documentation](https://docs.github.com/rest/reference/packages#restore-a-package-version-for-the-authenticated-user)
41013    pub fn packages_restore_package_version_for_authenticated_user(
41014        &self,
41015        package_type: &str,
41016        package_name: &str,
41017        package_version_id: i64,
41018    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41019        let mut theScheme = AuthScheme::from(&self.config.authentication);
41020
41021        while let Some(auth_step) = theScheme.step()? {
41022            match auth_step {
41023                ::authentic::AuthenticationStep::Request(auth_request) => {
41024                    theScheme.respond(self.client.execute(auth_request));
41025                }
41026                ::authentic::AuthenticationStep::WaitFor(duration) => {
41027                    (self.sleep)(duration);
41028                }
41029            }
41030        }
41031        let theBuilder = crate::v1_1_4::request::packages_restore_package_version_for_authenticated_user::reqwest_blocking_builder(
41032            self.config.base_url.as_ref(),
41033            package_type,
41034            package_name,
41035            package_version_id,
41036            self.config.user_agent.as_ref(),
41037            self.config.accept.as_deref(),
41038        )?
41039        .with_authentication(&theScheme)?;
41040
41041        let theRequest =
41042            crate::v1_1_4::request::packages_restore_package_version_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41043
41044        ::log::debug!("HTTP request: {:?}", &theRequest);
41045
41046        let theResponse = self.client.execute(theRequest)?;
41047
41048        ::log::debug!("HTTP response: {:?}", &theResponse);
41049
41050        Ok(theResponse)
41051    }
41052
41053    /// Create a user project
41054    /// 
41055    /// [API method documentation](https://docs.github.com/rest/reference/projects#create-a-user-project)
41056    ///
41057    /// # Content
41058    ///
41059    /// - [`&v1_1_4::request::projects_create_for_authenticated_user::body::Json`](crate::v1_1_4::request::projects_create_for_authenticated_user::body::Json)
41060    pub fn projects_create_for_authenticated_user<Content>(
41061        &self,
41062        theContent: Content,
41063    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
41064    where
41065        Content: Copy + TryInto<crate::v1_1_4::request::projects_create_for_authenticated_user::Content<::reqwest::blocking::Body>>,
41066        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::projects_create_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
41067    {
41068        let mut theScheme = AuthScheme::from(&self.config.authentication);
41069
41070        while let Some(auth_step) = theScheme.step()? {
41071            match auth_step {
41072                ::authentic::AuthenticationStep::Request(auth_request) => {
41073                    theScheme.respond(self.client.execute(auth_request));
41074                }
41075                ::authentic::AuthenticationStep::WaitFor(duration) => {
41076                    (self.sleep)(duration);
41077                }
41078            }
41079        }
41080        let theBuilder = crate::v1_1_4::request::projects_create_for_authenticated_user::reqwest_blocking_builder(
41081            self.config.base_url.as_ref(),
41082            self.config.user_agent.as_ref(),
41083            self.config.accept.as_deref(),
41084        )?
41085        .with_authentication(&theScheme)?;
41086
41087        let theRequest = crate::v1_1_4::request::projects_create_for_authenticated_user::reqwest_blocking_request(
41088            theBuilder,
41089            theContent.try_into()?,
41090        )?;
41091
41092        ::log::debug!("HTTP request: {:?}", &theRequest);
41093
41094        let theResponse = self.client.execute(theRequest)?;
41095
41096        ::log::debug!("HTTP response: {:?}", &theResponse);
41097
41098        Ok(theResponse)
41099    }
41100
41101    /// List public email addresses for the authenticated user
41102    /// 
41103    /// Lists your publicly visible email address, which you can set with the [Set primary email visibility for the authenticated user](https://docs.github.com/rest/reference/users#set-primary-email-visibility-for-the-authenticated-user) endpoint. This endpoint is accessible with the `user:email` scope.
41104    /// 
41105    /// [API method documentation](https://docs.github.com/rest/reference/users#list-public-email-addresses-for-the-authenticated-user)
41106    pub fn users_list_public_emails_for_authenticated_user(
41107        &self,
41108        per_page: ::std::option::Option<i64>,
41109        page: ::std::option::Option<i64>,
41110    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41111        let mut theScheme = AuthScheme::from(&self.config.authentication);
41112
41113        while let Some(auth_step) = theScheme.step()? {
41114            match auth_step {
41115                ::authentic::AuthenticationStep::Request(auth_request) => {
41116                    theScheme.respond(self.client.execute(auth_request));
41117                }
41118                ::authentic::AuthenticationStep::WaitFor(duration) => {
41119                    (self.sleep)(duration);
41120                }
41121            }
41122        }
41123        let theBuilder = crate::v1_1_4::request::users_list_public_emails_for_authenticated_user::reqwest_blocking_builder(
41124            self.config.base_url.as_ref(),
41125            per_page,
41126            page,
41127            self.config.user_agent.as_ref(),
41128            self.config.accept.as_deref(),
41129        )?
41130        .with_authentication(&theScheme)?;
41131
41132        let theRequest =
41133            crate::v1_1_4::request::users_list_public_emails_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41134
41135        ::log::debug!("HTTP request: {:?}", &theRequest);
41136
41137        let theResponse = self.client.execute(theRequest)?;
41138
41139        ::log::debug!("HTTP response: {:?}", &theResponse);
41140
41141        Ok(theResponse)
41142    }
41143
41144    /// List repositories for the authenticated user
41145    /// 
41146    /// Lists repositories that the authenticated user has explicit permission (`:read`, `:write`, or `:admin`) to access.
41147    /// 
41148    /// The authenticated user has explicit permission to access repositories they own, repositories where they are a collaborator, and repositories that they can access through an organization membership.
41149    /// 
41150    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repositories-for-the-authenticated-user)
41151    #[allow(clippy::too_many_arguments)]
41152    pub fn repos_list_for_authenticated_user(
41153        &self,
41154        visibility: ::std::option::Option<&str>,
41155        affiliation: ::std::option::Option<&str>,
41156        r#type: ::std::option::Option<&str>,
41157        sort: &crate::types::Sort<'_>,
41158        per_page: ::std::option::Option<i64>,
41159        page: ::std::option::Option<i64>,
41160        since: ::std::option::Option<&str>,
41161        before: ::std::option::Option<&str>,
41162    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41163        let (sort, direction) = sort.extract();
41164        let mut theScheme = AuthScheme::from(&self.config.authentication);
41165
41166        while let Some(auth_step) = theScheme.step()? {
41167            match auth_step {
41168                ::authentic::AuthenticationStep::Request(auth_request) => {
41169                    theScheme.respond(self.client.execute(auth_request));
41170                }
41171                ::authentic::AuthenticationStep::WaitFor(duration) => {
41172                    (self.sleep)(duration);
41173                }
41174            }
41175        }
41176        let theBuilder = crate::v1_1_4::request::repos_list_for_authenticated_user::reqwest_blocking_builder(
41177            self.config.base_url.as_ref(),
41178            visibility,
41179            affiliation,
41180            r#type,
41181            sort,
41182            direction,
41183            per_page,
41184            page,
41185            since,
41186            before,
41187            self.config.user_agent.as_ref(),
41188            self.config.accept.as_deref(),
41189        )?
41190        .with_authentication(&theScheme)?;
41191
41192        let theRequest =
41193            crate::v1_1_4::request::repos_list_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41194
41195        ::log::debug!("HTTP request: {:?}", &theRequest);
41196
41197        let theResponse = self.client.execute(theRequest)?;
41198
41199        ::log::debug!("HTTP response: {:?}", &theResponse);
41200
41201        Ok(theResponse)
41202    }
41203
41204    /// Create a repository for the authenticated user
41205    /// 
41206    /// Creates a new repository for the authenticated user.
41207    /// 
41208    /// **OAuth scope requirements**
41209    /// 
41210    /// When using [OAuth](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:
41211    /// 
41212    /// *   `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.
41213    /// *   `repo` scope to create a private repository.
41214    /// 
41215    /// [API method documentation](https://docs.github.com/rest/reference/repos#create-a-repository-for-the-authenticated-user)
41216    ///
41217    /// # Content
41218    ///
41219    /// - [`&v1_1_4::request::repos_create_for_authenticated_user::body::Json`](crate::v1_1_4::request::repos_create_for_authenticated_user::body::Json)
41220    pub fn repos_create_for_authenticated_user<Content>(
41221        &self,
41222        theContent: Content,
41223    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError>
41224    where
41225        Content: Copy + TryInto<crate::v1_1_4::request::repos_create_for_authenticated_user::Content<::reqwest::blocking::Body>>,
41226        crate::v1_1_4::ApiError: From<<Content as TryInto<crate::v1_1_4::request::repos_create_for_authenticated_user::Content<::reqwest::blocking::Body>>>::Error>
41227    {
41228        let mut theScheme = AuthScheme::from(&self.config.authentication);
41229
41230        while let Some(auth_step) = theScheme.step()? {
41231            match auth_step {
41232                ::authentic::AuthenticationStep::Request(auth_request) => {
41233                    theScheme.respond(self.client.execute(auth_request));
41234                }
41235                ::authentic::AuthenticationStep::WaitFor(duration) => {
41236                    (self.sleep)(duration);
41237                }
41238            }
41239        }
41240        let theBuilder = crate::v1_1_4::request::repos_create_for_authenticated_user::reqwest_blocking_builder(
41241            self.config.base_url.as_ref(),
41242            self.config.user_agent.as_ref(),
41243            self.config.accept.as_deref(),
41244        )?
41245        .with_authentication(&theScheme)?;
41246
41247        let theRequest = crate::v1_1_4::request::repos_create_for_authenticated_user::reqwest_blocking_request(
41248            theBuilder,
41249            theContent.try_into()?,
41250        )?;
41251
41252        ::log::debug!("HTTP request: {:?}", &theRequest);
41253
41254        let theResponse = self.client.execute(theRequest)?;
41255
41256        ::log::debug!("HTTP response: {:?}", &theResponse);
41257
41258        Ok(theResponse)
41259    }
41260
41261    /// List repository invitations for the authenticated user
41262    /// 
41263    /// When authenticating as a user, this endpoint will list all currently open repository invitations for that user.
41264    /// 
41265    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repository-invitations-for-the-authenticated-user)
41266    pub fn repos_list_invitations_for_authenticated_user(
41267        &self,
41268        per_page: ::std::option::Option<i64>,
41269        page: ::std::option::Option<i64>,
41270    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41271        let mut theScheme = AuthScheme::from(&self.config.authentication);
41272
41273        while let Some(auth_step) = theScheme.step()? {
41274            match auth_step {
41275                ::authentic::AuthenticationStep::Request(auth_request) => {
41276                    theScheme.respond(self.client.execute(auth_request));
41277                }
41278                ::authentic::AuthenticationStep::WaitFor(duration) => {
41279                    (self.sleep)(duration);
41280                }
41281            }
41282        }
41283        let theBuilder = crate::v1_1_4::request::repos_list_invitations_for_authenticated_user::reqwest_blocking_builder(
41284            self.config.base_url.as_ref(),
41285            per_page,
41286            page,
41287            self.config.user_agent.as_ref(),
41288            self.config.accept.as_deref(),
41289        )?
41290        .with_authentication(&theScheme)?;
41291
41292        let theRequest =
41293            crate::v1_1_4::request::repos_list_invitations_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41294
41295        ::log::debug!("HTTP request: {:?}", &theRequest);
41296
41297        let theResponse = self.client.execute(theRequest)?;
41298
41299        ::log::debug!("HTTP response: {:?}", &theResponse);
41300
41301        Ok(theResponse)
41302    }
41303
41304    /// Decline a repository invitation
41305    /// 
41306    /// [API method documentation](https://docs.github.com/rest/reference/repos#decline-a-repository-invitation)
41307    pub fn repos_decline_invitation_for_authenticated_user(
41308        &self,
41309        invitation_id: i64,
41310    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41311        let mut theScheme = AuthScheme::from(&self.config.authentication);
41312
41313        while let Some(auth_step) = theScheme.step()? {
41314            match auth_step {
41315                ::authentic::AuthenticationStep::Request(auth_request) => {
41316                    theScheme.respond(self.client.execute(auth_request));
41317                }
41318                ::authentic::AuthenticationStep::WaitFor(duration) => {
41319                    (self.sleep)(duration);
41320                }
41321            }
41322        }
41323        let theBuilder = crate::v1_1_4::request::repos_decline_invitation_for_authenticated_user::reqwest_blocking_builder(
41324            self.config.base_url.as_ref(),
41325            invitation_id,
41326            self.config.user_agent.as_ref(),
41327            self.config.accept.as_deref(),
41328        )?
41329        .with_authentication(&theScheme)?;
41330
41331        let theRequest =
41332            crate::v1_1_4::request::repos_decline_invitation_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41333
41334        ::log::debug!("HTTP request: {:?}", &theRequest);
41335
41336        let theResponse = self.client.execute(theRequest)?;
41337
41338        ::log::debug!("HTTP response: {:?}", &theResponse);
41339
41340        Ok(theResponse)
41341    }
41342
41343    /// Accept a repository invitation
41344    /// 
41345    /// [API method documentation](https://docs.github.com/rest/reference/repos#accept-a-repository-invitation)
41346    pub fn repos_accept_invitation_for_authenticated_user(
41347        &self,
41348        invitation_id: i64,
41349    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41350        let mut theScheme = AuthScheme::from(&self.config.authentication);
41351
41352        while let Some(auth_step) = theScheme.step()? {
41353            match auth_step {
41354                ::authentic::AuthenticationStep::Request(auth_request) => {
41355                    theScheme.respond(self.client.execute(auth_request));
41356                }
41357                ::authentic::AuthenticationStep::WaitFor(duration) => {
41358                    (self.sleep)(duration);
41359                }
41360            }
41361        }
41362        let theBuilder = crate::v1_1_4::request::repos_accept_invitation_for_authenticated_user::reqwest_blocking_builder(
41363            self.config.base_url.as_ref(),
41364            invitation_id,
41365            self.config.user_agent.as_ref(),
41366            self.config.accept.as_deref(),
41367        )?
41368        .with_authentication(&theScheme)?;
41369
41370        let theRequest =
41371            crate::v1_1_4::request::repos_accept_invitation_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41372
41373        ::log::debug!("HTTP request: {:?}", &theRequest);
41374
41375        let theResponse = self.client.execute(theRequest)?;
41376
41377        ::log::debug!("HTTP response: {:?}", &theResponse);
41378
41379        Ok(theResponse)
41380    }
41381
41382    /// List repositories starred by the authenticated user
41383    /// 
41384    /// Lists repositories the authenticated user has starred.
41385    /// 
41386    /// You can also find out _when_ stars were created by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
41387    /// 
41388    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-repositories-starred-by-the-authenticated-user)
41389    pub fn activity_list_repos_starred_by_authenticated_user(
41390        &self,
41391        sort: &crate::types::Sort<'_>,
41392        per_page: ::std::option::Option<i64>,
41393        page: ::std::option::Option<i64>,
41394    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41395        let (sort, direction) = sort.extract();
41396        let mut theScheme = AuthScheme::from(&self.config.authentication);
41397
41398        while let Some(auth_step) = theScheme.step()? {
41399            match auth_step {
41400                ::authentic::AuthenticationStep::Request(auth_request) => {
41401                    theScheme.respond(self.client.execute(auth_request));
41402                }
41403                ::authentic::AuthenticationStep::WaitFor(duration) => {
41404                    (self.sleep)(duration);
41405                }
41406            }
41407        }
41408        let theBuilder = crate::v1_1_4::request::activity_list_repos_starred_by_authenticated_user::reqwest_blocking_builder(
41409            self.config.base_url.as_ref(),
41410            sort,
41411            direction,
41412            per_page,
41413            page,
41414            self.config.user_agent.as_ref(),
41415            self.config.accept.as_deref(),
41416        )?
41417        .with_authentication(&theScheme)?;
41418
41419        let theRequest =
41420            crate::v1_1_4::request::activity_list_repos_starred_by_authenticated_user::reqwest_blocking_request(theBuilder)?;
41421
41422        ::log::debug!("HTTP request: {:?}", &theRequest);
41423
41424        let theResponse = self.client.execute(theRequest)?;
41425
41426        ::log::debug!("HTTP response: {:?}", &theResponse);
41427
41428        Ok(theResponse)
41429    }
41430
41431    /// Check if a repository is starred by the authenticated user
41432    /// 
41433    /// [API method documentation](https://docs.github.com/rest/reference/activity#check-if-a-repository-is-starred-by-the-authenticated-user)
41434    pub fn activity_check_repo_is_starred_by_authenticated_user(
41435        &self,
41436        owner: &str,
41437        repo: &str,
41438    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41439        let mut theScheme = AuthScheme::from(&self.config.authentication);
41440
41441        while let Some(auth_step) = theScheme.step()? {
41442            match auth_step {
41443                ::authentic::AuthenticationStep::Request(auth_request) => {
41444                    theScheme.respond(self.client.execute(auth_request));
41445                }
41446                ::authentic::AuthenticationStep::WaitFor(duration) => {
41447                    (self.sleep)(duration);
41448                }
41449            }
41450        }
41451        let theBuilder = crate::v1_1_4::request::activity_check_repo_is_starred_by_authenticated_user::reqwest_blocking_builder(
41452            self.config.base_url.as_ref(),
41453            owner,
41454            repo,
41455            self.config.user_agent.as_ref(),
41456            self.config.accept.as_deref(),
41457        )?
41458        .with_authentication(&theScheme)?;
41459
41460        let theRequest =
41461            crate::v1_1_4::request::activity_check_repo_is_starred_by_authenticated_user::reqwest_blocking_request(theBuilder)?;
41462
41463        ::log::debug!("HTTP request: {:?}", &theRequest);
41464
41465        let theResponse = self.client.execute(theRequest)?;
41466
41467        ::log::debug!("HTTP response: {:?}", &theResponse);
41468
41469        Ok(theResponse)
41470    }
41471
41472    /// Star a repository for the authenticated user
41473    /// 
41474    /// Note that you'll need to set `Content-Length` to zero when calling out to this endpoint. For more information, see "[HTTP verbs](https://docs.github.com/rest/overview/resources-in-the-rest-api#http-verbs)."
41475    /// 
41476    /// [API method documentation](https://docs.github.com/rest/reference/activity#star-a-repository-for-the-authenticated-user)
41477    pub fn activity_star_repo_for_authenticated_user(
41478        &self,
41479        owner: &str,
41480        repo: &str,
41481    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41482        let mut theScheme = AuthScheme::from(&self.config.authentication);
41483
41484        while let Some(auth_step) = theScheme.step()? {
41485            match auth_step {
41486                ::authentic::AuthenticationStep::Request(auth_request) => {
41487                    theScheme.respond(self.client.execute(auth_request));
41488                }
41489                ::authentic::AuthenticationStep::WaitFor(duration) => {
41490                    (self.sleep)(duration);
41491                }
41492            }
41493        }
41494        let theBuilder = crate::v1_1_4::request::activity_star_repo_for_authenticated_user::reqwest_blocking_builder(
41495            self.config.base_url.as_ref(),
41496            owner,
41497            repo,
41498            self.config.user_agent.as_ref(),
41499            self.config.accept.as_deref(),
41500        )?
41501        .with_authentication(&theScheme)?;
41502
41503        let theRequest =
41504            crate::v1_1_4::request::activity_star_repo_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41505
41506        ::log::debug!("HTTP request: {:?}", &theRequest);
41507
41508        let theResponse = self.client.execute(theRequest)?;
41509
41510        ::log::debug!("HTTP response: {:?}", &theResponse);
41511
41512        Ok(theResponse)
41513    }
41514
41515    /// Unstar a repository for the authenticated user
41516    /// 
41517    /// [API method documentation](https://docs.github.com/rest/reference/activity#unstar-a-repository-for-the-authenticated-user)
41518    pub fn activity_unstar_repo_for_authenticated_user(
41519        &self,
41520        owner: &str,
41521        repo: &str,
41522    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41523        let mut theScheme = AuthScheme::from(&self.config.authentication);
41524
41525        while let Some(auth_step) = theScheme.step()? {
41526            match auth_step {
41527                ::authentic::AuthenticationStep::Request(auth_request) => {
41528                    theScheme.respond(self.client.execute(auth_request));
41529                }
41530                ::authentic::AuthenticationStep::WaitFor(duration) => {
41531                    (self.sleep)(duration);
41532                }
41533            }
41534        }
41535        let theBuilder = crate::v1_1_4::request::activity_unstar_repo_for_authenticated_user::reqwest_blocking_builder(
41536            self.config.base_url.as_ref(),
41537            owner,
41538            repo,
41539            self.config.user_agent.as_ref(),
41540            self.config.accept.as_deref(),
41541        )?
41542        .with_authentication(&theScheme)?;
41543
41544        let theRequest =
41545            crate::v1_1_4::request::activity_unstar_repo_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41546
41547        ::log::debug!("HTTP request: {:?}", &theRequest);
41548
41549        let theResponse = self.client.execute(theRequest)?;
41550
41551        ::log::debug!("HTTP response: {:?}", &theResponse);
41552
41553        Ok(theResponse)
41554    }
41555
41556    /// List repositories watched by the authenticated user
41557    /// 
41558    /// Lists repositories the authenticated user is watching.
41559    /// 
41560    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-repositories-watched-by-the-authenticated-user)
41561    pub fn activity_list_watched_repos_for_authenticated_user(
41562        &self,
41563        per_page: ::std::option::Option<i64>,
41564        page: ::std::option::Option<i64>,
41565    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41566        let mut theScheme = AuthScheme::from(&self.config.authentication);
41567
41568        while let Some(auth_step) = theScheme.step()? {
41569            match auth_step {
41570                ::authentic::AuthenticationStep::Request(auth_request) => {
41571                    theScheme.respond(self.client.execute(auth_request));
41572                }
41573                ::authentic::AuthenticationStep::WaitFor(duration) => {
41574                    (self.sleep)(duration);
41575                }
41576            }
41577        }
41578        let theBuilder = crate::v1_1_4::request::activity_list_watched_repos_for_authenticated_user::reqwest_blocking_builder(
41579            self.config.base_url.as_ref(),
41580            per_page,
41581            page,
41582            self.config.user_agent.as_ref(),
41583            self.config.accept.as_deref(),
41584        )?
41585        .with_authentication(&theScheme)?;
41586
41587        let theRequest =
41588            crate::v1_1_4::request::activity_list_watched_repos_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41589
41590        ::log::debug!("HTTP request: {:?}", &theRequest);
41591
41592        let theResponse = self.client.execute(theRequest)?;
41593
41594        ::log::debug!("HTTP response: {:?}", &theResponse);
41595
41596        Ok(theResponse)
41597    }
41598
41599    /// List teams for the authenticated user
41600    /// 
41601    /// List all of the teams across all of the organizations to which the authenticated user belongs. This method requires `user`, `repo`, or `read:org` [scope](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/) when authenticating via [OAuth](https://docs.github.com/apps/building-oauth-apps/).
41602    /// 
41603    /// [API method documentation](https://docs.github.com/rest/reference/teams#list-teams-for-the-authenticated-user)
41604    pub fn teams_list_for_authenticated_user(
41605        &self,
41606        per_page: ::std::option::Option<i64>,
41607        page: ::std::option::Option<i64>,
41608    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41609        let mut theScheme = AuthScheme::from(&self.config.authentication);
41610
41611        while let Some(auth_step) = theScheme.step()? {
41612            match auth_step {
41613                ::authentic::AuthenticationStep::Request(auth_request) => {
41614                    theScheme.respond(self.client.execute(auth_request));
41615                }
41616                ::authentic::AuthenticationStep::WaitFor(duration) => {
41617                    (self.sleep)(duration);
41618                }
41619            }
41620        }
41621        let theBuilder = crate::v1_1_4::request::teams_list_for_authenticated_user::reqwest_blocking_builder(
41622            self.config.base_url.as_ref(),
41623            per_page,
41624            page,
41625            self.config.user_agent.as_ref(),
41626            self.config.accept.as_deref(),
41627        )?
41628        .with_authentication(&theScheme)?;
41629
41630        let theRequest =
41631            crate::v1_1_4::request::teams_list_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41632
41633        ::log::debug!("HTTP request: {:?}", &theRequest);
41634
41635        let theResponse = self.client.execute(theRequest)?;
41636
41637        ::log::debug!("HTTP response: {:?}", &theResponse);
41638
41639        Ok(theResponse)
41640    }
41641
41642    /// List users
41643    /// 
41644    /// Lists all users, in the order that they signed up on GitHub. This list includes personal user accounts and organization accounts.
41645    /// 
41646    /// Note: Pagination is powered exclusively by the `since` parameter. Use the [Link header](https://docs.github.com/rest/overview/resources-in-the-rest-api#link-header) to get the URL for the next page of users.
41647    /// 
41648    /// [API method documentation](https://docs.github.com/rest/reference/users#list-users)
41649    pub fn users_list(
41650        &self,
41651        since: ::std::option::Option<i64>,
41652        per_page: ::std::option::Option<i64>,
41653    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41654        let mut theScheme = AuthScheme::from(&self.config.authentication);
41655
41656        while let Some(auth_step) = theScheme.step()? {
41657            match auth_step {
41658                ::authentic::AuthenticationStep::Request(auth_request) => {
41659                    theScheme.respond(self.client.execute(auth_request));
41660                }
41661                ::authentic::AuthenticationStep::WaitFor(duration) => {
41662                    (self.sleep)(duration);
41663                }
41664            }
41665        }
41666        let theBuilder = crate::v1_1_4::request::users_list::reqwest_blocking_builder(
41667            self.config.base_url.as_ref(),
41668            since,
41669            per_page,
41670            self.config.user_agent.as_ref(),
41671            self.config.accept.as_deref(),
41672        )?
41673        .with_authentication(&theScheme)?;
41674
41675        let theRequest =
41676            crate::v1_1_4::request::users_list::reqwest_blocking_request(theBuilder)?;
41677
41678        ::log::debug!("HTTP request: {:?}", &theRequest);
41679
41680        let theResponse = self.client.execute(theRequest)?;
41681
41682        ::log::debug!("HTTP response: {:?}", &theResponse);
41683
41684        Ok(theResponse)
41685    }
41686
41687    /// Get a user
41688    /// 
41689    /// Provides publicly available information about someone with a GitHub account.
41690    /// 
41691    /// GitHub Apps with the `Plan` user permission can use this endpoint to retrieve information about a user's GitHub plan. The GitHub App must be authenticated as a user. See "[Identifying and authorizing users for GitHub Apps](https://docs.github.com/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/)" for details about authentication. For an example response, see 'Response with GitHub plan information' below"
41692    /// 
41693    /// The `email` key in the following response is the publicly visible email address from your GitHub [profile page](https://github.com/settings/profile). When setting up your profile, you can select a primary email address to be “public” which provides an email entry for this endpoint. If you do not set a public email address for `email`, then it will have a value of `null`. You only see publicly visible email addresses when authenticated with GitHub. For more information, see [Authentication](https://docs.github.com/rest/overview/resources-in-the-rest-api#authentication).
41694    /// 
41695    /// The Emails API enables you to list all of your email addresses, and toggle a primary email to be visible publicly. For more information, see "[Emails API](https://docs.github.com/rest/reference/users#emails)".
41696    /// 
41697    /// [API method documentation](https://docs.github.com/rest/reference/users#get-a-user)
41698    pub fn users_get_by_username(
41699        &self,
41700        username: &str,
41701    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41702        let mut theScheme = AuthScheme::from(&self.config.authentication);
41703
41704        while let Some(auth_step) = theScheme.step()? {
41705            match auth_step {
41706                ::authentic::AuthenticationStep::Request(auth_request) => {
41707                    theScheme.respond(self.client.execute(auth_request));
41708                }
41709                ::authentic::AuthenticationStep::WaitFor(duration) => {
41710                    (self.sleep)(duration);
41711                }
41712            }
41713        }
41714        let theBuilder = crate::v1_1_4::request::users_get_by_username::reqwest_blocking_builder(
41715            self.config.base_url.as_ref(),
41716            username,
41717            self.config.user_agent.as_ref(),
41718            self.config.accept.as_deref(),
41719        )?
41720        .with_authentication(&theScheme)?;
41721
41722        let theRequest =
41723            crate::v1_1_4::request::users_get_by_username::reqwest_blocking_request(theBuilder)?;
41724
41725        ::log::debug!("HTTP request: {:?}", &theRequest);
41726
41727        let theResponse = self.client.execute(theRequest)?;
41728
41729        ::log::debug!("HTTP response: {:?}", &theResponse);
41730
41731        Ok(theResponse)
41732    }
41733
41734    /// List events for the authenticated user
41735    /// 
41736    /// If you are authenticated as the given user, you will see your private events. Otherwise, you'll only see public events.
41737    /// 
41738    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-events-for-the-authenticated-user)
41739    pub fn activity_list_events_for_authenticated_user(
41740        &self,
41741        username: &str,
41742        per_page: ::std::option::Option<i64>,
41743        page: ::std::option::Option<i64>,
41744    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41745        let mut theScheme = AuthScheme::from(&self.config.authentication);
41746
41747        while let Some(auth_step) = theScheme.step()? {
41748            match auth_step {
41749                ::authentic::AuthenticationStep::Request(auth_request) => {
41750                    theScheme.respond(self.client.execute(auth_request));
41751                }
41752                ::authentic::AuthenticationStep::WaitFor(duration) => {
41753                    (self.sleep)(duration);
41754                }
41755            }
41756        }
41757        let theBuilder = crate::v1_1_4::request::activity_list_events_for_authenticated_user::reqwest_blocking_builder(
41758            self.config.base_url.as_ref(),
41759            username,
41760            per_page,
41761            page,
41762            self.config.user_agent.as_ref(),
41763            self.config.accept.as_deref(),
41764        )?
41765        .with_authentication(&theScheme)?;
41766
41767        let theRequest =
41768            crate::v1_1_4::request::activity_list_events_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41769
41770        ::log::debug!("HTTP request: {:?}", &theRequest);
41771
41772        let theResponse = self.client.execute(theRequest)?;
41773
41774        ::log::debug!("HTTP response: {:?}", &theResponse);
41775
41776        Ok(theResponse)
41777    }
41778
41779    /// List organization events for the authenticated user
41780    /// 
41781    /// This is the user's organization dashboard. You must be authenticated as the user to view this.
41782    /// 
41783    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-organization-events-for-the-authenticated-user)
41784    pub fn activity_list_org_events_for_authenticated_user(
41785        &self,
41786        username: &str,
41787        org: &str,
41788        per_page: ::std::option::Option<i64>,
41789        page: ::std::option::Option<i64>,
41790    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41791        let mut theScheme = AuthScheme::from(&self.config.authentication);
41792
41793        while let Some(auth_step) = theScheme.step()? {
41794            match auth_step {
41795                ::authentic::AuthenticationStep::Request(auth_request) => {
41796                    theScheme.respond(self.client.execute(auth_request));
41797                }
41798                ::authentic::AuthenticationStep::WaitFor(duration) => {
41799                    (self.sleep)(duration);
41800                }
41801            }
41802        }
41803        let theBuilder = crate::v1_1_4::request::activity_list_org_events_for_authenticated_user::reqwest_blocking_builder(
41804            self.config.base_url.as_ref(),
41805            username,
41806            org,
41807            per_page,
41808            page,
41809            self.config.user_agent.as_ref(),
41810            self.config.accept.as_deref(),
41811        )?
41812        .with_authentication(&theScheme)?;
41813
41814        let theRequest =
41815            crate::v1_1_4::request::activity_list_org_events_for_authenticated_user::reqwest_blocking_request(theBuilder)?;
41816
41817        ::log::debug!("HTTP request: {:?}", &theRequest);
41818
41819        let theResponse = self.client.execute(theRequest)?;
41820
41821        ::log::debug!("HTTP response: {:?}", &theResponse);
41822
41823        Ok(theResponse)
41824    }
41825
41826    /// List public events for a user
41827    /// 
41828    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-public-events-for-a-user)
41829    pub fn activity_list_public_events_for_user(
41830        &self,
41831        username: &str,
41832        per_page: ::std::option::Option<i64>,
41833        page: ::std::option::Option<i64>,
41834    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41835        let mut theScheme = AuthScheme::from(&self.config.authentication);
41836
41837        while let Some(auth_step) = theScheme.step()? {
41838            match auth_step {
41839                ::authentic::AuthenticationStep::Request(auth_request) => {
41840                    theScheme.respond(self.client.execute(auth_request));
41841                }
41842                ::authentic::AuthenticationStep::WaitFor(duration) => {
41843                    (self.sleep)(duration);
41844                }
41845            }
41846        }
41847        let theBuilder = crate::v1_1_4::request::activity_list_public_events_for_user::reqwest_blocking_builder(
41848            self.config.base_url.as_ref(),
41849            username,
41850            per_page,
41851            page,
41852            self.config.user_agent.as_ref(),
41853            self.config.accept.as_deref(),
41854        )?
41855        .with_authentication(&theScheme)?;
41856
41857        let theRequest =
41858            crate::v1_1_4::request::activity_list_public_events_for_user::reqwest_blocking_request(theBuilder)?;
41859
41860        ::log::debug!("HTTP request: {:?}", &theRequest);
41861
41862        let theResponse = self.client.execute(theRequest)?;
41863
41864        ::log::debug!("HTTP response: {:?}", &theResponse);
41865
41866        Ok(theResponse)
41867    }
41868
41869    /// List followers of a user
41870    /// 
41871    /// Lists the people following the specified user.
41872    /// 
41873    /// [API method documentation](https://docs.github.com/rest/reference/users#list-followers-of-a-user)
41874    pub fn users_list_followers_for_user(
41875        &self,
41876        username: &str,
41877        per_page: ::std::option::Option<i64>,
41878        page: ::std::option::Option<i64>,
41879    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41880        let mut theScheme = AuthScheme::from(&self.config.authentication);
41881
41882        while let Some(auth_step) = theScheme.step()? {
41883            match auth_step {
41884                ::authentic::AuthenticationStep::Request(auth_request) => {
41885                    theScheme.respond(self.client.execute(auth_request));
41886                }
41887                ::authentic::AuthenticationStep::WaitFor(duration) => {
41888                    (self.sleep)(duration);
41889                }
41890            }
41891        }
41892        let theBuilder = crate::v1_1_4::request::users_list_followers_for_user::reqwest_blocking_builder(
41893            self.config.base_url.as_ref(),
41894            username,
41895            per_page,
41896            page,
41897            self.config.user_agent.as_ref(),
41898            self.config.accept.as_deref(),
41899        )?
41900        .with_authentication(&theScheme)?;
41901
41902        let theRequest =
41903            crate::v1_1_4::request::users_list_followers_for_user::reqwest_blocking_request(theBuilder)?;
41904
41905        ::log::debug!("HTTP request: {:?}", &theRequest);
41906
41907        let theResponse = self.client.execute(theRequest)?;
41908
41909        ::log::debug!("HTTP response: {:?}", &theResponse);
41910
41911        Ok(theResponse)
41912    }
41913
41914    /// List the people a user follows
41915    /// 
41916    /// Lists the people who the specified user follows.
41917    /// 
41918    /// [API method documentation](https://docs.github.com/rest/reference/users#list-the-people-a-user-follows)
41919    pub fn users_list_following_for_user(
41920        &self,
41921        username: &str,
41922        per_page: ::std::option::Option<i64>,
41923        page: ::std::option::Option<i64>,
41924    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41925        let mut theScheme = AuthScheme::from(&self.config.authentication);
41926
41927        while let Some(auth_step) = theScheme.step()? {
41928            match auth_step {
41929                ::authentic::AuthenticationStep::Request(auth_request) => {
41930                    theScheme.respond(self.client.execute(auth_request));
41931                }
41932                ::authentic::AuthenticationStep::WaitFor(duration) => {
41933                    (self.sleep)(duration);
41934                }
41935            }
41936        }
41937        let theBuilder = crate::v1_1_4::request::users_list_following_for_user::reqwest_blocking_builder(
41938            self.config.base_url.as_ref(),
41939            username,
41940            per_page,
41941            page,
41942            self.config.user_agent.as_ref(),
41943            self.config.accept.as_deref(),
41944        )?
41945        .with_authentication(&theScheme)?;
41946
41947        let theRequest =
41948            crate::v1_1_4::request::users_list_following_for_user::reqwest_blocking_request(theBuilder)?;
41949
41950        ::log::debug!("HTTP request: {:?}", &theRequest);
41951
41952        let theResponse = self.client.execute(theRequest)?;
41953
41954        ::log::debug!("HTTP response: {:?}", &theResponse);
41955
41956        Ok(theResponse)
41957    }
41958
41959    /// Check if a user follows another user
41960    /// 
41961    /// [API method documentation](https://docs.github.com/rest/reference/users#check-if-a-user-follows-another-user)
41962    pub fn users_check_following_for_user(
41963        &self,
41964        username: &str,
41965        target_user: &str,
41966    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
41967        let mut theScheme = AuthScheme::from(&self.config.authentication);
41968
41969        while let Some(auth_step) = theScheme.step()? {
41970            match auth_step {
41971                ::authentic::AuthenticationStep::Request(auth_request) => {
41972                    theScheme.respond(self.client.execute(auth_request));
41973                }
41974                ::authentic::AuthenticationStep::WaitFor(duration) => {
41975                    (self.sleep)(duration);
41976                }
41977            }
41978        }
41979        let theBuilder = crate::v1_1_4::request::users_check_following_for_user::reqwest_blocking_builder(
41980            self.config.base_url.as_ref(),
41981            username,
41982            target_user,
41983            self.config.user_agent.as_ref(),
41984            self.config.accept.as_deref(),
41985        )?
41986        .with_authentication(&theScheme)?;
41987
41988        let theRequest =
41989            crate::v1_1_4::request::users_check_following_for_user::reqwest_blocking_request(theBuilder)?;
41990
41991        ::log::debug!("HTTP request: {:?}", &theRequest);
41992
41993        let theResponse = self.client.execute(theRequest)?;
41994
41995        ::log::debug!("HTTP response: {:?}", &theResponse);
41996
41997        Ok(theResponse)
41998    }
41999
42000    /// List gists for a user
42001    /// 
42002    /// Lists public gists for the specified user:
42003    /// 
42004    /// [API method documentation](https://docs.github.com/rest/reference/gists#list-gists-for-a-user)
42005    pub fn gists_list_for_user(
42006        &self,
42007        username: &str,
42008        since: ::std::option::Option<&str>,
42009        per_page: ::std::option::Option<i64>,
42010        page: ::std::option::Option<i64>,
42011    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42012        let mut theScheme = AuthScheme::from(&self.config.authentication);
42013
42014        while let Some(auth_step) = theScheme.step()? {
42015            match auth_step {
42016                ::authentic::AuthenticationStep::Request(auth_request) => {
42017                    theScheme.respond(self.client.execute(auth_request));
42018                }
42019                ::authentic::AuthenticationStep::WaitFor(duration) => {
42020                    (self.sleep)(duration);
42021                }
42022            }
42023        }
42024        let theBuilder = crate::v1_1_4::request::gists_list_for_user::reqwest_blocking_builder(
42025            self.config.base_url.as_ref(),
42026            username,
42027            since,
42028            per_page,
42029            page,
42030            self.config.user_agent.as_ref(),
42031            self.config.accept.as_deref(),
42032        )?
42033        .with_authentication(&theScheme)?;
42034
42035        let theRequest =
42036            crate::v1_1_4::request::gists_list_for_user::reqwest_blocking_request(theBuilder)?;
42037
42038        ::log::debug!("HTTP request: {:?}", &theRequest);
42039
42040        let theResponse = self.client.execute(theRequest)?;
42041
42042        ::log::debug!("HTTP response: {:?}", &theResponse);
42043
42044        Ok(theResponse)
42045    }
42046
42047    /// List GPG keys for a user
42048    /// 
42049    /// Lists the GPG keys for a user. This information is accessible by anyone.
42050    /// 
42051    /// [API method documentation](https://docs.github.com/rest/reference/users#list-gpg-keys-for-a-user)
42052    pub fn users_list_gpg_keys_for_user(
42053        &self,
42054        username: &str,
42055        per_page: ::std::option::Option<i64>,
42056        page: ::std::option::Option<i64>,
42057    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42058        let mut theScheme = AuthScheme::from(&self.config.authentication);
42059
42060        while let Some(auth_step) = theScheme.step()? {
42061            match auth_step {
42062                ::authentic::AuthenticationStep::Request(auth_request) => {
42063                    theScheme.respond(self.client.execute(auth_request));
42064                }
42065                ::authentic::AuthenticationStep::WaitFor(duration) => {
42066                    (self.sleep)(duration);
42067                }
42068            }
42069        }
42070        let theBuilder = crate::v1_1_4::request::users_list_gpg_keys_for_user::reqwest_blocking_builder(
42071            self.config.base_url.as_ref(),
42072            username,
42073            per_page,
42074            page,
42075            self.config.user_agent.as_ref(),
42076            self.config.accept.as_deref(),
42077        )?
42078        .with_authentication(&theScheme)?;
42079
42080        let theRequest =
42081            crate::v1_1_4::request::users_list_gpg_keys_for_user::reqwest_blocking_request(theBuilder)?;
42082
42083        ::log::debug!("HTTP request: {:?}", &theRequest);
42084
42085        let theResponse = self.client.execute(theRequest)?;
42086
42087        ::log::debug!("HTTP response: {:?}", &theResponse);
42088
42089        Ok(theResponse)
42090    }
42091
42092    /// Get contextual information for a user
42093    /// 
42094    /// Provides hovercard information when authenticated through basic auth or OAuth with the `repo` scope. You can find out more about someone in relation to their pull requests, issues, repositories, and organizations.
42095    /// 
42096    /// The `subject_type` and `subject_id` parameters provide context for the person's hovercard, which returns more information than without the parameters. For example, if you wanted to find out more about `octocat` who owns the `Spoon-Knife` repository via cURL, it would look like this:
42097    /// 
42098    /// ```shell
42099    ///  curl -u username:token
42100    ///   https://api.github.com/users/octocat/hovercard?subject_type=repository&subject_id=1300192
42101    /// ```
42102    /// 
42103    /// [API method documentation](https://docs.github.com/rest/reference/users#get-contextual-information-for-a-user)
42104    pub fn users_get_context_for_user(
42105        &self,
42106        username: &str,
42107        subject_type: ::std::option::Option<&str>,
42108        subject_id: ::std::option::Option<&str>,
42109    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42110        let mut theScheme = AuthScheme::from(&self.config.authentication);
42111
42112        while let Some(auth_step) = theScheme.step()? {
42113            match auth_step {
42114                ::authentic::AuthenticationStep::Request(auth_request) => {
42115                    theScheme.respond(self.client.execute(auth_request));
42116                }
42117                ::authentic::AuthenticationStep::WaitFor(duration) => {
42118                    (self.sleep)(duration);
42119                }
42120            }
42121        }
42122        let theBuilder = crate::v1_1_4::request::users_get_context_for_user::reqwest_blocking_builder(
42123            self.config.base_url.as_ref(),
42124            username,
42125            subject_type,
42126            subject_id,
42127            self.config.user_agent.as_ref(),
42128            self.config.accept.as_deref(),
42129        )?
42130        .with_authentication(&theScheme)?;
42131
42132        let theRequest =
42133            crate::v1_1_4::request::users_get_context_for_user::reqwest_blocking_request(theBuilder)?;
42134
42135        ::log::debug!("HTTP request: {:?}", &theRequest);
42136
42137        let theResponse = self.client.execute(theRequest)?;
42138
42139        ::log::debug!("HTTP response: {:?}", &theResponse);
42140
42141        Ok(theResponse)
42142    }
42143
42144    /// Get a user installation for the authenticated app
42145    /// 
42146    /// Enables an authenticated GitHub App to find the user’s installation information.
42147    /// 
42148    /// You must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint.
42149    /// 
42150    /// [API method documentation](https://docs.github.com/rest/reference/apps#get-a-user-installation-for-the-authenticated-app)
42151    pub fn apps_get_user_installation(
42152        &self,
42153        username: &str,
42154    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42155        let mut theScheme = AuthScheme::from(&self.config.authentication);
42156
42157        while let Some(auth_step) = theScheme.step()? {
42158            match auth_step {
42159                ::authentic::AuthenticationStep::Request(auth_request) => {
42160                    theScheme.respond(self.client.execute(auth_request));
42161                }
42162                ::authentic::AuthenticationStep::WaitFor(duration) => {
42163                    (self.sleep)(duration);
42164                }
42165            }
42166        }
42167        let theBuilder = crate::v1_1_4::request::apps_get_user_installation::reqwest_blocking_builder(
42168            self.config.base_url.as_ref(),
42169            username,
42170            self.config.user_agent.as_ref(),
42171            self.config.accept.as_deref(),
42172        )?
42173        .with_authentication(&theScheme)?;
42174
42175        let theRequest =
42176            crate::v1_1_4::request::apps_get_user_installation::reqwest_blocking_request(theBuilder)?;
42177
42178        ::log::debug!("HTTP request: {:?}", &theRequest);
42179
42180        let theResponse = self.client.execute(theRequest)?;
42181
42182        ::log::debug!("HTTP response: {:?}", &theResponse);
42183
42184        Ok(theResponse)
42185    }
42186
42187    /// List public keys for a user
42188    /// 
42189    /// Lists the _verified_ public SSH keys for a user. This is accessible by anyone.
42190    /// 
42191    /// [API method documentation](https://docs.github.com/rest/reference/users#list-public-keys-for-a-user)
42192    pub fn users_list_public_keys_for_user(
42193        &self,
42194        username: &str,
42195        per_page: ::std::option::Option<i64>,
42196        page: ::std::option::Option<i64>,
42197    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42198        let mut theScheme = AuthScheme::from(&self.config.authentication);
42199
42200        while let Some(auth_step) = theScheme.step()? {
42201            match auth_step {
42202                ::authentic::AuthenticationStep::Request(auth_request) => {
42203                    theScheme.respond(self.client.execute(auth_request));
42204                }
42205                ::authentic::AuthenticationStep::WaitFor(duration) => {
42206                    (self.sleep)(duration);
42207                }
42208            }
42209        }
42210        let theBuilder = crate::v1_1_4::request::users_list_public_keys_for_user::reqwest_blocking_builder(
42211            self.config.base_url.as_ref(),
42212            username,
42213            per_page,
42214            page,
42215            self.config.user_agent.as_ref(),
42216            self.config.accept.as_deref(),
42217        )?
42218        .with_authentication(&theScheme)?;
42219
42220        let theRequest =
42221            crate::v1_1_4::request::users_list_public_keys_for_user::reqwest_blocking_request(theBuilder)?;
42222
42223        ::log::debug!("HTTP request: {:?}", &theRequest);
42224
42225        let theResponse = self.client.execute(theRequest)?;
42226
42227        ::log::debug!("HTTP response: {:?}", &theResponse);
42228
42229        Ok(theResponse)
42230    }
42231
42232    /// List organizations for a user
42233    /// 
42234    /// List [public organization memberships](https://docs.github.com/articles/publicizing-or-concealing-organization-membership) for the specified user.
42235    /// 
42236    /// This method only lists _public_ memberships, regardless of authentication. If you need to fetch all of the organization memberships (public and private) for the authenticated user, use the [List organizations for the authenticated user](https://docs.github.com/rest/reference/orgs#list-organizations-for-the-authenticated-user) API instead.
42237    /// 
42238    /// [API method documentation](https://docs.github.com/rest/reference/orgs#list-organizations-for-a-user)
42239    pub fn orgs_list_for_user(
42240        &self,
42241        username: &str,
42242        per_page: ::std::option::Option<i64>,
42243        page: ::std::option::Option<i64>,
42244    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42245        let mut theScheme = AuthScheme::from(&self.config.authentication);
42246
42247        while let Some(auth_step) = theScheme.step()? {
42248            match auth_step {
42249                ::authentic::AuthenticationStep::Request(auth_request) => {
42250                    theScheme.respond(self.client.execute(auth_request));
42251                }
42252                ::authentic::AuthenticationStep::WaitFor(duration) => {
42253                    (self.sleep)(duration);
42254                }
42255            }
42256        }
42257        let theBuilder = crate::v1_1_4::request::orgs_list_for_user::reqwest_blocking_builder(
42258            self.config.base_url.as_ref(),
42259            username,
42260            per_page,
42261            page,
42262            self.config.user_agent.as_ref(),
42263            self.config.accept.as_deref(),
42264        )?
42265        .with_authentication(&theScheme)?;
42266
42267        let theRequest =
42268            crate::v1_1_4::request::orgs_list_for_user::reqwest_blocking_request(theBuilder)?;
42269
42270        ::log::debug!("HTTP request: {:?}", &theRequest);
42271
42272        let theResponse = self.client.execute(theRequest)?;
42273
42274        ::log::debug!("HTTP response: {:?}", &theResponse);
42275
42276        Ok(theResponse)
42277    }
42278
42279    /// List packages for a user
42280    /// 
42281    /// Lists all packages in a user's namespace for which the requesting user has access.
42282    /// 
42283    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
42284    /// If `package_type` is not `container`, your token must also include the `repo` scope.
42285    /// 
42286    /// [API method documentation](https://docs.github.com/rest/reference/packages#list-packages-for-user)
42287    pub fn packages_list_packages_for_user(
42288        &self,
42289        package_type: &str,
42290        visibility: ::std::option::Option<&str>,
42291        username: &str,
42292    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42293        let mut theScheme = AuthScheme::from(&self.config.authentication);
42294
42295        while let Some(auth_step) = theScheme.step()? {
42296            match auth_step {
42297                ::authentic::AuthenticationStep::Request(auth_request) => {
42298                    theScheme.respond(self.client.execute(auth_request));
42299                }
42300                ::authentic::AuthenticationStep::WaitFor(duration) => {
42301                    (self.sleep)(duration);
42302                }
42303            }
42304        }
42305        let theBuilder = crate::v1_1_4::request::packages_list_packages_for_user::reqwest_blocking_builder(
42306            self.config.base_url.as_ref(),
42307            username,
42308            package_type,
42309            visibility,
42310            self.config.user_agent.as_ref(),
42311            self.config.accept.as_deref(),
42312        )?
42313        .with_authentication(&theScheme)?;
42314
42315        let theRequest =
42316            crate::v1_1_4::request::packages_list_packages_for_user::reqwest_blocking_request(theBuilder)?;
42317
42318        ::log::debug!("HTTP request: {:?}", &theRequest);
42319
42320        let theResponse = self.client.execute(theRequest)?;
42321
42322        ::log::debug!("HTTP response: {:?}", &theResponse);
42323
42324        Ok(theResponse)
42325    }
42326
42327    /// Get a package for a user
42328    /// 
42329    /// Gets a specific package metadata for a public package owned by a user.
42330    /// 
42331    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
42332    /// If `package_type` is not `container`, your token must also include the `repo` scope.
42333    /// 
42334    /// [API method documentation](https://docs.github.com/rest/reference/packages#get-a-package-for-a-user)
42335    pub fn packages_get_package_for_user(
42336        &self,
42337        package_type: &str,
42338        package_name: &str,
42339        username: &str,
42340    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42341        let mut theScheme = AuthScheme::from(&self.config.authentication);
42342
42343        while let Some(auth_step) = theScheme.step()? {
42344            match auth_step {
42345                ::authentic::AuthenticationStep::Request(auth_request) => {
42346                    theScheme.respond(self.client.execute(auth_request));
42347                }
42348                ::authentic::AuthenticationStep::WaitFor(duration) => {
42349                    (self.sleep)(duration);
42350                }
42351            }
42352        }
42353        let theBuilder = crate::v1_1_4::request::packages_get_package_for_user::reqwest_blocking_builder(
42354            self.config.base_url.as_ref(),
42355            package_type,
42356            package_name,
42357            username,
42358            self.config.user_agent.as_ref(),
42359            self.config.accept.as_deref(),
42360        )?
42361        .with_authentication(&theScheme)?;
42362
42363        let theRequest =
42364            crate::v1_1_4::request::packages_get_package_for_user::reqwest_blocking_request(theBuilder)?;
42365
42366        ::log::debug!("HTTP request: {:?}", &theRequest);
42367
42368        let theResponse = self.client.execute(theRequest)?;
42369
42370        ::log::debug!("HTTP response: {:?}", &theResponse);
42371
42372        Ok(theResponse)
42373    }
42374
42375    /// Delete a package for a user
42376    /// 
42377    /// Deletes an entire package for a user. You cannot delete a public package if any version of the package has more than 5,000 downloads. In this scenario, contact GitHub support for further assistance.
42378    /// 
42379    /// To use this endpoint, you must authenticate using an access token with the `packages:read` and `packages:delete` scopes. In addition:
42380    /// - If `package_type` is not `container`, your token must also include the `repo` scope.
42381    /// - If `package_type` is `container`, you must also have admin permissions to the container you want to delete.
42382    /// 
42383    /// [API method documentation](https://docs.github.com/rest/reference/packages#delete-a-package-for-a-user)
42384    pub fn packages_delete_package_for_user(
42385        &self,
42386        package_type: &str,
42387        package_name: &str,
42388        username: &str,
42389    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42390        let mut theScheme = AuthScheme::from(&self.config.authentication);
42391
42392        while let Some(auth_step) = theScheme.step()? {
42393            match auth_step {
42394                ::authentic::AuthenticationStep::Request(auth_request) => {
42395                    theScheme.respond(self.client.execute(auth_request));
42396                }
42397                ::authentic::AuthenticationStep::WaitFor(duration) => {
42398                    (self.sleep)(duration);
42399                }
42400            }
42401        }
42402        let theBuilder = crate::v1_1_4::request::packages_delete_package_for_user::reqwest_blocking_builder(
42403            self.config.base_url.as_ref(),
42404            package_type,
42405            package_name,
42406            username,
42407            self.config.user_agent.as_ref(),
42408            self.config.accept.as_deref(),
42409        )?
42410        .with_authentication(&theScheme)?;
42411
42412        let theRequest =
42413            crate::v1_1_4::request::packages_delete_package_for_user::reqwest_blocking_request(theBuilder)?;
42414
42415        ::log::debug!("HTTP request: {:?}", &theRequest);
42416
42417        let theResponse = self.client.execute(theRequest)?;
42418
42419        ::log::debug!("HTTP response: {:?}", &theResponse);
42420
42421        Ok(theResponse)
42422    }
42423
42424    /// Restore a package for a user
42425    /// 
42426    /// Restores an entire package for a user.
42427    /// 
42428    /// You can restore a deleted package under the following conditions:
42429    ///   - The package was deleted within the last 30 days.
42430    ///   - The same package namespace and version is still available and not reused for a new package. If the same package namespace is not available, you will not be able to restore your package. In this scenario, to restore the deleted package, you must delete the new package that uses the deleted package's namespace first.
42431    /// 
42432    /// To use this endpoint, you must authenticate using an access token with the `packages:read` and `packages:write` scopes. In addition:
42433    /// - If `package_type` is not `container`, your token must also include the `repo` scope.
42434    /// - If `package_type` is `container`, you must also have admin permissions to the container that you want to restore.
42435    /// 
42436    /// [API method documentation](https://docs.github.com/rest/reference/packages#restore-a-package-for-a-user)
42437    pub fn packages_restore_package_for_user(
42438        &self,
42439        package_type: &str,
42440        package_name: &str,
42441        username: &str,
42442        token: ::std::option::Option<&str>,
42443    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42444        let mut theScheme = AuthScheme::from(&self.config.authentication);
42445
42446        while let Some(auth_step) = theScheme.step()? {
42447            match auth_step {
42448                ::authentic::AuthenticationStep::Request(auth_request) => {
42449                    theScheme.respond(self.client.execute(auth_request));
42450                }
42451                ::authentic::AuthenticationStep::WaitFor(duration) => {
42452                    (self.sleep)(duration);
42453                }
42454            }
42455        }
42456        let theBuilder = crate::v1_1_4::request::packages_restore_package_for_user::reqwest_blocking_builder(
42457            self.config.base_url.as_ref(),
42458            package_type,
42459            package_name,
42460            username,
42461            token,
42462            self.config.user_agent.as_ref(),
42463            self.config.accept.as_deref(),
42464        )?
42465        .with_authentication(&theScheme)?;
42466
42467        let theRequest =
42468            crate::v1_1_4::request::packages_restore_package_for_user::reqwest_blocking_request(theBuilder)?;
42469
42470        ::log::debug!("HTTP request: {:?}", &theRequest);
42471
42472        let theResponse = self.client.execute(theRequest)?;
42473
42474        ::log::debug!("HTTP response: {:?}", &theResponse);
42475
42476        Ok(theResponse)
42477    }
42478
42479    /// Get all package versions for a package owned by a user
42480    /// 
42481    /// Returns all package versions for a public package owned by a specified user.
42482    /// 
42483    /// To use this endpoint, you must authenticate using an access token with the `packages:read` scope.
42484    /// If `package_type` is not `container`, your token must also include the `repo` scope.
42485    /// 
42486    /// [API method documentation](https://docs.github.com/rest/reference/packages#get-all-package-versions-for-a-package-owned-by-a-user)
42487    pub fn packages_get_all_package_versions_for_package_owned_by_user(
42488        &self,
42489        package_type: &str,
42490        package_name: &str,
42491        username: &str,
42492    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42493        let mut theScheme = AuthScheme::from(&self.config.authentication);
42494
42495        while let Some(auth_step) = theScheme.step()? {
42496            match auth_step {
42497                ::authentic::AuthenticationStep::Request(auth_request) => {
42498                    theScheme.respond(self.client.execute(auth_request));
42499                }
42500                ::authentic::AuthenticationStep::WaitFor(duration) => {
42501                    (self.sleep)(duration);
42502                }
42503            }
42504        }
42505        let theBuilder = crate::v1_1_4::request::packages_get_all_package_versions_for_package_owned_by_user::reqwest_blocking_builder(
42506            self.config.base_url.as_ref(),
42507            package_type,
42508            package_name,
42509            username,
42510            self.config.user_agent.as_ref(),
42511            self.config.accept.as_deref(),
42512        )?
42513        .with_authentication(&theScheme)?;
42514
42515        let theRequest =
42516            crate::v1_1_4::request::packages_get_all_package_versions_for_package_owned_by_user::reqwest_blocking_request(theBuilder)?;
42517
42518        ::log::debug!("HTTP request: {:?}", &theRequest);
42519
42520        let theResponse = self.client.execute(theRequest)?;
42521
42522        ::log::debug!("HTTP response: {:?}", &theResponse);
42523
42524        Ok(theResponse)
42525    }
42526
42527    /// Get a package version for a user
42528    /// 
42529    /// Gets a specific package version for a public package owned by a specified user.
42530    /// 
42531    /// At this time, to use this endpoint, you must authenticate using an access token with the `packages:read` scope.
42532    /// If `package_type` is not `container`, your token must also include the `repo` scope.
42533    /// 
42534    /// [API method documentation](https://docs.github.com/rest/reference/packages#get-a-package-version-for-a-user)
42535    pub fn packages_get_package_version_for_user(
42536        &self,
42537        package_type: &str,
42538        package_name: &str,
42539        package_version_id: i64,
42540        username: &str,
42541    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42542        let mut theScheme = AuthScheme::from(&self.config.authentication);
42543
42544        while let Some(auth_step) = theScheme.step()? {
42545            match auth_step {
42546                ::authentic::AuthenticationStep::Request(auth_request) => {
42547                    theScheme.respond(self.client.execute(auth_request));
42548                }
42549                ::authentic::AuthenticationStep::WaitFor(duration) => {
42550                    (self.sleep)(duration);
42551                }
42552            }
42553        }
42554        let theBuilder = crate::v1_1_4::request::packages_get_package_version_for_user::reqwest_blocking_builder(
42555            self.config.base_url.as_ref(),
42556            package_type,
42557            package_name,
42558            package_version_id,
42559            username,
42560            self.config.user_agent.as_ref(),
42561            self.config.accept.as_deref(),
42562        )?
42563        .with_authentication(&theScheme)?;
42564
42565        let theRequest =
42566            crate::v1_1_4::request::packages_get_package_version_for_user::reqwest_blocking_request(theBuilder)?;
42567
42568        ::log::debug!("HTTP request: {:?}", &theRequest);
42569
42570        let theResponse = self.client.execute(theRequest)?;
42571
42572        ::log::debug!("HTTP response: {:?}", &theResponse);
42573
42574        Ok(theResponse)
42575    }
42576
42577    /// Delete package version for a user
42578    /// 
42579    /// Deletes a specific package version for a user. If the package is public and the package version has more than 5,000 downloads, you cannot delete the package version. In this scenario, contact GitHub support for further assistance.
42580    /// 
42581    /// To use this endpoint, you must authenticate using an access token with the `packages:read` and `packages:delete` scopes. In addition:
42582    /// - If `package_type` is not `container`, your token must also include the `repo` scope.
42583    /// - If `package_type` is `container`, you must also have admin permissions to the container you want to delete.
42584    /// 
42585    /// [API method documentation](https://docs.github.com/rest/reference/packages#delete-a-package-version-for-a-user)
42586    pub fn packages_delete_package_version_for_user(
42587        &self,
42588        package_type: &str,
42589        package_name: &str,
42590        username: &str,
42591        package_version_id: i64,
42592    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42593        let mut theScheme = AuthScheme::from(&self.config.authentication);
42594
42595        while let Some(auth_step) = theScheme.step()? {
42596            match auth_step {
42597                ::authentic::AuthenticationStep::Request(auth_request) => {
42598                    theScheme.respond(self.client.execute(auth_request));
42599                }
42600                ::authentic::AuthenticationStep::WaitFor(duration) => {
42601                    (self.sleep)(duration);
42602                }
42603            }
42604        }
42605        let theBuilder = crate::v1_1_4::request::packages_delete_package_version_for_user::reqwest_blocking_builder(
42606            self.config.base_url.as_ref(),
42607            package_type,
42608            package_name,
42609            username,
42610            package_version_id,
42611            self.config.user_agent.as_ref(),
42612            self.config.accept.as_deref(),
42613        )?
42614        .with_authentication(&theScheme)?;
42615
42616        let theRequest =
42617            crate::v1_1_4::request::packages_delete_package_version_for_user::reqwest_blocking_request(theBuilder)?;
42618
42619        ::log::debug!("HTTP request: {:?}", &theRequest);
42620
42621        let theResponse = self.client.execute(theRequest)?;
42622
42623        ::log::debug!("HTTP response: {:?}", &theResponse);
42624
42625        Ok(theResponse)
42626    }
42627
42628    /// Restore package version for a user
42629    /// 
42630    /// Restores a specific package version for a user.
42631    /// 
42632    /// You can restore a deleted package under the following conditions:
42633    ///   - The package was deleted within the last 30 days.
42634    ///   - The same package namespace and version is still available and not reused for a new package. If the same package namespace is not available, you will not be able to restore your package. In this scenario, to restore the deleted package, you must delete the new package that uses the deleted package's namespace first.
42635    /// 
42636    /// To use this endpoint, you must authenticate using an access token with the `packages:read` and `packages:write` scopes. In addition:
42637    /// - If `package_type` is not `container`, your token must also include the `repo` scope.
42638    /// - If `package_type` is `container`, you must also have admin permissions to the container that you want to restore.
42639    /// 
42640    /// [API method documentation](https://docs.github.com/rest/reference/packages#restore-a-package-version-for-a-user)
42641    pub fn packages_restore_package_version_for_user(
42642        &self,
42643        package_type: &str,
42644        package_name: &str,
42645        username: &str,
42646        package_version_id: i64,
42647    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42648        let mut theScheme = AuthScheme::from(&self.config.authentication);
42649
42650        while let Some(auth_step) = theScheme.step()? {
42651            match auth_step {
42652                ::authentic::AuthenticationStep::Request(auth_request) => {
42653                    theScheme.respond(self.client.execute(auth_request));
42654                }
42655                ::authentic::AuthenticationStep::WaitFor(duration) => {
42656                    (self.sleep)(duration);
42657                }
42658            }
42659        }
42660        let theBuilder = crate::v1_1_4::request::packages_restore_package_version_for_user::reqwest_blocking_builder(
42661            self.config.base_url.as_ref(),
42662            package_type,
42663            package_name,
42664            username,
42665            package_version_id,
42666            self.config.user_agent.as_ref(),
42667            self.config.accept.as_deref(),
42668        )?
42669        .with_authentication(&theScheme)?;
42670
42671        let theRequest =
42672            crate::v1_1_4::request::packages_restore_package_version_for_user::reqwest_blocking_request(theBuilder)?;
42673
42674        ::log::debug!("HTTP request: {:?}", &theRequest);
42675
42676        let theResponse = self.client.execute(theRequest)?;
42677
42678        ::log::debug!("HTTP response: {:?}", &theResponse);
42679
42680        Ok(theResponse)
42681    }
42682
42683    /// List user projects
42684    /// 
42685    /// [API method documentation](https://docs.github.com/rest/reference/projects#list-user-projects)
42686    pub fn projects_list_for_user(
42687        &self,
42688        username: &str,
42689        state: ::std::option::Option<&str>,
42690        per_page: ::std::option::Option<i64>,
42691        page: ::std::option::Option<i64>,
42692    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42693        let mut theScheme = AuthScheme::from(&self.config.authentication);
42694
42695        while let Some(auth_step) = theScheme.step()? {
42696            match auth_step {
42697                ::authentic::AuthenticationStep::Request(auth_request) => {
42698                    theScheme.respond(self.client.execute(auth_request));
42699                }
42700                ::authentic::AuthenticationStep::WaitFor(duration) => {
42701                    (self.sleep)(duration);
42702                }
42703            }
42704        }
42705        let theBuilder = crate::v1_1_4::request::projects_list_for_user::reqwest_blocking_builder(
42706            self.config.base_url.as_ref(),
42707            username,
42708            state,
42709            per_page,
42710            page,
42711            self.config.user_agent.as_ref(),
42712            self.config.accept.as_deref(),
42713        )?
42714        .with_authentication(&theScheme)?;
42715
42716        let theRequest =
42717            crate::v1_1_4::request::projects_list_for_user::reqwest_blocking_request(theBuilder)?;
42718
42719        ::log::debug!("HTTP request: {:?}", &theRequest);
42720
42721        let theResponse = self.client.execute(theRequest)?;
42722
42723        ::log::debug!("HTTP response: {:?}", &theResponse);
42724
42725        Ok(theResponse)
42726    }
42727
42728    /// List events received by the authenticated user
42729    /// 
42730    /// These are events that you've received by watching repos and following users. If you are authenticated as the given user, you will see private events. Otherwise, you'll only see public events.
42731    /// 
42732    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-events-received-by-the-authenticated-user)
42733    pub fn activity_list_received_events_for_user(
42734        &self,
42735        username: &str,
42736        per_page: ::std::option::Option<i64>,
42737        page: ::std::option::Option<i64>,
42738    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42739        let mut theScheme = AuthScheme::from(&self.config.authentication);
42740
42741        while let Some(auth_step) = theScheme.step()? {
42742            match auth_step {
42743                ::authentic::AuthenticationStep::Request(auth_request) => {
42744                    theScheme.respond(self.client.execute(auth_request));
42745                }
42746                ::authentic::AuthenticationStep::WaitFor(duration) => {
42747                    (self.sleep)(duration);
42748                }
42749            }
42750        }
42751        let theBuilder = crate::v1_1_4::request::activity_list_received_events_for_user::reqwest_blocking_builder(
42752            self.config.base_url.as_ref(),
42753            username,
42754            per_page,
42755            page,
42756            self.config.user_agent.as_ref(),
42757            self.config.accept.as_deref(),
42758        )?
42759        .with_authentication(&theScheme)?;
42760
42761        let theRequest =
42762            crate::v1_1_4::request::activity_list_received_events_for_user::reqwest_blocking_request(theBuilder)?;
42763
42764        ::log::debug!("HTTP request: {:?}", &theRequest);
42765
42766        let theResponse = self.client.execute(theRequest)?;
42767
42768        ::log::debug!("HTTP response: {:?}", &theResponse);
42769
42770        Ok(theResponse)
42771    }
42772
42773    /// List public events received by a user
42774    /// 
42775    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-public-events-received-by-a-user)
42776    pub fn activity_list_received_public_events_for_user(
42777        &self,
42778        username: &str,
42779        per_page: ::std::option::Option<i64>,
42780        page: ::std::option::Option<i64>,
42781    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42782        let mut theScheme = AuthScheme::from(&self.config.authentication);
42783
42784        while let Some(auth_step) = theScheme.step()? {
42785            match auth_step {
42786                ::authentic::AuthenticationStep::Request(auth_request) => {
42787                    theScheme.respond(self.client.execute(auth_request));
42788                }
42789                ::authentic::AuthenticationStep::WaitFor(duration) => {
42790                    (self.sleep)(duration);
42791                }
42792            }
42793        }
42794        let theBuilder = crate::v1_1_4::request::activity_list_received_public_events_for_user::reqwest_blocking_builder(
42795            self.config.base_url.as_ref(),
42796            username,
42797            per_page,
42798            page,
42799            self.config.user_agent.as_ref(),
42800            self.config.accept.as_deref(),
42801        )?
42802        .with_authentication(&theScheme)?;
42803
42804        let theRequest =
42805            crate::v1_1_4::request::activity_list_received_public_events_for_user::reqwest_blocking_request(theBuilder)?;
42806
42807        ::log::debug!("HTTP request: {:?}", &theRequest);
42808
42809        let theResponse = self.client.execute(theRequest)?;
42810
42811        ::log::debug!("HTTP response: {:?}", &theResponse);
42812
42813        Ok(theResponse)
42814    }
42815
42816    /// List repositories for a user
42817    /// 
42818    /// Lists public repositories for the specified user. Note: For GitHub AE, this endpoint will list internal repositories for the specified user.
42819    /// 
42820    /// [API method documentation](https://docs.github.com/rest/reference/repos#list-repositories-for-a-user)
42821    pub fn repos_list_for_user(
42822        &self,
42823        username: &str,
42824        r#type: ::std::option::Option<&str>,
42825        sort: &crate::types::Sort<'_>,
42826        per_page: ::std::option::Option<i64>,
42827        page: ::std::option::Option<i64>,
42828    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42829        let (sort, direction) = sort.extract();
42830        let mut theScheme = AuthScheme::from(&self.config.authentication);
42831
42832        while let Some(auth_step) = theScheme.step()? {
42833            match auth_step {
42834                ::authentic::AuthenticationStep::Request(auth_request) => {
42835                    theScheme.respond(self.client.execute(auth_request));
42836                }
42837                ::authentic::AuthenticationStep::WaitFor(duration) => {
42838                    (self.sleep)(duration);
42839                }
42840            }
42841        }
42842        let theBuilder = crate::v1_1_4::request::repos_list_for_user::reqwest_blocking_builder(
42843            self.config.base_url.as_ref(),
42844            username,
42845            r#type,
42846            sort,
42847            direction,
42848            per_page,
42849            page,
42850            self.config.user_agent.as_ref(),
42851            self.config.accept.as_deref(),
42852        )?
42853        .with_authentication(&theScheme)?;
42854
42855        let theRequest =
42856            crate::v1_1_4::request::repos_list_for_user::reqwest_blocking_request(theBuilder)?;
42857
42858        ::log::debug!("HTTP request: {:?}", &theRequest);
42859
42860        let theResponse = self.client.execute(theRequest)?;
42861
42862        ::log::debug!("HTTP response: {:?}", &theResponse);
42863
42864        Ok(theResponse)
42865    }
42866
42867    /// Get GitHub Actions billing for a user
42868    /// 
42869    /// Gets the summary of the free and paid GitHub Actions minutes used.
42870    /// 
42871    /// Paid minutes only apply to workflows in private repositories that use GitHub-hosted runners. Minutes used is listed for each GitHub-hosted runner operating system. Any job re-runs are also included in the usage. The usage returned includes any minute multipliers for macOS and Windows runners, and is rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)".
42872    /// 
42873    /// Access tokens must have the `user` scope.
42874    /// 
42875    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-github-actions-billing-for-a-user)
42876    pub fn billing_get_github_actions_billing_user(
42877        &self,
42878        username: &str,
42879    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42880        let mut theScheme = AuthScheme::from(&self.config.authentication);
42881
42882        while let Some(auth_step) = theScheme.step()? {
42883            match auth_step {
42884                ::authentic::AuthenticationStep::Request(auth_request) => {
42885                    theScheme.respond(self.client.execute(auth_request));
42886                }
42887                ::authentic::AuthenticationStep::WaitFor(duration) => {
42888                    (self.sleep)(duration);
42889                }
42890            }
42891        }
42892        let theBuilder = crate::v1_1_4::request::billing_get_github_actions_billing_user::reqwest_blocking_builder(
42893            self.config.base_url.as_ref(),
42894            username,
42895            self.config.user_agent.as_ref(),
42896            self.config.accept.as_deref(),
42897        )?
42898        .with_authentication(&theScheme)?;
42899
42900        let theRequest =
42901            crate::v1_1_4::request::billing_get_github_actions_billing_user::reqwest_blocking_request(theBuilder)?;
42902
42903        ::log::debug!("HTTP request: {:?}", &theRequest);
42904
42905        let theResponse = self.client.execute(theRequest)?;
42906
42907        ::log::debug!("HTTP response: {:?}", &theResponse);
42908
42909        Ok(theResponse)
42910    }
42911
42912    /// Get GitHub Packages billing for a user
42913    /// 
42914    /// Gets the free and paid storage used for GitHub Packages in gigabytes.
42915    /// 
42916    /// Paid minutes only apply to packages stored for private repositories. For more information, see "[Managing billing for GitHub Packages](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages)."
42917    /// 
42918    /// Access tokens must have the `user` scope.
42919    /// 
42920    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-github-packages-billing-for-a-user)
42921    pub fn billing_get_github_packages_billing_user(
42922        &self,
42923        username: &str,
42924    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42925        let mut theScheme = AuthScheme::from(&self.config.authentication);
42926
42927        while let Some(auth_step) = theScheme.step()? {
42928            match auth_step {
42929                ::authentic::AuthenticationStep::Request(auth_request) => {
42930                    theScheme.respond(self.client.execute(auth_request));
42931                }
42932                ::authentic::AuthenticationStep::WaitFor(duration) => {
42933                    (self.sleep)(duration);
42934                }
42935            }
42936        }
42937        let theBuilder = crate::v1_1_4::request::billing_get_github_packages_billing_user::reqwest_blocking_builder(
42938            self.config.base_url.as_ref(),
42939            username,
42940            self.config.user_agent.as_ref(),
42941            self.config.accept.as_deref(),
42942        )?
42943        .with_authentication(&theScheme)?;
42944
42945        let theRequest =
42946            crate::v1_1_4::request::billing_get_github_packages_billing_user::reqwest_blocking_request(theBuilder)?;
42947
42948        ::log::debug!("HTTP request: {:?}", &theRequest);
42949
42950        let theResponse = self.client.execute(theRequest)?;
42951
42952        ::log::debug!("HTTP response: {:?}", &theResponse);
42953
42954        Ok(theResponse)
42955    }
42956
42957    /// Get shared storage billing for a user
42958    /// 
42959    /// Gets the estimated paid and estimated total storage used for GitHub Actions and GitHub Packages.
42960    /// 
42961    /// Paid minutes only apply to packages stored for private repositories. For more information, see "[Managing billing for GitHub Packages](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages)."
42962    /// 
42963    /// Access tokens must have the `user` scope.
42964    /// 
42965    /// [API method documentation](https://docs.github.com/rest/reference/billing#get-shared-storage-billing-for-a-user)
42966    pub fn billing_get_shared_storage_billing_user(
42967        &self,
42968        username: &str,
42969    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
42970        let mut theScheme = AuthScheme::from(&self.config.authentication);
42971
42972        while let Some(auth_step) = theScheme.step()? {
42973            match auth_step {
42974                ::authentic::AuthenticationStep::Request(auth_request) => {
42975                    theScheme.respond(self.client.execute(auth_request));
42976                }
42977                ::authentic::AuthenticationStep::WaitFor(duration) => {
42978                    (self.sleep)(duration);
42979                }
42980            }
42981        }
42982        let theBuilder = crate::v1_1_4::request::billing_get_shared_storage_billing_user::reqwest_blocking_builder(
42983            self.config.base_url.as_ref(),
42984            username,
42985            self.config.user_agent.as_ref(),
42986            self.config.accept.as_deref(),
42987        )?
42988        .with_authentication(&theScheme)?;
42989
42990        let theRequest =
42991            crate::v1_1_4::request::billing_get_shared_storage_billing_user::reqwest_blocking_request(theBuilder)?;
42992
42993        ::log::debug!("HTTP request: {:?}", &theRequest);
42994
42995        let theResponse = self.client.execute(theRequest)?;
42996
42997        ::log::debug!("HTTP response: {:?}", &theResponse);
42998
42999        Ok(theResponse)
43000    }
43001
43002    /// List repositories starred by a user
43003    /// 
43004    /// Lists repositories a user has starred.
43005    /// 
43006    /// You can also find out _when_ stars were created by passing the following custom [media type](https://docs.github.com/rest/overview/media-types/) via the `Accept` header:
43007    /// 
43008    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-repositories-starred-by-a-user)
43009    pub fn activity_list_repos_starred_by_user(
43010        &self,
43011        username: &str,
43012        sort: &crate::types::Sort<'_>,
43013        per_page: ::std::option::Option<i64>,
43014        page: ::std::option::Option<i64>,
43015    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
43016        let (sort, direction) = sort.extract();
43017        let mut theScheme = AuthScheme::from(&self.config.authentication);
43018
43019        while let Some(auth_step) = theScheme.step()? {
43020            match auth_step {
43021                ::authentic::AuthenticationStep::Request(auth_request) => {
43022                    theScheme.respond(self.client.execute(auth_request));
43023                }
43024                ::authentic::AuthenticationStep::WaitFor(duration) => {
43025                    (self.sleep)(duration);
43026                }
43027            }
43028        }
43029        let theBuilder = crate::v1_1_4::request::activity_list_repos_starred_by_user::reqwest_blocking_builder(
43030            self.config.base_url.as_ref(),
43031            username,
43032            sort,
43033            direction,
43034            per_page,
43035            page,
43036            self.config.user_agent.as_ref(),
43037            self.config.accept.as_deref(),
43038        )?
43039        .with_authentication(&theScheme)?;
43040
43041        let theRequest =
43042            crate::v1_1_4::request::activity_list_repos_starred_by_user::reqwest_blocking_request(theBuilder)?;
43043
43044        ::log::debug!("HTTP request: {:?}", &theRequest);
43045
43046        let theResponse = self.client.execute(theRequest)?;
43047
43048        ::log::debug!("HTTP response: {:?}", &theResponse);
43049
43050        Ok(theResponse)
43051    }
43052
43053    /// List repositories watched by a user
43054    /// 
43055    /// Lists repositories a user is watching.
43056    /// 
43057    /// [API method documentation](https://docs.github.com/rest/reference/activity#list-repositories-watched-by-a-user)
43058    pub fn activity_list_repos_watched_by_user(
43059        &self,
43060        username: &str,
43061        per_page: ::std::option::Option<i64>,
43062        page: ::std::option::Option<i64>,
43063    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
43064        let mut theScheme = AuthScheme::from(&self.config.authentication);
43065
43066        while let Some(auth_step) = theScheme.step()? {
43067            match auth_step {
43068                ::authentic::AuthenticationStep::Request(auth_request) => {
43069                    theScheme.respond(self.client.execute(auth_request));
43070                }
43071                ::authentic::AuthenticationStep::WaitFor(duration) => {
43072                    (self.sleep)(duration);
43073                }
43074            }
43075        }
43076        let theBuilder = crate::v1_1_4::request::activity_list_repos_watched_by_user::reqwest_blocking_builder(
43077            self.config.base_url.as_ref(),
43078            username,
43079            per_page,
43080            page,
43081            self.config.user_agent.as_ref(),
43082            self.config.accept.as_deref(),
43083        )?
43084        .with_authentication(&theScheme)?;
43085
43086        let theRequest =
43087            crate::v1_1_4::request::activity_list_repos_watched_by_user::reqwest_blocking_request(theBuilder)?;
43088
43089        ::log::debug!("HTTP request: {:?}", &theRequest);
43090
43091        let theResponse = self.client.execute(theRequest)?;
43092
43093        ::log::debug!("HTTP response: {:?}", &theResponse);
43094
43095        Ok(theResponse)
43096    }
43097
43098    /// Get the Zen of GitHub
43099    /// 
43100    /// Get a random sentence from the Zen of GitHub
43101    pub fn meta_get_zen(
43102        &self,
43103    ) -> Result<::reqwest::blocking::Response, crate::v1_1_4::ApiError> {
43104        let mut theScheme = AuthScheme::from(&self.config.authentication);
43105
43106        while let Some(auth_step) = theScheme.step()? {
43107            match auth_step {
43108                ::authentic::AuthenticationStep::Request(auth_request) => {
43109                    theScheme.respond(self.client.execute(auth_request));
43110                }
43111                ::authentic::AuthenticationStep::WaitFor(duration) => {
43112                    (self.sleep)(duration);
43113                }
43114            }
43115        }
43116        let theBuilder = crate::v1_1_4::request::meta_get_zen::reqwest_blocking_builder(
43117            self.config.base_url.as_ref(),
43118            self.config.user_agent.as_ref(),
43119            self.config.accept.as_deref(),
43120        )?
43121        .with_authentication(&theScheme)?;
43122
43123        let theRequest =
43124            crate::v1_1_4::request::meta_get_zen::reqwest_blocking_request(theBuilder)?;
43125
43126        ::log::debug!("HTTP request: {:?}", &theRequest);
43127
43128        let theResponse = self.client.execute(theRequest)?;
43129
43130        ::log::debug!("HTTP response: {:?}", &theResponse);
43131
43132        Ok(theResponse)
43133    }
43134}