> ## Documentation Index
> Fetch the complete documentation index at: https://docs.salesive.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Developer analytics

> Installs, uninstalls, active installs, API calls and errors, webhook health, ratings and revenue for one of your apps.

## Authentication

This route is for the **app owner's merchant session**, never an `app_` token:

```http theme={null}
Authorization: Bearer <merchant-session-token>
```

```http theme={null}
GET /api/v1/apps/developer/:id/analytics?days=30
```

`days` is a whole number from 1 to 365. It defaults to 30, and an unparseable value also falls back
to 30. The window is UTC days ending today.

## Response

```json theme={null}
{
  "status": 200,
  "success": true,
  "message": "Analytics",
  "data": {
    "range": { "days": 30, "from": "2026-10-09", "to": "2026-11-07" },
    "installs": 42,
    "uninstalls": 7,
    "activeInstalls": 128,
    "apiCalls": 18420,
    "apiErrors": 96,
    "webhookDeliveries": 2310,
    "webhookFailures": 18,
    "apiUsage": [
      { "date": "2026-10-09", "calls": 512, "errors": 3 }
    ],
    "days": 30,
    "from": "2026-10-09",
    "to": "2026-11-07",
    "series": [
      { "date": "2026-10-09", "installs": 2, "uninstalls": 0, "active": 93 }
    ],
    "totals": {
      "installs": 42,
      "uninstalls": 7,
      "netGrowth": 35,
      "activeNow": 128,
      "activeAtStart": 93,
      "churnRate": 0.08
    },
    "ratings": {
      "average": 4.6,
      "count": 31,
      "distribution": { "1": 1, "2": 1, "3": 3, "4": 9, "5": 17 },
      "inWindow": { "count": 4, "average": 4.8 }
    },
    "revenue": [
      {
        "currency": "USD",
        "charges": 12,
        "gross": 240,
        "platformFee": 12,
        "net": 228,
        "series": [{ "date": "2026-10-09", "gross": 0, "net": 0 }]
      }
    ]
  }
}
```

## The headline fields

| Field | Meaning |
| - | - |
| `installs` | Install events in the window. Test installs are excluded. |
| `uninstalls` | Uninstall events in the window. Test installs are excluded. |
| `activeInstalls` | Live active installs right now. Test installs are excluded. |
| `apiCalls` | Every Apps API request made with this app's tokens in the window. |
| `apiErrors` | Requests that answered `4xx` or `5xx` in the window. |
| `webhookDeliveries` | Delivery attempts in the window, from the delivery log. |
| `webhookFailures` | Failed attempts in the window. |

`apiCalls` and `apiErrors` come from per app, per UTC day counters with a **40 day** retention.
Days older than 40 days read as zero, so a 365 day window shows API usage for its last 40 days
only. When the counter store is unavailable the response reports zeroes rather than an estimate.

`webhookDeliveries` and `webhookFailures` come from the [delivery log](https://docs.salesive.com/apps-api/webhook-deliveries.md),
which keeps **14 days** of rows. A longer window therefore covers only the last 14 days of webhook
history.

## The daily series

* `series` is one row per UTC day, oldest first: `installs`, `uninstalls` and the live `active`
  count at the end of that day. The active series is exact over the window because it is derived
  from the live count and the net change after each day.
* `totals.churnRate` is the share of the installs active at the start of the window that were
  removed during it. It is `null` when nothing was active to churn.
* `ratings.distribution` always has the five keys `1` to `5`. `inWindow` counts reviews updated in
  the window.
* `revenue` is one entry per currency. Amounts are never converted: an app paid in USD and NGN gets
  two entries. Test charges are excluded.

## Errors

| Status | Meaning |
| - | - |
| `404` | No app with that id belongs to the signed-in developer. |

## Next steps

> [card] [Webhook deliveries](https://docs.salesive.com/apps-api/webhook-deliveries.md)
>
> See the attempts behind the webhook numbers.

> [card] [Releases](https://docs.salesive.com/apps-api/releases.md)
>
> Stage a change and watch its effect on installs.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.