API Object - access_tier

  • Updated on Apr 19, 2023

Access Tier Metadata

type Metadata struct {
	Name        string `json:"name"`
	Description string `json:"description"`
  	ClusterName string `json:"cluster_name"`
}

Access Tier Spec

type Spec struct {
	// Description and ClusterName should only be in the Metadata struct
	// but need to be set here as well
	Description string `json:"description"`
  	ClusterName string `json:"cluster_name"`

  	// API Key with access_tier scope used to authenticate the Access Tier
	APIKeyID          string          `json:"api_key_id"`

	// The canonical domain name of the the Access Tier. This is a public domain name or public IP reachable by the internet.
	Address 		  string		  `json:"address"`

	// Records how the Access Tier is deployed: docker, tarball, cloudformation, etc
	DeploymentMethod  string		  `json:"deployment_method"`

	// Enables and cnofigures Service Tunnel capability on the Access Tier
	TunnelEnduser   AccessTierTunnelInfo   `json:"tunnel_enduser"`

	// Disable Source Network Address Translation so the source IP address of the traffic is the actual client’s IP address instead of the NAT-ed address.
	// If you disable SNAT, you need to ensure that your private network is configured to route traffic correctly back to the client.
	DisableSnat     bool              `json:"disable_snat"`

	// Internal Use: configure for Global Edge
	TunnelSatellite AccessTierTunnelInfo   `json:"tunnel_satellite"`
	SrcNATCIDRRange bool			  `json:"src_nat_cidr_range`

	// Deprecated parameters: do not set
	Domains  		  []string 		  `json:"domains"`
}

type AccessTierTunnelInfo

type AccessTierTunnelInfo struct {
	// Listen port for incoming WireGuard connections
	// Typically set to 51820
	UDPPortNumber       int64  `json:"udp_port_number"`

	// IP address range of your private network, specified in CIDR notation
	CIDRs   []string `json:"cidrs"`
	// Domains to resolve at the Access Tier, which uses the DNS in your private network
	Domains []string `json:"domains"`

	// Send a keepalive packet to the server endpoint every interval seconds
	// If not set, defaults to 20 seconds. Set to 0 to turn off	
	Keepalive           int64  `json:"keepalive"`

	// Internal Use: configure for Global Edge
	SharedFQDN          string `json:"shared_fqdn,omitempty"`

	// Deprecated: always set to true
	DNSEnabled          bool   `json:"dns_enabled"`
	// Deprecated params: do not set
	DNSSearchDomains    string `json:"dns_search_domains"`	
	ClientCIDRRange 	string `json:"client_cidr_range"`
}