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

# List log entries

> Returns log entries from the in-memory ring buffer and, when the page is short, the rotated JSONL log files on disk. Query filters apply to both sources; request payloads are scrubbed of secrets before persistence.



## OpenAPI

````yaml /openapi.json get /logs
openapi: 3.0.0
info:
  title: Cyrnel API
  description: >-
    Cyrnel is a universal layer that connects AI agents and LLM applications to
    any external service, API, or device regardless of protocol or standard. It
    acts as an adaptive bridge between your AI and the outside world, enabling
    seamless integrations through code execution, async operation handling, and
    built-in observability and security controls.
  version: 1.0.0
servers:
  - url: http://localhost:9371
security: []
paths:
  /logs:
    get:
      tags:
        - Logs
      summary: List log entries
      description: >-
        Returns log entries from the in-memory ring buffer and, when the page is
        short, the rotated JSONL log files on disk. Query filters apply to both
        sources; request payloads are scrubbed of secrets before persistence.
      parameters:
        - schema:
            type: integer
            nullable: true
            minimum: 0
          required: false
          name: from
          in: query
        - schema:
            type: integer
            nullable: true
            minimum: 0
          required: false
          name: to
          in: query
        - schema:
            type: string
            enum:
              - trace
              - debug
              - info
              - warn
              - error
              - fatal
          required: false
          name: level
          in: query
        - schema:
            type: string
            enum:
              - trace
              - debug
              - info
              - warn
              - error
              - fatal
          required: false
          name: levelMin
          in: query
        - schema:
            type: string
            enum:
              - app
              - request
              - module
          required: false
          name: type
          in: query
        - schema:
            type: string
            enum:
              - adapter
              - environment
          required: false
          name: moduleType
          in: query
        - schema:
            type: string
            maxLength: 500
            description: Substring filter against the entry message.
          required: false
          description: Substring filter against the entry message.
          name: query
          in: query
        - schema:
            type: string
            maxLength: 200
          required: false
          name: event
          in: query
        - schema:
            type: string
            maxLength: 200
          required: false
          name: requestId
          in: query
        - schema:
            anyOf:
              - type: integer
                minimum: 0
                exclusiveMinimum: true
              - type: string
          required: false
          name: processId
          in: query
        - schema:
            type: string
            maxLength: 200
          required: false
          name: adapterId
          in: query
        - schema:
            type: string
            maxLength: 200
          required: false
          name: serviceId
          in: query
        - schema:
            type: string
            maxLength: 200
          required: false
          name: moduleId
          in: query
        - schema:
            type: string
            maxLength: 200
          required: false
          name: environmentId
          in: query
        - schema:
            type: integer
            minimum: 0
            exclusiveMinimum: true
          required: false
          name: executionId
          in: query
        - schema:
            type: string
            maxLength: 200
          required: false
          name: dispatchId
          in: query
        - schema:
            type: string
            maxLength: 200
          required: false
          name: toolId
          in: query
        - schema:
            type: string
            maxLength: 200
          required: false
          name: phase
          in: query
        - schema:
            type: integer
            minimum: 0
            exclusiveMinimum: true
            maximum: 599
          required: false
          name: statusCode
          in: query
        - schema:
            type: integer
            nullable: true
            minimum: 0
          required: false
          name: durationMin
          in: query
        - schema:
            type: integer
            nullable: true
            minimum: 0
          required: false
          name: durationMax
          in: query
        - schema:
            type: string
            enum:
              - timestamp:asc
              - timestamp:desc
              - duration:asc
              - duration:desc
            description: Sort order; defaults to timestamp:desc.
          required: false
          description: Sort order; defaults to timestamp:desc.
          name: sort
          in: query
        - schema:
            type: string
            maxLength: 2048
            description: >-
              Opaque pagination token returned as nextCursor by the previous
              response. Pass it back unchanged to fetch the next page;
              null/omitted fetches the first page. Cursors encode position, not
              filters, so change filters only between pages when starting over.
          required: false
          description: >-
            Opaque pagination token returned as nextCursor by the previous
            response. Pass it back unchanged to fetch the next page;
            null/omitted fetches the first page. Cursors encode position, not
            filters, so change filters only between pages when starting over.
          name: cursor
          in: query
        - schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 20
            description: >-
              Maximum number of items per page. Clamped to a maximum of 100;
              defaults to 20.
          required: false
          description: >-
            Maximum number of items per page. Clamped to a maximum of 100;
            defaults to 20.
          name: limit
          in: query
      responses:
        '200':
          description: Matching log entries.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LogListResponse'
        '400':
          description: >-
            One or more query parameters could not be parsed, or the cursor is
            invalid or used with a non-timestamp:desc sort.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '401':
          description: A bearer token was required but missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '429':
          description: >-
            Rate limit exceeded. The request was throttled. Check Retry-After
            header.
          headers:
            X-RateLimit-Limit:
              schema:
                type: integer
              description: Maximum requests allowed in the current window.
            X-RateLimit-Remaining:
              schema:
                type: integer
              description: Requests remaining in the current window.
            X-RateLimit-Reset:
              schema:
                type: integer
              description: Unix timestamp when the window resets.
            Retry-After:
              schema:
                type: integer
              description: Seconds to wait before retrying.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitErrorResponse'
        '500':
          description: The log entries could not be retrieved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
components:
  schemas:
    LogListResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/LogEntry'
          description: >-
            Log entries that match the supplied filters, ordered by the
            requested sort.
        nextCursor:
          type: string
          nullable: true
          description: >-
            Opaque cursor for the next page; null when there are no more items.
            Echo it back as the cursor query parameter to continue paginating.
        hasMore:
          type: boolean
          description: >-
            Whether additional pages exist. When true, nextCursor is a valid
            cursor; when false, pagination has reached the end.
      required:
        - items
        - nextCursor
        - hasMore
      description: Paginated collection envelope.
    ApiErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Human-readable error message returned by the API.
        code:
          type: string
          description: >-
            Stable machine-readable error code (e.g. invalid_cursor,
            cursor_expired).
      required:
        - error
      description: Standard error envelope returned by the HTTP error middleware.
    RateLimitErrorResponse:
      type: object
      properties:
        error:
          type: string
          enum:
            - rate_limit_exceeded
          description: Error code identifying rate-limit rejection.
        message:
          type: string
          description: Human-readable message with retry instructions.
        retryAfter:
          type: integer
          minimum: 0
          exclusiveMinimum: true
          description: Number of seconds to wait before retrying.
      required:
        - error
        - message
        - retryAfter
      description: Error body returned when a request is rate-limited (HTTP 429).
    LogEntry:
      type: object
      properties:
        timestamp:
          type: integer
          description: Unix millisecond timestamp of the entry.
        seq:
          type: integer
          description: Per-sink sequence number.
        level:
          type: string
          enum:
            - trace
            - debug
            - info
            - warn
            - error
            - fatal
          description: Log severity level.
        type:
          type: string
          enum:
            - app
            - request
            - module
          description: >-
            Entry category: 'app' for API logs, 'request' for HTTP request logs,
            'module' for module-emitted logs.
        message:
          type: string
          description: Human-readable log message.
        event:
          type: string
          description: Structured event key attached by the caller.
        requestId:
          type: string
        processId:
          anyOf:
            - type: number
            - type: string
        adapterId:
          type: string
        serviceId:
          type: string
        moduleId:
          type: string
        moduleType:
          type: string
          enum:
            - adapter
            - environment
        environmentId:
          type: string
        executionId:
          type: integer
        dispatchId:
          type: string
        toolId:
          type: string
        pid:
          type: integer
          description: Process id that emitted the entry.
        phase:
          type: string
        method:
          type: string
        path:
          type: string
        statusCode:
          type: integer
        durationMs:
          type: number
        req:
          type: object
          additionalProperties:
            nullable: true
          description: Normalized request object for request entries.
        res:
          type: object
          additionalProperties:
            nullable: true
          description: Normalized response object for request entries.
        error:
          nullable: true
        suppressedCount:
          type: integer
        metadata:
          type: object
          additionalProperties:
            nullable: true
      required:
        - timestamp
        - seq
        - level
        - type
        - message
        - pid
      description: A normalized log entry.

````