跳到主要内容
版本:SDK-3.10

石墨 API 列表

注意

⚠️ 如果没有特别说明,所有请求均为 HTTP,请求头和返回头的 Content-Type 均为 application/json

⚠️ shimo-domain 指石墨 SDK 服务器域名,请联系石墨获取此域名。

⚠️ 路由中的参数值如果有特殊符号,建议将值进行转义,JavaScript 转义方法请参考 MDN

账号与应用管理

获取 app 详情

获取 app 详细信息,包括 app 名称、可使用文件类型、已激活用户数、用户总数、席位数、license 有效时间、回调地址信息。

提醒

由于 app API 的特殊性,为了安全考虑,需要您在生成签名时附加上 "scope": "license" 字段

请求地址

GET https://shimo-domain/sdk/v2/api/license/apps/{appId}

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

请求示例

curl "https://shimo-domain/sdk/v2/api/license/apps/yourShimoAppId?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString"

HTTP 状态码

状态码说明
200返回成功

HTTP Response Body

字段名类型值示例说明
appNamestringyour app name应用名
availableFileTypesArray["document","documentPro","spreadsheet","presentation","table"]可用石墨套件列表
activatedUserCountnumber43已激活席位用户数
userCountnumber50用户数总数,包含已激活已禁用未使用 用户总数,仅 已激活 数量占用席位
memberLimitnumber99license 席位限制用户数,即 已激活 用户数量最大限制
validFromstring2020-12-31T16:00:00Zlicense 生效时间
validUntilstring2022-12-30T16:00:00Zlicense 有效期截止时间
endpointUrlstringhttp://your-domain服务商回调地址

Example

{
"appName": "your app name",
"availableFileTypes": [
"document",
"documentPro",
"spreadsheet",
"presentation",
"table"
],
"activatedUserCount": 43,
"userCount": 50,
"memberLimit": 99,
"validFrom": "2020-12-31T16:00:00Z",
"validUntil": "2022-12-30T16:00:00Z",
"endpointUrl": "http://your-domain"
}

更新 app 回调地址

用于更新 app 对应服务商回调地址

提醒

由于 app API 的特殊性,为了安全考虑,需要您在生成签名时附加上 "scope": "license" 字段

请求地址

PUT https://shimo-domain/sdk/v2/api/license/apps/{appId}/endpoint-url

传参方式参数名类型值示例必选说明
PathappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

字段名类型值示例必选说明
urlstringhttp://your-domain需要更新的服务商回调地址

请求示例

curl -X "PUT" "https://shimo-domain/sdk/v2/api/license/apps/yourShimoAppId/endpoint-url?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString" \
-H 'Content-Type: application/json' \
-d $'{
"url": "http://your-domain"
}'

HTTP 状态码

状态码说明
204创建成功

HTTP Response Body

协同文档

创建协同文档

创建指定类型的协同文档

请求地址

POST https://shimo-domain/sdk/v2/api/files

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串
Querylangstringen可选。默认值为服务端默认语言设置,通常默认为 zh-CN 。指定创建文件时的语言信息,可选值:zh-CN(简体中文)、en(英文)、ja(日文)

HTTP Request Headers

Header 名必选说明
Accept-Languagezh-CN,zh;q=0.9,en;q=0.8若无 lang 参数默认尝试从此 Header 识别,若未传此 Header 则使用服务器默认语言。Accept-Languge 格式参考 MDN Accept-Language

HTTP Request Body

字段名类型值示例必选说明
typestringdocument石墨文件类型,可选值参考 「支持的文件类型」 部分
fileIdstringfileid1001接入服务商的文件的唯一 ID,必须为不超过 64 长度的字符串

请求示例

curl --location --request POST 'https://shimo-domain/sdk/v2/api/files?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString' \
--header 'Content-Type: application/json' \
--data-raw '{"type": "document","fileId": "83478944-8d4c-4936-baff-20ab180eb712"}'

HTTP 状态码

状态码说明
204创建成功

HTTP Response Body

支持的文档类型

文件类型类型值
轻文档document
表格spreadsheet
传统文档documentPro
幻灯片presentation
应用表格table
说明

轻文档传统文档表格幻灯片,其他类型为非标准功能 (如 应用表格) ,详询石墨客服。

备注

轻文档应用表格 之外,其他文件类型均高度兼容 Office 格式

创建后加载编辑器

参考「协同文档-接入流程」步骤进行使用石墨 JSSDK 按照参数说明进行初始化。

创建协同文档副本

创建指定协同文档的副本

请求地址

POST https://shimo-domain/sdk/v2/shimo-files/{fileId}/copy

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

字段名类型值示例必选说明
fileIdstringfileid1001新文件 ID,接入服务商的文件的唯一 ID,必须为不超过 64 长度的字符串

请求示例

curl --location --request POST 'https://shimo-domain/sdk/v2/api/files/e0f238d1-8c10-448c-bf69-cd315051c095/copy?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString' \
--header 'Content-Type: application/json' \
--data-raw '{"fileId": "83478944-8d4c-4936-baff-20ab180eb712"}'

HTTP 状态码

状态码说明
204创建成功
200重复请求时,文件拷贝正在执行,响应数据 {"code":70019}
400重复请求时,目标文件关联数据存在但无法找到创建副本任务信息,响应数据 {"code":70016}
400重复请求时,目标文件关联数据存在,创建副本执行失败,响应数据 {"code":70017}
500重复请求时,创建副本时获取源文件内容遇到错误,响应数据 {"code":70015}
500重复请求时,获取创建副本任务时遇到错误,响应数据 {"code":70018}
500重复请求时,未知的创建副本任务状态, 响应数据 {"code":70020}

HTTP Response Body

删除协同文档

删除指定类型的协同文档,要求用户对文档有 manageable 权限。

请求地址

DELETE https://shimo-domain/sdk/v2/api/files/{fileId}

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

请求示例

curl --location --request DELETE 'https://shimo-domain/sdk/v2/api/files/e0f238d1-8c10-448c-bf69-cd315051c095?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString'

HTTP 状态码

状态码说明
204操作成功

HTTP Response Body

获取历史列表

获取文件侧边栏历史列表信息

请求地址

GET https://shimo-domain/sdk/v2/shimo-files/{fileId}/doc-sidebar-info

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串
QuerypageSizenumber10每一页返回的条数,推荐值 1020 ,设的过大将会影响响应时间。默认值为 10
Querycountnumber0当前页需要跳过的记录数,可通过 count = (page - 1) * pageSize 求得。默认值为 0
QueryhistoryTypenumber1可选值:1 操作历史 (如锁定单元格此类未实际编写内容的修改产生的操作历史),2 编辑历史。未传时,默认返回所有类型

请求示例

curl --location --request GET 'https://shimo-domain/sdk/v2/shimo-files/<fileId>/doc-sidebar-info?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString'

HTTP 状态码

状态码说明
200返回成功

HTTP Response Body

字段名类型值示例说明
historiesarray侧边栏历史数组
histories[i].contentstring协作文件格式数据
histories[i].createdAtstring2021-06-07T06:12:24Z本条侧边栏历史创建时间
histories[i].historyTypenumber2侧边栏历史类型,1 为操作历史,2 为编辑产生
histories[i].idstring60bdb8c847a7850006bf12c1侧边栏历史 ID
histories[i].namestring历史 1侧边栏历史名称
histories[i].updatedAtstring2021-06-07T06:12:24Z侧边栏历史最后更新时间
histories[i].userIdstringuser123,user134服务商用户 ID,可能有多个,以英文逗号 "," 分隔
isLastPageboolean是否最后一页
limitnumber100分页大小
usersobject{ "user123": "用户 A" }服务商用户 ID 对应用户名映射

Example

{
"histories": [
{
"content": "{\"range\":[1,1],\"changeset\":\"[[10, \\\"\\\\n\\\", \\\"line:\\\\\\\"init\\\\\\\"\\\"]]\",\"frozen\":true}",
"createdAt": "2021-06-07T06:12:24Z",
"historyType": 2,
"id": "60bdb8c847a7850006bf12c1",
"name": "",
"updatedAt": "2021-06-07T06:12:24Z",
"userId": "user123,user134"
},
{
"content": "{\"range\":[2,3],\"changeset\":\"省略若干内容 ...\"}",
"createdAt": "2021-06-07T06:12:39Z",
"historyType": 2,
"id": "60bdb8d747a7850006bf12c2",
"name": "",
"updatedAt": "2021-06-07T06:12:39Z",
"userId": "user123,user134"
},
{
"content": "{\"action\":\"unlock_cell\",\"range\":[\"E14:E14\"],\"name\":\"工作表1\"}",
"createdAt": "2022-03-11T03:58:59Z",
"historyType": 1,
"id": "622ac9034079aa0006d54f3b",
"name": "",
"updatedAt": "2022-03-11T03:58:59Z",
"userId": "user123"
},
{
"content": "{\"action\":\"lock_sheet\",\"name\":\"工作表1\"}",
"createdAt": "2022-03-11T03:59:04Z",
"historyType": 1,
"id": "622ac9084079aa0006d54f3c",
"name": "",
"updatedAt": "2022-03-11T03:59:04Z",
"userId": "user123"
}
],
"isLastPage": true,
"limit": null,
"users": {
"user123": "testuser",
"user134": "testuser2"
}
}

历史类型说明

操作历史 (historyType = 1)

为手动操作而通常不造成文件内容文字等发生变化的记录,此类历史的类型及上下文信息存于 content 字段中,格式为 JSON 字符串形式。

已知的操作如下, JSON 数据为 histories[i].content 字段 JSON.parse 后的结果:

createRevision 创建版本
{
"action": "createRevision"
}
renameRevision 重命名版本
{
"action": "renameRevision",
"before": "修改前的版本名称",
"after": "修改后的版本名称"
}
deleteRevision 删除版本
{
"action": "deleteRevision",
"label": "被删除的版本名称"
}
lock_cell 锁定单元格
{
"action": "lock_cell",
"range": "E14:E14",
"name": "工作表1"
}
unlock_cell 解锁单元格
{
"action": "unlock_cell",
"range": ["E14:E14"],
"name": "工作表1"
}
lock_sheet 锁定工作表
{
"action": "lock_sheet",
"name": "工作表1"
}
unlock_sheet 解锁工作表
{
"action": "unlock_sheet",
"name": "工作表1"
}
update_lock_cell 更新单元格锁定
{
"action": "update_lock_cell",
"range": ["E17:E17"],
"name": "工作表1"
}
编辑历史 (historyType = 2)

表示一个或多个用户在一段时间内对文件进行了编辑

获取版本列表

获取文件版本列表信息

请求地址

GET https://shimo-domain/sdk/v2/shimo-files/{fileId}/revisions

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

请求示例

curl --location --request GET 'https://shimo-domain/sdk/v2/shimo-files/<fileId>/revisions?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString'

HTTP 状态码

状态码说明
200返回成功

HTTP Response Body

字段名类型值示例说明
idstring11089版本 ID
labelstring2021/6/7 星期一 14:33版本 Label
titlestring123标题
docHistoryIdstring60bdbda2f0a8af000664d719对应侧边栏历史 ID
createdAtstring2021-06-07T06:33:13Z侧边栏历史创建时间
updatedAtstring2021-06-07T06:33:13Z侧边栏历史更新时间
user.idstringuser123服务商用户 ID
user.namestringtestuser用户名

Example

[
{
"id": 11089,
"label": "2021/6/7 星期一 14:33",
"title": "123",
"docHistoryId": "60bdbda2f0a8af000664d719",
"createdAt": "2021-06-07T06:33:13.000Z",
"updatedAt": "2021-06-07T06:33:13.000Z",
"user": {
"id": "user123",
"name": "testuser"
}
},
{
"id": 11090,
"label": "2021/6/7 星期一 14:33",
"title": "123",
"docHistoryId": "60bdbdd5f0a8af000664d71d",
"createdAt": "2021-06-07T06:33:59.000Z",
"updatedAt": "2021-06-07T06:33:59.000Z",
"user": {
"id": "user123",
"name": "testuser"
}
}
]

获取文件纯文本内容

获取指定文件的纯文本形式内容

请求地址

GET https://shimo-domain/sdk/v2/shimo-files/{fileId}/plain-text

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

请求示例

curl --location --request GET 'https://shimo-domain/sdk/v2/shimo-files/<fileId>/plain-text?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString'

HTTP 状态码

状态码说明
200返回成功

HTTP Response Body

字段名类型值示例说明
contentstring文件纯文本内容根据指定文件 ID 获取的石墨文件纯文本内容

Example

{
"content": "文件纯文本内容"
}

获取文件内容中所有的 at 人信息列表

获取文件内容中所有的 at 人信息列表

支持文件类型:

  • document 轻文档
  • documentPro 传统文档
  • spreadsheet 表格

请求地址

GET https://shimo-domain/sdk/v2/shimo-files/{fileId}/mention-at-list

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

请求示例

curl "https://shimo-domain/sdk/v2/shimo-files/ad8ed1afa8172d91/mention-at-list?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString"

HTTP 状态码

状态码说明
200返回成功

HTTP Response Body

字段名类型值示例说明
mentionAtListArray根据指定文件 ID 获取的石墨文件中的所有 at 信息列表
mentionAtList[0].userIdstringuser1at 提及的用户 ID
mentionAtList[0].atGuidstringMODOCnb4HPu04G8fat 提及在文件中对应的位置标记

Example

{
"mentionAtList": [
{
"userId": "1",
"atGuid": "MODOCnb4HPu04G8f"
},
{
"userId": "4",
"atGuid": "MODOCPryKBQpdLVS"
},
{
"userId": "3",
"atGuid": "MODOC6IQPpxpi5RV"
},
{
"userId": "1", // 同个用户在不同位置被 at
"atGuid": "MODOCSxgFvWiIupK"
}
]
}

获取文件中的评论数

获取文件内中的评论总数

支持文件类型:

  • spreadsheet 表格

请求地址

GET https://shimo-domain/sdk/v2/shimo-files/{fileId}/comment-count

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

请求示例

curl "https://shimo-domain/sdk/v2/shimo-files/fe143ca1a08e9976/comment-count?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString"

HTTP 状态码

状态码说明
200返回成功

HTTP Response Body

字段名类型值示例说明
countnumber2评论条数

Example

{
"count": 2
}

文件预览

注意

⚠️ 此功能不支持编辑文档,如果要编辑文档,请参考 协同文档

创建预览

同步创建预览任务, 如果失败返回失败的原因

请求地址

POST https://shimo-domain/sdk/v2/api/cloud-files/{fileID}/create

HTTP Request Parameters

传参方式参数名类型示例值必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

请求示例

curl --location -g --request POST 'https://shimo-domain/sdk/v2/api/cloud-files/{{fileID}}/create?signature=yourSignatureString&token=yourTokenString'

HTTP Response Body

字段名类型值示例说明
codestring90028创建预览结果状态码,空字符串代表创建成功, 非空代表创建失败
messagestringfile is converting创建失败错误信息

Example

// 创建失败
{
"code": "90042",
"message": "文件格式不正确"
}
// 创建成功
{
"code": "",
"message": ""
}

访问预览

用于在浏览器上渲染出预览的页面, 需要嵌入 Iframe 使用

对于同一个文件, 第一次调用该接口时, 后台会异步调用「创建预览」接口创建任务, 创建成功后才会渲染出预览页面。 如果需要加快第一次打开文件的速度, 可在服务端提前调用「创建预览」接口创建预览

请求地址

GET https://shimo-domain/sdk/v2/api/cloud-files/{fileID}/page

HTTP Request Parameters

传参方式参数名类型示例值必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串
Querylangstringzh-CN页面中的语言设置, 默认 zh-CN, 可选 en-US,ja-JP

嵌入 iframe 使用

<html>
<head>
<!-- some code -->
</head>
<body>
<!-- your HTML elements -->
<div id="shimo-sdk-preview" class="shimo-sdk-preview">
<iframe
src="https://shimo-domain/sdk/v2/api/cloud-files/{{fileID}}/page?signature=yourSignatureString&token=yourTokenString&lang=zh-CN"
style="border: none; overflow: hidden;"
></iframe>
</div>
</body>
</html>

导入导出

导入文件

警告

⚠️ 此接口为新版导入文件接口,建议优先使用。新版导入文件接口要求接入方必须解析结果中的 taskId,并且在调用「( 新版 )获取导入进度」时带上 taskId 参数。任务执行的最长时间为 10 分钟。

导入文件过程是一个异步处理过程,接口请求成功仅代表导入服务收到并开始处理导入请求,实际是否成功需要轮询「( 新版 )获取导入进度」接口查询导入任务是否完成。

请求地址

POST https://shimo-domain/sdk/v2/api/files/v1/import

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的用户凭证 ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

传参方式参数名类型值示例必选说明
FormfileIdstringfile1001服务商文件的唯一 ID
FormtypestringdocumentPro需要导入的文件类型
Formfilefile需要导入的文件(如果不发送文件,就必须传 fileUrl、fileName)
FormfileUrlstringhttps://domain.com/files/download/test.docx需要导入的文件下载地址(有参数 file,可以不用传)
FormfileNamestringtest.docx需要导入的文件名称(有参数 file,可以不用传)
警告

⚠️ 如无特别说明,导入文件 file 文件名需要附带扩展名,否则可能解析失败,如「测试文件.doc」或使用 FormDatafilename 字段中传入带扩展名的文件名,参考 MDN

请求示例

curl --location --request POST 'https://shimo-domain/sdk/v2/api/files/v1/import?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString' \
--form 'fileId="{{importFileId}}"' \
--form 'type="document"' \
--form 'file=@"/your/local/path/测试.docx"'

HTTP Response Body

字段名类型值示例说明
statusnumber0导入状态,非零值表示异常
messagestring导入异常时的提示信息
data.taskIdstringTnJdQS8Wk70wNHuB导入任务的标识 ID,调用导入进度接口时,请带上该参数。导入失败时请提供此 ID 用于调试

导入支持的文件格式

石墨文件类型支持导入的文件类型
documentdocx,doc,md,txt
documentProdocx,doc,wps
spreadsheetxlsx,xls,csv, xlsm
presentationpptx,ppt

获取导入进度

警告

⚠️ 此接口为新版获取导入进度接口,建议优先使用。当任务完成之后,进度结果将会默认缓存 5 分钟(可配置),过期之后再次调用进度结果将会失败。

请求地址

POST https://shimo-domain/sdk/v2/api/files/v1/import/progress

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QuerytaskIdstringTnJdQS8Wk70wNHuB导入文件接口返回的 taskId
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的用户凭证 ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

请求示例

curl --location -g --request POST 'https://shimo-domain/sdk/v2/api/files/v1/import/progress?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString&taskId={{taskId}}' \
--data-raw ''

HTTP Response Body

字段名类型值示例说明
statusnumber0导入状态,非零值表示异常
messagestring导入异常时的提示信息
data.progressnumber100导入进度百分比,为 100 时表示导入完成

说明

通过轮询该接口,直到返回的 data.progress100 时表示导入完成,即可通过对接前端 js-sdk,在页面上进行查看或编辑。

导出文件

警告

⚠️ 此接口为新版导出文件接口,建议优先使用。新版导出文件接口要求接入方必须解析结果中的 taskId,并且在调用「( 新版 )获取导出进度」时带上 taskId 参数。此接口允许同时将同一个石墨文件导出为不同的文件类型,例如:同时将轻文档导出为 PDF 和 Word 两个格式。任务执行的最长时间为 10 分钟。

将在线编辑文件导出为 Office 文件、PDF 等格式,不同套件支持的导出格式有所不同,下文有具体列表。

导出文件过程是一个异步处理过程,接口请求成功仅代表导出服务收到并开始处理导出请求,实际是否成功需要轮询「( 新版 )获取导出进度」接口查询导出任务是否完成,当任务完成后,用「获取导出进度」返回的链接 ( data.downloadUrl 字段) 下载文件。

请求地址

POST https://shimo-domain/sdk/v2/api/files/v1/export/{fileId}

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的用户凭证 ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

传参方式参数名类型值示例必选说明
Bodytypestringdocx需要导出的文件类型,不传时按照默认类型导出

导出支持的文件格式

石墨文件类型默认导出的文件类型支持导出的文件类型
documentdocxdocx, md, jpg, pdf
documentProdocxdocx, pdf, wps
spreadsheetxlsxxlsx
presentationpptxpptx, pdf

请求示例

curl --location -g --request POST 'https://shimo-domain/sdk/v2/api/files/v1/export/{{exportFileId}}?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString' \
--header 'Content-Type: application/json' \
--data-raw '{"type": "docx"}'

HTTP Response Body

字段名类型值示例说明
statusnumber0导出状态,非零值表示异常
data.taskIdstring3oo4vnBJgcG5HxMm:1:603:xmind导出任务的标识 ID,调用导出进度接口时,请带上该参数,导出失败时请提供此 ID 用于调试
messagestring导出异常时的提示信息

获取导出进度

警告

⚠️ 此接口为新版获取导入进度接口,建议优先使用。进度结果将会默认缓存 5 分钟(可配置),过期之后再次调用进度结果将会失败。

请求地址

POST https://shimo-domain/sdk/v2/api/files/v1/export/progress

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QuerytaskIdstring3oo4vnBJgcG5HxMm:1:603:xmind导出文件接口返回的 taskId
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的用户凭证 ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

请求示例

curl --location -g --request POST 'https://shimo-domain/sdk/v2/api/files/v1/export/progress?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString&taskId={{taskId}}' \
--data-raw ''

HTTP Response Body

字段名类型值示例说明
statusnumber0导出状态,非零值表示异常
messagestring导出异常时的提示信息
data.progressnumber100导出进度百分比,为 100 时表示导入完成
data.downloadUrlstring导出文件的下载地址

说明

通过轮询该接口,直到返回的 data.progress 为 100 时表示导出完成

导出应用表格为 Excel

导出应用表格为 .xlsx 文件返回该文件的下载地址

请求地址

POST https://shimo-domain/sdk/v2/api/files/export/table-sheets/{fileId}

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的用户凭证 ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

请求示例

curl -X "POST" "https://shimo-domain/sdk/v2/api/files/export/table-sheets/:fileId?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString"

HTTP Response Body

字段名类型值示例说明
statusnumber0导出状态,非零值表示异常
messagestring导出异常时的提示信息
downloadUrlstring.xlsx 文件下载地址

表格内容操作

获取表格内容

根据传入范围获取表格内容

请求地址

GET https://shimo-domain/sdk/v2/api/files/{fileId}/sheets/values

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串
Queryrangestring工作表1!A1:C3参照下方参数说明 range

请求示例

curl --location --request GET 'https://shimo-domain/sdk/v2/api/files/<fileId>/sheets/values?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString&range=工作表1!A1:C3'

HTTP 状态码

状态码说明
200返回成功

HTTP Response Body

字段名类型值示例说明
valuesarray[["姓名","年龄","性别"],["小明",29,"男"]]表格单元格值

Example

{
"values": [
["姓名", "年龄", "性别"],
["小明", 29, "男"],
["小强", 18, "男"],
["小兰", 20, "女"],
[null, null, "a"]
]
}

支持的文件类型

文件类型类型值
表格spreadsheet

更新表格内容

根据传入范围更新表格内容

请求地址

POST https://shimo-domain/sdk/v2/api/files/{fileId}/sheets/values

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

字段名类型值示例说明
rangestring工作表1!A1:C3参照下方参数说明 range
resourceobject参照下方参数说明 resource

请求示例

curl --location --request POST 'https://shimo-domain/sdk/v2/api/files/<fileId>/sheets/values?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString' \
--header 'Content-Type: application/json' \
--data-raw '{
"range": "工作表1!A1:C3",
"resource": {
"values": [
["第一行第一列的值","第一行第二列的值"],
["第二行第一列的值","第二行第二列的值"]
]
}
}'

HTTP 状态码

状态码说明
204返回成功

HTTP Response Body

支持的文件类型

文件类型类型值
表格spreadsheet

追加表格内容

根据传入范围追加表格内容(只支持纯文本和数字)。 根据 range 查找追加位置的逻辑如下: 找到需要追加的行位置: a. 不指定单元格范围,例如 工作表1:会遍历整个表格,找到最后一个有数据的行 b. 指定单元格范围,例如 工作表1!C5:E8:会找到起始单元格 C5 所在的行,从该行向下遍历,找到最后一个连续的有数据行向下插入 N 行,填充 values,其中 N = values.length 如果修改了不存在的列,会自动新增到该列

请求地址

PUT https://shimo-domain/sdk/v2/api/files/{fileId}/sheets/values

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

字段名类型值示例说明
rangestring工作表1!A1:C3参照下方参数说明 range
resourceobject参照下方参数说明 resource

请求示例

curl --location --request PUT 'https://shimo-domain/sdk/v2/api/files/<fileId>/sheets/values?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString' \
--header 'Content-Type: application/json' \
--data-raw '{
"range": "工作表1!A1:C3",
"resource": {
"values": [
["第一行第一列追加文本","第一行第二列追加文本"],
["第二行第一列追加文本","第二行第二列追加文本"]
]
}
}'

HTTP 状态码

状态码说明
204返回成功

HTTP Response Body

支持的文件类型

文件类型类型值
表格spreadsheet

删除表格行

说明:从 index 开始,删除数量为 count 的行数

请求地址

DELETE https://shimo-domain/sdk/v2/api/files/{fileId}/sheets/{sheetName}/rows/{index}

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
PathsheetNamestring工作表1表格中工作表的名称
Pathindexnumber0从第几行开始删除
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串
Querycountnumber1删除几行,默认为 1

HTTP Request Body

请求示例

curl --location --request DELETE 'https://shimo-domain/sdk/v2/api/files/<fileId>/sheets/工作表1/rows/0?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString&=2'

HTTP 状态码

状态码说明
204返回成功

HTTP Response Body

支持的文件类型

文件类型类型值
表格spreadsheet

新增表格工作表

说明:新增工作表

请求地址

POST https://shimo-domain/sdk/v2/api/files/{fileId}/sheets/

HTTP Request Parameters

传参方式参数名类型值示例必选说明
PathfileIdstringqeK4Xdxvxg8jF5gz文件 ID 位于创建预览接口的 URL 路径中,此文件 ID 为接入服务商文件列表中的唯一 ID,石墨会根据此 ID 请求接入服务商的文件接口获取文件信息和下载地址
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

字段名类型值示例说明
namestring工作表 2新增表格工作表名称

请求示例

curl --location --request POST 'https://shimo-domain/sdk/v2/api/files/<fileId>/sheets?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString' \
--header 'Content-Type: application/json' \
--data-raw '{"name": "工作表2"}'

HTTP 状态码

状态码说明
204返回成功

HTTP Response Body

支持的文件类型

文件类型类型值
表格spreadsheet

参数说明

range

格式为 ${工作表}!${单元格范围},规范如下:

  • 单元格范围的格式为 A1:C10 or A1,单元格起始位置不能超过表格最大的行列
  • 如果工作表名称中含有 !:' 这 3 种特色字符,必须以单引号包裹工作表名称。 示例: 工作表1 | 工作表1!A1 | 工作表1!A1:C1 | '工作!:表'!A2:C3

resource

类型为 object,里面必须包含 key 值 "values"。 values 为一个二维数组,表示追加/更新的表格内容,第一维表示行,第二维表示列。空字符串表示当前单元格为空。 示例:

返回一行数据
{
"resource": {
"values": [[1, "", "a"]]
}
}
返回多行数据
{
"resource": {
"values": [
[1, "", "a"],
["b", "c", 2]
]
}
}

日期类型 OADate 数值转换

日期类型返回值为 OADate 类型数值,如单元格中日期为 2022/7/27 ,返回的值为 44769

参考以下 JavaScript 代码进行转换:

convertOADateToLocaleDateString.js
function _getTimezoneOffset(date) {
let offset = date.getTimezoneOffset();
if (offset === -485) {
offset = -485 - 43 / 60;
}
return offset;
}

function _fromOADate(oadate) {
const offsetDay = oadate - 25569;
const date = new Date(offsetDay * 86400000);

const adjustValue = offsetDay >= 0 ? 1 : -1;
const oldDateTimezoneOffset = _getTimezoneOffset(date);
const ms =
(oadate * 86400000 * 1440 +
adjustValue -
25569 * 86400000 * 1440 +
oldDateTimezoneOffset * 86400000) /
1440;
let firstResult = new Date(ms);

const fixHourSign = oldDateTimezoneOffset >= 0 ? 1 : -1;
const nextHour = new Date(ms + fixHourSign * 3600000);
const nextHourTimezoneOffset = _getTimezoneOffset(nextHour);
if (oldDateTimezoneOffset !== nextHourTimezoneOffset) {
let newResult = new Date(
ms + (nextHourTimezoneOffset - oldDateTimezoneOffset) * 60 * 1000
);
if (oldDateTimezoneOffset > nextHourTimezoneOffset) {
if (
fixHourSign === -1 ||
nextHourTimezoneOffset === _getTimezoneOffset(firstResult)
) {
newResult =
newResult.getMilliseconds() === 999
? new Date(newResult.valueOf() + 1)
: newResult;
return newResult;
}
} else if (oldDateTimezoneOffset < nextHourTimezoneOffset) {
if (
fixHourSign === 1 ||
nextHourTimezoneOffset === _getTimezoneOffset(firstResult)
) {
newResult =
newResult.getMilliseconds() === 999
? new Date(newResult.valueOf() + 1)
: newResult;
return newResult;
}
}
}

firstResult =
firstResult.getMilliseconds() === 999
? new Date(firstResult.valueOf() + 1)
: firstResult;
return firstResult;
}

function convertOADate(OAdate) {
return _fromOADate(OAdate).toLocaleDateString();
}

convertOADate(44769);
// '2022/7/27'

席位管理

由于席位管理 API 的特殊性,为了安全考虑,需要您在生成签名时附加上 "scope": "license" 字段。

获取用户列表和席位状态

请求地址

GET http(s)://shimo-domain/sdk/v2/api/license/users

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串
Querypagenumber1请求页码
Querysizenumber30单页返回用户数量

请求示例

curl --location --request GET 'https://shimo-domain/sdk/v2/api/license/users?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString&page=1&size=30'

HTTP Response Body

响应体示例:

[
{
"userId": "1",
"createdAt": "2021-05-20T14:56:53+08:00",
"status": 1
}
]
字段名类型值示例说明
userIdstring1用户 ID
createdAtstring2021-05-20T14:56:53+08:00创建时间
statusnumber1席位状态
1 激活
0 已禁用
-1 未启用

用户状态说明

未启用状态说明

未启用 状态何时会存在?

若接入方已集成实现at 人相关功能时,在调用接入方搜索接口时,可能会返回石墨 SDK 中未关联的用户,由于需要在石墨编辑器中的 at 下拉列表中展示此类用户,石墨 SDK 会首先进行建立用户关联操作,此时用户的状态将会初始化为未启用状态,此状态 不会占用 席位数量。

未启用 状态自动激活

当用户处于未启用状态时,当通过此用户身份进行如下操作时,将会自动激活,成为 激活 状态,此时占用相应席位,若席位不足,则会被拒绝访问:

  • 创建文件
  • 创建副本
  • 访问编辑页
  • 导入、导出文件
  • 预览文件
  • 调用表格内容操作接口
  • 获取文件侧边栏历史信息、版本信息
  • 获取文件纯文本信息
  • 获取文件 at 人列表
  • 获取文件评论数据 :::

激活用户席位

请求地址

POST http(s)://shimo-domain/sdk/v2/api/license/users/activate

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token ,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

请求体示例:

字段名类型值示例必选说明
userIds[]string["1", "2"]需要激活席位的用户 ID 列表

请求示例

curl --location --request POST 'https://shimo-domain/sdk/v2/api/license/users/activate?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString' \
--header 'Content-Type: application/json' \
--data-raw '{"userIds":["1","2"]}'

HTTP Response Body

HTTP 状态码

状态码说明
204操作成功

取消用户席位

请求地址

POST http(s)://shimo-domain/sdk/v2/api/license/users/deactivate

HTTP Request Parameters

传参方式参数名类型值示例必选说明
QueryappIdstringebc1cde3-9b57-4962-883d-54302d428600接入服务商从石墨获取的 AppId
QuerytokenstringeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9接入服务商提供的 token,在石墨请求接入服务商的接口时,会放到 HTTP Headers X-Shimo-Token 中作为值进行传递
Querysignaturestring参考签名方法一节接入服务商,使用从石墨获取的 AppId 、AppSecret 根据签名方法生成的字符串

HTTP Request Body

请求体示例:

字段名类型值示例必选说明
userIds[]string["1", "2"]需要取消席位的用户 ID 列表

请求示例

curl --location --request POST 'https://shimo-domain/sdk/v2/api/license/users/deactivate?appId=yourShimoAppId&signature=yourSignatureString&token=yourTokenString' \
--header 'Content-Type: application/json' \
--data-raw '{"userIds":["1","2"]}'

HTTP Response Body

HTTP 状态码

状态码说明
204操作成功