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

# URL上のファイルをJinba Flowでテキストとして読む

> INPUT_FILE_AS_TEXTでテキスト、CSV、JSON、XML、YAML、HTMLの直接URLから内容を取得します。

直接URLにあるファイルの内容をフローで使うには`INPUT_FILE_AS_TEXT`を使います。`value`入力には1つのURLまたはURLの配列を指定できます。結果はファイル内容のテキストで、1つのURLなら文字列、複数なら配列です。要素が1つだけの配列も文字列で返ります。

## ファイルの内容を取得する

```yaml theme={null}
- id: read_file
  tool: INPUT_FILE_AS_TEXT
  input:
    - name: value
      value: "https://example.com/config.json"
    - name: description
      value: "処理する設定ファイル"
```

URLをアクセス可能なファイルの直接URLに置き換えます。成功後に`result`を確認し、想定したテキストが返ったか調べます。ファイル選択画面ではプレーンテキスト、CSV、HTML、XML、JSON、YAMLが対象です。このツールは形式を解析せず、内容をテキストで返します。`description`は任意、`use_as_input`は既定で`true`、`optional`は既定で`false`です。

## 返されたテキストを使う

後続ステップにテキストを直接渡せます。フィールドや行が必要な場合は、JSONまたはCSVとして明示的に解析してください。

```yaml theme={null}
- id: summarize_file
  tool: OPENAI_INVOKE
  needs: [read_file]
  input:
    - name: prompt
      value: |
        ファイルの内容を要約してください。CSVなら列名も挙げてください。
        {{steps.read_file.result}}
```

解析済みのCSV行が必要な場合は`INPUT_CSV_FILE`を使います。[ファイル入力](/ja/pages/tools/files/input)の「例：CSV ファイルを集計する」を参照してください。設定ファイルのAPIキーなどの秘密情報をAIプロンプトに含めないでください。

## JSON設定ファイルを確認する

Pythonでテキストを解析し、値を出力せずに必須キーの有無を確認します。

```yaml theme={null}
- id: read_config
  tool: INPUT_FILE_AS_TEXT
  input:
    - name: value
      value: "https://example.com/config.json"

- id: check_config
  tool: PYTHON_SANDBOX_RUN
  needs: [read_config]
  input:
    - name: data_type
      value: OBJECT
    - name: code
      value: |
        import json

        text = r'''{{steps.read_config.result}}'''.strip()
        required = ["database_url", "api_key"]

        try:
            config = json.loads(text) if text else None
            error = None if isinstance(config, dict) else "Config must be a JSON object"
        except json.JSONDecodeError as e:
            config, error = None, f"Invalid JSON: {e}"

        missing = [key for key in required if not config.get(key)] if error is None else []

        print(json.dumps({"valid": error is None and not missing, "error": error, "missing": missing}))
```

ファイルがJSONオブジェクトで、必須キーがすべて設定されている場合にだけ`steps.check_config.result.data.valid`が`true`になります。それ以外の場合、解析の問題は`result.data.error`に、存在しないか空のキーは`result.data.missing`に入ります。`required`はファイルに合わせて変更してください。公開ワークフローに送られた不正なJSONを拒否する場合は[JSON入力の検証](/ja/pages/tools/validation/input)を使います。

## ファイル入力の失敗を確認する

URLがない場合は「File URL is required」で失敗します。取得失敗時にはHTTPステータスが報告されます。URL、アクセス権、応答ステータスを確認してください。100 MiBを超えるファイル、5分以上かかるダウンロード、1ステップに50件を超えるURLも失敗します（[ダウンロードの上限](/ja/pages/tools/files/input#ダウンロードの上限)を参照）。`optional`が`true`でURLがない場合、`result`は`null`です。


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