2

So, I am looking at Google Drive API v3 for creating comments on the sheet.

As I follow along, I am trying the API with their own explorer.

My payload for creating the comment is following

{
  "content": "This is a comment - 02",
  "anchor": "{'r': '46', 'a': [{'matrix': {'r': 1, 'c': 1}}]}"
}

The anchor field is created based on their documentation

Each anchor requires:

r — A string ID that indicates for which revision of the file this anchor was created. Use the revision id retrieved with revisions.get.
a — The region or regions associated with the anchor. This must be a JSON array, and the type of object in that array is a region.

Based on this, I used Revisions.list API to fetch all the versions and took the id for the object where the modifiedTime is the latest.

That's how in my payload 'r': '46' appears.
For anchor a, I created the matrix because their documentation matches closely with what I am trying to achieve

matrix
A location in a matrix-like structure. Use to define row and columns in spreadsheet documents or any other documents which have a row or column structure.

So, I want to create a comment in a cell with row=1, column=1. That's how I arrived at the remaining part of the payload 'a': [{'matrix': {'r': 1, 'c': 1}}]}.

Now, when I execute this API using the API explorer, the call succeeds enter image description here

However, the comment is made on the entire spreadsheet, instead of the cell enter image description here

While the cell has no comment enter image description here

So, somehow the comments are posted, but the anchor location is not honored.

What am I missing in my approach which is causing this unexpected behavior and how can I fix it?

daydreamer
  • 87,243
  • 191
  • 450
  • 722
  • Possible duplicate of [Creating anchored comments programmatically in Google Docs](https://stackoverflow.com/questions/23498275/creating-anchored-comments-programmatically-in-google-docs) – TheMaster Aug 15 '19 at 22:54
  • If anyone comes across this, I submitted a FR with Google. I would appreciate any stars for visibility. http://issuetracker.google.com/issues/160685101 – IMTheNachoMan Jul 08 '20 at 22:48

1 Answers1

4

You can let your users insert comments and replies in shared files and carry on discussion threads in the comments. You can support these features in your app to create an environment where users can share files and edit them collaboratively.

You need to create a app to process those comments. For example, 'a': [{'matrix': {'r': 1, 'c': 1}}]}., if set, can be retrieved by your own spreadsheet app(which processes the document as well as the comment system) to display a virtual marker at A1.

Also see the attached YouTube video there. Although Google sheets app uses the same comment system, the id marker used by the official app is proprietory and it's not revealed how Google sheets app interprets that id. However, you can use the already created id to reply to a comment anchored to a certain cell such as A2.

TheMaster
  • 45,448
  • 6
  • 62
  • 85
  • The last part here is the correct answer. What's being asked for in the original question simply isn't possible at the moment since Sheets uses its own opaque anchors for comments. – Steve Bazyl Aug 23 '19 at 21:19