Log Delivery Service API Data

This section provides details for each type of data object the LDS API exchanges.

Schemas

LogConfiguration

Represents the main log delivery configuration object that creates and updates a log delivery configuration.

Sample GET:

{
    "status": "active",
    "startDate": "2013-01-02",
    "aggregationDetails": {
        "deliveryFrequency": {
            "links": [
                {
                    "href": "/lds-api/v3/log-configuration-parameters/delivery-frequencies/1",
                    "rel": "self"
                },
                {
                    "href": "/lds-api/v3/log-configuration-parameters/delivery-frequencies",
                    "rel": "deliveryFrequencies"
                }
            ],
            "id": "1",
            "value": "Every 24 hours"
        },
        "type": "byLogArrival"
    },
    "logFormatDetails": {
        "logFormat": {
            "links": [
                {
                    "href": "/lds-api/v3/log-configuration-parameters/log-formats/2",
                    "rel": "self"
                },
                {
                    "href": "/lds-api/v3/log-configuration-parameters/log-formats",
                    "rel": "logFormats"
                }
            ],
            "id": "2",
            "value": "combined"
        },
        "logIdentifier": "200957"
    },
    "links": [
        {
            "href": "/lds-api/v3/log-configuration/163842",
            "rel": "self"
        },
        {
            "href": "/lds-api/v3/log-sources/cpcode-products/200957-1/log-configurations",
            "rel": "get-log-configurations-for-log-source",
            "title": "Get Log Configurations for the same log source"
        },
        {
            "href": "/lds-api/v3/log-sources/cpcode-products/log-configurations",
            "rel": "get-log-configurations-for-log-source-type",
            "title": "Get Log Configurations for the same log source type"
        },
        {
            "href": "/lds-api/v3/log-configuration/163842",
            "method": "PUT",
            "rel": "update-log-configuration",
            "title": "Update Log Configuration"
        },
        {
            "href": "/lds-api/v3/log-configuration/163842",
            "method": "DELETE",
            "rel": "delete-log-configuration",
            "title": "Delete Log Configuration"
        },
        {
            "href": "/lds-api/v3/log-configuration/163842/suspend",
            "method": "POST",
            "rel": "suspend-log-configuration",
            "title": "Suspend Log Configuration"
        }
    ],
    "logSource": {
        "cpCode": "200957 - MOCK CP CODE DESCR ",
        "products": [
            "HTTP Content Delivery"
        ],
        "type": "cpcode-products",
        "id": "200957-1",
        "links": [
            {
                "href": "/lds-api/v3/log-sources/cpcode-products/200957-1",
                "rel": "self"
            },
            {
                "href": "/lds-api/v3/log-sources/cpcode-products",
                "rel": "cpcode-products"
            },
            {
                "href": "/lds-api/v3/log-sources",
                "rel": "log-sources"
            }
        ]
    },
    "contactDetails": {
        "contact": {
            "links": [
                {
                    "href": "/lds-api/v3/log-configuration-parameters/contacts/1-C30O",
                    "rel": "self"
                },
                {
                    "href": "/lds-api/v3/log-configuration-parameters/contacts",
                    "rel": "contacts"
                }
            ],
            "id": "1-C30O",
            "value": ". Help-Desk - phone: 617.250.3900"
        },
        "mailAddresses": [
            "jjudge@akamai.com"
        ]
    },
    "messageSize": {
        "links": [
            {
                "href": "/lds-api/v3/log-configuration-parameters/message-sizes/1",
                "rel": "self"
            },
            {
                "href": "/lds-api/v3/log-configuration-parameters/message-sizes",
                "rel": "messageSizes"
            }
        ],
        "id": "1",
        "value": "50 MB (approx. 300 MB uncompressed logs)"
    },
    "deliveryDetails": {
        "machine": "akainsight.upload.akamai.com",
        "directory": "/23567/logs/200957",
        "login": "insightlds",
        "password": "",
        "type": "ftp"
    },
    "encodingDetails": {
        "encoding": {
            "links": [
                {
                    "href": "/lds-api/v3/log-configuration-parameters/encodings/3",
                    "rel": "self"
                },
                {
                    "href": "/lds-api/v3/log-configuration-parameters/encodings",
                    "rel": "encodings"
                }
            ],
            "id": "3",
            "value": "GZIP"
        }
    },
    "id": "163842"
}

LogConfiguration Members  

Member Type Required Description
aggregationDetails Object Defines how to aggregate logs: by log arrival or by hit time. The value is either an AggregationByHitTime or AggregationByLogArrival object.
contactDetails LogConfiguration.contactDetails Contains details about contact person for this log delivery configuration.
deliveryDetails Object Either an EmailDelivery or FtpDelivery object.
encodingDetails LogConfiguration.encodingDetails Describes the log encoding.
endDate String End date to which logs will be collected.
id String Read-only. Unique identifier of this configuration.
logFormatDetails LogConfiguration.logFormatDetails Describes the log format.
logSource Object Read-only. This member appears in log configurations only in server responses. For creating and modifying log configuration, all required information to identify configuration is in the URL. The type is either an AnswerXLogSource, CpCodeLogSource, EdnsLogSource, or GtmLogSource.
messageSize KeyValuePair Packed log message’s approximate size, a simple KeyValuePair object.
startDate String Start date from which logs will be collected.
status Enumeration Read-only. Log configuration status, either active, expired, or suspended. Only active configurations are used in the actual log delivery process.

LogConfiguration.contactDetails  

Contains details about contact person for this log delivery configuration.

Member Type Required Description
contact KeyValuePair Contact information provided as a simple KeyValuePair object.
mailAddresses Array List of email addresses for contacts for this log format configuration.

LogConfiguration.encodingDetails  

Describes the log encoding.

Member Type Required Description
encoding KeyValuePair Selected encoding option used to encode logs, a simple KeyValuePair object.
encodingKey String Public key value for encrypted encoding. You need to set the public key value if GPG encrypted encoding is used.

LogConfiguration.logFormatDetails  

Describes the log format.

Member Type Required Description
logFormat KeyValuePair Selected format for log delivery, a simple KeyValuePair object.
logIdentifier String Represents the first token of the log filename.

LogConfigurationCopy

Encapulates information needed to copy a log configuration.

Sample GET:

{
    "copyTarget": {
        "logSource": {
            "type": "gtm",
            "id": "1243"
        }
    }
}

LogConfigurationCopy Members  

Member Type Required Description
copyTarget LogConfigurationCopy.copyTarget Represents target log source for configuration copy request.

LogConfigurationCopy.copyTarget  

Represents target log source for configuration copy request.

Member Type Required Description
logSource Object Describes detailed log source information for configuration, one of these object types: AnswerXLogSource, CpCodeLogSource, EdnsLogSource, or GtmLogSource.

Redelivery

Collects information needed to create a log redelivery request.

Sample GET:

{
    "status": "new",
    "redeliveryDate": "2016-10-08",
    "links": [
        {
            "href": "/lds-api/v3/log-redeliveries/272480",
            "rel": "self"
        },
        {
            "href": "/lds-api/v3/log-redeliveries",
            "rel": "get-log-redeliveries",
            "title": "Get Log Redeliveries"
        },
        {
            "href": "/lds-api/v3/log-redeliveries",
            "method": "POST",
            "rel": "create-log-redelivery",
            "title": "Create Log Redelivery"
        }
    ],
    "logConfiguration": {
        "id": "154519",
        "links": [
            {
                "href": "/lds-api/v3/log-configurations/154519",
                "rel": "self"
            }
        ]
    },
    "beginTime": 3,
    "createdDate": "2016-10-05",
    "endTime": 6,
    "id": "272480",
    "modifiedDate": "2016-10-07"
}

Redelivery Members  

Member Type Required Description
beginTime Integer First hour of time range (0–23) for which log redelivery is requested.
createdDate String Read-only. Date the request for redelivery was created.
endTime Integer Last hour of time range (1–24) for which log redelivery is requested.
id String Read-only. Unique ID of this redelivery request.
logConfiguration Redelivery.logConfiguration Log delivery configuration for which this redelivery request was created.
modifiedDate String Read-only. Date of the last time the redelivery request was modified.
redeliveryDate String Date from which log redelivery is requested.
status Enumeration Read-only. Status of the redelivery. Possible enum values: failed, new, scheduled, success.

Redelivery.logConfiguration  

Log delivery configuration for which this redelivery request was created.

Member Type Required Description
id String Unique ID for the log delivery configuration.

KeyValuePair

A simple data type used for pairs of IDs and values.

Sample GET:

{
    "links": [
        {
            "href": "/lds-api/v3/log-configuration-parameters/delivery-frequencies/1",
            "rel": "self"
        },
        {
            "href": "/lds-api/v3/log-configuration-parameters/delivery-frequencies",
            "rel": "deliveryFrequencies"
        }
    ],
    "id": "1",
    "value": "Every 24 hours"
}

KeyValuePair Members  

Member Type Required Description
id String Unique identifier for the object.
value String Read-only. Human-readable value for the object.

AggregationByHitTime

This aggregation option allows to receive most of the hits for each GMT calendar day in a single delivery.

Member Type Required Description
deliverResidualData Boolean Indicates whether residual data should be sent at regular intervals after each day.
deliveryThreshold KeyValuePair Data completion threshold, or the percentage of expected logs to be processed before the log data is sent to you, provided as a simple KeyValuePair object.
type Enumeration Identifies the type of aggregation, byHitTime in this case.

AggregationByLogArrival

This aggregation option allows you to receive log data in the order in which it arrives from edge servers.

Member Type Required Description
deliveryFrequency KeyValuePair Period of time that will be covered by log delivery, provided as a simple KeyValuePair object.
type Enumeration Identifies the type of aggregation, byLogArrival in this case.

FtpDelivery

Encapsulates log delivery via FTP.

Member Type Required Description
directory String Target directory to which logs will be sent by FTP.
login String Login used to authenticate to FTP machine.
machine String Machine to which log will be sent by FTP.
password String Password used to authenticate to FTP machine. Keep in mind that this field will be empty in all responses from the server.
type Enumeration Identifies this type of delivery, ftp in this case.

EmailDelivery

Encapsulates log delivery sent by email.

Member Type Required Description
emailAddress String Email address to which log will be sent.
type Enumeration Identifies this type of delivery, email in this case.

AnswerXLogSource

Identifies an AnswerX object for which you can create a log delivery configuration.

Member Type Required Description
id Integer Unique identifier for each log source.
logRetentionDays Integer Read-only. Number of days that Akamai should keep logs collected for that log source. You can create log redelivery requests only for this retention period.
name String Read-only. The AnswerX object name.
type Enumeration Identifies the type of this log source, in this case answerx.

CpCodeLogSource

Identifies a group of CP code products, for which the log delivery configuration is being created.

Member Type Required Description
cpCode String Read-only. CP code ID and name for which logs will be collected.
id Integer Unique identifier for each log source.
logRetentionDays Integer Read-only. Number of days that Akamai should keep logs collected for that log source. You can create log redelivery requests only for this retention period.
products Array Products for which logs will be collected.
type Enumeration Identifies the type of this log source, in this case cpcode-products.

EdnsLogSource

Identifies a DNS zone for which you can create a log delivery configuration.

Member Type Required Description
id Integer Unique identifier for each log source.
logRetentionDays Integer Read-only. Number of days that Akamai should keep logs collected for that log source. You can create log redelivery requests only for this retention period.
type Enumeration Identifies the type of this log source, in this case edns.
zoneName String Read-only. The full name of the EDNS zone.

GtmLogSource

Identifies a Traffic Management property for which you can create a log delivery configuration.

Member Type Required Description
id Integer Unique identifier for each log source.
logRetentionDays Integer Read-only. Number of days that Akamai should keep logs collected for that log source. You can create log redelivery requests only for this retention period.
propertyName String Read-only. The full name of the Traffic Management domain property.
type Enumeration Identifies the type of this log source, in this case gtm.

Last modified: 4/3/2017