Allows users to edit an existing Delivery Service
.
- Auth. Required
Yes
- Roles Required
"admin" or "operations"1
- Permissions Required
DELIVERY-SERVICE:UPDATE, DELIVERY-SERVICE:READ, CDN:READ, TYPE:READ
- Response Type
Object
5.0 In earlier API versions, this would return an array containing the single
Delivery Service
modified. It is now simply the object itself. This is tracked by6904
.
- active
The
Delivery Service
'sds-active
state- anonymousBlockingEnabled
A boolean that defines
ds-anonymous-blocking
- ccrDnsTtl
The
ds-dns-ttl
- named "ccrDnsTtl" for legacy reasons- cdnId
The integral, unique identifier of the
ds-cdn
to which theDelivery Service
belongs
Note
If the Delivery Service has SSL Keys, then cdnId is not allowed to change as that would invalidate the SSL Key
- checkPath
A
ds-check-path
- consistentHashRegex
A
ds-consistent-hashing-regex
- consistentHashQueryParams
An array of
ds-consistent-hashing-qparams
- deepCachingType
The
ds-deep-caching
setting for thisDelivery Service
- displayName
The
ds-display-name
- dnsBypassCname
A
ds-dns-bypass-cname
- dnsBypassIp
A
ds-dns-bypass-ip
- dnsBypassIp6
A
ds-dns-bypass-ipv6
- dnsBypassTtl
The
ds-dns-bypass-ttl
- dscp
A
ds-dscp
to be used within theDelivery Service
- ecsEnabled
A boolean that defines the
ds-ecs
setting on thisDelivery Service
- edgeHeaderRewrite
A set of
ds-edge-header-rw-rules
- firstHeaderRewrite
A set of
ds-first-header-rw-rules
- fqPacingRate
The
ds-fqpr
- geoLimit
An integer that defines the
ds-geo-limit
- geoLimitCountries
An array of strings defining the
ds-geo-limit-countries
- geoLimitRedirectUrl
A
ds-geo-limit-redirect-url
- geoProvider
The
ds-geo-provider
- globalMaxMbps
The
ds-global-max-mbps
- globalMaxTps
The
ds-global-max-tps
- httpBypassFqdn
A
ds-http-bypass-fqdn
- infoUrl
An
ds-info-url
- initialDispersion
The
ds-initial-dispersion
- innerHeaderRewrite
A set of
ds-inner-header-rw-rules
- ipv6RoutingEnabled
A boolean that defines the
ds-ipv6-routing
setting on thisDelivery Service
- lastHeaderRewrite
A set of
ds-last-header-rw-rules
- logsEnabled
A boolean that defines the
ds-logs-enabled
setting on thisDelivery Service
- longDesc
The
ds-longdesc
of thisDelivery Service
- maxDnsAnswers
The
ds-max-dns-answers
allowed for thisDelivery Service
- maxOriginConnections
The
ds-max-origin-connections
- midHeaderRewrite
A set of
ds-mid-header-rw-rules
- missLat
The
ds-geo-miss-default-latitude
used by thisDelivery Service
- missLong
The
ds-geo-miss-default-longitude
used by thisDelivery Service
- multiSiteOrigin
A boolean that defines the use of
ds-multi-site-origin
by thisDelivery Service
- orgServerFqdn
The
ds-origin-url
- originShield
A
ds-origin-shield
string- profileId
An optional
profile-id
of theds-profile
with which thisDelivery Service
will be associated- protocol
An integral, unique identifier that corresponds to the
ds-protocol
used by thisDelivery Service
- qstringIgnore
An integral, unique identifier that corresponds to the
ds-qstring-handling
setting on thisDelivery Service
- rangeRequestHandling
An integral, unique identifier that corresponds to the
ds-range-request-handling
setting on thisDelivery Service
- regexRemap
A
ds-regex-remap
- regional
A boolean value defining the
ds-regional
setting on thisDelivery Service
- regionalGeoBlocking
A boolean defining the
ds-regionalgeo
setting on thisDelivery Service
- remapText
ds-raw-remap
- routingName
The
ds-routing-name
of thisDelivery Service
Note
If the Delivery Service has SSL Keys, then
routingName
is not allowed to change as that would invalidate the SSL Key
- signed
true
if and only ifsigningAlgorithm
is notnull
,false
otherwise- signingAlgorithm
Either a
ds-signing-algorithm
ornull
to indicate URL/URI signing is not implemented on thisDelivery Service
- rangeSliceBlockSize
An integer that defines the byte block size for the ATS Slice Plugin. It can only and must be set if
rangeRequestHandling
is set to 3. It can only be between (inclusive) 262144 (256KB) - 33554432 (32MB).- sslKeyVersion
This integer indicates the
ds-ssl-key-version
- tenantId
The integral, unique identifier of the
ds-tenant
who owns thisDelivery Service
- tlsVersions
An array of explicitly supported
ds-tls-versions
- topology
The unique name of the
Topology
that thisDelivery Service
is assigned to- trRequestHeaders
If defined, this defines the
ds-tr-req-headers
used by Traffic Router for thisDelivery Service
- trResponseHeaders
If defined, this defines the
ds-tr-resp-headers
used by Traffic Router for thisDelivery Service
- typeId
The integral, unique identifier of the
ds-types
of thisDelivery Service
- xmlId
This
Delivery Service
'sds-xmlid
Note
While this field must be present, it is not allowed to change; this must be the same as the
xml_id
theDelivery Service
already has.
PUT /api/5.0/deliveryservices/3 HTTP/1.1
Host: trafficops.infra.ciab.test
User-Agent: python-requests/2.25.1
Accept-Encoding: gzip, deflate
Accept: */*
Connection: keep-alive
Cookie: access_token=...; mojolicious=...
Content-Length: 1548
Content-Type: application/json
{
"active": "ACTIVE",
"anonymousBlockingEnabled": false,
"ccrDnsTtl": null,
"cdnId": 2,
"checkPath": null,
"consistentHashRegex": null,
"consistentHashQueryParams": [],
"deepCachingType": "NEVER",
"displayName": "test",
"dnsBypassCname": null,
"dnsBypassIp": null,
"dnsBypassIp6": null,
"dnsBypassTtl": null,
"dscp": 0,
"ecsEnabled": true,
"edgeHeaderRewrite": null,
"firstHeaderRewrite": null,
"fqPacingRate": null,
"geoLimit": 0,
"geoLimitCountries": null,
"geoLimitRedirectUrl": null,
"geoProvider": 0,
"globalMaxMbps": null,
"globalMaxTps": null,
"httpBypassFqdn": null,
"infoUrl": null,
"initialDispersion": 1,
"innerHeaderRewrite": null,
"ipv6RoutingEnabled": false,
"lastHeaderRewrite": null,
"logsEnabled": true,
"longDesc": "A Delivery Service created expressly for API documentation examples",
"maxDnsAnswers": null,
"missLat": 0,
"missLong": 0,
"maxOriginConnections": 0,
"maxRequestHeaderBytes": 131072,
"midHeaderRewrite": null,
"multiSiteOrigin": false,
"orgServerFqdn": "http://origin.infra.ciab.test",
"originShield": null,
"profileId": null,
"protocol": 0,
"qstringIgnore": 0,
"rangeRequestHandling": 0,
"regexRemap": null,
"regional": false,
"regionalGeoBlocking": false,
"routingName": "test",
"serviceCategory": null,
"signed": false,
"signingAlgorithm": null,
"rangeSliceBlockSize": null,
"sslKeyVersion": null,
"tenant": "root",
"tenantId": 1,
"tlsVersions": null,
"topology": null,
"trRequestHeaders": null,
"trResponseHeaders": null,
"type": "HTTP",
"typeId": 1,
"xmlId": "test"
}
- active
The
Delivery Service
'sds-active
state- anonymousBlockingEnabled
A boolean that defines
ds-anonymous-blocking
- ccrDnsTtl
The
ds-dns-ttl
- named "ccrDnsTtl" for legacy reasons- cdnId
The integral, unique identifier of the
ds-cdn
to which theDelivery Service
belongs- cdnName
Name of the
ds-cdn
to which theDelivery Service
belongs- checkPath
A
ds-check-path
- consistentHashRegex
A
ds-consistent-hashing-regex
- consistentHashQueryParams
An array of
ds-consistent-hashing-qparams
- deepCachingType
The
ds-deep-caching
setting for thisDelivery Service
- displayName
The
ds-display-name
- dnsBypassCname
A
ds-dns-bypass-cname
- dnsBypassIp
A
ds-dns-bypass-ip
- dnsBypassIp6
A
ds-dns-bypass-ipv6
- dnsBypassTtl
The
ds-dns-bypass-ttl
- dscp
A
ds-dscp
to be used within theDelivery Service
- ecsEnabled
A boolean that defines the
ds-ecs
setting on thisDelivery Service
- edgeHeaderRewrite
A set of
ds-edge-header-rw-rules
- exampleURLs
An array of
ds-example-urls
- firstHeaderRewrite
A set of
ds-first-header-rw-rules
- fqPacingRate
The
ds-fqpr
- geoLimit
An integer that defines the
ds-geo-limit
- geoLimitCountries
An array of strings defining the
ds-geo-limit-countries
- geoLimitRedirectUrl
A
ds-geo-limit-redirect-url
- geoProvider
The
ds-geo-provider
- globalMaxMbps
The
ds-global-max-mbps
- globalMaxTps
The
ds-global-max-tps
- httpBypassFqdn
A
ds-http-bypass-fqdn
- id
An integral, unique identifier for this
Delivery Service
- infoUrl
An
ds-info-url
- initialDispersion
The
ds-initial-dispersion
- innerHeaderRewrite
A set of
ds-inner-header-rw-rules
- ipv6RoutingEnabled
A boolean that defines the
ds-ipv6-routing
setting on thisDelivery Service
- lastHeaderRewrite
A set of
ds-last-header-rw-rules
- lastUpdated
The date and time at which this
Delivery Service
was last updated, in RFC 3339 format- logsEnabled
A boolean that defines the
ds-logs-enabled
setting on thisDelivery Service
- longDesc
The
ds-longdesc
of thisDelivery Service
- matchList
The
Delivery Service
'sds-matchlist
- pattern
A regular expression - the use of this pattern is dependent on the
type
field (backslashes are escaped)- setNumber
An integer that provides explicit ordering of
ds-matchlist
items - this is used as a priority ranking by Traffic Router, and is not guaranteed to correspond to the ordering of items in the array.- type
The type of match performed using
pattern
.- maxDnsAnswers
The
ds-max-dns-answers
allowed for thisDelivery Service
- maxOriginConnections
The
ds-max-origin-connections
- maxRequestHeaderBytes
The
ds-max-request-header-bytes
- midHeaderRewrite
A set of
ds-mid-header-rw-rules
- missLat
The
ds-geo-miss-default-latitude
used by thisDelivery Service
- missLong
The
ds-geo-miss-default-longitude
used by thisDelivery Service
- multiSiteOrigin
A boolean that defines the use of
ds-multi-site-origin
by thisDelivery Service
- orgServerFqdn
The
ds-origin-url
- originShield
A
ds-origin-shield
string- profileDescription
The
profile-description
of theds-profile
with which thisDelivery Service
is associated- profileId
The
profile-id
of theds-profile
with which thisDelivery Service
is associated- profileName
The
profile-name
of theds-profile
with which thisDelivery Service
is associated- protocol
An integral, unique identifier that corresponds to the
ds-protocol
used by thisDelivery Service
- qstringIgnore
An integral, unique identifier that corresponds to the
ds-qstring-handling
setting on thisDelivery Service
- rangeRequestHandling
An integral, unique identifier that corresponds to the
ds-range-request-handling
setting on thisDelivery Service
- regexRemap
A
ds-regex-remap
- regional
A boolean value defining the
ds-regional
setting on thisDelivery Service
- regionalGeoBlocking
A boolean defining the
ds-regionalgeo
setting on thisDelivery Service
- remapText
ds-raw-remap
- serviceCategory
The name of the
ds-service-category
with which theDelivery Service
is associated- signed
true
if and only ifsigningAlgorithm
is notnull
,false
otherwise- signingAlgorithm
Either a
ds-signing-algorithm
ornull
to indicate URL/URI signing is not implemented on thisDelivery Service
- rangeSliceBlockSize
An integer that defines the byte block size for the ATS Slice Plugin. It can only and must be set if
rangeRequestHandling
is set to 3.- sslKeyVersion
This integer indicates the
ds-ssl-key-version
- tenantId
The integral, unique identifier of the
ds-tenant
who owns thisDelivery Service
- tlsVersions
An array of explicitly supported
ds-tls-versions
- topology
The unique name of the
Topology
that thisDelivery Service
is assigned to- trRequestHeaders
If defined, this defines the
ds-tr-req-headers
used by Traffic Router for thisDelivery Service
- trResponseHeaders
If defined, this defines the
ds-tr-resp-headers
used by Traffic Router for thisDelivery Service
- type
The
ds-types
of thisDelivery Service
- typeId
The integral, unique identifier of the
ds-types
of thisDelivery Service
- xmlId
This
Delivery Service
'sds-xmlid
HTTP/1.1 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Set-Cookie, Cookie
Access-Control-Allow-Methods: POST,GET,OPTIONS,PUT,DELETE
Access-Control-Allow-Origin: *
Content-Encoding: gzip
Content-Type: application/json
Permissions-Policy: interest-cohort=()
Set-Cookie: mojolicious=...; Path=/; Expires=Thu, 29 Sep 2022 22:55:09 GMT; Max-Age=3600; HttpOnly, access_token=...; Path=/; Expires=Thu, 29 Sep 2022 22:55:09 GMT; Max-Age=3600; HttpOnly
Vary: Accept-Encoding
X-Server-Name: traffic_ops_golang/
Date: Thu, 29 Sep 2022 21:55:09 GMT
Content-Length: 838
{ "alerts": [
{
"text": "Delivery Service update was successful",
"level": "success"
}
],
"response": {
"active": "ACTIVE",
"anonymousBlockingEnabled": false,
"ccrDnsTtl": null,
"cdnId": 2,
"cdnName": null,
"checkPath": null,
"consistentHashQueryParams": [],
"consistentHashRegex": null,
"deepCachingType": "NEVER",
"displayName": "test",
"dnsBypassCname": null,
"dnsBypassIp": null,
"dnsBypassIp6": null,
"dnsBypassTtl": null,
"dscp": 0,
"ecsEnabled": true,
"edgeHeaderRewrite": null,
"exampleURLs": null,
"firstHeaderRewrite": null,
"fqPacingRate": null,
"geoLimit": 0,
"geoLimitCountries": null,
"geoLimitRedirectURL": null,
"geoProvider": 0,
"globalMaxMbps": null,
"globalMaxTps": null,
"httpBypassFqdn": null,
"id": 3,
"infoUrl": null,
"initialDispersion": 1,
"innerHeaderRewrite": null,
"ipv6RoutingEnabled": false,
"lastHeaderRewrite": null,
"lastUpdated": "2022-09-29T21:55:09.170596Z",
"logsEnabled": true,
"longDesc": "A Delivery Service created expressly for API documentation examples",
"matchList": [
{
"type": "HOST_REGEXP",
"setNumber": 0,
"pattern": ".*\\.test\\..*"
}
],
"maxDnsAnswers": null,
"maxOriginConnections": 0,
"maxRequestHeaderBytes": 131072,
"midHeaderRewrite": null,
"missLat": 0,
"missLong": 0,
"multiSiteOrigin": false,
"originShield": null,
"orgServerFqdn": "http://origin.infra.ciab.test",
"profileDescription": null,
"profileId": null,
"profileName": null,
"protocol": 0,
"qstringIgnore": 0,
"rangeRequestHandling": 0,
"rangeSliceBlockSize": null,
"regexRemap": null,
"regional": false,
"regionalGeoBlocking": false,
"remapText": null,
"routingName": "test",
"serviceCategory": null,
"signed": false,
"signingAlgorithm": null,
"sslKeyVersion": null,
"tenant": "root",
"tenantId": 1,
"tlsVersions": null,
"topology": null,
"trResponseHeaders": null,
"trRequestHeaders": null,
"type": "HTTP",
"typeId": 1,
"xmlId": "test"
}}
Deletes the target Delivery Service
- Auth. Required
Yes
- Roles Required
"admin" or "operations"2
- Permissions Required
DELIVERY-SERVICE:DELETE, DELIVERY-SERVICE:READ, CDN:READ, TYPE:READ
- Response Type
undefined
Name | Description |
---|---|
ID | The integral, unique identifier of the Delivery Service to be deleted |
DELETE /api/5.0/deliveryservices/3 HTTP/1.1
User-Agent: python-requests/2.25.1
Accept-Encoding: gzip, deflate
Accept: */*
Connection: keep-alive
Cookie: access_token=...; mojolicious=...
Content-Length: 0
HTTP/1.1 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Set-Cookie, Cookie
Access-Control-Allow-Methods: POST,GET,OPTIONS,PUT,DELETE
Access-Control-Allow-Origin: *
Content-Encoding: gzip
Content-Type: application/json
Permissions-Policy: interest-cohort=()
Set-Cookie: mojolicious=...; Path=/; Expires=Thu, 29 Sep 2022 22:59:08 GMT; Max-Age=3600; HttpOnly, access_token=...; Path=/; Expires=Thu, 29 Sep 2022 22:59:08 GMT; Max-Age=3600; HttpOnly
Vary: Accept-Encoding
X-Server-Name: traffic_ops_golang/
Date: Thu, 29 Sep 2022 21:59:08 GMT
Content-Length: 161
{ "alerts": [
{
"text": "ds was deleted.",
"level": "success"
},
{
"text": "Perform a CDN snapshot then queue updates on all servers in the cdn for the changes to take effect.",
"level": "info"
}
]}
Only those
Delivery Services
assigned toTenants
that are the requesting user'sTenant
or children thereof will appear in the output of aGET
request, and the same constraints are placed on the allowed values of thetenantId
field of aPUT
request to update a newDelivery Service
. Furthermore, the onlyDelivery Services
a user may delete are those assigned to aTenant
that is either the sameTenant
as the user'sTenant
, or a descendant thereof.↩Only those
Delivery Services
assigned toTenants
that are the requesting user'sTenant
or children thereof will appear in the output of aGET
request, and the same constraints are placed on the allowed values of thetenantId
field of aPUT
request to update a newDelivery Service
. Furthermore, the onlyDelivery Services
a user may delete are those assigned to aTenant
that is either the sameTenant
as the user'sTenant
, or a descendant thereof.↩