# geni workflow stage-input (/cli/resource/workflow/stage-input)



```sh
geni workflow stage-input <file> [flags]
```

Uploads a local file as a test value for a file-type input field (an `inputSchema` property with `"format": "file"`) and prints a `store://` URI. Pass that URI as the field's value in [`geni workflow test --payload`](/cli/resource/workflow/test); the runtime materializes it to `inputs/<field>/<filename>`, exactly as a real upload would. The bytes are uploaded directly to storage, so binary files are preserved. For a multi-file field (`{ "type": "array", "items": { "format": "file" } }`), stage each file and pass the URIs as an array.

## Synopsis [#synopsis]

```sh
geni workflow stage-input ./sample-resume.docx
geni workflow stage-input ./data.csv --workflow wf_01HX
```

| Arg / Flag        | Notes                                                  |
| ----------------- | ------------------------------------------------------ |
| `<file>`          | Local file to upload.                                  |
| `--workflow <id>` | Workflow id. Omit to use the marker in `--dir`.        |
| `--dir <path>`    | Resource directory for id resolution. Defaults to cwd. |
| `--json`          | Machine-readable output.                               |

```sh
URI=$(geni workflow stage-input ./resume.docx --json | jq -r .storageUri)
geni workflow test --payload "{\"resume\": \"$URI\"}"
```
