| Required role: | super-admin |
| GET | /login-history |
|---|
export class UserLoginHistory
{
public id: number;
public userId: number;
// @StringLength(150)
public userName: string;
// @StringLength(45)
public ipAddress: string;
// @StringLength(500)
public deviceInfo: string;
// @StringLength(50)
public loginStatus: string;
// @StringLength(500)
public failReason: string;
// @Required()
public createdAt: string;
public provider: string;
public constructor(init?: Partial<UserLoginHistory>) { (Object as any).assign(this, init); }
}
export class UserLoginHistoryDto extends UserLoginHistory
{
public failedLoginCount?: number;
public constructor(init?: Partial<UserLoginHistoryDto>) { super(init); (Object as any).assign(this, init); }
}
export class LoginHistoryRespnse implements IResponseRequest
{
public data?: UserLoginHistoryDto[];
public totalRecords: number;
public code: number;
public message: string;
public constructor(init?: Partial<LoginHistoryRespnse>) { (Object as any).assign(this, init); }
}
/** @description Lấy lịch sử đăng nhập */
export class LoginHistoryRequest
{
public userId?: number;
public userName: string;
public startDate?: string;
public endDate?: string;
public page: number;
public limit: number;
public constructor(init?: Partial<LoginHistoryRequest>) { (Object as any).assign(this, init); }
}
TypeScript LoginHistoryRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /login-history HTTP/1.1 Host: etc-api.vsmlab.vn Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<LoginHistoryRespnse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/tvpl.api.ServiceModel">
<Code>0</Code>
<Data xmlns:d2p1="http://schemas.datacontract.org/2004/07/tvpl.data.Models">
<d2p1:UserLoginHistoryDto>
<d2p1:CreatedAt>0001-01-01T00:00:00</d2p1:CreatedAt>
<d2p1:DeviceInfo>String</d2p1:DeviceInfo>
<d2p1:FailReason>String</d2p1:FailReason>
<d2p1:IPAddress>String</d2p1:IPAddress>
<d2p1:Id>0</d2p1:Id>
<d2p1:LoginStatus>String</d2p1:LoginStatus>
<d2p1:Provider>String</d2p1:Provider>
<d2p1:UserId>0</d2p1:UserId>
<d2p1:UserName>String</d2p1:UserName>
<d2p1:FailedLoginCount>0</d2p1:FailedLoginCount>
</d2p1:UserLoginHistoryDto>
</Data>
<Message>String</Message>
<TotalRecords>0</TotalRecords>
</LoginHistoryRespnse>