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

# List reports

> Retrieve a paginated list of published CLO reports with optional filters.



## OpenAPI

````yaml https://www.thereviewport.com/api/swagger.json get /reports
openapi: 3.0.3
info:
  title: The Review Port API
  description: >-
    Public API for accessing CLO reports, trend reports, managers, issuers,
    retention holders, and entities.
  version: 1.0.0
  contact:
    email: support@thereviewport.com
servers:
  - url: https://www.thereviewport.com/api
    description: Production server
security:
  - ApiKeyQuery: []
  - ApiKeyHeader: []
tags:
  - name: Reports
    description: CLO report operations
  - name: Trend Reports
    description: Trend report operations
  - name: Managers
    description: Manager operations
  - name: Issuers
    description: Issuer operations
  - name: Holders
    description: Retention holder operations
  - name: Entities
    description: Entity operations (administrators, arrangers, trustees, etc.)
paths:
  /reports:
    get:
      tags:
        - Reports
      summary: List reports
      description: >-
        Retrieve a paginated list of published CLO reports with optional
        filters.
      operationId: listReports
      parameters:
        - $ref: '#/components/parameters/PageParam'
        - $ref: '#/components/parameters/PageSizeParam'
        - name: q
          in: query
          description: Text search query
          schema:
            type: string
        - name: region
          in: query
          description: Filter by region
          schema:
            type: string
        - name: issueType
          in: query
          description: Filter by issue type
          schema:
            type: string
        - name: issueVersion
          in: query
          description: Filter by issue version
          schema:
            type: string
        - name: tagSlug
          in: query
          description: Filter by tag slug
          schema:
            type: string
        - name: isFeatured
          in: query
          description: Filter by featured status
          schema:
            type: boolean
        - name: fromDate
          in: query
          description: Filter by published date (from)
          schema:
            type: string
            format: date
        - name: toDate
          in: query
          description: Filter by published date (to)
          schema:
            type: string
            format: date
        - name: manager
          in: query
          description: Filter by manager ObjectId
          schema:
            type: string
        - name: managerGuid
          in: query
          description: Filter by manager GUID
          schema:
            type: string
        - name: issuer
          in: query
          description: Filter by issuer ObjectId
          schema:
            type: string
        - name: issuerGuid
          in: query
          description: Filter by issuer GUID
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  meta:
                    $ref: '#/components/schemas/PaginationMeta'
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/ReportSummary'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  parameters:
    PageParam:
      name: page
      in: query
      description: Page number (1-indexed)
      schema:
        type: integer
        minimum: 1
        default: 1
    PageSizeParam:
      name: pageSize
      in: query
      description: Number of items per page
      schema:
        type: integer
        minimum: 1
        maximum: 100
        default: 20
  schemas:
    PaginationMeta:
      type: object
      properties:
        page:
          type: integer
        pageSize:
          type: integer
        total:
          type: integer
        totalPages:
          type: integer
        hasNextPage:
          type: boolean
    ReportSummary:
      type: object
      properties:
        guid:
          type: string
        title:
          type: string
        summary:
          type: string
          nullable: true
        publishedDate:
          type: string
          format: date-time
        region:
          type: string
          nullable: true
        issueType:
          type: string
          nullable: true
        issueVersion:
          type: string
          nullable: true
        isFeatured:
          type: boolean
        images:
          $ref: '#/components/schemas/Images'
        manager:
          type: object
          nullable: true
          properties:
            guid:
              type: string
            name:
              type: string
            logo:
              type: string
              nullable: true
        issuer:
          type: object
          nullable: true
          properties:
            guid:
              type: string
            name:
              type: string
            logo:
              type: string
              nullable: true
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
        links:
          $ref: '#/components/schemas/ReportLinks'
    Images:
      type: object
      properties:
        header:
          type: string
          nullable: true
        thumbnail:
          type: string
          nullable: true
    Tag:
      type: object
      properties:
        id:
          type: string
          nullable: true
        label:
          type: string
          nullable: true
        slug:
          type: string
          nullable: true
    ReportLinks:
      type: object
      properties:
        self:
          type: string
        web:
          type: string
        embed:
          type: string
    Error:
      type: object
      properties:
        error:
          type: string
      required:
        - error
  responses:
    Unauthorized:
      description: API key missing or invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: >-
              API key required. Provide via query ?apiKey=... or header
              x-api-key.
    Forbidden:
      description: Access to resource not permitted
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Access to reports is not permitted for this API key.
    RateLimited:
      description: Rate limit exceeded
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Rate limit exceeded. Try again later.
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: apiKey
      description: API key passed as query parameter
    ApiKeyHeader:
      type: apiKey
      in: header
      name: x-api-key
      description: API key passed as header

````