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

# List brand report annotations

> Returns every annotation on the brand report, notes and recommendation markers, most recently created first. Send `startDate` and `endDate` together to return only annotations dated in that range (inclusive), ordered by annotation date, latest first; a lone bound or a `startDate` after `endDate` is a 400. Annotations may not show in the dashboard until annotations are enabled there for your account; they are stored and returned by the API either way.



## OpenAPI

````yaml https://data.otterly.ai/v1/openapi.json get /v1/reports/brand/{reportId}/annotations
openapi: 3.0.0
info:
  title: Otterly Public API
  version: 1.0.0
servers:
  - url: https://data.otterly.ai
security: []
tags:
  - name: Engines
  - name: Workspaces
  - name: Tags
  - name: Prompts
  - name: Brand Reports
  - name: Competitors
  - name: Audits
  - name: Accounts
paths:
  /v1/reports/brand/{reportId}/annotations:
    get:
      tags:
        - Brand Reports
      summary: List brand report annotations
      description: >-
        Returns every annotation on the brand report, notes and recommendation
        markers, most recently created first. Send `startDate` and `endDate`
        together to return only annotations dated in that range (inclusive),
        ordered by annotation date, latest first; a lone bound or a `startDate`
        after `endDate` is a 400. Annotations may not show in the dashboard
        until annotations are enabled there for your account; they are stored
        and returned by the API either way.
      parameters:
        - schema:
            type: string
            minLength: 1
            example: 01HX7K2YV9D3M8N0G6Q5R4S3T2
            description: Brand report identifier.
          required: true
          description: Brand report identifier.
          name: reportId
          in: path
        - schema:
            type: string
            description: >-
              Optional. First day to include (inclusive), YYYY-MM-DD. Send
              together with `endDate`.
            example: '2025-04-01'
          required: false
          description: >-
            Optional. First day to include (inclusive), YYYY-MM-DD. Send
            together with `endDate`.
          name: startDate
          in: query
        - schema:
            type: string
            description: >-
              Optional. Last day to include (inclusive), YYYY-MM-DD. Send
              together with `startDate`.
            example: '2025-04-30'
          required: false
          description: >-
            Optional. Last day to include (inclusive), YYYY-MM-DD. Send together
            with `startDate`.
          name: endDate
          in: query
      responses:
        '200':
          description: The annotations on the brand report.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiBrandReportAnnotationsList'
        '400':
          description: Validation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiValidationErrorResponse'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiErrorResponse'
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiErrorResponse'
        '404':
          description: Report not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiErrorResponse'
        '429':
          description: Quota exhausted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiErrorResponse'
      security:
        - BearerAuth: []
components:
  schemas:
    PublicApiBrandReportAnnotationsList:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/PublicApiBrandReportAnnotation'
        paging:
          $ref: '#/components/schemas/PublicApiCursorPageInfo'
      required:
        - items
        - paging
      example:
        items:
          - id: 01HXAN7K2YV9D3M8N0G6Q5R4S3
            brandReportId: 01HXBR1DGM5XY8Z2N3KQ7VAW4P
            date: '2025-04-10'
            type: note
            text: Launched spring running campaign
            createdBy: 4f7a1c2e9b8d4e6f
            createdDate: '2025-04-10T09:15:00.000Z'
            updatedDate: '2025-04-10T09:15:00.000Z'
        paging:
          nextCursor: null
          hasMore: false
    PublicApiValidationErrorResponse:
      type: object
      properties:
        message:
          type: string
        target:
          type: string
        errors:
          type: array
          items:
            type: object
            properties:
              path:
                type: string
              message:
                type: string
              code:
                type: string
            required:
              - path
              - message
              - code
      required:
        - message
        - target
        - errors
      example:
        message: Validation failed
        target: query
        errors:
          - path: country
            message: Required
            code: invalid_type
    PublicApiErrorResponse:
      type: object
      properties:
        message:
          type: string
      required:
        - message
      example:
        message: Report not found
    PublicApiBrandReportAnnotation:
      type: object
      properties:
        id:
          type: string
          minLength: 1
          example: 01HX7K2YV9D3M8N0G6Q5R4S3T2
          description: Annotation identifier.
        brandReportId:
          type: string
          minLength: 1
          example: 01HX7K2YV9D3M8N0G6Q5R4S3T2
          description: Brand report the annotation belongs to.
        date:
          type: string
          description: Marked calendar day, YYYY-MM-DD.
        type:
          type: string
          enum:
            - note
            - recommendation
          description: >-
            `note` for a free-text note; `recommendation` for a recommendation
            marked as done in the app. Only notes can be created or edited
            through the API.
        text:
          type: string
          description: Annotation text.
        recommendationId:
          type: string
          description: >-
            Recommendation the annotation marks. Present only when `type` is
            `recommendation`.
        createdBy:
          type: string
          description: Opaque identifier of the user who created the annotation.
        createdDate:
          type: string
          description: Creation timestamp (ISO 8601).
        updatedDate:
          type: string
          description: Last update timestamp (ISO 8601).
      required:
        - id
        - brandReportId
        - date
        - type
        - text
        - createdBy
        - createdDate
        - updatedDate
      example:
        id: 01HXAN7K2YV9D3M8N0G6Q5R4S3
        brandReportId: 01HXBR1DGM5XY8Z2N3KQ7VAW4P
        date: '2025-04-10'
        type: note
        text: Launched spring running campaign
        createdBy: 4f7a1c2e9b8d4e6f
        createdDate: '2025-04-10T09:15:00.000Z'
        updatedDate: '2025-04-10T09:15:00.000Z'
    PublicApiCursorPageInfo:
      type: object
      properties:
        nextCursor:
          type: string
          nullable: true
        hasMore:
          type: boolean
      required:
        - nextCursor
        - hasMore
      example:
        nextCursor: null
        hasMore: false
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Provide your API key as a Bearer token: `Authorization: Bearer
        YOUR_API_KEY`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.