跳到主要内容
Sursa Developers

GET/v1/files/{file_id}/preview

预览文件

preview_file

不下载即可预览。PDF:文件本身,带 Content-Disposition: inline(使用浏览器内置的查看器)。XLSX 和 CSV:包含第一个工作表前 50 行的 JSON(sheet 可选择工作簿中的其他工作表)。DOCX:正文的前 3000 个字符。Markdown:文本本身。文件已过期时返回 410。

身份验证

在 Authorization 请求头中传入 API 密钥:Authorization: Bearer <密钥>。

路径参数

  • file_idstring必填

查询参数

  • sheetstring | null

    XLSX 工作簿中的工作表(默认为第一个工作表)。

请求头参数

  • X-View-Asstring

    仅适用于具有 admin 角色的 API 密钥。以数据权限档案 <profile>[:viewer|verifier|editor] 的身份发出请求,例如 employee:viewer。部署密钥不能使用此头(403)。

Cookie 参数

  • kb_view_asstring

    会话的“View as”模式 Cookie。POST /auth/view-as 设置该 Cookie,DELETE /auth/view-as 将其清除。

响应

200XLSX、CSV、DOCX 和 MD 返回表格或文本(`FilePreview`);PDF 以 `inline` 方式返回文件本身。

响应头

  • RateLimit-Policy

    当前生效的限制,格式遵循 IETF 草案 draft-ietf-httpapi-ratelimit-headers:以逗号分隔的项 "<name>";q=<quota>;w=<window in seconds>。key 是 API 密钥的请求速率(配额即突发量,时间窗口是配额完全恢复所需的时间;会话为 user,无凭据时为 ip);minute、day 和 month 是组织按 UTC 计算的自然分钟、自然日和自然月的配额。

  • RateLimit

    RateLimit-Policy 中每项限制的剩余量:"<name>";r=<remaining>;t=<seconds until reset>。

  • X-RateLimit-Limit

    RateLimit-Policy 中最严格一项(剩余请求数最少的一项)的限额。

  • X-RateLimit-Remaining

    最严格限制下的剩余请求数。

  • X-RateLimit-Reset

    距最严格限制重置的秒数。

application/json

对象:FilePreview

以下之一

  • object
    • captionstring | null
    • columnsarray of string必填
    • kind"table"必填
    • rowsarray of array of string | integer | boolean必填
    • sheetstring | null必填
    • sheetsarray of string必填
    • total_rowsinteger | null必填
    • truncatedboolean必填
  • object
    • formatstring必填

      可选值: plainmarkdown

    • kind"text"必填
    • textstring必填
    • truncatedboolean必填

application/pdf

string (binary)
401未发送凭据(既没有会话 Cookie,也没有 API 密钥),或未找到该密钥。

响应头

  • RateLimit-Policy

    当前生效的限制,格式遵循 IETF 草案 draft-ietf-httpapi-ratelimit-headers:以逗号分隔的项 "<name>";q=<quota>;w=<window in seconds>。key 是 API 密钥的请求速率(配额即突发量,时间窗口是配额完全恢复所需的时间;会话为 user,无凭据时为 ip);minute、day 和 month 是组织按 UTC 计算的自然分钟、自然日和自然月的配额。

  • RateLimit

    RateLimit-Policy 中每项限制的剩余量:"<name>";r=<remaining>;t=<seconds until reset>。

  • X-RateLimit-Limit

    RateLimit-Policy 中最严格一项(剩余请求数最少的一项)的限额。

  • X-RateLimit-Remaining

    最严格限制下的剩余请求数。

  • X-RateLimit-Reset

    距最严格限制重置的秒数。

application/json

对象:Error

403不允许执行该操作:角色权限不足、无权访问合集或卡片、请求在“View as”模式下执行,或组织已被暂停或删除(`detail` 为对象,包含 `code: org_suspended | org_deleted`)。

响应头

  • RateLimit-Policy

    当前生效的限制,格式遵循 IETF 草案 draft-ietf-httpapi-ratelimit-headers:以逗号分隔的项 "<name>";q=<quota>;w=<window in seconds>。key 是 API 密钥的请求速率(配额即突发量,时间窗口是配额完全恢复所需的时间;会话为 user,无凭据时为 ip);minute、day 和 month 是组织按 UTC 计算的自然分钟、自然日和自然月的配额。

  • RateLimit

    RateLimit-Policy 中每项限制的剩余量:"<name>";r=<remaining>;t=<seconds until reset>。

  • X-RateLimit-Limit

    RateLimit-Policy 中最严格一项(剩余请求数最少的一项)的限额。

  • X-RateLimit-Remaining

    最严格限制下的剩余请求数。

  • X-RateLimit-Reset

    距最严格限制重置的秒数。

application/json

对象:Error

404对象不存在或您无权访问。对于访问受限的对象,API 不会确认其是否存在。

响应头

  • RateLimit-Policy

    当前生效的限制,格式遵循 IETF 草案 draft-ietf-httpapi-ratelimit-headers:以逗号分隔的项 "<name>";q=<quota>;w=<window in seconds>。key 是 API 密钥的请求速率(配额即突发量,时间窗口是配额完全恢复所需的时间;会话为 user,无凭据时为 ip);minute、day 和 month 是组织按 UTC 计算的自然分钟、自然日和自然月的配额。

  • RateLimit

    RateLimit-Policy 中每项限制的剩余量:"<name>";r=<remaining>;t=<seconds until reset>。

  • X-RateLimit-Limit

    RateLimit-Policy 中最严格一项(剩余请求数最少的一项)的限额。

  • X-RateLimit-Remaining

    最严格限制下的剩余请求数。

  • X-RateLimit-Reset

    距最严格限制重置的秒数。

application/json

对象:Error

410对象曾经存在,但已不可用:链接已被使用或已过期,或文件已在保留期限结束时删除。

响应头

  • RateLimit-Policy

    当前生效的限制,格式遵循 IETF 草案 draft-ietf-httpapi-ratelimit-headers:以逗号分隔的项 "<name>";q=<quota>;w=<window in seconds>。key 是 API 密钥的请求速率(配额即突发量,时间窗口是配额完全恢复所需的时间;会话为 user,无凭据时为 ip);minute、day 和 month 是组织按 UTC 计算的自然分钟、自然日和自然月的配额。

  • RateLimit

    RateLimit-Policy 中每项限制的剩余量:"<name>";r=<remaining>;t=<seconds until reset>。

  • X-RateLimit-Limit

    RateLimit-Policy 中最严格一项(剩余请求数最少的一项)的限额。

  • X-RateLimit-Remaining

    最严格限制下的剩余请求数。

  • X-RateLimit-Reset

    距最严格限制重置的秒数。

application/json

对象:Error

422校验错误:请求体或参数不符合定义的结构(`detail` 为校验错误列表),或参数值超出范围(`detail` 为消息)。

响应头

  • RateLimit-Policy

    当前生效的限制,格式遵循 IETF 草案 draft-ietf-httpapi-ratelimit-headers:以逗号分隔的项 "<name>";q=<quota>;w=<window in seconds>。key 是 API 密钥的请求速率(配额即突发量,时间窗口是配额完全恢复所需的时间;会话为 user,无凭据时为 ip);minute、day 和 month 是组织按 UTC 计算的自然分钟、自然日和自然月的配额。

  • RateLimit

    RateLimit-Policy 中每项限制的剩余量:"<name>";r=<remaining>;t=<seconds until reset>。

  • X-RateLimit-Limit

    RateLimit-Policy 中最严格一项(剩余请求数最少的一项)的限额。

  • X-RateLimit-Remaining

    最严格限制下的剩余请求数。

  • X-RateLimit-Reset

    距最严格限制重置的秒数。

application/json

对象:Error

429请求过多(`api.rate_limited`)、组织每分钟、每天或每月的配额已用完(`api.quota_exceeded`;`error.details` 中包含 `quota`、`limit` 和 `reset_at`)、已达到组织的限额,或回答服务繁忙(`answers.engine_busy`)。请等待 `Retry-After` 头中给出的时间。

响应头

  • Retry-After

    重试请求前需要等待的秒数。

  • RateLimit-Policy

    当前生效的限制,格式遵循 IETF 草案 draft-ietf-httpapi-ratelimit-headers:以逗号分隔的项 "<name>";q=<quota>;w=<window in seconds>。key 是 API 密钥的请求速率(配额即突发量,时间窗口是配额完全恢复所需的时间;会话为 user,无凭据时为 ip);minute、day 和 month 是组织按 UTC 计算的自然分钟、自然日和自然月的配额。

  • RateLimit

    RateLimit-Policy 中每项限制的剩余量:"<name>";r=<remaining>;t=<seconds until reset>。

  • X-RateLimit-Limit

    RateLimit-Policy 中最严格一项(剩余请求数最少的一项)的限额。

  • X-RateLimit-Remaining

    最严格限制下的剩余请求数。

  • X-RateLimit-Reset

    距最严格限制重置的秒数。

application/json

对象:Error

错误码

除所有请求通用的错误码外,此接口还可能在 error.code 中返回以下错误码。

速率限制

响应带有 RateLimit 和 RateLimit-Policy 头,以及旧版的 X-RateLimit-Limit、X-RateLimit-Remaining 和 X-RateLimit-Reset 头。429 响应带有以秒为单位的 Retry-After:等待后重试。

← files · API 参考