@datafire/turbinelabs v4.0.0
@datafire/turbinelabs
Client library for Turbine Labs API
Installation and Usage
npm install --save @datafire/turbinelabs
let turbinelabs = require('@datafire/turbinelabs').create({
api_key: ""
});
.then(data => {
console.log(data);
});
Description
The Turbine Labs API provides CRUD operations for core object types, and is
mostly RESTy. The easiest way to interact with the API is with
tbnctl.
If you want to make direct HTTP calls, however, you can obtain an access
token using tbnctl, and then pass it in the Authorization header,
prefixed by Token
:
curl -H "Authorization: Token <access token>" https://api.turbinelabs.io/v1.0/cluster
Actions
admin.user.self.get
Request the user object for an authorized requesting account.
turbinelabs.admin.user.self.get(null, context)
Input
This action has no parameters
Output
- output User
admin.user.self.access_token.access_token_key.delete
Delete the specified access token.
turbinelabs.admin.user.self.access_token.access_token_key.delete({
"access-token-key": "",
"checksum": ""
}, context)
Input
- input
object
- access-token-key required
string
: the key of the Access Token that should be deleted - checksum required
string
: the current checksum of the user to be modified
- access-token-key required
Output
Output schema unknown
admin.user.self.access_tokens.get
Lists Access Tokens that are configured for the authenticated user.
turbinelabs.admin.user.self.access_tokens.get(null, context)
Input
This action has no parameters
Output
- output MultiAccessTokens
admin.user.self.access_tokens.post
Creates a new Access Token and associates it with the authenticated user.
turbinelabs.admin.user.self.access_tokens.post({
"description": {
"description": ""
}
}, context)
Input
- input
object
- description required AccessTokenDescription
Output
- output AccessToken
changelog.adhoc.get
Perform an adhoc query against the change log for your org. The filter is a JSON encoded FilterSum as defined in this file.
turbinelabs.changelog.adhoc.get({}, context)
Input
- input
object
- filter
string
: Encoded FilterSums representing the query you would like to execute. See object definition for details.
- filter
Output
- output PaginatedChangeDescriptions
changelog.cluster_graph.clusterKey.get
Gets all changes to a cluster.
turbinelabs.changelog.cluster_graph.clusterKey.get({
"clusterKey": ""
}, context)
Input
- input
object
- clusterKey required
string
: the cluster key to see an audit log for - start
number
: The beginning of the window we want to see changes for; measured in - end
number
: The end of the window we want to see changes for; measured in - max_results
number
: Determines how many ChangeDescription object should be returned to - ref_id
string
: When paginating a Changelog request start on the entry that comes - direction
string
(values: before, after): If set to "before" then changes will be returned that occurred before
- clusterKey required
Output
- output PaginatedChangeDescriptions
changelog.domain_graph.domainKey.get
Gets all changes to a domain, the proxies that front the specified domain, routes within that domain, the shared rules of each route, the clusters connected via route or shared rules.
turbinelabs.changelog.domain_graph.domainKey.get({
"domainKey": ""
}, context)
Input
- input
object
- domainKey required
string
: the domain key to see an audit log for - start
number
: The beginning of the window we want to see changes for; measured in - end
number
: The end of the window we want to see changes for; measured in - max_results
number
: Determines how many ChangeDescription object should be returned to - ref_id
string
: When paginating a Changelog request start on the entry that comes - direction
string
(values: before, after): If set to "before" then changes will be returned that occurred before
- domainKey required
Output
- output PaginatedChangeDescriptions
changelog.route_graph.routeKey.get
Gets all changes to a route, the domains associated with it, the shared rules it references, and the clusters connected to it.
turbinelabs.changelog.route_graph.routeKey.get({
"routeKey": ""
}, context)
Input
- input
object
- routeKey required
string
: the route key to see an audit log for - start
number
: The beginning of the window we want to see changes for; measured in - end
number
: The end of the window we want to see changes for; measured in - max_results
number
: Determines how many ChangeDescription object should be returned to - ref_id
string
: When paginating a Changelog request start on the entry that comes - direction
string
(values: before, after): If set to "before" then changes will be returned that occurred before
- routeKey required
Output
- output PaginatedChangeDescriptions
changelog.shared_rules_graph.sharedRulesKey.get
Gets all changes associated with set of Shared Rules; the domains using it and the clusters referenced by it.
turbinelabs.changelog.shared_rules_graph.sharedRulesKey.get({
"sharedRulesKey": ""
}, context)
Input
- input
object
- sharedRulesKey required
string
: the shared rules key to see an audit log for - start
number
: The beginning of the window we want to see changes for; measured in - end
number
: The end of the window we want to see changes for; measured in - max_results
number
: Determines how many ChangeDescription object should be returned to - ref_id
string
: When paginating a Changelog request start on the entry that comes - direction
string
(values: before, after): If set to "before" then changes will be returned that occurred before
- sharedRulesKey required
Output
- output PaginatedChangeDescriptions
changelog.zone.zoneKey.get
Retrieve all changes in the specified zone.
turbinelabs.changelog.zone.zoneKey.get({
"zoneKey": ""
}, context)
Input
- input
object
- zoneKey required
string
: the zone key to see an audit log for - start
number
: The beginning of the window we want to see changes for; measured in - end
number
: The end of the window we want to see changes for; measured in - max_results
number
: Determines how many ChangeDescription object should be returned to - ref_id
string
: When paginating a Changelog request start on the entry that comes - direction
string
(values: before, after): If set to "before" then changes will be returned that occurred before
- zoneKey required
Output
- output PaginatedChangeDescriptions
cluster.get
Get a list of clusters
turbinelabs.cluster.get({}, context)
Input
- input
object
- filters
string
: A JSON encoded array of ClusterFilter objects. The filter is taken
- filters
Output
- output MultiClusterResult
cluster.post
Create a new cluster
turbinelabs.cluster.post({
"cluster": {
"zone_key": "",
"name": ""
}
}, context)
Input
- input
object
- cluster required ClusterCreate
Output
- output ClusterResult
cluster.clusterKey.delete
Delete an existing cluster
turbinelabs.cluster.clusterKey.delete({
"clusterKey": "",
"checksum": ""
}, context)
Input
- input
object
- clusterKey required
string
: the cluster key - checksum required
string
: the current checksum of the cluster to be deleted
- clusterKey required
Output
- output Empty
cluster.clusterKey.get
Get details for an existing cluster
turbinelabs.cluster.clusterKey.get({
"clusterKey": ""
}, context)
Input
- input
object
- clusterKey required
string
: the cluster key
- clusterKey required
Output
- output ClusterResult
cluster.clusterKey.put
Modify an existing cluster
turbinelabs.cluster.clusterKey.put({
"clusterKey": "",
"cluster": null
}, context)
Input
- input
object
- clusterKey required
string
: the cluster key - cluster required Cluster
- clusterKey required
Output
- output ClusterResult
cluster.clusterKey.instances.post
Add a new instance to a cluster
turbinelabs.cluster.clusterKey.instances.post({
"clusterKey": "",
"instance": {}
}, context)
Input
- input
object
- clusterKey required
string
: the cluster to add the instance to - instance required Instance
- clusterKey required
Output
- output InstanceResult
cluster.clusterKey.instances.instanceIdentifier.delete
Remove an instance from a cluster
turbinelabs.cluster.clusterKey.instances.instanceIdentifier.delete({
"checksum": "",
"clusterKey": "",
"instanceIdentifier": ""
}, context)
Input
- input
object
- checksum required
string
: the current checksum of the instance to be deleted - clusterKey required
string
: the cluster to remove an instance from - instanceIdentifier required
string
: the instance to remove, identified as :
- checksum required
Output
- output Empty
domain.get
Get a list of domains
turbinelabs.domain.get({}, context)
Input
- input
object
- filters
string
: A JSON encoded array of DomainFilter objects. The filter is taken
- filters
Output
- output MultiDomainResult
domain.post
Create a new domain
turbinelabs.domain.post({
"domain": {
"zone_key": "",
"name": "",
"port": 0
}
}, context)
Input
- input
object
- domain required DomainCreate
Output
- output DomainResult
domain.domainKey.delete
Delete an existing domain
turbinelabs.domain.domainKey.delete({
"domainKey": "",
"checksum": ""
}, context)
Input
- input
object
- domainKey required
string
: the domain key - checksum required
string
: the current checksum of the domain to be deleted
- domainKey required
Output
- output Empty
domain.domainKey.get
Get details for a single domain
turbinelabs.domain.domainKey.get({
"domainKey": ""
}, context)
Input
- input
object
- domainKey required
string
: the domain key
- domainKey required
Output
- output DomainResult
listener.get
Get a list of listeners
turbinelabs.listener.get({}, context)
Input
- input
object
- filters
string
: A JSON encoded array of ListenerFilter objects. The filter is taken
- filters
Output
- output MultiListenerResult
listener.post
Create a new listener
turbinelabs.listener.post({
"listener": {
"name": "",
"port": 0,
"protocol": ""
}
}, context)
Input
- input
object
- listener required ListenerCreate
Output
- output ListenerResult
listener.listenerKey.delete
Delete existing listener
turbinelabs.listener.listenerKey.delete({
"listenerKey": "",
"checksum": ""
}, context)
Input
- input
object
- listenerKey required
string
: the listener key - checksum required
string
: the current checksum of the listener to be deleted
- listenerKey required
Output
- output Listener
listener.listenerKey.get
Get details for a single listener
turbinelabs.listener.listenerKey.get({
"listenerKey": ""
}, context)
Input
- input
object
- listenerKey required
string
: the listener key
- listenerKey required
Output
- output ListenerResult
listener.listenerKey.put
Modify an existing listener
turbinelabs.listener.listenerKey.put({
"listenerKey": "",
"listener": null
}, context)
Input
- input
object
- listenerKey required
string
: the listener key - listener required Listener
- listenerKey required
Output
- output ListenerResult
proxy.get
Get a list of proxies
turbinelabs.proxy.get({}, context)
Input
- input
object
- filters
string
: A JSON encoded array of ProxyFilter objects. The filter is taken
- filters
Output
- output MultiProxyResult
proxy.post
Create a new proxy
turbinelabs.proxy.post({
"proxy": {
"zone_key": "",
"name": ""
}
}, context)
Input
- input
object
- proxy required ProxyCreate
Output
- output ProxyResult
proxy.proxyKey.delete
Delete existing proxy
turbinelabs.proxy.proxyKey.delete({
"proxyKey": "",
"checksum": ""
}, context)
Input
- input
object
- proxyKey required
string
: the proxy key - checksum required
string
: the current checksum of the proxy to be deleted
- proxyKey required
Output
- output Proxy
proxy.proxyKey.get
Get details for a single proxy
turbinelabs.proxy.proxyKey.get({
"proxyKey": ""
}, context)
Input
- input
object
- proxyKey required
string
: the proxy key
- proxyKey required
Output
- output ProxyResult
route.get
Get a list of routes
turbinelabs.route.get({}, context)
Input
- input
object
- filters
string
: A JSON encoded array of RouteFilter objects. The filter is taken
- filters
Output
- output MultiRouteResult
route.post
Create a new route
turbinelabs.route.post({
"route": {
"domain_key": "",
"zone_key": "",
"path": "",
"shared_rules_key": ""
}
}, context)
Input
- input
object
- route required RouteCreate
Output
- output RouteResult
route.routeKey.delete
Delete an existing route
turbinelabs.route.routeKey.delete({
"routeKey": "",
"checksum": ""
}, context)
Input
- input
object
- routeKey required
string
: the route key - checksum required
string
: the current checksum of the route to be deleted
- routeKey required
Output
- output Empty
route.routeKey.get
Get details for an existing route
turbinelabs.route.routeKey.get({
"routeKey": ""
}, context)
Input
- input
object
- routeKey required
string
: the route key
- routeKey required
Output
- output RouteResult
route.routeKey.put
Modify an existing route
turbinelabs.route.routeKey.put({
"routeKey": "",
"route": null
}, context)
Input
- input
object
- routeKey required
string
: the route key - route required Route
- routeKey required
Output
- output RouteResult
shared_rules.get
Get a list of shared_rules
turbinelabs.shared_rules.get({}, context)
Input
- input
object
- filters
string
: A JSON encoded array of SharedRulesFilter objects. The filter is taken
- filters
Output
- output MultiSharedRulesResult
shared_rules.post
Create a new shared_rules object
turbinelabs.shared_rules.post({
"shared_rules": {
"zone_key": "",
"default": {
"light": []
}
}
}, context)
Input
- input
object
- shared_rules required SharedRulesCreate
Output
- output SharedRulesResult
shared_rules.sharedRulesKey.delete
Delete an existing shared_rules object
turbinelabs.shared_rules.sharedRulesKey.delete({
"sharedRulesKey": "",
"checksum": ""
}, context)
Input
- input
object
- sharedRulesKey required
string
: the shared_rules key - checksum required
string
: the current checksum of the shared_rules to be deleted
- sharedRulesKey required
Output
- output Empty
shared_rules.sharedRulesKey.get
Get details for an existing shared_rules object
turbinelabs.shared_rules.sharedRulesKey.get({
"sharedRulesKey": ""
}, context)
Input
- input
object
- sharedRulesKey required
string
: the shared_rules key
- sharedRulesKey required
Output
- output SharedRulesResult
shared_rules.sharedRulesKey.put
Modify an existing shared_rules object
turbinelabs.shared_rules.sharedRulesKey.put({
"sharedRulesKey": "",
"shared_rules": null
}, context)
Input
- input
object
- sharedRulesKey required
string
: the shared_rules key - shared_rules required SharedRules
- sharedRulesKey required
Output
- output SharedRulesResult
zone.get
Get all zones. possibly with filters
turbinelabs.zone.get({}, context)
Input
- input
object
- filters
string
: A JSON encoded array of ZoneFilter objects. The filter is taken
- filters
Output
- output MultiZoneResult
zone.post
Create a new zone.
turbinelabs.zone.post({
"zone": {
"name": ""
}
}, context)
Input
- input
object
- zone required ZoneCreate
Output
- output ZoneResult
zone.zoneKey.delete
Delete a zone.
turbinelabs.zone.zoneKey.delete({
"zoneKey": "",
"checksum": ""
}, context)
Input
- input
object
- zoneKey required
string
: the zone key - checksum required
string
: the current checksum of the zone to be deleted
- zoneKey required
Output
- output Empty
zone.zoneKey.get
Get details for a single zone
turbinelabs.zone.zoneKey.get({
"zoneKey": ""
}, context)
Input
- input
object
- zoneKey required
string
: the zone key
- zoneKey required
Output
- output ZoneResult
Definitions
AccessToken
- AccessToken
object
- access_token_key required
string
- checksum required
string
- created_at required
string
: A timestamp that marks when a user was deleted. It is in the format - description required
string
- signed_token
string
: This will be set only when an AccessToken is initially created - user_key required
string
- access_token_key required
AccessTokenDescription
- AccessTokenDescription
object
- description required
string
- description required
AllConstraints
- AllConstraints
object
- dark ClusterConstraints
- light required ClusterConstraints
- tap ClusterConstraints
CORSConfig
- CORSConfig
object
: Experimental: Controls simple CORS responses for the associated domain.- allow_credentials
boolean
: Indicates whether the response to request can be exposed when the - allowed_headers
array
: Specifies what headers are allowed to be set when a request is made.- items
string
- items
- allowed_methods required
array
: Indicates which HTTP request types may be used to call an endpoint.- items
string
- items
- allowed_origins required
array
: Must contain a single element specifying the domain (origin) allowed- items
string
- items
- exposed_headers
array
: Indicates which response headers may be accessed from the browser.- items
string
- items
- max_age
integer
: Sets how long (in seconds) the response to a preflight request may be
- allow_credentials
CertKeyPathPair
- CertKeyPathPair
object
: A key/cert pair that will be served when a domain terminates a SSL/TLS- certificate_path required
string
: Path to a certificate in the PEM format for the domain. If multiple - key_path required
string
: Path to a file with the secret key in the PEM format for the domain.
- certificate_path required
ChangeDescription
- ChangeDescription
object
- actor_key
string
: The user who made the change. - at
number
: When the change took place in milliseconds since the Unix epoch. - comment
string
: A description of the change. - diffs
array
: A collection of attribute updates that compose this change.- items ChangeEntry
- txn
string
: A unique identifier for all this transaction. It is shared by all
- actor_key
ChangeEntry
- ChangeEntry
object
- change_type
string
(values: addition, removal): Whether the value was added or removed to the object. - object_key
string
: An ID uniquely identifying the object being changed. - object_type
string
(values: org, user, zone, proxy, domain, route, shared_rules, cluster): The name of the object being being altered. - path
string
: A dot-separated / bracket-indexed path to the field changed on the object. - value
string
: The value that has been added or removed to the object at the attribute - zone_key
string
: The zone this object is located in.
- change_type
CircuitBreakers
- CircuitBreakers
object
: Provides limits on various parameters to protect clusters against sudden- max_connections
integer
: Maximum number of connections that will be established to all - max_pending_requests
integer
: Maximum number of requests that will be queued while waiting on a - max_requests
integer
: Maximum number of requests that can be outstanding to all instances in - max_retries
integer
: Maximum number of retries that can be outstanding to all instances in
- max_connections
Cluster
- Cluster
- circuit_breakers CircuitBreakers
- health_checks HealthChecks
- instances Instances
- name required
string
- outlier_detection OutlierDetection
- require_tls
boolean
: If set, requests to this collection of hosts will be made via HTTPS. - zone_key required
string
- checksum required
string
- cluster_key required
string
ClusterConstraint
- ClusterConstraint
object
- cluster_key
string
- constraint_key
string
- metadata Metadata
- properties Metadata
- response_data: When a request is served by a cluster selected by this constraint annotate
- cookies
array
- items CookieDatum
- headers
array
- items HeaderDatum
- cookies
- weight
integer
- cluster_key
ClusterConstraints
- ClusterConstraints
array
- items ClusterConstraint
ClusterCreate
- ClusterCreate
object
- circuit_breakers CircuitBreakers
- health_checks HealthChecks
- instances Instances
- name required
string
- outlier_detection OutlierDetection
- require_tls
boolean
: If set, requests to this collection of hosts will be made via HTTPS. - zone_key required
string
ClusterFilter
- ClusterFilter
object
- cluster_key
string
- name
string
- zone_key
string
- cluster_key
ClusterResult
- ClusterResult
object
- result Cluster
CohortSeed
- CohortSeed
object
- name
string
: The name of the cookie, the header field, or the query argument to - type
string
(values: header, cookie, query): Where a request's cohort seed will be drawn from. - use_zero_value_seed
boolean
: If true, requests with a seed source which resolves to an empty value
- name
CookieDatum
- CookieDatum
object
: This describes a cookie that should be set in response to a HTTP request.- domain
string
: Specifies the hosts to hich a cookie will be sent. Maps directly to a - expires_in_sec
integer
: This indicates how long a cookie will be valid, in seconds. If not set the - http_only
boolean
: If set the cookie value will not be accessible via Document.cookie. Maps - name
string
: The name of the cookie that will be attached to the response sent. - path
string
: Specifies the path a cookie will be associated with. Maps directly to - same_site
string
(values: Strict, Lax): Allows assertions how a cookie should behave wend making cross-site requests. - secure
boolean
: If set the cookie will only be sent on subsequent requests when accessing - value
string
: A literal value to send as the cookie value or a reference to - value_is_literal
boolean
: If true then the value attribute is treated as a literal and no attempt
- domain
Domain
- Domain
- aliases
array
: A set of alternate names that this Domain may be referenced by. May- items
string
- items
- checksum
string
- cors_config CORSConfig
- domain_key
string
- force_https
boolean
: If set to true, requests must use TLS. If a request is not using TLS, (as determined by - gzip_enabled
boolean
: Experimental: if set to true will enable gzip compression on data that passes trough this domain - name required
string
- port required
integer
- redirects
array
- items Redirect
- ssl_config SSLConfig
- zone_key required
string
- checksum required
string
- domain_key required
string
- aliases
DomainCreate
- DomainCreate
object
- aliases
array
: A set of alternate names that this Domain may be referenced by. May- items
string
- items
- checksum
string
- cors_config CORSConfig
- domain_key
string
- force_https
boolean
: If set to true, requests must use TLS. If a request is not using TLS, (as determined by - gzip_enabled
boolean
: Experimental: if set to true will enable gzip compression on data that passes trough this domain - name required
string
- port required
integer
- redirects
array
- items Redirect
- ssl_config SSLConfig
- zone_key required
string
- aliases
DomainFilter
- DomainFilter
object
- domain_key
string
- name
string
- proxy_keys
array
: matches Domains with a superset of the specified proxy_keys. A- items
string
- items
- zone_key
string
- domain_key
DomainResult
- DomainResult
object
- result Domain
Empty
- Empty
object
Error
- Error
object
- code
integer
- fields
string
- message
string
- code
Filter
- Filter
object
- absolute_match_only
boolean
: If set this will return ChangeEntry values with a path that matches - actor_key
string
: The user who made the change. - attribute_path
string
: A dot-separated / bracket-indexed path to the field changed on the - attribute_value
string
: The value that has been added or removed to the object at the attribute - change_txn
string
: A unique identifier for all this transaction. It is shared by all - change_type
string
(values: addition, removal): Whether the value was added or removed to the object. - exclude_empty_values
boolean
: If set this will exclude ChangeEntry records that save the addition - negative_match
boolean
: If set this filter will match the all ChangeEntry records that do - object_key
string
: An ID uniquely identifying the object being changed. - object_type
string
(values: org, user, zone, proxy, domain, route, shared_rules, cluster): The name of the object being being altered. - org_key
string
: The organization the objects being updated belong to. - time_range TimeRange
- zone_key
string
: The zone this object is located in.
- absolute_match_only
FilterProducts
- FilterProducts
object
- and
array
: An array of changelog filters that will be joined via logical AND.- items Filter
- and
FilterSums
- FilterSums
object
- or
array
: An array of changelog filters that will be joined via logical OR.- items FilterProducts
- or
HTTPHealthCheck
- HTTPHealthCheck
object
- host
string
: The value of the host header in the HTTP health check request. - path
string
: Specifies the HTTP path that will be requested during health - request_headers_to_add: Specifies a list of HTTP headers that should be added to each request
- items Metadatum
- service_name
string
: An optional service name parameter which is used to validate
- host
HeaderConstraint
- HeaderConstraint
object
: Indicates that a request's headers should meet some requirement before being- case_sensitive
boolean
: If set, the header value check will be case sensitive. - invert
boolean
: If set, the header constraint will succeed if the match described faile. - name required
string
: The header that is being checked. This must match the regexp "^0-9a-zA-Z-+$". - value
string
: If set the header's value will be compared to this. The default is to
- case_sensitive
HeaderDatum
- HeaderDatum
object
: This describes a HTTP header that should be attached to requests.- name
string
: The name of the header that will be attached to the response sent. - value
string
: A literal value to send as the header value or a reference to - value_is_literal
boolean
: If true then the value attribute is treated as a literal and no attempt
- name
HealthCheck
- HealthCheck
object
: Configures active health checking for every instance in a cluster.- health_checker required
object
: Defines the type of health checker to use. Only a single health- http_health_check HTTPHealthCheck
- tcp_health_check TCPHealthCheck
- healthy_edge_interval_msec
integer
: Interval used for the first health check right after a host is marked - healthy_threshold required
integer
: The number of healthy health checks required before a host is marked - interval_jitter_msec
integer
: An optional jitter amount that is added to each interval value - interval_msec required
integer
: The interval between health checks. The first round of health checks - no_traffic_interval_msec
integer
: Interval used when a cluster has never had traffic routed to it. It - reuse_connection
boolean
: Whether or not to reuse health check connections between health checks. - timeout_msec required
integer
: The time to wait for a health check response. If the timeout is - unhealthy_edge_interval_msec
integer
: Interval used for the first health check right after a host is marked - unhealthy_interval_msec
integer
: Interval used for hosts that are marked as unhealthy. As soon as the - unhealthy_threshold required
integer
: The number of unhealthy health checks required before a host is
- health_checker required
HealthChecks
- HealthChecks
array
- items HealthCheck
Instance
- Instance
object
- host
string
- metadata Metadata
- port
integer
- host
InstanceResult
- InstanceResult
object
- result Instance
Instances
- Instances
array
- items Instance
Listener
- Listener
- domain_keys
array
- items
string
- items
- ip
string
: the interface this listener should bind to. - name required
string
- port required
integer
: the port this listener should bind to. - protocol required
string
(values: http, http2, http_auto, tcp): the protocol this listener will handle. http and http2 configure the listener to only - tracing_config TracingConfig
- zone_key
string
- checksum required
string
- listener_key required
string
- domain_keys
ListenerCreate
- ListenerCreate
object
- domain_keys
array
- items
string
- items
- ip
string
: the interface this listener should bind to. - name required
string
- port required
integer
: the port this listener should bind to. - protocol required
string
(values: http, http2, http_auto, tcp): the protocol this listener will handle. http and http2 configure the listener to only - tracing_config TracingConfig
- zone_key
string
- domain_keys
ListenerResult
- ListenerResult
object
- result Listener
Match
- Match
object
: Represents a mapping of request attributes to constraints on a cluster- behavior
string
: Defines how a request attribute should be matched. If not specified, - from: The request attribute key and value to match.
key
must always be- key
string
- value
string
- key
- kind
string
: Defines the attribute by which a request should be matched on. Valid - to: The constraints on a cluster that a matched request should map to. If
- key
string
- value
string
- key
- behavior
Matches
- Matches
array
- items Match
Metadata
- Metadata
array
- items Metadatum
Metadatum
- Metadatum
object
- key
string
- value
string
- key
MultiAccessTokens
- MultiAccessTokens
object
- result
array
- items AccessToken
- result
MultiClusterResult
- MultiClusterResult
object
- result
array
- items Cluster
- result
MultiDomainResult
- MultiDomainResult
object
- result
array
- items Domain
- result
MultiListenerResult
- MultiListenerResult
object
- result
array
- items Listener
- result
MultiProxyResult
- MultiProxyResult
object
- result
array
- items Proxy
- result
MultiRouteResult
- MultiRouteResult
object
- result
array
- items Route
- result
MultiSharedRulesResult
- MultiSharedRulesResult
object
- result
array
- items SharedRules
- result
MultiZoneResult
- MultiZoneResult
object
- result
array
- items Zone
- result
OutlierDetection
- OutlierDetection
object
: A form of passive health checking that dynamically determines whether- base_ejection_time_msec
integer
: The base time that a host is ejected for. The real time is equal to - consecutive_5xx
integer
: The number of consecutive 5xx responses before a consecutive 5xx ejection - consecutive_gateway_failure
integer
: The number of consecutive gateway failures (502, 503, 504 status or - enforcing_consecutive_5xx
integer
: The % chance that a host will be actually ejected when an outlier status - enforcing_consecutive_gateway_failure
integer
: The % chance that a host will be actually ejected when an outlier status - enforcing_success_rate
integer
: The % chance that a host will be actually ejected when an outlier status - interval_msec
integer
: The time interval between ejection analysis sweeps. This can result in - max_ejection_percent
integer
: The maximum % of an upstream cluster that can be ejected due to - success_rate_minimum_hosts
integer
: The number of hosts in a cluster that must have enough request volume to - success_rate_request_volume
integer
: The minimum number of total requests that must be collected in one - success_rate_stdev_factor
integer
: This factor is used to determine the ejection threshold for success rate
- base_ejection_time_msec
PageDetails
- PageDetails
object
- direction
string
(values: before, after): The direction walked from the ref_id when building this page. - has_more
boolean
: Whether or not there are more entries to be requested after this page. - ref_id
string
: The ID used as a reference when building this page. - total_entries
integer
: How many total entries would have been returned in the time window
- direction
PaginatedChangeDescriptions
- PaginatedChangeDescriptions
object
- details PaginationDetails
- result
array
- items ChangeDescription
PaginationDetails
- PaginationDetails
object
- pagination PageDetails
Proxy
- Proxy
- domain_keys
array
- items
string
- items
- listener_keys
array
- items
string
- items
- name required
string
- zone_key required
string
- checksum required
string
- proxy_key required
string
- domain_keys
ProxyCreate
- ProxyCreate
object
- domain_keys
array
- items
string
- items
- listener_keys
array
- items
string
- items
- name required
string
- zone_key required
string
- domain_keys
ProxyFilter
- ProxyFilter
object
- domain_keys
array
: matches Proxies with a superset of the specified domain_keys. A- items
string
- items
- name
string
- proxy_key
string
- zone_key
string
- domain_keys
ProxyResult
- ProxyResult
object
- result Proxy
Redirect
- Redirect
object
: Specifies how a URL within a domain should be rewritten when requested.- from required
string
: A regexp that will be matched against the URL (not including the host/port). May include capture groups for reference in "to." - header_constraints
array
- items HeaderConstraint
- name required
string
: A unique (to this Domain) name for the Redirect. Must match the regexp "^0-9a-zA-Z-+$" - redirect_type required
string
(values: permanent, temporary): How this redirect should be presented via HTTP response code. - to required
string
: The new URL that will be constructed from the request. Capture groups from "from" may be referenced as "$<group number>" which begins at 1.
- from required
ResponseData
- ResponseData
object
- cookies
array
- items CookieDatum
- headers
array
- items HeaderDatum
- cookies
RetryPolicy
- RetryPolicy
object
: Number of times to retry a request and how long to wait before timing out.- num_retries
integer
: Number of times to retry an upstream request. Note that the initial - per_try_timeout_msec
integer
: Time limit in milliseconds for a single attempt. - timeout_msec
integer
: Total time limit in milliseconds for all attempts (including the initial attempt)
- num_retries
Route
- Route
- checksum
string
- cohort_seed CohortSeed
- domain_key required
string
- path required
string
- response_data: When a request is served by this Route annotate the response with the
- cookies
array
- items CookieDatum
- headers
array
- items HeaderDatum
- cookies
- retry_policy RetryPolicy
- route_key
string
- rules
array
- items Rule
- shared_rules_key required
string
- zone_key required
string
- checksum required
string
- route_key required
string
- checksum
RouteCreate
- RouteCreate
object
- checksum
string
- cohort_seed CohortSeed
- domain_key required
string
- path required
string
- response_data: When a request is served by this Route annotate the response with the
- cookies
array
- items CookieDatum
- headers
array
- items HeaderDatum
- cookies
- retry_policy RetryPolicy
- route_key
string
- rules
array
- items Rule
- shared_rules_key required
string
- zone_key required
string
- checksum
RouteFilter
- RouteFilter
object
- domain_key
string
- path
string
- path_prefix
string
- route_key
string
- shared_rules_key
string
- zone_key
string
- domain_key
RouteResult
- RouteResult
object
- result Route
Rule
- Rule
object
- cohort_seed CohortSeed
- constraints AllConstraints
- matches Matches
- methods
array
- items
string
- items
- rule_key
string
SSLConfig
- SSLConfig
object
: Experimental: Specifies whether a domain should support SSL/TLS- cert_key_pairs required
array
: SSLConfig must have one cert_key_pairs entry specified.- items CertKeyPathPair
- cipher_filter
string
: An OpenSSL compatible filter string indicating the ciphers acceptable - protocols
array
: A list of acceptable SSL/TLS protocol. The default values are TLSv1,- items
string
- items
- cert_key_pairs required
SharedRules
- SharedRules
- checksum
string
- cohort_seed CohortSeed
- default required AllConstraints
- properties Metadata
- response_data: When a request is served by a Route that is part of this SharedRules
- cookies
array
- items CookieDatum
- headers
array
- items HeaderDatum
- cookies
- retry_policy RetryPolicy
- rules
array
- items Rule
- shared_rules_key
string
- zone_key required
string
- checksum required
string
- shared_rules_key required
string
- checksum
SharedRulesCreate
- SharedRulesCreate
object
- checksum
string
- cohort_seed CohortSeed
- default required AllConstraints
- properties Metadata
- response_data: When a request is served by a Route that is part of this SharedRules
- cookies
array
- items CookieDatum
- headers
array
- items HeaderDatum
- cookies
- retry_policy RetryPolicy
- rules
array
- items Rule
- shared_rules_key
string
- zone_key required
string
- checksum
SharedRulesFilter
- SharedRulesFilter
object
- name
string
- shared_rules_key
string
- zone_key
string
- name
SharedRulesResult
- SharedRulesResult
object
- result SharedRules
TCPHealthCheck
- TCPHealthCheck
object
- receive
array
: An array of base64 encoded strings, each representing array of- items
string
- items
- send
string
: Base64 encoded string representing an array of bytes to be
- receive
TimeRange
- TimeRange
object
- end
integer
: The end of the window we want to see changes for; measured in - start
integer
: The beginning of the window we want to see changes for; measured in microseconds since Unix Epoch.
- end
TracingConfig
- TracingConfig
object
: Configures tracing operations to be performed on the given listener- ingress
boolean
: Determines whether spans sent from this listener should be treated as ingress - request_headers_for_tags
array
: the headers specified here will be added to the generated spans as annotations- items
string
- items
- ingress
User
- User
object
- checksum required
string
- deleted_at
string
: A timestamp that marks when a user was deleted. It is in the format - login_email required
string
- user_key required
string
- checksum required
Zone
- Zone
object
- checksum required
string
- name required
string
- zone_key required
string
- checksum required
ZoneCreate
- ZoneCreate
object
- name required
string
- name required
ZoneFilter
- ZoneFilter
object
- name
string
- zone_key
string
- name
ZoneResult
- ZoneResult
object
- result Zone