> For the complete documentation index, see [llms.txt](https://help.recart.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.recart.com/developers/public-api/flow/statistics-view-of-the-sites-flows-and-campaigns.md).

# Statistics view of the site's flows and campaigns

Account-level SMS statistics — the numbers behind the Automated Flows overview and the Campaigns list. `name` picks the view. When the date range is omitted it defaults to the last 7 days.

`sms-summary` returns one statistics object for the SMS channel; `tags` narrows it — `automated` for the Automated Flows header, `blast` for the Campaigns header, or omit `tags` for the whole channel. It carries no `recipients` and no `revenuePerRecipient`: the channel total has no first-message cohort — RPM (`revenuePerMessage`) is the per-message figure here, as on the dashboard header. For the Campaigns header's Recipients and RPR read the `blast` entry of `flow-groups-summary`.

`flow-groups-summary` returns one entry per flow group — the dashboard's categories (e.g. `default-welcome`, `abandonment`, `receipt`, `fulfillment`, `back-in-stock`), each integration tag the site uses, and `blast` for campaigns.

`automated-flows-summary` returns one entry per automated flow of the site — its `flowId`, `name` and statistics; a flow without sends in the range is still present, with zeros. `tags` narrows it to a category.

`campaign-flows-summary` returns one entry per campaign with activity in the range — the campaign's `flowId`, `name` and statistics. Because every entry names its own flow, no separate list call is needed to label the rows.

Every view is a range total.

```json
{"openapi":"3.1.0","info":{"title":"Recart API","version":"2023-12"},"tags":[{"name":"Flow","description":"Flows"}],"servers":[{"url":"https://api.recart.com/app-integrations/2023-12","description":"Production"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-Recart-API-Key","description":"It can be obtained in Recart account after contacting Support"}},"schemas":{"FlowViews":{"type":["object"],"required":["type","attributes"],"properties":{"type":{"type":"string","enum":["flow-views"]},"attributes":{"type":"object","description":"The requested view's data under its name — exactly one key per\nrequest.\n","minProperties":1,"properties":{"sms-summary":{"description":"SMS channel totals for the range, optionally narrowed by tags","$ref":"#/components/schemas/FlowStatistics"},"flow-groups-summary":{"type":"array","description":"Totals per flow group, campaigns included as blast","items":{"$ref":"#/components/schemas/FlowGroupStatisticsItem"}},"automated-flows-summary":{"type":"array","description":"Totals per automated flow of the site","items":{"$ref":"#/components/schemas/AutomatedFlowStatisticsItem"}},"campaign-flows-summary":{"type":"array","description":"Totals per campaign with activity in the range","items":{"$ref":"#/components/schemas/CampaignFlowStatisticsItem"}}}}}},"FlowStatistics":{"type":"object","description":"Range totals of one flow, campaign, group or message — the same\nnumbers as the dashboard. Rates with a zero denominator are 0.\nAmounts are keyed by ISO 4217 code: USD always, the store currency\nadditionally when it is not USD.\n\nrecipients and revenuePerRecipient are present on every view except\nsms-summary: the SMS channel total is aggregated without the\nfirst-message cohort that defines recipients, and its sent counts\nevery message of every flow, so the number cannot be derived from\nit. The dashboard's Automated Flows header, built on the same data,\nshows RPM and no recipients for the same reason. Where the\ndashboard shows Recipients and RPR — the Campaigns header — read\nthe blast entry of flow-groups-summary.\n","required":["sent","clicked","clickRate","converted","sales","spent","roi","optOutRate","spamRate","revenuePerMessage"],"properties":{"sent":{"type":"integer","description":"SMS and MMS messages sent"},"recipients":{"type":"integer","description":"Subscribers who received the flow's first message. Present on\nflow-groups-summary, automated-flows-summary,\ncampaign-flows-summary, flow-summary and flow-items-summary\n(where it equals the item's sent — a message reaches a subscriber\nat most once); absent on sms-summary.\n"},"clicked":{"type":"integer","description":"Clicks on a link in one of the flow's messages"},"clickRate":{"type":"number","description":"Clicks / sent"},"converted":{"type":"integer","description":"Attributed orders"},"sales":{"type":"object","additionalProperties":{"type":"number"},"description":"Attributed order value per currency (ISO 4217 code)"},"spent":{"type":"object","additionalProperties":{"type":"number"},"description":"SMS and MMS cost per currency (ISO 4217 code)"},"roi":{"type":"number","description":"sales.USD / spent.USD"},"optOutRate":{"type":"number","description":"Opt-outs attributed to the flow / recipients"},"spamRate":{"type":"number","description":"Carrier spam rejections / sent"},"revenuePerRecipient":{"type":"number","description":"sales.USD / recipients — the dashboard's RPR. Present wherever\nrecipients is; absent on sms-summary. Equals revenuePerMessage\non flow-items-summary.\n"},"revenuePerMessage":{"type":"number","description":"sales.USD / sent — the dashboard's RPM"}}},"FlowGroupStatisticsItem":{"allOf":[{"type":"object","required":["group"],"properties":{"group":{"type":"string","description":"Flow group tag"}}},{"$ref":"#/components/schemas/FlowStatistics"}]},"AutomatedFlowStatisticsItem":{"allOf":[{"type":"object","required":["flowId","name"],"properties":{"flowId":{"type":"string","description":"ID of the automated flow"},"name":{"type":"string","description":"Name of the automated flow"}}},{"$ref":"#/components/schemas/FlowStatistics"}]},"CampaignFlowStatisticsItem":{"allOf":[{"type":"object","required":["flowId","name"],"properties":{"flowId":{"type":"string","description":"The campaign's flow id"},"name":{"type":"string","description":"Name of the campaign"}}},{"$ref":"#/components/schemas/FlowStatistics"}]},"HttpErrorBody":{"type":"object","required":["errors"],"properties":{"errors":{"type":"array","items":{"type":"object","required":["id","code","title","detail"],"properties":{"id":{"type":"string"},"code":{"type":"string"},"title":{"type":"string"},"detail":{"type":"string"}}}}}}},"responses":{"HttpError":{"description":"HTTP Error response","content":{"application/vnd.api+json":{"schema":{"$ref":"#/components/schemas/HttpErrorBody"}}}}}},"paths":{"/flows/views/{name}":{"get":{"summary":"Statistics view of the site's flows and campaigns","tags":["Flow"],"operationId":"getFlowsView","description":"Account-level SMS statistics — the numbers behind the Automated\nFlows overview and the Campaigns list. `name` picks the view. When\nthe date range is omitted it defaults to the last 7 days.\n\n`sms-summary` returns one statistics object for the SMS channel;\n`tags` narrows it — `automated` for the Automated Flows header,\n`blast` for the Campaigns header, or omit `tags` for the whole\nchannel. It carries no `recipients` and no `revenuePerRecipient`:\nthe channel total has no first-message cohort — RPM\n(`revenuePerMessage`) is the per-message figure here, as on the\ndashboard header. For the Campaigns header's Recipients and RPR\nread the `blast` entry of `flow-groups-summary`.\n\n`flow-groups-summary` returns one entry per flow group — the\ndashboard's categories (e.g. `default-welcome`, `abandonment`,\n`receipt`, `fulfillment`, `back-in-stock`),\neach integration tag the site uses, and `blast` for campaigns.\n\n`automated-flows-summary` returns one entry per automated flow of\nthe site — its `flowId`, `name` and statistics; a flow without\nsends in the range is still present, with zeros. `tags` narrows it\nto a category.\n\n`campaign-flows-summary` returns one entry per campaign with\nactivity in the range — the campaign's `flowId`, `name` and\nstatistics. Because every entry names its own flow, no separate\nlist call is needed to label the rows.\n\nEvery view is a range total.\n","parameters":[{"name":"name","in":"path","required":true,"description":"The view to return","schema":{"type":"string","enum":["sms-summary","flow-groups-summary","automated-flows-summary","campaign-flows-summary"]}},{"name":"dateFrom","in":"query","description":"First day of the range, inclusive (YYYY-MM-DD, UTC).\nDefaults to 7 days before `dateTo`. Must not be older than\n18 months — the API does not serve older data, and an older\n`dateFrom` returns 400.\n","schema":{"type":"string","format":"date"}},{"name":"dateTo","in":"query","description":"Last day of the range, inclusive — `dateTo=2026-08-31` includes\nthe whole of 2026-08-31 (UTC). Defaults to today.\n","schema":{"type":"string","format":"date"}},{"name":"tags","in":"query","description":"sms-summary and automated-flows-summary only — flow tags; a\nflow must carry all of them. `sms` is always applied.\n","schema":{"type":"array","items":{"type":"string"}}}],"responses":{"200":{"description":"Ok","content":{"application/vnd.api+json":{"schema":{"type":"object","properties":{"data":{"description":"Always one resource of type flow-views; attributes\nholds the requested view under its name.\n","$ref":"#/components/schemas/FlowViews"}}}}}},"4XX":{"$ref":"#/components/responses/HttpError"},"5XX":{"$ref":"#/components/responses/HttpError"}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.recart.com/developers/public-api/flow/statistics-view-of-the-sites-flows-and-campaigns.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
