Skip to main content

PUT to Stage


Uploads data files from a local file system directory/folder on a client machine to Databend named internal stages.


  • A POST to /v1/upload_to_stage uploads the file to the server stage with stream in the POST body, and returns a JSON containing the query status.
stage_name:<your-stage-name>The client header of the internal stage nameYES
update=@<your-file-path>The file path which will be upload to the stageYES

Quick Example

This example show how we update a file to a named internal stage.

  1. Create a named internal stage from MySQL client:
CREATE STAGE my_internal_stage;
  1. Download sample data and PUT to stage

Download books.parquet

Put books.parquet to stage
curl  -H "stage_name:my_internal_stage" -F "upload=@books.parquet" -XPUT "http://localhost:8000/v1/upload_to_stage"

Then check the stage files with:

LIST @my_internal_stage;
| file_name |
| books.parquet |

The file books.parquet has PUT to your named internal stage.