FlaresendDocs
Analytics

Retrieve analytics

Counts per day or hour, delivery and bounce rates, delivery time, top tags and top bouncing domains.

GET/v1/analyticsAPI key

Returns the numbers behind the dashboard's Metrics page for the project. The buckets, totals and rates count live emails only; topTags counts every email in the range, test sends included.

Emails are grouped by when they were created (UTC), not when an event happened. So an email created on Monday and bounced on Tuesday counts as bounced on Monday. The status counts use each email's current status: an email that was deferred and later delivered counts only as delivered.

Query parameters

range'7d' | '30d' | '90d'querydefault: 7d

How far back to look, counted in whole UTC days including today.

interval'day' | 'hour'querydefault: day

The bucket size. With day, every day in the range has a bucket, even with no emails. With hour, only hours that have emails are listed.

Response

rangestring

The range used.

interval'day' | 'hour'

The interval used.

bucketsBucket[]

In time order. Each has a bucket label (2026-09-25 for days, 2026-09-25T14 for hours) and one count per metric.

Show metrics
sentnumber

Emails handed to Cloudflare.

deliverednumber

Emails whose status is delivered. deferred, bounced, complained, rejected and failed count the same way.

openednumber

Emails opened at least once (open tracking only).

clickednumber

Emails with at least one tracked click.

totalsobject

The same nine metrics summed over the range.

deliveryRatenumber | null

delivered / sent, rounded to four decimals, for example 0.9812. null when nothing was sent. bounceRate and complaintRate work the same way.

p50DeliveryMsnumber | null

The median time Cloudflare took to deliver to a recipient, in milliseconds. p95DeliveryMs is the 95th percentile. null when there is no delivery data.

topTagsArray<{ tag, count }>

The 10 most used tags as key:value, with how many emails carried each.

topBouncedDomainsArray<{ domain, count }>

The 10 recipient domains with the most bounced recipients.

Errors

StatusCodeWhen
400invalid_queryrange or interval has a value not listed above.