Class EndpointOAuthGitHub.Builder

java.lang.Object
com.ngrok.definitions.EndpointOAuthGitHub.Builder
Enclosing class:
EndpointOAuthGitHub

public static class EndpointOAuthGitHub.Builder extends Object
Builder class for EndpointOAuthGitHub.
  • Method Details

    • clientId

      public EndpointOAuthGitHub.Builder clientId(String clientId)
      the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well.
      Parameters:
      clientId - the value of the client_id parameter as a String
      Returns:
      this builder instance
    • clientId

      public EndpointOAuthGitHub.Builder clientId(Optional<String> clientId)
      the OAuth app client ID. retrieve it from the identity provider's dashboard where you created your own OAuth app. optional. if unspecified, ngrok will use its own managed oauth application which has additional restrictions. see the OAuth module docs for more details. if present, client_secret must be present as well.
      Parameters:
      clientId - the value of the client_id parameter as a String, wrapped in an Optional
      Returns:
      this builder instance
    • clientSecret

      public EndpointOAuthGitHub.Builder clientSecret(String clientSecret)
      the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id.
      Parameters:
      clientSecret - the value of the client_secret parameter as a String
      Returns:
      this builder instance
    • clientSecret

      public EndpointOAuthGitHub.Builder clientSecret(Optional<String> clientSecret)
      the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for client_id.
      Parameters:
      clientSecret - the value of the client_secret parameter as a String, wrapped in an Optional
      Returns:
      this builder instance
    • scopes

      public EndpointOAuthGitHub.Builder scopes(List<String> scopes)
      a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes)
      Parameters:
      scopes - the value of the scopes parameter as a List of String
      Returns:
      this builder instance
    • scopes

      public EndpointOAuthGitHub.Builder scopes(Optional<List<String>> scopes)
      a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both client_id and client_secret to set scopes)
      Parameters:
      scopes - the value of the scopes parameter as a List of String, wrapped in an Optional
      Returns:
      this builder instance
    • emailAddresses

      public EndpointOAuthGitHub.Builder emailAddresses(List<String> emailAddresses)
      a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint
      Parameters:
      emailAddresses - the value of the email_addresses parameter as a List of String
      Returns:
      this builder instance
    • emailAddresses

      public EndpointOAuthGitHub.Builder emailAddresses(Optional<List<String>> emailAddresses)
      a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint
      Parameters:
      emailAddresses - the value of the email_addresses parameter as a List of String, wrapped in an Optional
      Returns:
      this builder instance
    • emailDomains

      public EndpointOAuthGitHub.Builder emailDomains(List<String> emailDomains)
      a list of email domains of users authenticated by identity provider who are allowed access to the endpoint
      Parameters:
      emailDomains - the value of the email_domains parameter as a List of String
      Returns:
      this builder instance
    • emailDomains

      public EndpointOAuthGitHub.Builder emailDomains(Optional<List<String>> emailDomains)
      a list of email domains of users authenticated by identity provider who are allowed access to the endpoint
      Parameters:
      emailDomains - the value of the email_domains parameter as a List of String, wrapped in an Optional
      Returns:
      this builder instance
    • teams

      public EndpointOAuthGitHub.Builder teams(List<String> teams)
      a list of github teams identifiers. users will be allowed access to the endpoint if they are a member of any of these teams. identifiers should be in the 'slug' format qualified with the org name, e.g. org-name/team-name
      Parameters:
      teams - the value of the teams parameter as a List of String
      Returns:
      this builder instance
    • teams

      a list of github teams identifiers. users will be allowed access to the endpoint if they are a member of any of these teams. identifiers should be in the 'slug' format qualified with the org name, e.g. org-name/team-name
      Parameters:
      teams - the value of the teams parameter as a List of String, wrapped in an Optional
      Returns:
      this builder instance
    • organizations

      public EndpointOAuthGitHub.Builder organizations(List<String> organizations)
      a list of github org identifiers. users who are members of any of the listed organizations will be allowed access. identifiers should be the organization's 'slug'
      Parameters:
      organizations - the value of the organizations parameter as a List of String
      Returns:
      this builder instance
    • organizations

      public EndpointOAuthGitHub.Builder organizations(Optional<List<String>> organizations)
      a list of github org identifiers. users who are members of any of the listed organizations will be allowed access. identifiers should be the organization's 'slug'
      Parameters:
      organizations - the value of the organizations parameter as a List of String, wrapped in an Optional
      Returns:
      this builder instance
    • build

      public EndpointOAuthGitHub build()
      Constructs the EndpointOAuthGitHub instance.
      Returns:
      a new EndpointOAuthGitHub