获取列表的设置

aki发表于:2016年12月28日 10:45:02更新于:2021年08月09日 14:43:10

获取应用的列表设置。

URI

获取正式环境的设置时所使用的URI跟获取测试环境设置时不一样。

获取正式环境的设置时

https://(子域名).cybozu.cn/k/v1/app/views.json

来宾空间内的应用:https://(子域名).cybozu.cn/k/guest/(空间的ID)/v1/app/views.json

获取测试环境的设置时

https://(子域名).cybozu.cn/k/v1/preview/app/views.json

来宾空间内的应用:https://(子域名).cybozu.cn/k/guest/(空间的ID)/v1/preview/app/views.json

HTTP 方法

GET

必要的访问权限

获取正式环境的设置时,需要以下至少其中一个访问权限

  • 应用的记录查看权限

  • 应用的记录添加权限

获取测试环境的设置时

  • 应用的管理权限

※从2020年4月版起可使用API令牌来执行该API。

请求参数

参数名称要指定的值必须说明
app整 数必须指定应用的ID。
lang字符串
列表或字段名称如果设置了多语言,需要指定要获取的名称的语言。
  • 获取日语的名称时:ja

  • 获取英语的名称时:en

  • 获取中文的名称时:zh

  • 登录用户的语言设置:user
    ※当登录用户的语言设置为“遵循Web浏览器的设置”时,如果头部中指定“Accept-Language”,则使用该设置。如果不指定“Accept-Language”,则使用cybozu.cn系统管理的“本地化设置”中的语言设置。

  • 获取默认的名称时:default

省略时,获取默认名称。

请求的范例

要发送的请求根据参数发送方式的不同而不同。以下是指定参数“app”和“lang”的请求的例子。

URL中包含参数时

GET /k/v1/app/views.json?app=8&lang=ja HTTP/1.1
Host: example.cybozu.cn:443
X-Cybozu-Authorization: QWRtaW5pc3RyYXRvcjpjeWJvenU=
Authorization: Basic QWRtaW5pc3RyYXRvcjpjeWJvenU=

请求正文中包含参数时
头部

GET /k/v1/app/views.json HTTP/1.1
Host: example.cybozu.cn:443
X-Cybozu-Authorization: QWRtaW5pc3RyYXRvcjpjeWJvenU=
Authorization: Basic QWRtaW5pc3RyYXRvcjpjeWJvenU=
Content-Type: application/json

正文

{
    "app": 8,
    "lang": "zh"
}

应答参数

参数名称值的类型说明
views对象表示列表设置的对象。
views.(列表名称).type字符串列表显示格式。
  • LIST:表格形式

  • CALENDAR:日历形式

  • CUSTOM:自定义形式

views.(列表名称).builtinType字符串执行者为自己时记录列表的输出。值为“ASSIGNEE”。
此列表当流程管理功能启用时系统自动设置。
views.(列表名称).name字符串列表名称。
views.(列表名称).id字符串列表ID。
views.(列表名称).fields数组表格形式列表时输出。是显示字段代码的数组。
views.(列表名称).date字符串日历形式列表时输出。作为日期使用的字段代码。
views.(列表名称).title字符串日历形式列表时输出。作为标题使用的字段代码。
views.(列表名称).html字符串自定义形式列表时输出。自定义时使用的HTML内容。
views.(列表名称).pager布尔值自定义形式列表时输出。设置是否分页显示。
  • true:显示

  • false:不显示

views.(列表名称).device字符串自定义形式列表时输出。列表的显示范围。
  • DESKTOP:仅在PC专用版上显示

  • ANY:在PC专用版和智能手机专用版上显示

views.(列表名称).filterCond字符串记录的筛选条件。用查询形式显示。查询形式请参考以下页面。
批量获取记录(在查询中指定条件)
views.(列表名称).sort字符串记录的排序条件。用查询形式显示。查询形式请参考以下页面。
批量获取记录(在查询中指定条件)
views.(列表名称).index字符串列表的显示顺序(升序)。
revision字符串应用设定的修订号。

应答的范例

{
  "views": {
    "(执行者为自己)": {
      "type": "LIST",
       "builtinType": "ASSIGNEE",
      "name": "(执行者为自己)",
      "id": "1101", 
      "fields": [
        "记录编号",
        "更新时间",
        "更新人",
        "单行文本框"
      ],
      "filterCond": "执行者 in (LOGINUSER())",
      "sort": "记录编号 asc",
      "index": "0"
    },
    "列表1": {
      "type": "LIST",
      "name": "列表1",
      "id": "1102",
      "fields": [
        "记录编号",
        "单行文本框"
      ],
      "filterCond": "更新时间 > \"2012-02-03T09:00:00Z\" and 更新时间 < \"2012-02-03T10:00:00Z\"",
      "sort": "记录编号 asc",
      "index": "2"
    },
    "日历": {
      "type": "CALENDAR",
      "name": "日历",
      "id": "1103",
      "date": "创建时间",
      "title": "单行文本框",
      "filterCond": "更新时间 > \"2012-02-03T09:00:00Z\" and 更新时间 < \"2012-02-03T10:00:00Z\"",
      "sort": "记录编号 asc",
      "index": "3"
    },
    "自定义": {
      "type": "CUSTOM",
      "name": "自定义",
      "id": "1104",
      "html": "自定义列表的HTML<br />",
      "filterCond": "更新时间 > \"2012-02-03T09:00:00Z\" and 更新时间 < \"2012-02-03T10:00:00Z\"",
      "sort": "记录编号 asc",
      "index": "1",
       "device": "ANY"
    }
  },
  "revision": "1"
}

JavaScript 范例

使用API请求发送 kintone REST API 请求

var body = {
    "app": 1,
    "lang": "zh"
};

kintone.api(kintone.api.url('/k/v1/app/views', true), 'GET', body, function(resp) {
    // success
    console.log(resp);
}, function(error) {
    // error
    console.log(error);
});

使用 XMLHttpRequest 请求

var url = 'https://{subdomain}.cybozu.cn/k/v1/app/views.json?app=1&lang=zh';
var xhr = new XMLHttpRequest();
xhr.open('GET', url);
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
xhr.onload = function() {
    if (xhr.status === 200) {
        // success
        console.log(JSON.parse(xhr.responseText));
    } else {
        // error
        console.log(JSON.parse(xhr.responseText));
    }
};
xhr.send();

限制事项

应用中存在相同名称的列表时将无法使用这个API获取设置。