记录接口规范¶
记录
类型的接口提供记录的详细信息。将 记录
类型的接口注册为数据源之前,需按照以下规范对接口进行标准化。
备注
除了下面定义的接口参数,通用数据服务可额外传部分静态参数,以支持接口提供方内部的路由。联系系统管理员获取具体的参数规范。
HTTP 请求方法¶
POST
请求参数¶
名称 |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|
orgId |
必需 |
String |
记录所属的组织 ID。 |
locale |
可选 |
String |
中文:zh-CN, 英文:en-US, 日语:ja-JP,西班牙语:es-ES。默认为 en-US。 |
fields |
可选 |
String |
记录的字段映射,多个字段之间用英文逗号隔开。当支持单次查询多个记录时,这些记录必须有相同的字段,且其中至少一个字段支持排序。该字段用于二次排序,二次排序的结果仅支持第一页。 |
filter |
可选 |
String |
返回结果按表达式进行过滤。例如:[[{“field”:”field1”,”operator”:”>=”,”value”:”1”},{“field”:”field2”,”operator”:”<=”,”value”:”2”}],[{“field”:”field3”,”operator”:”==”,”value”:”3”}]],该表达式含义为:(field1 >= 1 and field2 <= 2) or (field3=3)。若表达式中的 operator 为 in,且 value 包含多个值,需用英文逗号分隔多个 value。若某个 value 本身包含英文逗号,需对 value 中的英文逗号进行转义。 |
orderBy |
可选 |
String |
返回结果按表达式进行排序。例如:[{“field”:”field1”,”order”:”ASC”}, {“field”:”field2”,”order”:”DESC”}],该表达式含义为:一级排序为按 field1 升序、二级排序为按 field2 降序。若不指定表达式,默认的排序方法由接口提供方决定。 |
pageSize |
可选 |
Integer |
分页查询时单页返回记录的条数,需最少支持 1000。默认值由由接口提供方决定。 |
pageNo |
可选 |
Integer |
分页查询时指定页码,默认值为 1。当 pageNo 大于总页数时,需返回空的列表。 |
响应参数¶
名称 |
必然/可能返回 |
数据类型 |
描述 |
---|---|---|---|
recordFields |
必然返回 |
Record Fields 结构体 |
描述记录的具体字段信息。 |
pagination |
必然返回 |
Pagination 结构体 |
描述分页信息。参见 Pagination 结构体。 |
Pagination 结构体 ¶
名称 |
必然/可能返回 |
数据类型 |
描述 |
---|---|---|---|
pageNo |
必然返回 |
Integer |
请求页数,从 1 开始。 |
pageSize |
必然返回 |
Integer |
每页的记录数。 |
totalSize |
必然返回 |
Integer |
记录总数。 |
请求内容类型¶
application/json; charset = UTF-8
返回内容类型¶
application/json; charset = UTF-8
请求示例¶
POST {requestURL}?orgId=yourOrgId&locale=yourLocale
Content-Type: application/json
Payload:
{
"fields": "a,b,c",
"filter": [[{"field":"field1","operator":">=","value":"1"},{"field":"field2","operator":"<=","value":"2"}],[{"field":"field3","operator":"==","value":"3"}]],
"orderBy": [{"field":"field1","order":"ASC"}, {"field":"field2","order":"DESC"}],
"pageSize": 100,
"pageNo": 1
}
返回示例¶
{
"data": [
{
"field1":"examplefield1",
"field2":"examplefield2",
"field3":"examplefield3"
},
{
"field1":"examplefield1",
"field2":"examplefield2",
"field3":"examplefield3"
}
],
"pagination": {
"pageNo": 1,
"pageSize": 10,
"totalSize": 100
},
"code": 0,
"msg": "OK"
}