Hola, tengo una pequeña herramienta para editar una hoja de cálculo de Google usando la API v4. Puedo leer los datos de dicha hoja pero no puedo agregar nada.
$.ajax({ url: 'https://sheets.googleapis.com/v4/spreadsheets/' + 'SPREADSHEETID' + '/values/' + 'TAB' + '?alt=json&key=KEY', type: 'POST', data: { majorDimension: 'ROWS', range: 'A1:A2', values: '32' }, dataType: 'jsonp', success: function (data) { console.log(data); } }); Este es el código que estoy usando, pero sigo recibiendo el siguiente error: Invalid JSON payload received. Unknown name \"values\": Cannot bind query parameter. Field 'values' could not be found in request message."
Creo que su objetivo es el siguiente.
application/json .Cuando estos puntos se reflejan en su guión, se convierte en lo siguiente.
$.ajax({ url: 'https://sheets.googleapis.com/v4/spreadsheets/###spreadsheetId###/values/A1?valueInputOption=USER_ENTERED', method: 'PUT', data: JSON.stringify({majorDimension: 'ROWS', values: [['32']]}), headers: { "Authorization": "Bearer ###your access token###", "Content-Type": "application/json" }, success: function (data) { console.log(data); }, error: function (res) { console.log(res.responseText); } }); Cuando usa A1 como rango, el valor se coloca en la primera pestaña. Cuando desee poner el valor en una hoja específica, por ejemplo, use Sheet2!A1 . Tenga cuidado con esto.
Por cierto, al agregar appending to Google Sheets Invalid JSON payload received when appending to Google Sheets API V4 , si desea agregar el valor "32" a la hoja de cálculo, modifique la secuencia de comandos anterior de la siguiente manera. La referencia del método de spreadsheets.values.append está aquí .
De
url: 'https://sheets.googleapis.com/v4/spreadsheets/###spreadsheetId###/values/A1?valueInputOption=USER_ENTERED', method: 'PUT',A
url: 'https://sheets.googleapis.com/v4/spreadsheets/###spreadsheetId###/values/###SheetName###:append?valueInputOption=USER_ENTERED', method: 'POST',