In-app statistics
هذا المحتوى غير متوفر بلغتك بعد.
Two methods return statistics for instant in-app campaigns. Use inapps:totals for period totals across one or more campaigns, and inapps:timeline for a time series of a single campaign. The values match the in-app statistics screen in the Control Panel.
Metrics
Anchor link to| Field | Type | Description |
|---|---|---|
impressions | number | How many times the in-app was displayed. Labeled Impressions in the Control Panel. |
unique_impressions | number | Number of unique devices the in-app was displayed to. |
interactions | number | Interactions with the in-app content: button clicks, link clicks and form submits. |
unique_interactions | number | Number of unique devices that interacted with the in-app. |
skips | number | How many times users dismissed the in-app without interacting. |
audience | number | Number of unique devices that produced any in-app event in the period. |
inapps:totals
Anchor link toReturns totals for the period. Pass inapp_codes to report on specific campaigns, or omit it to walk every in-app of the application page by page. That is the method to use for a scheduled export.
POST https://api.pushwoosh.com/api/v2/statistics/inapps:totals
Headers
Anchor link to| Name | Required | Description |
|---|---|---|
Authorization | Yes | Server API token in the format Authorization: Api <Server Key>. |
Request body parameters
Anchor link to| Name | Required | Type | Description |
|---|---|---|---|
application | Yes | String | Application code. |
date_range | Yes | Object | Reporting period. date_from and date_to use the YYYY-MM-DD format and are inclusive. The period is counted in UTC and must not exceed 366 days. |
inapp_codes | No | Array | In-app codes, up to 100 per request. Omit to report on all in-apps of the application. If any code in the list does not belong to the application, the whole request fails with 404. |
platforms | No | Array | Restrict the metrics to these platforms. Possible values: "IOS", "ANDROID", "HUAWEI_ANDROID", "AMAZON", "OSX", "WINDOWS", "SAFARI", "CHROME", "FIREFOX", "WEB". |
with_platforms | No | Boolean | Add a per-platform breakdown to every item. |
page | No | Integer | Page number, starting at 0. Applies when inapp_codes is omitted. |
per_page | No | Integer | Items per page, 20 by default, 100 at most. |
Example request
Anchor link tocurl -X POST https://api.pushwoosh.com/api/v2/statistics/inapps:totals \ -H "Authorization: Api YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "application": "XXXXX-XXXXX", "date_range": { "date_from": "2026-07-01", "date_to": "2026-07-31" }, "inapp_codes": ["AAAAA-BBBBB"], "with_platforms": true }'Response fields
Anchor link tototal is the number of in-apps the request matches. When inapp_codes is omitted, that is all in-apps of the application, so pagination can walk it. items holds the current page. page counts from 0.
Example response
Anchor link to{ "total": 1, "page": 0, "per_page": 20, "items": [{ "inapp": { "code": "AAAAA-BBBBB", "name": "Summer sale", "status": "active", "rich_media_code": "CCCCC-DDDDD" }, "metrics": { "impressions": 15230, "unique_impressions": 9120, "interactions": 2311, "unique_interactions": 1980, "skips": 640, "audience": 9120 }, "platforms": [{ "platform": "IOS", "metrics": { "impressions": 8100, "unique_impressions": 4900, "interactions": 1300, "unique_interactions": 1120, "skips": 310, "audience": 4900 } }], "frequency_capping": { "suppressions": 45, "affected_users": 30, "data_available_from": "2026-07-17" } }]}inapps:timeline
Anchor link toReturns period totals and a time series for one in-app campaign.
POST https://api.pushwoosh.com/api/v2/statistics/inapps:timeline
Request body parameters
Anchor link to| Name | Required | Type | Description |
|---|---|---|---|
application | Yes | String | Application code. |
inapp_code | Yes | String | In-app code. |
date_range | Yes | Object | Reporting period. date_from and date_to use the YYYY-MM-DD format and are inclusive. The period is counted in UTC and must not exceed 366 days. Optional interval: "HOUR", "DAY" (default), "WEEK" or "MONTH". "HOUR" is available for periods up to 31 days. |
platforms | No | Array | Restrict the metrics to these platforms. |
with_platforms | No | Boolean | Add a per-platform breakdown to the totals and to every row. |
Example request
Anchor link tocurl -X POST https://api.pushwoosh.com/api/v2/statistics/inapps:timeline \ -H "Authorization: Api YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "application": "XXXXX-XXXXX", "inapp_code": "AAAAA-BBBBB", "date_range": { "date_from": "2026-07-01", "date_to": "2026-07-07", "interval": "DAY" } }'Example response
Anchor link to{ "inapp": { "code": "AAAAA-BBBBB", "name": "Summer sale", "status": "active", "rich_media_code": "CCCCC-DDDDD" }, "totals": { "impressions": 15230, "unique_impressions": 9120, "interactions": 2311, "unique_interactions": 1980, "skips": 640, "audience": 9120 }, "frequency_capping": { "suppressions": 45, "affected_users": 30, "data_available_from": "2026-07-17" }, "rows": [{ "timestamp": "2026-07-01T00:00:00Z", "metrics": { "impressions": 2140, "unique_impressions": 1700, "interactions": 320, "unique_interactions": 290, "skips": 95, "audience": 1700 } }], "impression_duration": [ { "from_seconds": 0, "to_seconds": 5, "count": 3200 }, { "from_seconds": 5, "to_seconds": 15, "count": 5400 }, { "from_seconds": 15, "to_seconds": 30, "count": 4100 }, { "from_seconds": 30, "to_seconds": 0, "count": 2530 } ]}impression_duration buckets how long the in-app stayed on screen. In the last bucket to_seconds is 0, which means “30 seconds and longer”.
Frequency capping
Anchor link toThe frequency_capping block reports in-app displays that frequency capping prevented, and the number of unique users affected. Suppressions are not counted in impressions.
Data retention
Anchor link toStatistics are kept for 365 days, so a period that starts earlier returns no data for the uncovered days.
Response codes
Anchor link to| Code | Meaning |
|---|---|
| 200 | Success. |
| 400 | Invalid request: a missing or malformed date_range, a period longer than 366 days, an hourly interval over more than 31 days, or more than 100 inapp_codes. |
| 401 | Missing or invalid API token. |
| 404 | An in-app code was not found in this application. |