Upload to /upload
using an API key to bypass Turnstile.
Provide your API key in one of the following (need one? email [email protected]):
x-api-key: <YOUR_KEY>
Bearer <YOUR_KEY>
apiKey=<YOUR_KEY>
If no API key is provided, a valid turnstileToken
is required.
POST /upload
(multipart/form-data)
file
: the file to uploadttl
(optional): e.g. 10m
, 2h
, 7d
or secondsapiKey
(optional): your API key (if not using headers)Header:
curl -F "file=@/path/file.png" -H "x-api-key: YOUR_KEY" https://put.llc/upload
Bearer:
curl -F "file=@/path/file.png" -H "Authorization: Bearer YOUR_KEY" https://put.llc/upload
Form field:
curl -F "file=@/path/file.png" -F "apiKey=YOUR_KEY" https://put.llc/upload
On success:
{
"key":"Xal70OSHCupsOKgK8-Avl.txt",
"url":"https://put.llc/Xal70OSHCupsOKgK8-Avl.txt",
}
GET /files
returns files uploaded with your API key.
x-api-key
or Authorization: Bearer
or ?apiKey=
key
, url
, originalFile
, uploaderIp
, createdAt
curl -H "x-api-key: YOUR_KEY" https://put.llc/files
# or
curl "https://put.llc/files?apiKey=YOUR_KEY"
{
"files": [
{
"key":"oEN1P0Od_t4qFlgSbQnNG.txt",
"url":"https://put.llc/oEN1P0Od_t4qFlgSbQnNG.txt",
"originalFile":"1.txt",
"uploaderIp":"1.1.1.1",
"createdAt":1757250145910
},
{
"key":"Xal70OSHCupsOKgK8-Avl.txt",
"url":"https://put.llc/Xal70OSHCupsOKgK8-Avl.txt",
"originalFile":"2.txt",
"uploaderIp":"1.1.1.1",
"createdAt":1757250156740
}
]
}