N8n · Capability

n8n Public API — Workflow

n8n Public API — Workflow. 13 operations. Lead operation: Create a workflow. Self-contained Naftiko capability covering one N8n business surface.

Run with Naftiko N8nWorkflow

What You Can Do

POST
Createworkflow — Create a workflow
/v1/workflows
GET
Getworkflows — Retrieve all workflows
/v1/workflows
GET
Getworkflow — Retrieves a workflow
/v1/workflows/{id}
DELETE
Deleteworkflow — Delete a workflow
/v1/workflows/{id}
PUT
Updateworkflow — Update a workflow
/v1/workflows/{id}
POST
Activateworkflow — Activate a workflow
/v1/workflows/{id}/activate
POST
Archiveworkflow — Archive a workflow
/v1/workflows/{id}/archive
POST
Deactivateworkflow — Deactivate a workflow
/v1/workflows/{id}/deactivate
GET
Getworkflowtags — Get workflow tags
/v1/workflows/{id}/tags
PUT
Updateworkflowtags — Update tags of a workflow
/v1/workflows/{id}/tags
PUT
Transferworkflow — Transfer a workflow to another project
/v1/workflows/{id}/transfer
POST
Unarchiveworkflow — Unarchive a workflow
/v1/workflows/{id}/unarchive
GET
Getworkflowversion — Retrieves a specific version of a workflow
/v1/workflows/{id}/{versionid}

MCP Tools

create-workflow

Create a workflow

retrieve-all-workflows

Retrieve all workflows

read-only idempotent
retrieves-workflow

Retrieves a workflow

read-only idempotent
delete-workflow

Delete a workflow

idempotent
update-workflow

Update a workflow

idempotent
activate-workflow

Activate a workflow

archive-workflow

Archive a workflow

deactivate-workflow

Deactivate a workflow

get-workflow-tags

Get workflow tags

read-only idempotent
update-tags-workflow

Update tags of a workflow

idempotent
transfer-workflow-another-project

Transfer a workflow to another project

idempotent
unarchive-workflow

Unarchive a workflow

retrieves-specific-version-workflow

Retrieves a specific version of a workflow

read-only idempotent

Capability Spec

n8n-workflow.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: n8n Public API — Workflow
  description: 'n8n Public API — Workflow. 13 operations. Lead operation: Create a workflow. Self-contained Naftiko capability
    covering one N8n business surface.'
  tags:
  - N8n
  - Workflow
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    N8N_API_KEY: N8N_API_KEY
capability:
  consumes:
  - type: http
    namespace: n8n-workflow
    baseUri: https://app.n8n.cloud/api/v1
    description: n8n Public API — Workflow business capability. Self-contained, no shared references.
    resources:
    - name: workflows
      path: /workflows
      operations:
      - name: createworkflow
        method: POST
        description: Create a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: getworkflows
        method: GET
        description: Retrieve all workflows
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: active
          in: query
          type: boolean
        - name: tags
          in: query
          type: string
        - name: name
          in: query
          type: string
        - name: projectId
          in: query
          type: string
        - name: excludePinnedData
          in: query
          type: boolean
        - name: limit
          in: query
          type: number
        - name: cursor
          in: query
          type: string
    - name: workflows-id
      path: /workflows/{id}
      operations:
      - name: getworkflow
        method: GET
        description: Retrieves a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: excludePinnedData
          in: query
          type: boolean
      - name: deleteworkflow
        method: DELETE
        description: Delete a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
      - name: updateworkflow
        method: PUT
        description: Update a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: workflows-id-activate
      path: /workflows/{id}/activate
      operations:
      - name: activateworkflow
        method: POST
        description: Activate a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: workflows-id-archive
      path: /workflows/{id}/archive
      operations:
      - name: archiveworkflow
        method: POST
        description: Archive a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: workflows-id-deactivate
      path: /workflows/{id}/deactivate
      operations:
      - name: deactivateworkflow
        method: POST
        description: Deactivate a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: workflows-id-tags
      path: /workflows/{id}/tags
      operations:
      - name: getworkflowtags
        method: GET
        description: Get workflow tags
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
      - name: updateworkflowtags
        method: PUT
        description: Update tags of a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: workflows-id-transfer
      path: /workflows/{id}/transfer
      operations:
      - name: transferworkflow
        method: PUT
        description: Transfer a workflow to another project
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: workflows-id-unarchive
      path: /workflows/{id}/unarchive
      operations:
      - name: unarchiveworkflow
        method: POST
        description: Unarchive a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: workflows-id-versionId
      path: /workflows/{id}/{versionId}
      operations:
      - name: getworkflowversion
        method: GET
        description: Retrieves a specific version of a workflow
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: versionId
          in: path
          type: string
          required: true
    authentication:
      type: bearer
      token: '{{env.N8N_API_KEY}}'
  exposes:
  - type: rest
    namespace: n8n-workflow-rest
    port: 8080
    description: REST adapter for n8n Public API — Workflow. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/workflows
      name: workflows
      description: REST surface for workflows.
      operations:
      - method: POST
        name: createworkflow
        description: Create a workflow
        call: n8n-workflow.createworkflow
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getworkflows
        description: Retrieve all workflows
        call: n8n-workflow.getworkflows
        with:
          active: rest.active
          tags: rest.tags
          name: rest.name
          projectId: rest.projectId
          excludePinnedData: rest.excludePinnedData
          limit: rest.limit
          cursor: rest.cursor
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workflows/{id}
      name: workflows-id
      description: REST surface for workflows-id.
      operations:
      - method: GET
        name: getworkflow
        description: Retrieves a workflow
        call: n8n-workflow.getworkflow
        with:
          id: rest.id
          excludePinnedData: rest.excludePinnedData
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteworkflow
        description: Delete a workflow
        call: n8n-workflow.deleteworkflow
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateworkflow
        description: Update a workflow
        call: n8n-workflow.updateworkflow
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workflows/{id}/activate
      name: workflows-id-activate
      description: REST surface for workflows-id-activate.
      operations:
      - method: POST
        name: activateworkflow
        description: Activate a workflow
        call: n8n-workflow.activateworkflow
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workflows/{id}/archive
      name: workflows-id-archive
      description: REST surface for workflows-id-archive.
      operations:
      - method: POST
        name: archiveworkflow
        description: Archive a workflow
        call: n8n-workflow.archiveworkflow
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workflows/{id}/deactivate
      name: workflows-id-deactivate
      description: REST surface for workflows-id-deactivate.
      operations:
      - method: POST
        name: deactivateworkflow
        description: Deactivate a workflow
        call: n8n-workflow.deactivateworkflow
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workflows/{id}/tags
      name: workflows-id-tags
      description: REST surface for workflows-id-tags.
      operations:
      - method: GET
        name: getworkflowtags
        description: Get workflow tags
        call: n8n-workflow.getworkflowtags
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateworkflowtags
        description: Update tags of a workflow
        call: n8n-workflow.updateworkflowtags
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workflows/{id}/transfer
      name: workflows-id-transfer
      description: REST surface for workflows-id-transfer.
      operations:
      - method: PUT
        name: transferworkflow
        description: Transfer a workflow to another project
        call: n8n-workflow.transferworkflow
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workflows/{id}/unarchive
      name: workflows-id-unarchive
      description: REST surface for workflows-id-unarchive.
      operations:
      - method: POST
        name: unarchiveworkflow
        description: Unarchive a workflow
        call: n8n-workflow.unarchiveworkflow
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/workflows/{id}/{versionid}
      name: workflows-id-versionid
      description: REST surface for workflows-id-versionId.
      operations:
      - method: GET
        name: getworkflowversion
        description: Retrieves a specific version of a workflow
        call: n8n-workflow.getworkflowversion
        with:
          id: rest.id
          versionId: rest.versionId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: n8n-workflow-mcp
    port: 9090
    transport: http
    description: MCP adapter for n8n Public API — Workflow. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: create-workflow
      description: Create a workflow
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: n8n-workflow.createworkflow
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieve-all-workflows
      description: Retrieve all workflows
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: n8n-workflow.getworkflows
      with:
        active: tools.active
        tags: tools.tags
        name: tools.name
        projectId: tools.projectId
        excludePinnedData: tools.excludePinnedData
        limit: tools.limit
        cursor: tools.cursor
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieves-workflow
      description: Retrieves a workflow
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: n8n-workflow.getworkflow
      with:
        id: tools.id
        excludePinnedData: tools.excludePinnedData
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-workflow
      description: Delete a workflow
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: n8n-workflow.deleteworkflow
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: update-workflow
      description: Update a workflow
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: n8n-workflow.updateworkflow
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: activate-workflow
      description: Activate a workflow
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: n8n-workflow.activateworkflow
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: archive-workflow
      description: Archive a workflow
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: n8n-workflow.archiveworkflow
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: deactivate-workflow
      description: Deactivate a workflow
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: n8n-workflow.deactivateworkflow
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: get-workflow-tags
      description: Get workflow tags
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: n8n-workflow.getworkflowtags
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: update-tags-workflow
      description: Update tags of a workflow
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: n8n-workflow.updateworkflowtags
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: transfer-workflow-another-project
      description: Transfer a workflow to another project
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: n8n-workflow.transferworkflow
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: unarchive-workflow
      description: Unarchive a workflow
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: n8n-workflow.unarchiveworkflow
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieves-specific-version-workflow
      description: Retrieves a specific version of a workflow
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: n8n-workflow.getworkflowversion
      with:
        id: tools.id
        versionId: tools.versionId
      outputParameters:
      - type: object
        mapping: $.