---
updatedAt: 2026-06-08T11:51:23.000Z
agentTools:
  siteIndex: https://techdocs.akamai.com/llms.txt
  projectIndex: https://techdocs.akamai.com/datastream2/llms.txt
---

# Edit a delivery (CDN) stream

Updates the latest version of a delivery stream. Each time you edit a stream, its version number increments. Note that only active streams collect and send logs to their destinations. You need to set the `activate` parameter to `true` while patching active streams, and optionally for inactive streams if you want to activate them upon request. See [Version management](ref:version-management) and [Activate a stream](ref:post-stream-activate).

# OpenAPI definition

```json
{
  "externalDocs": {
    "description": "See documentation for Akamai's DataStream 2 API",
    "url": "https://techdocs.akamai.com/datastream2/reference"
  },
  "info": {
    "license": {
      "name": "Apache 2.0",
      "url": "https://www.apache.org/licenses/LICENSE-2.0.html"
    },
    "title": "DataStream 2 configuration",
    "version": "v3"
  },
  "openapi": "3.0.0",
  "paths": {
    "/log/cdn/streams/{streamId}": {
      "put": {
        "description": "Updates the latest version of a delivery stream. Each time you edit a stream, its version number increments. Note that only active streams collect and send logs to their destinations. You need to set the `activate` parameter to `true` while patching active streams, and optionally for inactive streams if you want to activate them upon request. See [Version management](https://techdocs.akamai.com/datastream2/reference/version-management) and [Activate a stream](https://techdocs.akamai.com/datastream2/reference/post-stream-activate).",
        "externalDocs": {
          "description": "See documentation for this operation in Akamai's DataStream 2 API",
          "url": "https://techdocs.akamai.com/datastream2/reference/put-stream-cdn"
        },
        "operationId": "put-stream-cdn",
        "parameters": [
          {
            "description": "Activates the stream at the time of the request, `false` by default. When you edit or patch an active stream, you need to set this to `true`.",
            "in": "query",
            "name": "activate",
            "schema": {
              "default": false,
              "example": true,
              "type": "boolean"
            },
            "x-akamai": {
              "file-path": "parameters/activate-query.yaml"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "examples": {
                "azure": {
                  "summary": "Azure",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "K-0N7RAK71",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      },
                      "uploadFilePrefix": "logs",
                      "uploadFileSuffix": "ds"
                    },
                    "destination": {
                      "accessKey": "X17x2f2+2MxT1Eh/KaBApKrAEUnetiD0LBbQybczlOwpJVJHPYlDwV99nFSvhDd6z0YTdhDUmy6inRHjQPLlsA==",
                      "accountName": "Internet Company",
                      "containerName": "rawslogscontainer",
                      "destinationType": "AZURE",
                      "displayName": "azure_destination",
                      "path": "logs/edgelogs/{%Y/%m/%d/%H/%M/%S}"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "datadog": {
                  "summary": "Datadog",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "C-0N7RAC7",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      }
                    },
                    "destination": {
                      "authToken": "6fe69pp3788877bd7b3bv18oo2c68fe",
                      "compressLogs": true,
                      "destinationType": "DATADOG",
                      "displayName": "Datadog_destination",
                      "endpoint": "https://http-intake.logs.datadoghq.com/v1/input/",
                      "service": "datastream",
                      "source": "java",
                      "tags": "env:sqa,user:insomnia"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "elasticsearch": {
                  "summary": "Elasticsearch",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "C-0N7RAC71",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "format": "JSON",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      }
                    },
                    "destination": {
                      "caCert": "-----BEGIN CERTIFICATE-----\nMIIFnzCCA4egAwIBAgIUKO+hNjocWl ... RjDuaS6FRqLKUx\naf9d\n-----END CERTIFICATE-----",
                      "clientCert": "-----BEGIN CERTIFICATE-----\nMIIFMTCCAxkCFBrfjEylUee/1zuU3pkx33a3+Kl9MA0GC ... ep6\n0R3g8RB7v79PgqcBn70C5Lcdc93jDhBa2TQ==\n-----END CERTIFICATE-----",
                      "clientKey": "-----BEGIN PRIVATE KEY-----\nMIIJRAIBADANBgkqhkiG9w0BAQEFAASCCS4wggk ... ndYhVvhs9x5xsQwgvBhZM/P7LgjHJu6NYjVqdk4Y\n-----END PRIVATE KEY-----",
                      "contentType": "application/json",
                      "customHeaderName": "X-ELASTICSEARCH-TAG",
                      "customHeaderValue": "bulk",
                      "destinationType": "ELASTICSEARCH",
                      "displayName": "elasticsearch",
                      "endpoint": "https://elastic_rawserver01.elastic.com:9243/_bulk/",
                      "indexName": "elastic-search-index",
                      "password": "pass",
                      "tlsHostname": "elasticsearch.akamai.com",
                      "userName": "szhang"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "google-cloud-storage": {
                  "summary": "Google Cloud Storage",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "K-0N7RAK71",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      },
                      "uploadFilePrefix": "logs_{%Y_%m_%d_%H_%M_%S}",
                      "uploadFileSuffix": "ds"
                    },
                    "destination": {
                      "bucket": "datastream",
                      "destinationType": "GCS",
                      "displayName": "GCSDestination",
                      "path": "log/edgelogs/{%Y/%m/%d/%H/%M/%S}",
                      "privateKey": "-----BEGIN PRIVATE KEY-----\nMIIEvOIBADANBgkozkiG9a1BAO ... rD19A61BavevVVZc1=\n-----END PRIVATE KEY-----",
                      "projectId": "ds2-connect",
                      "serviceAccountName": "ak-DS2"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "https": {
                  "summary": "HTTPS",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "K-0N7RAK7",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      }
                    },
                    "destination": {
                      "authenticationType": "BASIC",
                      "caCert": "-----BEGIN CERTIFICATE-----\nMIIFnzCCA4egAwIBAgIUKO+hNjocWl ... RjDuaS6FRqLKUx\naf9d\n-----END CERTIFICATE-----",
                      "clientCert": "-----BEGIN CERTIFICATE-----\nMIIFMTCCAxkCFBrfjEylUee/1zuU3pkx33a3+Kl9MA0GC ... ep6\n0R3g8RB7v79PgqcBn70C5Lcdc93jDhBa2TQ==\n-----END CERTIFICATE-----",
                      "clientKey": "-----BEGIN PRIVATE KEY-----\nMIIJRAIBADANBgkqhkiG9w0BAQEFAASCCS4wggk ... ndYhVvhs9x5xsQwgvBhZM/P7LgjHJu6NYjVqdk4Y\n-----END PRIVATE KEY-----",
                      "contentType": "application/json",
                      "customHeaderName": "X-Request-Header",
                      "customHeaderValue": "Header-Value",
                      "destinationType": "HTTPS",
                      "displayName": "HTTPS",
                      "endpoint": "https://kpiqaproxy.eastus.cloudapp.azure.com/basicAuth",
                      "password": "pass",
                      "tlsHostname": "kpiqaproxyvm.eastus.cloudapp.azure.com",
                      "userName": "szhang"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "loggly": {
                  "summary": "Loggly",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "C-0N7RAC7",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      }
                    },
                    "destination": {
                      "authToken": "SDSXXX-28ff-XXXX-JSHSJS-XXXXXX",
                      "contentType": "application/json",
                      "customHeaderName": "X-LOGGLY-TAG",
                      "customHeaderValue": "bulk",
                      "destinationType": "LOGGLY",
                      "displayName": "loggly",
                      "endpoint": "https://loggly_rawserver01.loggly.com/bulk/",
                      "tags": "raw,akamai_cdn"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "new-relic": {
                  "summary": "New Relic",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "C-0N7RAC7",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      }
                    },
                    "destination": {
                      "authToken": "SDSXXX-28ff-XXXX-JSHSJS-XXXXXX",
                      "contentType": "application/json",
                      "customHeaderName": "X-NewRelic-Category",
                      "customHeaderValue": "Header-Value",
                      "destinationType": "NEWRELIC",
                      "displayName": "newrelic",
                      "endpoint": "https://log-api.newrelic.com/log/v1/"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "oracle-cloud": {
                  "summary": "Oracle Cloud",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "C-0N7RAC7",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      },
                      "uploadFilePrefix": "logs",
                      "uploadFileSuffix": "ds"
                    },
                    "destination": {
                      "accessKey": "fa848eb558sdfghjrDUMMYD05e7a710fb9315396",
                      "bucket": "full-length",
                      "destinationType": "ORACLE_CLOUD_STORAGE",
                      "displayName": "OCS",
                      "namespace": "ax9javbhuj89",
                      "path": "foo/{%d/%m/%Y/%H/%M/%S}",
                      "region": "ap-hyderabad-1",
                      "secretAccessKey": "fkhtq9OnIOFozQLXwerty6432dfghMyS7tnxqQ2GPc="
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "s3": {
                  "summary": "S3",
                  "value": {
                    "collectMidgress": true,
                    "contractId": "C-0N7RAC7",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      },
                      "uploadFilePrefix": "{%Y_%m_%d_%H_%M_%S}",
                      "uploadFileSuffix": "ds"
                    },
                    "destination": {
                      "accessKey": "AKIA6DK7TDQLVGZ3TYP1",
                      "bucket": "media-datastream.akamai.com",
                      "destinationType": "S3",
                      "displayName": "S3Destination",
                      "path": "log/edgelogs/{%Y/%m/%d/%H/%M/%S}",
                      "region": "ap-south-1",
                      "secretAccessKey": "1T2ll1H4dXWx5itGhpc7FlSbvvOvky1098nTtEMg"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "s3-compatible": {
                  "summary": "S3-compatible",
                  "value": {
                    "collectMidgress": true,
                    "contractId": "C-0N7RAC7",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      },
                      "uploadFilePrefix": "{%Y_%m_%d_%H_%M_%S}",
                      "uploadFileSuffix": "ds"
                    },
                    "destination": {
                      "accessKey": "AKIA6DK7TDQLVGZ3TYP1",
                      "bucket": "media-datastream.akamai.com",
                      "destinationType": "S3_COMPATIBLE",
                      "displayName": "S3Destination",
                      "endpoint": "https://logs.example.com",
                      "path": "log/edgelogs/{%Y/%m/%d/%H/%M/%S}",
                      "region": "ap-south-1",
                      "secretAccessKey": "1T2ll1H4dXWx5itGhpc7FlSbvvOvky1098nTtEMg"
                    },
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream"
                  }
                },
                "splunk": {
                  "summary": "Splunk",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "K-0N7RAK71",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      }
                    },
                    "destination": {
                      "caCert": "-----BEGIN CERTIFICATE-----\nMIIFnzCCA4egAwIBAgIUKO+hNjocWl ... RjDuaS6FRqLKUx\naf9d\n-----END CERTIFICATE-----",
                      "clientCert": "-----BEGIN CERTIFICATE-----\nMIIFMTCCAxkCFBrfjEylUee/1zuU3pkx33a3+Kl9MA0GC ... ep6\n0R3g8RB7v79PgqcBn70C5Lcdc93jDhBa2TQ==\n-----END CERTIFICATE-----",
                      "clientKey": "-----BEGIN PRIVATE KEY-----\nMIIJRAIBADANBgkqhkiG9w0BAQEFAASCCS4wggk ... ndYhVvhs9x5xsQwgvBhZM/P7LgjHJu6NYjVqdk4Y\n-----END PRIVATE KEY-----",
                      "compressLogs": true,
                      "customHeaderName": "X-Splunk-Request-Channel",
                      "customHeaderValue": "FE0ECFAD-13D5-401B-847D-77833BD77131",
                      "destinationType": "SPLUNK",
                      "displayName": "Splunk_destination",
                      "endpoint": "https://http-inputs-customer.splunkcloud.com/services/collector/raw",
                      "eventCollectorToken": "894-51c5-4b2e-888y-54fb-hh62",
                      "tlsHostname": "kpiqaproxy.eastus.cloudapp.azure.com"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "sumo-logic": {
                  "summary": "Sumo Logic",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "C-0N7RAC71",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "fieldDelimiter": "SPACE",
                      "format": "STRUCTURED",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      }
                    },
                    "destination": {
                      "collectorCode": "ZzVnj7dhzV3Z6XTuv2zgi6YdjR2z9ppU7ZoUVgWxr9xod1eGTzztg6t_7uLbxziler2gm_l7FepmzQFj-Nj9_GLJItWjJgFkVfFSF75x_KUAHSHIUI6RS==",
                      "compressLogs": true,
                      "contentType": "application/json",
                      "customHeaderName": "X-Sumo-Category",
                      "customHeaderValue": "Header-Value",
                      "destinationType": "SUMO_LOGIC",
                      "displayName": "Sumo_destination",
                      "endpoint": "https://endpoint.collection.us.sumologic.com/receiver/v1/http"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                },
                "trafficpeak": {
                  "summary": "TrafficPeak",
                  "value": {
                    "collectMidgress": false,
                    "contractId": "K-0N7RAK7",
                    "datasetFields": [
                      {
                        "datasetFieldId": 1000
                      },
                      {
                        "datasetFieldId": 1002
                      },
                      {
                        "datasetFieldId": 1023
                      },
                      {
                        "datasetFieldId": 2089
                      },
                      {
                        "datasetFieldId": 2096
                      },
                      {
                        "datasetFieldId": 2101
                      }
                    ],
                    "deliveryConfiguration": {
                      "format": "JSON",
                      "frequency": {
                        "intervalInSeconds": 30,
                        "numberOfRecords": 32000,
                        "sizeInMb": 4
                      }
                    },
                    "destination": {
                      "authenticationType": "BASIC",
                      "compressLogs": true,
                      "contentType": "application/json",
                      "destinationType": "TRAFFICPEAK",
                      "displayName": "TrafficPeak",
                      "endpoint": "https://demo.trafficpeak.live/ingest/event?table=akamai.integration_ds2&token=1ABCDE&transform=cdn",
                      "password": "pass",
                      "userName": "hydrolix"
                    },
                    "enableFasterLatency": true,
                    "notificationEmails": [
                      "jperez@example.com",
                      "szhang@example.com"
                    ],
                    "properties": [
                      {
                        "propertyId": 349772
                      },
                      {
                        "propertyId": 349770
                      }
                    ],
                    "streamName": "diagnostics-log-stream",
                    "webSocketEnabled": true
                  }
                }
              },
              "schema": {
                "additionalProperties": false,
                "description": "Provides information that you need to specify when editing a stream configuration.",
                "properties": {
                  "collectMidgress": {
                    "default": false,
                    "description": "For [DS-managed streams](https://techdocs.akamai.com/datastream2/reference/integrations). Set to `true` for every edit operation to collect midgress traffic data within the Akamai platform, such as between two edge servers. Enable logging midgress data to get numeric values in the second place of the log line that indicate if the request was processed within the Akamai platform. When you [Get a stream](https://techdocs.akamai.com/datastream2/reference/get-stream) that logs midgress traffic, the response returns `collectMidgress` as `true` and lists the `isMidgress` data set field with other fields. The DataStream [behavior](ref:https://techdocs.akamai.com/property-mgr/docs/datastream-beh) property configuration overrides this value. If this feature is not enabled on your account, contact the Akamai support team. See [Midgress traffic](https://techdocs.akamai.com/datastream2/docs/data-set-parameters#midgress-traffic) for details. ",
                    "type": "boolean"
                  },
                  "contractId": {
                    "description": "Identifies the contract that has access to the product.",
                    "type": "string"
                  },
                  "datasetFields": {
                    "description": "Identifies data set fields that you want to receive in logs. For the `STRUCTURED` format, the order of the identifiers defines how these fields' values appear in the log lines. See [Data set parameters](https://techdocs.akamai.com/datastream2/reference/data-set-parameters-api) for the complete list of the fields you can choose.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "datasetFieldId": {
                          "description": "Identifies the field.",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "datasetFieldId"
                      ],
                      "type": "object"
                    },
                    "type": "array"
                  },
                  "deliveryConfiguration": {
                    "additionalProperties": false,
                    "description": "Configures log lines, log file format, names of the log files sent to a destination, and delivery frequency for these files.",
                    "properties": {
                      "fieldDelimiter": {
                        "description": "A delimiter that separates data set fields in the log lines, either `SPACE` or `TAB`. Set this only for the `STRUCTURED` log file `format`.",
                        "enum": [
                          "SPACE",
                          "TAB"
                        ],
                        "type": "string"
                      },
                      "format": {
                        "description": "The format in which you want to receive log files. You can choose the `STRUCTURED` or `JSON` format for your stream. When the delimiter is present in the request, you need to choose the `STRUCTURED` format.",
                        "enum": [
                          "STRUCTURED",
                          "JSON"
                        ],
                        "type": "string"
                      },
                      "frequency": {
                        "additionalProperties": false,
                        "description": "The frequency to collect logs from each uploader and send them to a destination.",
                        "properties": {
                          "intervalInSeconds": {
                            "description": "The interval in seconds (`30` or `60`) after which the system bundles log lines into a file and sends it to a destination.",
                            "enum": [
                              30,
                              60
                            ],
                            "type": "integer"
                          },
                          "numberOfRecords": {
                            "description": "The maximum number of records in a single log file. When there are more records than the `numberOfRecords`, DataStream chunks the log file into different parts.",
                            "maximum": 32000,
                            "minimum": 1,
                            "type": "integer"
                          },
                          "sizeInMb": {
                            "description": "The maximum log file size in megabytes. When the log file size is larger than `sizeInMb`, DataStream chunks it into separate files.",
                            "maximum": 4,
                            "type": "integer"
                          }
                        },
                        "required": [
                          "intervalInSeconds",
                          "sizeInMb",
                          "numberOfRecords"
                        ],
                        "type": "object"
                      },
                      "uploadFilePrefix": {
                        "description": "The log filename prefix that you want to send to an object-based destination, up to 200 characters. If unspecified, it defaults to `ak`. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables), but doesn't support the dot (`.`) character. See [S3 naming conventions](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html), [Azure blob naming conventions](https://docs.microsoft.com/en-us/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata#:%7E:text=Blob%20Names&text=A%20blob%20name%20can%20contain,up%20to%20256%20characters%20long), and [Google Cloud Storage object naming conventions](https://cloud.google.com/storage/docs/naming-objects).",
                        "type": "string"
                      },
                      "uploadFileSuffix": {
                        "description": "The log filename suffix that you want to send to an object-based destination, up to 10 characters. If unspecified, it defaults to `ds`. This doesn't support [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables), and the `.`, `/`, `%`, `?` characters. See [S3 naming conventions](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html), [Azure blob naming conventions](https://docs.microsoft.com/en-us/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata#:%7E:text=Blob%20Names&text=A%20blob%20name%20can%20contain,up%20to%20256%20characters%20long), and [Google Cloud Storage object naming conventions](https://cloud.google.com/storage/docs/naming-objects).",
                        "maxLength": 10,
                        "type": "string"
                      }
                    },
                    "required": [
                      "format",
                      "frequency"
                    ],
                    "type": "object"
                  },
                  "destination": {
                    "description": "A collection of destination configurations for the stream.",
                    "oneOf": [
                      {
                        "additionalProperties": false,
                        "description": "Details the Azure Storage destination configuration in a stream. Note that DataStream 2 supports only streaming data to block objects. See [Azure Blob Storage](https://azure.microsoft.com/en-us/services/storage/blobs/#overview) in the Azure documentation.",
                        "properties": {
                          "accessKey": {
                            "description": "Either of the access keys for your Azure Storage account. See [View account access keys](https://docs.microsoft.com/en-us/azure/storage/common/storage-account-keys-manage?tabs=azure-portal) in the Azure documentation.",
                            "type": "string"
                          },
                          "accountName": {
                            "description": "Specifies the Azure Storage account name.",
                            "type": "string"
                          },
                          "containerName": {
                            "description": "Specifies the Azure Storage container name.",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set this value to `AZURE` for this destination type.",
                            "enum": [
                              "AZURE"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "path": {
                            "description": "The path to the folder within the Azure Storage container where you want to store your logs. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). See [Azure blob naming conventions](https://docs.microsoft.com/en-us/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata#:%7E:text=Blob%20Names&text=A%20blob%20name%20can%20contain,up%20to%20256%20characters%20long) in the Azure documentation.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "accountName",
                          "accessKey",
                          "containerName",
                          "path"
                        ],
                        "title": "AZURE",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/azure.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the Amazon S3 destination in a stream. When validating this destination, DataStream uses the provided `accessKey` and `secretAccessKey` values and saves an `Akamai_access_verification_[TimeStamp].txt` format file in your Amazon S3 folder. You can only see this file if the validation succeeded, and if you have access to the Amazon S3 bucket and folder that you're trying to send logs to.",
                        "properties": {
                          "accessKey": {
                            "description": "The access key identifier that you use to authenticate requests to your Amazon S3 account. See the [Understanding and getting your AWS credentials](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html) in the Amazon S3 documentation.",
                            "type": "string"
                          },
                          "bucket": {
                            "description": "The name of the Amazon S3 bucket. See [Working with buckets in AWS](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html) in the Amazon S3 documentation.",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `S3` for this destination type.",
                            "enum": [
                              "S3"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "path": {
                            "description": "The path to the folder within your Amazon S3 bucket where you want to store your logs. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). See [Object keys](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html) in the Amazon S3 documentation for naming conventions.",
                            "type": "string"
                          },
                          "region": {
                            "description": "The AWS region where your Amazon S3 bucket resides. See [Regions, Availability Zones, and Local Zones in AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html) in the Amazon S3 documentation.",
                            "type": "string"
                          },
                          "secretAccessKey": {
                            "description": "The secret access key identifier you use to authenticate requests to your Amazon S3 account.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "accessKey",
                          "secretAccessKey",
                          "region",
                          "bucket",
                          "path"
                        ],
                        "title": "S3",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/s3.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the Datadog destination that you can use in your stream. If you choose this destination, the stream pushes a sample POST request to the endpoint to validate write access. You can see the `validate connector test` data only if the destination validates, and you can access the destination storage.",
                        "properties": {
                          "authToken": {
                            "description": "The API key for your Datadog account. See [View API keys in Datadog](https://docs.datadoghq.com/account_management/api-app-keys/#api-keys) in the Datadog documentation for details on how to create or fetch your Datadog API key.",
                            "type": "string"
                          },
                          "compressLogs": {
                            "default": false,
                            "description": "Enables gzip compression for a log file sent to a destination. The value is `false` by default.",
                            "type": "boolean"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set this value to `DATADOG` for this destination type.",
                            "enum": [
                              "DATADOG"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "The Datadog v1 endpoint URL where you want to send and store logs. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Datadog](https://techdocs.akamai.com/datastream2/docs/stream-datadog#akamaized-hostname-as-endpoint), and [View Datadog logs endpoint](https://docs.datadoghq.com/logs/log_collection/?tab=http#logging-endpoints) in the Datadog documentation.",
                            "type": "string"
                          },
                          "service": {
                            "description": "The name of the application or service generating the log events in Datadog. See [Attributes and Aliasing](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/) and [Services List](https://docs.datadoghq.com/tracing/visualization/services_list/) in the Datadog documentation.",
                            "type": "string"
                          },
                          "source": {
                            "description": "The name of the source or the technology of the logs in Datadog. See [Attributes and Aliasing](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/) in the Datadog documentation.",
                            "type": "string"
                          },
                          "tags": {
                            "description": "The tags you can use to filter and group metrics in your Datadog account. Enter a comma-delimited list for more than one tag. This field also supports `<key>:<value>` combinations. See [Getting Started with Tags](https://docs.datadoghq.com/getting_started/tagging/) in the Datadog documentation.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "endpoint",
                          "authToken"
                        ],
                        "title": "DATADOG",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/datadog.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the Splunk destination that you can use in your stream. You can also [upload logs to Cribl](https://techdocs.akamai.com/datastream2/v3/docs/stream-logs-to-splunk#additional-integrations) using Splunk as the primary destination. Note that DataStream 2 currently supports only endpoint URLs ending with `collector/raw`. If you choose this destination, the stream pushes a sample POST request to the endpoint to validate write access. For `STRUCTURED` logs, the data is sent as `0,access_validation`, and for `JSON` it's `{\"access_validation\":true}`. You can see the data only if the destination validates, and you can access the destination storage.",
                        "properties": {
                          "caCert": {
                            "description": "The certification authority (CA) certificate that verifies the origin server's certificate. If the certificate is not signed by a well-known certification authority, enter the CA certificate in the PEM format for verification. If you set this data, the `mTlsEnabled` property replaces it in the response as `true`.",
                            "type": "string"
                          },
                          "clientCert": {
                            "description": "The digital certificate in the PEM format that authenticates requests to your destination. If you want to use mutual authentication, you need to provide both the client certificate and the client key.",
                            "type": "string"
                          },
                          "clientKey": {
                            "description": "The private key in the non-encrypted PKCS8 format that authenticates with the back-end server. If you want to use mutual authentication, you need to provide both the client certificate and the client key.",
                            "type": "string"
                          },
                          "compressLogs": {
                            "default": true,
                            "description": "Enables gzip compression for a log file sent to a destination. The value is `true `by default.",
                            "type": "boolean"
                          },
                          "customHeaderName": {
                            "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see the additional options discussed in [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-splunk#additional-options).",
                            "type": "string"
                          },
                          "customHeaderValue": {
                            "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see the additional options discussed in [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-splunk#additional-options).",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set this value to `SPLUNK` for this destination type.",
                            "enum": [
                              "SPLUNK"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "The raw event Splunk URL where you want to store your logs. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Splunk](https://techdocs.akamai.com/datastream2/docs/stream-splunk#akamaized-hostname-as-endpoint).",
                            "type": "string"
                          },
                          "eventCollectorToken": {
                            "description": "The Event Collector token for your Splunk account. See [View usage of Event Collector token](https://docs.splunk.com/Documentation/Splunk/8.0.3/Data/UsetheHTTPEventCollector) in the Splunk documentation.",
                            "type": "string"
                          },
                          "tlsHostname": {
                            "description": "The hostname that verifies the server's certificate and matches the Subject Alternative Names (SANs) in the certificate. If not provided, DataStream fetches the hostname from the endpoint URL.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "endpoint",
                          "eventCollectorToken"
                        ],
                        "title": "SPLUNK",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/splunk.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the Google Cloud Storage destination you can use in a stream. When validating this destination, DataStream uses the private access key to create an `Akamai_access_verification_[TimeStamp].txt` object file in your GCS bucket. You can only see this file if the destination validates, and if you have access to the Google Cloud Storage bucket where you are trying to send logs.",
                        "properties": {
                          "bucket": {
                            "description": "The name of the storage bucket you created in your Google Cloud account. See [Bucket naming conventions](https://cloud.google.com/storage/docs/naming-buckets) in the Google Cloud documentation.",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `GCS` for this destination type.",
                            "enum": [
                              "GCS"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "path": {
                            "description": "The path to the folder within your Google Cloud bucket where you want to store logs. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). See [Object naming guidelines](https://cloud.google.com/storage/docs/naming-objects) in the Google Cloud documentations.",
                            "type": "string"
                          },
                          "privateKey": {
                            "description": "The contents of the JSON service account keys you generated and downloaded in your Google Cloud Storage account. See [Creating service account keys](https://cloud.google.com/iam/docs/creating-managing-service-account-keys#creating_service_account_keys) in the Google Cloud documentation.",
                            "type": "string"
                          },
                          "projectId": {
                            "description": "Identifies your Google Cloud project.",
                            "type": "string"
                          },
                          "serviceAccountName": {
                            "description": "The name of the service account with the `storage.object.create` permission or Storage Object Creator role.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "bucket",
                          "projectId",
                          "serviceAccountName",
                          "privateKey"
                        ],
                        "title": "GCS",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/gcs.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the custom HTTPS endpoint you can use as a destination for a stream. This includes basic or no authentication, and whether the stream sends uncompressed or gzip-compressed log files. If you choose this destination, the stream pushes a sample POST request to the endpoint to validate write access. For `STRUCTURED` logs, the data is sent as `0,access_validation`, and for `JSON` it's `{\"access_validation\":true}`. You can see the data only if the destination validates, and you can access the destination storage.",
                        "properties": {
                          "authenticationType": {
                            "description": "Either `NONE` for no authentication, or `BASIC`. For basic authentication, provide the username and password you set in your custom HTTPS endpoint.",
                            "enum": [
                              "NONE",
                              "BASIC"
                            ],
                            "type": "string"
                          },
                          "caCert": {
                            "description": "The certification authority (CA) certificate that verifies the origin server's certificate. If the certificate is not signed by a well-known certification authority, enter the CA certificate in the PEM format for verification. If you set this data, the `mTlsEnabled` property replaces it in the response as `true`.",
                            "type": "string"
                          },
                          "clientCert": {
                            "description": "The PEM-formatted digital certificate to authenticate requests to your destination. To use mutual authentication, provide both the client certificate and the client key. Once you provide this certificate, the response indicates this with a `mTlsEnabled` of `true`.",
                            "type": "string"
                          },
                          "clientKey": {
                            "description": "The private key in the non-encrypted PKCS8 format that authenticates with the back-end server. If you want to use mutual authentication, you need to provide both the client certificate and the client key.",
                            "type": "string"
                          },
                          "compressLogs": {
                            "default": false,
                            "description": "Enables gzip compression for a log file sent to a destination. The value is `false` by default.",
                            "type": "boolean"
                          },
                          "contentType": {
                            "description": "The type of the resource passed in the request's custom header. For details, see the additional options discussed in [Stream logs to a HTTPS endpoint](https://techdocs.akamai.com/datastream2/docs/stream-custom-https#additional-options).",
                            "type": "string"
                          },
                          "customHeaderName": {
                            "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see the additional options discussed in [Stream logs to a HTTPS endpoint](https://techdocs.akamai.com/datastream2/docs/stream-custom-https#additional-options).",
                            "type": "string"
                          },
                          "customHeaderValue": {
                            "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see the additional options discussed in [Stream logs to a HTTPS endpoint](https://techdocs.akamai.com/datastream2/docs/stream-custom-https#additional-options).",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `HTTPS` for this destination type.",
                            "enum": [
                              "HTTPS"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "Enter the secure URL where you want to send and store your logs. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to a custom HTTPS endpoint](https://techdocs.akamai.com/datastream2/docs/stream-custom-https#akamaized-hostname-as-endpoint).",
                            "type": "string"
                          },
                          "password": {
                            "description": "Enter the password you set in your custom HTTPS endpoint for authentication.",
                            "type": "string"
                          },
                          "tlsHostname": {
                            "description": "The hostname that verifies the server's certificate and matches the Subject Alternative Names (SANs) in the certificate. If not provided, DataStream fetches the hostname from the endpoint URL.",
                            "type": "string"
                          },
                          "userName": {
                            "description": "Enter the valid username you set in your custom HTTPS endpoint for authentication.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "authenticationType",
                          "endpoint"
                        ],
                        "title": "HTTPS",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/https.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the Sumo Logic destination that you can use in your stream. If you choose this destination, the stream pushes a sample POST request to the endpoint to validate write access. For `STRUCTURED` logs, the data appears as `0,access_validation`, and for `JSON` it's `{\"access_validation\":true}`. You can see the data only if the destination validates, and you can access the destination storage.",
                        "properties": {
                          "collectorCode": {
                            "description": "The unique HTTP collector code of your Sumo Logic endpoint.",
                            "type": "string"
                          },
                          "compressLogs": {
                            "default": true,
                            "description": "Enables gzip compression for a log file sent to a destination. The value is `true` by default.",
                            "type": "boolean"
                          },
                          "contentType": {
                            "description": "The type of the resource passed in the request's custom header. For details, see the additional options discussed in [Stream logs to Sumo Logic](https://techdocs.akamai.com/datastream2/docs/stream-sumo-logic#additional-options).",
                            "type": "string"
                          },
                          "customHeaderName": {
                            "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see the additional options discussed in [Stream logs to Sumo Logic](https://techdocs.akamai.com/datastream2/docs/stream-sumo-logic#additional-options).",
                            "type": "string"
                          },
                          "customHeaderValue": {
                            "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see the additional options discussed in [Stream logs to Sumo Logic](https://techdocs.akamai.com/datastream2/docs/stream-sumo-logic#additional-options).",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set this value to `SUMO_LOGIC` for this destination type.",
                            "enum": [
                              "SUMO_LOGIC"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "The Sumo Logic HTTP Source URL where you want to send your logs. You should follow the `https://<SumoEndpoint>/receiver/v1/http` format and set the collector code in the `collectorCode` field. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Sumo Logic](https://techdocs.akamai.com/datastream2/docs/stream-sumo-logic#akamaized-hostname-as-endpoint), and [Upload Metrics to an HTTP Source](https://help.sumologic.com/docs/send-data/hosted-collectors/http-source/upload-metrics/) in the Sumo Logic documentation.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "endpoint",
                          "collectorCode"
                        ],
                        "title": "SUMO_LOGIC",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/sumo-logic.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the Oracle Cloud destination in a stream. When validating this destination, DataStream uses the provided `accessKey` and `secretAccessKey` values and tries to save an `Akamai_access_verification_[TimeStamp].txt` file in your Oracle Cloud folder. You can only see this file if the validation succeeded, and if you have access to the Oracle Cloud bucket and folder that you're trying to send logs to.",
                        "properties": {
                          "accessKey": {
                            "description": "The access key identifier that you use to authenticate requests to your Oracle Cloud account. See [Managing user credentials](https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm) in the Oracle Cloud documentation.",
                            "type": "string"
                          },
                          "bucket": {
                            "description": "The name of the Oracle Cloud bucket. See [Working with buckets](https://docs.oracle.com/en-us/iaas/Content/Object/Tasks/managingbuckets.htm) in the Oracle Cloud documentation.",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `ORACLE_CLOUD_STORAGE` for this destination type.",
                            "enum": [
                              "ORACLE_CLOUD_STORAGE"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "namespace": {
                            "description": "The namespace of your Oracle Cloud account. See [Understanding Object Storage namespaces](https://docs.oracle.com/en-us/iaas/Content/Object/Tasks/understandingnamespaces.htm) in the Oracle Cloud documentation.",
                            "type": "string"
                          },
                          "path": {
                            "description": "The path to the folder within your Oracle Cloud bucket where you want to store your logs. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). See [Managing Objects](https://docs.oracle.com/en-us/iaas/Content/Object/Tasks/managingobjects.htm) in the Oracle Cloud documentation.",
                            "type": "string"
                          },
                          "region": {
                            "description": "The Oracle Cloud region where your bucket resides. See [Regions and availability domains](https://docs.oracle.com/en-us/iaas/Content/General/Concepts/regions.htm) in the Oracle Cloud documentation.",
                            "type": "string"
                          },
                          "secretAccessKey": {
                            "description": "The secret access key identifier that you use to authenticate requests to your Oracle Cloud account.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "accessKey",
                          "secretAccessKey",
                          "region",
                          "bucket",
                          "path",
                          "namespace"
                        ],
                        "title": "ORACLE_CLOUD_STORAGE",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/ocs.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the Loggly destination that you can use in your stream.",
                        "properties": {
                          "authToken": {
                            "description": "The custom token for your Loggly endpoint. The token is the value from the bulk endpoint URL that comes after the `/bulk` segment, and before `tags`.",
                            "type": "string"
                          },
                          "contentType": {
                            "description": "The type of the resource passed in the request's custom header. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-loggly#additional-options).",
                            "type": "string"
                          },
                          "customHeaderName": {
                            "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-loggly#additional-options).",
                            "type": "string"
                          },
                          "customHeaderValue": {
                            "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-loggly#additional-options).",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `LOGGLY` for this destination type.",
                            "enum": [
                              "LOGGLY"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "The Loggly bulk endpoint URL in the `https://hostname.loggly.com/bulk/` format. Set the endpoint token code in the `authToken` field instead of providing it in the URL. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Loggly](https://techdocs.akamai.com/datastream2/docs/stream-loggly#akamaized-hostname-as-endpoint).",
                            "type": "string"
                          },
                          "tags": {
                            "description": "The tags you can use to segment and filter log events in Loggly. See [Tags](https://documentation.solarwinds.com/en/success_center/loggly/content/admin/tags.htm) in the Loggly documentation.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "endpoint",
                          "authToken"
                        ],
                        "title": "LOGGLY",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/loggly.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the Elasticsearch destination that you can use in your stream.",
                        "properties": {
                          "caCert": {
                            "description": "The certification authority (CA) certificate that verifies the origin server's certificate. If the certificate is not signed by a well-known certification authority, enter the CA certificate in the PEM format for verification. If you pass this field, the `mTlsEnabled` field replaces it in the response as `true`.",
                            "type": "string"
                          },
                          "clientCert": {
                            "description": "The PEM-formatted digital certificate to authenticate requests to your destination. To use mutual authentication, provide both the client certificate and the client key. Once you provide this certificate, the response indicates this with a `mTlsEnabled` of `true`.",
                            "type": "string"
                          },
                          "clientKey": {
                            "description": "The private key in the non-encrypted PKCS8 format you want to use to authenticate with the back-end server. If you want to use mutual authentication, you need to provide both the client certificate and the client key.",
                            "type": "string"
                          },
                          "contentType": {
                            "description": "The type of the resource passed in the request's custom header. For details, see the additional options for the Elasticsearch destination.",
                            "type": "string"
                          },
                          "customHeaderName": {
                            "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-elasticsearch#section-additional-options).",
                            "type": "string"
                          },
                          "customHeaderValue": {
                            "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-elasticsearch#section-additional-options).",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `ELASTICSEARCH` for this destination type.",
                            "enum": [
                              "ELASTICSEARCH"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "The Elasticsearch bulk endpoint URL in the `https://hostname.elastic-cloud.com:9243/_bulk/` format. Set `indexName` in the appropriate field instead of providing it in the URL. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Elasticsearch](https://techdocs.akamai.com/datastream2/docs/stream-elasticsearch#akamaized-hostname-as-endpoint).",
                            "type": "string"
                          },
                          "indexName": {
                            "description": "The name of the index within an Elastic Cloud cluster where you want to store log files. This data supports [Dynamic index names](https://techdocs.akamai.com/datastream2/docs/stream-logs-to-elasticsearch#dynamic-index-name).",
                            "type": "string"
                          },
                          "password": {
                            "description": "The Elasticsearch basic access authentication password.",
                            "type": "string"
                          },
                          "tlsHostname": {
                            "description": "The hostname that verifies the server's certificate and matches the Subject Alternative Names (SANs) in the certificate. If not provided, DataStream fetches the hostname from the endpoint URL.",
                            "type": "string"
                          },
                          "userName": {
                            "description": "The Elasticsearch basic access authentication username.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "endpoint",
                          "userName",
                          "password",
                          "indexName"
                        ],
                        "title": "ELASTICSEARCH",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/elasticsearch.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the New Relic destination that you can use in your stream.",
                        "properties": {
                          "authToken": {
                            "description": "The unique personal API key that belongs to your New Relic account.",
                            "type": "string"
                          },
                          "contentType": {
                            "description": "The type of the resource passed in the request's custom header. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-newrelic#section-additional-options).",
                            "type": "string"
                          },
                          "customHeaderName": {
                            "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-new-relic#additional-options).",
                            "type": "string"
                          },
                          "customHeaderValue": {
                            "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-new-relic#additional-options).",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `NEWRELIC` for this destination type.",
                            "enum": [
                              "NEWRELIC"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "The New Relic Log API endpoint URL in the `https://log-api.newrelic.com/log/v1/` format. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to New Relic](https://techdocs.akamai.com/datastream2/docs/stream-new-relic#akamaized-hostname-as-endpoint).",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "endpoint",
                          "authToken"
                        ],
                        "title": "NEWRELIC",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/new-relic.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the S3-compatible destination in a stream. When validating this destination, DataStream uses the provided `accessKey` and `secretAccessKey` values and saves an `Akamai_access_verification_[TimeStamp].txt` format file in your S3-compatible folder. You can only see this file if the validation succeeded, and if you have access to the S3-compatible bucket and folder that you're trying to send logs to. Before configuring your stream to send logs to this destination, make sure you create a S3-compatible storage bucket, and store the access key together with the secret access key.",
                        "properties": {
                          "accessKey": {
                            "description": "The access key identifier of the S3-compatible object storage bucket.",
                            "type": "string"
                          },
                          "bucket": {
                            "description": "The name of the S3-compatible object storage bucket.",
                            "type": "string"
                          },
                          "compressLogs": {
                            "description": "Enables gzip compression for a log file sent to a destination. This value is always `true` for this destination type.",
                            "type": "boolean"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `S3_COMPATIBLE` for this destination type.",
                            "enum": [
                              "S3_COMPATIBLE"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "The scheme-qualified hostname of your S3-compatible object storage bucket.",
                            "example": "https://logs.example.com",
                            "type": "string"
                          },
                          "path": {
                            "description": "The path to the folder within your S3-compatible object storage bucket where you want to store logs. This value is optional, and allows [Dynamic time variables](https://techdocs.akamai.com/datastream2/docs/dynamic-time-variables).",
                            "type": "string"
                          },
                          "region": {
                            "description": "The physical storage location of your S3-compatible object storage bucket.",
                            "type": "string"
                          },
                          "secretAccessKey": {
                            "description": "The secret access key identifier of the S3-compatible object storage bucket.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "accessKey",
                          "secretAccessKey",
                          "bucket",
                          "region",
                          "endpoint"
                        ],
                        "title": "S3_COMPATIBLE",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/s3compatible.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the TrafficPeak endpoint you can use as a destination for a stream, including basic authentication. Choosing TrafficPeak for delivery streams requires logging the **Request time** (ID: `1100`) data set field. For Edge DNS and GTM streams, it requires the **Epoch timestamp** (ID: `4002` and `5002` respectively) field. If you choose this destination, the stream pushes a sample `{\"access_validation\":true}` POST request to the endpoint to validate write access. You can see the data only if the destination validates, and you can access the destination storage.",
                        "properties": {
                          "authenticationType": {
                            "description": "For `BASIC` authentication, provide the username and password you set in your TrafficPeak endpoint.",
                            "enum": [
                              "BASIC"
                            ],
                            "type": "string"
                          },
                          "compressLogs": {
                            "default": true,
                            "description": "Enables gzip compression for a log file sent to a destination. The value is `true` by default.",
                            "type": "boolean"
                          },
                          "contentType": {
                            "description": "The type of the resource passed in the request's custom header. For details, see the additional options discussed in [Stream logs to a TrafficPeak endpoint](https://techdocs.akamai.com/datastream2/docs/stream-trafficpeak#additional-options).",
                            "type": "string"
                          },
                          "customHeaderName": {
                            "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see the additional options discussed in [Stream logs to a TrafficPeak endpoint](https://techdocs.akamai.com/datastream2/docs/stream-trafficpeak#additional-options).",
                            "type": "string"
                          },
                          "customHeaderValue": {
                            "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see the additional options discussed in [Stream logs to a TrafficPeak endpoint](https://techdocs.akamai.com/datastream2/docs/stream-trafficpeak#additional-options).",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `TRAFFICPEAK` for this destination type.",
                            "enum": [
                              "TRAFFICPEAK"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "Enter the Hydrolix endpoint URL in the `https://<host>/ingest/event?table=<tablename>&token=<token>` format, where the `token` is the HTTP streaming ingest token, and the `tablename` is the Hydrolix data set table name.",
                            "type": "string"
                          },
                          "password": {
                            "description": "Enter the password you set in your TrafficPeak endpoint for authentication.",
                            "type": "string"
                          },
                          "userName": {
                            "description": "Enter the valid username you set in your TrafficPeak endpoint for authentication.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "authenticationType",
                          "endpoint",
                          "userName",
                          "password",
                          "contentType",
                          "compressLogs"
                        ],
                        "title": "TRAFFICPEAK",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/traffic-peak.yaml"
                        }
                      },
                      {
                        "additionalProperties": false,
                        "description": "Details the Dynatrace destination that you can use in a stream. You can only configure this destination for Dynatrace SaaS users.",
                        "properties": {
                          "authToken": {
                            "description": "The Dynatrace Log Ingest access token. If you need to create one, see [Access token](https://docs.dynatrace.com/docs/dynatrace-api/basics/dynatrace-api-authentication#create-token) in the Dynatrace API documentation.",
                            "type": "string"
                          },
                          "customHeaderName": {
                            "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-elasticsearch#section-additional-options).",
                            "type": "string"
                          },
                          "customHeaderValue": {
                            "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-elasticsearch#section-additional-options).",
                            "type": "string"
                          },
                          "destinationType": {
                            "description": "The destination type's name. Set it to `DYNATRACE` for this destination type.",
                            "enum": [
                              "DYNATRACE"
                            ],
                            "type": "string"
                          },
                          "displayName": {
                            "description": "The destination's name.",
                            "type": "string"
                          },
                          "endpoint": {
                            "description": "The Dynatrace [Ingestion API](https://docs.dynatrace.com/docs/platform/openpipeline/reference/api-ingestion-reference) endpoint URL in the `https://{dynatrace-environment-id}.live.dynatrace.com/api/v2/logs/ingest` format.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "destinationType",
                          "displayName",
                          "endpoint",
                          "authToken"
                        ],
                        "title": "DYNATRACE",
                        "type": "object",
                        "x-akamai": {
                          "file-path": "schemas/dynatrace.yaml"
                        }
                      }
                    ]
                  },
                  "enableCompleteness": {
                    "default": false,
                    "description": "Set to `true` to create a stream optimized for log completeness. See [Latency profiles](https://techdocs.akamai.com/datastream2/docs/features#latency-profiles) for details.",
                    "type": "boolean"
                  },
                  "enableFasterLatency": {
                    "default": true,
                    "description": "Set to `true` to create a stream with the latency profile optimized for lower latency. This is the default latency profile if `enableFasterLatency` or `enableCompleteness` isn't specified. See [Latency profiles](https://techdocs.akamai.com/datastream2/docs/features#latency-profiles) for details.",
                    "type": "boolean"
                  },
                  "notificationEmails": {
                    "description": "Email addresses where you want to send notifications about the stream's activations and deactivations. By omitting this or specifying an empty array, you can activate or deactivate the stream without notifications.",
                    "items": {
                      "type": "string"
                    },
                    "minItems": 0,
                    "type": "array"
                  },
                  "properties": {
                    "description": "Identifies the properties that belong to the same product, and you want to monitor in the stream. Note that only streams belonging to active properties can log data. See [Activate a property](https://techdocs.akamai.com/property-mgr/docs/activate-prop) in the Property Manager API.",
                    "items": {
                      "additionalProperties": false,
                      "properties": {
                        "propertyId": {
                          "description": "The property's unique identifier.",
                          "type": "integer"
                        }
                      },
                      "required": [
                        "propertyId"
                      ],
                      "type": "object"
                    },
                    "type": "array"
                  },
                  "samplingPercentage": {
                    "description": "For [DS-managed streams](https://techdocs.akamai.com/datastream2/reference/integrations). The percentage of sample data the stream collects and sends to your destination. The DataStream [behavior](ref:https://techdocs.akamai.com/property-mgr/docs/datastream-beh) property configuration overrides this value.",
                    "maximum": 100,
                    "minimum": 1,
                    "type": "integer"
                  },
                  "streamName": {
                    "description": "The stream's name.",
                    "maxLength": 1000,
                    "type": "string"
                  },
                  "webSocketEnabled": {
                    "description": "Set to `true` to log [WebSocket data](https://techdocs.akamai.com/datastream2/v3/reference/data-set-parameters-api#websocket-fields). Logging this data requires adding the [webSockets](https://techdocs.akamai.com/property-mgr/reference/latest-web-sockets) behavior in your property configuration.",
                    "type": "boolean"
                  }
                },
                "required": [
                  "streamName",
                  "contractId",
                  "properties",
                  "datasetFields",
                  "deliveryConfiguration",
                  "destination"
                ],
                "type": "object",
                "x-akamai": {
                  "file-path": "schemas/edit-stream-request.yaml"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "example": {
                  "collectMidgress": true,
                  "contractId": "C-0N7RAC71",
                  "createdBy": "jperez",
                  "createdDate": "2022-02-05T13:31:30Z",
                  "datasetFields": [
                    {
                      "datasetFieldId": 1000,
                      "datasetFieldJsonKey": "cp",
                      "datasetFieldName": "CP code"
                    },
                    {
                      "datasetFieldId": 1002,
                      "datasetFieldJsonKey": "reqId",
                      "datasetFieldName": "Request ID"
                    },
                    {
                      "datasetFieldId": 1023,
                      "datasetFieldJsonKey": "cookie",
                      "datasetFieldName": "Cookie"
                    },
                    {
                      "datasetFieldId": 2089,
                      "datasetFieldJsonKey": "recordTag",
                      "datasetFieldName": "Record Tag"
                    },
                    {
                      "datasetFieldId": 2096,
                      "datasetFieldJsonKey": "webSocketStatus",
                      "datasetFieldName": "Status"
                    },
                    {
                      "datasetFieldId": 2101,
                      "datasetFieldJsonKey": "arlid",
                      "datasetFieldName": "ARL ID"
                    }
                  ],
                  "deliveryConfiguration": {
                    "fieldDelimiter": "SPACE",
                    "format": "STRUCTURED",
                    "frequency": {
                      "intervalInSeconds": 30
                    },
                    "uploadFilePrefix": "logs",
                    "uploadFileSuffix": "ds"
                  },
                  "destination": {
                    "bucket": "datastream.akamai.com",
                    "compressLogs": true,
                    "destinationType": "S3",
                    "displayName": "S3Destination",
                    "path": "ds2-logs",
                    "region": "ap-south-1"
                  },
                  "enableFasterLatency": true,
                  "groupId": "-",
                  "integrationType": "HYBRID",
                  "latestVersion": 1,
                  "modifiedBy": "szhang",
                  "modifiedDate": "2022-02-05T13:31:30Z",
                  "notificationEmails": [
                    "jperez@example.com",
                    "szhang@example.com"
                  ],
                  "productId": "-",
                  "properties": [
                    {
                      "integrationType": "PM_DEPENDENT",
                      "propertyId": 349772,
                      "propertyName": "example.com"
                    },
                    {
                      "integrationType": "DS_MANAGED",
                      "propertyId": 349770,
                      "propertyName": "example.akamai.com"
                    }
                  ],
                  "samplingPercentage": 100,
                  "streamId": 1234,
                  "streamName": "diagnostics-log-stream",
                  "streamStatus": "ACTIVATING",
                  "streamVersion": 1,
                  "webSocketEnabled": true
                },
                "schema": {
                  "additionalProperties": false,
                  "description": "Details the latest configuration version of a stream. It provides descriptions of the data set fields selected in the version, identifiers of properties they collect logs for, configuration of the destination where they deliver logs, and structure of these log lines. It also indicates if this version is active.",
                  "properties": {
                    "collectMidgress": {
                      "description": "Indicates if you've opted to capture midgress traffic within the Akamai platform, such as between two edge servers.",
                      "type": "boolean"
                    },
                    "contractId": {
                      "deprecated": true,
                      "description": "__Deprecated__ Now obsolete. Previously identified the contract the stream belongs to. If returned, you can ignore this field. ",
                      "type": "string",
                      "x-akamai": {
                        "status": "DEPRECATED"
                      }
                    },
                    "createdBy": {
                      "description": "The username who created the stream.",
                      "type": "string"
                    },
                    "createdDate": {
                      "description": "An ISO 8601 timestamp marking when the stream was created.",
                      "format": "date-time",
                      "type": "string"
                    },
                    "datasetFields": {
                      "description": "Lists currently selected data set fields the stream monitors in logs. The order of the identifiers determines how these fields' values appear in log lines.",
                      "items": {
                        "additionalProperties": false,
                        "properties": {
                          "datasetFieldId": {
                            "description": "Identifies the field.",
                            "type": "integer"
                          },
                          "datasetFieldJsonKey": {
                            "description": "Specifies the JSON key for the field in a log line. You can get this value only when you run the [List data set fields](https://techdocs.akamai.com/datastream2/reference/get-dataset-fields) or [Get a stream](https://techdocs.akamai.com/datastream2/reference/get-stream) operation for a stream in the `JSON` format.",
                            "type": "string"
                          },
                          "datasetFieldName": {
                            "description": "The data set field's name.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "datasetFieldId",
                          "datasetFieldName",
                          "datasetFieldJsonKey"
                        ],
                        "type": "object"
                      },
                      "type": "array"
                    },
                    "deliveryConfiguration": {
                      "additionalProperties": false,
                      "description": "The configuration of log filenames, and their delivery frequency to the destination.",
                      "properties": {
                        "fieldDelimiter": {
                          "description": "A delimiter that separates data set fields in the log lines, either `SPACE` or `TAB`. Set this only for the `STRUCTURED` log file `format`.",
                          "enum": [
                            "SPACE",
                            "TAB"
                          ],
                          "type": "string"
                        },
                        "format": {
                          "description": "The format in which you want to receive log files. You can choose the `STRUCTURED` or `JSON` format for your stream.",
                          "enum": [
                            "STRUCTURED",
                            "JSON"
                          ],
                          "type": "string"
                        },
                        "frequency": {
                          "additionalProperties": false,
                          "description": "The frequency to collect logs from each uploader and send them to a destination.",
                          "properties": {
                            "intervalInSeconds": {
                              "description": "The interval in seconds (`30` or `60`) after which the system bundles log lines into a file and sends it to a destination.",
                              "enum": [
                                30,
                                60
                              ],
                              "type": "integer"
                            }
                          },
                          "required": [
                            "intervalInSeconds"
                          ],
                          "type": "object"
                        },
                        "uploadFilePrefix": {
                          "default": "ak",
                          "description": "The log filename prefix that you want to send to an object-based destination, up to 200 characters. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). If unspecified, it defaults to `ak`.",
                          "maxLength": 200,
                          "type": "string"
                        },
                        "uploadFileSuffix": {
                          "default": "ds",
                          "description": "The log filename suffix that you want to send to an object-based destination, up to 10 characters. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). If unspecified, it defaults to `ds`.",
                          "maxLength": 10,
                          "type": "string"
                        }
                      },
                      "required": [
                        "format",
                        "frequency"
                      ],
                      "type": "object"
                    },
                    "destination": {
                      "description": "Details the destination's configuration in the stream to send logs.",
                      "oneOf": [
                        {
                          "additionalProperties": false,
                          "description": "Details the Azure Storage destination configuration in a stream.",
                          "properties": {
                            "accountName": {
                              "description": "Specifies the Azure Storage account name.",
                              "type": "string"
                            },
                            "compressLogs": {
                              "description": "Enables gzip compression for a log file sent to a destination. This value is always `true` for this destination type.",
                              "type": "boolean"
                            },
                            "containerName": {
                              "description": "Specifies the Azure Storage container name.",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set this value to `AZURE` for this destination type.",
                              "enum": [
                                "AZURE"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "path": {
                              "description": "The path to the folder within the Azure Storage container where you want to store your logs. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). See [Azure blob naming conventions](https://docs.microsoft.com/en-us/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata#:%7E:text=Blob%20Names&text=A%20blob%20name%20can%20contain,up%20to%20256%20characters%20long) in the Azure documentation.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "compressLogs",
                            "displayName",
                            "path",
                            "accountName",
                            "containerName"
                          ],
                          "title": "AZURE",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/azure-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the Amazon S3 destination in a stream.",
                          "properties": {
                            "bucket": {
                              "description": "The name of the Amazon S3 bucket. See [Working with buckets in AWS](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html) in the Amazon S3 documentation.",
                              "type": "string"
                            },
                            "compressLogs": {
                              "description": "Enables gzip compression for a log file sent to a destination. This value is always `true` for this destination type.",
                              "type": "boolean"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `S3` for this destination type.",
                              "enum": [
                                "S3"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "path": {
                              "description": "The path to the folder within your Amazon S3 bucket where you want to store your logs. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). See [Object keys](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html) in the Amazon S3 documentation for naming conventions.",
                              "type": "string"
                            },
                            "region": {
                              "description": "The AWS region where your Amazon S3 bucket resides. See [Regions, Availability Zones, and Local Zones in AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html) in the Amazon S3 documentation.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "compressLogs",
                            "displayName",
                            "path",
                            "bucket",
                            "region"
                          ],
                          "title": "S3",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/s3saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the Datadog destination configuration in a stream.",
                          "properties": {
                            "compressLogs": {
                              "default": false,
                              "description": "Enables gzip compression for a log file sent to a destination. The value is `false` by default.",
                              "type": "boolean"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set this value to `DATADOG` for this destination type.",
                              "enum": [
                                "DATADOG"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "The Datadog v1 endpoint URL where you want to send and store logs. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Datadog](https://techdocs.akamai.com/datastream2/docs/stream-datadog#akamaized-hostname-as-endpoint), and [View Datadog logs endpoint](https://docs.datadoghq.com/logs/log_collection/?tab=http#logging-endpoints) in the Datadog documentation.",
                              "type": "string"
                            },
                            "service": {
                              "description": "The name of the application or service generating the log events in Datadog. See [Attributes and Aliasing](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/) and [Services List](https://docs.datadoghq.com/tracing/visualization/services_list/) in the Datadog documentation.",
                              "type": "string"
                            },
                            "source": {
                              "description": "The name of the source or the technology of the logs in Datadog. See [Attributes and Aliasing](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/) in the Datadog documentation.",
                              "type": "string"
                            },
                            "tags": {
                              "description": "The tags you can use to filter and group metrics in your Datadog account. Enter a comma-delimited list for more than one tag. This field also supports `<key>:<value>` combinations. See [Getting Started with Tags](https://docs.datadoghq.com/getting_started/tagging/) in the Datadog documentation.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "endpoint",
                            "compressLogs"
                          ],
                          "title": "DATADOG",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/datadog-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the Splunk destination that you can use in your stream. Note that DataStream 2 currently supports only endpoint URLs ending with `collector/raw`. If you choose this destination, the stream pushes a sample POST request to the endpoint to validate write access. For `STRUCTURED` logs, the data is sent as `0,access_validation`, and for `JSON` it's `{\"access_validation\":true}`. You can see the data only if the destination validates, and you can access the destination storage.",
                          "properties": {
                            "compressLogs": {
                              "default": true,
                              "description": "Enables gzip compression for a log file sent to a destination. The value is `true` by default.",
                              "type": "boolean"
                            },
                            "customHeaderName": {
                              "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field.",
                              "type": "string"
                            },
                            "customHeaderValue": {
                              "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field.",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set this value to `SPLUNK` for this destination type.",
                              "enum": [
                                "SPLUNK"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "The raw event Splunk URL where you want to store your logs. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Splunk](https://techdocs.akamai.com/datastream2/docs/stream-splunk#akamaized-hostname-as-endpoint).",
                              "type": "string"
                            },
                            "mTlsEnabled": {
                              "description": "Identifies if the stream has the mTLS authentication enabled. The response returns this field only if you set the `clientCert` and `clientKey` fields while creating or editing a stream.",
                              "type": "boolean"
                            },
                            "tlsHostname": {
                              "description": "The hostname that verifies the server's certificate and matches the Subject Alternative Names (SANs) in the certificate. If not provided, DataStream fetches the hostname from the endpoint URL.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "endpoint",
                            "compressLogs"
                          ],
                          "title": "SPLUNK",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/splunk-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the Google Cloud Storage destination in a stream.",
                          "properties": {
                            "bucket": {
                              "description": "The name of the storage bucket you created in your Google Cloud account. See [Bucket naming conventions](https://cloud.google.com/storage/docs/naming-buckets) in the Google Cloud documentation.",
                              "type": "string"
                            },
                            "compressLogs": {
                              "description": "Enables gzip compression for a log file sent to a destination. This value is always `true` for this destination type.",
                              "type": "boolean"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `GCS` for this destination type.",
                              "enum": [
                                "GCS"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "path": {
                              "description": "The path to the folder within your Google Cloud bucket where you want to store logs. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). See [Object naming guidelines](https://cloud.google.com/storage/docs/naming-objects) in the Google Cloud documentation.",
                              "type": "string"
                            },
                            "projectId": {
                              "description": "Identifies your Google Cloud project.",
                              "type": "string"
                            },
                            "serviceAccountName": {
                              "description": "The name of the service account with the `storage.object.create` permission or Storage Object Creator role.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "bucket",
                            "projectId",
                            "serviceAccountName",
                            "compressLogs"
                          ],
                          "title": "GCS",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/gcs-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the custom HTTPS endpoint destination in a stream. If you choose this destination, the stream pushes a sample POST request to the endpoint to validate write access. For `STRUCTURED` logs, the data is sent as `0,access_validation`, and for `JSON` it's `{\"access_validation\":true}`. You can see the data only if the destination validates, and you can access the destination storage.",
                          "properties": {
                            "authenticationType": {
                              "description": "Either `NONE` for no authentication, or `BASIC`. For basic authentication, provide the username and password you set in your custom HTTPS endpoint.",
                              "enum": [
                                "NONE",
                                "BASIC"
                              ],
                              "type": "string"
                            },
                            "compressLogs": {
                              "default": false,
                              "description": "Enables gzip compression for a log file sent to a destination. The value is `false` by default.",
                              "type": "boolean"
                            },
                            "contentType": {
                              "description": "The type of the resource passed in the request's custom header.",
                              "type": "string"
                            },
                            "customHeaderName": {
                              "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field.",
                              "type": "string"
                            },
                            "customHeaderValue": {
                              "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field.",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `HTTPS` for this destination type.",
                              "enum": [
                                "HTTPS"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "Enter the secure URL where you want to send and store your logs. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to a custom HTTPS endpoint](https://techdocs.akamai.com/datastream2/docs/stream-custom-https#akamaized-hostname-as-endpoint).",
                              "type": "string"
                            },
                            "mTlsEnabled": {
                              "description": "Identifies if the stream has the mTLS authentication enabled. The response returns this field only if you set the `clientCert` and `clientKey` fields while creating or editing a stream.",
                              "type": "boolean"
                            },
                            "tlsHostname": {
                              "description": "The hostname that verifies the server's certificate and matches the Subject Alternative Names (SANs) in the certificate. If not provided, DataStream fetches the hostname from the endpoint URL.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "authenticationType",
                            "endpoint",
                            "compressLogs"
                          ],
                          "title": "HTTPS",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/https-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the Oracle Cloud destination in a stream. When validating this destination, DataStream uses the provided `accessKey` and `secretAccessKey` values and tries to save an `akamai_write_test_2147483647.txt` file in your Oracle Cloud folder. You can only see this file if the validation succeeded, and if you have access to the Oracle Cloud bucket and folder that you're trying to send logs to.",
                          "properties": {
                            "bucket": {
                              "description": "The name of the Oracle Cloud bucket. See [Working with buckets](https://docs.oracle.com/en-us/iaas/Content/Object/Tasks/managingbuckets.htm) in the Oracle Cloud documentation.",
                              "type": "string"
                            },
                            "compressLogs": {
                              "description": "Enables gzip compression for a log file sent to a destination. This value is always `true` for this destination type.",
                              "type": "boolean"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `ORACLE_CLOUD_STORAGE` for this destination type.",
                              "enum": [
                                "ORACLE_CLOUD_STORAGE"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "namespace": {
                              "description": "The namespace of your Oracle Cloud account. See [Understanding Object Storage namespaces](https://docs.oracle.com/en-us/iaas/Content/Object/Tasks/understandingnamespaces.htm) in the Oracle Cloud documentation.",
                              "type": "string"
                            },
                            "path": {
                              "description": "The path to the folder within your Oracle Cloud bucket where you want to store your logs. This data supports [Dynamic time variables](https://techdocs.akamai.com/datastream2/reference/custom-log-field#dynamic-time-variables). See [Managing Objects](https://docs.oracle.com/en-us/iaas/Content/Object/Tasks/managingobjects.htm) in the Oracle Cloud documentation.",
                              "type": "string"
                            },
                            "region": {
                              "description": "The Oracle Cloud region where your bucket resides. See [Regions and availability domains](https://docs.oracle.com/en-us/iaas/Content/General/Concepts/regions.htm) in the Oracle Cloud documentation.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "region",
                            "bucket",
                            "path",
                            "namespace",
                            "compressLogs"
                          ],
                          "title": "ORACLE_CLOUD_STORAGE",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/ocs-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the Sumo Logic destination that you can use in your stream. If you choose this destination, the stream pushes a sample POST request to the endpoint to validate write access. For `STRUCTURED` logs, the data is sent as `0,access_validation`, and for `JSON` it's `{\"access_validation\":true}`. You can see the data only if the destination validates, and you can access the destination storage.",
                          "properties": {
                            "collectorCode": {
                              "description": "The unique HTTP collector code of your Sumo Logic endpoint.",
                              "type": "string"
                            },
                            "compressLogs": {
                              "default": true,
                              "description": "Enables gzip compression for a log file sent to a destination. The value is `true` by default.",
                              "type": "boolean"
                            },
                            "contentType": {
                              "description": "The type of the resource passed in the custom header of the request.",
                              "type": "string"
                            },
                            "customHeaderName": {
                              "description": "A human-readable name for the custom header of the request that can contain only alphanumeric, dash, and underscore characters. See [Stream logs to Sumo Logic](https://techdocs.akamai.com/datastream2/docs/stream-sumo-logic) for details.",
                              "type": "string"
                            },
                            "customHeaderValue": {
                              "description": "The contents of the custom header passed with the request that contain information about the client connection. See [Stream logs to Sumo Logic](https://techdocs.akamai.com/datastream2/docs/stream-sumo-logic) for details.",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set this value to `SUMO_LOGIC` for this destination type.",
                              "enum": [
                                "SUMO_LOGIC"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "The Sumo Logic HTTP Source URL where you want to send your logs. You should follow the `https://<SumoEndpoint>/receiver/v1/http` format and set the collector code in the `collectorCode` field.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "endpoint",
                            "compressLogs"
                          ],
                          "title": "SUMO_LOGIC",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/sumo-logic-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the Loggly endpoint destination in a stream.",
                          "properties": {
                            "compressLogs": {
                              "description": "Enables gzip compression for a log file sent to a destination. This value is always `true` for this destination type.",
                              "type": "boolean"
                            },
                            "contentType": {
                              "description": "The type of the resource passed in the request's custom header.",
                              "type": "string"
                            },
                            "customHeaderName": {
                              "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field.",
                              "type": "string"
                            },
                            "customHeaderValue": {
                              "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field.",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `LOGGLY` for this destination type.",
                              "enum": [
                                "LOGGLY"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "The Loggly bulk endpoint URL in the `https://hostname.loggly.com/bulk/` format. Set the endpoint code in the `authToken` field instead of providing it in the URL. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Loggly](https://techdocs.akamai.com/datastream2/docs/stream-loggly#akamaized-hostname-as-endpoint).",
                              "type": "string"
                            },
                            "tags": {
                              "description": "The tags you can use to segment and filter log events in Loggly. See [Tags](https://documentation.solarwinds.com/en/success_center/loggly/content/admin/tags.htm) in the Loggly documentation.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "endpoint",
                            "compressLogs"
                          ],
                          "title": "LOGGLY",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/loggly-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the Elasticsearch endpoint destination in a stream.",
                          "properties": {
                            "compressLogs": {
                              "description": "Enables gzip compression for a log file sent to a destination. The value is `true` by default.",
                              "type": "boolean"
                            },
                            "customHeaderName": {
                              "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field.",
                              "type": "string"
                            },
                            "customHeaderValue": {
                              "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field.",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `ELASTICSEARCH` for this destination type.",
                              "enum": [
                                "ELASTICSEARCH"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "The Elasticsearch bulk endpoint URL in the `https://hostname.elastic-cloud.com:9243/_bulk/` format. Set `indexName` in the appropriate field instead of providing it in the URL. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Elasticsearch][Stream logs to Elasticsearch](https://techdocs.akamai.com/datastream2/docs/stream-elasticsearch#section-akamaized-hostname-as-endpoint).",
                              "type": "string"
                            },
                            "mTlsEnabled": {
                              "description": "Identifies if the stream has the mTLS authentication enabled. The response returns this field only if you set the `clientCert` and `clientKey` fields while creating or editing a stream.",
                              "type": "boolean"
                            },
                            "tlsHostname": {
                              "description": "The hostname that verifies the server's certificate and matches the Subject Alternative Names (SANs) in the certificate. If not provided, DataStream fetches the hostname from the endpoint URL.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "endpoint",
                            "compressLogs"
                          ],
                          "title": "ELASTICSEARCH",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/elasticsearch-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the New Relic endpoint destination in a stream.",
                          "properties": {
                            "compressLogs": {
                              "description": "Enables gzip compression for a log file sent to a destination. This value is always `true` for this destination type.",
                              "type": "boolean"
                            },
                            "contentType": {
                              "description": "The type of the resource passed in the request's custom header.",
                              "type": "string"
                            },
                            "customHeaderName": {
                              "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field.",
                              "type": "string"
                            },
                            "customHeaderValue": {
                              "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field.",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `NEWRELIC` for this destination type.",
                              "enum": [
                                "NEWRELIC"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "The New Relic Log API endpoint URL in the `https://log-api.newrelic.com/log/v1/` format. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to New Relic](https://techdocs.akamai.com/datastream2/docs/stream-new-relic#akamaized-hostname-as-endpoint).",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "endpoint",
                            "compressLogs"
                          ],
                          "title": "NEWRELIC",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/new-relic-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the S3-compatible destination in a stream. When validating this destination, DataStream uses the provided `accessKey` and `secretAccessKey` values and saves an `Akamai_access_verification_[TimeStamp].txt` format file in your S3-compatible folder. You can only see this file if the validation succeeded, and if you have access to the S3-compatible bucket and folder that you're trying to send logs to. Before configuring your stream to send logs to this destination, make sure you create a S3-compatible storage bucket, and store the access key together with the secret access key.",
                          "properties": {
                            "bucket": {
                              "description": "The name of the S3-compatible object storage bucket.",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `S3_COMPATIBLE` for this destination type.",
                              "enum": [
                                "S3_COMPATIBLE"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "The scheme-qualified host of your S3-compatible object storage bucket.",
                              "type": "string"
                            },
                            "path": {
                              "description": "The path to the folder within your S3-compatible object storage bucket where you want to store logs. This value allows [Dynamic time variables](https://techdocs.akamai.com/datastream2/docs/dynamic-time-variables).",
                              "type": "string"
                            },
                            "region": {
                              "description": "The physical storage location of your S3-compatible object storage bucket.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "bucket",
                            "region",
                            "endpoint"
                          ],
                          "title": "S3_COMPATIBLE",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/s3compatible-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the TrafficPeak endpoint you can use as a destination for a stream, including basic authentication. If you choose this destination, the stream pushes a sample `{\"access_validation\":true}` POST request to the endpoint to validate write access. You can see the data only if the destination validates, and you can access the destination storage.",
                          "properties": {
                            "authenticationType": {
                              "description": "For `BASIC` authentication, provide the username and password you set in your TrafficPeak endpoint.",
                              "enum": [
                                "BASIC"
                              ],
                              "type": "string"
                            },
                            "compressLogs": {
                              "default": true,
                              "description": "Enables gzip compression for a log file sent to a destination. The value is `true` by default.",
                              "type": "boolean"
                            },
                            "contentType": {
                              "description": "The type of the resource passed in the request's custom header.",
                              "type": "string"
                            },
                            "customHeaderName": {
                              "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see the additional options discussed in [Stream logs to a TrafficPeak endpoint](https://techdocs.akamai.com/datastream2/docs/stream-trafficpeak#additional-options).",
                              "type": "string"
                            },
                            "customHeaderValue": {
                              "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see the additional options discussed in [Stream logs to a TrafficPeak endpoint](https://techdocs.akamai.com/datastream2/docs/stream-trafficpeak#additional-options).",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `TRAFFICPEAK` for this destination type.",
                              "enum": [
                                "TRAFFICPEAK"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "Enter the Hydrolix endpoint URL in the `https://<host>/ingest/event?table=<tablename>&token=<token>` format, where the `token` is the HTTP streaming ingest token, and the `tablename` is the Hydrolix data set table name.",
                              "type": "string"
                            },
                            "password": {
                              "description": "Enter the password you set in your TrafficPeak endpoint for authentication.",
                              "type": "string"
                            },
                            "userName": {
                              "description": "Enter the valid username you set in your TrafficPeak endpoint for authentication.",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "authenticationType",
                            "endpoint",
                            "userName",
                            "password",
                            "contentType",
                            "compressLogs"
                          ],
                          "title": "TRAFFICPEAK",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/traffic-peak-saved-destination.yaml"
                          }
                        },
                        {
                          "additionalProperties": false,
                          "description": "Details the Dynatrace destination that you can use in your stream. You can only configure this destination for Dynatrace SaaS users.",
                          "properties": {
                            "authToken": {
                              "description": "The Dynatrace Log Ingest access token.",
                              "type": "string"
                            },
                            "customHeaderName": {
                              "description": "A human-readable name for the request's custom header, containing only alphanumeric, dash, and underscore characters. Provide a `customHeaderValue` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-elasticsearch#section-additional-options).",
                              "type": "string"
                            },
                            "customHeaderValue": {
                              "description": "The custom header's contents passed with the request that contains information about the client connection. Provide a `customHeaderName` along with this field. For details, see [Additional options](https://techdocs.akamai.com/datastream2/docs/stream-elasticsearch#section-additional-options).",
                              "type": "string"
                            },
                            "destinationType": {
                              "description": "The destination type's name. Set it to `DYNATRACE` for this destination type.",
                              "enum": [
                                "DYNATRACE"
                              ],
                              "type": "string"
                            },
                            "displayName": {
                              "description": "The destination's name.",
                              "type": "string"
                            },
                            "endpoint": {
                              "description": "The Dynatrace Log Ingestion API endpoint URL in the `https://{dynatrace-environment-id}.live.dynatrace.com/api/v2/logs/ingest` format. You can use hostnames served over the Akamai network as endpoint URLs. See [Stream logs to Dynatrace](https://techdocs.akamai.com/datastream2/docs/stream-dynatrace#akamaized-hostname-as-endpoint).",
                              "type": "string"
                            }
                          },
                          "required": [
                            "destinationType",
                            "displayName",
                            "endpoint",
                            "authToken"
                          ],
                          "title": "DYNATRACE",
                          "type": "object",
                          "x-akamai": {
                            "file-path": "schemas/dynatrace-saved-destination.yaml"
                          }
                        }
                      ]
                    },
                    "enableCompleteness": {
                      "default": false,
                      "description": "`true` for streams optimized for log completeness. See [Latency profiles](https://techdocs.akamai.com/datastream2/docs/features#latency-profiles) for details.",
                      "type": "boolean"
                    },
                    "enableFasterLatency": {
                      "default": true,
                      "description": "Indicates streams optimized for faster latency. This is the default latency profile if `enableFasterLatency` or `enableCompleteness` isn’t specified. See [Latency profiles](https://techdocs.akamai.com/datastream2/docs/features#latency-profiles) for details.",
                      "type": "boolean"
                    },
                    "groupId": {
                      "deprecated": true,
                      "description": "__Deprecated__ Now obsolete. Previously identified the group with access to the product for which you created the stream configuration. If returned, you can ignore this field. ",
                      "type": "string",
                      "x-akamai": {
                        "status": "DEPRECATED"
                      }
                    },
                    "integrationType": {
                      "description": "Indicates if all properties' integration types are either `DS_MANAGED` or `PM_DEPENDENT`. A value of `HYBRID` indicates a mix of both. See [Integration types](https://techdocs.akamai.com/datastream2/reference/integrations) for details.",
                      "enum": [
                        "DS_MANAGED",
                        "PM_DEPENDENT",
                        "HYBRID"
                      ],
                      "type": "string"
                    },
                    "latestVersion": {
                      "description": "Identifies the stream's latest configuration version.",
                      "type": "integer"
                    },
                    "modifiedBy": {
                      "description": "The username who modified the stream.",
                      "type": "string"
                    },
                    "modifiedDate": {
                      "description": "An ISO 8601 timestamp marking when the stream was modified.",
                      "format": "date-time",
                      "type": "string"
                    },
                    "notificationEmails": {
                      "description": "Email addresses where the system sends notifications about activations and deactivations of the stream.",
                      "items": {
                        "type": "string"
                      },
                      "minItems": 0,
                      "type": "array"
                    },
                    "productId": {
                      "deprecated": true,
                      "description": "__Deprecated__ Now obsolete. Previously identified the product for which you created the stream for. If returned, you can ignore this field. ",
                      "type": "string",
                      "x-akamai": {
                        "status": "DEPRECATED"
                      }
                    },
                    "properties": {
                      "description": "Identifies the delivery properties that you monitor in the stream.",
                      "items": {
                        "additionalProperties": false,
                        "properties": {
                          "integrationType": {
                            "description": "Indicates if the stream requires configuring and enabling the DataStream [behavior](https://techdocs.akamai.com/property-mgr/reference/latest-datastream) in Property Manager (`PM_DEPENDENT`) or is decoupled from property configuration (`DS_MANAGED`). See [Integration types](https://techdocs.akamai.com/datastream2/reference/integrations) for details.",
                            "enum": [
                              "DS_MANAGED",
                              "PM_DEPENDENT"
                            ],
                            "type": "string"
                          },
                          "propertyId": {
                            "description": "The property's unique identifier.",
                            "type": "integer"
                          },
                          "propertyName": {
                            "description": "The descriptive label for the property.",
                            "type": "string"
                          }
                        },
                        "required": [
                          "propertyId",
                          "propertyName"
                        ],
                        "type": "object"
                      },
                      "type": "array"
                    },
                    "samplingPercentage": {
                      "description": "For [DS-managed streams](https://techdocs.akamai.com/datastream2/reference/integrations). The percentage of sample data the stream collects and sends to your destination.",
                      "maximum": 100,
                      "minimum": 1,
                      "type": "integer"
                    },
                    "streamId": {
                      "description": "Identifies the stream.",
                      "type": "integer"
                    },
                    "streamName": {
                      "description": "The stream's name.",
                      "type": "string"
                    },
                    "streamStatus": {
                      "description": "Indicates if the stream is `INACTIVE`, `ACTIVATING`, `ACTIVATED`, `DEACTIVATING`, or `DEACTIVATED`.",
                      "enum": [
                        "INACTIVE",
                        "ACTIVATING",
                        "ACTIVATED",
                        "DEACTIVATING",
                        "DEACTIVATED"
                      ],
                      "type": "string"
                    },
                    "streamVersion": {
                      "description": "Identifies the stream's configuration version.",
                      "type": "integer"
                    },
                    "webSocketEnabled": {
                      "description": "If set to `true`, this stream logs [WebSocket data](https://techdocs.akamai.com/datastream2/v3/reference/data-set-parameters-api#websocket-fields).",
                      "type": "boolean"
                    }
                  },
                  "required": [
                    "contractId",
                    "createdBy",
                    "createdDate",
                    "datasetFields",
                    "deliveryConfiguration",
                    "destination",
                    "groupId",
                    "latestVersion",
                    "modifiedBy",
                    "modifiedDate",
                    "properties",
                    "streamId",
                    "streamName",
                    "streamStatus",
                    "streamVersion",
                    "productId"
                  ],
                  "title": "CDN stream details",
                  "type": "object",
                  "x-akamai": {
                    "file-path": "schemas/stream-detail-cdn.yaml"
                  }
                }
              }
            },
            "description": "The response shows the updated stream."
          }
        },
        "summary": "Edit a delivery (CDN) stream",
        "tags": [
          "Streams"
        ],
        "x-akamai": {
          "supports-account-switch-key": false
        }
      },
      "parameters": [
        {
          "description": "Uniquely identifies the stream.",
          "in": "path",
          "name": "streamId",
          "required": true,
          "schema": {
            "example": 7050,
            "type": "integer"
          },
          "x-akamai": {
            "file-path": "parameters/stream-id-path.yaml"
          }
        }
      ],
      "x-akamai": {
        "file-path": "paths/stream-cdn.yaml",
        "path-info": "/log/cdn/streams/{streamId}"
      }
    }
  },
  "servers": [
    {
      "url": "https://{hostname}/datastream-config-api/v3"
    }
  ],
  "tags": [
    {
      "description": "Operations to create, view, modify, activate, deactivate, and delete CDN log delivery streams.",
      "name": "Streams"
    }
  ],
  "x-akamai": {
    "auth-type": "EDGE_GRID",
    "file-path": "datastream-config.yaml"
  },
  "x-readme": {
    "explorer-enabled": false,
    "samples-languages": [
      "curl",
      "python",
      "node"
    ]
  }
}
```

# Sibling pages

* [Create a delivery stream](https://techdocs.akamai.com/datastream2/reference/post-stream-cdn.md)
* [Create an EdgeWorkers stream](https://techdocs.akamai.com/datastream2/reference/post-stream-ew.md)
* [Create an Edge DNS stream](https://techdocs.akamai.com/datastream2/reference/post-stream-edns.md)
* [Edit an Edge DNS stream](https://techdocs.akamai.com/datastream2/reference/put-stream-edns.md)
* [Edit an EdgeWorkers stream](https://techdocs.akamai.com/datastream2/reference/put-stream-ew.md)
* [Create a GTM stream](https://techdocs.akamai.com/datastream2/reference/post-stream-gtm.md)
* [Edit a GTM stream](https://techdocs.akamai.com/datastream2/reference/put-stream-gtm.md)
* [Patch a stream](https://techdocs.akamai.com/datastream2/reference/patch-stream.md)
* [List streams](https://techdocs.akamai.com/datastream2/reference/get-streams.md)
* [View upload metrics](https://techdocs.akamai.com/datastream2/reference/get-streams-metrics.md)
* [Get a stream](https://techdocs.akamai.com/datastream2/reference/get-stream.md)
* [Delete a stream](https://techdocs.akamai.com/datastream2/reference/delete-stream.md)