Ir al contenido

Empezar una subida

POST
/v1/uploads
curl --request POST \
--url https://api.iomza.com/v1/uploads \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "file_name": "video.mov", "content_type": "application/octet-stream", "size": 1, "progressive": true }'

Reserva un lugar para un archivo y firma dónde enviarlo. Hasta 100 MB: mode: "single", un PUT a url con headers, y luego complete. Más grande: mode: "multipart", cada parte (part_size bytes) con PUT a su URL en paralelo, guardando el ETag de cada respuesta, y luego complete con ellos. Con progressive: true, cada parte es un objeto propio y no hay complete: crea el job enseguida y se transcodifica mientras llega el archivo (envía primero la primera y la última parte). Las fuentes se guardan 7 días.

Tipo de contenidoapplication/json
object
file_name
obligatorio

El nombre del archivo, que se muestra en el panel.

string
>= 1 caracteres <= 255 caracteres
content_type

El tipo del archivo, enviado de nuevo como Content-Type en cada PUT.

string
por defecto: application/octet-stream <= 255 caracteres
size
obligatorio

Bytes. Hasta el tamaño máximo de archivo del plan.

integer
> 0 <= 9007199254740991
progressive

Cada parte es un objeto propio, legible en cuanto llega, y no hay complete: crea el job en cuanto empiece la subida y se transcodifica mientras llega el archivo.

boolean

La subida, con cómo enviar el archivo.

Tipo de contenidoapplication/json
Uno o varios de:
object
mode
obligatorio

Cómo llega: single (un PUT), multipart (partes en paralelo, y luego complete), progressive (partes legibles a medida que llegan, sin complete) o url (copiada por el job al que se le dio la URL; se completa cuando termina la copia).

string
Valor permitido: single
url
obligatorio
string
method
obligatorio
string
Valor permitido: PUT
headers
obligatorio
object
key
propiedades adicionales
string
expires_in
obligatorio
number
id
obligatorio
string
object
obligatorio
string
Valor permitido: upload
status
obligatorio

completed cuando el archivo entero está guardado.

string
Valores permitidos: pending completed
file_name
obligatorio
string
size
obligatorio
number | null
source_url
obligatorio

De dónde vino una fuente importada.

string | null
created_at
obligatorio
string formato: date-time
completed_at
obligatorio
string | null formato: date-time

Ejemplo

{
"mode": "single",
"method": "PUT",
"object": "upload",
"status": "pending"
}

Campos inválidos: details lista cada problema con su ruta.

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio

Estable: decide con él.

string
Valores permitidos: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
obligatorio

En inglés, para personas; puede cambiar.

string
details
obligatorio

Cada problema, como ruta: mensaje (errores de validación).

Array<string>

Ejemplo

{
"error": {
"code": "validation_error"
}
}

La API key falta, no es válida o está revocada.

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio

Estable: decide con él.

string
Valores permitidos: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
obligatorio

En inglés, para personas; puede cambiar.

string
details
obligatorio

Cada problema, como ruta: mensaje (errores de validación).

Array<string>

Ejemplo

{
"error": {
"code": "validation_error"
}
}

El plan no lo permite (minutos de este mes, tamaño del archivo: quota_exceeded), o el saldo se agotó y hay que recargarlo (insufficient_balance).

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio

Estable: decide con él.

string
Valores permitidos: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
obligatorio

En inglés, para personas; puede cambiar.

string
details
obligatorio

Cada problema, como ruta: mensaje (errores de validación).

Array<string>

Ejemplo

{
"error": {
"code": "validation_error"
}
}

Credenciales válidas que no pueden hacer esto (forbidden), tu plan no incluye el módulo al que pertenece la ruta (module_not_in_plan), o tu organización está suspendida (organization_suspended).

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio

Estable: decide con él.

string
Valores permitidos: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
obligatorio

En inglés, para personas; puede cambiar.

string
details
obligatorio

Cada problema, como ruta: mensaje (errores de validación).

Array<string>

Ejemplo

{
"error": {
"code": "validation_error"
}
}

Demasiadas peticiones: espera y reintenta. Lo responde la pasarela, así que el cuerpo puede ser distinto.

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio

Estable: decide con él.

string
Valores permitidos: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
obligatorio

En inglés, para personas; puede cambiar.

string
details
obligatorio

Cada problema, como ruta: mensaje (errores de validación).

Array<string>

Ejemplo

{
"error": {
"code": "validation_error"
}
}

Nuestro: reintenta, y avísanos si persiste.

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio

Estable: decide con él.

string
Valores permitidos: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
obligatorio

En inglés, para personas; puede cambiar.

string
details
obligatorio

Cada problema, como ruta: mensaje (errores de validación).

Array<string>

Ejemplo

{
"error": {
"code": "validation_error"
}
}

No disponible por un momento: reintenta en unos segundos.

Tipo de contenidoapplication/json
object
error
obligatorio
object
code
obligatorio

Estable: decide con él.

string
Valores permitidos: validation_error unauthorized quota_exceeded insufficient_balance forbidden module_not_in_plan organization_suspended not_found conflict too_many_requests internal_error service_unavailable
message
obligatorio

En inglés, para personas; puede cambiar.

string
details
obligatorio

Cada problema, como ruta: mensaje (errores de validación).

Array<string>

Ejemplo

{
"error": {
"code": "validation_error"
}
}