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

# Get a service

> Returns full manifest metadata for a service, including configuration and secrets schemas.



## OpenAPI

````yaml /cyrnel/openapi.json get /services/{serviceId}
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:
  /services/{serviceId}:
    get:
      tags:
        - Services
      summary: Get a service
      description: >-
        Returns full manifest metadata for a service, including configuration
        and secrets schemas.
      parameters:
        - schema:
            type: string
            minLength: 1
            description: Service identifier matching the installed manifest id.
          required: true
          description: Service identifier matching the installed manifest id.
          name: serviceId
          in: path
      responses:
        '200':
          description: Service details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceDetails'
        '400':
          description: The serviceId path parameter was invalid.
          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 service could not be found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '500':
          description: The service details could not be loaded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
components:
  schemas:
    ServiceDetails:
      allOf:
        - $ref: '#/components/schemas/ServiceListItem'
        - type: object
          properties:
            configSchema:
              type: object
              additionalProperties:
                nullable: true
              description: JSON Schema describing the service configuration object.
            secretsSchema:
              type: object
              additionalProperties:
                nullable: true
              description: JSON Schema describing the service secrets object.
          required:
            - configSchema
            - secretsSchema
      description: Service metadata including configuration and secrets schemas.
    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.
    ServiceListItem:
      type: object
      properties:
        id:
          type: string
          minLength: 1
          description: Service identifier used as the manifest primary key.
        name:
          type: string
          minLength: 1
          description: Display name declared by the service manifest.
        description:
          type: string
          description: Human-readable description of the service.
        hash:
          type: string
          minLength: 1
          description: Content hash of the installed manifest definition.
        source:
          type: string
          minLength: 1
          description: Install source used to fetch the manifest definition.
        adapter:
          type: string
          minLength: 1
          description: Adapter module identifier that owns the service.
        enabled:
          type: boolean
          description: Whether the service is currently enabled.
        stale:
          type: boolean
          description: >-
            Whether the service needs to be synced. Stale services cannot be
            enabled or invoked.
        effectivelyEnabled:
          type: boolean
          description: >-
            Whether the service is actually usable considering its own enabled
            state, its parent module's state, and whether the module is missing.
      required:
        - id
        - name
        - description
        - hash
        - source
        - adapter
        - enabled
        - stale
        - effectivelyEnabled
      description: Compact service summary returned by service list and detail endpoints.

````