Package com.ngrok

# Class Ngrok

java.lang.Object
com.ngrok.Ngrok

public class Ngrok extends Object
Main entry point for the ngrok API.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `class`
  `Ngrok.BackendsNamespace`
  A namespace object for Backends.
  `class`
  `Ngrok.EdgeModulesNamespace`
  A namespace object for EdgeModules.
  `class`
  `Ngrok.EdgesNamespace`
  A namespace object for Edges.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Ngrok(NgrokApiClient apiClient)`
  Create a new ngrok API instance.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `AbuseReports`
  `abuseReports()`
  Abuse Reports allow you to submit take-down requests for URLs hosted by ngrok that violate ngrok's terms of service.
  `AgentIngresses`
  `agentIngresses()`
  Creates a service client for AgentIngresses.
  `ApiKeys`
  `apiKeys()`
  API Keys are used to authenticate to the ngrok API.
  `Ngrok.BackendsNamespace`
  `backends()`
  Creates a namespace object for Backends.
  `CertificateAuthorities`
  `certificateAuthorities()`
  Certificate Authorities are x509 certificates that are used to sign other x509 certificates.
  `static Ngrok`
  `createDefault()`
  Creates a new ngrok API instance using the default API client.
  `static Ngrok`
  `createDefault(String apiKey)`
  Creates a new ngrok API instance using the default API client.
  `Credentials`
  `credentials()`
  Tunnel Credentials are ngrok agent authtokens.
  `Ngrok.EdgeModulesNamespace`
  `edgeModules()`
  Creates a namespace object for EdgeModules.
  `Ngrok.EdgesNamespace`
  `edges()`
  Creates a namespace object for Edges.
  `Endpoints`
  `endpoints()`
  Endpoints provides an API for querying the endpoint objects which define what tunnel or edge is used to serve a hostport.
  `EventDestinations`
  `eventDestinations()`
  Creates a service client for EventDestinations.
  `EventSources`
  `eventSources()`
  Creates a service client for EventSources.
  `EventSubscriptions`
  `eventSubscriptions()`
  Creates a service client for EventSubscriptions.
  `IpPolicies`
  `ipPolicies()`
  IP Policies are reusable groups of CIDR ranges with an `allow` or `deny` action.
  `IpPolicyRules`
  `ipPolicyRules()`
  IP Policy Rules are the IPv4 or IPv6 CIDRs entries that make up an IP Policy.
  `IpRestrictions`
  `ipRestrictions()`
  An IP restriction is a restriction placed on the CIDRs that are allowed to initiate traffic to a specific aspect of your ngrok account.
  `ReservedAddrs`
  `reservedAddrs()`
  Reserved Addresses are TCP addresses that can be used to listen for traffic.
  `ReservedDomains`
  `reservedDomains()`
  Reserved Domains are hostnames that you can listen for traffic on.
  `SshCertificateAuthorities`
  `sshCertificateAuthorities()`
  An SSH Certificate Authority is a pair of an SSH Certificate and its private key that can be used to sign other SSH host and user certificates.
  `SshCredentials`
  `sshCredentials()`
  SSH Credentials are SSH public keys that can be used to start SSH tunnels via the ngrok SSH tunnel gateway.
  `SshHostCertificates`
  `sshHostCertificates()`
  SSH Host Certificates along with the corresponding private key allows an SSH server to assert its authenticity to connecting SSH clients who trust the SSH Certificate Authority that was used to sign the certificate.
  `SshUserCertificates`
  `sshUserCertificates()`
  SSH User Certificates are presented by SSH clients when connecting to an SSH server to authenticate their connection.
  `TlsCertificates`
  `tlsCertificates()`
  TLS Certificates are pairs of x509 certificates and their matching private key that can be used to terminate TLS traffic.
  `Tunnels`
  `tunnels()`
  Tunnels provide endpoints to access services exposed by a running ngrok agent tunnel session or an SSH reverse tunnel session.
  `TunnelSessions`
  `tunnelSessions()`
  Tunnel Sessions represent instances of ngrok agents or SSH reverse tunnel sessions that are running and connected to the ngrok service.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### Ngrok

    public Ngrok(NgrokApiClient apiClient)
    Create a new ngrok API instance.
    Parameters:
      `apiClient` - an instance of `NgrokApiClient`
    See Also:
      - `DefaultNgrokApiClient`

- ## Method Details

  - ### createDefault

    public static Ngrok createDefault(String apiKey)
    Creates a new ngrok API instance using the default API client.
    Parameters:
      `apiKey` - API key used to access the ngrok API
    Returns:
      an ngrok API instance

  - ### createDefault

    public static Ngrok createDefault()
    Creates a new ngrok API instance using the default API client. The API key is pulled from the environment variable `NGROK_API_KEY`.
    Returns:
      an ngrok API instance

  - ### abuseReports

    public AbuseReports abuseReports()
    Abuse Reports allow you to submit take-down requests for URLs hosted by ngrok that violate ngrok's terms of service. See also https://ngrok.com/docs/api#api-abuse-reports.
    Returns:
      a service client

  - ### agentIngresses

    public AgentIngresses agentIngresses()
    Creates a service client for AgentIngresses. See also https://ngrok.com/docs/api#api-agent-ingresses.
    Returns:
      a service client

  - ### apiKeys

    public ApiKeys apiKeys()
    API Keys are used to authenticate to the ngrok API. You may use the API itself to provision and manage API Keys but you'll need to provision your first API key from the API Keys page on your ngrok.com dashboard. See also https://ngrok.com/docs/api#api-api-keys.
    Returns:
      a service client

  - ### certificateAuthorities

    public CertificateAuthorities certificateAuthorities()
    Certificate Authorities are x509 certificates that are used to sign other x509 certificates. Attach a Certificate Authority to the Mutual TLS module to verify that the TLS certificate presented by a client has been signed by this CA. Certificate Authorities are used only for mTLS validation only and thus a private key is not included in the resource. See also https://ngrok.com/docs/api#api-certificate-authorities.
    Returns:
      a service client

  - ### credentials

    public Credentials credentials()
    Tunnel Credentials are ngrok agent authtokens. They authorize the ngrok agent to connect the ngrok service as your account. They are installed with the `ngrok config add-authtoken` command or by specifying it in the `ngrok.yml` configuration file with the `authtoken` property. See also https://ngrok.com/docs/api#api-credentials.
    Returns:
      a service client

  - ### endpoints

    public Endpoints endpoints()
    Endpoints provides an API for querying the endpoint objects which define what tunnel or edge is used to serve a hostport. Only active endpoints associated with a tunnel or backend are returned. See also https://ngrok.com/docs/api#api-endpoints.
    Returns:
      a service client

  - ### eventDestinations

    public EventDestinations eventDestinations()
    Creates a service client for EventDestinations. See also https://ngrok.com/docs/api#api-event-destinations.
    Returns:
      a service client

  - ### eventSubscriptions

    public EventSubscriptions eventSubscriptions()
    Creates a service client for EventSubscriptions. See also https://ngrok.com/docs/api#api-event-subscriptions.
    Returns:
      a service client

  - ### eventSources

    public EventSources eventSources()
    Creates a service client for EventSources. See also https://ngrok.com/docs/api#api-event-sources.
    Returns:
      a service client

  - ### ipPolicies

    public IpPolicies ipPolicies()
    IP Policies are reusable groups of CIDR ranges with an `allow` or `deny` action. They can be attached to endpoints via the Endpoint Configuration IP Policy module. They can also be used with IP Restrictions to control source IP ranges that can start tunnel sessions and connect to the API and dashboard. See also https://ngrok.com/docs/api#api-ip-policies.
    Returns:
      a service client

  - ### ipPolicyRules

    public IpPolicyRules ipPolicyRules()
    IP Policy Rules are the IPv4 or IPv6 CIDRs entries that make up an IP Policy. See also https://ngrok.com/docs/api#api-ip-policy-rules.
    Returns:
      a service client

  - ### ipRestrictions

    public IpRestrictions ipRestrictions()
    An IP restriction is a restriction placed on the CIDRs that are allowed to initiate traffic to a specific aspect of your ngrok account. An IP restriction has a type which defines the ingress it applies to. IP restrictions can be used to enforce the source IPs that can make API requests, log in to the dashboard, start ngrok agents, and connect to your public-facing endpoints. See also https://ngrok.com/docs/api#api-ip-restrictions.
    Returns:
      a service client

  - ### reservedAddrs

    public ReservedAddrs reservedAddrs()
    Reserved Addresses are TCP addresses that can be used to listen for traffic. TCP address hostnames and ports are assigned by ngrok, they cannot be chosen. See also https://ngrok.com/docs/api#api-reserved-addrs.
    Returns:
      a service client

  - ### reservedDomains

    public ReservedDomains reservedDomains()
    Reserved Domains are hostnames that you can listen for traffic on. Domains can be used to listen for http, https or tls traffic. You may use a domain that you own by creating a CNAME record specified in the returned resource. This CNAME record points traffic for that domain to ngrok's edge servers. See also https://ngrok.com/docs/api#api-reserved-domains.
    Returns:
      a service client

  - ### sshCertificateAuthorities

    public SshCertificateAuthorities sshCertificateAuthorities()
    An SSH Certificate Authority is a pair of an SSH Certificate and its private key that can be used to sign other SSH host and user certificates. See also https://ngrok.com/docs/api#api-ssh-certificate-authorities.
    Returns:
      a service client

  - ### sshCredentials

    public SshCredentials sshCredentials()
    SSH Credentials are SSH public keys that can be used to start SSH tunnels via the ngrok SSH tunnel gateway. See also https://ngrok.com/docs/api#api-ssh-credentials.
    Returns:
      a service client

  - ### sshHostCertificates

    public SshHostCertificates sshHostCertificates()
    SSH Host Certificates along with the corresponding private key allows an SSH server to assert its authenticity to connecting SSH clients who trust the SSH Certificate Authority that was used to sign the certificate. See also https://ngrok.com/docs/api#api-ssh-host-certificates.
    Returns:
      a service client

  - ### sshUserCertificates

    public SshUserCertificates sshUserCertificates()
    SSH User Certificates are presented by SSH clients when connecting to an SSH server to authenticate their connection. The SSH server must trust the SSH Certificate Authority used to sign the certificate. See also https://ngrok.com/docs/api#api-ssh-user-certificates.
    Returns:
      a service client

  - ### tlsCertificates

    public TlsCertificates tlsCertificates()
    TLS Certificates are pairs of x509 certificates and their matching private key that can be used to terminate TLS traffic. TLS certificates are unused until they are attached to a Domain. TLS Certificates may also be provisioned by ngrok automatically for domains on which you have enabled automated certificate provisioning. See also https://ngrok.com/docs/api#api-tls-certificates.
    Returns:
      a service client

  - ### tunnelSessions

    public TunnelSessions tunnelSessions()
    Tunnel Sessions represent instances of ngrok agents or SSH reverse tunnel sessions that are running and connected to the ngrok service. Each tunnel session can include one or more Tunnels. See also https://ngrok.com/docs/api#api-tunnel-sessions.
    Returns:
      a service client

  - ### tunnels

    public Tunnels tunnels()
    Tunnels provide endpoints to access services exposed by a running ngrok agent tunnel session or an SSH reverse tunnel session. See also https://ngrok.com/docs/api#api-tunnels.
    Returns:
      a service client

  - ### backends

    public Ngrok.BackendsNamespace backends()
    Creates a namespace object for Backends.
    Returns:
      a namespace object

  - ### edges

    public Ngrok.EdgesNamespace edges()
    Creates a namespace object for Edges.
    Returns:
      a namespace object

  - ### edgeModules

    public Ngrok.EdgeModulesNamespace edgeModules()
    Creates a namespace object for EdgeModules.
    Returns:
      a namespace object