Pular para o conteúdo principal

Atualizar linhas (PUT / PATCH)

Tanto PUT quanto PATCH atualizam linhas da planilha. A diferença está no tratamento das colunas que você não inclui no corpo.

MétodoComportamento
PATCHAtualização parcial. Grava apenas as colunas do corpo; as outras permanecem intactas.
PUTSubstituição completa. Esvazia as colunas ausentes do corpo nas linhas afetadas.

Os dois métodos retornam as linhas afetadas.

As atualizações exigem acesso de edição à planilha de origem do Google Sheets, assim como POST.

Atualizar uma linha pelo índice

Acrescente à URL o índice da linha, que começa em zero. /1 atualiza a segunda linha de dados.

# PATCH: only updates Name, leaves other columns alone
curl 'https://api.sheetbest.com/sheets/<api-id>/1' \
-X PATCH \
-H 'Content-Type: application/json' \
-d '{"Name": "Jack Doe"}'

# PUT: sets Name and blanks out every other column on row 1
curl 'https://api.sheetbest.com/sheets/<api-id>/1' \
-X PUT \
-H 'Content-Type: application/json' \
-d '{"Name": "Jack Doe"}'

Atualizar por filtro

Atualize todas as linhas que correspondam a um filtro de coluna substituindo o índice da linha por /<Column>/<Value>. Curingas (*) são aceitos.

# Set Name to "Jack Doe" on every row whose Name contains "John"
curl 'https://api.sheetbest.com/sheets/<api-id>/Name/*John*' \
-X PATCH \
-H 'Content-Type: application/json' \
-d '{"Name": "Jack Doe"}'

PUT funciona da mesma forma; lembre-se de que ele esvazia as colunas ausentes do corpo em cada linha correspondente.

A sintaxe do filtro é a mesma usada na leitura. Veja Filtrar dados para opções de correspondência exata, curingas e várias colunas. As atualizações também aceitam o prefixo /tabs/<TabName>; veja Trabalhar com abas.

Resposta

Os dois métodos retornam as linhas afetadas depois de aplicar a atualização:

[
{ "Id": "1", "Name": "Jack Doe", "Age": "23" }
]

Usar a semântica de PATCH em um cliente que só aceita PUT

Alguns clientes (bibliotecas HTTP antigas, certas plataformas no-code, ambientes embarcados ou ferramentas de webhooks) só podem enviar PUT. Para obter o comportamento de PATCH (atualização parcial) nesses clientes, envie uma requisição PUT e inclua o cabeçalho X-HTTP-Method-Override com o valor PATCH:

curl 'https://api.sheetbest.com/sheets/<api-id>/1' \
-X PUT \
-H 'Content-Type: application/json' \
-H 'X-HTTP-Method-Override: PATCH' \
-d '{"Name": "Jack Doe"}'

O Sheet Best processará a requisição como se você tivesse enviado PATCH, mantendo intactas as colunas ausentes do corpo em vez de esvaziá-las.

Veja Cabeçalhos personalizados para a referência completa, incluindo os métodos e valores aceitos.