MCP Tools Reference: sheetsmcp.googleapis.com

Alat: update_spreadsheet

Menerapkan satu atau beberapa update ke spreadsheet.

Sesuai dengan spreadsheets.batchUpdate di REST API: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/batchUpdate

Daftar kemungkinan update adalah:

  • updateSpreadsheetProperties: Memperbarui properti spreadsheet. Skema:
  • properties (objek, wajib): Properti spreadsheet yang akan diperbarui ({"title": string, "locale": string, "timeZone": string}).
  • fields (string, wajib): Mask kolom properti yang akan diperbarui (misalnya, "title" atau "*").
  • updateSheetProperties: Memperbarui properti sheet. Skema:
  • properties (objek, wajib): Properti sheet ({"sheetId": int, "title": string, "index": int, "gridProperties": {"rowCount": int, "columnCount": int, "frozenRowCount": int, "frozenColumnCount": int, "hideGridlines": bool}, "hidden": bool, "tabColorStyle": {"rgbColor": {"red": float, "green": float, "blue": float}}}).
  • fields (string, wajib): Masker kolom properti yang akan diperbarui (misalnya, "title", "gridProperties.frozenRowCount").
  • updateDimensionProperties: Memperbarui properti dimensi (misalnya, tinggi baris atau lebar kolom). Skema:
  • range (objek, wajib): Rentang dimensi ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • properties (objek, wajib): Properti dimensi ({"pixelSize": int, "hiddenByUser": bool}).
  • fields (string, wajib): Mask kolom properti yang akan diperbarui (misalnya, "pixelSize").
  • updateNamedRange: Memperbarui rentang bernama. Skema:
  • namedRange (objek, wajib): Definisi rentang bernama ({"namedRangeId": string, "name": string, "range": {"sheetId": int, "startRowIndex": int, "endRowIndex": int, "startColumnIndex": int, "endColumnIndex": int}}).
  • fields (string, wajib): Mask kolom dari kolom yang akan diperbarui (misalnya, "name,range" atau "*").
  • repeatCell: Mengulangi satu sel di seluruh rentang. Skema:
  • range (objek, wajib): Rentang petak untuk menerapkan data/pemformatan sel ({"sheetId": int, "startRowIndex": int, "endRowIndex": int, "startColumnIndex": int, "endColumnIndex": int}).
  • cell (objek, wajib): Data sel ({"userEnteredValue": {"stringValue": str, "numberValue": float, "formulaValue": str}, "userEnteredFormat": {"textFormat": {"bold": bool, "italic": bool, "fontSize": int}, "backgroundColorStyle": {"rgbColor": {"red": float, "green": float, "blue": float}}, "horizontalAlignment": "LEFT"|"CENTER"|"RIGHT", "wrapStrategy": "WRAP"|"CLIP"|"OVERFLOW_CELL"}}).
  • fields (string, wajib): Mask kolom dari kolom sel yang akan diperbarui (misalnya, "userEnteredFormat.textFormat.bold" atau "userEnteredValue").
  • addNamedRange: Menambahkan rentang bernama. Skema:
  • namedRange (objek, wajib): Rentang bernama yang akan ditambahkan ({"namedRangeId": string (optional), "name": string, "range": {"sheetId": int, "startRowIndex": int, "endRowIndex": int, "startColumnIndex": int, "endColumnIndex": int}}).
  • deleteNamedRange: Menghapus rentang bernama berdasarkan ID-nya. Skema:
  • namedRangeId (string, wajib): ID rentang bernama yang akan dihapus.
  • addSheet: Menambahkan sheet. Skema:
  • properties (objek, opsional): Properti sheet ({"title": string, "sheetId": int (optional), "index": int (optional), "gridProperties": {"rowCount": int, "columnCount": int}}).
  • deleteSheet: Menghapus sheet. Skema:
  • sheetId (bilangan bulat, wajib): ID sheet yang akan dihapus.
  • autoFill: Otomatis mengisi lebih banyak data berdasarkan data yang ada. Skema:
  • range (objek, opsional): Rentang yang akan diperiksa dan diisi ({"sheetId": int, "startRowIndex": int, "endRowIndex": int, "startColumnIndex": int, "endColumnIndex": int}).
  • sourceAndDestination (objek, opsional): Sumber eksplisit dan panjang pengisian ({"source": GridRange, "dimension": "ROWS"|"COLUMNS", "fillLength": int}).
  • useAlternateSeries (boolean, opsional): Apakah akan menggunakan seri alternatif.
  • cutPaste: Memotong data dari satu area dan menempelkannya ke area lain. Skema:
  • source (objek, wajib): Rentang petak sumber.
  • destination (objek, wajib): Koordinat tujuan kiri atas ({"sheetId": int, "rowIndex": int, "columnIndex": int}).
  • pasteType (string, opsional): "PASTE_NORMAL", "PASTE_VALUES", "PASTE_FORMAT", "PASTE_NO_BORDERS", "PASTE_FORMULA".
  • copyPaste: Menyalin data dari satu area dan menempelkannya ke area lain. Skema:
  • source (objek, wajib): Rentang petak sumber.
  • destination (objek, wajib): Rentang petak tujuan.
  • pasteType (string, opsional): "PASTE_NORMAL", "PASTE_VALUES", "PASTE_FORMAT", "PASTE_NO_BORDERS", "PASTE_FORMULA".
  • pasteOrientation (string, opsional): "NORMAL" atau "TRANSPOSE".
  • mergeCells: Menggabungkan sel. Skema:
  • range (objek, wajib): Rentang petak yang akan digabungkan.
  • mergeType (string, wajib): "MERGE_ALL", "MERGE_COLUMNS", atau "MERGE_ROWS".
  • unmergeCells: Memisahkan sel yang digabungkan. Skema:
  • range (objek, wajib): Rentang petak tempat semua sel akan dipisahkan.
  • updateBorders: Memperbarui batas dalam rentang sel. Skema:
  • range (objek, wajib): Rentang petak yang batasnya akan diperbarui.
  • top / bottom / left / right / innerHorizontal / innerVertical (objek, opsional): Gaya batas ({"style": "SOLID"|"DASHED"|"DOTTED"|"DOUBLE"|"NONE", "width": int, "colorStyle": {"rgbColor": {"red": float, "green": float, "blue": float}}}).
  • updateCells: Memperbarui banyak sel sekaligus. Skema:
  • Area (hanya satu yang diperlukan):
    • start (objek): Koordinat kiri atas ({"sheetId": int, "rowIndex": int, "columnIndex": int}).
    • range (objek): Rentang petak.
  • rows (array RowData, wajib): Baris sel ([{"values": [{"userEnteredValue": {"stringValue": str, "numberValue": float, "formulaValue": str}}]}]).
  • fields (string, wajib): Mask kolom dari kolom sel yang akan diperbarui (misalnya, "userEnteredValue" atau "userEnteredFormat").
  • addFilterView: Menambahkan tampilan filter. Skema:
  • filter (objek, wajib): Definisi tampilan filter ({"title": string, "range": GridRange, "criteria": map, "sortSpecs": list}).
  • appendCells: Menambahkan sel setelah baris terakhir yang berisi data dalam sheet. Skema:
  • sheetId (bilangan bulat, wajib): ID sheet untuk menambahkan data.
  • rows (array RowData, wajib): Baris data yang akan ditambahkan.
  • fields (string, wajib): Mask kolom (misalnya, "userEnteredValue").
  • clearBasicFilter: Menghapus filter dasar pada sheet. Skema:
  • sheetId (bilangan bulat, wajib): ID sheet tempat filter dasar akan dihapus.
  • deleteDimension: Menghapus baris atau kolom dalam sheet. Skema:
  • range (objek, wajib): Rentang dimensi yang akan dihapus ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • deleteEmbeddedObject: Menghapus objek tersemat (misalnya, diagram, gambar) di sheet. Skema:
  • objectId (bilangan bulat, wajib): ID objek sematan yang akan dihapus.
  • deleteFilterView: Menghapus tampilan filter dari sheet. Skema:
  • filterId (bilangan bulat, wajib): ID tampilan filter yang akan dihapus.
  • duplicateFilterView: Menduplikasi tampilan filter. Skema:
  • filterId (bilangan bulat, wajib): ID tampilan filter yang akan diduplikasi.
  • duplicateSheet: Menduplikasi sheet. Skema:
  • sourceSheetId (bilangan bulat, wajib): ID sheet yang akan diduplikasi.
  • insertSheetIndex (bilangan bulat, opsional): Indeks berbasis nol tempat sheet baru harus disisipkan.
  • newSheetId (bilangan bulat, opsional): ID untuk sheet baru.
  • newSheetName (string, opsional): Nama sheet baru.
  • findReplace: Menemukan dan mengganti kemunculan beberapa teks dengan teks lain. Skema:
  • find (string, wajib): Nilai yang akan ditelusuri.
  • replacement (string, wajib): Nilai pengganti.
  • Cakupan (hanya satu yang diperlukan):
    • range (objek): Rentang petak.
    • sheetId (bilangan bulat): ID sheet.
    • allSheets (boolean): true untuk menelusuri semua sheet.
  • matchCase / matchEntireCell / searchByRegex / includeFormulas (boolean, opsional).
  • insertDimension: Menyisipkan baris atau kolom baru di sheet. Skema:
  • range (objek, wajib): Rentang dimensi yang akan disisipkan ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • inheritFromBefore (boolean, opsional): true untuk mewarisi format dari baris/kolom sebelumnya.
  • insertRange: Menyisipkan sel baru dalam sheet, menggeser sel yang ada. Skema:
  • range (objek, wajib): Rentang petak untuk menyisipkan sel.
  • shiftDimension (string, wajib): "ROWS" atau "COLUMNS".
  • moveDimension: Memindahkan baris atau kolom ke lokasi lain di sheet. Skema:
  • source (objek, wajib): Rentang dimensi sumber ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • destinationIndex (bilangan bulat, wajib): Indeks tujuan berbasis nol.
  • updateEmbeddedObjectPosition: Memperbarui posisi objek tersemat (misalnya, diagram, gambar). Skema:
  • objectId (bilangan bulat, wajib): ID objek sematan.
  • newPosition (objek, wajib): Posisi baru ({"overlayPosition": {"anchorCell": {"sheetId": int, "rowIndex": int, "columnIndex": int}, "widthPixels": int, "heightPixels": int}}).
  • fields (string, wajib): Mask kolom (misalnya, "overlayPosition.anchorCell").
  • pasteData: Menempelkan data (HTML atau yang dibatasi) ke dalam sheet. Skema:
  • coordinate (objek, wajib): Koordinat kiri atas ({"sheetId": int, "rowIndex": int, "columnIndex": int}).
  • data (string, wajib): Teks yang dibatasi atau data HTML.
  • delimiter (string, opsional) atau html (boolean, opsional).
  • type (string, opsional): "PASTE_NORMAL", "PASTE_VALUES", dll.
  • textToColumns: Mengonversi satu kolom teks menjadi banyak kolom teks. Skema:
  • source (objek, wajib): Rentang petak satu kolom.
  • delimiterType (string, wajib): "COMMA", "SEMICOLON", "PERIOD", "SPACE", "CUSTOM", "AUTODETECT".
  • delimiter (string, opsional): Karakter pembatas jika delimiterType adalah "CUSTOM".
  • updateFilterView: Memperbarui properti tampilan filter. Skema:
  • filter (objek, wajib): Definisi tampilan filter, termasuk filterViewId.
  • fields (string, wajib): Mask kolom (misalnya, "title,criteria" atau "*").
  • deleteRange: Menghapus rentang sel dari sheet, menggeser sel yang tersisa. Skema:
  • range (objek, wajib): Rentang petak yang akan dihapus.
  • shiftDimension (string, wajib): "ROWS" atau "COLUMNS".
  • appendDimension: Menambahkan dimensi ke akhir sheet. Skema:
  • sheetId (bilangan bulat, wajib): ID sheet.
  • dimension (string, wajib): "ROWS" atau "COLUMNS".
  • length (bilangan bulat, wajib): Jumlah baris atau kolom yang akan ditambahkan.
  • addConditionalFormatRule: Menambahkan aturan format bersyarat baru. Skema:
  • rule (objek, wajib): Aturan format bersyarat ({"ranges": [GridRange], "booleanRule": {"condition": {"type": "NUMBER_GREATER_THAN_EQ"|"TEXT_CONTAINS"|..., "values": [{"userEnteredValue": string}]}, "format": CellFormat}, "gradientRule": {...}}).
  • index (bilangan bulat, opsional): Indeks berbasis nol tempat aturan harus disisipkan.
  • updateConditionalFormatRule: Memperbarui aturan format bersyarat yang ada. Skema:
  • rule (objek, wajib): Aturan format bersyarat baru.
  • Indeks/ID Aturan (salah satu wajib diisi):
    • index (integer): Indeks aturan berbasis nol.
    • sheetId (bilangan bulat): ID sheet jika memperbarui menurut indeks sheet.
  • newIndex (bilangan bulat, opsional): Indeks baru untuk memindahkan aturan.
  • deleteConditionalFormatRule: Menghapus aturan format bersyarat yang ada. Skema:
  • index (bilangan bulat, wajib): Indeks berbasis nol dari aturan yang akan dihapus.
  • sheetId (bilangan bulat, wajib): ID sheet aturan.
  • sortRange: Mengurutkan data dalam rentang. Skema:
  • range (objek, wajib): Rentang petak yang akan diurutkan.
  • sortSpecs (array SortSpec, wajib): Spesifikasi pengurutan ([{"dimensionIndex": int, "sortOrder": "ASCENDING"|"DESCENDING"}]).
  • setDataValidation: Menetapkan validasi data untuk satu atau beberapa sel. Skema:
  • range (objek, wajib): Rentang petak.
  • rule (objek, opsional): Aturan validasi ({"condition": {"type": "ONE_OF_LIST"|"NUMBER_BETWEEN"|..., "values": [{"userEnteredValue": string}]}, "strict": bool, "showCustomUi": bool}). Jika dihilangkan, validasi akan dihapus.
  • setBasicFilter: Menetapkan filter dasar pada sheet. Skema:
  • filter (objek, wajib): Definisi filter dasar ({"range": GridRange, "criteria": map, "sortSpecs": list}).
  • addProtectedRange: Menambahkan rentang yang dilindungi. Skema:
  • protectedRange (objek, wajib): Definisi rentang yang dilindungi ({"range": GridRange, "description": string, "warningOnly": bool, "editors": {"users": [string]}}).
  • updateProtectedRange: Memperbarui rentang yang dilindungi. Skema:
  • protectedRange (objek, wajib): Definisi rentang yang dilindungi dengan protectedRangeId.
  • fields (string, wajib): Mask kolom (misalnya, "description,warningOnly" atau "*").
  • deleteProtectedRange: Menghapus rentang yang dilindungi. Skema:
  • protectedRangeId (bilangan bulat, wajib): ID rentang yang dilindungi yang akan dihapus.
  • autoResizeDimensions: Mengubah ukuran satu atau beberapa dimensi secara otomatis berdasarkan konten sel. Skema:
  • dimensions (objek, wajib): Rentang dimensi ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • addChart: Menambahkan diagram. Skema:
  • chart (objek, wajib): Definisi diagram ({"spec": {"title": string, "basicChart": {"chartType": "COLUMN"|"BAR"|"LINE"|"PIE"|"COMBO"|"SCATTER", "legendPosition": string, "axis": list, "domains": list, "series": list}}, "position": {"overlayPosition": {"anchorCell": {"sheetId": int, "rowIndex": int, "columnIndex": int}}}}).
  • updateChartSpec: Memperbarui spesifikasi diagram. Skema:
  • chartId (bilangan bulat, wajib): ID diagram.
  • spec (objek, wajib): Spesifikasi diagram baru.
  • updateBanding: Memperbarui rentang bergaris. Skema:
  • bandedRange (objek, wajib): Definisi rentang belang-belang dengan bandedRangeId.
  • fields (string, wajib): Mask kolom.
  • addBanding: Menambahkan rentang berselang-seling baru. Skema:
  • bandedRange (objek, wajib): Definisi rentang belang-belang ({"range": GridRange, "rowProperties": {"headerColorStyle": ColorStyle, "firstBandColorStyle": ColorStyle, "secondBandColorStyle": ColorStyle}}).
  • deleteBanding: Menghapus rentang bergaris. Skema:
  • bandedRangeId (bilangan bulat, wajib): ID rentang belang-belang yang akan dihapus.
  • createDeveloperMetadata: Membuat metadata developer baru. Skema:
  • developerMetadata (objek, wajib): Definisi metadata ({"metadataKey": string, "metadataValue": string, "location": {"locationType": "ROW"|"COLUMN"|"SHEET"|"SPREADSHEET", "sheetId": int}, "visibility": "DOCUMENT"|"PROJECT"}).
  • updateDeveloperMetadata: Memperbarui entri metadata developer yang ada. Skema:
  • dataFilters (array DataFilter, wajib): Filter untuk memilih metadata.
  • developerMetadata (objek, wajib): Nilai metadata yang diperbarui.
  • fields (string, wajib): Mask kolom.
  • deleteDeveloperMetadata: Menghapus metadata developer. Skema:
  • dataFilter (objek, wajib): Filter yang menjelaskan kriteria metadata yang akan dihapus.
  • randomizeRange: Mengacak urutan baris dalam rentang. Skema:
  • range (objek, wajib): Rentang petak yang akan diacak.
  • addDimensionGroup: Membuat grup pada rentang yang ditentukan. Skema:
  • range (objek, wajib): Rentang dimensi yang akan dikelompokkan ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • deleteDimensionGroup: Menghapus grup dalam rentang yang ditentukan. Skema:
  • range (objek, wajib): Rentang dimensi grup yang akan dihapus.
  • updateDimensionGroup: Memperbarui status grup yang ditentukan. Skema:
  • dimensionGroup (objek, wajib): Definisi grup ({"range": DimensionRange, "depth": int, "collapsed": bool}).
  • fields (string, wajib): Mask kolom (misalnya, "collapsed").
  • trimWhitespace: Memangkas spasi kosong (seperti spasi, tab, atau baris baru) dari sel. Skema:
  • range (objek, wajib): Rentang petak yang selnya akan dipangkas.
  • deleteDuplicates: Menghapus baris yang berisi nilai duplikat di kolom tertentu dalam rentang sel. Skema:
  • range (objek, wajib): Rentang petak yang akan dihapus duplikatnya.
  • comparisonColumns (array DimensionRange, opsional): Kolom tertentu yang akan dianalisis.
  • updateEmbeddedObjectBorder: Memperbarui batas objek tersemat. Skema:
  • objectId (bilangan bulat, wajib): ID objek tersemat.
  • border (objek, wajib): Definisi batas ({"colorStyle": ColorStyle, "section": "ALL"}).
  • fields (string, wajib): Mask kolom.
  • addSlicer: Menambahkan pemotong. Skema:
  • slicer (objek, wajib): Definisi pemotong ({"spec": {"dataRange": GridRange, "columnIndex": int, "title": string}, "position": {"overlayPosition": {"anchorCell": {"sheetId": int, "rowIndex": int, "columnIndex": int}}}}).
  • updateSlicerSpec: Memperbarui spesifikasi slicer. Skema:
  • slicerId (bilangan bulat, wajib): ID slicer.
  • spec (objek, wajib): Spesifikasi pemotong baru.
  • fields (string, wajib): Mask kolom.
  • addDataSource: Menambahkan sumber data. Skema:
  • dataSource (objek, wajib): Definisi sumber data ({"spec": {"bigQuery": {"projectId": string, "query": string}}}).
  • updateDataSource: Memperbarui sumber data. Skema:
  • dataSource (objek, wajib): Definisi sumber data dengan dataSourceId.
  • fields (string, wajib): Mask kolom.
  • deleteDataSource: Menghapus sumber data. Skema:
  • dataSourceId (string, wajib): ID sumber data yang akan dihapus.
  • refreshDataSource: Memperbarui satu atau beberapa sumber data dan dbobject terkait. Skema:
  • dataSourceId (string, opsional) atau isAll (boolean, opsional) atau references (objek, opsional).
  • force (boolean, opsional): Apakah akan memaksa pemuatan ulang.
  • cancelDataSourceRefresh: Membatalkan pemuatan ulang satu atau beberapa sumber data dan dbobject terkait. Skema:
  • dataSourceId (string, opsional) atau isAll (boolean, opsional) atau references (objek, opsional).
  • addTable: Menambahkan tabel. Skema:
  • table (objek, wajib): Definisi tabel ({"range": GridRange, "name": string, "hasHeaderRow": bool, "hasTotalsRow": bool}).
  • updateTable: Memperbarui tabel. Skema:
  • table (objek, wajib): Definisi tabel dengan tableId.
  • fields (string, wajib): Mask kolom.
  • deleteTable: Permintaan untuk menghapus tabel. Skema:
  • tableId (string, wajib): ID tabel yang akan dihapus.
  • insertComment: Menyisipkan komentar ke dalam spreadsheet. Skema:
  • content (string, wajib): Konten komentar teks biasa.
  • coordinate (objek, wajib): Koordinat petak di sheet untuk menambatkan komentar:
    • sheetId (bilangan bulat, wajib): ID sheet.
    • rowIndex (bilangan bulat, wajib): Indeks baris berbasis nol.
    • columnIndex (bilangan bulat, wajib): Indeks kolom berbasis nol.
  • assigneeEmailAddress (string, opsional): Alamat email penerima tugas komentar.
  • addCommentReply: Menambahkan balasan ke rangkaian komentar yang ada. Juga digunakan untuk menyelesaikan atau membuka kembali rangkaian pesan. Skema:
  • commentId (string, wajib): ID rangkaian komentar.
  • post (objek, wajib):
    • content (string, wajib diisi kecuali jika commentAction adalah RESOLVE atau REOPEN): Konten teks biasa dari postingan balasan.
    • commentAction (string, opsional): Tindakan yang diambil dengan balasan ini ("RESOLVE" atau "REOPEN").
    • assigneeEmail (string, opsional): Alamat email untuk menetapkan rangkaian pesan baru.
  • updateCommentPost: Memperbarui konten postingan komentar dalam rangkaian komentar. Skema:
  • commentId (string, wajib): ID rangkaian komentar.
  • postId (string, wajib): ID postingan komentar yang akan diperbarui.
  • content (string, wajib): Konten postingan komentar yang diperbarui.
  • deleteComment: Menghapus rangkaian komentar. Skema:
  • commentId (string, wajib): ID rangkaian komentar yang akan dihapus.
  • deleteCommentReply: Menghapus postingan balasan. Skema:
  • commentId (string, wajib): ID rangkaian komentar.
  • postId (string, wajib): ID postingan balasan yang akan dihapus.

Contoh kode berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP update_spreadsheet.

Permintaan Curl
curl --location 'https://sheetsmcp.googleapis.com/mcp/v1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "update_spreadsheet",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Skema Input

UpdateContentRequest

Representasi JSON
{
  "spreadsheetId": string,
  "requests": [
    {
      object
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Kolom
spreadsheetId

string

Wajib. ID spreadsheet yang akan diperbarui.

requests[]

object (Struct format)

Wajib. Daftar pembaruan yang akan diterapkan ke spreadsheet. Setiap permintaan harus berupa objek Request spreadsheets.batchUpdate yang valid, menggunakan skema yang didokumentasikan di: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request Permintaan akan diterapkan sesuai urutan yang ditentukan. Jika ada permintaan yang tidak valid, tidak ada permintaan yang akan diterapkan.

writeControl

object (WriteControl)

Opsional. Memberikan kontrol atas cara permintaan tulis dijalankan.

Struct

Representasi JSON
{
  "fields": {
    string: value,
    ...
  }
}
Kolom
fields

map (key: string, value: value (Value format))

Peta nilai yang diketik secara dinamis dan tidak diurutkan.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representasi JSON
{
  "key": string,
  "value": value
}
Kolom
key

string

value

value (Value format)

Nilai

Representasi JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Kolom
Kolom union kind. Jenis nilai. kind hanya dapat berupa salah satu dari berikut:
nullValue

null

Merepresentasikan null JSON.

numberValue

number

Merepresentasikan angka JSON. Tidak boleh NaN, Infinity, atau -Infinity, karena tidak didukung di JSON. Hal ini juga tidak dapat merepresentasikan nilai Int64 yang besar, karena format JSON umumnya tidak mendukungnya dalam jenis angkanya.

stringValue

string

Mewakili string JSON.

boolValue

boolean

Merepresentasikan boolean JSON (literal true atau false dalam JSON).

structValue

object (Struct format)

Mewakili objek JSON.

listValue

array (ListValue format)

Mewakili array JSON.

ListValue

Representasi JSON
{
  "values": [
    value
  ]
}
Kolom
values[]

value (Value format)

Kolom berulang dari nilai yang diketik secara dinamis.

WriteControl

Representasi JSON
{

  "requiredRevisionId": string
}
Kolom
Kolom union control. Menentukan revisi spreadsheet yang akan ditulis dan bagaimana perilaku permintaan jika revisi tersebut bukan revisi spreadsheet saat ini. control hanya dapat berupa salah satu dari berikut:
requiredRevisionId

string

ID revisi spreadsheet yang akan diterapkan permintaan tulis. Jika ini bukan revisi terbaru dokumen, permintaan tidak akan diproses dan akan menampilkan error 400 bad request.

Jika ID revisi yang diperlukan ditampilkan dalam respons, ID tersebut menunjukkan ID revisi spreadsheet setelah permintaan diterapkan.

NullValue

Merepresentasikan null JSON.

NullValue adalah sentinel, yang menggunakan enum dengan hanya satu nilai untuk merepresentasikan nilai null untuk gabungan jenis Value.

Kolom jenis NullValue dengan nilai selain 0 dianggap tidak valid. Sebagian besar serializer ProtoJSON akan memunculkan Value dengan null_value yang ditetapkan sebagai null JSON, terlepas dari nilai bilangan bulatnya, sehingga akan melakukan perjalanan pulang pergi ke nilai 0.

Enum
NULL_VALUE Nilai null.

Skema Output

UpdateContentResponse

Representasi JSON
{
  "content": {
    object
  }
}
Kolom
content

object (Struct format)

Respons spreadsheets.batchUpdate, dalam format JSON Sheets API, ditambah kolom status.

Struct

Representasi JSON
{
  "fields": {
    string: value,
    ...
  }
}
Kolom
fields

map (key: string, value: value (Value format))

Peta nilai yang diketik secara dinamis dan tidak diurutkan.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representasi JSON
{
  "key": string,
  "value": value
}
Kolom
key

string

value

value (Value format)

Nilai

Representasi JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Kolom
Kolom union kind. Jenis nilai. kind hanya dapat berupa salah satu dari berikut:
nullValue

null

Merepresentasikan null JSON.

numberValue

number

Merepresentasikan angka JSON. Tidak boleh NaN, Infinity, atau -Infinity, karena tidak didukung di JSON. Hal ini juga tidak dapat merepresentasikan nilai Int64 yang besar, karena format JSON umumnya tidak mendukungnya dalam jenis angkanya.

stringValue

string

Mewakili string JSON.

boolValue

boolean

Merepresentasikan boolean JSON (literal true atau false dalam JSON).

structValue

object (Struct format)

Mewakili objek JSON.

listValue

array (ListValue format)

Mewakili array JSON.

ListValue

Representasi JSON
{
  "values": [
    value
  ]
}
Kolom
values[]

value (Value format)

Kolom berulang dari nilai yang diketik secara dinamis.

NullValue

Merepresentasikan null JSON.

NullValue adalah sentinel, yang menggunakan enum dengan hanya satu nilai untuk merepresentasikan nilai null untuk gabungan jenis Value.

Kolom jenis NullValue dengan nilai selain 0 dianggap tidak valid. Sebagian besar serializer ProtoJSON akan memunculkan Value dengan null_value yang ditetapkan sebagai null JSON, terlepas dari nilai bilangan bulatnya, sehingga akan melakukan perjalanan pulang pergi ke nilai 0.

Enum
NULL_VALUE Nilai null.

Anotasi Alat

Anotasi alat dikirim ke klien MCP untuk menjelaskan risiko dasar alat tertentu. Sebagian besar klien memperlakukan petunjuk ini sebagai tidak tepercaya, tetapi petunjuk tersebut dapat digunakan untuk memutuskan kapan perintah konfirmasi dapat dikirim kepada pengguna.

Bersama dengan string judul, petunjuk boolean berikut ditentukan sebagai berikut:

  • readOnlyHint: Jika benar, alat tidak akan mengubah lingkungannya. Default: false.
  • destructiveHint: Jika benar, alat dapat melakukan tindakan destruktif. Jika salah (false), alat hanya dapat melakukan tindakan aditif. Default: true.
  • idempotentHint: Jika benar, memanggil alat berulang kali dengan argumen yang sama tidak akan memberikan efek tambahan pada lingkungannya. Default: false.
  • openWorldHint: Jika benar, alat dapat berinteraksi dengan 'open world' entitas eksternal. Jika salah, alat hanya dapat berinteraksi dengan entity internal. Misalnya, alat penelusuran web akan bersifat open world, sedangkan alat memori tidak akan bersifat open world.

Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ✅

Cakupan Otorisasi

Memerlukan salah satu cakupan OAuth berikut:

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.file
  • https://www.googleapis.com/auth/spreadsheets