Kibana · Capability

Kibana APIs — spaces

Kibana APIs — spaces. 9 operations. Lead operation: Copy saved objects between spaces. Self-contained Naftiko capability covering one Kibana business surface.

Run with Naftiko Kibanaspaces

What You Can Do

POST
Postspacescopysavedobjects — Copy saved objects between spaces
/v1/api/spaces/copy-saved-objects
POST
Postspacesdisablelegacyurlaliases — Disable legacy URL aliases
/v1/api/spaces/disable-legacy-url-aliases
POST
Postspacesgetshareablereferences — Get shareable references
/v1/api/spaces/get-shareable-references
POST
Postspacesupdateobjectsspaces — Update saved objects in spaces
/v1/api/spaces/update-objects-spaces
GET
Getspacesspace — Get all spaces
/v1/api/spaces/space
POST
Postspacesspace — Create a space
/v1/api/spaces/space
DELETE
Deletespacesspaceid — Delete a space
/v1/api/spaces/space/{id}
GET
Getspacesspaceid — Get a space
/v1/api/spaces/space/{id}
PUT
Putspacesspaceid — Update a space
/v1/api/spaces/space/{id}

MCP Tools

copy-saved-objects-between-spaces

Copy saved objects between spaces

disable-legacy-url-aliases

Disable legacy URL aliases

get-shareable-references

Get shareable references

read-only
update-saved-objects-spaces

Update saved objects in spaces

get-all-spaces

Get all spaces

read-only idempotent
create-space

Create a space

delete-space

Delete a space

idempotent
get-space

Get a space

read-only idempotent
update-space

Update a space

idempotent

Capability Spec

kibana-spaces.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Kibana APIs — spaces
  description: 'Kibana APIs — spaces. 9 operations. Lead operation: Copy saved objects between spaces. Self-contained Naftiko
    capability covering one Kibana business surface.'
  tags:
  - Kibana
  - spaces
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    KIBANA_API_KEY: KIBANA_API_KEY
capability:
  consumes:
  - type: http
    namespace: kibana-spaces
    baseUri: https://{kibana_url}
    description: Kibana APIs — spaces business capability. Self-contained, no shared references.
    resources:
    - name: api-spaces-_copy_saved_objects
      path: /api/spaces/_copy_saved_objects
      operations:
      - name: postspacescopysavedobjects
        method: POST
        description: Copy saved objects between spaces
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kbn-xsrf
          in: header
          type: string
          description: A required header to protect against CSRF attacks
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-spaces-_disable_legacy_url_aliases
      path: /api/spaces/_disable_legacy_url_aliases
      operations:
      - name: postspacesdisablelegacyurlaliases
        method: POST
        description: Disable legacy URL aliases
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kbn-xsrf
          in: header
          type: string
          description: A required header to protect against CSRF attacks
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-spaces-_get_shareable_references
      path: /api/spaces/_get_shareable_references
      operations:
      - name: postspacesgetshareablereferences
        method: POST
        description: Get shareable references
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kbn-xsrf
          in: header
          type: string
          description: A required header to protect against CSRF attacks
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-spaces-_update_objects_spaces
      path: /api/spaces/_update_objects_spaces
      operations:
      - name: postspacesupdateobjectsspaces
        method: POST
        description: Update saved objects in spaces
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kbn-xsrf
          in: header
          type: string
          description: A required header to protect against CSRF attacks
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-spaces-space
      path: /api/spaces/space
      operations:
      - name: getspacesspace
        method: GET
        description: Get all spaces
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: purpose
          in: query
          type: string
          description: Specifies which authorization checks are applied to the API call. The default value is `any`.
        - name: include_authorized_purposes
          in: query
          type: boolean
          description: When enabled, the API returns any spaces the user is authorized to access in any capacity, each including
            the purposes for which the user is authorized. This is
      - name: postspacesspace
        method: POST
        description: Create a space
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kbn-xsrf
          in: header
          type: string
          description: A required header to protect against CSRF attacks
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-spaces-space-id
      path: /api/spaces/space/{id}
      operations:
      - name: deletespacesspaceid
        method: DELETE
        description: Delete a space
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kbn-xsrf
          in: header
          type: string
          description: A required header to protect against CSRF attacks
          required: true
        - name: id
          in: path
          type: string
          description: The space identifier.
          required: true
      - name: getspacesspaceid
        method: GET
        description: Get a space
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The space identifier.
          required: true
      - name: putspacesspaceid
        method: PUT
        description: Update a space
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kbn-xsrf
          in: header
          type: string
          description: A required header to protect against CSRF attacks
          required: true
        - name: id
          in: path
          type: string
          description: The space identifier. You are unable to change the ID with the update operation.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.KIBANA_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: kibana-spaces-rest
    port: 8080
    description: REST adapter for Kibana APIs — spaces. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/api/spaces/copy-saved-objects
      name: api-spaces-copy-saved-objects
      description: REST surface for api-spaces-_copy_saved_objects.
      operations:
      - method: POST
        name: postspacescopysavedobjects
        description: Copy saved objects between spaces
        call: kibana-spaces.postspacescopysavedobjects
        with:
          kbn-xsrf: rest.kbn-xsrf
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/spaces/disable-legacy-url-aliases
      name: api-spaces-disable-legacy-url-aliases
      description: REST surface for api-spaces-_disable_legacy_url_aliases.
      operations:
      - method: POST
        name: postspacesdisablelegacyurlaliases
        description: Disable legacy URL aliases
        call: kibana-spaces.postspacesdisablelegacyurlaliases
        with:
          kbn-xsrf: rest.kbn-xsrf
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/spaces/get-shareable-references
      name: api-spaces-get-shareable-references
      description: REST surface for api-spaces-_get_shareable_references.
      operations:
      - method: POST
        name: postspacesgetshareablereferences
        description: Get shareable references
        call: kibana-spaces.postspacesgetshareablereferences
        with:
          kbn-xsrf: rest.kbn-xsrf
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/spaces/update-objects-spaces
      name: api-spaces-update-objects-spaces
      description: REST surface for api-spaces-_update_objects_spaces.
      operations:
      - method: POST
        name: postspacesupdateobjectsspaces
        description: Update saved objects in spaces
        call: kibana-spaces.postspacesupdateobjectsspaces
        with:
          kbn-xsrf: rest.kbn-xsrf
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/spaces/space
      name: api-spaces-space
      description: REST surface for api-spaces-space.
      operations:
      - method: GET
        name: getspacesspace
        description: Get all spaces
        call: kibana-spaces.getspacesspace
        with:
          purpose: rest.purpose
          include_authorized_purposes: rest.include_authorized_purposes
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postspacesspace
        description: Create a space
        call: kibana-spaces.postspacesspace
        with:
          kbn-xsrf: rest.kbn-xsrf
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/spaces/space/{id}
      name: api-spaces-space-id
      description: REST surface for api-spaces-space-id.
      operations:
      - method: DELETE
        name: deletespacesspaceid
        description: Delete a space
        call: kibana-spaces.deletespacesspaceid
        with:
          kbn-xsrf: rest.kbn-xsrf
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getspacesspaceid
        description: Get a space
        call: kibana-spaces.getspacesspaceid
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: putspacesspaceid
        description: Update a space
        call: kibana-spaces.putspacesspaceid
        with:
          kbn-xsrf: rest.kbn-xsrf
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: kibana-spaces-mcp
    port: 9090
    transport: http
    description: MCP adapter for Kibana APIs — spaces. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: copy-saved-objects-between-spaces
      description: Copy saved objects between spaces
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kibana-spaces.postspacescopysavedobjects
      with:
        kbn-xsrf: tools.kbn-xsrf
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: disable-legacy-url-aliases
      description: Disable legacy URL aliases
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kibana-spaces.postspacesdisablelegacyurlaliases
      with:
        kbn-xsrf: tools.kbn-xsrf
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-shareable-references
      description: Get shareable references
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: kibana-spaces.postspacesgetshareablereferences
      with:
        kbn-xsrf: tools.kbn-xsrf
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: update-saved-objects-spaces
      description: Update saved objects in spaces
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kibana-spaces.postspacesupdateobjectsspaces
      with:
        kbn-xsrf: tools.kbn-xsrf
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-all-spaces
      description: Get all spaces
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kibana-spaces.getspacesspace
      with:
        purpose: tools.purpose
        include_authorized_purposes: tools.include_authorized_purposes
      outputParameters:
      - type: object
        mapping: $.
    - name: create-space
      description: Create a space
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: kibana-spaces.postspacesspace
      with:
        kbn-xsrf: tools.kbn-xsrf
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-space
      description: Delete a space
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: kibana-spaces.deletespacesspaceid
      with:
        kbn-xsrf: tools.kbn-xsrf
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: get-space
      description: Get a space
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: kibana-spaces.getspacesspaceid
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: update-space
      description: Update a space
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: kibana-spaces.putspacesspaceid
      with:
        kbn-xsrf: tools.kbn-xsrf
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.