> For the complete documentation index, see [llms.txt](https://fusionauth.io/docs/llms.txt)

# Retrieve Monthly Active Users Report

API documentation for the FusionAuth Retrieve Monthly Active Users Report API.

# Retrieve Monthly Active Users Report

This report includes the number of monthly active users for a given application or across all applications. You must specify a date range for the report. The report is always calculated using months as the interval.

### Request

[!Global API Key Authentication](https://fusionauth.io/docs/apis/authentication.md#global-api-key-authentication)

Retrieve the monthly active users report

GET/api/report/monthly-active-user?start={start}&end={end}&applicationId={applicationId}

OpenAPI Spec

#### Request Parameters

`applicationId`UUIDoptional

A specific application to query for. If not provided a "Global" (across all applications) monthly active users report will be returned.

`end`Longrequired

The end of the query range. This is an [instant](https://fusionauth.io/docs/reference/data-types.md#instants) but it is truncated to months in the report timezone (which is set in the system settings).

`start`Longrequired

The start of the query range. This is an [instant](https://fusionauth.io/docs/reference/data-types.md#instants) but it is truncated to months in the report timezone (which is set in the system settings).

`loginIdTypes`Array<String>optionalDefaults to \[email, username\]Available since 1.59.0

The identity types that FusionAuth will compare the **loginId** to. Can be one or more of the following:

*   `email`
*   `phoneNumber`
*   `username`

note

The order is significant. If `["email", "username"]` is supplied with a **loginId** value of `terry@example.com`, then a user with `terry@example.com` as their email address will match first before any user with `terry@example.com` as their username.

### Response

The response for this API contains the monthly active users report.

*Response Codes*

| Code | Description |
| --- | --- |
| 200 | The request was successful. The response will contain a JSON body. |
| 400 | The request was invalid and/or malformed. The response will contain an [Errors](https://fusionauth.io/docs/apis/errors.md) JSON Object with the specific errors. This status will also be returned if a paid FusionAuth license is required and is not present. |
| 401 | You did not supply a valid Authorization header. The header was omitted or your API key was not valid. The response will be empty. See [Authentication](https://fusionauth.io/docs/apis/authentication.md). |
| 404 | The object you requested doesn't exist. The response will be empty. |
| 500 | There was an internal error. A stack trace is provided and logged in the FusionAuth log files. The response will be empty. |
| 503 | The search index is not available or encountered an exception so the request cannot be completed. The response will contain a JSON body. |

#### Response Body

`monthlyActiveUsers`

The list of monthly active users counts.

`monthlyActiveUsers[x].interval`Integer

The interval for this count. The interval values for the monthly active users report are the number of months since Epoch UTC shifted to the report timezone.

`monthlyActiveUsers[x].count`Integer

The number of monthly active users for this count.

`total`Integer

The total (sum) of each count across the query range.

*Example Response JSON*

```json
{
  "total": 39,
  "monthlyActiveUsers": [
    {
      "count": 10,
      "interval": 543
    },
    {
      "count": 10,
      "interval": 544
    },
    {
      "count": 10,
      "interval": 545
    },
    {
      "count": 9,
      "interval": 546
    }
  ]
}
```