/filters/systems - Get aggregated system filters

GET /filters/systems

Aggregated endpoint that returns all system filter data in a single request. Auth is checked once, then products, created_by, versions, and organizations are fetched in parallel. Respects RBAC hierarchy - users only see data from systems they can access.

Version Format: Returns versions in prefixed format product:version (e.g., "nsec:1.2.3", "ns8:1.2.3") to avoid ambiguity when the same version number exists for multiple products.

Responses

  • 200 application/json

    System filters retrieved successfully

    Hide response attributes Show response attributes object
    • code integer
    • message string
    • data object
      Hide data attributes Show data attributes object
      • products array[string]

        List of unique product names (system types)

      • created_by array[object]

        List of users who created systems

        Hide created_by attributes Show created_by attributes object
        • user_id string

          User logto_id from created_by JSONB field (not UUID)

        • name string

          User full name from created_by JSONB field

        • email string

          User email from created_by JSONB field

      • versions array[object]

        Versions grouped by product type

        Hide versions attributes Show versions attributes object
        • product string

          Product type name

        • versions array[string]

          List of versions in prefixed format (product:version)

      • organizations array[object]

        List of organizations with systems

        Hide organizations attributes Show organizations attributes object
        • id string

          Organization logto_id (not UUID)

        • name string

          Organization name

  • 401 application/json

    Unauthorized - invalid or missing token

    Hide response attributes Show response attributes object
    • code integer
    • message string
    • data object | null
  • 403 application/json

    Forbidden - insufficient permissions

    Hide response attributes Show response attributes object
    • code integer
    • message string
    • data object | null
GET /filters/systems
curl \
 --request GET 'https://api.your-domain.com/api/filters/systems' \
 --header "Authorization: Bearer $ACCESS_TOKEN"
Response examples (200)
{
  "code": 200,
  "data": {
    "products": [
      "NethSecurity",
      "NethServer"
    ],
    "versions": [
      {
        "product": "nsec",
        "versions": [
          "nsec:8.6.0",
          "nsec:8.5.2"
        ]
      },
      {
        "product": "ns8",
        "versions": [
          "ns8:1.2.3",
          "ns8:1.1.0"
        ]
      }
    ],
    "created_by": [
      {
        "name": "Company Owner",
        "email": "owner@example.com",
        "user_id": "pnqjmgmk937x"
      }
    ],
    "organizations": [
      {
        "id": "ug9v4l0m6mwt",
        "name": "Cust3"
      },
      {
        "id": "guwy6opsll17",
        "name": "Owner"
      }
    ]
  },
  "message": "system filters retrieved successfully"
}
Response examples (401)
{
  "code": 401,
  "message": "invalid token",
  "data": {}
}
Response examples (403)
{
  "code": 403,
  "message": "insufficient permissions",
  "data": {}
}