Converter um ficheiro

Um único endpoint faz o trabalho. Envie um ficheiro e um formato de destino e receba um trabalho — terminado se foi rápido, em fila se não foi.

Autenticação

Todos os endpoints exceto o catálogo de formatos precisam de uma chave de API, enviada como token bearer. Crie uma na página Automatizar da sua conta; é mostrada uma só vez e guardada apenas como hash, por isso uma chave perdida não pode ser recuperada — emita uma nova.

O acesso à API faz parte do plano Plus. Uma chave de uma conta sem ele é recusada com NOT_ENTITLED.

Authorization: Bearer rlv_your_key_here

O pedido

POST https://rework.live/api/v1/convert, como multipart/form-data, com exatamente dois campos: o formato de destino e o próprio ficheiro. A ordem dos campos não importa.

curl -X POST https://rework.live/api/v1/convert \
  -H "Authorization: Bearer rlv_your_key_here" \
  -F "to=webp" \
  -F "file=@photo.png"
CampoTipoDescrição
tostringIdentificador do formato de destino, por exemplo pdf, webp, mp4
filefileO ficheiro a converter. Um por pedido.

A resposta

Sempre JSON, nunca bytes em bruto, e sempre com a mesma forma quer a conversão tenha terminado quer tenha ido para a fila. Um cliente que tivesse de olhar para o content type para saber o que recebeu é um cliente que mais tarde ou mais cedo se engana.

200 significa que o trabalho está feito e download está pronto. 202 significa que foi para a fila: status_url é onde consultar e download é nulo até terminar.

{
  "job": {
    "id": "6a84860000000000000000ab",
    "status": "done",
    "from": "png",
    "to": "webp",
    "bytes": 48213,
    "durationMs": 412,
    "notes": [],
    "expiresAt": "2026-09-03T10:22:31.000Z",
    "download": "https://rework.live/api/v1/jobs/6a84860000000000000000ab/download",
    "status_url": null,
    "queuePosition": null,
    "estimateMs": null
  }
}

Obter os bytes diretamente

Acrescente ?download=1 se preferir o ficheiro a uma ligação. Uma conversão que termina de imediato devolve então os bytes; uma que vai para a fila continua a devolver 202 com JSON, porque ainda não há nada para enviar.