deliveryservices/{{ID}}
PUT
Allows users to edit an existing Delivery Service.
- Auth. Required:
Yes
- Roles Required:
“admin” or “operations”[1]
- Response Type:
NOT PRESENT - Despite returning a
200 OK
response (rather than e.g. a204 NO CONTENT
response), this endpoint does not return a representation of the modified resource in its payload, and instead returns nothing - not even a success message.
Request Structure
- active:
A boolean that defines Active.
- anonymousBlockingEnabled:
A boolean that defines Anonymous Blocking
- cacheurl:
-
Deprecated since version ATCv3.0: This field has been deprecated in Traffic Control 3.x and is subject to removal in Traffic Control 4.x or later
- ccrDnsTtl:
The DNS TTL - named “ccrDnsTtl” for legacy reasons
- cdnId:
The integral, unique identifier of the CDN to which the Delivery 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:
- consistentHashRegex:
- consistentHashQueryParams:
An array of Consistent Hashing Query Parameters
- deepCachingType:
The Deep Caching setting for this Delivery Service
- displayName:
The Display Name
- dnsBypassCname:
- dnsBypassIp:
- dnsBypassIp6:
- dnsBypassTtl:
The DNS Bypass TTL
- dscp:
A DSCP to be used within the Delivery Service
- ecsEnabled:
A boolean that defines the EDNS0 Client Subnet Enabled setting on this Delivery Service
- edgeHeaderRewrite:
A set of Edge Header Rewrite Rules
- firstHeaderRewrite:
A set of First Header Rewrite Rules
- fqPacingRate:
- geoLimit:
An integer that defines the Geo Limit
- geoLimitCountries:
A string containing a comma-separated list defining the Geo Limit Countries[2]
- geoLimitRedirectUrl:
- geoProvider:
- globalMaxMbps:
The Global Max Mbps
- globalMaxTps:
The Global Max TPS
- httpBypassFqdn:
- infoUrl:
An Info URL
- initialDispersion:
- innerHeaderRewrite:
A set of Inner Header Rewrite Rules
- ipv6RoutingEnabled:
A boolean that defines the IPv6 Routing Enabled setting on this Delivery Service
- lastHeaderRewrite:
A set of Last Header Rewrite Rules
- logsEnabled:
A boolean that defines the Logs Enabled setting on this Delivery Service
- longDesc:
The Long Description of this Delivery Service
- longDesc1:
An optional field containing the 2nd long description of this Delivery Service
- longDesc2:
An optional field containing the 3rd long description of this Delivery Service
- maxDnsAnswers:
The Max DNS Answers allowed for this Delivery Service
- maxOriginConnections:
- midHeaderRewrite:
A set of Mid Header Rewrite Rules
- missLat:
The Geo Miss Default Latitude used by this Delivery Service
- missLong:
The Geo Miss Default Longitude used by this Delivery Service
- multiSiteOrigin:
A boolean that defines the use of Use Multi-Site Origin Feature by this Delivery Service
- orgServerFqdn:
- originShield:
A Origin Shield string
- profileId:
An optional ID of the Profile with which this Delivery Service will be associated
- protocol:
An integral, unique identifier that corresponds to the Protocol used by this Delivery Service
- qstringIgnore:
An integral, unique identifier that corresponds to the Query String Handling setting on this Delivery Service
- rangeRequestHandling:
An integral, unique identifier that corresponds to the Range Request Handling setting on this Delivery Service
- regexRemap:
- regionalGeoBlocking:
A boolean defining the Regional Geoblocking setting on this Delivery Service
- remapText:
- routingName:
The Routing Name of this Delivery 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 Signing Algorithm or
null
to indicate URL/URI signing is not implemented on this Delivery 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 SSL Key Version
- tenantId:
The integral, unique identifier of the Tenant who owns this Delivery Service
- topology:
The unique name of the Topology that this Delivery Service is assigned to
- trRequestHeaders:
If defined, this defines the Traffic Router Log Request Headers used by Traffic Router for this Delivery Service
- trResponseHeaders:
If defined, this defines the Traffic Router Additional Response Headers used by Traffic Router for this Delivery Service
- typeId:
The integral, unique identifier of the Type of this Delivery Service
- xmlId:
This Delivery Service’s xml_id
Note
While this field must be present, it is not allowed to change; this must be the same as the
xml_id
the Delivery Service already has. This should almost never be different from the Delivery Service’sdisplayName
.
PUT /api/3.0/deliveryservices/1 HTTP/1.1
Host: trafficops.infra.ciab.test
User-Agent: curl/7.47.0
Accept: */*
Cookie: mojolicious=...
Content-Length: 761
Content-Type: application/json
{
"active": true,
"anonymousBlockingEnabled": false,
"cdnId": 2,
"cdnName": "CDN-in-a-Box",
"deepCachingType": "NEVER",
"displayName": "demo",
"dscp": 0,
"ecsEnabled": true,
"geoLimit": 0,
"geoProvider": 0,
"initialDispersion": 1,
"ipv6RoutingEnabled": false,
"lastUpdated": "2018-11-14 18:21:17+00",
"logsEnabled": true,
"longDesc": "A Delivery Service created expressly for API documentation examples",
"missLat": -1,
"missLong": -1,
"multiSiteOrigin": false,
"orgServerFqdn": "http://origin.infra.ciab.test",
"protocol": 0,
"qstringIgnore": 0,
"rangeRequestHandling": 0,
"regionalGeoBlocking": false,
"routingName": "video",
"signed": false,
"tenant": "root",
"tenantId": 1,
"typeId": 1,
"xmlId": "demo1"
}
Response Structure
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: *
Set-Cookie: mojolicious=...; Path=/; Expires=Mon, 18 Nov 2019 17:40:54 GMT; Max-Age=3600; HttpOnly
Whole-Content-Sha512: z4PhNX7vuL3xVChQ1m2AB9Yg5AULVxXcg/SpIdNs6c5H0NE8XYXysP+DGNKHfuwvY7kxvUdBeoGlODJ6+SfaPg==
X-Server-Name: traffic_ops_golang/
Date: Tue, 20 Nov 2018 14:12:25 GMT
Content-Length: 0
Content-Type: text/plain; charset=utf-8
DELETE
Deletes the target Delivery Service
- Auth. Required:
Yes
- Roles Required:
“admin” or “operations”[1]
- Response Type:
undefined
Request Structure
Name |
Description |
---|---|
ID |
The integral, unique identifier of the Delivery Service to be deleted |
DELETE /api/3.0/deliveryservices/2 HTTP/1.1
Host: trafficops.infra.ciab.test
User-Agent: curl/7.47.0
Accept: */*
Cookie: mojolicious=...
Response Structure
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-Type: application/json
Set-Cookie: mojolicious=...; Path=/; Expires=Mon, 18 Nov 2019 17:40:54 GMT; Max-Age=3600; HttpOnly
Whole-Content-Sha512: w9NlQpJJEl56r6iYq/fk8o5WfAXeUS5XR9yDHvKUgPO8lYEo8YyftaSF0MPFseeOk60dk6kQo+MLYTDIAhhRxw==
X-Server-Name: traffic_ops_golang/
Date: Tue, 20 Nov 2018 14:56:37 GMT
Content-Length: 57
{ "alerts": [
{
"text": "ds was deleted.",
"level": "success"
}
]}