Retrieve emails from your unified inbox. Filter by contact, mailbox, automation (flow_uuid), type (inbox/outbox), status, and date range.
Filters use the filter[...] form (URL-encode the brackets); flat params are ignored. Read total with limit=1 to count without paging.
Reporting on email sent per campaign: unlike LinkedIn messages, emails carry flow_uuid, so email volume can be counted per automation. Note that type=outbox includes emails synced from the mailbox (status=sync) as well as those sent by an automation (status=sent) — filter status=sent (or a non-empty flow_uuid) to count only what Grinfi sent. Date range uses sent_at operators, e.g. filter[sent_at][>=]=2026-07-01.
There is no group-counts endpoint for emails — build breakdowns by issuing one filtered count per slice (by flow_uuid, mailbox_uuid, date, …).
curl -i -X GET \
'https://leadgen.grinfi.io/emails/api/emails?limit=20&offset=0&order_field=created_at&order_type=asc&filter=%7B%22flow_uuid%22%3A%5B%22string%22%5D%2C%22flow_node_id%22%3A0%2C%22mailbox_uuid%22%3A%5B%22string%22%5D%2C%22lead_uuid%22%3A%5B%22string%22%5D%2C%22type%22%3A%5B%22string%22%5D%2C%22status%22%3A%5B%22string%22%5D%2C%22sent_at%22%3A%5B%22string%22%5D%2C%22from_email%22%3A%5B%22string%22%5D%2C%22to_email%22%3A%5B%22string%22%5D%2C%22thread_uuid%22%3A%5B%22string%22%5D%2C%22template_uuid%22%3A%5B%22string%22%5D%2C%22folder%22%3A%5B%22string%22%5D%7D' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'