Service Now API以CSV格式指定字段

时间:2015-09-03 19:03:01

标签: servicenow

我正在尝试从Service Now获取活动列表。我只需要一个名为due_date的特定字段来自数据。如果我使用JSON

curl -s -L --user username:password --header "Accept: application/json" --header "Content-Type:application/json" "https://myservicenow.com/api/now/table/incident?sysparm_query=opened_atRELATIVEGE@dayofweek@ago@100"

我得到一个像

这样的网址
    {
        "active": "true",
        ......
        "due_date": "2015-07-22 07:07:28",

    }

我想使用CSV网络服务做同样的事情。所以我用了

curl -s -L --user username:password "https://myservicenow.com/incident.do?CSV&sysparm_query=opened_atRELATIVEGE@dayofweek@ago@100"

我得到像

这样的字段
"number","sys_created_by","caller_id","short_description","subcategory","u_subcategory_detail","category","priority","state","assignment_group","assigned_to","opened_at","resolved_at"

但字段due_date不存在。如何指定要以CSV格式检索的字段?

1 个答案:

答案 0 :(得分:4)

CSV卸载程序正在根据相关表格的UI View转储字段。 UI视图中显示的字段是包含在输出中的字段。由于您尚未明确指定视图,因此"默认视图"使用,就像你在应用程序中加载一个没有指定sysparm_view URL参数的列表一样。

以下是您可以做的事情:

  • 转到实例并打开表格列表(例如/incident_list.do)
  • 通过个性化/配置列表修改您的视图以添加due_date
    • 不要使用实际上不会改变视图的齿轮列表个性化
  • 再次尝试CSV拉,您应该包含due_date列!

现在,如果您实际上并不想更改默认视图,可以在目标表上创建一个新的UI视图(给它命名为' csv_dump'),然后添加参数sysparm_view=csv_dump到您的网址,因此:

curl -s -L --user username:password "https://myservicenow.com/incident.do?CSV&sysparm_view=csv_dump&sysparm_query=opened_atRELATIVEGE@dayofweek@ago@100"

...将sysparm_view的值作为用于创建UI视图的名称传递。