> ## 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 modules

> Returns module manifests filtered by optional query, type, isBuiltin, enabled, and missing query parameters.



## OpenAPI

````yaml /cyrnel/openapi.json get /modules
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:
  /modules:
    get:
      tags:
        - Modules
      summary: List modules
      description: >-
        Returns module manifests filtered by optional query, type, isBuiltin,
        enabled, and missing query parameters.
      parameters:
        - schema:
            type: string
            description: Free-text query used to match module names and descriptions.
          required: false
          description: Free-text query used to match module names and descriptions.
          name: query
          in: query
        - schema:
            type: string
            enum:
              - adapter
              - environment
            description: Module type. Either 'adapter' or 'environment'.
          required: false
          description: Module type. Either 'adapter' or 'environment'.
          name: type
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
            description: Filter by whether the module is bundled with the API.
          required: false
          description: Filter by whether the module is bundled with the API.
          name: isBuiltin
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
            description: Enabled-state filter for modules.
          required: false
          description: Enabled-state filter for modules.
          name: enabled
          in: query
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
            description: Filter by whether the module is missing its factory.
          required: false
          description: Filter by whether the module is missing its factory.
          name: missing
          in: query
      responses:
        '200':
          description: Matching modules.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModuleListResponse'
        '400':
          description: One or more query parameters could not be parsed.
          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 module list could not be loaded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
components:
  schemas:
    ModuleListResponse:
      type: object
      properties:
        modules:
          type: array
          items:
            $ref: '#/components/schemas/Module'
          description: Modules that match the supplied query filters.
      required:
        - modules
      description: Collection wrapper for module listings.
    ApiErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Human-readable error message returned by the API.
      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).
    Module:
      type: object
      properties:
        id:
          type: string
          minLength: 1
          description: Module identifier.
        name:
          type: string
          minLength: 1
          description: Module display name.
        type:
          type: string
          enum:
            - adapter
            - environment
          description: Module type.
        description:
          type: string
          description: Human-readable description of the module.
        isBuiltin:
          type: boolean
          description: Whether the module is bundled with the API.
        enabled:
          type: boolean
          description: Whether the module is currently enabled.
        missing:
          type: boolean
          description: Whether the module is installed but has no matching factory loaded.
      required:
        - id
        - name
        - type
        - description
        - isBuiltin
        - enabled
        - missing
      description: Module manifest record returned by the modules endpoints.

````