The base URL for this API is: https://api.leaseweb.com/cdn/v2
The API uses standard HTTP status codes to indicate the success or failure of the API call.The response will be JSON. Most APIs use the following format:
{
"errorCode" : "APP00800",
"errorMessage" : "The connection with the DB cannot be established.",
"correlationId" : "550e8400-e29b-41d4-a716-446655440000",
"userMessage" : "Cannot handle your request at the moment. Please try again later.",
"reference" : "https://developer.leaseweb.com/errors/APP00800"
}
Authentication for the APIs is required. To authenticate your call, you will need to sent your API key as X-LSW-Auth
header.
You can generate API keys in the Customer Portal.
Create origin resouces to be used within distributions.
There are 2 types of origins:
resourceType required | string Enum: "SIMPLE_ORIGIN" "ADVANCED_ORIGIN" |
required | Array of items |
{- "resourceType": "SIMPLE_ORIGIN",
- "data": [
- {
- "key": "host",
- "value": "backend.leaseweb.com"
}, - {
- "key": "description",
- "value": "Leaseweb Backend"
}, - {
- "key": "enabled",
- "value": true
}
]
}
{- "resourceType": "SIMPLE_ORIGIN",
- "data": [
- {
- "key": "id",
- "value": "or-4njkb2g"
}, - {
- "key": "customerId",
- "value": "cu-sndj3j24"
}, - {
- "key": "created",
- "value": "2024-07-12T12:55:54"
}, - {
- "key": "updated",
- "value": "2024-07-12T12:55:54"
}, - {
- "key": "host",
- "value": "backend.leaseweb.com"
}, - {
- "key": "description",
- "value": "Leaseweb Backend"
}, - {
- "key": "enabled",
- "value": true
}
]
}
Get the list of origins including all of the origin types. Types are specified in each record.
limit | integer Example: limit=20 Limit the number of results returned. |
offset | integer Example: offset=10 Return results starting from the given offset. |
{- "origins": [
- {
- "resourceType": "SIMPLE_ORIGIN",
- "data": [
- {
- "key": "id",
- "value": "or-5dfg51fr"
}, - {
- "key": "customerId",
- "value": "cu-sndj3j24"
}, - {
- "key": "created",
- "value": "2024-07-12T12:55:54"
}, - {
- "key": "updated",
- "value": "2024-07-12T12:55:54"
}, - {
- "key": "host",
- "value": "backend.leaseweb.com"
}, - {
- "key": "description",
- "value": "Leaseweb Backend"
}, - {
- "key": "enabled",
- "value": true
}
]
}, - {
- "resourceType": "ADVANCED_ORIGIN",
- "data": [
- {
- "key": "id",
- "value": "or-y71sg45"
}, - {
- "key": "customerId",
- "value": "cu-sndj3j24"
}, - {
- "key": "created",
- "value": "2020-12-10T07:07:35"
}, - {
- "key": "updated",
- "value": "2021-12-08T12:20:25"
}, - {
- "key": "host",
- "value": "backend.leaseweb.com"
}, - {
- "key": "description",
- "value": "LSW Custom Backend"
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "path",
- "value": "/test"
}, - {
- "key": "httpPort",
- "value": 8080
}, - {
- "key": "httpsPort",
- "value": 8081
}
]
}
], - "_metadata": {
- "totalCount": 2,
- "limit": 20,
- "offset": 0
}
}
Get an origin by its ID.
origin_id required | string (Origin Id) |
{- "resourceType": "SIMPLE_ORIGIN",
- "data": [
- {
- "key": "id",
- "value": "or-5dfg51fr"
}, - {
- "key": "customerId",
- "value": "cu-sndj3j24"
}, - {
- "key": "created",
- "value": "2024-07-12T12:55:54"
}, - {
- "key": "updated",
- "value": "2024-07-12T12:55:54"
}, - {
- "key": "host",
- "value": "backend.leaseweb.com"
}, - {
- "key": "description",
- "value": "Leaseweb Backend"
}, - {
- "key": "enabled",
- "value": true
}
]
}
Update the options available in an origin.
Note: Type of the origin can't be changed since it's considered a different type of entity.
origin_id required | string (Origin Id) |
resourceType required | string (Resourcetype) |
required | Array of objects (Data) |
{- "resourceType": "SIMPLE_ORIGIN",
- "data": [
- {
- "key": "host",
- "value": "backend.leaseweb.com"
}, - {
- "key": "description",
- "value": "Leaseweb Backend 2"
}, - {
- "key": "enabled",
- "value": true
}
]
}
{- "resourceType": "SIMPLE_ORIGIN",
- "data": [
- {
- "key": "id",
- "value": "or-5dfg51fr"
}, - {
- "key": "customerId",
- "value": "cu-sndj3j24"
}, - {
- "key": "created",
- "value": "2024-07-12T12:55:54"
}, - {
- "key": "updated",
- "value": "2024-07-12T12:55:54"
}, - {
- "key": "host",
- "value": "backend.leaseweb.com"
}, - {
- "key": "description",
- "value": "Leaseweb Backend 2"
}, - {
- "key": "enabled",
- "value": true
}
]
}
{- "correlationId": "289346a1-3eaf-4da4-b707-62ef12eb08be",
- "errorCode": "400",
- "errorDetails": { },
- "errorMessage": "The API could not interpret your request correctly."
}
Using origin groups you can define loadbalancers on top of your origins.
Available loadbalancing methods:
resourceType required | string (Resourcetype) |
required | Array of objects (Data) |
{- "resourceType": "ORIGIN_GROUP",
- "data": [
- {
- "key": "balancingMethod",
- "value": "CONSISTENT"
}, - {
- "key": "description",
- "value": "LSW Origin Group"
}, - {
- "key": "failTimeOut",
- "value": 8
}, - {
- "key": "keepAlive",
- "value": true
}, - {
- "key": "keepAliveSeconds",
- "value": 27
}, - {
- "key": "enabled",
- "value": true
}
]
}
{- "resourceType": "ORIGIN_GROUP",
- "data": [
- {
- "key": "balancingMethod",
- "value": "CONSISTENT"
}, - {
- "key": "description",
- "value": "LSW Origin Group"
}, - {
- "key": "failTimeOut",
- "value": 8
}, - {
- "key": "keepAlive",
- "value": true
}, - {
- "key": "keepAliveSeconds",
- "value": 27
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "id",
- "value": "og-3h47bjs"
}, - {
- "key": "customerId",
- "value": "cu-47dbh4n2"
}, - {
- "key": "created",
- "value": "2024-08-07T10:38:49"
}, - {
- "key": "updated",
- "value": null
}
]
}
Get the list of your origin groups.
limit | integer Example: limit=20 Limit the number of results returned. |
offset | integer Example: offset=10 Return results starting from the given offset. |
{- "originGroups": [
- {
- "resourceType": "ORIGIN_GROUP",
- "data": [
- {
- "key": "balancingMethod",
- "value": "ROUNDROBIN"
}, - {
- "key": "description",
- "value": "Origin Group 1"
}, - {
- "key": "failTimeOut",
- "value": 1
}, - {
- "key": "keepAlive",
- "value": true
}, - {
- "key": "keepAliveSeconds",
- "value": 30
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "id",
- "value": "og-84ynk6g"
}, - {
- "key": "customerId",
- "value": "cu-4kb3vb64"
}, - {
- "key": "created",
- "value": "2020-12-14T11:52:17"
}, - {
- "key": "updated",
- "value": "2024-07-05T11:38:45"
}
]
}, - {
- "resourceType": "ORIGIN_GROUP",
- "data": [
- {
- "key": "balancingMethod",
- "value": "CONSISTENT"
}, - {
- "key": "description",
- "value": "origin group 1"
}, - {
- "key": "failTimeOut",
- "value": 15
}, - {
- "key": "keepAlive",
- "value": true
}, - {
- "key": "keepAliveSeconds",
- "value": 30
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "id",
- "value": "og-dg9enj3"
}, - {
- "key": "customerId",
- "value": "cu-4kb3vb64"
}, - {
- "key": "created",
- "value": "2020-12-17T14:02:37"
}, - {
- "key": "updated",
- "value": "2021-11-29T11:27:03"
}
]
}
], - "_metadata": {
- "totalCount": 2,
- "limit": 25,
- "offset": 0
}
}
Get the details of an origin group by its ID.
origin_group_id required | string (Origin Group Id) |
{- "resourceType": "ORIGIN_GROUP",
- "data": [
- {
- "key": "balancingMethod",
- "value": "CONSISTENT"
}, - {
- "key": "description",
- "value": "LSW Origin Group"
}, - {
- "key": "failTimeOut",
- "value": 8
}, - {
- "key": "keepAlive",
- "value": true
}, - {
- "key": "keepAliveSeconds",
- "value": 27
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "id",
- "value": "og-3h47bjs"
}, - {
- "key": "customerId",
- "value": "cu-47dbh4n2"
}, - {
- "key": "created",
- "value": "2024-08-07T10:38:49"
}, - {
- "key": "updated",
- "value": null
}
]
}
Update the parameters in an origin group.
Note: members are managed by another endpoint.
origin_group_id required | string (Origin Group Id) |
resourceType required | string (Resourcetype) |
required | Array of objects (Data) |
{- "resourceType": "ORIGIN_GROUP",
- "data": [
- {
- "key": "balancingMethod",
- "value": "CONSISTENT"
}, - {
- "key": "description",
- "value": "LSW Origin Group 2"
}, - {
- "key": "failTimeOut",
- "value": 8
}, - {
- "key": "keepAlive",
- "value": true
}, - {
- "key": "keepAliveSeconds",
- "value": 27
}, - {
- "key": "enabled",
- "value": true
}
]
}
{- "resourceType": "ORIGIN_GROUP",
- "data": [
- {
- "key": "balancingMethod",
- "value": "CONSISTENT"
}, - {
- "key": "description",
- "value": "LSW Origin Group 2"
}, - {
- "key": "failTimeOut",
- "value": 8
}, - {
- "key": "keepAlive",
- "value": true
}, - {
- "key": "keepAliveSeconds",
- "value": 27
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "id",
- "value": "og-3h47bjs"
}, - {
- "key": "customerId",
- "value": "cu-47dbh4n2"
}, - {
- "key": "created",
- "value": "2024-08-07T10:38:49"
}, - {
- "key": "updated",
- "value": null
}
]
}
Delete an origin group by its ID.
origin_group_id required | string (Origin Group Id) |
{- "correlationId": "289346a1-3eaf-4da4-b707-62ef12eb08be",
- "errorCode": "400",
- "errorDetails": { },
- "errorMessage": "The API could not interpret your request correctly."
}
Add members (origins) to your origin group.
These are the backend servers that are going to be used within the loadbalancer.
origin_group_id required | string (Origin Group Id) |
resourceType required | string (Resourcetype) |
required | Array of objects (Data) |
{- "resourceType": "ORIGIN_GROUP_MEMBER",
- "data": [
- {
- "key": "originId",
- "value": "or-du7n2vo8"
}, - {
- "key": "status",
- "value": "active"
}
]
}
{- "resourceType": "ORIGIN_GROUP_MEMBER",
- "data": [
- {
- "key": "originId",
- "value": "or-du7n2vo8"
}, - {
- "key": "status",
- "value": "active"
}, - {
- "key": "id",
- "value": "or-6j2vgb3"
}, - {
- "key": "originHost",
- "value": "origin.leaseweb.com"
}
]
}
Get all of the members belonging to an origin group.
origin_group_id required | string (Origin Group Id) |
limit | integer Example: limit=20 Limit the number of results returned. |
offset | integer Example: offset=10 Return results starting from the given offset. |
{- "originGroupMembers": [
- {
- "resourceType": "ORIGIN_GROUP_MEMBER",
- "data": [
- {
- "key": "originId",
- "value": "or-du7n2vo8"
}, - {
- "key": "status",
- "value": "active"
}, - {
- "key": "id",
- "value": "or-g2n6l2v5"
}, - {
- "key": "originHost",
- "value": "origin1.leaseweb.com"
}
]
}, - {
- "resourceType": "ORIGIN_GROUP_MEMBER",
- "data": [
- {
- "key": "originId",
- "value": "or-du7n2vo8"
}, - {
- "key": "status",
- "value": "backup"
}, - {
- "key": "id",
- "value": "or-kn6l2bb5"
}, - {
- "key": "originHost",
- "value": "origin2.leaseweb.com"
}
]
}
], - "_metadata": {
- "totalCount": 2,
- "limit": 25,
- "offset": 0
}
}
Get the details of an origin group member by its ID.
origin_group_id required | string (Origin Group Id) |
origin_group_member_id required | string (Origin Group Member Id) |
{- "resourceType": "ORIGIN_GROUP_MEMBER",
- "data": [
- {
- "key": "originId",
- "value": "or-du7n2vo8"
}, - {
- "key": "status",
- "value": "active"
}, - {
- "key": "id",
- "value": "or-6j2vgb3"
}, - {
- "key": "originHost",
- "value": "origin.leaseweb.com"
}
]
}
Update the parameters in an origin group member.
origin_group_id required | string (Origin Group Id) |
origin_group_member_id required | string (Origin Group Member Id) |
resourceType required | string (Resourcetype) |
required | Array of objects (Data) |
{- "resourceType": "ORIGIN_GROUP_MEMBER",
- "data": [
- {
- "key": "originId",
- "value": "or-du7n2vo8"
}, - {
- "key": "status",
- "value": "inactive"
}
]
}
{- "resourceType": "ORIGIN_GROUP_MEMBER",
- "data": [
- {
- "key": "originId",
- "value": "or-du7n2vo8"
}, - {
- "key": "status",
- "value": "inactive"
}, - {
- "key": "id",
- "value": "or-6j2vgb3"
}, - {
- "key": "originHost",
- "value": "origin.leaseweb.com"
}
]
}
origin_group_id required | string (Origin Group Id) |
origin_group_member_id required | string (Origin Group Member Id) |
{- "correlationId": "289346a1-3eaf-4da4-b707-62ef12eb08be",
- "errorCode": "400",
- "errorDetails": { },
- "errorMessage": "The API could not interpret your request correctly."
}
You can use this endpoint to debug your distributions on each CDN provider independently. All of the returned headers per provider are included in the response.
Note: Use the specific domain you want to debug since each distribution can have multiple custom domains.
url required | string <uri> (Url) [ 1 .. 2083 ] characters |
{- "success": true,
- "providerResponses": [
- {
- "providerType": "gcore",
- "success": true,
- "ip": "93.123.17.254",
- "statusCode": 301,
- "message": null,
- "headers": [
- {
- "name": "connection",
- "value": "keep-alive"
}, - {
- "name": "content-length",
- "value": "0"
}, - {
- "name": "date",
- "value": "Thu, 05 Aug 2024 11:34:36 GMT"
},
]
}, - {
- "providerType": "edgio",
- "success": true,
- "ip": "41.63.96.130",
- "statusCode": 301,
- "message": null,
- "headers": [
- {
- "name": "connection",
- "value": "keep-alive"
}, - {
- "name": "content-length",
- "value": "0"
}, - {
- "name": "date",
- "value": "Thu, 05 Aug 2024 11:34:36 GMT"
},
]
}
]
}
You can submit multiple URLs to be invalidated and purged on all of the CDN PoPs. The time to finish the purge depends on the CDN providers and the number of cached files.
files | Array of strings (Files) |
{
}
{- "type": "INVALIDATION",
- "resource": {
- "invalidation_id": "in-f141ghed5",
- "status": "PENDING",
- "url_status": [
- {
- "distribution_group_id": "",
- "status": "PENDING",
- "message": ""
}
], - "submitted": "2024-07-11T12:14:41",
- "completed": ""
}, - "status": "PENDING",
- "id": "0533396e-e5c6-4de2-bd08-06dfa91a3ab6",
- "customerId": "47927462",
- "created": "2024-07-11T12:14:43Z",
- "updated": ""
}
Using this endpoint, you can upload your custom TLS certificates to be used in your distributions.
Note: some CDN providers need more time to apply your new certificate to your newly created distribution. Please be aware and always try to upload your certificates as soon as possible.
Description (string) or Description (null) (Description) | |
certificate required | string (Certificate) |
privateKey required | string (Privatekey) |
caBundle required | string (Cabundle) |
validation | boolean (Validation) Default: true |
{- "description": "Main LSW Certificate 2024",
- "certificate": "-----BEGIN CERTIFICATE----- {***} -----END CERTIFICATE-----",
- "privateKey": "-----BEGIN PRIVATE KEY----- {***} -----END PRIVATE KEY-----",
- "caBundle": "-----BEGIN CERTIFICATE----- {***} -----END CERTIFICATE-----",
- "validation": true
}
{- "description": "Main LSW Certificate 2024",
- "certificate": "Hidden for security reasons",
- "privateKey": "Hidden for security reasons",
- "caBundle": "Hidden for security reasons",
- "validation": true,
- "id": "ce-5g8wbh25",
- "commonName": "c1",
- "issuer": "c1",
- "valid": true,
- "trusted": true,
- "daysLeft": 364,
- "validFrom": 1723118047,
- "validUntil": 1754646847,
- "created": "2024-03-19T08:15:23",
- "updated": "2024-03-19T08:15:23"
}
Get the list of your certificates.
limit | integer Example: limit=20 Limit the number of results returned. |
offset | integer Example: offset=10 Return results starting from the given offset. |
{- "certificates": [
- {
- "description": "Main LSW Certificate 2024",
- "certificate": "Hidden for security reasons",
- "privateKey": "Hidden for security reasons",
- "caBundle": "Hidden for security reasons",
- "validation": true,
- "id": "ce-5g8wbh25",
- "commonName": "c1",
- "issuer": "c1",
- "valid": true,
- "trusted": true,
- "daysLeft": 364,
- "validFrom": 1723118047,
- "validUntil": 1754646847,
- "created": "2024-03-19T08:15:23",
- "updated": "2024-03-19T08:15:23"
}
], - "_metadata": {
- "totalCount": 1,
- "limit": -1,
- "offset": 0
}
}
Get the details of a certificate by its ID
certificate_id required | string (Certificate Id) |
{- "description": "Main LSW Certificate 2024",
- "certificate": "Hidden for security reasons",
- "privateKey": "Hidden for security reasons",
- "caBundle": "Hidden for security reasons",
- "validation": true,
- "id": "ce-5g8wbh25",
- "commonName": "c1",
- "issuer": "c1",
- "valid": true,
- "trusted": true,
- "daysLeft": 364,
- "validFrom": 1723118047,
- "validUntil": 1754646847,
- "created": "2024-03-19T08:15:23",
- "updated": "2024-03-19T08:15:23"
}
certificate_id required | string (Certificate Id) |
{- "correlationId": "289346a1-3eaf-4da4-b707-62ef12eb08be",
- "errorCode": "400",
- "errorDetails": { },
- "errorMessage": "The API could not interpret your request correctly."
}
Get the list of all of the actions to monitor the progress of your background jobs.
filters | Array of strings (Filters) Items Enum: "INVALIDATION" "CREATE_DIST" "UPDATE_DIST" "DELETE_DIST" |
limit | integer Example: limit=20 Limit the number of results returned. |
offset | integer Example: offset=10 Return results starting from the given offset. |
{- "actions": [
- {
- "type": "INVALIDATION",
- "resource": {
- "invalidation_id": "in-gt7m1s5",
- "status": "FINISHED",
- "url_status": [
- {
- "distribution_group_id": "",
- "status": "SUCCESS",
- "message": ""
}
], - "submitted": "2024-07-10T13:10:14",
- "completed": null
}, - "status": "FINISHED",
- "id": "dac57900-0109-4615-b808-003f2c07cb40",
- "customerId": "59841258",
- "created": "2024-07-10T13:10:15Z",
- "updated": "2024-08-08T12:52:09Z"
}, - {
- "type": "INVALIDATION",
- "resource": {
- "invalidation_id": "in-80ot20ls",
- "status": "FINISHED",
- "url_status": [
- {
- "distribution_group_id": "",
- "status": "SUCCESS",
- "message": ""
}
], - "submitted": "2024-07-10T13:11:12",
- "completed": null
}, - "status": "FINISHED",
- "id": "755ad32d-264d-4ace-bd4c-c30399c71675",
- "customerId": "59841258",
- "created": "2024-07-10T13:11:13Z",
- "updated": "2024-08-08T12:52:09Z"
}
], - "_metadata": {
- "totalCount": 2,
- "limit": -1,
- "offset": 0
}
}
Get an action by ID to monitor the progress.
action_id required | string <uuid> (Action Id) |
{- "type": "INVALIDATION",
- "status": "PENDING",
- "id": "50ea5204-4827-41d2-a940-cb5afdfb2426",
- "customerId": "215468472",
- "created": "2019-08-24T14:15:22Z",
- "updated": "2019-08-24T14:15:22Z"
}
Create any kind of distribution using this endpoint.
Available distribution types:
resourceType required | string (Resourcetype) |
required | Array of objects (Data) |
{- "resourceType": "DISTRIBUTION_VOLUME",
- "data": [
- {
- "key": "description",
- "value": "Test Volume Distribution"
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "tls",
- "value": false
}
]
}
{- "resourceType": "DISTRIBUTION_VOLUME",
- "data": [
- {
- "key": "description",
- "value": "Test Volume Distribution"
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "ipv6",
- "value": false
}, - {
- "key": "tls",
- "value": false
}, - {
- "key": "tlsType",
- "value": null
}, - {
- "key": "certificateId",
- "value": null
}, - {
- "key": "logging",
- "value": false
}, - {
- "key": "id",
- "value": "di-6wnk5n2b"
}, - {
- "key": "customerId",
- "value": "cu-27h4kb2v"
}, - {
- "key": "created",
- "value": "2024-08-07T10:25:00"
}, - {
- "key": "updated",
- "value": null
}
]
}
Get the list of your distributions.
limit | integer Example: limit=20 Limit the number of results returned. |
offset | integer Example: offset=10 Return results starting from the given offset. |
{- "distributions": [
- {
- "resourceType": "DISTRIBUTION_VOLUME",
- "data": [
- {
- "key": "description",
- "value": "Test Distribution"
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "ipv6",
- "value": true
}, - {
- "key": "tls",
- "value": false
}, - {
- "key": "tlsType",
- "value": null
}, - {
- "key": "certificateId",
- "value": null
}, - {
- "key": "logging",
- "value": true
}, - {
- "key": "id",
- "value": "di-dkn3lb5vc"
}, - {
- "key": "customerId",
- "value": "cu-8smmd9n"
}, - {
- "key": "created",
- "value": "2020-11-03T12:04:43"
}, - {
- "key": "updated",
- "value": "2024-02-22T20:29:14"
}
]
}
], - "_metadata": {
- "totalCount": 1,
- "limit": 25,
- "offset": 0
}
}
Get the general details of a distribution by its ID.
distribution_id required | string (Distribution Id) |
{- "resourceType": "DISTRIBUTION_VOLUME",
- "data": [
- {
- "key": "description",
- "value": "Test Volume Distribution"
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "ipv6",
- "value": false
}, - {
- "key": "tls",
- "value": false
}, - {
- "key": "tlsType",
- "value": null
}, - {
- "key": "certificateId",
- "value": null
}, - {
- "key": "logging",
- "value": false
}, - {
- "key": "id",
- "value": "di-6wnk5n2b"
}, - {
- "key": "customerId",
- "value": "cu-27h4kb2v"
}, - {
- "key": "created",
- "value": "2024-08-07T10:25:00"
}, - {
- "key": "updated",
- "value": null
}
]
}
distribution_id required | string (Distribution Id) |
resourceType required | string (Resourcetype) |
required | Array of objects (Data) |
{- "resourceType": "DISTRIBUTION_VOLUME",
- "data": [
- {
- "key": "description",
- "value": "Test Volume Distribution 2"
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "ipv6",
- "value": false
}, - {
- "key": "tls",
- "value": false
}, - {
- "key": "tlsType",
- "value": null
}, - {
- "key": "certificateId",
- "value": null
}, - {
- "key": "logging",
- "value": false
}
]
}
{- "resourceType": "DISTRIBUTION_VOLUME",
- "data": [
- {
- "key": "description",
- "value": "Test Volume Distribution 2"
}, - {
- "key": "enabled",
- "value": true
}, - {
- "key": "ipv6",
- "value": false
}, - {
- "key": "tls",
- "value": false
}, - {
- "key": "tlsType",
- "value": null
}, - {
- "key": "certificateId",
- "value": null
}, - {
- "key": "logging",
- "value": false
}, - {
- "key": "id",
- "value": "di-6wnk5n2b"
}, - {
- "key": "customerId",
- "value": "cu-27h4kb2v"
}, - {
- "key": "created",
- "value": "2024-08-07T10:25:00"
}, - {
- "key": "updated",
- "value": "2024-08-07T10:25:00"
}
]
}
distribution_id required | string (Distribution Id) |
{- "correlationId": "289346a1-3eaf-4da4-b707-62ef12eb08be",
- "errorCode": "400",
- "errorDetails": { },
- "errorMessage": "The API could not interpret your request correctly."
}
Add custom domains to a distribution.
distribution_id required | string (Distribution Id) |
domain required | string (Domain) |
{- "domain": "test2.com"
}
{- "domain": "test2.com",
- "id": "test2.com",
- "distributionId": "di-yt84vrj",
- "created": "2024-07-31T02:15:32",
- "updated": "2024-08-04T23:24:29"
}
Get the list of custom domains attached to a distribution.
distribution_id required | string (Distribution Id) |
limit | integer Example: limit=20 Limit the number of results returned. |
offset | integer Example: offset=10 Return results starting from the given offset. |
{- "domains": [
- {
- "domain": "test2.com",
- "id": "test2.com",
- "distributionId": "di-y8n5spi",
- "created": "2024-07-31T02:15:32",
- "updated": "2024-08-04T23:24:29"
}
], - "_metadata": {
- "totalCount": 1,
- "limit": 10,
- "offset": 0
}
}
Get the details of a custom domain attached to a dsitribution.
distribution_id required | string (Distribution Id) |
domain_id required | string (Domain Id) |
{- "domain": "test2.com",
- "id": "test2.com",
- "distributionId": "di-yt84vrj",
- "created": "2024-07-31T02:15:32",
- "updated": "2024-08-04T23:24:29"
}
distribution_id required | string (Distribution Id) |
domain_id required | string (Domain Id) |
{- "correlationId": "289346a1-3eaf-4da4-b707-62ef12eb08be",
- "errorCode": "400",
- "errorDetails": { },
- "errorMessage": "The API could not interpret your request correctly."
}
Apply custom configurations using policies.
Note: Policies only exist for Volume and Shield distributions and only one policy can be added for volume distributions.
distribution_id required | string (Distribution Id) |
securityToken | boolean (Securitytoken) Default: false |
"LEASEWEB" (any) or Securitytokenvendor (null) (Securitytokenvendor) | |
Securitytokenmethod (string) or Securitytokenmethod (null) (Securitytokenmethod) | |
Securitytokensecret (string) or Securitytokensecret (null) (Securitytokensecret) | |
Securitytokenaeskey (string) or Securitytokenaeskey (null) (Securitytokenaeskey) | |
Securitytokenshakey (string) or Securitytokenshakey (null) (Securitytokenshakey) | |
securityTokenClientIp | boolean (Securitytokenclientip) Default: false |
Securitytokenexpirationparam (string) or Securitytokenexpirationparam (null) (Securitytokenexpirationparam) | |
Securitytokenparam (string) or Securitytokenparam (null) (Securitytokenparam) | |
securityTokenNumberOfPathComponents | integer (Securitytokennumberofpathcomponents) [ -1 .. 10 ] Default: -1 |
securityTokenEmbedIntoPath | boolean (Securitytokenembedintopath) Default: false |
securityGeoAcl | boolean (Securitygeoacl) Default: false |
Securitygeoacldefault (string) or Securitygeoacldefault (null) (Securitygeoacldefault) | |
securityIpAcl | boolean (Securityipacl) Default: false |
Securityipacldefault (string) or Securityipacldefault (null) (Securityipacldefault) | |
securityReferrerAcl | boolean (Securityreferreracl) Default: false |
Securityreferreracldefault (string) or Securityreferreracldefault (null) (Securityreferreracldefault) | |
originPullProtocol | string (Originpullprotocol) Default: "HTTP" Enum: "HTTP" "HTTPS" |
Originpullcompressed (boolean) or Originpullcompressed (null) (Originpullcompressed) | |
Originpullhostheader (string) or Originpullhostheader (null) (Originpullhostheader) | |
Originpullid (string) or Originpullid (null) (Originpullid) | |
Originpullgroupid (string) or Originpullgroupid (null) (Originpullgroupid) | |
Originpullshieldid (string) or Originpullshieldid (null) (Originpullshieldid) | |
originPullXff | boolean (Originpullxff) Default: false |
originPullPassCookie | boolean (Originpullpasscookie) Default: false |
originPullPassVary | boolean (Originpullpassvary) Default: false |
cacheQueryString | boolean (Cachequerystring) Default: false |
Cachedefaultttl (integer) or Cachedefaultttl (null) (Cachedefaultttl) | |
cacheHonorOriginTtl | boolean (Cachehonororiginttl) Default: false |
cacheStale | boolean (Cachestale) Default: false |
cacheByPass | boolean (Cachebypass) Default: false |
cacheSegmented | boolean (Cachesegmented) Default: true |
deliveryTtlInherit | boolean (Deliveryttlinherit) Default: false |
deliveryTtlOverride | integer (Deliveryttloverride) Default: 0 |
deliveryCompress | boolean (Deliverycompress) Default: false |
deliveryRateLimit | boolean (Deliveryratelimit) Default: false |
Deliverytransferrate (integer) or Deliverytransferrate (null) (Deliverytransferrate) | |
Deliveryburstsize (integer) or Deliveryburstsize (null) (Deliveryburstsize) | |
deliveryForceHttps | boolean (Deliveryforcehttps) Default: false |
deliveryPassThroughAllHeaders | boolean (Deliverypassthroughallheaders) Default: false |
description | string (Description) |
Allowedmethods (string) or Allowedmethods (null) (Allowedmethods) Default: "GET,HEAD" | |
path | string (Path) Default: "/" |
{- "description": "test-policy-1",
- "allowedMethods": "GET,POST,HEAD,PUT,OPTIONS",
- "securityGeoAcl": false,
- "securityIpAcl": false,
- "securityReferrerAcl": false,
- "originPullProtocol": "HTTP",
- "originPullCompressed": false,
- "originPullHostHeader": "test.invalid",
- "originPullId": "or-r81jws",
- "originPullGroupId": null,
- "originPullXff": false,
- "cacheQueryString": false,
- "cacheDefaultTtl": 86400,
- "cacheHonorOriginTtl": false,
- "cacheStale": false,
- "deliveryTtlInherit": false,
- "deliveryTtlOverride": 0,
- "deliveryCompress": false,
- "deliveryForceHttps": false
}
{- "securityToken": false,
- "securityTokenVendor": null,
- "securityTokenMethod": null,
- "securityTokenSecret": null,
- "securityTokenAesKey": null,
- "securityTokenShaKey": null,
- "securityTokenClientIp": false,
- "securityTokenExpirationParam": null,
- "securityTokenParam": null,
- "securityTokenNumberOfPathComponents": -1,
- "securityTokenEmbedIntoPath": false,
- "securityGeoAcl": false,
- "securityGeoAclDefault": null,
- "securityIpAcl": true,
- "securityIpAclDefault": null,
- "securityReferrerAcl": false,
- "securityReferrerAclDefault": null,
- "originPullProtocol": "HTTP",
- "originPullCompressed": false,
- "originPullHostHeader": "test.invalid",
- "originPullId": "or-r8n157f",
- "originPullGroupId": null,
- "originPullShieldId": null,
- "originPullXff": false,
- "originPullPassCookie": false,
- "originPullPassVary": false,
- "cacheQueryString": false,
- "cacheDefaultTtl": 86400,
- "cacheHonorOriginTtl": false,
- "cacheStale": false,
- "cacheByPass": false,
- "cacheSegmented": true,
- "deliveryTtlInherit": false,
- "deliveryTtlOverride": 0,
- "deliveryCompress": false,
- "deliveryRateLimit": false,
- "deliveryTransferRate": null,
- "deliveryBurstSize": null,
- "deliveryForceHttps": false,
- "deliveryPassThroughAllHeaders": false,
- "description": "test-policy-4",
- "allowedMethods": "GET,POST,HEAD,PUT,OPTIONS",
- "path": "/",
- "id": "po-48nwon",
- "customerId": "cu-a4c79393",
- "created": "2024-08-06T08:55:37",
- "updated": "2024-08-07T23:31:44"
}
Get the list of policies for a distribution.
Note: Policies only exist for Volume and Shield distributions.
distribution_id required | string (Distribution Id) |
limit | integer Example: limit=20 Limit the number of results returned. |
offset | integer Example: offset=10 Return results starting from the given offset. |
{- "policies": [
- {
- "securityToken": false,
- "securityTokenVendor": null,
- "securityTokenMethod": null,
- "securityTokenSecret": null,
- "securityTokenAesKey": null,
- "securityTokenShaKey": null,
- "securityTokenClientIp": false,
- "securityTokenExpirationParam": null,
- "securityTokenParam": null,
- "securityTokenNumberOfPathComponents": -1,
- "securityTokenEmbedIntoPath": false,
- "securityGeoAcl": false,
- "securityGeoAclDefault": null,
- "securityIpAcl": true,
- "securityIpAclDefault": null,
- "securityReferrerAcl": false,
- "securityReferrerAclDefault": null,
- "originPullProtocol": "HTTP",
- "originPullCompressed": false,
- "originPullHostHeader": "test.invalid",
- "originPullId": "or-8g51win",
- "originPullGroupId": null,
- "originPullShieldId": null,
- "originPullXff": false,
- "originPullPassCookie": false,
- "originPullPassVary": false,
- "cacheQueryString": false,
- "cacheDefaultTtl": 86400,
- "cacheHonorOriginTtl": false,
- "cacheStale": false,
- "cacheByPass": false,
- "cacheSegmented": true,
- "deliveryTtlInherit": false,
- "deliveryTtlOverride": 0,
- "deliveryCompress": false,
- "deliveryRateLimit": false,
- "deliveryTransferRate": null,
- "deliveryBurstSize": null,
- "deliveryForceHttps": false,
- "deliveryPassThroughAllHeaders": false,
- "description": "test-policy-4",
- "allowedMethods": "GET,POST,HEAD,PUT,OPTIONS",
- "path": "/",
- "id": "po-br8i1mf",
- "customerId": "cu-g89u1nem",
- "created": "2024-08-06T08:55:37",
- "updated": "2024-08-07T23:31:44"
}
], - "_metadata": {
- "totalCount": 1,
- "limit": 10,
- "offset": 0
}
}
Get the details of a policy using its ID.
distribution_id required | string (Distribution Id) |
policy_id required | string (Policy Id) |
{- "securityToken": false,
- "securityTokenVendor": null,
- "securityTokenMethod": null,
- "securityTokenSecret": null,
- "securityTokenAesKey": null,
- "securityTokenShaKey": null,
- "securityTokenClientIp": false,
- "securityTokenExpirationParam": null,
- "securityTokenParam": null,
- "securityTokenNumberOfPathComponents": -1,
- "securityTokenEmbedIntoPath": false,
- "securityGeoAcl": false,
- "securityGeoAclDefault": null,
- "securityIpAcl": true,
- "securityIpAclDefault": null,
- "securityReferrerAcl": false,
- "securityReferrerAclDefault": null,
- "originPullProtocol": "HTTP",
- "originPullCompressed": false,
- "originPullHostHeader": "test.invalid",
- "originPullId": "or-r8n157f",
- "originPullGroupId": null,
- "originPullShieldId": null,
- "originPullXff": false,
- "originPullPassCookie": false,
- "originPullPassVary": false,
- "cacheQueryString": false,
- "cacheDefaultTtl": 86400,
- "cacheHonorOriginTtl": false,
- "cacheStale": false,
- "cacheByPass": false,
- "cacheSegmented": true,
- "deliveryTtlInherit": false,
- "deliveryTtlOverride": 0,
- "deliveryCompress": false,
- "deliveryRateLimit": false,
- "deliveryTransferRate": null,
- "deliveryBurstSize": null,
- "deliveryForceHttps": false,
- "deliveryPassThroughAllHeaders": false,
- "description": "test-policy-4",
- "allowedMethods": "GET,POST,HEAD,PUT,OPTIONS",
- "path": "/",
- "id": "po-48nwon",
- "customerId": "cu-a4c79393",
- "created": "2024-08-06T08:55:37",
- "updated": "2024-08-07T23:31:44"
}
distribution_id required | string (Distribution Id) |
policy_id required | string (Policy Id) |
Update the options available in each policy.
securityToken | boolean (Securitytoken) Default: false |
"LEASEWEB" (any) or Securitytokenvendor (null) (Securitytokenvendor) | |
Securitytokenmethod (string) or Securitytokenmethod (null) (Securitytokenmethod) | |
Securitytokensecret (string) or Securitytokensecret (null) (Securitytokensecret) | |
Securitytokenaeskey (string) or Securitytokenaeskey (null) (Securitytokenaeskey) | |
Securitytokenshakey (string) or Securitytokenshakey (null) (Securitytokenshakey) | |
securityTokenClientIp | boolean (Securitytokenclientip) Default: false |
Securitytokenexpirationparam (string) or Securitytokenexpirationparam (null) (Securitytokenexpirationparam) | |
Securitytokenparam (string) or Securitytokenparam (null) (Securitytokenparam) | |
securityTokenNumberOfPathComponents | integer (Securitytokennumberofpathcomponents) [ -1 .. 10 ] Default: -1 |
securityTokenEmbedIntoPath | boolean (Securitytokenembedintopath) Default: false |
securityGeoAcl | boolean (Securitygeoacl) Default: false |
Securitygeoacldefault (string) or Securitygeoacldefault (null) (Securitygeoacldefault) | |
securityIpAcl | boolean (Securityipacl) Default: false |
Securityipacldefault (string) or Securityipacldefault (null) (Securityipacldefault) | |
securityReferrerAcl | boolean (Securityreferreracl) Default: false |
Securityreferreracldefault (string) or Securityreferreracldefault (null) (Securityreferreracldefault) | |
originPullProtocol | string (Originpullprotocol) Default: "HTTP" Enum: "HTTP" "HTTPS" |
Originpullcompressed (boolean) or Originpullcompressed (null) (Originpullcompressed) | |
Originpullhostheader (string) or Originpullhostheader (null) (Originpullhostheader) | |
Originpullid (string) or Originpullid (null) (Originpullid) | |
Originpullgroupid (string) or Originpullgroupid (null) (Originpullgroupid) | |
Originpullshieldid (string) or Originpullshieldid (null) (Originpullshieldid) | |
originPullXff | boolean (Originpullxff) Default: false |
originPullPassCookie | boolean (Originpullpasscookie) Default: false |
originPullPassVary | boolean (Originpullpassvary) Default: false |
cacheQueryString | boolean (Cachequerystring) Default: false |
Cachedefaultttl (integer) or Cachedefaultttl (null) (Cachedefaultttl) | |
cacheHonorOriginTtl | boolean (Cachehonororiginttl) Default: false |
cacheStale | boolean (Cachestale) Default: false |
cacheByPass | boolean (Cachebypass) Default: false |
cacheSegmented | boolean (Cachesegmented) Default: true |
deliveryTtlInherit | boolean (Deliveryttlinherit) Default: false |
deliveryTtlOverride | integer (Deliveryttloverride) Default: 0 |
deliveryCompress | boolean (Deliverycompress) Default: false |
deliveryRateLimit | boolean (Deliveryratelimit) Default: false |
Deliverytransferrate (integer) or Deliverytransferrate (null) (Deliverytransferrate) | |
Deliveryburstsize (integer) or Deliveryburstsize (null) (Deliveryburstsize) | |
deliveryForceHttps | boolean (Deliveryforcehttps) Default: false |
deliveryPassThroughAllHeaders | boolean (Deliverypassthroughallheaders) Default: false |
description | string (Description) |
Allowedmethods (string) or Allowedmethods (null) (Allowedmethods) Default: "GET,HEAD" | |
path | string (Path) Default: "/" |
{- "securityToken": false,
- "securityTokenVendor": null,
- "securityTokenMethod": null,
- "securityTokenSecret": null,
- "securityTokenAesKey": null,
- "securityTokenShaKey": null,
- "securityTokenClientIp": false,
- "securityTokenExpirationParam": null,
- "securityTokenParam": null,
- "securityTokenNumberOfPathComponents": -1,
- "securityTokenEmbedIntoPath": false,
- "securityGeoAcl": false,
- "securityGeoAclDefault": null,
- "securityIpAcl": true,
- "securityIpAclDefault": null,
- "securityReferrerAcl": false,
- "securityReferrerAclDefault": null,
- "originPullProtocol": "HTTP",
- "originPullCompressed": false,
- "originPullHostHeader": "test.invalid",
- "originPullId": "or-r8n157f",
- "originPullGroupId": null,
- "originPullShieldId": null,
- "originPullXff": false,
- "originPullPassCookie": false,
- "originPullPassVary": false,
- "cacheQueryString": false,
- "cacheDefaultTtl": 86400,
- "cacheHonorOriginTtl": false,
- "cacheStale": false,
- "cacheByPass": false,
- "cacheSegmented": true,
- "deliveryTtlInherit": false,
- "deliveryTtlOverride": 0,
- "deliveryCompress": false,
- "deliveryRateLimit": false,
- "deliveryTransferRate": null,
- "deliveryBurstSize": null,
- "deliveryForceHttps": false,
- "deliveryPassThroughAllHeaders": false,
- "description": "test-policy-4-upated",
- "allowedMethods": "GET,POST,HEAD,PUT",
- "path": "/"
}
{- "securityToken": false,
- "securityTokenVendor": null,
- "securityTokenMethod": null,
- "securityTokenSecret": null,
- "securityTokenAesKey": null,
- "securityTokenShaKey": null,
- "securityTokenClientIp": false,
- "securityTokenExpirationParam": null,
- "securityTokenParam": null,
- "securityTokenNumberOfPathComponents": -1,
- "securityTokenEmbedIntoPath": false,
- "securityGeoAcl": false,
- "securityGeoAclDefault": null,
- "securityIpAcl": true,
- "securityIpAclDefault": null,
- "securityReferrerAcl": false,
- "securityReferrerAclDefault": null,
- "originPullProtocol": "HTTP",
- "originPullCompressed": false,
- "originPullHostHeader": "test.invalid",
- "originPullId": "or-r8n157f",
- "originPullGroupId": null,
- "originPullShieldId": null,
- "originPullXff": false,
- "originPullPassCookie": false,
- "originPullPassVary": false,
- "cacheQueryString": false,
- "cacheDefaultTtl": 86400,
- "cacheHonorOriginTtl": false,
- "cacheStale": false,
- "cacheByPass": false,
- "cacheSegmented": true,
- "deliveryTtlInherit": false,
- "deliveryTtlOverride": 0,
- "deliveryCompress": false,
- "deliveryRateLimit": false,
- "deliveryTransferRate": null,
- "deliveryBurstSize": null,
- "deliveryForceHttps": false,
- "deliveryPassThroughAllHeaders": false,
- "description": "test-policy-4-updated",
- "allowedMethods": "GET,POST,HEAD,PUT",
- "path": "/",
- "id": "po-48nwon",
- "customerId": "cu-a4c79393",
- "created": "2024-08-06T08:55:37",
- "updated": "2024-08-07T23:31:44"
}
distribution_id required | string (Distribution Id) |
policy_id required | string (Policy Id) |
{- "correlationId": "289346a1-3eaf-4da4-b707-62ef12eb08be",
- "errorCode": "400",
- "errorDetails": { },
- "errorMessage": "The API could not interpret your request correctly."
}
Create an ACL to control the traffic to a policy.
There are 3 types of ACLs:
distribution_id required | string (Distribution Id) |
policy_id required | string (Policy Id) |
action | string (Action) Default: "REJECT" Enum: "REJECT" "ALLOW" |
value required | string (Value) |
type required | string (Type) Enum: "IP_ACL" "GEO_ACL" "REFERRER_ACL" |
{- "action": "REJECT",
- "value": "1.1.1.5/32",
- "type": "IP_ACL"
}
{- "action": "REJECT",
- "value": "1.1.1.5/32",
- "type": "IP_ACL",
- "id": "iacl-2",
- "policyId": "po-wk0ksi0x",
- "created": "2024-08-06T08:55:37",
- "updated": "2024-08-07T23:31:44"
}
Get the list of active ACLs in a policy.
distribution_id required | string (Distribution Id) |
policy_id required | string (Policy Id) |
limit | integer Example: limit=20 Limit the number of results returned. |
offset | integer Example: offset=10 Return results starting from the given offset. |
{- "acls": [
- {
- "action": "REJECT",
- "value": "1.1.1.2/32",
- "type": "IP_ACL",
- "id": "iacl-0",
- "policyId": "po-wk0ksi0x",
- "created": "2024-08-06T08:55:37",
- "updated": "2024-08-07T23:31:44"
}, - {
- "action": "REJECT",
- "value": "1.1.1.3/32",
- "type": "IP_ACL",
- "id": "iacl-1",
- "policyId": "po-wk0ksi0x",
- "created": "2024-08-06T08:55:37",
- "updated": "2024-08-07T23:31:44"
}, - {
- "action": "REJECT",
- "value": "1.1.1.5/32",
- "type": "IP_ACL",
- "id": "iacl-2",
- "policyId": "po-wk0ksi0x",
- "created": "2024-08-06T08:55:37",
- "updated": "2024-08-07T23:31:44"
}
], - "_metadata": {
- "totalCount": 3,
- "limit": 10,
- "offset": 0
}
}
Get an ACL by its ID.
distribution_id required | string (Distribution Id) |
policy_id required | string (Policy Id) |
acl_id required | string (Acl Id) |
{- "action": "REJECT",
- "value": "1.1.1.5/32",
- "type": "IP_ACL",
- "id": "iacl-2",
- "policyId": "po-wk0ksi0x",
- "created": "2024-08-06T08:55:37",
- "updated": "2024-08-07T23:31:44"
}
distribution_id required | string (Distribution Id) |
policy_id required | string (Policy Id) |
acl_id required | string (Acl Id) |
{- "correlationId": "289346a1-3eaf-4da4-b707-62ef12eb08be",
- "errorCode": "400",
- "errorDetails": { },
- "errorMessage": "The API could not interpret your request correctly."
}
Query statistics for reseller customer This endpoint is intended to be used for getting various statistics from the reporting backend
It currently supports DATATRANSFER, BANDWIDTH, REQUESTS, STATUS_2XX, STATUS_4XX, STATUS_5XX, CACHEHIT and 95TH as a metric.
DATATRANSFER: used to get the consumed amount of traffic (in bytes) in the queried period.
BANDWIDTH: used to get the mean amount of bits per second in the queried period.
STATUS_2XX/4XX/5XX: used to get a percentage of the amount of response codes in the queried period.
CACHEHIT: used to get the mean cache-hit ratio in the queried period.
REQUESTS: used to get the total amount of serviced requests in the queried period.
95TH: used to get the 95th percentile in bits per second for the queried period.
The fromDt and toDt must use the format YYYY-MM-ddTHH:mm:ss eg.. 2024-07-14T13:40:00.
Using the 'groupBy' parameter will allow you to group results together. Supported groupings are PROVIDER, DISTRIBUTION, CUSTOMER and REGION.
By specifying the distributionId as an additional filter the query will run just for the specified distribution. The granularity of the data can be specified in 5MIN (5 minutes), 15MIN (15 minutes), HOUR (1 hour), DAY (1 day) and WEEK (1 Week).
fromDt required | string <date-time> (fromDt) |
toDt required | string <date-time> (toDt) |
metric required | string (metric) Enum: "DATATRANSFER" "BANDWIDTH" "REQUESTS" "STATUS_2XX" "STATUS_4XX" "STATUS_5XX" "CACHEHIT" "95TH" |
distributionId | string (distributionId) |
groupBy | string (groupBy) Enum: "PROVIDER" "DISTRIBUTION" "CUSTOMER" "REGION" |
granularity | string (granularity) Default: "5MIN" Enum: "5MIN" "15MIN" "HOUR" "DAY" "WEEK" |
{- "fromTs": "2024-07-13T14:45:00",
- "toTs": "2024-07-13T14:55:00",
- "service": "cdn",
- "granularity": "5MIN",
- "groupBy": null,
- "distributionId": null,
- "series": [
- {
- "all": [
- {
- "2024-07-13T14:45:00Z": 38091909.25333333
}, - {
- "2024-07-13T14:50:00Z": 68605244.58666667
}, - {
- "2024-07-13T14:55:00Z": 116197768.13333331
}
]
}
]
}
Query total statistics for reseller customer This endpoint is intended to be used for getting the summed (total) statistics from the reporting backend
It currently supports DATATRANSFER, BANDWIDTH, REQUESTS, STATUS_2XX, STATUS_4XX, STATUS_5XX, CACHEHIT and 95TH as a metric.
DATATRANSFER: used to get the consumed amount of traffic (in bytes) in the queried period.
BANDWIDTH: used to get the mean amount of bits per second in the queried period.
STATUS_2XX/4XX/5XX: used to get a percentage of the amount of response codes in the queried period.
CACHEHIT: used to get the mean cache-hit ratio in the queried period.
REQUESTS: used to get the total amount of serviced requests in the queried period.
95TH: used to get the 95th percentile in bits per second for the queried period.
The fromDt and toDt must use the format YYYY-MM-ddTHH:mm:ss eg.. 2024-07-14T13:40:00.
Using the 'groupBy' parameter will allow you to group results together. Supported groupings are PROVIDER, DISTRIBUTION, CUSTOMER and REGION. By specifying the distributionId as an additional filter the query will run just for the specified distribution.
fromDt required | string <date-time> (fromDt) |
toDt required | string <date-time> (toDt) |
metric required | string (metric) Enum: "DATATRANSFER" "BANDWIDTH" "REQUESTS" "STATUS_2XX" "STATUS_4XX" "STATUS_5XX" "CACHEHIT" "95TH" |
distributionId | string (distributionId) |
groupBy | string (groupBy) Enum: "PROVIDER" "DISTRIBUTION" "CUSTOMER" "REGION" |
{- "fromTs": "2024-07-13T14:45:00",
- "toTs": "2024-07-13T14:55:00",
- "service": "cdn",
- "granularity": "5MIN",
- "groupBy": "PROVIDER",
- "distributionId": null,
- "series": [
- {
- "edgio": [
- {
- "total": 237047731.04000002
}
]
}, - {
- "gcore": [
- {
- "total": 29610955.653333336
}
]
}
]
}
Query statistics for customer This endpoint is intended to be used for getting various statistics from the reporting backend
It currently supports DATATRANSFER, BANDWIDTH, REQUESTS, STATUS_2XX, STATUS_4XX, STATUS_5XX, CACHEHIT and 95TH as a metric.
DATATRANSFER: used to get the consumed amount of traffic (in bytes) in the queried period.
BANDWIDTH: used to get the mean amount of bits per second in the queried period.
STATUS_2XX/4XX/5XX: used to get a percentage of the amount of response codes in the queried period.
CACHEHIT: used to get the mean cache-hit ratio in the queried period.
REQUESTS: used to get the total amount of serviced requests in the queried period.
95TH: used to get the 95th percentile in bits per second for the queried period.
The fromDt and toDt must use the format YYYY-MM-ddTHH:mm:ss eg.. 2024-07-14T13:40:00.
Using the 'groupBy' parameter will allow you to group results together. Supported groupings are PROVIDER, DISTRIBUTION, CUSTOMER and REGION.
By specifying the distributionId as an additional filter the query will run just for the specified distribution. The granularity of the data can be specified in 5MIN (5 minutes), 15MIN (15 minutes), HOUR (1 hour), DAY (1 day) and WEEK (1 Week).
fromDt required | string <date-time> (fromDt) |
toDt required | string <date-time> (toDt) |
metric required | string (metric) Enum: "DATATRANSFER" "BANDWIDTH" "REQUESTS" "STATUS_2XX" "STATUS_4XX" "STATUS_5XX" "CACHEHIT" "95TH" |
distributionId | string (distributionId) |
groupBy | string (groupBy) Enum: "PROVIDER" "DISTRIBUTION" "CUSTOMER" "REGION" |
granularity | string (granularity) Default: "5MIN" Enum: "5MIN" "15MIN" "HOUR" "DAY" "WEEK" |
{- "fromTs": "2024-08-20T09:28:38",
- "toTs": "2024-08-20T09:40:00",
- "service": "cdn",
- "granularity": "5MIN",
- "groupBy": "REGION",
- "distributionId": null,
- "series": [
- {
- "apac": [
- {
- "2024-08-20T09:30:00Z": 183825403.06666666
}, - {
- "2024-08-20T09:35:00Z": 185589722.85333332
}, - {
- "2024-08-20T09:40:00Z": 197508437.41333333
}
], - "asia": [
- {
- "2024-08-20T09:30:00Z": 271617.8933333333
}, - {
- "2024-08-20T09:35:00Z": 43990.05333333334
}, - {
- "2024-08-20T09:40:00Z": 164099.75999999998
}
], - "eu": [
- {
- "2024-08-20T09:30:00Z": 123709458.08
}, - {
- "2024-08-20T09:35:00Z": 75186491.28
}, - {
- "2024-08-20T09:40:00Z": 56450983.413333334
}
]
}
]
}
Query total statistics for customer This endpoint is intended to be used for getting the summed (total) statistics from the reporting backend
It currently supports DATATRANSFER, BANDWIDTH, REQUESTS, STATUS_2XX, STATUS_4XX, STATUS_5XX, CACHEHIT and 95TH as a metric.
DATATRANSFER: used to get the consumed amount of traffic (in bytes) in the queried period.
BANDWIDTH: used to get the mean amount of bits per second in the queried period.
STATUS_2XX/4XX/5XX: used to get a percentage of the amount of response codes in the queried period.
CACHEHIT: used to get the mean cache-hit ratio in the queried period.
REQUESTS: used to get the total amount of serviced requests in the queried period.
95TH: used to get the 95th percentile in bits per second for the queried period.
The fromDt and toDt must use the format YYYY-MM-ddTHH:mm:ss eg.. 2024-07-14T13:40:00.
Using the 'groupBy' parameter will allow you to group results together. Supported groupings are PROVIDER, DISTRIBUTION, CUSTOMER and REGION. By specifying the distributionId as an additional filter the query will run just for the specified distribution.
fromDt required | string <date-time> (fromDt) |
toDt required | string <date-time> (toDt) |
metric required | string (metric) Enum: "DATATRANSFER" "BANDWIDTH" "REQUESTS" "STATUS_2XX" "STATUS_4XX" "STATUS_5XX" "CACHEHIT" "95TH" |
distributionId | string (distributionId) |
groupBy | string (groupBy) Enum: "PROVIDER" "DISTRIBUTION" "CUSTOMER" "REGION" |
{- "fromTs": "2024-07-13T14:45:00",
- "toTs": "2024-07-13T14:55:00",
- "service": "cdn",
- "granularity": "5MIN",
- "groupBy": "PROVIDER",
- "distributionId": null,
- "series": [
- {
- "edgio": [
- {
- "total": 237047731.04000002
}
]
}, - {
- "gcore": [
- {
- "total": 29610955.653333336
}
]
}
]
}