Couchbase · Capability

Couchbase Eventing Service REST API — Lifecycle

Couchbase Eventing Service REST API — Lifecycle. 4 operations. Lead operation: Deploy an Eventing Function. Self-contained Naftiko capability covering one Couchbase business surface.

Run with Naftiko CouchbaseLifecycle

What You Can Do

POST
Deployeventingfunction — Deploy an Eventing Function
/v1/api/v1/functions/{functionname}/deploy
POST
Pauseeventingfunction — Pause an Eventing Function
/v1/api/v1/functions/{functionname}/pause
POST
Resumeeventingfunction — Resume an Eventing Function
/v1/api/v1/functions/{functionname}/resume
POST
Undeployeventingfunction — Undeploy an Eventing Function
/v1/api/v1/functions/{functionname}/undeploy

MCP Tools

deploy-eventing-function

Deploy an Eventing Function

pause-eventing-function

Pause an Eventing Function

resume-eventing-function

Resume an Eventing Function

undeploy-eventing-function

Undeploy an Eventing Function

Capability Spec

eventing-service-rest-lifecycle.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Couchbase Eventing Service REST API — Lifecycle
  description: 'Couchbase Eventing Service REST API — Lifecycle. 4 operations. Lead operation: Deploy an Eventing Function.
    Self-contained Naftiko capability covering one Couchbase business surface.'
  tags:
  - Couchbase
  - Lifecycle
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    COUCHBASE_API_KEY: COUCHBASE_API_KEY
capability:
  consumes:
  - type: http
    namespace: eventing-service-rest-lifecycle
    baseUri: https://localhost:8096
    description: Couchbase Eventing Service REST API — Lifecycle business capability. Self-contained, no shared references.
    resources:
    - name: api-v1-functions-functionName-deploy
      path: /api/v1/functions/{functionName}/deploy
      operations:
      - name: deployeventingfunction
        method: POST
        description: Deploy an Eventing Function
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-functions-functionName-pause
      path: /api/v1/functions/{functionName}/pause
      operations:
      - name: pauseeventingfunction
        method: POST
        description: Pause an Eventing Function
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-functions-functionName-resume
      path: /api/v1/functions/{functionName}/resume
      operations:
      - name: resumeeventingfunction
        method: POST
        description: Resume an Eventing Function
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v1-functions-functionName-undeploy
      path: /api/v1/functions/{functionName}/undeploy
      operations:
      - name: undeployeventingfunction
        method: POST
        description: Undeploy an Eventing Function
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: basic
      username: '{{env.COUCHBASE_USER}}'
      password: '{{env.COUCHBASE_PASS}}'
  exposes:
  - type: rest
    namespace: eventing-service-rest-lifecycle-rest
    port: 8080
    description: REST adapter for Couchbase Eventing Service REST API — Lifecycle. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/api/v1/functions/{functionname}/deploy
      name: api-v1-functions-functionname-deploy
      description: REST surface for api-v1-functions-functionName-deploy.
      operations:
      - method: POST
        name: deployeventingfunction
        description: Deploy an Eventing Function
        call: eventing-service-rest-lifecycle.deployeventingfunction
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/functions/{functionname}/pause
      name: api-v1-functions-functionname-pause
      description: REST surface for api-v1-functions-functionName-pause.
      operations:
      - method: POST
        name: pauseeventingfunction
        description: Pause an Eventing Function
        call: eventing-service-rest-lifecycle.pauseeventingfunction
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/functions/{functionname}/resume
      name: api-v1-functions-functionname-resume
      description: REST surface for api-v1-functions-functionName-resume.
      operations:
      - method: POST
        name: resumeeventingfunction
        description: Resume an Eventing Function
        call: eventing-service-rest-lifecycle.resumeeventingfunction
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v1/functions/{functionname}/undeploy
      name: api-v1-functions-functionname-undeploy
      description: REST surface for api-v1-functions-functionName-undeploy.
      operations:
      - method: POST
        name: undeployeventingfunction
        description: Undeploy an Eventing Function
        call: eventing-service-rest-lifecycle.undeployeventingfunction
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: eventing-service-rest-lifecycle-mcp
    port: 9090
    transport: http
    description: MCP adapter for Couchbase Eventing Service REST API — Lifecycle. One tool per consumed operation, routed
      inline through this capability's consumes block.
    tools:
    - name: deploy-eventing-function
      description: Deploy an Eventing Function
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: eventing-service-rest-lifecycle.deployeventingfunction
      outputParameters:
      - type: object
        mapping: $.
    - name: pause-eventing-function
      description: Pause an Eventing Function
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: eventing-service-rest-lifecycle.pauseeventingfunction
      outputParameters:
      - type: object
        mapping: $.
    - name: resume-eventing-function
      description: Resume an Eventing Function
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: eventing-service-rest-lifecycle.resumeeventingfunction
      outputParameters:
      - type: object
        mapping: $.
    - name: undeploy-eventing-function
      description: Undeploy an Eventing Function
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: eventing-service-rest-lifecycle.undeployeventingfunction
      outputParameters:
      - type: object
        mapping: $.