PaginatedResponse_UserDto
Generic paginated response wrapper with HATEOAS links
data object[]required
The data items for this page
Array [
createdAtstring<date-time>required
Account creation timestamp
Example:
2024-01-01T00:00:00Zidstring<uuid>required
Unique user identifier
Example:
550e8400-e29b-41d4-a716-446655440000isActivebooleanrequired
Whether the account is active
Example:
truelastLoginAt(string | null)<date-time>nullable
Timestamp of last login
Example:
2024-01-15T10:30:00Zpermissionsstring[]required
Custom permissions that extend the role's base permissions
roleUserRolerequired
User role (reader, maintainer, admin)
Possible values: [reader, maintainer, admin]
updatedAtstring<date-time>required
Last account update timestamp
Example:
2024-01-15T10:30:00Zusernamestringrequired
Username for login
Example:
johndoe]
links objectrequired
HATEOAS navigation links
firststringrequired
Link to the first page
laststringrequired
Link to the last page
nextstring | nullnullable
Link to the next page (null if on last page)
prevstring | nullnullable
Link to the previous page (null if on first page)
selfstringrequired
Link to the current page
pageinteger<int64>required
Current page number (1-indexed)
Possible values: >= 0
Example:
1pageSizeinteger<int64>required
Number of items per page
Possible values: >= 0
Example:
50totalinteger<int64>required
Total number of items across all pages
Possible values: >= 0
Example:
150totalPagesinteger<int64>required
Total number of pages
Possible values: >= 0
Example:
3PaginatedResponse_UserDto
{
"data": [
{
"createdAt": "2024-01-01T00:00:00Z",
"id": "550e8400-e29b-41d4-a716-446655440000",
"isActive": true,
"lastLoginAt": "2024-01-15T10:30:00Z",
"permissions": [
"string"
],
"role": "reader",
"updatedAt": "2024-01-15T10:30:00Z",
"username": "johndoe"
}
],
"links": {
"first": "string",
"last": "string",
"next": "string",
"prev": "string",
"self": "string"
},
"page": 1,
"pageSize": 50,
"total": 150,
"totalPages": 3
}