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

# Obtener una entrada

> Lee una única entrada gestionada en tiempo de ejecución por espacio de nombres y clave. El valor se pasa por la política de redacción del espacio de nombres. Cuando la autenticación está habilitada, este endpoint requiere el permiso de lectura del espacio de nombres (por ejemplo, `system_tenant_policy:read`).



## OpenAPI

````yaml es/openapi/v3-current/systemplane.yaml get /system/{namespace}/{key}
openapi: 3.1.0
info:
  title: API de administración de Systemplane de Lerian
  version: v1.0.0
  contact:
    email: contact@lerian.studio
    name: Lerian Studio
    url: https://lerian.studio
  license:
    name: Lerian Studio General License
  description: >-
    La API de administración de Systemplane es el plano de control de
    configuración en tiempo de ejecución compartido que las aplicaciones de
    Lerian exponen para que puedas inspeccionar y cambiar ajustes operativos en
    un servicio en ejecución, sin reiniciarlo. En entornos financieros
    regulados, detener un servicio para aplicar un cambio de configuración es a
    la vez un riesgo de cumplimiento y una interrupción operativa; Systemplane
    te permite ajustar los valores que un servicio admite de forma segura
    mientras sigue atendiendo tráfico.


    Esta superficie no es un servicio independiente. Cada aplicación monta el
    mismo conjunto de rutas en su propio host y puerto HTTP bajo un prefijo de
    ruta específico de la aplicación: no hay un host ni un puerto dedicados de
    Systemplane. El prefijo canónico documentado aquí es `/system`, pero varía
    según la aplicación (por ejemplo, Lender lo monta bajo `/api/v1/systemplane`
    y los rieles del SFN bajo `/v1/system`). Sustituye el host, el puerto y el
    prefijo de la aplicación cuya configuración estás gestionando. Como las
    rutas se registran de forma programática en lugar de generarse con un
    generador de código, no aparecen en la referencia de API generada de cada
    producto; esta especificación documenta la superficie a mano.


    La configuración se organiza en **espacios de nombres**, cada uno con
    entradas planas indexadas por clave de texto. Los rieles y los plugins usan
    tres espacios de nombres canónicos: `runtime_config` (ajustes operativos
    como límites de tasa e intervalos de workers), `tenant_policy` (objetos de
    política con alcance por tenant) y `operational_registry` (datos operativos
    de consulta). Algunas aplicaciones registran en su lugar un único espacio de
    nombres con el nombre de la aplicación. El valor de cada entrada no tiene
    tipo en la capa de transporte: cada clave registrada acepta su propio
    escalar, objeto o arreglo JSON, validado por el validador del lado del
    servidor de esa clave.


    La autorización es **denegar todo por defecto**. Cuando la autenticación
    está habilitada, una aplicación aplica control de acceso basado en roles por
    espacio de nombres: las lecturas requieren el permiso de lectura del espacio
    de nombres (`system_runtime_config:read`, `system_tenant_policy:read` o
    `system_operational_registry:read`) y las escrituras requieren el permiso de
    escritura correspondiente (`system_runtime_config:write`,
    `system_tenant_policy:write` o `system_operational_registry:write`). Las
    cadenas exactas de permiso pueden variar según la aplicación. Toda la
    superficie está controlada por el ajuste `SYSTEMPLANE_ENABLED`, que está
    desactivado por defecto; cuando está deshabilitado, la aplicación funciona
    en modo solo variables de entorno y estas rutas no se sirven.


    Una superficie de catálogo opcional bajo la ruta reservada `/-/catalog` te
    permite descubrir qué claves registra una aplicación, junto con el contrato
    de escritura de cada clave (tipo, alcance de tenant, política de redacción,
    reglas de validación y ejemplos). Los errores usan un sobre plano `{"code":
    <int>, "title": "<string>", "message": "<string>"}`. Las operaciones de
    mutación devuelven `204 No Content` cuando tienen éxito.
servers:
  - url: https://{host}
    description: >-
      The Systemplane admin API is served by each Lerian application on its own
      host and port under an application-specific prefix (default `/system`).
      Substitute the host of the application whose runtime configuration you are
      managing.
    variables:
      host:
        default: your-lerian-app.example.com
        description: >-
          The host (and port) of the application that mounts the Systemplane
          admin API.
security:
  - BearerAuth: []
tags:
  - name: Entries
    description: >-
      Lista, lee, escribe y elimina las entradas de configuración gestionadas en
      tiempo de ejecución dentro de un espacio de nombres.
  - name: Catalog
    description: >-
      Descubre las claves que registra una aplicación y el contrato de escritura
      esperado de cada clave. Opcional por aplicación.
paths:
  /system/{namespace}/{key}:
    get:
      tags:
        - Entries
      summary: Obtener una entrada
      description: >-
        Lee una única entrada gestionada en tiempo de ejecución por espacio de
        nombres y clave. El valor se pasa por la política de redacción del
        espacio de nombres. Cuando la autenticación está habilitada, este
        endpoint requiere el permiso de lectura del espacio de nombres (por
        ejemplo, `system_tenant_policy:read`).
      operationId: getSystemplaneEntry
      parameters:
        - $ref: '#/components/parameters/Namespace'
        - $ref: '#/components/parameters/Key'
      responses:
        '200':
          description: The entry.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalError'
        '503':
          $ref: '#/components/responses/ServiceUnavailable'
      security:
        - BearerAuth: []
components:
  parameters:
    Namespace:
      name: namespace
      in: path
      required: true
      description: >-
        The Systemplane namespace. Rails and plugins use `runtime_config`,
        `tenant_policy`, or `operational_registry`; some applications register a
        single application-named namespace instead.
      schema:
        type: string
        examples:
          - runtime_config
    Key:
      name: key
      in: path
      required: true
      description: >-
        The registered key within the namespace. Keys are flat, dot-delimited
        identifiers; a key may itself contain `/` segments.
      schema:
        type: string
        examples:
          - tenancy.ispb_organization_bindings
  schemas:
    GetResponse:
      type: object
      additionalProperties: false
      description: A single Systemplane entry.
      properties:
        namespace:
          type: string
          description: The namespace the entry belongs to.
          examples:
            - tenant_policy
        key:
          type: string
          description: The registered key.
          examples:
            - fees.max_fee_amount_cents
        value:
          description: >-
            The entry's current value (post-redaction). Untyped — see the key's
            catalog contract.
        description:
          type: string
          description: >-
            A human-readable description of the key. Omitted when the key has
            none.
          examples:
            - Maximum fee amount in cents
      required:
        - namespace
        - key
    ErrorResponse:
      type: object
      additionalProperties: false
      description: >-
        The flat error envelope returned across the Systemplane admin surface.
        It carries a machine-readable HTTP status code, a short title, and a
        human-readable message; it never returns secret material.
      properties:
        code:
          type: integer
          description: The HTTP status code.
          examples:
            - 403
        title:
          type: string
          description: A short, machine-readable title for the error class.
          examples:
            - forbidden
        message:
          type: string
          description: A human-readable description of what went wrong.
          examples:
            - 'systemplane admin: insufficient permissions: permission denied'
      required:
        - code
        - title
        - message
  responses:
    BadRequest:
      description: >-
        The request is caller-correctable — an unknown key, a missing or invalid
        `value`, a value that fails the key's validator, or a request that is
        not valid for the current tenancy mode.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: >-
        Authentication failed, or there is no trusted platform identity on the
        request.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Forbidden:
      description: >-
        The authorizer denied the request — the identity lacks the namespace
        permission required for this action, or the surface is deny-all because
        no authorizer is configured.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: The namespace or key does not exist.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalError:
      description: An internal fault. Detail is logged, not returned.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    ServiceUnavailable:
      description: >-
        The Systemplane store is not started or has been closed — the
        application is not currently able to serve the request.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        A bearer JWT issued by the platform's Access Manager (plugin-auth /
        lib-auth). Authorization is deny-all by default: the application must be
        configured with an authorizer, and when authentication is enabled it
        enforces per-namespace role-based access control on top of a valid,
        platform-scoped (non-tenant) identity. Machine callers obtain a token
        via the Access Manager client-credentials flow.

````