Skip to main content

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:00Z
    emailstringrequired

    User email address

    Example: john.doe@example.com
    idstring<uuid>required

    Unique user identifier

    Example: 550e8400-e29b-41d4-a716-446655440000
    isActivebooleanrequired

    Whether the account is active

    Example: true
    lastLoginAtstring,null<date-time>nullable

    Timestamp of last login

    Example: 2024-01-15T10:30:00Z
    permissionsstring[]required

    Custom permissions that extend the role's base permissions

    roleUserRole (string)required

    User roles for role-based access control (RBAC)

    Roles define a base set of permissions that users inherit. Custom permissions can be added on top of role permissions (union behavior).

    Possible values: [reader, maintainer, admin]

    updatedAtstring<date-time>required

    Last account update timestamp

    Example: 2024-01-15T10:30:00Z
    usernamestringrequired

    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: 1
    pageSizeinteger<int64>required

    Number of items per page

    Possible values: >= 0

    Example: 50
    totalinteger<int64>required

    Total number of items across all pages

    Possible values: >= 0

    Example: 150
    totalPagesinteger<int64>required

    Total number of pages

    Possible values: >= 0

    Example: 3
    PaginatedResponse_UserDto
    {
    "data": [
    {
    "createdAt": "2024-01-01T00:00:00Z",
    "email": "john.doe@example.com",
    "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
    }