Windmill · Capability

Windmill API — app

Windmill API — app. 30 operations. Lead operation: Get Hub App by Id. Self-contained Naftiko capability covering one Windmill business surface.

Run with Naftiko Windmillapp

What You Can Do

GET
Gethubappbyid — Get Hub App by Id
/v1/apps/hub/get/{id}
GET
Gethubrawappbyid — Get Hub Raw App by Id
/v1/apps/hub/get-raw/{id}
GET
Listhubapps — List All Hub Apps
/v1/apps/hub/list
GET
Getpublicappbycustompath — Get Public App by Custom Path
/v1/apps-u/public-app-by-custom-path/{custom-path}
POST
Createapp — Create App
/v1/w/{workspace}/apps/create
POST
Createappraw — Create App Raw
/v1/w/{workspace}/apps/create-raw
GET
Custompathexists — Check if Custom Path Exists
/v1/w/{workspace}/apps/custom-path-exists/{custom-path}
DELETE
Deleteapp — Delete App
/v1/w/{workspace}/apps/delete/{path}
GET
Existsapp — Does an App Exisst at Path
/v1/w/{workspace}/apps/exists/{path}
GET
Getappbypathwithdraft — Get App by Path with Draft
/v1/w/{workspace}/apps/get/draft/{path}
GET
Getapplitebypath — Get App Lite by Path
/v1/w/{workspace}/apps/get/lite/{path}
GET
Getappbypath — Get App by Path
/v1/w/{workspace}/apps/get/p/{path}
GET
Getappbyversion — Get App by Version
/v1/w/{workspace}/apps/get/v/{id}
GET
Getrawappdata — Get Raw App Data by
/v1/w/{workspace}/apps/get-data/v/{secretwithextension}
GET
Getapplatestversion — Get Apps's Latest Version
/v1/w/{workspace}/apps/get-latest-version/{path}
GET
Getapphistorybypath — Get App History by Path
/v1/w/{workspace}/apps/history/p/{path}
POST
Updateapphistory — Update App History
/v1/w/{workspace}/apps/history-update/a/{id}/v/{version}
GET
Listapps — List All Apps
/v1/w/{workspace}/apps/list
GET
Listapppathsfromworkspacerunnable — List App Paths from Workspace Runnable
/v1/w/{workspace}/apps/list-paths-from-workspace-runnable/{runnable-kind}/{path}
GET
Listsearchapp — List Apps for Search
/v1/w/{workspace}/apps/list-search
GET
Getpublicsecretofapp — Get Public Secret of App
/v1/w/{workspace}/apps/secret-of/{path}
GET
Getpublicsecretoflatestversionofapp — Get Public Secret of Latest Version of an App Bundle
/v1/w/{workspace}/apps/secret-of-latest-version/{path}
POST
Signs3objects — Sign S3 Objects, to be Used by Anonymous Users in Public Apps
/v1/w/{workspace}/apps/sign-s3-objects
POST
Updateapp — Update App
/v1/w/{workspace}/apps/update/{path}
POST
Updateappraw — Update App
/v1/w/{workspace}/apps/update-raw/{path}
DELETE
Deletes3filefromapp — Delete S3 File from App
/v1/w/{workspace}/apps-u/delete-s3-file
POST
Executecomponent — ExecuteComponent
/v1/w/{workspace}/apps-u/execute-component/{path}
GET
Getpublicappbysecret — Get Public App by Secret
/v1/w/{workspace}/apps-u/public-app/{path}
GET
Getpublicresource — Get Public Resource
/v1/w/{workspace}/apps-u/public-resource/{path}
POST
Uploads3filefromapp — Upload S3 File from App
/v1/w/{workspace}/apps-u/upload-s3-file/{path}

MCP Tools

get-hub-app-id

Get Hub App by Id

read-only idempotent
get-hub-raw-app-id

Get Hub Raw App by Id

read-only idempotent
list-all-hub-apps

List All Hub Apps

read-only idempotent
get-public-app-custom-path

Get Public App by Custom Path

read-only idempotent
create-app

Create App

create-app-raw

Create App Raw

check-if-custom-path-exists

Check if Custom Path Exists

read-only idempotent
delete-app

Delete App

idempotent
does-app-exisst-path

Does an App Exisst at Path

read-only idempotent
get-app-path-draft

Get App by Path with Draft

read-only idempotent
get-app-lite-path

Get App Lite by Path

read-only idempotent
get-app-path

Get App by Path

read-only idempotent
get-app-version

Get App by Version

read-only idempotent
get-raw-app-data

Get Raw App Data by

read-only idempotent
get-apps-s-latest-version

Get Apps's Latest Version

read-only idempotent
get-app-history-path

Get App History by Path

read-only idempotent
update-app-history

Update App History

list-all-apps

List All Apps

read-only idempotent
list-app-paths-workspace-runnable

List App Paths from Workspace Runnable

read-only idempotent
list-apps-search

List Apps for Search

read-only idempotent
get-public-secret-app

Get Public Secret of App

read-only idempotent
get-public-secret-latest-version

Get Public Secret of Latest Version of an App Bundle

read-only idempotent
sign-s3-objects-be-used

Sign S3 Objects, to be Used by Anonymous Users in Public Apps

update-app

Update App

update-app-2

Update App

delete-s3-file-app

Delete S3 File from App

idempotent
executecomponent

ExecuteComponent

get-public-app-secret

Get Public App by Secret

read-only idempotent
get-public-resource

Get Public Resource

read-only idempotent
upload-s3-file-app

Upload S3 File from App

Capability Spec

windmill-app.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Windmill API — app
  description: 'Windmill API — app. 30 operations. Lead operation: Get Hub App by Id. Self-contained Naftiko capability covering
    one Windmill business surface.'
  tags:
  - Windmill
  - app
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    WINDMILL_API_KEY: WINDMILL_API_KEY
capability:
  consumes:
  - type: http
    namespace: windmill-app
    baseUri: ''
    description: Windmill API — app business capability. Self-contained, no shared references.
    resources:
    - name: apps-hub-get-id
      path: /apps/hub/get/{id}
      operations:
      - name: gethubappbyid
        method: GET
        description: Get Hub App by Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: apps-hub-get_raw-id
      path: /apps/hub/get_raw/{id}
      operations:
      - name: gethubrawappbyid
        method: GET
        description: Get Hub Raw App by Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: apps-hub-list
      path: /apps/hub/list
      operations:
      - name: listhubapps
        method: GET
        description: List All Hub Apps
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: apps_u-public_app_by_custom_path-custom_path
      path: /apps_u/public_app_by_custom_path/{custom_path}
      operations:
      - name: getpublicappbycustompath
        method: GET
        description: Get Public App by Custom Path
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-create
      path: /w/{workspace}/apps/create
      operations:
      - name: createapp
        method: POST
        description: Create App
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: w-workspace-apps-create_raw
      path: /w/{workspace}/apps/create_raw
      operations:
      - name: createappraw
        method: POST
        description: Create App Raw
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: w-workspace-apps-custom_path_exists-custom_path
      path: /w/{workspace}/apps/custom_path_exists/{custom_path}
      operations:
      - name: custompathexists
        method: GET
        description: Check if Custom Path Exists
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-delete-path
      path: /w/{workspace}/apps/delete/{path}
      operations:
      - name: deleteapp
        method: DELETE
        description: Delete App
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-exists-path
      path: /w/{workspace}/apps/exists/{path}
      operations:
      - name: existsapp
        method: GET
        description: Does an App Exisst at Path
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-get-draft-path
      path: /w/{workspace}/apps/get/draft/{path}
      operations:
      - name: getappbypathwithdraft
        method: GET
        description: Get App by Path with Draft
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-get-lite-path
      path: /w/{workspace}/apps/get/lite/{path}
      operations:
      - name: getapplitebypath
        method: GET
        description: Get App Lite by Path
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-get-p-path
      path: /w/{workspace}/apps/get/p/{path}
      operations:
      - name: getappbypath
        method: GET
        description: Get App by Path
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: with_starred_info
          in: query
          type: boolean
    - name: w-workspace-apps-get-v-id
      path: /w/{workspace}/apps/get/v/{id}
      operations:
      - name: getappbyversion
        method: GET
        description: Get App by Version
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-get_data-v-secretWithExtension
      path: /w/{workspace}/apps/get_data/v/{secretWithExtension}
      operations:
      - name: getrawappdata
        method: GET
        description: Get Raw App Data by
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: secretWithExtension
          in: path
          type: string
          required: true
    - name: w-workspace-apps-get_latest_version-path
      path: /w/{workspace}/apps/get_latest_version/{path}
      operations:
      - name: getapplatestversion
        method: GET
        description: Get Apps's Latest Version
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-history-p-path
      path: /w/{workspace}/apps/history/p/{path}
      operations:
      - name: getapphistorybypath
        method: GET
        description: Get App History by Path
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-history_update-a-id-v-version
      path: /w/{workspace}/apps/history_update/a/{id}/v/{version}
      operations:
      - name: updateapphistory
        method: POST
        description: Update App History
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: w-workspace-apps-list
      path: /w/{workspace}/apps/list
      operations:
      - name: listapps
        method: GET
        description: List All Apps
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: path_start
          in: query
          type: string
          description: mask to filter matching starting path
        - name: path_exact
          in: query
          type: string
          description: mask to filter exact matching path
        - name: starred_only
          in: query
          type: boolean
          description: (default false)
        - name: include_draft_only
          in: query
          type: boolean
          description: (default false)
        - name: with_deployment_msg
          in: query
          type: boolean
          description: (default false)
        - name: label
          in: query
          type: string
          description: Filter by label
    - name: w-workspace-apps-list_paths_from_workspace_runnable-runnable_kind-path
      path: /w/{workspace}/apps/list_paths_from_workspace_runnable/{runnable_kind}/{path}
      operations:
      - name: listapppathsfromworkspacerunnable
        method: GET
        description: List App Paths from Workspace Runnable
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-list_search
      path: /w/{workspace}/apps/list_search
      operations:
      - name: listsearchapp
        method: GET
        description: List Apps for Search
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-secret_of-path
      path: /w/{workspace}/apps/secret_of/{path}
      operations:
      - name: getpublicsecretofapp
        method: GET
        description: Get Public Secret of App
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-secret_of_latest_version-path
      path: /w/{workspace}/apps/secret_of_latest_version/{path}
      operations:
      - name: getpublicsecretoflatestversionofapp
        method: GET
        description: Get Public Secret of Latest Version of an App Bundle
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps-sign_s3_objects
      path: /w/{workspace}/apps/sign_s3_objects
      operations:
      - name: signs3objects
        method: POST
        description: Sign S3 Objects, to be Used by Anonymous Users in Public Apps
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: w-workspace-apps-update-path
      path: /w/{workspace}/apps/update/{path}
      operations:
      - name: updateapp
        method: POST
        description: Update App
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: w-workspace-apps-update_raw-path
      path: /w/{workspace}/apps/update_raw/{path}
      operations:
      - name: updateappraw
        method: POST
        description: Update App
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: w-workspace-apps_u-delete_s3_file
      path: /w/{workspace}/apps_u/delete_s3_file
      operations:
      - name: deletes3filefromapp
        method: DELETE
        description: Delete S3 File from App
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: delete_token
          in: query
          type: string
          required: true
    - name: w-workspace-apps_u-execute_component-path
      path: /w/{workspace}/apps_u/execute_component/{path}
      operations:
      - name: executecomponent
        method: POST
        description: ExecuteComponent
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: w-workspace-apps_u-public_app-path
      path: /w/{workspace}/apps_u/public_app/{path}
      operations:
      - name: getpublicappbysecret
        method: GET
        description: Get Public App by Secret
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps_u-public_resource-path
      path: /w/{workspace}/apps_u/public_resource/{path}
      operations:
      - name: getpublicresource
        method: GET
        description: Get Public Resource
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: w-workspace-apps_u-upload_s3_file-path
      path: /w/{workspace}/apps_u/upload_s3_file/{path}
      operations:
      - name: uploads3filefromapp
        method: POST
        description: Upload S3 File from App
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: file_key
          in: query
          type: string
        - name: file_extension
          in: query
          type: string
        - name: s3_resource_path
          in: query
          type: string
        - name: resource_type
          in: query
          type: string
        - name: storage
          in: query
          type: string
        - name: content_type
          in: query
          type: string
        - name: content_disposition
          in: query
          type: string
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.WINDMILL_API_KEY}}'
  exposes:
  - type: rest
    namespace: windmill-app-rest
    port: 8080
    description: REST adapter for Windmill API — app. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/apps/hub/get/{id}
      name: apps-hub-get-id
      description: REST surface for apps-hub-get-id.
      operations:
      - method: GET
        name: gethubappbyid
        description: Get Hub App by Id
        call: windmill-app.gethubappbyid
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/apps/hub/get-raw/{id}
      name: apps-hub-get-raw-id
      description: REST surface for apps-hub-get_raw-id.
      operations:
      - method: GET
        name: gethubrawappbyid
        description: Get Hub Raw App by Id
        call: windmill-app.gethubrawappbyid
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/apps/hub/list
      name: apps-hub-list
      description: REST surface for apps-hub-list.
      operations:
      - method: GET
        name: listhubapps
        description: List All Hub Apps
        call: windmill-app.listhubapps
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/apps-u/public-app-by-custom-path/{custom-path}
      name: apps-u-public-app-by-custom-path-custom-path
      description: REST surface for apps_u-public_app_by_custom_path-custom_path.
      operations:
      - method: GET
        name: getpublicappbycustompath
        description: Get Public App by Custom Path
        call: windmill-app.getpublicappbycustompath
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/create
      name: w-workspace-apps-create
      description: REST surface for w-workspace-apps-create.
      operations:
      - method: POST
        name: createapp
        description: Create App
        call: windmill-app.createapp
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/create-raw
      name: w-workspace-apps-create-raw
      description: REST surface for w-workspace-apps-create_raw.
      operations:
      - method: POST
        name: createappraw
        description: Create App Raw
        call: windmill-app.createappraw
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/custom-path-exists/{custom-path}
      name: w-workspace-apps-custom-path-exists-custom-path
      description: REST surface for w-workspace-apps-custom_path_exists-custom_path.
      operations:
      - method: GET
        name: custompathexists
        description: Check if Custom Path Exists
        call: windmill-app.custompathexists
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/delete/{path}
      name: w-workspace-apps-delete-path
      description: REST surface for w-workspace-apps-delete-path.
      operations:
      - method: DELETE
        name: deleteapp
        description: Delete App
        call: windmill-app.deleteapp
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/exists/{path}
      name: w-workspace-apps-exists-path
      description: REST surface for w-workspace-apps-exists-path.
      operations:
      - method: GET
        name: existsapp
        description: Does an App Exisst at Path
        call: windmill-app.existsapp
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/get/draft/{path}
      name: w-workspace-apps-get-draft-path
      description: REST surface for w-workspace-apps-get-draft-path.
      operations:
      - method: GET
        name: getappbypathwithdraft
        description: Get App by Path with Draft
        call: windmill-app.getappbypathwithdraft
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/get/lite/{path}
      name: w-workspace-apps-get-lite-path
      description: REST surface for w-workspace-apps-get-lite-path.
      operations:
      - method: GET
        name: getapplitebypath
        description: Get App Lite by Path
        call: windmill-app.getapplitebypath
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/get/p/{path}
      name: w-workspace-apps-get-p-path
      description: REST surface for w-workspace-apps-get-p-path.
      operations:
      - method: GET
        name: getappbypath
        description: Get App by Path
        call: windmill-app.getappbypath
        with:
          with_starred_info: rest.with_starred_info
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/get/v/{id}
      name: w-workspace-apps-get-v-id
      description: REST surface for w-workspace-apps-get-v-id.
      operations:
      - method: GET
        name: getappbyversion
        description: Get App by Version
        call: windmill-app.getappbyversion
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/get-data/v/{secretwithextension}
      name: w-workspace-apps-get-data-v-secretwithextension
      description: REST surface for w-workspace-apps-get_data-v-secretWithExtension.
      operations:
      - method: GET
        name: getrawappdata
        description: Get Raw App Data by
        call: windmill-app.getrawappdata
        with:
          secretWithExtension: rest.secretWithExtension
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/get-latest-version/{path}
      name: w-workspace-apps-get-latest-version-path
      description: REST surface for w-workspace-apps-get_latest_version-path.
      operations:
      - method: GET
        name: getapplatestversion
        description: Get Apps's Latest Version
        call: windmill-app.getapplatestversion
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/history/p/{path}
      name: w-workspace-apps-history-p-path
      description: REST surface for w-workspace-apps-history-p-path.
      operations:
      - method: GET
        name: getapphistorybypath
        description: Get App History by Path
        call: windmill-app.getapphistorybypath
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/history-update/a/{id}/v/{version}
      name: w-workspace-apps-history-update-a-id-v-version
      description: REST surface for w-workspace-apps-history_update-a-id-v-version.
      operations:
      - method: POST
        name: updateapphistory
        description: Update App History
        call: windmill-app.updateapphistory
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/list
      name: w-workspace-apps-list
      description: REST surface for w-workspace-apps-list.
      operations:
      - method: GET
        name: listapps
        description: List All Apps
        call: windmill-app.listapps
        with:
          path_start: rest.path_start
          path_exact: rest.path_exact
          starred_only: rest.starred_only
          include_draft_only: rest.include_draft_only
          with_deployment_msg: rest.with_deployment_msg
          label: rest.label
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/list-paths-from-workspace-runnable/{runnable-kind}/{path}
      name: w-workspace-apps-list-paths-from-workspace-runnable-runnable-kind-path
      description: REST surface for w-workspace-apps-list_paths_from_workspace_runnable-runnable_kind-path.
      operations:
      - method: GET
        name: listapppathsfromworkspacerunnable
        description: List App Paths from Workspace Runnable
        call: windmill-app.listapppathsfromworkspacerunnable
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/list-search
      name: w-workspace-apps-list-search
      description: REST surface for w-workspace-apps-list_search.
      operations:
      - method: GET
        name: listsearchapp
        description: List Apps for Search
        call: windmill-app.listsearchapp
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/secret-of/{path}
      name: w-workspace-apps-secret-of-path
      description: REST surface for w-workspace-apps-secret_of-path.
      operations:
      - method: GET
        name: getpublicsecretofapp
        description: Get Public Secret of App
        call: windmill-app.getpublicsecretofapp
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/secret-of-latest-version/{path}
      name: w-workspace-apps-secret-of-latest-version-path
      description: REST surface for w-workspace-apps-secret_of_latest_version-path.
      operations:
      - method: GET
        name: getpublicsecretoflatestversionofapp
        description: Get Public Secret of Latest Version of an App Bundle
        call: windmill-app.getpublicsecretoflatestversionofapp
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/sign-s3-objects
      name: w-workspace-apps-sign-s3-objects
      description: REST surface for w-workspace-apps-sign_s3_objects.
      operations:
      - method: POST
        name: signs3objects
        description: Sign S3 Objects, to be Used by Anonymous Users in Public Apps
        call: windmill-app.signs3objects
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/update/{path}
      name: w-workspace-apps-update-path
      description: REST surface for w-workspace-apps-update-path.
      operations:
      - method: POST
        name: updateapp
        description: Update App
        call: windmill-app.updateapp
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps/update-raw/{path}
      name: w-workspace-apps-update-raw-path
      description: REST surface for w-workspace-apps-update_raw-path.
      operations:
      - method: POST
        name: updateappraw
        description: Update App
        call: windmill-app.updateappraw
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps-u/delete-s3-file
      name: w-workspace-apps-u-delete-s3-file
      description: REST surface for w-workspace-apps_u-delete_s3_file.
      operations:
      - method: DELETE
        name: deletes3filefromapp
        description: Delete S3 File from App
        call: windmill-app.deletes3filefromapp
        with:
          delete_token: rest.delete_token
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps-u/execute-component/{path}
      name: w-workspace-apps-u-execute-component-path
      description: REST surface for w-workspace-apps_u-execute_component-path.
      operations:
      - method: POST
        name: executecomponent
        description: ExecuteComponent
        call: windmill-app.executecomponent
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps-u/public-app/{path}
      name: w-workspace-apps-u-public-app-path
      description: REST surface for w-workspace-apps_u-public_app-path.
      operations:
      - method: GET
        name: getpublicappbysecret
        description: Get Public App by Secret
        call: windmill-app.getpublicappbysecret
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps-u/public-resource/{path}
      name: w-workspace-apps-u-public-resource-path
      description: REST surface for w-workspace-apps_u-public_resource-path.
      operations:
      - method: GET
        name: getpublicresource
        description: Get Public Resource
        call: windmill-app.getpublicresource
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/w/{workspace}/apps-u/upload-s3-file/{path}
      name: w-workspace-apps-u-upload-s3-file-path
      description: REST surface for w-workspace-apps_u-upload_s3_file-path.
      operations:
      - method: POST
        name: uploads3filefromapp
        description: Upload S3 File from App
        call: windmill-app.uploads3filefromapp
        with:
          file_key: rest.file_key
          file_extension: rest.file_extension
          s3_resource_path: rest.s3_resource_path
          resource_type: rest.resource_type
          storage: rest.storage
          content_type: rest.content_type
          content_disposition: rest.content_disposition
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: windmill-app-mcp
    port: 9090
    transport: http
    description: MCP adapter for Windmill API — app. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: get-hub-app-id
      description: Get Hub App by Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.gethubappbyid
      outputParameters:
      - type: object
        mapping: $.
    - name: get-hub-raw-app-id
      description: Get Hub Raw App by Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.gethubrawappbyid
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-hub-apps
      description: List All Hub Apps
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.listhubapps
      outputParameters:
      - type: object
        mapping: $.
    - name: get-public-app-custom-path
      description: Get Public App by Custom Path
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.getpublicappbycustompath
      outputParameters:
      - type: object
        mapping: $.
    - name: create-app
      description: Create App
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: windmill-app.createapp
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: create-app-raw
      description: Create App Raw
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: windmill-app.createappraw
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: check-if-custom-path-exists
      description: Check if Custom Path Exists
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.custompathexists
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-app
      description: Delete App
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: windmill-app.deleteapp
      outputParameters:
      - type: object
        mapping: $.
    - name: does-app-exisst-path
      description: Does an App Exisst at Path
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.existsapp
      outputParameters:
      - type: object
        mapping: $.
    - name: get-app-path-draft
      description: Get App by Path with Draft
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.getappbypathwithdraft
      outputParameters:
      - type: object
        mapping: $.
    - name: get-app-lite-path
      description: Get App Lite by Path
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.getapplitebypath
      outputParameters:
      - type: object
        mapping: $.
    - name: get-app-path
      description: Get App by Path
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.getappbypath
      with:
        with_starred_info: tools.with_starred_info
      outputParameters:
      - type: object
        mapping: $.
    - name: get-app-version
      description: Get App by Version
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.getappbyversion
      outputParameters:
      - type: object
        mapping: $.
    - name: get-raw-app-data
      description: Get Raw App Data by
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.getrawappdata
      with:
        secretWithExtension: tools.secretWithExtension
      outputParameters:
      - type: object
        mapping: $.
    - name: get-apps-s-latest-version
      description: Get Apps's Latest Version
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.getapplatestversion
      outputParameters:
      - type: object
        mapping: $.
    - name: get-app-history-path
      description: Get App History by Path
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.getapphistorybypath
      outputParameters:
      - type: object
        mapping: $.
    - name: update-app-history
      description: Update App History
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: windmill-app.updateapphistory
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-apps
      description: List All Apps
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.listapps
      with:
        path_start: tools.path_start
        path_exact: tools.path_exact
        starred_only: tools.starred_only
        include_draft_only: tools.include_draft_only
        with_deployment_msg: tools.with_deployment_msg
        label: tools.label
      outputParameters:
      - type: object
        mapping: $.
    - name: list-app-paths-workspace-runnable
      description: List App Paths from Workspace Runnable
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.listapppathsfromworkspacerunnable
      outputParameters:
      - type: object
        mapping: $.
    - name: list-apps-search
      description: List Apps for Search
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: windmill-app.li

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/windmill/refs/heads/main/capabilities/windmill-app.yaml