> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cybedefend.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get container images grouped by repository

> Retrieves container images grouped by repository name, showing all tags within each image. Useful for viewing images with multiple tags (e.g., v1.0.0, latest) as a single entity.



## OpenAPI

````yaml get /project/{projectId}/results/container/images/grouped
openapi: 3.0.0
info:
  title: Cybedefend API
  description: >-
    CybeDefend is an advanced API for application security analysis. Key
    features include OAuth 2.0 authentication, user/organization/project
    management, and REBAC-based permissions. It excels in static, dynamic, and
    IaC security analyses (SAST, DAST, IaC, etc.).
  version: '1.0'
  contact: {}
servers:
  - url: https://api-eu.cybedefend.com
    description: EU
  - url: https://api-us.cybedefend.com
    description: US
security: []
tags: []
paths:
  /project/{projectId}/results/container/images/grouped:
    get:
      tags:
        - Results & Vulnerabilities
      summary: Get container images grouped by repository
      description: >-
        Retrieves container images grouped by repository name, showing all tags
        within each image. Useful for viewing images with multiple tags (e.g.,
        v1.0.0, latest) as a single entity.
      operationId: ResultController_getGroupedContainerImages
      parameters:
        - name: projectId
          required: true
          in: path
          description: Project identifier
          schema:
            format: uuid
            type: string
        - name: page
          required: false
          in: query
          description: Page number (starts from 1)
          schema:
            minimum: 1
            example: 1
            type: number
        - name: limit
          required: false
          in: query
          description: Number of items per page
          schema:
            minimum: 1
            maximum: 100
            example: 20
            type: number
        - name: branch
          required: false
          in: query
          description: Branch name to filter container images
          schema:
            example: main
            type: string
        - name: sort
          required: false
          in: query
          description: Sort field
          schema:
            example: latestScanAt
            type: string
            enum:
              - repositoryName
              - tagCount
              - latestScanAt
        - name: order
          required: false
          in: query
          description: Sort order
          schema:
            example: DESC
            type: string
            enum:
              - ASC
              - DESC
        - name: searchQuery
          required: false
          in: query
          description: Search query for repository name
          schema:
            example: nginx
            type: string
      responses:
        '200':
          description: Grouped container images retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetGroupedContainerImagesResponseDto'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                example:
                  message: Unauthorized
                  statusCode: 401
                  timestamp: '2025-02-18T12:31:18.491Z'
                  path: /example/path
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                example:
                  message: Forbidden
                  statusCode: 403
                  timestamp: '2025-02-18T12:31:18.491Z'
                  path: /example/path
components:
  schemas:
    GetGroupedContainerImagesResponseDto:
      type: object
      properties:
        projectName:
          type: string
          description: Project name
        groupedImages:
          description: Container images grouped by repository
          type: array
          items:
            $ref: '#/components/schemas/GroupedContainerImageDto'
        totalRepositories:
          type: number
          description: Total number of unique repositories
        totalTags:
          type: number
          description: Total number of tags across all repositories
        totalPages:
          type: number
          description: Total number of pages
        currentPage:
          type: number
          description: Current page number
        pageSize:
          type: number
          description: Number of items per page
      required:
        - projectName
        - groupedImages
        - totalRepositories
        - totalTags
        - totalPages
        - currentPage
        - pageSize
    ErrorDto:
      type: object
      properties:
        timestamp:
          type: string
          example: '2025-02-18T12:31:18.491Z'
          description: Timestamp of the error
        service:
          type: string
          example: AiService
          description: Name of the service where the error occurred
        method:
          type: string
          example: startConversation
          description: Method name where the error occurred
        message:
          type: string
          example: Invalid parameters provided
          description: Error message
        code:
          type: number
          example: 400
          description: HTTP status code
          minimum: 100
          maximum: 599
      required:
        - timestamp
        - service
        - method
        - message
        - code
    GroupedContainerImageDto:
      type: object
      properties:
        repositoryName:
          type: string
          description: Repository name without tag
          example: registry.gitlab.com/group/project
        projectId:
          type: string
          description: Project identifier
        osFamily:
          type: string
          description: Operating system family
          example: debian
        osName:
          type: string
          description: Operating system name
          example: Debian GNU/Linux 11
        branch:
          type: string
          description: Branch that was scanned
          example: main
        tagCount:
          type: number
          description: Number of different tags for this repository
          example: 3
        tags:
          description: All tags for this repository
          type: array
          items:
            $ref: '#/components/schemas/ContainerImageTagDto'
        aggregatedVulnCounts:
          description: Aggregated vulnerability counts across all tags
          allOf:
            - $ref: '#/components/schemas/VulnCountsDto'
        latestScanAt:
          type: string
          description: Most recent scan date across all tags (ISO 8601)
          example: '2024-01-15T10:30:00.000Z'
      required:
        - repositoryName
        - projectId
        - osFamily
        - osName
        - branch
        - tagCount
        - tags
        - aggregatedVulnCounts
        - latestScanAt
    ContainerImageTagDto:
      type: object
      properties:
        id:
          type: string
          description: Original image entity ID
        tag:
          type: string
          description: Tag extracted from artifact name
          example: v1.0.0
        scanId:
          type: string
          description: Scan ID associated with this tag
        createdAt:
          type: string
          description: Creation timestamp (ISO 8601)
        updatedAt:
          type: string
          description: Last update timestamp (ISO 8601)
        vulnCounts:
          description: Vulnerability counts for this specific tag
          allOf:
            - $ref: '#/components/schemas/VulnCountsDto'
      required:
        - id
        - tag
        - scanId
        - createdAt
        - updatedAt
        - vulnCounts
    VulnCountsDto:
      type: object
      properties:
        critical:
          type: number
        high:
          type: number
        medium:
          type: number
        low:
          type: number
        unknown:
          type: number
      required:
        - critical
        - high
        - medium
        - low
        - unknown

````