> ## 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.

# Load an Image URL into a Jinba Flow Workflow

> Use INPUT_IMAGE_FILE to fetch one or more image URLs and return base64 data for a later image-processing step.

Use `INPUT_IMAGE_FILE` to fetch an image from a direct URL. The `value` input accepts one URL or an array of URLs. The result is base64 image data: a string for one URL, or an array for multiple URLs. A one-element array also returns a single string.

## Fetch an image

```yaml theme={null}
- id: load_image
  tool: INPUT_IMAGE_FILE
  input:
    - name: value
      value: "https://example.com/photo.png"
    - name: description
      value: "Photo to analyze"
```

Replace the URL with a reachable direct image URL. A successful step returns a base64 data URL in `result`; pass that result to an image-capable tool. `description` is optional. `use_as_input` defaults to `true` for API and MCP inputs, and `optional` defaults to `false`.

## Analyze the loaded image

Pass the returned image data to an image-capable AI tool, as in the original pipeline example:

```yaml theme={null}
- id: analyze_image
  tool: GEMINI_INVOKE_WITH_IMAGE
  needs: [load_image]
  config:
    - name: version
      value: gemini-flash-latest
  input:
    - name: prompt
      value: "Describe this image and any visible text."
    - name: base64_image
      value: "{{steps.load_image.result}}"
```

Check `steps.analyze_image.result.content` for the description. Configure a Gemini key or use available Jinba credit.

## Check image input failures

If no URL is supplied, the step fails with “Image file URL is required.” If fetching fails, check that the URL is reachable with HTTP or HTTPS and actually returns an image; an HTTP error status fails the step. An image larger than 20 MiB, or a download that takes longer than 5 minutes, also fails the step (see [Download limits](/en/pages/tools/files/input#download-limits)). When `optional` is `true` and no value is supplied, `result` is `null`; downstream steps must handle that case.


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