GenAuth DocsDocuments
Concepts
User Guide
Development Integration
AgentAuth
Metadata
Development Integration
Multi-tenant (beta)
Console Documentation
Multi-tenant Console
Tenant Console
Saas Application Demo
Concepts
User Guide
Development Integration
AgentAuth
Metadata
Development Integration
Multi-tenant (beta)
Console Documentation
Multi-tenant Console
Tenant Console
Saas Application Demo
Old version
Development Integration
  • API

  • SDK

    • Java

      • Installation and use
      • User authentication module

        • Login

        • Logout

        • Manage Token

        • Register

        • User information

        • Account Binding

        • MFA Factor Management

        • User-related resources

          • Get login log
          • Get login application
          • Get applications with access permissions
          • Get tenant list
          • Get role list
          • Get group list
          • Get department list
          • Get authorized resource list
        • Message service

        • Authentication

        • Others

        • OIDC module
        • OAuth module
        • SAML module
        • CAS module
        • Events
      • Management module

    • Node.js

    • Python

  • Error Codes
  1. Development Integration
  2. /
  3. SDK
  4. /
  5. Java
  6. /
  7. User authentication module

  8. /
  9. User-related resources

  10. /
  11. Get login log

¶ Get login log

Update time: 2025-07-23 07:34:21
Edit

This document is automatically generated based on https://github.com/authing/authing-docs-factory based on https://api-explorer.genauth.ai V3 API, and is consistent with API parameters and return results. If this document description is incorrect, please refer to V3 API.

Get login log

¶ Method Name

AuthenticationClient.getLoginHistory

¶ Request Parameters

NameType
Is it required
Default Value
Description
Example Value
appIdstringNo-Application ID, can be filtered based on application ID. Not passed by default. Get login history of all applications.5f6265c67fxxxxae64ec516e
clientIpstringNo-Client IP, can be filtered based on client IP at login. Not passed by default. Get login history of all login IPs.127.0.0.1
successbooleanNo-Yes. Whether login is successful or not. Can be filtered based on whether login is successful or not. Not passed by default. The acquired records contain both successful and failed login history.true
startnumberno-Start time, as a timestamp in milliseconds1660828100000
endnumberno-End time, as a timestamp in milliseconds1660828100000
pagenumberno1Current page number, starting from 11
limitnumberno10Number of pages per page, maximum cannot exceed 50, default is 1010

¶ Sample Code

package test.authentication;

import cn.authing.sdk.java.client.AuthenticationClient;
import cn.authing.sdk.java.dto.GetLoginHistoryRespDto;
import cn.authing.sdk.java.dto.GetMyLoginHistoryDto;
import cn.authing.sdk.java.model.AuthenticationClientOptions;
import cn.authing.sdk.java.util.JsonUtils;

public class GetLoginHistoryTest {
    // Need to be replaced with your GenAuth App ID
    private static final String APP_ID = "AUTHING_APP_ID";
    // Need to be replaced with your GenAuth App Secret
    private static final String APP_SECRET = "AUTHING_APP_SECRET";
    // Need to be replaced with your GenAuth App Host
    private static final String APP_HOST = "AUTHING_APP_HOST";
    // Need to be replaced with your GenAuth Access Token
    private static final String ACCESS_TOKEN = "AUTHING_ACCESS_TOKEN";

    public static void main(String[] args) throws Throwable {
        AuthenticationClientOptions clientOptions = new AuthenticationClientOptions();
        clientOptions.setAppId(APP_ID);
        clientOptions.setAppSecret(APP_SECRET);
        clientOptions.setAppHost(APP_HOST);
        clientOptions.setAccessToken(ACCESS_TOKEN);

        AuthenticationClient client = new AuthenticationClient(clientOptions);

        GetMyLoginHistoryDto reqDto = new GetMyLoginHistoryDto();
        GetLoginHistoryRespDto response = client.getLoginHistory(reqDto);
        System.out.println(JsonUtils.serialize(response));
    }
}

¶ Request Response

Type: GetLoginHistoryRespDto

NameTypeDescription
statusCodenumberBusiness status code. You can use this status code to determine whether the operation is successful. 200 means success.
messagestringDescription
apiCodenumberSegment error code, through which you can get the specific error type (successful request does not return). For a detailed list of error codes, see: API Code List (opens new window)
requestIdstringRequest ID. Returned when the request fails.
dataLoginHistoryPaginatedRespDtoResponse Data

Example Results:

{
  "statusCode": 200,
  "message": "Operation successful",
  "requestId": "934108e5-9fbf-4d24-8da1-c330328abd6c",
  "data": {
    "list": {
      "userId": "xxx",
      "appId": "xxx",
      "appName": "Sample Application",
      "appLoginUrl": "https://example.genauth.ai/login",
      "appLogo": "https://files.authing.co/authing-console/default-app-logo.png",
      "loginAt": "2022-07-03T02:20:30.000Z",
      "clientIp": "127.0.0.1",
      "success": true,
      "errorMessage": "Incorrect account or password",
      "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36",
      "parsedUserAgent": {
        "device": "Desktop",
        "browser": "Chrome",
        "os": "Windows"
      },
      "loginMethod": "loginByEmail",
      "geoip": {
        "location": {
          "lon": 116.3889,
          "lat": 39.9288
        },
        "country_name": "China",
        "country_code2": "CN",
        "country_code3": "CN",
        "region_name": "Beijing",
        "region_code": "BJ",
        "city_name": "Beijing",
        "continent_code": "AS",
        "timezone": "Asia/Shanghai"
      },
      "tenantId": "642c1df417c2d8a80d744c1d"
    }
  }
}

¶ Data Structure

¶ LoginHistoryPaginatedRespDto

NameType
Is it required
Description
Example Value
totalCountnumberYesTotal number of records
listarrayYesRecord list NestedType: LoginHistoryDto.

¶ LoginHistoryDto

NameType
Is it required
Description
Example Value
userIdstringYesUser IDxxx
appIdstringYesApplication IDxxx
appNamestringYesApplication NameSample Application
appLoginUrlstringYesApplication Login Addresshttps://example.genauth.ai/login
appLogostringYesApplication Logohttps://files.authing.co/authing-console/default-app-logo.png
loginAtstringYesLogin time2022-07-03T02:20:30.000Z
clientIpstringYesClient IP used for login127.0.0.1
successbooleanYesYes whether the login was successfultrue
errorMessagestringNoSpecific error message when login failedIncorrect account or password
userAgentstringYesUser AgentMozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36
parsedUserAgentYesParsed User Agent NestedType: ParsedUserAgent.
loginMethodstringYesLogin method usedloginByEmail
geoipYesGeographic location NestedType: GeoIp.
tenantIdstringNoTenant ID642c1df417c2d8a80d744c1d

¶ ParsedUserAgent

NameType
Is it required
Description
Example Value
devicestringYesType of device usedDesktop
browserstringYesBrowser NameChrome
osstringYesOperating SystemWindows

¶ GeoIp

NameType
Is it required
Description
Example Value
locationYesGeographic location Nested Type: GeoIpLocation.
lonnumberYeslongitude116.3889
latnumberYeslatitude39.9288
Previous article: Get bindable MFA authentication factors Next article: Get login application
  • Method Name
  • Request Parameters
  • Sample Code
  • Request Response
  • Data Structure

User identity management

Integrated third-party login
Customized authentication process

Enterprise internal management

Single sign-on
Multi-factor authentication
Permission management

Developer

Development Documentation
GitHub (opens new window)

Company

official@genauth.ai
16th Floor, Building B, Beichen Century Center, Chaoyang District, Beijing (Total)
Room 406, 4th Floor, Block B, No. 200, Tianfu Fifth Street, High-tech Zone, Chengdu (Branch)

© Beijing Steamory Technology Co., Ltd.