Create or update a property

Run this operation to create or update a GTM property.

Path Params
string
required

A unique name for the property that when joined to the domainName with a dot separator, it forms a valid RFC 1123 hostname.

string
required

The full GTM domain name.

Query Params
string | null

Specifies change descriptions for audit trail and domain's change history. The maximum is 4000 characters.

string

For customers who manage more than one account, this runs the operation from another account. The Identity and Access Management API provides a list of available account switch keys.

Body Params
string | null
required

Specifies a backupCName. If GTM declares that all of the servers configured for your property are down, and you configured a backupCName, then queries for the property return the backupCName. If a backupCName is set, don't set a backupIp.

string | null
required

Specifies a backup IP. When GTM declares that all of the targets are down, it hands out the backupIP. The IP type coincides with the property's iPv6 setting. If a backupIp is set, don't set a backupCName.

boolean

Indicates whether download score based load balancing is enabled. GTM estimates the load on your data centers based on how long they take to respond to GTM liveness tests. The advantage: you don't need to implement a load object. The disadvantage: it's a very crude measure of load, and usually highly nonlinear. As load increases, download times don't increase significantly, until there's too much load. When that happens, the download times skyrocket. This can easily cause erratic load balancing or load oscillations.

string | null

Indicates the fully qualified name aliased to a particular property. The public name of the property.

string | null

Provides information about the purpose of the property.

integer
required
30 to 3600
Defaults to 60

Indicates the TTL in seconds for records that might change dynamically based on liveness and load balancing such as A and AAAA records, and CNAMEs. The value ranges from 30 to 3600 and can change on request. The default is 60.

integer | null
required
≥ 0

Specifies the failback delay in seconds. The minimum value is 0. If specified, when a server has been down and comes back up, (that is, its liveness test starts succeeding again), GTM only considers it up after the failback delay has elapsed and tests continue to succeed.

integer | null
required
≥ 0

Specifies the failover delay in seconds. The minimum value is 0. If specified, when a server begins failing its liveness test, GTM only considers it down after the failover delay has elapsed and the errors persist.

string
enum
required
Defaults to normal

Specifies how IPs are returned when more than one IP is alive and available. Either normal, persistent, one-ip, one-ip-hashed, or all-live-ips. The default is normal. Handout mode is relevant only when you have more than one server IP in a data center.

Allowed:
number | null

Defines the absolute limit beyond which IPs are declared unhealthy. If backup CNAMEs are provided for a property, then it's reasonable for all IPs to be declared unhealthy. The healthMax value is multiplied by the smaller of the timeoutPenalty and the errorPenalty. This check declares as down any server with a score greater than this product. The default value is null.

number | null

Configures a cutoff value that's computed from the median scores. Any server with a score over the cutoff value is considered down, and load isn't sent to it. The cutoff is computed from the minimum score across all data centers, for a given property and two object members: healthMultiplier and healthThreshold. The cutoff is either healthMultiplier (default value: 1.5) times the minimum score, or the healthThreshold (default value: 4), whichever is greater. See also healthThreshold within this object. For more information on how to determine server liveness, see the Global Traffic Management User Guide.

number | null

Configures a cutoff value that's computed from the median scores. Any server with a score over the cutoff value is considered down, and load isn't sent to it. See also healthMultiplier within this object. For more information on how to determine server liveness, see the Global Traffic Management User Guide.

boolean
required

Indicates the type of IP address handed out by a property. A true value indicates that all IP addresses specified are IPv6, and all hostnames need to resolve to AAAA records. A false value indicates IPv4 addresses, and all hostnames need to resolve to A records.

string | null

An ISO 8601 timestamp that indicates when the property was last changed.

links
array of objects
number | null
0 to 1000000

Indicates the percent of load imbalance factor (LIF) for the domain. It lets GTM exceed the value configured for traffic distribution. For example, if the data center's traffic allocation is 25 percent and the LIF is 1.5, the demand can grow to 37.5 percent (25% × 1.5) before the load balancer starts shifting load away from it. If the LIF is 0, no load imbalance is allowed. However, internally, GTM adds one to the LIF to allow its use as a multiplier. The default LIF is 1.1, which is displayed as 10.0 percent. The value ranges from 0 to 1000000 percent.

string | null
required

A descriptive label for a geographic map or a CIDR map that's required if the property is either geographic or cidrmapping, in which case mapName needs to reference either an existing geographic map or CIDR map in the same domain.

number | null
≥ 0

For performance domains, this specifies a penalty value that's added to liveness test scores when data centers show an aggregated loss fraction higher than the penalty value. The penalty value is either maxUnreachablePenalty (minimum value is 0 and the default is null) or unreachableThreshold (decimal between 0 and 1. A value of 1.0 or null disables an unreachable penalty). See also unreachableThreshold within this object.

mxRecords
array of objects
required

Specifies the MX records handed out to MX record type queries. Note that mapping and liveness testing aren't done. The same MX records are handed out for every request.

mxRecords*
required

The value, together with the full GTM domainName, forms the property's hostname. The value should not begin or end with a dot character and needs to be a valid RFC 1123 hostname. Set the name to @ if the property is to be located at the apex of the domain.

string
enum
required
Defaults to worst

Specifies how GTM aggregates liveness test scores across different tests, when multiple tests are configured. Values are mean, median, best, or the default worst.

Allowed:
integer | null
required
30 to 3600

Specifies the TTL in seconds for static resource records that don't change based on the requesting name server IP. This includes MX, TXT, and SPF records.

integer | null
0 to 30000

Specifies a constant used to configure data center affinity. This only applies if the property type is performance and the domain type is full. The value ranges from 0 to 30000. See also stickinessBonusPercentage within this object. To learn more about how these object members relate to each other, see API concepts.

integer | null
0 to 100

Specifies a percentage used to configure data center affinity. This only applies if the property type is performance and the domain type is full. The value ranges from 0 to 100. See also stickinessBonusConstant within this object. To learn more about how these object members relate to each other, see API concepts.

number | null
0 to 1

For performance domains, this specifies a penalty value that's added to liveness test scores when data centers have an aggregated loss fraction higher than this value. The value is a decimal between 0 and 1. A value of 1.0 or null disables an unreachable penalty. See also maxUnreachablePenalty within this object.

boolean

For load-feedback domains only, this specifies that you want GTM to automatically compute target load. Report only the current load objects, either by omission, or by using non-XML load objects.

boolean

v1.3 Enables reporting of unmet content requests received by edge servers, analyzing demand for unserved content.

integer | null
required
≥ 1

v1.3 Indicates the limit for the number of live IPs handed out to a DNS request. The handoutLimit applies only if handoutMode is set to either normal or persistent for the property. If applicable, the handoutLimit default value is 8 or null if not.

livenessTests
array of objects
required

Liveness tests, which run periodically to determine whether your servers respond to requests, as discussed in API concepts.

livenessTests*
number | null
0 to 1
Defaults to null

v1.7 The fraction of data centers that must be passing their liveness tests in order for the selection of live data centers to occur. For example, if this is set to 0.75 and only half the data centers are passing their liveness tests, then all data centers are handed out regardless of liveness test results. A null or 0 value means the feature is disabled and behavior is unchanged. The default value is null.

number | null
0 to 1

v1.3 Specifies what fraction of the servers need to respond to requests so GTM considers the data center up and able to receive traffic. For example, if your data center contains eight servers, and the minLiveFraction value is 0.5, then at least four servers need to respond to requests. Conversely, if five servers are down, and three servers are up, then GTM considers the entire data center down. Optional when a minLiveFraction value exists or not null.

stateChangeNotificationWebhook
object | null

v1.7 Configures a webhook to receive notifications when the property's state changes. Set to null to disable notifications.

staticRRSets
array of objects

v1.4 Contains static recordsets. Use this instead of mxRecords and staticTTL, which are deprecated in version 1.4.

staticRRSets
trafficTargets
array of objects
required

This specifies where to direct data center traffic. For geographic mapped properties, it's always a cname. For mirror failover properties, it can be any set of servers. For load balanced properties, this is a set of servers that are all within the same data center. You can assign multiple traffic targets to the same data center.

trafficTargets*
string
enum
required

Specifies the load balancing behavior for the property. Either failover, geographic, cidrmapping, weighted-round-robin, weighted-hashed, weighted-round-robin-load-feedback, qtr, performance, performance-with-load-feedback, asmapping, static, or ranked-failover. See API versioning for more information.

Response

Language
URL
Response
Choose an example:
application/property-vnd-config-gtm.v1.8+json