API格式变更 - 15200

API格式变更 - 15200

本文档概述了请求、自定义模块、自定义关联和CI关系在旧版与新版API格式之间的差异。


新版API格式适用于已升级至ServiceDesk Plus 15200版本的客户。我们建议所有新集成均采用新版格式。


API 格式的主要变更 
  • 自定义模块、自定义关联和 CI 关系 API 中已移除 UDF 持有者字段(如 cm_fields udf_fields)。
  • 自定义模块和 CI 关系 API 仍支持向下兼容性。
  • 新增字段的命名规范已实现标准化:
    • 默认模块:  
      • 本次更新适用于以下模块:用户、技术人员、配置管理数据库、发布、项目、工作日志、任务、空间、设施、供应商、CI类型关联、资产、支持组和部门。
      • API字段名称现采用udf_<user input>格式。
      • 旧格式

        New Format

        udf_<field_type>_<user_input> (示例: udf_date_date_of_birth)

        或,

        <field_type>_<user_input> (示例: date_date_of_birth)

        udf_<user input> (Example: udf_date_of_birth)

    • 自定义模块与自定义关联  
  • API字段名称现已完全支持用户自定义,且不再包含udf_prefix(例如:date_of_birth)。此更新仅适用于迁移后创建的字段。
  • 迁移前创建的字段将保持不变,并延续其当前行为。

 自定义模块 API  

方式

URL

旧格式

新格式

POST / PUT

/api/v3/cm_test

/api/v3/cm_test/<ID>

input_data

{

"cm_test": {

     "title": "test",

    "description": "desc",

    "cm_fields": {

      "sline_test": "sample",

      "per_percentage": "10"

    }

  }

}

input_data

{

  "cm_test": {

    "title": "test",

    "description": "desc",

      "test": "sample",

      "percentage": "10"

  }

}

GET

/api/v3/cm_test/<ID>

响应示例:

{

    "response_status": {

        "status_code": 2000,

        "status": "success"

    },

    "cm_test": {

        "created_time": {

            "display_value": "25/08/2025 05:32 PM",

            "value": "1756123347308"

        },

        "updated_time": {

            "display_value": "25/08/2025 05:32 PM",

            "value": "1756123347308"

        },

        "cm_fields": {

            "sline_test": "test",

            "per_percentage": "10.00"

        },

        "is_trashed": false,

        "description": null,

        "id": "602",

        "title": "test",

        "created_by": {

            "email_id": "demo@zylker.com",

            "phone": "987654321",

            "name": "Howard Stern",

            "mobile": "987654321",

            "profile_pic": {

                "content-url": "/images/default-profile-pic2.svg"

            },

            "is_vipuser": false,

            "id": "10",

            "department": {

                "site": null,

                "deleted": false,

                "name": "Engineering",

                "id": "2"

            }

        }

    }

}

响应示例:

{

    "response_status": {

        "status_code": 2000,

        "status": "success"

    },

    "cm_test": {

        "created_time": {

            "display_value": "25/08/2025 05:32 PM",

            "value": "1756123347308"

        },

        "updated_time": {

            "display_value": "25/08/2025 05:32 PM",

            "value": "1756123347308"

        },

        "test": "test",

        "percentage": "10.00"

        "is_trashed": false,

        "description": null,

        "id": "602",

        "title": "test",

        "created_by": {

            "email_id": "demo@zylker.com",

            "phone": "987654321",

            "name": "Howard Stern",

            "mobile": "987654321",

            "profile_pic": {

                "content-url": "/images/default-profile-pic2.svg"

            },

            "is_vipuser": false,

            "id": "10",

            "department": {

                "site": null,

                "deleted": false,

                "name": "Engineering",

                "id": "2"

            }

        }

    }

}

GET_ALL

/api/v3/cm_test

input_data

{

  "list_info": {

    "row_count": "10",

    "start_index": 1,

    "get_total_count": true,

    "search_criteria": {

      "field": "cm_fields.sline_test",

      "value": "test",

      "condition": "contains",

      "logical_operator": "AND"

    },

    "sort_field": "cm_fields.sline_test",

    "sort_order": "asc",

     "fields_required":["cm_fields.sline_test"]

  }

}

响应示例:

{

    "response_status": [

        {

            "status_code": 2000,

            "status": "success"

        }

    ],

    "list_info": {

        "has_more_rows": false,

        "start_index": 1,

        "sort_field": "cm_fields.sline_test",

        "total_count": 1,

        "page": 1,

        "sort_order": "asc",

        "search_criteria": {

            "condition": "contains",

            "field": "cm_fields.sline_test",

            "logical_operator": "AND",

            "value": "test"

        },

        "get_total_count": "true",

        "row_count": 1

    },

    "cm_test": [

        {

            "created_time": {

                "display_value": "25/08/2025 05:32 PM",

                "value": "1756123347308"

            },

            "updated_time": {

                "display_value": "25/08/2025 05:32 PM",

                "value": "1756123347308"

            },

            "cm_fields": {

                "sline_test": "test",

                "per_percentage": "10.00"

            },

            "is_trashed": false,

            "description": null,

            "id": "602",

            "title": "test",

            "created_by": {

                "email_id": "demo@zylker.com",

                "phone": "987654321",

                "name": "Howard Stern",

                "mobile": "987654321",

                "profile_pic": {

                    "content-url": "/images/default-profile-pic2.svg"

                },

                "is_vipuser": false,

                "id": "10",

                "department": {

                    "site": null,

                    "deleted": false,

                    "name": "Engineering",

                    "id": "2"

                }

            }

        }

    ]

}

input_data

{

  "list_info": {

    "row_count": "10",

    "start_index": 1,

    "get_total_count": true,

    "search_criteria": {

      "field": "test",

      "value": "test",

      "condition": "contains",

      "logical_operator": "AND"

    },

    "sort_field": "test",

    "sort_order": "asc",

     "fields_required":["test"]

  }

}

响应示例:

{

    "response_status": [

        {

            "status_code": 2000,

            "status": "success"

        }

    ],

    "list_info": {

        "has_more_rows": false,

        "start_index": 1,

        "sort_field": "test",

        "total_count": 1,

        "page": 1,

        "sort_order": "asc",

        "search_criteria": {

            "condition": "contains",

            "field": "test",

            "logical_operator": "AND",

            "value": "test"

        },

        "get_total_count": "true",

        "row_count": 1

    },

    "cm_test": [

        {

            "created_time": {

                "display_value": "25/08/2025 05:32 PM",

                "value": "1756123347308"

            },

            "updated_time": {

                "display_value": "25/08/2025 05:32 PM",

                "value": "1756123347308"

            },

            "test": "test",

            "percentage": "10.00,

            "is_trashed": false,

            "description": null,

            "id": "602",

            "title": "test",

            "created_by": {

                "email_id": "demo@zylker.com",

                "phone": "987654321",

                "name": "Howard Stern",

                "mobile": "987654321",

                "profile_pic": {

                    "content-url": "/images/default-profile-pic2.svg"

                },

                "is_vipuser": false,

                "id": "10",

                "department": {

                    "site": null,

                    "deleted": false,

                    "name": "Engineering",

                    "id": "2"

                }

            }

        }

    ]

}

 

CI 关系 API  

方式

URL

旧格式

新格式

POST

/api/v3/cmdb_apache_instance/1/assoc_apache_connected_to_windows_workstations

input_data:

{  "assoc_apache_connected_to_windows_workstations": [

    {

      "destination": {

        "id": "2"

      },

      "udf_fields": {

        "udf_source_no": "001",

        "udf_technician": {

          "id": "5"

        }

      }

    }

  ]

}




input_data:

{  "assoc_apache_connected_to_windows_workstations": [

    {

      "destination": {

        "id": "2"

      },

        "udf_source_no": "001",

        "udf_technician": {

          "id": "5"

      }

    }

  ]

}

GET_ALL

/api/v3/cmdb_apache_instance/1/assoc_apache_connected_to_windows_workstations


响应示例:

{

  "response_status": [

    {

      "status_code": 2000,

      "status": "success"

    }

  ],

  "assoc_apache_connected_to_windows_workstations": [

    {

      "udf_fields": {

        "udf_source_no": "001",

        "udf_technician": {

          "email_id": null,

          "phone": "1234455",

          "name": "administrator",

          "mobile": "1234567890",

          "profile_pic": {

            "content-url": "/images/default-profile-pic2.svg"

          },

          "is_vipuser": false,

          "id": "5",

          "department": null

        }

      },

      "destination": {

        "site": null,

        "inactive": false,

        "module": {

          "id": "190"

        },

        "name": "windows workstation",

        "id": "2",

        "entity": {

          "api_plural_name": "cmdb_windows_workstation",

          "name": "cmdb_windows_workstation",

          "icon": {

            "id": "410"

          },

          "id": "190",

          "display_name": "Windows Workstation",

          "display_plural_name": "Windows Workstation",

          "category": {

            "id": "18"

          }

        },

        "status": null

      },

      "id": "2",

      "association_type": {

        "name": "Connected to",

        "id": 3

      }

    }

  ],

  "list_info": {

    "has_more_rows": false,

    "start_index": 1,

    "row_count": 1

  }

}

响应示例:

{

  "response_status": [

    {

      "status_code": 2000,

      "status": "success"

    }

  ],

  "assoc_apache_connected_to_windows_workstations": [

    {

        "udf_source_no": "001",

        "udf_technician": {

          "email_id": null,

          "phone": "1234455",

          "name": "administrator",

          "mobile": "1234567890",

          "profile_pic": {

            "content-url": "/images/default-profile-pic2.svg"

          },

          "is_vipuser": false,

          "id": "5",

          "department": null

        },

      "destination": {

        "site": null,

        "inactive": false,

        "module": {

          "id": "190"

        },

        "name": "windows workstation",

        "id": "2",

        "entity": {

          "api_plural_name": "cmdb_windows_workstation",

          "name": "cmdb_windows_workstation",

          "icon": {

            "id": "410"

          },

          "id": "190",

          "display_name": "Windows Workstation",

          "display_plural_name": "Windows Workstation",

          "category": {

            "id": "18"

          }

        },

        "status": null

      },

      "id": "2",

      "association_type": {

        "name": "Connected to",

        "id": 3

      }

    }

  ],

  "list_info": {

    "has_more_rows": false,

    "start_index": 1,

    "row_count": 1

  }

}



向下兼容性变更 

 

从下个功能版本开始,将停止提供向后兼容支持。我们建议您更新至新版API格式,并相应调整全局配置。

 

在迁移过程中,现有自定义模块(“web_tab”、“configuration”、“hidden”、‘association’ 和 “published”)的 API 名称以及 CI 关联关系将设置为全局配置中的 paramvalue 属性。

 

<GlobalConfig helpdeskid="IT Helpdesk" globalconfigid="GlobalConfig:globalconfigid:120001" category="CM_BACKWARD_COMPATIBILITY" parameter="CM_MODULES_LIST" paramvalue="<entity_api_name>" description="To support backward compatibility for old custom modules"/> 

迁移过程中将显示一条警告消息,如下所示: 

 

迁移完成后,在提供向下兼容性的自定义模块和 CI 关联的详情页面上将显示一条警告消息。

自定义模块

CI 关系

 

Python脚本、自定义函数、自定义部件、字段和表单规则、自定义脚本以及所有外部API访问将继续遵循旧格式,直至通过从全局配置中移除模块API名称来取消向下兼容性。
仅从ServiceDesk Plus用户界面触发的API将遵循新格式。

管理向下兼容性

要添加或移除向下兼容性支持的模块,请使用以下查询:

update globalconfig set paramvalue ='<entity_api_name>' where category = 'CM_BACKWARD_COMPATIBILITY'; 

 

请求API格式变更

本文件概述了必填字段、过渡状态、关联状态、审批等级、检查单及工作时间API在旧版与新版API格式间的差异。


新版API格式适用于已升级至15200版本的客户。


工作流增强功能必填字段 API


 

旧格式

新格式

URL

1. api/v3/requests/status_mandatory_fields
2. api/v3/requests/id/status_mandatory_fields

1. api/v3/requests/get_mandatory_fields
2. api/v3/requests/id/get_mandatory_fields

输入数据

{"template_id":5, "status_id":2}

{"template_id":"1","state_id":"2"}

响应

{

"status_mandatory_fields": {

    "checklists": [],

    "to_be_filled": [

      "level",

      "item"

    ],

    "depends_on_requests": [],

    "optional_fields": [],

    "fields": [

      "level",

      "item",

      "tasks"

    ],

    "tasks": []

 }

}

{

 "mandatory_fields": {

        "to_be_filled": [

            "impact",

            "level"

        ],

        "optional_fields": [],

        "fields": [

            "impact",

            "level"

        ]

    }

}

注意: checklists, tasks和depends_on_requests字段仅在标记为必填时才会出现在响应中。

 

获取过渡状态 API

 

旧格式

新格式

URL

api/v3/requests/id/_get_transitions

api/v3/requests/id/_get_transitions

响应

{

    "response_status": [

        {

            "status_code": 2000,

            "status": "success"

        }

    ],

    "transitions": [

        {

            "source_node": {

                "color": "#0066ff",

                "ui_attributes": {

                    "position": {

                        "x": 638,

                        "y": 180

                    }

                },

                "name": "Open",

                "id": "1",

                "entity_id": "2",

                "entity": "Status"

            },

            "name": "Assign",

            "id": 4,

            "pre_rule_satisfied": true,

            "target_node": {

                "color": "#006699",

                "ui_attributes": {

                    "position": {

                        "x": 638,

                        "y": 308

                    }

                },

                "name": "Assigned",

                "id": "8",

                "entity_id": "5",

                "entity": "Status"

            },

            "help_text": null

        },

        {

            "source_node": {

                "color": "#0066ff",

                "ui_attributes": {

                    "position": {

                        "x": 638,

                        "y": 180

                    }

                },

                "name": "Open",

                "id": "1",

                "entity_id": "2",

                "entity": "Status"

            },

            "name": "Hold",

            "id": 3,

            "pre_rule_satisfied": true,

            "target_node": {

                "color": "#ff0000",

                "ui_attributes": {

                    "position": {

                        "x": 430,

                        "y": 308

                    }

                },

                "name": "Onhold",

                "id": "2",

                "entity_id": "3",

                "entity": "Status"

            },

            "help_text": null

        }

    ]

}

{

    "response_status": [

        {

            "status_code": 2000,

            "status": "success"

        }

    ],

    "transitions": [

        {

            "name": "approval",

            "id": 630,

            "target_node": {

                "name": "Resolved",

                "id": 5,

                "entity_id": 4,

                "entity": "status"

            },

            "help_text": null

        },

        {

            "name": "hold",

            "id": 906,

            "target_node": {

                "name": "Onhold",

                "id": 904,

                "entity_id": 3,

                "entity": "status"

            },

            "help_text": null

        }

    ]

}

 

获取关联状态 API

 

旧格式

新格式

URL

api/v3/requests/id/_get_connected_statuses

api/v3/requests/id/_get_connected_states

输入数据

{

  "status_id": 3,

  "nodes_list_info": {

    "row_count": 100,

    "search_criteria": [

      {

        "field": "in_progress",

        "value": true,

        "condition": "is"

      },

      {

        "field": "stop_timer",

        "value": false,

        "condition": "is",

        "logical_operator": "and"

      }

    ]

  }

}

{

  "state_id": 3,

  "nodes_list_info": {

    "row_count": 100,

    "search_criteria": [

      {

        "field": "in_progress",

        "value": true,

        "condition": "is"

      },

      {

        "field": "stop_timer",

        "value": false,

        "condition": "is",

        "logical_operator": "and"

      }

    ]

  }

}

响应

{

    "response_status": [

        {

            "status_code": 2000,

            "status": "success"

        }

    ],

    "statuses": [

        {

            "in_progress": true,

            "deleted": false,

            "internal_name": "Open",

            "prominent": true,

            "stop_timer": false,

            "color": "#0066ff",

            "name": "Open",

            "id": "2"

        },

        {

            "in_progress": true,

            "deleted": false,

            "internal_name": "In Progress",

            "prominent": true,

            "stop_timer": false,

            "color": "#00ffcc",

            "name": "In Progress",

            "id": "6"

        }

    ]

}

{

    "response_status": [

        {

            "status_code": 2000,

            "status": "success"

        }

    ],

    "status": [

        {

            "in_progress": true,

            "deleted": false,

            "internal_name": "Open",

            "stop_timer": false,

            "color": "#0066ff",

            "name": "Open",

            "description": "Request Pending",

            "id": "2"

        },

        {

            "in_progress": true,

            "deleted": false,

            "internal_name": "Assigned",

            "stop_timer": false,

            "color": "#006699",

            "name": "Assigned",

            "description": "Request Assigned to the technician, waiting for technician action",

            "id": "5"

        }

    ]

}

 

获取连接节点 API

 

旧格式

新格式

URL

api/v3/request_lifecycles/<lifecycleid>/get_connected_nodes

/api/v3/request_workflows/<workflowid>/get_connected_nodes

输入数据

{"node_entity_id":0,"module":{"name":"request"}}

{"state_id":0,"module":{"name":"request"}}

响应

{

    "response_status": [

   {

            "status_code": 2000,

            "status": "success"

    }

    ],

    "statuses": [

      {

            "in_progress": true,

            "deleted": false,

           "internal_name": "Open",

            "prominent": true,

           "stop_timer": false,

           "color": "#0066ff",

            "name": "Open",

            "id": "2"

       

    ]

}

{

    "response_status": [

    {

           "status_code": 2000,

           "status": "success"

    }

    ],

    "status": [

        {

           "in_progress": true,

           "deleted": false,

           "internal_name": "Open",

            "stop_timer": false,

            "color": "#0066ff",

            "name": "Open",

            "description": "Request Pending",

            "id": "2"

        }

    ]

}

 

审批等级响应

请求审批级响应中的rule.value字段采用更新值,如下所示:

旧值

新值

anyone

anyone_approves

all

everyone_approves

first_response

first_response_action

 

旧格式

新格式

URL

GET - /requests/{id}/approval_level/{id}

GET - /requests/{id}/approval_level/{id}

响应

{

  "request": {

    "subject": "zxc",

    "id": "24"

  },

  "comments": "Level approved in accordance with approval rule.",

  "level": 1,

  "associated_entity": "request",

  "action_taken_by": {

    "email_id": null,

    "phone": null,

    "name": "System",

    "mobile": null,

    "profile_pic": null,

    "is_vipuser": false,

    "id": "1",

    "department": null

  },

  "rule": {

    "type": "template_configurations",

    "value": "anyone"

  },

  "created_by": {

    "email_id": null,

    "phone": null,

    "name": "System",

    "mobile": null,

    "profile_pic": null,

    "is_vipuser": false,

    "id": "1",

    "department": null

  },

  "deleted": false,

  "created_on": {

    "display_value": "Feb 11, 2025 04:39 PM",

    "value": "1739272164893"

  },

  "name": "Guest Level",

  "id": "304",

  "status": {

    "name": "Approved",

    "id": "2"

  },

  "action_taken_on": {

    "display_value": "Feb 11, 2025 04:39 PM",

    "value": "1739272178778"

  }

}

{

  "request": {

    "subject": "zxc",

    "id": "24"

  },

  "comments": "Level approved in accordance with approval rule.",

  "level": 1,

  "associated_entity": "request",

  "action_taken_by": {

    "email_id": null,

    "phone": null,

    "name": "System",

    "mobile": null,

    "profile_pic": null,

    "is_vipuser": false,

    "id": "1",

    "department": null

  },

  "rule": {

    "type": "template_configurations",

    "value": "anyone_approves"

 },

  "created_by": {

    "email_id": null,

    "phone": null,

    "name": "System",

    "mobile": null,

    "profile_pic": null,

    "is_vipuser": false,

    "id": "1",

    "department": null

  },

  "deleted": false,

  "created_on": {

    "display_value": "Feb 11, 2025 04:39 PM", "value": "1739272164893"

  },

  "name": "Guest Level",

  "id": "304",

  "status": {

    "name": "Approved",

    "id": "2"

  },

  "action_taken_on": {

    "display_value": "Feb 11, 2025 04:39 PM",

    "value": "1739272178778"

  }

}

 

API实体层级关键差异的运行时段

旧参数

新参数

说明

site

associated_sites

地点明细已变更为数组模式。

days_of_operation

days

 

hours_of_operation

hours

 

site_type

(removed)

地点类型根据全局工作时间的值进行选择

day_type

(removed)

日类型根据is_standard 参数进行选择。

exclude_weeks

exception_rules

exclude_weeks从日对象中移除,并在外部放置新参数。


响应差别

请使用下面的图例来理解表格中使用的颜色代码:
红色 - 已移除的参数
黄色 - 已修改的参数
绿色 - 新增参数

 

旧格式

新格式

URL

/operational_hours/<id>

/operational_hours/<id>

响应

{

    "response_status": {

        "status_code": 2000,

        "status": "success"

    },

    "operational_hour": {

        "days_of_operation": [

            {

                "day_type": "custom",

                "hours_of_operation": {

                    "start_time": {

                        "hours": 10,

                        "minutes": 0

                    },

                    "break_start_time": {

                        "hours": 12,

                        "minutes": 0

                    },

                    "end_time": {

                        "hours": 23,

                        "minutes": 0

                    },

                    "break_end_time": {

                        "hours": 13,

                        "minutes": 0

                    }

                },

                "exclude_weeks": null,

                "is_working": true,

                "week_day": "MONDAY",

                "id": "315"

            },

            {

                "day_type": "standard",

                "hours_of_operation": {

                    "start_time": {

                        "hours": 9,

                        "minutes": 0

                    },

                    "break_start_time": {

                        "hours": 0,

                        "minutes": 0

                    },

                    "end_time": {

                        "hours": 18,

                        "minutes": 0

                    },

                    "break_end_time": {

                        "hours": 0,

                        "minutes": 0

                    }

                },

                "exclude_weeks": null,

                "is_working": true,

                "week_day": "TUESDAY",

                "id": "316"

            },

            {

                "day_type": "standard",

                "hours_of_operation": {

                    "start_time": {

                        "hours": 9,

                        "minutes": 0

                    },

                    "break_start_time": {

                        "hours": 0,

                        "minutes": 0

                    },

                    "end_time": {

                        "hours": 18,

                        "minutes": 0

                    },

                    "break_end_time": {

                        "hours": 0,

                        "minutes": 0

                    }

                },

                "exclude_weeks": null,

                "is_working": true,

                "week_day": "WEDNESDAY",

                "id": "317"

            },

            {

                "day_type": "standard",

                "hours_of_operation": {

                    "start_time": {

                        "hours": 9,

                        "minutes": 0

                    },

                    "break_start_time": {

                        "hours": 0,

                        "minutes": 0

                    },

                    "end_time": {

                        "hours": 18,

                        "minutes": 0

                    },

                    "break_end_time": {

                        "hours": 0,

                        "minutes": 0

                    }

                },

                "exclude_weeks": null,

                "is_working": true,

                "week_day": "THURSDAY",

                "id": "318"

            },

            {

                "day_type": "standard",

                "hours_of_operation": {

                    "start_time": {

                        "hours": 9,

                        "minutes": 0

                    },

                    "break_start_time": {

                        "hours": 0,

                        "minutes": 0

                    },

                    "end_time": {

                        "hours": 18,

                        "minutes": 0

                    },

                    "break_end_time": {

                        "hours": 0,

                        "minutes": 0

                    }

                },

                "exclude_weeks": null,

                "is_working": true,

                "week_day": "FRIDAY",

                "id": "319"

            },

            {

                "exclude_weeks": null,

                "is_working": false,

                "week_day": "SUNDAY",

                "id": "321"

            },

            {

                "exclude_weeks": null,

                "is_working": false,

                "week_day": "SATURDAY",

                "id": "320"

            }

        ],

        "site": {

           "id":"301"

        },

        "hours_of_operation": {

            "start_time": {

                "hours": 9,

                "minutes": 0

            },

            "break_start_time": {

                "hours": 0,

                "minutes": 0

            },

            "end_time": {

                "hours": 18,

                "minutes": 0

            },

            "break_end_time": {

                "hours": 0,

                "minutes": 0

            }

        },

        "site_type": "standard",

        "id": "1"

    }

}

{

  "response_status": {

    "status_code": 2000,

    "status": "success"

  },

  "operational_hour": {

    "end_date": null,

    "created_time": {

      "display_value": "31/10/2025 16:00",

      "value": "1761906606174"

    },

    "hours": {

      "start_minutes": "0",

      "end_hours": "20",

      "start_hours": "12",

      "end_minutes": "0",

      "break_hours": [

        {

          "name": "Break Hours",

          "break_start_hours": "16",

          "break_end_minutes": "0",

          "id": "1",

          "break_start_minutes": "0",

          "break_end_hours": "17"

          "order": "1"

        }

      ],

      "id": "301",

      "is_standard": true

    },

    "special_operational_hours": [],

    "description": "Operation Hours For Site",

    "created_by": {

      "phone": null,

      "name": "admin",

      "mobile": null,

 

        "id": "451"

      },

      "is_vipuser": false,

      "id": "26",

      "department": null

    },

    "is_special": false,

    "is_base": false,

    "last_updated_by": null,

    "deleted": false,

    "associated_sites": [

      {

        "name": "Custom Site",

        "id": "3"

      }

    ],

    "last_updated_time": null,

    "associated_regions": [],

    "associated_groups": [],

    "name": "Operation Hours For Site",

    "days": [

      {

        "hours": {

          "start_minutes": "0",

          "end_hours": "20",

          "start_hours": "12",

          "end_minutes": "0",

          "break_hours": [

            {

              "name": "Break Hours",

              "break_start_hours": "16",

              "break_end_minutes": "0",

              "id": "1",

              "break_start_minutes": "0",

              "break_end_hours": "17",

              "order": "1"

            }

          ],

          "id": "301",

          "is_standard": true

        },

        "is_working": true,

        "week_day": "FRIDAY",

        "id": "305"

      },

      {

        "hours": {

          "start_minutes": "0",

          "end_hours": "20",

          "start_hours": "12",

          "end_minutes": "0",

          "break_hours": [

            {

              "name": "Break Hours",

              "break_start_hours": "16",

              "break_end_minutes": "0",

              "id": "1",

              "break_start_minutes": "0",

              "break_end_hours": "17",

              "order": "1"

            }

          ],

          "id": "301",

          "is_standard": true

        },

        "is_working": true,

        "week_day": "THURSDAY",

        "id": "304"

      },

      {

        "hours": {

          "start_minutes": "0",

          "end_hours": "20",

          "start_hours": "12",

          "end_minutes": "0",

          "break_hours": [

            {

              "name": "Break Hours",

              "break_start_hours": "16",

              "break_end_minutes": "0",

              "id": "1",

              "break_start_minutes": "0",

              "break_end_hours": "17",

              "order": "1"

            }

          ],

          "id": "301",

          "is_standard": true

        },

        "is_working": true,

        "week_day": "WEDNESDAY",

        "id": "303"

      },

      {

        "hours": {

          "start_minutes": "0",

          "end_hours": "20",

          "start_hours": "12",

          "end_minutes": "0",

          "break_hours": [

            {

              "name": "Break Hours",

              "break_start_hours": "16",

              "break_end_minutes": "0",

              "id": "1",

              "break_start_minutes": "0",

              "break_end_hours": "17",

              "order": "1"

            }

          ],

          "id": "301",

          "is_standard": true

        },

        "is_working": true,

        "week_day": "TUESDAY",

        "id": "302"

      },

      {

        "hours": {

          "start_minutes": "0",

          "end_hours": "20",

          "start_hours": "12",

          "end_minutes": "0",

          "break_hours": [

            {

              "name": "Break Hours",

              "break_start_hours": "16",

              "break_end_minutes": "0",

              "id": "1",

              "break_start_minutes": "0",

              "break_end_hours": "17",

              "order": "1"

            }

          ],

          "id": "301",

          "is_standard": true

        },

        "is_working": true,

        "week_day": "MONDAY",

        "id": "301"

      },

      {

        "hours": null,

        "is_working": false,

        "week_day": "SUNDAY",

        "id": "307"

      },

      {

        "hours": null,

        "is_working": false,

        "week_day": "SATURDAY",

        "id": "306"

      }

    ],

    "id": "301",

    "is_recurring": false,

    "exception_rules": [

      {

        "hours": {

          "start_minutes": "0",

          "end_hours": "17",

          "start_hours": "12",

          "end_minutes": "0",

          "break_hours": [],

          "id": "307",

          "is_standard": false

        },

        "week_day": 6,

        "id": "1",

        "week_number": "7",

        "start_date": {

          "display_value": "01.11.2025",

          "value": 1761935400000

        }

      }

    ],

    "start_date": null

  }

}

 

检查清单增强功能

参数区别
请参阅下表,快速了解本次 API 更新所引入的关键变更对比。

请参考下方图例,以理解表格中使用的颜色标识说明。

红色 - 已移除的参数
黄色 - 已修改的参数
绿色 - 新增参数

API

旧端点

新端点

旧参数

新参数

Get, Add, Update(Radio Field, Boolean field, Numeric field, Single line field)

Get All, Single Delete, Bulk Delete

 

 

/api/v3/additional_fields

/api/v3/item_details

field_id

 

checklist

 

api_key

 

field_key

 

column_name

 

is_PII

 

module

 

default_value

 

allowed_values : [

      "a",

      "b",

      "c",

      "d"

]

allowed_values: [

      {

        "name": "option1",

        "id": "43",

        "order": "1"

      },

      {

        "name": "option2",

        "id": "44",

        "order": "2"

      }

]

 

deleted

 

"constraints": [

      {

        "constraint_value": "1:10",

   "constraint_name": "num_range",

        "id": "23"

      }, {

        "constraint_value": "2",

     "constraint_name": "min_length",

        "id": "24"

      },

      {

        "constraint_value": "10",

    "constraint_name": "max_length",

        "id": "25"

      }

    ]

Get Associated checklists for a Checklist Additional Field  

/api/v3/checklist_items

api/v3/checklist_item_templates

udf_field

"udf_field": {

        "id": "27",

        "alias_name": "Radio Field 3",

        "field_type": "Radio"

      }

item

"item": {

        "name": "Sample Boolean Field Updated",

        "description": "<div>This is a sample field updated<br /></div>",

        "id": "27",

        "field_type": "Boolean"

      },

      "

Add, Update, Get, Delete (Checklists),

Bulk Delete, Get All Checklists

/api/v3/checklists

/api/v3/checklist_templates

checklist

   "checklist": {

        "id": "2",

        "title": "Sample Checklist 1"

      }

checklist_template

  "checklist_template": {

        "name": "Sample Checklist Updated",

        "description": "Sample checklist description",

        "id": "10"

      }

title

name

checklist_items.values

 

checklist_items.udf_field

checklist_items.item

checklist_items.udf_field.alias_name

checklist_items.item.name

templates

 

Add/Get/Update/Delete APIs of Request Template and Checklist Association.

template_checklist

template_checklist

request_template

template

checklist.title

checklist.name

Add Request operation

/api/v3/requests

/api/v3/requests

 

request_template_checklist_ids

"request_template_checklist_ids":[{"id":"14"},{"id":"13"},{"id":"10"}]

Add/Delete/Get APIs of Request-Checklist Association

/api/v3/requests/<id>/checklists

api/v3/request_templates/<id>/checklists

checklist_items

 

title

name

status

Not Verified

status

{

        "internal_name": "Not Verified",

        "color": "#ff0000",

        "name": "Not Verified",

        "id": "2"

}

text_value

cl_value

bool_value

cl_value

long_value

cl_value

options

 

fieldname

item.name

field_type

item.field_type

comments

 

 

is_enabled

 

module

 

检查清单API输入格式变更:

API

API URL (旧)

API URL (新)

旧输入格式

新输入格式

Add (Radio Field)

/api/v3/additional_fields

/api/v3/item_details

{

  "additional_fields": {

    "module": "checklist",

    "name": "Radio Field ",

    "field_type": "radio",

    "allowed_values": [

      {

        "name": "a"

      },

      {

        "name": "b"

      },

      {

        "name": "c"

      },

      {

        "name": "d"

      }

    ]

  }

}

{

  "item_detail": {

    "name": "Sample Radio Field",

    "field_type": "Radio",

    "description": "<div>This is a sample description</div>",

    "allowed_values": [

      {

        "name": "option1"

      },

      {

        "name": "option2"

      },

      {

        "name": "option3"

      },

      {

        "name": "option4"

      }

    ]

  }

}

ADD (Boolean Field)

/api/v3/additional_fields

/api/v3/item_details

{

  "additional_fields": {

    "module": "checklist",

    "name": "Boolean Field",

    "field_type": "boolean"

  }

}

{

  "item_detail": {

    "name": "Sample Boolean Field",

    "field_type": "Boolean",

    "description": "<div>This is a sample field</div>"

  }

}

ADD (Numeric Field)

/api/v3/additional_fields

/api/v3/item_details

{

  "additional_fields": {

    "module": "checklist",

    "name": "Numeric Field",

    "field_type": "numeric"

  }

}

{

  "item_detail": {

    "name": "Sample Numeric Field",

    "field_type": "Numeric",

    "description": "<div>This is a sample,description     </div>",

    "constraints": [

      {

        "constraint_name": "num_range",

        "constraint_value": "1:10"

      }

    ]

  }

}

ADD (Single Line Field)

/api/v3/additional_fields

/api/v3/item_details

{

  "additional_fields": {

    "module": "checklist",

    "name": "Single Line Field",

    "field_type": "single_line"

  }

}

{

  "item_detail": {

    "name": "Sample Single Line Field",

    "field_type": "Single Line",

    "description": "<div>This is a sample description</div>",

    "constraints": [

      {

        "constraint_name": "min_length",

        "constraint_value": "2"

      },

      {

        "constraint_name": "max_length",

        "constraint_value": "10"

      }

    ]

  }

}

Update (Single Line Field)

/api/v3/additional_fields

/api/v3/item_details

{

  "additional_fields": {

    "module": "checklist",

    "name": "Single Line Field Updated",

    "field_type": "single_line"

  }

}

{

  "item_detail": {

    "name": "Sample Single Line Field Updated",

    "field_type": "Single Line",

    "description": "<div>This is a sample description updated<br></div>",

    "constraints": [

      {

        "constraint_name": "min_length",

        "constraint_value": "3"

      },

      {

        "constraint_name": "max_length",

        "constraint_value": "11"

      }

    ]

  }

}

Update (Boolean Field)

/api/v3/additional_fields

/api/v3/item_details

{

  "additional_fields": {

    "module": "checklist",

    "name": "Boolean Field Updated ",

    "field_type": "boolean"

  }

}

{

  "item_detail": {

    "name": "Sample Boolean Field Updated",

    "field_type": "Boolean",

    "description": "<div>This is a sample field updated<br></div>"

  }

}

Update (Radio Field)

/api/v3/additional_fields

/api/v3/item_details

{

  "additional_fields": {

    "module": "checklist",

    "name": "Radio Field Updated",

    "field_type": "radio",

    "allowed_values": [

      {

        "name": "aa"

      },

      {

        "name": "bb"

      },

      {

        "name": "cc"

      },

      {

        "name": "dd"

      }

    ]

  }

}

{

  "item_detail": {

    "name": "Sample Radio Field Updated",

    "field_type": "Radio",

    "description": "<div>This is a sample description Updated<br></div>",

    "allowed_values": [

      {

        "name": "option3"

      },

      {

        "name": "option4"

      },

      {

        "name": "option1 updated"

      },

      {

        "name": "option 2 updated"

      }

    ]

  }

}

Update (Numeric Field)

/api/v3/additional_fields

api/v3/item_details

{

  "additional_fields": {

    "module": "checklist",

    "name": "Numeric Field Updated",

    "field_type": "numeric"

  }

}

{

  "item_detail": {

    "name": "Sample Numeric Field updated",

    "field_type": "Numeric",

    "description": "<div>This is a sample description updated <br></div>",

    "constraints": [

      {

        "constraint_name": "num_range",

        "constraint_value": "2:12"

      }

    ]

  }

}

Get (Single Line Field)

/api/v3/additional_fields

/api/v3/item_details

 

 

Get (Radio Field)

/api/v3/additional_fields

/api/v3/item_details

 

 

Get (Boolean Field)

/api/v3/additional_fields

/api/v3/item_details

 

 

Get (Numeric Field)

/api/v3/additional_fields

/api/v3/item_details

 

 

Get All

/api/v3/additional_fields

api/v3/item_details

{

  "list_info": {

    "search_fields": {

      "module": "checklist"

    }

  }

}

 

Single Delete

/api/v3/additional_fields

/api/v3/item_details

 

 

Bulk Delete

/api/v3/additional_fields

/api/v3/item_details

 

 

Get Associated checklists for a Checklist Additional Field

/api/v3/checklist_items

api/v3/checklist_item_templates

{

  "list_info": {

    "search_fields": {

      "udf_field.id": 27

    }

  }

}

{

  "list_info": {

    "row_count": "10",

    "start_index": "1",

    "search_criteria": {

      "field": "item.id",

      "value": "7",

      "condition": "eq",

      "logical_operator": "AND"

    },

    "get_total_count": true

  }

}

Add Checklist

/api/v3/checklists

/api/v3/checklist_templates

{

  "checklist": {

    "title": "Sample Checklist 10",

    "description": "Sample Description",

    "checklist_items": [

      {

        "udf_field": {

          "id": 27

        },

        "order": 1

      },

      {

        "udf_field": {

          "id": 28

        },

        "order": 2

      },

      {

        "udf_field": {

          "id": 29

        },

        "order": 3

      }

    ]

  }

}

{

  "checklist_template": {

    "name": "Sample Checklist",

    "checklist_items": [

      {

        "item": {

          "id": "7"

        },

        "order": 1

      },

      {

        "item": {

          "id": "8"

        },

        "order": 2

      },

      {

        "item": {

          "id": "13"

        },

        "order": 3

      },

      {

        "item": {

          "id": "10"

        },

        "order": 4

      }

    ]

  }

}

Update Checklist

/api/v3/checklists

/api/v3/checklist_templates

{

  "checklist": {

    "title": "Sample Checklist 1",

    "description": "Sample Description",

    "checklist_items": [

      {

        "udf_field": {

          "id": 28

        },

        "order": 1

      },

      {

        "udf_field": {

          "id": 29

        },

        "order": 2

      },

      {

        "udf_field": {

          "id": 30

        },

        "order": 3

      }

    ]

  }

}

{

  "checklist_template": {

    "name": "Sample Checklist Updated",

    "description": "Sample checklist description ",

    "checklist_items": [

      {

        "item": {

          "id": "7"

        },

        "order": 1,

        "id": "5"

      },

      {

        "item": {

          "id": "8"

        },

        "order": 2,

        "id": "6"

      },

      {

        "item": {

          "id": "13"

        },

        "order": 3,

        "id": "7"

      },

      {

        "item": {

          "id": "10"

        },

        "order": 4,

        "id": "8"

      }

    ]

  }

}

Get Checklist

/api/v3/checklists

/api/v3/checklist_templates

 

 

GET ALL CHECKLISTS

/api/v3/checklists

/api/v3/checklist_templates

 

 

Delete Checklist

/api/v3/checklists

/api/v3/checklist_templates

 

 

Bulk Delete Checklists

/api/v3/checklists?<ids>

/api/v3/checklist_templates?<ids>

 

 

Get Checklist History

/api/v3/checklists/<id>/history

/api/v3/checklist_templates/<id>/history

 

 

Get Associated Request Templates of Checklist

/api/v3/template_checklists

/api/v3/template_checklists

{

  "list_info": {

    "search_fields": {

      "checklist.id": 5

    }

  }

}

{

  "list_info": {

    "row_count": "10",

    "start_index": "1",

    "search_criteria": {

      "field": "checklist.id",

      "value": "10",

      "condition": "eq",

      "logical_operator": "AND"

    },

    "get_total_count": true

  }

}

Associate Checklists to a Request Template

/api/v3/request_templates/<id>/checklists

api/v3/request_templates/<id>/checklists

{ "checklists": [ { "checklist":{ "id":1, }, "order": 1 }, { "checklist":{ "id":2, }, "order": 2 }, { "checklist":{ "id":3, }, "order": 3 }, { "checklist":{ "id":4, }, "order": 4 }, { "checklist":{ "id":5, }, "order": 5 } ] }

{

  "checklists": [

    {

      "checklist": {

        "id": "2"

      },

      "order": 1

    },

    {

      "checklist": {

        "id": "6"

      },

      "order": 2

    },

    {

      "checklist": {

        "id": "7"

      },

      "order": 3

    }

  ]

}

Dissociate Checklists from Request Template

api/v3/request_templates/<id>/checklists?<ids>

/api/v3/request_templates/<id>/checklists?<ids>

 

 

Get Associated checklists of Request Template

/api/v3/request_templates/<id>/checklists

/api/v3/request_templates/<id>/checklists

 

 

Reorder Checklists of Request Template

/api/v3/request_templates/<id>/checklists

/api/v3/request_templates/<id>/checklists

{ "checklists": [ { "id":1, "order": 5 }, { "id":2, "order": 4 }, { "id":3, "order": 3 }, { "id":4, "order": 2 }, { "id":5, "order": 1 } ] }

{"checklists":[{"id":17,"order":1},{"id":16,"order":2},{"id":18,"order":3}]}

Create Request with Checklists

/api/v3/requests

/api/v3/requests

{

  "request": {

    "requester": {

      "id": "5"

    },

    "assets": [],

    "request_type": null,

    "impact": null,

    "status": {

      "id": "2"

    },

    "impact_details": "",

    "mode": null,

    "urgency": null,

    "level": null,

    "priority": null,

    "group": null,

    "category": null,

    "technician": null,

    "subcategory": null,

    "service_category": null,

    "item": null,

    "email_ids_to_notify": [],

    "subject": "abcd",

    "description": "",

    "attachments": [],

    "resolution": {

      "content": ""

    },

    "request_template_task_ids": [],

    "template": {

      "id": "1"

    },

    "zia_properties": {}

  }

}

{

  "request": {

    "requester": {

      "id": "5"

    },

    "assets": [],

    "request_type": null,

    "impact": null,

    "status": {

      "id": "2"

    },

    "impact_details": "",

    "mode": null,

    "urgency": null,

    "level": null,

    "priority": null,

    "group": null,

    "category": null,

    "technician": null,

    "subcategory": null,

    "service_category": null,

    "item": null,

    "email_ids_to_notify": [],

    "subject": "abcd",

    "description": "",

    "attachments": [],

    "resolution": {

      "content": ""

    },

    "request_template_task_ids": [],

    "request_template_checklist_ids": [

      {

        "id": "14"

      },

      {

        "id": "13"

      },

      {

        "id": "10"

      }

    ],

    "template": {

      "id": "1"

    },

    "zia_properties": {}

  }

}

Associate Checklists to Request

/api/v3/requests/<id>/associate_checklists

/api/v3/requests/<id>/checklists

{

  "checklists": [

    {

      "id": "1"

    }

  ]

}

{

  "checklists": [

    {

      "checklist_template": {

        "id": "10"

      }

    },

    {

      "checklist_template": {

        "id": "13"

      }

    },

    {

      "checklist_template": {

        "id": "14"

      }

    }

  ]

}

Get checklists of Request

/api/v3/requests/<id>/checklists

/api/v3/requests/<id>/checklists

 

 

Updating Radio Checklistitem

/api/v3/requests/<id>/checklists/<id>/checklist_items

/api/v3/requests/<id>/checklists/<id>/checklist_items

{

  "module_checklist_item": {

    "text_value": "a"

  }

}

{

  "checklist_item": {

    "cl_value": "option4"

  }

}

Updating Boolean Checklistitem

/api/v3/requests/<id>/checklists/<id>/checklist_items

/api/v3/requests/<id>/checklists/<id>/checklist_items

{

  "module_checklist_item": {

    "bool_value": true

  }

}

{

  "checklist_item": {

    "cl_value": "true"

  }

}

Updating Numeric Checklistitem

/api/v3/requests/<id>/checklists/<id>/checklist_items

/api/v3/requests/<id>/checklists/<id>/checklist_items

{

  "module_checklist_item": {

    "long_value": 123

  }

}

{

  "checklist_item": {

    "cl_value": "10"

  }

}

Updating Single Line Checklist Item

/api/v3/requests/<id>/checklists/<id>/checklist_items

/api/v3/requests/<id>/checklists/<id>/checklist_items

{

  "module_checklist_item": {

    "text_valuevipuser": "abc"

  }

}

{

  "checklist_item": {

    "cl_value": "sample"

  }

}

Delete ChecklistItem

/api/v3/requests/<id>/checklists/<id>/checklist_items/<id>

/api/v3/requests/<id>/checklists/<id>/checklist_items/<id>

 

 

CheckklistItems Bulk Delete

/api/v3/requests/<id>/checklists/<id>/checklist_items?i<ids>

/api/v3/requests/<id>/checklists/<id>/checklist_items?<ids>

 

 

Checklist Status Updating

/api/v3/requests/<id>/checklists/<id>

/api/v3/requests/<id>/checklists/<id>

{

  "module_checklist": {

    "status": "Verified"

  }

}

{

  "checklist": {

    "status": {

      "name": "Not Verified"

    }

  }

}

Deleting Checklist

/api/v3/requests/<id>/checklists/<id>

/api/v3/requests/<id>/checklists/<id>

 

 

Bulk Deleting Checklists

/api/v3/requests/<id>/checklists?<ids>

/api/v3/requests/<id>/checklists?<ids>