Referência de API
Criar um Upload de File
Envie um arquivo local, uma URL HTTPS remota ou uma fonte em base64 e receba uma URL temporária.
Envie um arquivo local, uma URL HTTPS remota ou uma fonte em base64 e receba uma URL temporária.
Endpoint
- URL base
https://runapi.ai- Versão da API
v1- Autenticação
Authorization: Bearer YOUR_API_KEY
02
Corpo JSONSolicitação
Envie valores apenas no local de requisição listado.
application/json - Base64 source4 campos
file_namestring
Opcional
Nome de arquivo opcional para o File Upload criado.
sourceobject
Obrigatório
Bytes de origem codificados em Base64.
source.datastring
Obrigatório
Dados em Base64
source.typestring
Obrigatório
Seleciona a representação de origem em base64.
application/json - URL source4 campos
file_namestring
Opcional
Nome de arquivo opcional para o File Upload criado.
sourceobject
Obrigatório
Fonte HTTPS remota para download.
source.typestring
Obrigatório
Seleciona a representação de origem por URL.
source.urlstring
Obrigatório
URL HTTPS pública para download.
multipart/form-data2 campos
filestring
Obrigatório
Bytes do arquivo local a ser enviado.
file_namestring
Opcional
Nome de arquivo opcional para o File Upload criado.
03
HTTP 201Resposta de sucesso
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 401Resposta de erro (401)
Esquema de resposta
JSON
{
"properties": {
"error": {
"description": "Mensagem de erro legível por humanos.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Exemplo de resposta
JSON
{
"error": "Authentication required"
}
05
HTTP 403Resposta de erro (403)
Esquema de resposta
JSON
{
"properties": {
"error": {
"description": "Mensagem de erro legível por humanos.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Exemplo de resposta
JSON
{
"error": "Standard API key required"
}
06
HTTP 400Resposta de erro (400)
Esquema de resposta
JSON
{
"properties": {
"error": {
"description": "Mensagem de erro legível por humanos.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Exemplo de resposta
JSON
{
"error": "Only HTTPS URLs are allowed"
}
07
HTTP 408Resposta de erro (408)
Esquema de resposta
JSON
{
"properties": {
"error": {
"description": "Mensagem de erro legível por humanos.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Exemplo de resposta
JSON
{
"error": "Download timeout"
}
08
HTTP 413Resposta de erro (413)
Esquema de resposta
JSON
{
"properties": {
"error": {
"description": "Mensagem de erro legível por humanos.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Exemplo de resposta
JSON
{
"error": "File size exceeds the maximum allowed size"
}
09
HTTP 415Resposta de erro (415)
Esquema de resposta
JSON
{
"properties": {
"error": {
"description": "Mensagem de erro legível por humanos.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Exemplo de resposta
JSON
{
"error": "This content type is not supported"
}
10
HTTP 422Resposta de erro (422)
Esquema de resposta
JSON
{
"properties": {
"error": {
"description": "Mensagem de erro legível por humanos.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Exemplo de resposta
JSON
{
"error": "File upload failed. Please try again."
}
11
HTTP 429Resposta de erro (429)
Esquema de resposta
JSON
{
"properties": {
"error": {
"description": "Mensagem de erro legível por humanos.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
Exemplo de resposta
JSON
{
"error": "Too many file uploads for this account. Please retry later."
}
12
Exemplo de cURL
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"}'