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

# List stored model responses

> Metadata for the model responses stored on a completed or partial run. Pages are ordered by the stored model id. The original text is not included. Pass next_cursor back as cursor. This read does not start research, call a provider, or charge credits.



## OpenAPI

````yaml https://seneca-research.fly.dev/v1/openapi.json get /v1/research/{run_id}/responses
openapi: 3.1.0
info:
  title: Seneca Research API
  version: 0.1.0
  description: >-
    Create a research run, poll it, then read the customer report. Original
    model text is a separate read: list /v1/research/{run_id}/responses, read
    one model at /v1/research/{run_id}/responses/text, or download the panel as
    JSONL from /v1/research/{run_id}/responses/export. Send Authorization:
    Bearer seneca_sk_… Narrative quickstart:
    https://seneca.professionalaiagents.com/api.md
servers:
  - url: https://seneca-research.fly.dev
    description: Production
security: []
paths:
  /v1/research/{run_id}/responses:
    get:
      tags:
        - public-api
      summary: List stored model responses
      description: >-
        Metadata for the model responses stored on a completed or partial run.
        Pages are ordered by the stored model id. The original text is not
        included. Pass next_cursor back as cursor. This read does not start
        research, call a provider, or charge credits.
      operationId: list_research_responses_v1_research__run_id__responses_get
      parameters:
        - name: run_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Run Id
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 20
            title: Limit
        - name: cursor
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Cursor
      responses:
        '200':
          description: One page of model metadata. next_cursor is null on the last page.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicModelResponseList'
        '400':
          description: >-
            invalid_request when limit is outside 1–50 or the run id cannot be
            read. invalid_cursor when cursor cannot be read.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorResponse'
        '401':
          description: >-
            authentication_required when the bearer token is missing or not a
            bearer token. invalid_api_key when the key is unknown, revoked, or
            expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorResponse'
        '404':
          description: run_not_found. Another workspace's run is also run_not_found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorResponse'
        '409':
          description: >-
            responses_not_ready while the run is queued, running, or
            synthesizing. research_failed when the run finished without a
            completed or partial panel.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorResponse'
        '429':
          description: >-
            rate_limit_exceeded. Reads are limited to 120 requests per minute
            per key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorResponse'
        '500':
          description: internal_error. The body does not include a traceback or a secret.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicErrorResponse'
      security:
        - SenecaApiKey: []
components:
  schemas:
    PublicModelResponseList:
      properties:
        object:
          type: string
          const: list
          title: Object
          default: list
        data:
          items:
            $ref: '#/components/schemas/PublicModelResponseSummary'
          type: array
          title: Data
        next_cursor:
          anyOf:
            - type: string
            - type: 'null'
          title: Next Cursor
          description: Pass back as cursor to read the next page. Null on the last page.
      additionalProperties: false
      type: object
      title: PublicModelResponseList
    PublicErrorResponse:
      properties:
        error:
          $ref: '#/components/schemas/PublicErrorObject'
      additionalProperties: false
      type: object
      required:
        - error
      title: PublicErrorResponse
      description: Error envelope returned by every /v1 failure. Documentation model only.
    PublicModelResponseSummary:
      properties:
        model_id:
          type: string
          title: Model Id
          description: Model id stored on this run. A retired model keeps this id.
        display_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Display Name
          description: >-
            Name frozen on the run's panel snapshot. Null when the snapshot has
            none.
        laboratory:
          anyOf:
            - type: string
            - type: 'null'
          title: Laboratory
          description: >-
            Laboratory name frozen on the panel snapshot. Null when the snapshot
            has none.
        status:
          type: string
          title: Status
          description: success, error, or timeout.
        input_tokens:
          anyOf:
            - type: integer
            - type: 'null'
          title: Input Tokens
        output_tokens:
          anyOf:
            - type: integer
            - type: 'null'
          title: Output Tokens
        text_available:
          type: boolean
          title: Text Available
          description: True when original response text is stored.
        text_characters:
          type: integer
          title: Text Characters
          description: Full stored text length in characters. 0 when no text is stored.
      additionalProperties: false
      type: object
      required:
        - model_id
        - status
        - text_available
        - text_characters
      title: PublicModelResponseSummary
      description: One stored panel response without its text.
    PublicErrorObject:
      properties:
        code:
          type: string
          title: Code
        message:
          type: string
          title: Message
        details:
          additionalProperties: true
          type: object
          title: Details
      additionalProperties: false
      type: object
      required:
        - code
        - message
      title: PublicErrorObject
  securitySchemes:
    SenecaApiKey:
      type: http
      description: >-
        Workspace API key created while signed in on the Developers page. Send
        Authorization: Bearer seneca_sk_… A Clerk session token is not accepted.
      scheme: bearer

````

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