如何在智能表中查找行ID或列ID?

时间:2016-06-29 08:04:50

标签: python python-requests smartsheet-api

我一直在使用并阅读智能表API几个小时,我注意到在我必须提出的所有请求中,我需要行ID或列ID。我必须在这里遗漏一些简单的东西,但在哪里可以找到这些ID?它们是通过查询还是在实际可查看表单上找到的?

目前我正在尝试创建一个json对象发送给我表单,这是我的代码:

MySS = smartsheet.Smartsheet('*****************')
headers = {"Authorization": "Bearer *****************", "Content-Type": 'application/json',
           "Accept": "application/json"}
row = MySS.Sheets.get_row(***********, HOW_DO_I_GET_THIS, include='discussions,attachments,columns,columnType')
r = requests.post("https://api.smartsheet.com/2.0/sheets/**********/rows", json=row, headers=headers)

我从中得到的错误信息是:

Traceback (most recent call last):
  File "C:/Users/***/**/**/**/***", line 89, in <module>
    headers=headers)
  File "C:\Python27\lib\site-packages\requests\api.py", line 111, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "C:\Python27\lib\site-packages\requests\api.py", line 57, in request
    return session.request(method=method, url=url, **kwargs)
  File "C:\Python27\lib\site-packages\requests\sessions.py", line 475, in request
    resp = self.send(prep, **send_kwargs)
  File "C:\Python27\lib\site-packages\requests\sessions.py", line 585, in send
    r = adapter.send(request, **kwargs)
  File "C:\Python27\lib\site-packages\requests\adapters.py", line 423, in send
    for i in request.body:
TypeError: 'Error' object is not iterable

老实说,这里的代码可能有很多问题,我只需要在哪里找到行或列ID的方向。 感谢所有帮助,谢谢!

1 个答案:

答案 0 :(得分:4)

如果您执行Get Sheet操作,则响应将为Sheet object,其中包含的集合以及的集合(除其他外)工作表包含的列(包括每行和每列的 id 属性)。

获取工作表操作要求您指定 sheetId 。您可以通过Smartsheet UI手动获取工作表的ID(通过Sheet properties),也可以通过API使用任何返回Sheet对象的操作(例如:List SheetsGet FolderList All ContentsSearch Everything等)。