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

# ソースの認証情報をテスト

> データソースのプロバイダーにソースの認証情報の検証を依頼し、その結果を返します。ソースには何も変更を加えません。

テストできるのは、`active` の接続に紐付けられたソースだけです。

リクエストボディはありません。



## OpenAPI

````yaml /ja/api-reference/openapi_service.json post /knowledge-fs/spaces/{knowledge_base_id}/sources/{source_id}/test
openapi: 3.0.1
info:
  description: >-
    Dify アプリケーションとナレッジベースのための REST API です。アプリケーション系エンドポイントはアプリの API
    キーで、ナレッジ系エンドポイントはナレッジベースの API キーで認証します。
  title: Dify サービス API
  version: 1.0.0
servers:
  - description: Dify サービス API のベース URL です。セルフホスト環境では、独自の API ベース URL に置き換えてください。
    url: https://{api_base_url}
    variables:
      api_base_url:
        default: api.dify.ai/v1
        description: API ベース URL のホストとパス（`https://` を除く）。
security:
  - ApiKeyAuth: []
tags:
  - 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: データソースプラグインとパイプライン実行を含むナレッジパイプラインの管理と実行のための操作です。
    name: ナレッジパイプライン
  - description: ナレッジベースに質問し、回答をストリーミングで受け取ります。
    name: クエリ
  - description: クエリが何を検索したか、またその理由を確認します。
    name: クエリ記録
  - description: リサーチの質問をバックグラウンドで実行し、その結果を取得します。
    name: リサーチタスク
  - description: ナレッジベースのドキュメントと、そのファイル、リビジョン、チャンクを読み取り、ドキュメントにメタデータのラベルを付けます。
    name: ドキュメントとチャンク
  - description: インデックス処理の追跡、キャンセル、再試行と、ナレッジベースのバックグラウンドタスクの一覧表示を行います。
    name: インデックスタスク
  - description: ドキュメントファイル、ファイルのバッチ、またはソースの削除を、完了するまで追跡します。
    name: 削除ジョブ
  - description: ナレッジベースにデータを供給するソース、その同期スケジュール、接続を管理します。
    name: ソース
  - description: ソースの即時同期、ウェブサイトのページまたはプロバイダーのアイテムのインポート、実行の追跡、キャンセル、再試行を行います。
    name: ソースの同期とインポート
  - description: ナレッジベースのモデルと検索設定の読み取りと変更、および変更によって始まる移行の追跡を行います。
    name: 設定
paths:
  /knowledge-fs/spaces/{knowledge_base_id}/sources/{source_id}/test:
    post:
      tags:
        - Sources
      summary: ソースの認証情報をテスト
      description: |-
        データソースのプロバイダーにソースの認証情報の検証を依頼し、その結果を返します。ソースには何も変更を加えません。

        テストできるのは、`active` の接続に紐付けられたソースだけです。

        リクエストボディはありません。
      operationId: testSourceCredentials
      parameters:
        - description: >-
            ナレッジベース ID です。ナレッジベースの **API アクセス** ダイアログに表示されるサービス API
            エンドポイントの最後のセグメント（`…/knowledge-fs/spaces/<knowledge base
            ID>`）です。アドレスバーでは `/datasets/new/` の後のセグメントです。
          in: path
          name: knowledge_base_id
          required: true
          schema:
            format: uuid
            type: string
        - description: >-
            ソース ID です。[ソース一覧を取得](/ja/api-reference/sources/list-sources)
            から取得します。
          in: path
          name: source_id
          required: true
          schema:
            format: uuid
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                invalid:
                  summary: レスポンス例 - 拒否された認証情報
                  value:
                    code: SOURCE_CREDENTIAL_TEST_FAILED
                    error: >-
                      The Agent Knowledge Base operation requires a
                      configuration change before it can continue.
                    failure:
                      action: configure_source
                      category: configuration
                      code: SOURCE_CREDENTIAL_TEST_FAILED
                      message: >-
                        The Agent Knowledge Base operation requires a
                        configuration change before it can continue.
                      parameters: null
                      retryPolicy: after_configuration
                      stage: credential-test
                      traceId: null
                    valid: false
                valid:
                  summary: レスポンス例 - 有効な認証情報
                  value:
                    code: null
                    error: null
                    failure: null
                    valid: true
              schema:
                properties:
                  code:
                    description: >-
                      `valid` が `false` の場合は `failure.code` です。それ以外の場合は `null`
                      です。ここでの `SOURCE_CREDENTIAL_TEST_FAILED`
                      は、プロバイダーが認証情報を拒否したことを意味します。
                    nullable: true
                    type: string
                  error:
                    description: >-
                      `valid` が `false` の場合は `failure.message`、それ以外の場合は `null`
                      です。テキストは失敗の `category` または `code`
                      ごとに固定されており、プロバイダー自身の理由が入ることはありません。
                    nullable: true
                    type: string
                  failure:
                    allOf:
                      - $ref: '#/components/schemas/KnowledgeBaseErrorDetails'
                    description: >-
                      `valid` が `false` の場合はエラー詳細です。プロバイダーが理由を示さなかった場合は `null`
                      です。`valid` が `true` の場合は `null` です。`stage` は
                      `credential-test` です。
                    nullable: true
                  valid:
                    description: プロバイダーが認証情報を受け入れた場合は `true` です。
                    type: boolean
                type: object
          description: 'テスト結果です。認証情報が拒否された場合も 200 が返り、`valid: false` とエラー詳細が含まれます。'
        '400':
          content:
            application/json:
              examples:
                knowledge_fs_invalid_request:
                  summary: knowledge_fs_invalid_request
                  value:
                    code: knowledge_fs_invalid_request
                    failure:
                      category: validation
                      code: KNOWLEDGE_FS_INVALID_REQUEST
                      message: The Agent Knowledge Base request is invalid.
                      retryPolicy: never
                      traceId: 5e2a9c17-3b4d-4f60-8a1b-2c3d4e5f6a7b
                    message: The Agent Knowledge Base request is invalid.
                    status: 400
                knowledge_fs_invalid_request_path:
                  summary: knowledge_fs_invalid_request (path ID)
                  value:
                    code: knowledge_fs_invalid_request
                    message: Agent Knowledge Base request is invalid.
                    status: 400
          description: |-
            - `knowledge_fs_invalid_request`：`source_id` が UUID ではありません。
            - `knowledge_fs_invalid_request`：`source_id` の形式が正しくありません。
        '401':
          content:
            application/json:
              examples:
                knowledge_fs_invalid_credential:
                  summary: knowledge_fs_invalid_credential
                  value:
                    code: knowledge_fs_invalid_credential
                    message: Invalid Agent Knowledge Base service credential.
                    status: 401
                unauthorized:
                  summary: unauthorized
                  value:
                    code: unauthorized
                    message: Access token is invalid
                    status: 401
          description: >-
            - `unauthorized`：`Authorization` ヘッダーがないか、キーが不明であるか、ナレッジベースの API
            キーではありません。

            - `knowledge_fs_invalid_credential`：キーは有効ですが、キーのワークスペースにこの ID
            のナレッジベースが存在しないか、キーがワークスペースに紐付いていません。
        '403':
          content:
            application/json:
              examples:
                forbidden:
                  summary: forbidden (rate limit)
                  value:
                    code: forbidden
                    message: >-
                      Sorry, you have reached the knowledge base request rate
                      limit of your subscription.
                    status: 403
                knowledge_fs_access_denied:
                  summary: knowledge_fs_access_denied (key scope)
                  value:
                    code: knowledge_fs_access_denied
                    message: Agent Knowledge Base operation is not allowed.
                    status: 403
          description: >-
            -
            `knowledge_fs_access_denied`：キーのアクセス範囲がほかのナレッジベースに限定されているか、このナレッジベースで
            **API アクセス** がオフになっています。または、ナレッジベースがアクティブではありません。

            - `forbidden`：Dify Cloud
            で、ワークスペースがサブスクリプションで定められたナレッジベースのリクエストレート制限に達しました。読み取りを含め、すべての呼び出しがカウントされます。
        '404':
          content:
            application/json:
              examples:
                knowledge_fs_resource_not_found:
                  summary: knowledge_fs_resource_not_found
                  value:
                    code: knowledge_fs_resource_not_found
                    failure:
                      category: not_found
                      code: KNOWLEDGE_FS_NOT_FOUND
                      message: >-
                        The requested Agent Knowledge Base resource was not
                        found.
                      retryPolicy: never
                    message: The requested Agent Knowledge Base resource was not found.
                    status: 404
                not_found:
                  summary: not_found (feature off)
                  value:
                    code: not_found
                    message: >-
                      The requested URL was not found on the server. If you
                      entered the URL manually please check your spelling and
                      try again.
                    status: 404
          description: >-
            - `knowledge_fs_resource_not_found`：この ID のソースがナレッジベースに存在しないか、その
            `permission_scope` がキーに付与された権限の範囲外です。

            - `not_found`：このデプロイ環境では Agent ナレッジベース機能が無効になっています。
        '502':
          content:
            application/json:
              examples:
                knowledge_fs_upstream_unavailable:
                  summary: knowledge_fs_upstream_unavailable
                  value:
                    code: knowledge_fs_upstream_unavailable
                    message: Agent Knowledge Base is unavailable.
                    status: 502
                knowledge_fs_upstream_unavailable_test:
                  summary: >-
                    knowledge_fs_upstream_unavailable
                    (SOURCE_CREDENTIAL_TEST_FAILED)
                  value:
                    code: knowledge_fs_upstream_unavailable
                    failure:
                      action: configure_source
                      category: configuration
                      code: SOURCE_CREDENTIAL_TEST_FAILED
                      message: >-
                        The Agent Knowledge Base operation requires a
                        configuration change before it can continue.
                      retryPolicy: after_configuration
                      stage: credential-test
                      traceId: 5e2a9c17-3b4d-4f60-8a1b-2c3d4e5f6a7b
                    message: >-
                      The Agent Knowledge Base operation requires a
                      configuration change before it can continue.
                    status: 502
          description: >-
            -
            `knowledge_fs_upstream_unavailable`：時間内に応答が返らなかったか、応答を読み取れませんでした。しばらく待ってから再試行してください。

            -
            `knowledge_fs_upstream_unavailable`：プロバイダーまたは接続でエラーが発生したため、テストを実行できませんでした。レスポンスボディには、`stage`
            が `credential-test` で、`SOURCE_CREDENTIAL_TEST_FAILED` などのコードを含む
            `failure` が返されます。接続がアクティブでない場合や認証情報を解決できない場合は、Dify の **連携** >
            **データソース** で接続を修正してください。プロバイダーに一時的に到達できない場合は、しばらく待ってから再試行してください。

            -
            `knowledge_fs_upstream_unavailable`：デプロイ環境に認証情報のテスト機能が設定されていません。`failure.code`
            は `KNOWLEDGE_FS_INTERNAL_ERROR` です。
        '503':
          content:
            application/json:
              examples:
                knowledge_fs_operation_unavailable:
                  summary: knowledge_fs_operation_unavailable
                  value:
                    code: knowledge_fs_operation_unavailable
                    message: Agent Knowledge Base operation is not available.
                    status: 503
                knowledge_fs_operation_unavailable_upstream:
                  summary: knowledge_fs_operation_unavailable (temporary)
                  value:
                    code: knowledge_fs_operation_unavailable
                    failure:
                      action: retry
                      category: dependency
                      code: KNOWLEDGE_FS_UNAVAILABLE
                      message: >-
                        A service required by Agent Knowledge Base is
                        temporarily unavailable.
                      retryPolicy: manual
                      traceId: 5e2a9c17-3b4d-4f60-8a1b-2c3d4e5f6a7b
                    message: >-
                      A service required by Agent Knowledge Base is temporarily
                      unavailable.
                    status: 503
          description: >-
            - `knowledge_fs_operation_unavailable`：このワークスペースで Agent
            ナレッジベース機能が設定されていないか、このデプロイ環境ではこの操作を利用できません。または、リクエストの認可中に、このナレッジベースに対するキーのアクセス権が変更されました。

            -
            `knowledge_fs_operation_unavailable`：現在このリクエストを処理できません。`failure.retryPolicy`
            に従ってください。
components:
  schemas:
    KnowledgeBaseErrorDetails:
      properties:
        action:
          description: >-
            推奨される次の対応です。ある場合は
            `configure_model`、`configure_parser`、`configure_source`、`contact_admin`、`reupload`、`retry`
            のいずれかです。該当しない場合は `null` で、HTTP エラーのボディでは省略されます。
          nullable: true
          type: string
        category:
          description: >-
            失敗の種類で、`authorization`、`canceled`、`configuration`、`conflict`、`dependency`、`internal`、`not_found`、`rate_limit`、`timeout`、`validation`
            のいずれかです。
          type: string
        code:
          description: >-
            大文字のスネークケースで表される固定のエラーコードです（例：`KNOWLEDGE_FS_CONFLICT`、`SOURCE_CREDENTIAL_TEST_FAILED`）。
          type: string
        message:
          description: エラーコードまたは失敗の種類に対応する公開用メッセージです。プロバイダーのエラー詳細は公開されません。
          type: string
        parameters:
          additionalProperties: true
          description: >-
            失敗の内容を補足する最大 8 個の値です。キーは
            `attempt`、`currentRowVersion`、`documentCount`、`expectedRowVersion`、`fileSizeBytes`、`limit`、`maxFileSizeBytes`、`maxItems`、`modelType`、`providerKind`、`retryAfterSeconds`、`status`
            のいずれかです。値がない場合は `null` で、HTTP エラーのボディでは省略されます。
          nullable: true
          type: object
        retryPolicy:
          description: >-
            再試行で解決できるかどうかです。`automatic`（サービスが自動で再試行）、`manual`（呼び出し側で再試行）、`after_configuration`（先に
            Dify でナレッジベースの設定を修正）、`never`（リクエストを変更）のいずれかです。
          type: string
        stage:
          description: >-
            失敗が発生した段階です（例：`query_generation`、`credential-test`）。該当しない場合は `null`
            で、HTTP エラーのボディでは省略されます。
          nullable: true
          type: string
        traceId:
          description: >-
            管理者に問い合わせる際に伝える参照情報です。失敗の詳細を含む成功レスポンスでは `null` になることがあり、HTTP
            エラーのボディでは省略されることがあります。
          nullable: true
          type: string
      type: object
  securitySchemes:
    ApiKeyAuth:
      bearerFormat: API_KEY
      description: >-
        すべてのリクエストは API キーで認証します：`Authorization: Bearer
        {API_KEY}`。アプリのエンドポイントにはアプリの API キーを、ナレッジのエンドポイントにはナレッジベースの API
        キーを使用します（[Dify API クイックスタート](/ja/api-reference/guides/get-started)）。


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

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.