# Message Statistics (deprecated)

Retrieve message-based aggregated delivery and engagement statistics. Message-based stats link the delivery rates / contact engagement details to the sending time of the messages. If no query parameters are used, the stats shown will be for messages sent since 00:00 UTC on the current day.

> Note: This is a legacy endpoint. We advise using /statcounters to retrieve message-based aggregated stats.

Endpoint: GET /v3/REST/messagestatistics
Version: 1.0.0
Security: basicAuth

## Query parameters:

  - `CampaignID` (integer)
    Retrieves statistics only for the specified Campaign ID.

  - `ContactEmail` (string)
    Retrieves statistics only for this contact email address.

  - `ContactID` (integer)
    Retrieves statistics only for this contact ID.

  - `ContactListID` (integer)
    Retrieves statistics only for this contact list ID.

  - `ContactsList` (integer)
    Retrieves statistics only for this contact list ID.

  - `CustomCampaign` (string)
    Retrieves statistics only for the campaign with the specified Custom Value.

  - `From` (string)
    Retrieves statistics only for messages sent from the specified Sender Email address.

  - `FromDomain` (string)
    Retrieves statistics only for messages sent from the specified sender domain.

  - `FromID` (integer)
    Retrieves statistics only for messages sent from the sender address with the specified ID.

  - `FromTS` (string)
    Retrieves statistics only for messages sent after the specified timestamp. Both Unix timestamp (e.g. 1514764800) and RFC3339 (2018-01-01T00:00:00) formats are accepted.

  - `FromType` (integer)
    Retrieves statistics only for a specific type of messages:

- 1 - Transactional
- 2 - Marketing
- 3 - Unknown

  - `IsDeleted` (boolean)
    When true, will retrieve statistics only for deleted campaigns. When false, stats for deleted campaigns will be excluded from the response.

  - `IsNewsletterTool` (boolean)
    When true, will retrieve statistics only for campaigns created with the Legacy template builder. When false, campaigns created with the Legacy builder will be excluded from the response.

  - `IsStarred` (boolean)
    When true, will retrieve statistics only for starred campaigns. When false, starred campaigns will be excluded from the response.

  - `MessageStatus` (integer)
    Retrieves statistics only for messages with the specified status:

- 0 (Processed)
- 1 (Queued)
- 2 (Sent)
- 3 (Opened)
- 4 (Clicked)
- 5 (Bounce)
- 6 (Spam)
- 7 (Unsub)
- 8 (Blocked)
- 9 (SoftBounce)
- 10 (HardBounce)
- 11 (Deferred)

  - `Period` (string)
    Retrieves statistics only for messages sent between the start of the selected period and the current timestamp.

- Day - since the start of the current day
- Week - since the start of the current week
- Month - since the start of the current month
- Year - since the start of the current year

  - `ProcessTotalClicksCount` (boolean)
    When true, will calculate and return the total number of click events in the TotalClicksCount property.

Default value: false

  - `ProcessTotalOpensCount` (boolean)
    When true, will calculate and return the total number of open events in the TotalOpensCount property.

Default value: false

  - `ToTS` (string)
    Retrieves statistics only for messages sent before the specified timestamp. Both Unix timestamp (e.g. 1514764800) and RFC3339 (2018-01-01T00:00:00) formats are accepted.

## Response 200 fields (application/json):

  - `Count` (integer)
    Indicates the number of objects in the Data array.

  - `Data` (array)
    A JSON array containing a list of objects returned by this endpoint.

  - `Data.AverageClickDelay` (number)
    Average delay (in seconds) between the first open and first click event for a message.

  - `Data.AverageClickedCount` (number)
    Average number of times a click was registered for a message.

  - `Data.AverageOpenDelay` (number)
    Average delay (in seconds) between the message delivery and the first message open.

  - `Data.AverageOpenedCount` (number)
    Average number of times a recipient opens the message.

  - `Data.BlockedCount` (integer)
    Number of blocked messages.

  - `Data.BouncedCount` (integer)
    Number of bounced messages.

  - `Data.CampaignCount` (integer)
    Number of distinct campaigns that are part of these stats.

  - `Data.ClickedCount` (integer)
    Number of clicked messages.

  - `Data.DeferredCount` (integer)
    Number of deferred messages - ones that could not be delivered and the system is retrying to send. If after 3 days the sending is unsuccessful, those messages become soft-bounced.

  - `Data.DeliveredCount` (integer)
    Number of messages delivered to their destination.

  - `Data.HardbouncedCount` (integer)
    Number of hard-bounced messages.

  - `Data.OpenedCount` (integer)
    Number of opened messages.

  - `Data.ProcessedCount` (integer)
    Number of processed messages.

  - `Data.QueuedCount` (integer)
    Number of messages that are in the queue to be sent out.

  - `Data.SoftbouncedCount` (integer)
    Number of soft-bounced messages.

  - `Data.SpamComplaintCount` (integer)
    Number of messages marked as Spam by the recipients.

  - `Data.TotalClicksCount` (integer)
    Total number of registered open events. Calculated only when the ProcessTotalOpensCount query parameter is set as true, otherwise 0 is returned.

  - `Data.TotalOpensCount` (integer)
    Total number of registered click events. Calculated only when the ProcessTotalClicksCount query parameter is set as true, otherwise 0 is returned.

  - `Data.TransactionalCount` (integer)
    Number of transactional messages.

  - `Data.UnsubscribedCount` (integer)
    Number of registered unsubscribe requests.

  - `Total` (integer)
    Indicates the number of objects in the Data array.


## Response 400 fields

## Response 401 fields

## Response 403 fields

## Response 404 fields

## Response 429 fields

## Response 500 fields
