Upload File
curl --request POST \
--url https://{gatewayBaseURL}/files \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--header 'x-tfy-provider-name: <x-tfy-provider-name>' \
--form 'file=<unknown>'import requests
url = "https://{gatewayBaseURL}/files"
payload = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--"
headers = {
"x-tfy-provider-name": "<x-tfy-provider-name>",
"Authorization": "Bearer <token>",
"Content-Type": "multipart/form-data"
}
response = requests.post(url, data=payload, headers=headers)
print(response.text)const form = new FormData();
form.append('file', '<unknown>');
const options = {
method: 'POST',
headers: {
'x-tfy-provider-name': '<x-tfy-provider-name>',
Authorization: 'Bearer <token>'
}
};
options.body = form;
fetch('https://{gatewayBaseURL}/files', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{gatewayBaseURL}/files",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: multipart/form-data",
"x-tfy-provider-name: <x-tfy-provider-name>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{gatewayBaseURL}/files"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-tfy-provider-name", "<x-tfy-provider-name>")
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://{gatewayBaseURL}/files")
.header("x-tfy-provider-name", "<x-tfy-provider-name>")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://{gatewayBaseURL}/files")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-tfy-provider-name"] = '<x-tfy-provider-name>'
request["Authorization"] = 'Bearer <token>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"object": "<string>",
"created_at": 123,
"purpose": "<string>",
"bytes": 123,
"status": "<string>"
}Files
Upload File
Uploads a file to the chosen provider for use with batch, fine-tuning, or other endpoints.
POST
/
files
Upload File
curl --request POST \
--url https://{gatewayBaseURL}/files \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--header 'x-tfy-provider-name: <x-tfy-provider-name>' \
--form 'file=<unknown>'import requests
url = "https://{gatewayBaseURL}/files"
payload = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--"
headers = {
"x-tfy-provider-name": "<x-tfy-provider-name>",
"Authorization": "Bearer <token>",
"Content-Type": "multipart/form-data"
}
response = requests.post(url, data=payload, headers=headers)
print(response.text)const form = new FormData();
form.append('file', '<unknown>');
const options = {
method: 'POST',
headers: {
'x-tfy-provider-name': '<x-tfy-provider-name>',
Authorization: 'Bearer <token>'
}
};
options.body = form;
fetch('https://{gatewayBaseURL}/files', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{gatewayBaseURL}/files",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: multipart/form-data",
"x-tfy-provider-name: <x-tfy-provider-name>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://{gatewayBaseURL}/files"
payload := strings.NewReader("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-tfy-provider-name", "<x-tfy-provider-name>")
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://{gatewayBaseURL}/files")
.header("x-tfy-provider-name", "<x-tfy-provider-name>")
.header("Authorization", "Bearer <token>")
.body("-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--")
.asString();require 'uri'
require 'net/http'
url = URI("https://{gatewayBaseURL}/files")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-tfy-provider-name"] = '<x-tfy-provider-name>'
request["Authorization"] = 'Bearer <token>'
request.body = "-----011000010111000001101001\r\nContent-Disposition: form-data; name=\"file\"\r\n\r\n<unknown>\r\n-----011000010111000001101001--"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"object": "<string>",
"created_at": 123,
"purpose": "<string>",
"bytes": 123,
"status": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Name of the provider
Optional metadata for the request
Vertex AI storage bucket name
Vertex AI region (e.g., europe-west4)
Provider-specific model identifier
Body
multipart/form-data
Multipart/form-data file payload.
The file data to upload (not the file name)
Response
File uploaded successfully
Id of the uploaded file.
Type of the object, e.g., 'file'.
Timestamp of when the file was created.
The purpose of the file, e.g., 'batch'.
The size of the file in bytes.
The status of the file, e.g., 'processed'.
Was this page helpful?
⌘I