Notion Python API调用未返回数据库实际表格内容问题排查
问题根因
你当前调用的GET https://api.notion.com/v1/databases/{database_id}接口的设计用途就是返回数据库元信息,包括字段结构、创建时间、标题、属性配置等,本身就不会返回数据库内存储的行记录内容。
要获取数据库内的实际表格行数据,需要调用专门的数据库查询接口,同时你现有代码的请求头里Authorization字段缺少规范要求的Bearer 前缀,也可能触发权限异常。
修正后可获取行内容的代码
import requests token ='my_token' databaseId ='my_database_id' # 注意接口路径后缀为/query,请求方法为POST url = f"https://api.notion.com/v1/databases/{databaseId}/query" headers = { # Authorization头需拼接Bearer 前缀 "Authorization": f"Bearer {token}", "Content-Type": "application/json", "Notion-Version": "2022-02-22" } # 传空JSON body默认返回库内前100条记录,需要过滤、排序、分页可追加对应参数 response = requests.post(url, headers=headers, json={}) # 直接解析JSON结果,results字段就是所有行记录 print(response.json())
返回结果说明
接口返回的核心字段:
results:数组类型,每一项对应数据库里的一行记录,记录的properties字段下存储了各列的实际值,对应你库里的Name、Phone、Address字段next_cursor:分页游标,当数据量超过单次返回上限100条时,用这个值作为下次请求的start_cursor参数拉取下一页has_more:布尔值,标识是否还有未返回的剩余记录
内容的提问来源于stack exchange,提问作者user19252556
相关产品推荐
相关产品推荐

