Retrieve Login Report
This report includes the number of login for a given application or across all applications. You must specify a date range for the report. The report is always calculated in hours. if you want to calculate daily logins, you'll need to roll up the results in the response.
Request#
OpenAPI Spec
OpenAPI Spec
OpenAPI Spec
Request Parameters#
applicationIdUUIDoptionalA specific application to query for. If not provided a "Global" (across all applications) login report will be returned.
endLongrequiredThe end of the query range. This is an instant but it is truncated to hours in the report timezone (which is set in the system settings).
startLongrequiredThe start of the query range. This is an instant but it is truncated to hours in the report timezone (which is set in the system settings).
loginIdStringoptionalAvailable since 1.4.0When this parameter is provided it will reduce the scope of the report to a single user. This parameter can be one of the following (see loginIdTypes for information on which of these identifiers will be used):
- Email address
- Phone number (if
phoneNumberis included in loginIdTypes) - Username
This parameter is mutually exclusive with userId, if both are provided, the loginId will take precedence.
loginIdTypesArray<String>optionalDefaults to [email, username]Available since 1.59.0The identity types that FusionAuth will compare the loginId to. Can be one or more of the following:
emailphoneNumberusername
["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.userIdUUIDoptionalAvailable since 1.4.0When this parameter is provided it will reduce the scope of the report to a single user with the requested unique Id.
This parameter is mutually exclusive with loginId, if both are provided, the loginId will take precedence.
Response#
The response for this API contains the login 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 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. |
| 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#
hourlyCountsThe list of login counts.
hourlyCounts[x].intervalIntegerThe interval for this count. The interval values for the login report are the number of hours since Epoch UTC shifted to the report timezone.
hourlyCounts[x].countIntegerThe number of login for this count.
totalIntegerThe total (sum) of each count across the query range.
Example Response JSON
{
"total": 100,
"hourlyCounts": [
{
"interval": 401824,
"count": 60
},
{
"interval": 401825,
"count": 40
}
]
}