Skip to main content

GET Reported Emails​

GET /companies/v1/reported-emails/analytics

Get weekly metrics on reported emails, including a summary and breakdown by status.

➤ URL​

GET https://back-stg.whalemate.com/api/companies/v1/reported-emails/analytics

➤ Headers​

{
"X-API-KEY": "YOUR_API_KEY",
"Content-Type": "application/json"
}

➤ Filtering​

Filters can be applied to the route using the following structure:

filter[filter_name]=value

Each filter corresponds to a specific field and helps refine the query results. Below is an explanation of the available filters:

ParamTypeRequiredDescription
from_datestring (YYYY-MM-DD)NoMinimum date (range)
to_datestring (YYYY-MM-DD)NoMaximum date (range)

Example Usage​

Multiple filters can be combined in a single request to refine the search results. Example:

filter[from_date]=2025-01-01&filter[to_date]=2025-02-01

This query will return reported emails between January 1, 2025, and February 1, 2025.


➤ Types​

{
weekly_reports: [
{
week_start: string, // date
week_end: string, // date
total_emails: integer,
total_received: integer,
total_in_review: integer,
total_resolved: integer,
categories: {
[category: string]: integer
},
statuses: {
[status: string]: integer
}
}
],
summary: {
total_weeks: integer,
total_emails: integer,
average_per_week: float
},
status_breakdown: {
[status: string]: integer
}
}[]

➤ Response​

Example of successful response (200 OK)

[
{
weekly_reports: [
{
week_start: "2025-11-01",
week_end: "2025-11-07",
total_emails: 1200,
total_received: 1150,
total_in_review: 30,
total_resolved: 25,
categories: {
unknown: 100,
clean: 500,
spam: 400,
threat: 200
},
statuses: {
received: 1150,
in_review: 30,
resolved: 25
}
},
{
week_start: "2025-11-08",
week_end: "2025-11-14",
total_emails: 1350,
total_received: 1300,
total_in_review: 40,
total_resolved: 35,
categories: {
unknown: 120,
clean: 550,
spam: 450,
threat: 230
},
statuses: {
received: 1300,
in_review: 40,
resolved: 35
}
}
],
summary: {
total_weeks: 2,
total_emails: 2550,
average_per_week: 1275.0
},
status_breakdown: {
received: 2450,
in_review: 70,
resolved: 60
}
}
]


➤ Common Errors​

CodeMessageCouse
401UnauthorizedAPI Key invalid or missing
400Bad RequestOne or more filters have an invalid format
429Too Many RequestsThe limit of requests was exceeded
500Internal Server ErrorUnexpected server error

➤ Test Request​