GET
/
v1
/
beta
/
file_upload_url
curl --request GET \
  --url https://trytako.com/api/v1/beta/file_upload_url \
  --header 'X-API-Key: <api-key>'
{
  "url": "<string>",
  "fields": {},
  "key": "<string>",
  "file_id": "<string>"
}

Notes

  • To authenticate, you’ll need a Tako API key. It’s best practice to store it as an environment variable to avoid hardcoding sensitive credentials in your code.
  • Supported file formats: .csv, .xls, .xlsx, .parquet
  • File size is limited to 5MB currently

Uploading Your File (Using the Response)

Once you call the GET /v1/beta/file_upload_url endpoint, you’ll receive a response with:

  • A url to POST your file to (typically an S3 bucket)
  • A fields object containing required form fields

Step-by-step Instructions

  1. Make a POST request to the provided url
  2. Include all fields as form fields
  3. Attach your file as file=@<path> in a multipart/form-data request

Example Using cURL

Example File Upload
curl -X POST "https://tako-byod-files-production.s3.amazonaws.com/" \
  -F "Content-Type=text/csv" \
  -F "key=byod/10a2b16e-7116-4023-9f0e-d61f99cedd89/your_file.csv" \
  -F "x-amz-algorithm=..." \
  -F "x-amz-credential=..." \
  -F "x-amz-date=..." \
  -F "policy=..." \
  -F "x-amz-signature=..." \
  -F "file=@/path/to/your/local/file.csv"
Replace each ... with the exact value returned in the fields object from the upload URL response. Do not modify or omit any fields — they are required for the upload to succeed.

Authorizations

X-API-Key
string
header
required

Query Parameters

file_name
string
required

Name of the file

Response

200 - application/json

Presigned URL and fields to upload a file

The response is of type object.