Schematic · Capability

Schematic API — integrationsapi

Schematic API — integrationsapi. 6 operations. Lead operation: Run integration. Self-contained Naftiko capability covering one Schematic business surface.

Run with Naftiko Schematicintegrationsapi

What You Can Do

GET
Runintegration — Run integration
/v1/integration/start/{integration-id}
GET
Listintegrations — List integrations
/v1/integrations
POST
Startdataimport — Start data import
/v1/integrations/start-data-import
GET
Loadsampledatasetv2 — Load sample data set V2
/v1/integrations/stripe/dataset-sample-v2
DELETE
Uninstallintegration — Uninstall integration
/v1/integrations/uninstall/{integration-id}
GET
Getintegrationwebhookurl — Get integration webhook url
/v1/integrations/{type}/webhook-url

MCP Tools

run-integration

Run integration

read-only idempotent
list-integrations

List integrations

read-only idempotent
start-data-import

Start data import

load-sample-data-set-v2

Load sample data set V2

read-only idempotent
uninstall-integration

Uninstall integration

idempotent
get-integration-webhook-url

Get integration webhook url

read-only idempotent

Capability Spec

schematic-integrationsapi.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Schematic API — integrationsapi
  description: 'Schematic API — integrationsapi. 6 operations. Lead operation: Run integration. Self-contained Naftiko capability
    covering one Schematic business surface.'
  tags:
  - Schematic
  - integrationsapi
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SCHEMATIC_API_KEY: SCHEMATIC_API_KEY
capability:
  consumes:
  - type: http
    namespace: schematic-integrationsapi
    baseUri: https://api.schematichq.com
    description: Schematic API — integrationsapi business capability. Self-contained, no shared references.
    resources:
    - name: integration-start-integration_id
      path: /integration/start/{integration_id}
      operations:
      - name: runintegration
        method: GET
        description: Run integration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: integration_id
          in: path
          type: string
          description: integration_id
          required: true
    - name: integrations
      path: /integrations
      operations:
      - name: listintegrations
        method: GET
        description: List integrations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: billing_only
          in: query
          type: boolean
        - name: exclude_ids
          in: query
          type: array
        - name: id
          in: query
          type: string
        - name: state
          in: query
          type: string
        - name: type
          in: query
          type: string
        - name: limit
          in: query
          type: integer
          description: Page limit (default 100)
        - name: offset
          in: query
          type: integer
          description: Page offset (default 0)
    - name: integrations-start-data-import
      path: /integrations/start-data-import
      operations:
      - name: startdataimport
        method: POST
        description: Start data import
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: integrations-stripe-dataset-sample-v2
      path: /integrations/stripe/dataset-sample-v2
      operations:
      - name: loadsampledatasetv2
        method: GET
        description: Load sample data set V2
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: integrations-uninstall-integration_id
      path: /integrations/uninstall/{integration_id}
      operations:
      - name: uninstallintegration
        method: DELETE
        description: Uninstall integration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: integration_id
          in: path
          type: string
          description: integration_id
          required: true
    - name: integrations-type-webhook-url
      path: /integrations/{type}/webhook-url
      operations:
      - name: getintegrationwebhookurl
        method: GET
        description: Get integration webhook url
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: type
          in: path
          type: string
          description: type
          required: true
    authentication:
      type: apikey
      key: X-Schematic-Api-Key
      value: '{{env.SCHEMATIC_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: schematic-integrationsapi-rest
    port: 8080
    description: REST adapter for Schematic API — integrationsapi. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/integration/start/{integration-id}
      name: integration-start-integration-id
      description: REST surface for integration-start-integration_id.
      operations:
      - method: GET
        name: runintegration
        description: Run integration
        call: schematic-integrationsapi.runintegration
        with:
          integration_id: rest.integration_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/integrations
      name: integrations
      description: REST surface for integrations.
      operations:
      - method: GET
        name: listintegrations
        description: List integrations
        call: schematic-integrationsapi.listintegrations
        with:
          billing_only: rest.billing_only
          exclude_ids: rest.exclude_ids
          id: rest.id
          state: rest.state
          type: rest.type
          limit: rest.limit
          offset: rest.offset
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/integrations/start-data-import
      name: integrations-start-data-import
      description: REST surface for integrations-start-data-import.
      operations:
      - method: POST
        name: startdataimport
        description: Start data import
        call: schematic-integrationsapi.startdataimport
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/integrations/stripe/dataset-sample-v2
      name: integrations-stripe-dataset-sample-v2
      description: REST surface for integrations-stripe-dataset-sample-v2.
      operations:
      - method: GET
        name: loadsampledatasetv2
        description: Load sample data set V2
        call: schematic-integrationsapi.loadsampledatasetv2
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/integrations/uninstall/{integration-id}
      name: integrations-uninstall-integration-id
      description: REST surface for integrations-uninstall-integration_id.
      operations:
      - method: DELETE
        name: uninstallintegration
        description: Uninstall integration
        call: schematic-integrationsapi.uninstallintegration
        with:
          integration_id: rest.integration_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/integrations/{type}/webhook-url
      name: integrations-type-webhook-url
      description: REST surface for integrations-type-webhook-url.
      operations:
      - method: GET
        name: getintegrationwebhookurl
        description: Get integration webhook url
        call: schematic-integrationsapi.getintegrationwebhookurl
        with:
          type: rest.type
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: schematic-integrationsapi-mcp
    port: 9090
    transport: http
    description: MCP adapter for Schematic API — integrationsapi. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: run-integration
      description: Run integration
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: schematic-integrationsapi.runintegration
      with:
        integration_id: tools.integration_id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-integrations
      description: List integrations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: schematic-integrationsapi.listintegrations
      with:
        billing_only: tools.billing_only
        exclude_ids: tools.exclude_ids
        id: tools.id
        state: tools.state
        type: tools.type
        limit: tools.limit
        offset: tools.offset
      outputParameters:
      - type: object
        mapping: $.
    - name: start-data-import
      description: Start data import
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: schematic-integrationsapi.startdataimport
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: load-sample-data-set-v2
      description: Load sample data set V2
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: schematic-integrationsapi.loadsampledatasetv2
      outputParameters:
      - type: object
        mapping: $.
    - name: uninstall-integration
      description: Uninstall integration
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: schematic-integrationsapi.uninstallintegration
      with:
        integration_id: tools.integration_id
      outputParameters:
      - type: object
        mapping: $.
    - name: get-integration-webhook-url
      description: Get integration webhook url
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: schematic-integrationsapi.getintegrationwebhookurl
      with:
        type: tools.type
      outputParameters:
      - type: object
        mapping: $.