API-referentie
Een bestandsupload aanmaken
Upload één lokaal bestand, externe HTTPS-URL of base64-bron en ontvang een tijdelijke URL.
Upload één lokaal bestand, externe HTTPS-URL of base64-bron en ontvang een tijdelijke URL.
Eindpunt
- Basis-URL
https://runapi.ai- API-versie
v1- Authenticatie
Authorization: Bearer YOUR_API_KEY
02
JSON-bodyVerzoek
Stuur waarden alleen op de vermelde verzoeklocatie.
application/json - Base64 source4 velden
file_namestring
Optioneel
Optionele bestandsnaam voor de aangemaakte bestandsupload.
sourceobject
Verplicht
Met Base64 gecodeerde bronbytes.
source.datastring
Verplicht
Base64-gegevens
source.typestring
Verplicht
Selecteert de base64-bronrepresentatie.
application/json - URL source4 velden
file_namestring
Optioneel
Optionele bestandsnaam voor de aangemaakte bestandsupload.
sourceobject
Verplicht
Externe HTTPS-bron om te downloaden.
source.typestring
Verplicht
Selecteert de URL-bronrepresentatie.
source.urlstring
Verplicht
Publieke HTTPS-URL om te downloaden.
multipart/form-data2 velden
filestring
Verplicht
Te uploaden lokale bestandsbytes.
file_namestring
Optioneel
Optionele bestandsnaam voor de aangemaakte bestandsupload.
03
HTTP 201Succesvol antwoord
POST /api/v1/files
JSON
{
"created_at": "2026-07-27T10:00:00.000Z",
"expires_at": "2026-07-27T11:00:00.000Z",
"file_name": "mask.png",
"mime_type": "image/png",
"size_bytes": 204800,
"url": "https://file.runapi.ai/temp/user-uploads/mask.png"
}
04
HTTP 401Foutrespons (401)
Responsschema
JSON
{
"properties": {
"error": {
"description": "Leesbare foutmelding.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Responsvoorbeeld
JSON
{
"error": "Authentication required"
}
05
HTTP 403Foutrespons (403)
Responsschema
JSON
{
"properties": {
"error": {
"description": "Leesbare foutmelding.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Responsvoorbeeld
JSON
{
"error": "Standard API key required"
}
06
HTTP 400Foutrespons (400)
Responsschema
JSON
{
"properties": {
"error": {
"description": "Leesbare foutmelding.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Responsvoorbeeld
JSON
{
"error": "Only HTTPS URLs are allowed"
}
07
HTTP 408Foutrespons (408)
Responsschema
JSON
{
"properties": {
"error": {
"description": "Leesbare foutmelding.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Responsvoorbeeld
JSON
{
"error": "Download timeout"
}
08
HTTP 413Foutrespons (413)
Responsschema
JSON
{
"properties": {
"error": {
"description": "Leesbare foutmelding.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Responsvoorbeeld
JSON
{
"error": "File size exceeds the maximum allowed size"
}
09
HTTP 415Foutrespons (415)
Responsschema
JSON
{
"properties": {
"error": {
"description": "Leesbare foutmelding.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Responsvoorbeeld
JSON
{
"error": "This content type is not supported"
}
10
HTTP 422Foutrespons (422)
Responsschema
JSON
{
"properties": {
"error": {
"description": "Leesbare foutmelding.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Responsvoorbeeld
JSON
{
"error": "File upload failed. Please try again."
}
11
HTTP 429Foutrespons (429)
Responsschema
JSON
{
"properties": {
"error": {
"description": "Leesbare foutmelding.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Responsvoorbeeld
JSON
{
"error": "Too many file uploads for this account. Please retry later."
}
12
cURL-voorbeeld
CURL
curl -X POST https://runapi.ai/api/v1/files \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"source":{"type":"url","url":"https://cdn.runapi.ai/public/samples/mask.png"},"file_name":"mask.png"}'