You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Smartsheet API筛选结束日期大于指定日期的行

使用Smartsheet API筛选结束日期大于指定日期的行

完全可以通过Smartsheet API实现这个需求,不需要逐个读取单元格再判断——API本身支持行级筛选,效率更高。

实现步骤:

  1. 获取目标列的ID
    先调用Get Sheet端点获取工作表的列信息,找到“结束日期”列对应的唯一数字id。

  2. 构造筛选条件
    使用API的filter查询参数,语法为{列ID} > "ISO格式日期",其中:

    • 日期必须采用ISO 8601格式(例如2024-05-30T00:00:00Z,Z代表UTC时区;若需指定本地时区,可使用偏移格式如2024-05-30T00:00:00+08:00)
    • 运算符>对应Smartsheet的GREATER_THAN比较逻辑
  3. 调用API获取筛选后的行
    以Get Rows端点为例,请求示例如下:

    curl "https://api.smartsheet.com/2.0/sheets/{你的工作表ID}/rows?filter=123456789 > \"2024-05-30T00:00:00Z\"" \
    -H "Authorization: Bearer 你的API访问令牌"
    

    若使用Python官方SDK,代码示例:

    import smartsheet
    
    smartsheet_client = smartsheet.Smartsheet("你的API访问令牌")
    sheet_id = 987654321  # 替换为你的工作表ID
    end_date_column_id = 123456789  # 替换为结束日期列的ID
    target_date = "2024-05-30T00:00:00Z"
    
    # 获取筛选后的行
    rows = smartsheet_client.Sheets.get_rows(
        sheet_id,
        filter=f"{end_date_column_id} > \"{target_date}\""
    )
    
    # 处理返回的行数据
    for row in rows:
        print(f"行ID: {row.id}, 结束日期: {row.cells[0].value}")
    

注意事项:

  • 确保“结束日期”列的类型是日期型,否则筛选逻辑可能不生效
  • 日期值需严格遵循ISO 8601格式,否则API会返回错误
  • 使用筛选参数后,API只会返回符合条件的行,能大幅减少数据传输量和本地处理成本

内容的提问来源于stack exchange,提问作者Saranya Moorthy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 23:22:05