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

# Browse registry modules

> Returns one page of modules advertised by the registry, as served by its modules capability endpoint. Filtering is advisory: query, type and cursor are forwarded unchanged and entries are not filtered server-side.



## OpenAPI

````yaml /openapi.json get /registries/{id}/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:
  /registries/{id}/modules:
    get:
      tags:
        - Registries
      summary: Browse registry modules
      description: >-
        Returns one page of modules advertised by the registry, as served by its
        modules capability endpoint. Filtering is advisory: query, type and
        cursor are forwarded unchanged and entries are not filtered server-side.
      parameters:
        - schema:
            type: string
            minLength: 1
            description: Registry slug identifying the registry.
          required: true
          description: Registry slug identifying the registry.
          name: id
          in: path
        - schema:
            type: string
            minLength: 1
            description: >-
              Free-text search forwarded to the registry; matching semantics are
              registry-defined.
          required: false
          description: >-
            Free-text search forwarded to the registry; matching semantics are
            registry-defined.
          name: query
          in: query
        - schema:
            type: string
            minLength: 1
            description: >-
              Opaque cursor returned as nextCursor by the previous page. Passed
              through to the registry unchanged.
          required: false
          description: >-
            Opaque cursor returned as nextCursor by the previous page. Passed
            through to the registry unchanged.
          name: cursor
          in: query
        - schema:
            type: integer
            minimum: 0
            exclusiveMinimum: true
            maximum: 200
            description: Maximum entries per page; the registry may ignore it (default 50).
          required: false
          description: Maximum entries per page; the registry may ignore it (default 50).
          name: limit
          in: query
        - schema:
            type: string
            enum:
              - adapter
              - environment
            description: Module type filter forwarded to the registry.
          required: false
          description: Module type filter forwarded to the registry.
          name: type
          in: query
      responses:
        '200':
          description: Matching modules.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryModulesPage'
        '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'
        '404':
          description: The registry could not be found, or it does not support modules.
          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 modules could not be browsed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '502':
          description: >-
            The registry could not be reached or its capability endpoint
            returned a non-2xx response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
components:
  schemas:
    RegistryModulesPage:
      type: object
      properties:
        modules:
          type: array
          items:
            $ref: '#/components/schemas/RegistryEntry'
          description: Modules on this page, as served by the registry.
        nextCursor:
          type: string
          nullable: true
          description: >-
            Opaque cursor for the next page, echoed back to the registry; null
            when the page is the last one.
      required:
        - modules
        - nextCursor
      description: One page of advertised modules.
    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).
    RegistryEntry:
      type: object
      properties:
        id:
          type: string
          minLength: 1
          description: Entry slug matching /^[A-Za-z0-9_-]+$/.
        name:
          type: string
          description: Display name of the entry, if provided.
        description:
          type: string
          description: Human-readable description, if provided.
        source:
          type: string
          description: >-
            Normalized absolute URL of the entry's descriptor, on the registry's
            origin.
        kind:
          type: string
          minLength: 1
          description: Definition kind hint (e.g. 'openapi@3.0'). Definitions only.
        type:
          type: string
          enum:
            - adapter
            - environment
          description: Module type. Modules only.
        icon:
          type: object
          properties:
            url:
              type: string
              description: Absolute URL of the entry icon.
            hash:
              type: string
              description: Content hash of the icon, for caching.
          required:
            - url
            - hash
          description: Entry icon, when advertised by the registry.
      required:
        - id
        - source
      description: One advertised service definition or module.

````