Sets the properties for a customer origin on the ADN platform.
Updating a customer origin will overwrite the entire customer origin configuration. This will occur regardless of whether a request parameter has been excluded from the request.
This endpoint cannot be used to update the directory assigned to a customer origin configuration that has been associated with an edge CNAME.
Once a customer origin has been updated, ensure optimal communication to the origin server by calling the Reselect ADN Gateways endpoint.
A request to update a customer origin configuration is described below.
HTTP Method | Request URI |
---|---|
PUT |
https://api.edgecast.com/v2/mcc/customers/AccountNumber/origins/adn/CustomerOriginID |
Define the following variable when submitting the above request.
VariableA variable represents a value that must be replaced. A variable consists of either a URL segment (e.g., "0001" in /0001/) or a query string value (e.g., "3" in mediaTypes=3). | Description |
---|---|
Required |
|
Required |
Replace this variable with the system-defined ID of the customer origin configuration that you would like to update. A list of ADN customer origin configurations and their corresponding system-defined IDs can be retrieved through the following endpoint: |
This endpointIdentifies a request's connection point to our REST API service. only takes advantage of common request headers.
A valid customer origin configuration must meet the following requirements:
Pass the following request body parameters:
An indented parameter indicates that it is a property of the request parameter directly above it. When submitting a request, you will need to use the proper syntax to indicate this relationship. Please refer to the parent request parameter for more information.
Name | Data Type | Description |
---|---|---|
DirectoryName Required |
String |
Defines the directory name that will be assigned to the customer origin configuration. This alphanumeric name is appended to the end of the base CDN URL that points to the customer origin server. Example: http://adn.0001.edgecastcdn.net/800001/CustomerOriginThis variable represents the directory name assigned to your customer origin configuration.
This setting is read-only for a customer origin configuration that has been associated with at least one edge CNAME configuration. In this scenario, make sure that this response parameter is set to the directory name currently assigned to the customer origin configuration. |
FollowRedirects |
Boolean |
Determines whether our edge servers will respect a URL redirect when validating the set of optimal ADN gateway servers for your customer origin configuration. Default Value: False
|
HostHeader Required |
String |
Defines the value that will be assigned to the Host header for all requests to this customer origin configuration. A host header is especially useful when there are multiple virtual hostnames hosted on a single physical server or load-balanced set of servers. Use one of the following formats when setting the Host header value:
A protocol should not be specified when setting this parameter. |
HttpHostnames Required for HTTP requests. |
Array |
This request parameter contains the set of hostnames/IP addresses to which HTTP requests for this customer origin configuration may be fulfilled. Key information:
|
Name Required for HTTP requests. |
String |
HttpHostnames array Identifies the hostname/IP address of an origin server that will be associated with the customer origin configuration being created. Use one of the following formats to identify an origin server:
|
HttpLoadBalancing Required for HTTP requests. |
String |
Determines how HTTP requests will be load balanced across the specified hostnames/IP addresses. Valid values are:
Key information:
|
HttpsHostnames Required for HTTPS requests. |
Array |
This request parameter contains the set of hostnames/IP addresses to which HTTPS requests for this customer origin configuration may be fulfilled. Key information:
This request parameter is only available for customers that have purchased an SSL certificate or the HTTPS feature. |
Name Required for HTTPS requests. |
String |
HttpsHostnames array Identifies the hostname/IP address of an origin server that will be associated with the customer origin configuration being created. Use one of the following formats to identify an origin server:
End-to-end data encryption is sacrificed when the HTTP protocol is used to serve HTTPS requests. |
HttpsLoadBalancing Required for HTTPS requests. |
String |
Determines how HTTPS requests will be load balanced across the specified hostnames/IP addresses. Valid values are:
Key information:
|
NetworkConfiguration |
Integer |
Determines how hostnames associated with this customer origin configuration will be resolved to an IP address.
|
ValidationURL Required |
String |
Defines the URL to a sample asset stored on your servers. A set of optimal ADN gateway servers for your customer origin server is determined through the delivery of this sample asset. Make sure that the hostname in the specified URL matches the one defined in the HostHeader request parameter. |
The response to the above request includes an HTTP status code, response headers, and a response body.
A status code indicates whether the request was successfully performed.
The response for this endpoint only includes standard HTTP response headers.
The response body for a successful request does not contain a response parameter.
The response body for an unsuccessful request may contain an error parameter that provides additional information.
A sample JSON request is shown below.
PUT https://api.edgecast.com/v2/mcc/customers/0001/origins/adn/123456 HTTP/1.1
Authorization: TOK:12345678-1234-1234-1234-1234567890ab
Accept: application/json
Content-Type: application/json
Host:api.edgecast.com
Content-Length: 419
{ "DirectoryName" : "MyWebServer", "HostHeader" : "webapp.example.com:80", "HttpHostnames" : [{ "Name" : "http:\/\/webapp1.example.com:80" }, { "Name" : "http:\/\/webapp2.example.com:80" } ], "HttpLoadBalancing" : "RR", "HttpsHostnames" : [{ "Name" : "https:\/\/webapp.example.com:443" } ], "HttpsLoadBalancing" : "PF", "ValidationURL" : "http:\/\/webapp.example.com:80\/images\/PerformanceTestObject_5k.gif" }
A sample JSON response is shown below.
HTTP/1.1 200 OK
Cache-Control: private
Content-Type: application/json; charset=utf-8
Date: Thu, 15 Apr 2021 12:00:00 GMT
Content-Length: 0
A sample XML request is shown below.
PUT https://api.edgecast.com/v2/mcc/customers/0001/origins/adn/123456 HTTP/1.1
Authorization: TOK:12345678-1234-1234-1234-1234567890ab
Accept: application/xml
Content-Type: application/xml
Host:api.edgecast.com
Content-Length: 669
<CustomerOriginParameter xmlns="http://www.whitecdn.com/schemas/apiservices/"> <DirectoryName>MyWebServer</DirectoryName> <HostHeader>webapp.example.com:80</HostHeader> <HttpHostnames> <Hostname> <Name>http://webapp1.example.com:80</Name> </Hostname> <Hostname> <Name>http://webapp2.example.com:80</Name> </Hostname> </HttpHostnames> <HttpLoadBalancing>RR</HttpLoadBalancing> <HttpsHostnames> <Hostname> <Name>https://webapp.example.com:443</Name> </Hostname> </HttpsHostnames> <HttpsLoadBalancing>PF</HttpsLoadBalancing> <ValidationURL>http://webapp.example.com:80/images/PerformanceTestObject_5k.gif</ValidationURL> </CustomerOriginParameter>
A sample XML response is shown below.
HTTP/1.1 200 OK
Cache-Control: private
Content-Type: application/xml; charset=utf-8
Date: Thu, 15 Apr 2021 12:00:00 GMT
Content-Length: 0