> ## Documentation Index
> Fetch the complete documentation index at: https://enterprise-docs.dify.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 人間の入力フォームを送信

> **対象アプリ**：Chatflow、Workflow。

一時停止中の人間の入力フォームに、受信者の応答を送信します。受理されるとワークフローが再開されます。再開後の実行は [ワークフローイベントをストリーム](/ja/3.11.x/develop/api/workflow-runs/stream-workflow-events) で追跡してください。WebApp 配信が必要です。



## OpenAPI

````yaml /ja/3.11.x/develop/api/openapi_service.json post /form/human_input/{form_token}
openapi: 3.0.1
info:
  title: Dify サービス API
  description: >-
    Dify アプリケーションとナレッジベースのための REST API です。アプリケーション系エンドポイントはアプリの API
    キーで、ナレッジ系エンドポイントはナレッジベースの API キーで認証します。
  version: 1.0.0
servers:
  - url: https://{api_base_url}
    description: Dify サービス API のベース URL です。ご利用のデプロイ環境の API ベース URL に置き換えてください。
    variables:
      api_base_url:
        default: api.example.com/v1
        description: API ベース URL のホストとパス（`https://` を除く）。
security:
  - ApiKeyAuth: []
tags:
  - name: チャットメッセージ
    description: チャットメッセージとインタラクションに関連する操作です。
  - name: ファイル操作
    description: ファイルのアップロードとプレビューの操作です。
  - name: エンドユーザー
    description: エンドユーザー情報に関連する操作です。
  - name: メッセージフィードバック
    description: ユーザーフィードバックの操作です。
  - name: 会話管理
    description: 会話管理に関連する操作です。
  - name: 音声・テキスト変換
    description: テキスト読み上げと音声認識の操作です。
  - name: アプリケーション設定
    description: アプリケーション設定と情報を取得する操作です。
  - name: アノテーション管理
    description: ダイレクト返信用のアノテーション管理に関連する操作です。
  - name: 人間の入力
    description: 人間の入力を要する一時停止中のワークフローの再開操作です。
  - name: ワークフロー実行
    description: ワークフローの実行と管理のための操作です。
  - name: 完了メッセージ
    description: テキスト生成に関連する操作です。
  - name: ナレッジベース
    description: ナレッジベースの作成、設定、取得を含むナレッジベース管理の操作です。
  - name: ドキュメント
    description: ナレッジベース内のドキュメントの作成、更新、管理のための操作です。
  - name: チャンク
    description: ドキュメントチャンクと子チャンクの管理のための操作です。
  - name: メタデータ
    description: ナレッジベースのメタデータフィールドとドキュメントメタデータ値の管理のための操作です。
  - name: タグ管理
    description: ナレッジベースタグとタグバインディングの管理のための操作です。
  - name: モデル
    description: 利用可能なモデルを取得するための操作です。
  - name: ナレッジパイプライン
    description: データソースプラグインとパイプライン実行を含むナレッジパイプラインの管理と実行のための操作です。
paths:
  /form/human_input/{form_token}:
    post:
      tags:
        - 人間の入力
      summary: 人間の入力フォームを送信
      description: >-
        **対象アプリ**：Chatflow、Workflow。


        一時停止中の人間の入力フォームに、受信者の応答を送信します。受理されるとワークフローが再開されます。再開後の実行は
        [ワークフローイベントをストリーム](/ja/3.11.x/develop/api/workflow-runs/stream-workflow-events)
        で追跡してください。WebApp 配信が必要です。
      operationId: submitChatflowHumanInputForm
      parameters:
        - name: form_token
          in: path
          required: true
          schema:
            type: string
          description: >-
            一時停止中のフォームへのアクセストークン。ストリーミングモードのワークフローを実行エンドポイントまたはチャットメッセージを送信エンドポイントが返す
            `human_input_required` イベントから取得します。
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - inputs
                - action
                - user
              properties:
                inputs:
                  type: object
                  additionalProperties: true
                  description: >-
                    各入力の `output_variable_name` をキーとして送信する値。段落と選択の入力は文字列、`file`
                    入力は単一のファイルマッピング、`file-list` 入力はファイルマッピングの配列です。


                    ファイルマッピングは `{transfer_method: local_file, upload_file_id,
                    type}` または `{transfer_method: remote_url, url, type}`
                    で、`type` はそのフィールドの `allowed_file_types` のいずれかです。`local_file`
                    の場合、`upload_file_id` は
                    [ファイルをアップロード](/ja/3.11.x/develop/api/files/upload-file) が返す
                    `id` です。


                    実行、アップロード、送信の各呼び出しで一貫した `user` を使用してください。
                action:
                  type: string
                  description: >-
                    受信者が選択したアクションボタンの ID。フォームの `user_actions`
                    リスト（[人間の入力フォームを取得](/ja/3.11.x/develop/api/human-input/get-human-input-form)
                    エンドポイントから返される）にある `id` のいずれかと一致する必要があります。
                user:
                  type: string
                  description: >-
                    エンドユーザーの識別子。アプリ側で定義し、アプリ内で一意にします。サービス API と WebApp のユーザー ID
                    は、たとえ同じでも別物として扱われます。[エンドユーザーの識別](/ja/3.11.x/develop/api/guides/end-user-identity)
                    を参照してください。
            examples:
              approve:
                summary: リクエスト例
                value:
                  inputs:
                    feedback: 公開して問題ありません
                    priority: high
                    attachment:
                      transfer_method: local_file
                      upload_file_id: 3c8fa1b2-7d4e-4f9a-b0c1-d2e3f4a5b6c7
                      type: image
                    attachments:
                      - transfer_method: local_file
                        upload_file_id: 1a77f0df-c0e6-461c-987c-e72526f341ee
                        type: document
                      - transfer_method: remote_url
                        url: https://example.com/report.pdf
                        type: document
                  action: approve
                  user: abc-123
      responses:
        '200':
          description: フォームの送信に成功しました。レスポンスボディは空のオブジェクトです。
          content:
            application/json:
              schema:
                type: object
              examples:
                success:
                  summary: レスポンス例
                  value: {}
        '400':
          description: |-
            - `bad_request` ：フォーム受信者のタイプが無効です。
            - `invalid_form_data` ：送信内容がフォーム定義の検証に失敗しました。
          content:
            application/json:
              examples:
                bad_request:
                  summary: bad_request
                  value:
                    status: 400
                    code: bad_request
                    message: フォーム受信者のタイプが無効です
                invalid_form_data:
                  summary: invalid_form_data
                  value:
                    status: 400
                    code: invalid_form_data
                    message: 必須入力が不足しています：feedback
        '404':
          description: '`not_found` ：フォームが見つかりません。'
          content:
            application/json:
              examples:
                not_found:
                  summary: not_found
                  value:
                    status: 404
                    code: not_found
                    message: フォームが見つかりません
        '412':
          description: >-
            - `human_input_form_submitted`
            ：フォームは送信済みです。フォームはワンショットで、最初の応答が有効になります（送信したユーザーは問いません）。

            - `human_input_form_expired` ：送信が到達する前にフォームの有効期限が切れています。
          content:
            application/json:
              examples:
                human_input_form_submitted:
                  summary: human_input_form_submitted
                  value:
                    status: 412
                    code: human_input_form_submitted
                    message: >-
                      このフォームは他のユーザーによって送信済みです。form_id=a1b2c3d4-e5f6-7890-abcd-ef1234567890
                human_input_form_expired:
                  summary: human_input_form_expired
                  value:
                    status: 412
                    code: human_input_form_expired
                    message: >-
                      このフォームは有効期限切れです。form_id=a1b2c3d4-e5f6-7890-abcd-ef1234567890
components:
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: API_KEY
      description: >-
        すべてのリクエストは API キーで認証します：`Authorization: Bearer
        {API_KEY}`。アプリのエンドポイントにはアプリの API キーを、ナレッジのエンドポイントにはナレッジベースの API
        キーを使用します（[Dify API
        クイックスタート](/ja/3.11.x/develop/api/guides/get-started)）。


        キーはサーバーサイドで保管し、クライアントコードには決して埋め込まないでください。キーが欠落または無効なリクエストは HTTP
        `401`（`unauthorized`）で失敗します。

````