Enviar bytes de arquivo tus
Anexa os bytes brutos do arquivo no offset declarado de um upload retomável.
{UPLOAD_URL}Use a URL de capacidade de upload do cabeçalho Location da resposta bem-sucedida de criação de upload. Ela não usa credenciais implicitamente disponíveis associadas ao host da API2.
Isso envia file (quatro bytes) para um novo upload reservado para quatro bytes, conforme mostrado em
Criar um upload tus.
Em uma transferência retomada, primeiro obtenha o offset do servidor e envie apenas os bytes restantes
com esse offset. Não reenvie o arquivo inteiro em um offset diferente de zero.
Omita Upload-Length em um upload de tamanho fixo. Use-o apenas quando o upload tiver sido
criado com Upload-Defer-Length: 1 e o comprimento total ainda não tiver sido declarado.
O valor declara o comprimento total do arquivo em bytes, não o tamanho deste bloco do PATCH.
Depois que o comprimento total for declarado, omita Upload-Length nas requisições PATCH seguintes.
Fornecê-lo para um upload não finalizado cujo comprimento já é conhecido retorna HTTP 400.
Exemplo de requisição
Defina UPLOAD_URL como a URL Location completa retornada na criação do upload tus. Mantenha essa URL em segredo.
curl --fail-with-body -sS --request PATCH --include \
--url "${UPLOAD_URL:?Set UPLOAD_URL}" \
--header 'upload-offset: 0' \
--header 'content-type: application/offset+octet-stream' \
--header 'tus-resumable: 1.0.0' \
--data-binary 'file'
Cabeçalhos da requisição
Esquema JSON completo
Cabeçalhos normalizados em minúsculas para uma requisição PATCH tus canônica.
Campos além dos listados para este objeto são aceitos.
| Campo | Tipo e descrição |
|---|---|
content-typeobrigatório | string (sempre: "application/offset+octet-stream") |
tus-resumableobrigatório | string (sempre: "1.0.0")A versão negociada do tus. |
upload-length | stringUma contagem de bytes canônica, sem sinal e em base 10, dentro do intervalo de 64 bits com sinal, sem zeros à esquerda nem sinal de mais. Padrão de validação (expressão regular)^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$ |
upload-offsetobrigatório | stringUma contagem de bytes canônica, sem sinal e em base 10, dentro do intervalo de 64 bits com sinal, sem zeros à esquerda nem sinal de mais. Padrão de validação (expressão regular)^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$ |
Corpo da requisição
Corpo da requisição binário. application/offset+octet-stream
Resposta
HTTP 204
Sem corpo de resposta.
Cabeçalhos de resposta
Esquema JSON completo
Campos além dos listados para este objeto são aceitos.
| Campo | Tipo e descrição |
|---|---|
tus-resumableobrigatório | string (sempre: "1.0.0") |
upload-offsetobrigatório | stringUma contagem de bytes canônica, sem sinal e em base 10, dentro do intervalo de 64 bits com sinal, sem zeros à esquerda nem sinal de mais. Padrão de validação (expressão regular)^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$ |
x-content-type-optionsobrigatório | string (sempre: "nosniff") |
Resposta de erro
Corpo da resposta em texto. text/plain; charset=utf-8
Esquema do corpo da resposta
Esquema JSON completo
stringQualquer um dos esquemas a seguir pode ser aplicado:
Variante 1: string
stringPadrão de validação (expressão regular)
^ERR_[A-Z0-9_]+: [^\r\n]*\n$Variante 2: string
stringEnquadramento bruto de erro de hook em text/plain com um payload literal; tem formato de JSON, mas não é necessariamente um JSON válido.
Padrão de validação (expressão regular)
^\{"error":"(?:[\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]|[^\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff])*"\}$Cabeçalhos de resposta
Esquema JSON completo
Campos além dos listados para este objeto são aceitos.
| Campo | Tipo e descrição |
|---|---|
content-typeobrigatório | string (sempre: "text/plain; charset=utf-8") |
tus-resumableobrigatório | string (sempre: "1.0.0") |
x-content-type-optionsobrigatório | string (sempre: "nosniff") |