CI Lifecycle Management API

  • Release version: Australia
  • Updated March 12, 2026
  • 30 minutes to read
  • The CI Lifecycle Management API provides endpoints to manipulate configuration item (CI) operational states and apply CI actions.

    The API interfaces adhere to restrictions and allowances specified by not allowed CI actions, compatible CI actions, and not allowed operational transitions. If an interface attempts a restricted operation, the operation is blocked, an error is logged, and a task is created if appropriate.

    CI Lifecycle Management - DELETE /now/cilifecyclemgmt/actions

    Removes a configuration item (CI) action for a list of CIs.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/actions

    Default URL: /api/now/cilifecyclemgmt/actions

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 1. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    Table 2. Query parameters
    Name Description
    actionName Required. Configuration item action name.

    Data type: String

    requestorId Required. Sys_id of a workflow context, or an operator user ID returned from the CI Lifecycle Management - POST /now/cilifecyclemgmt/operators endpoint.

    Operator user IDs are located in the CI State Registered Users [statemgmt_register_users] table.

    Data type: String

    sysIds Required. Comma-separated list of CI sys_ids.

    Data type: String

    Table 3. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 4. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Table 5. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 6. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.result Flag indicating whether the CI action was successfully removed.
    Possible values:
    • true: CI action was removed.
    • false: CI action was not removed.

    Data type: String

    cURL request

    Remove a CI action from two CIs.

    curl --request DELETE \
    'https://instance.service-now.com/api/now/cilifecyclemgmt/actions?actionName=Patching&requestorId=621b5a09309e5010f877773aa7167c0a&sysIds=00a9a80d3790200044e0bfc8bcbe5d1c,d0fdbc8437201000deeabfc8bcbe5d33' \
    --header 'Accept: application/json' \
    --user "username":"password"

    The response body confirms that the CI action was removed from the CIs.

    {
      "result": {
        "result": true
      }
    }

    CI Lifecycle Management - DELETE /now/cilifecyclemgmt/operators/{req_id}

    Unregisters an operator for non-workflow users.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/operators/{req_id}

    Default URL: /api/now/cilifecyclemgmt/operators/{req_id}

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 7. Path parameters
    Parameter Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    req_id Sys_id of a workflow context, or an operator user ID returned from the CI Lifecycle Management - POST /now/cilifecyclemgmt/operators endpoint.

    Operator user IDs are located in the CI State Registered Users [statemgmt_register_users] table.

    Data type: String

    Table 8. Query parameters
    Name Description
    None
    Table 9. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 10. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Table 11. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 12. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.result Flag indicating whether the operator was successfully unregistered.
    Possible values:
    • true: Operator was successfully unregistered.
    • false: Operator was not successfully unregistered.

    Data type: String

    cURL request

    Unregister an operator by user ID.

    curl --request DELETE \
    "https://instance.service-now.com/api/now/cilifecyclemgmt/operators/3cf1b3cc30121010f877773aa7167c6e" \
    --header "Accept: application/json" \
    --user "username":"password"

    The response body verifies that the operator was unregistered.

    {
      "result": {
        "result": true
      }
    }

    CI Lifecycle Management - GET /now/cilifecyclemgmt/actions/{sys_id}

    Returns a list of active configuration item (CI) actions for the specified CI.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/actions/{sys_id}

    Default URL: /api/now/cilifecyclemgmt/actions/{sys_id}

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 13. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    sys_id Sys_id of the CI for which to return associated CI actions.

    Data type: String

    Table 14. Query parameters
    Name Description
    None
    Table 15. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 16. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Table 17. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 18. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.ciActions parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.ciActions Comma-separated list of active CI actions for the CI, or no_active_action if none were found.

    Data type: String

    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.result Flag indicating whether the list of active CI actions was returned for all specified CIs.
    Possible values:
    • true: List of active CI actions was returned.
    • false: List of active CI actions was not returned.

    Data type: String

    cURL request

    curl --request GET \
    'https://instance.service-now.com/api/now/cilifecyclemgmt/actions/00a9a80d3790200044e0bfc8bcbe5d1c' \
    --header 'Accept: application/json' \
    --user "username":"password"

    The response body shows that no CI actions are active for the specified CI.

    {
      "result": {
        "ciActions": [
          "no_active_action"
        ],
        "result": true
      }
    }

    CI Lifecycle Management - GET /now/cilifecyclemgmt/compatActions

    Determines whether two specified configuration item (CI) actions are compatible.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/compatActions

    Default URL: /api/now/cilifecyclemgmt/compatActions

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 19. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    Table 20. Query parameters
    Name Description
    actionName Required. Name of CI action to compare.

    Data type: String

    otherActionName Required. Name of CI action to compare.

    Data type: String

    Table 21. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 22. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Table 23. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 24. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Flag indicating whether the two specified CI actions are compatible.
    Possible values:
    • true: CI actions are compatible.
    • false: CI actions are not compatible.

    Data type: String

    cURL request

    Check compatibility of Patching and Provisioning CI actions.

    curl --request GET \
    'https://instance.service-now.com/api/now/cilifecyclemgmt/compatActions?actionName=Patching&otherActionName=Provisioning' \
    --header 'Accept: application/json' \
    --user "username":"password"

    The response body confirms that the two CI actions are compatible.

    {
      "result": true
    }

    CI Lifecycle Management - GET /now/cilifecyclemgmt/leases/{sys_id}/expired

    Determines whether the lease has expired for the requestor of a configuration item (CI) action applied to the specified CI.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/leases/{sys_id}/expired

    Default URL: /api/now/cilifecyclemgmt/leases/{sys_id}/expired

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 25. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    sys_id Sys_id of the CI that is the target of the applied CI action.

    Data type: String

    Table 26. Query parameters
    Name Description
    actionName Required. Name of the CI action applied to the specified CI.

    Data type: String

    requestorId Required. Sys_id of a workflow context, or an operator user ID returned from the CI Lifecycle Management - POST /now/cilifecyclemgmt/operators endpoint.

    Operator user IDs are located in the CI State Registered Users [statemgmt_register_users] table.

    Data type: String

    Table 27. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 28. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Table 29. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 30. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.result Flag indicating whether the lease for the requestor of the applied CI action has expired.
    Possible values:
    • true: Requestor's lease has expired.
    • false: Requestor's lease has not expired.

    Data type: String

    cURL request

    curl --request GET \
    'https://instance.service-now.com/api/now/cilifecyclemgmt/leases/00a9a80d3790200044e0bfc8bcbe5d1c/expired?actionName=Patching&requestorId=621b5a09309e5010f877773aa7167c0a' \
    --header 'Accept: application/json' \
    --user "username":"password"

    The response body shows that the lease for the requestor of the applied CI action has not expired.

    {
      "result": {
        "result": false
      }
    }

    CI Lifecycle Management - GET /now/cilifecyclemgmt/notAllowedAction

    Determines whether a specified configuration item (CI) action is not allowed for a CI of a specified class when in a specified operational state.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/notAllowedAction

    Default URL: /api/now/cilifecyclemgmt/notAllowedAction

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 31. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    Table 32. Query parameters
    Name Description
    actionName Required. Name of the CI action to check.

    Data type: String

    ciClass Required. CI class.

    Data type: String

    opsLabel Required. Operational state to check.

    Data type: String

    Table 33. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 34. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Table 35. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 36. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Flag indicating whether the CI action is restricted (not allowed) for CIs of the specified type when in the specified operational state.
    Possible values:
    • true: CI action is restricted (not allowed).
    • false: CI action is unrestricted (allowed).

    Data type: String

    cURL request

    Check whether the Patching CI action is restricted (not allowed) for computers in the DR Standby operational state.

    curl --request GET \
    "https://instance.service-now.com/api/now/cilifecyclemgmt/notAllowedAction?actionName=Patching&ciClass=cmdb_ci_computer&opsLabel=DR+Standby" \
    --header "Accept: application/json" \
    --user "username":"password"

    The response body confirms that this action is restricted (not allowed) for the specified CI class when in the specified operational state.

    {
      "result": true
    }

    CI Lifecycle Management - GET /now/cilifecyclemgmt/notAllowedOpsTransition

    Determines whether a configuration item (CI) from a specified class can transition from a specified operational state to a second specified operational state.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/notAllowedOpsTransition

    Default URL: /api/now/cilifecyclemgmt/notAllowedOpsTransition

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 37. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    Table 38. Query parameters
    Name Description
    ciClass Required. CI class to check transition restrictions for.

    Data type: String

    opsLabel Required. Label of current CI operational state.

    Data type: String

    transitionOpsLabel Required. Label of operational state that is the target of the transition.

    Data type: String

    Table 39. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 40. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Table 41. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 42. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Flag indicating whether the specified operational state transition is restricted (not allowed) for the specified CI class.
    Possible values:
    • true: Operational state transition is restricted (not allowed).
    • false: Operational state transition is unrestricted (allowed).

    Data type: String

    cURL request

    Check whether transition from Retired operational state to DR Standby operational state is restricted (not allowed) for Linux server CIs.

    curl --request GET \
    "https://instance.service-now.com/api/now/cilifecyclemgmt/notAllowedOpsTransition?ciClass=cmdb_ci_computer&opsLabel=Retired&transitionOpsLabel=DR+Standby" \
    --header "Accept: application/json" \
    --user "username":"password"

    The response body shows that the specified operational state transition is unrestricted (allowed) for this CI class.

    {
      "result": false
    }

    CI Lifecycle Management - GET /now/cilifecyclemgmt/requestors/{req_id}/valid

    Determines whether the specified active workflow user or registered user is a valid requestor.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/requestors/{req_id}/valid

    Default URL: /api/now/cilifecyclemgmt/requestors/{req_id}/valid

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 43. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    req_id Sys_id of a workflow context, or an operator user ID returned from the CI Lifecycle Management - POST /now/cilifecyclemgmt/operators endpoint.

    Operator user IDs are located in the CI State Registered Users [statemgmt_register_users] table.

    Data type: String

    Table 44. Query parameters
    Name Description
    None
    Table 45. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 46. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Table 47. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 48. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.result Flag indicating whether the specified active workflow user or registered user is a valid requestor.
    Possible values:
    • true: Valid requestor.
    • false: Invalid requestor.

    Data type: String

    cURL request

    curl --request GET \
    'https://instance.service-now.com/api/now/cilifecyclemgmt/requestors/4cab9b95301a9010f877773aa7167ca9/valid' \
    --header 'Accept: application/json' \
    --user "username":"password"
    {
      "result": {
        "result": true
      }
    }

    CI Lifecycle Management - GET /now/cilifecyclemgmt/statuses/{sys_id}

    Returns the current operational state for the specified configuration item (CI).

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/statuses/{sys_id}

    Default URL: /api/now/cilifecyclemgmt/statuses/{sys_id}

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 49. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    sys_id Sys_id of the CI.

    Data type: String

    Table 50. Query parameters
    Name Description
    None
    Table 51. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 52. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Table 53. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 54. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.operationalStates Operational state for the specified CI or unknown if no state is specified.

    Data type: String

    cURL request

    curl --request GET 'https://instance.service-now.com/api/now/cilifecyclemgmt/statuses/aac0b1213784200044e0bfc8bcbe5de3' \
    --header 'Accept: application/json' \
    --user "username":"password"
    {
      "result": {
        "operationalState": "Repair in Progress",
        "result": true
      }
    }

    CI Lifecycle Management - PATCH /now/cilifecyclemgmt/leases/{sys_id}

    Extends the specified configuration item (CI) action's lease expiration time for the specified user.

    If the previous lease has expired, the new lease time starts immediately.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/leases/{sys_id}

    Default URL: /api/now/cilifecyclemgmt/leases/{sys_id}

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 55. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    sys_id Sys_id of the CI for which to extend the lease.

    Data type: String

    Table 56. Query parameters
    Name Description
    actionName Required. Name of the associated CI action.

    Data type: String

    leaseTime Required. Time duration for which the lease is valid for the CI action specified in actionName.

    Data type: String

    Format: HH:MM:SS

    requestorId Required. Sys_id of a workflow context, or an operator user ID returned from the CI Lifecycle Management - POST /now/cilifecyclemgmt/operators endpoint.

    Operator user IDs are located in the CI State Registered Users [statemgmt_register_users] table.

    Data type: String

    Table 57. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 58. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Content-Type Data format of the request body. Supported types: application/json or application/xml.

    Default: application/json

    Table 59. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 60. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.result Flag indicating whether the lease time was extended.
    Possible values:
    • true: Lease time was extended.
    • false: Lease time was not extended.

    Data type: String

    cURL request

    Extend the duration of a Patching CI action requestor lease by 24 hours.

    curl --request PATCH 'https://instance.service-now.com/api/now/cilifecyclemgmt/leases/affd3c8437201000deeabfc8bcbe5dc3?actionName=Patching&leaseTime=24:00:00&requestorId=e7c3402d305a9010f877773aa7167c2a' \
    --header 'Accept: application/json' \
    --header 'Content-Type: application/json' \
    --user "username":"password"
    {
      "result": {
        "result": true
      }
    }

    CI Lifecycle Management - POST /now/cilifecyclemgmt/actions

    Adds a specified configuration item (CI) action to a specified list of CIs.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/actions

    Default URL: /api/now/cilifecyclemgmt/actions

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 61. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    Table 62. Query parameters
    Name Description
    actionName Required. Name of the CI action to add to the list.

    Data type: String

    leaseTime Time duration for which the lease is valid for specified CI action.

    Data type: String

    Format: HH:MM:SS

    oldActionNames Comma-separated list of old CI actions that all CIs should be in.

    Data type: String

    requestorId Required. Sys_id of a workflow context, or an operator user ID returned from the CI Lifecycle Management - POST /now/cilifecyclemgmt/operators endpoint.

    Operator user IDs are located in the CI State Registered Users [statemgmt_register_users] table.

    Data type: String

    sysIds Required. Comma-separated list of CI sys_ids to which to add the CI action.

    Data type: String

    Table 63. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 64. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Content-Type Data format of the request body. Supported types: application/json or application/xml.

    Default: application/json

    Table 65. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 66. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.result Flag indicating whether the CI action was set for all CIs in the list.
    Possible values:
    • true: CI actions were set.
    • false: CI actions were not set.

    Data type: String

    cURL request

    Add a Patching CI action to two CIs.

    curl --request POST \
    "https://instance.service-now.com/api/now/cilifecyclemgmt/actions?actionName=Patching&requestorId=621b5a09309e5010f877773aa7167c0a&sysIds=00a9a80d3790200044e0bfc8bcbe5d1c,d0fdbc8437201000deeabfc8bcbe5d33" \
    --header "Accept: application/json" \
    --header "Content-Type: application/json" \
    --user "username":"password"
    {
      "result": {
        "result": true
      }
    }

    CI Lifecycle Management - POST /now/cilifecyclemgmt/operators

    Registers an operator for a non-workflow user.

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/operators

    Default URL: /api/now/cilifecyclemgmt/operators

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 67. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    Table 68. Query parameters
    Name Description
    None
    Table 69. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 70. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Content-Type Data format of the request body. Supported types: application/json or application/xml.

    Default: application/json

    Table 71. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 72. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.requestorId GUID for the registered operator. Use this value to set CI actions and operational states.

    Data type: String

    result.result Flag indicating whether the operator was successfully registered.
    Possible values:
    • true: Operator was successfully registered.
    • false: Operator was not successfully registered.

    Data type: String

    cURL request

    curl --request POST \
    "https://instance.service-now.com/api/now/cilifecyclemgmt/operators" \
    --header "Accept: application/json" \
    --header "Content-Type: application/json" \
    --user "username":"password"
    {
      "result": {
        "result": true,
        "requestorId": "6f992b8430121010f877773aa7167c42"
      }
    }

    CI Lifecycle Management - POST /now/cilifecyclemgmt/statuses

    Sets the operational state for a specified list of configuration items (CIs).

    URL format

    Versioned URL: /api/now/{api_version}/cilifecyclemgmt/statuses

    Default URL: /api/now/cilifecyclemgmt/statuses

    Note:
    Available versions are specified in the REST API Explorer. For scripted REST APIs there is additional version information on the Scripted REST Service form.

    Supported request parameters

    Table 73. Path parameters
    Name Description
    api_version Optional. Version of the endpoint to access. For example, v1 or v2. Only specify this value to use an endpoint version other than the latest.

    Data type: String

    Table 74. Query parameters
    Name Description
    oldOpsLabels Comma-separated list of old CI operational states in which all CIs should be included.

    Data type: String

    opsLabel Required. Label of the operational state to set for the specified CIs.

    Data type: String

    requestorId Required. Sys_id of a workflow context, or an operator user ID returned from the CI Lifecycle Management - POST /now/cilifecyclemgmt/operators endpoint.

    Operator user IDs are located in the CI State Registered Users [statemgmt_register_users] table.

    Data type: String

    sysIds Required. Comma-separated list of sys_ids of CIs for which the operational state is to be set.

    Data type: String

    Table 75. Request body parameters (XML or JSON)
    Name Description
    None

    Headers

    The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

    Table 76. Request headers
    Header Description
    Accept Data format of the response body. Supported types: application/json or application/xml.

    Default: application/json

    Content-Type Data format of the request body. Supported types: application/json or application/xml.

    Default: application/json

    Table 77. Response headers
    Header Description
    None

    Status codes

    The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST API HTTP response codes.

    Table 78. Status codes
    Status code Description
    200 Successful. The request was successfully processed by the endpoint.

    Review the response body result.result parameter to verify the outcome of the operation.

    If the endpoint encounters errors while processing the request, error codes and messages appear in the response body result.errors parameter.

    401 Unauthorized. The user credentials are incorrect or have not been passed.
    500 Internal server error. An unexpected error occurred while processing the request. The response contains additional information about the error.

    Response body parameters (JSON or XML)

    Name Description
    result Object encapsulating the result of the request.

    Data type: Object

    "result": {
      "errors": [Array],
      "result": "String"
    }
    result.errors List of objects in which each object represents an error encountered while processing the request.

    Data type: Array

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    result.errors.error Identifier for a state management error encountered while processing the request.
    Possible values:
    • CI_ACTION_ALREADY_SET
    • CI_ACTION_NOT_SET
    • DUPLICATE_CI_ACTION_RECORD
    • DUPLICATE_OPS_STATE_RECORD
    • DUPLICATE_SYS_ID
    • INCOMPATIBLE_CI_ACTION
    • INVALID_CI_ACTION
    • INVALID_DELETE
    • INVALID_INPUT_PARAMETERS
    • INVALID_LEASETIME
    • INVALID_OPS_STATE
    • INVALID_OPS_STATE_TRANSITION
    • INVALID_REQUESTOR
    • INVALID_REQUESTOR_FOR_CI
    • INVALID_SYS_ID
    • MUTEX_UNAVAILABLE
    • NOT_ALLOWED_CI_ACTION
    • OPS_STATE_NOT_SET
    • UNPRIORITIZED_OPS_STATE
    • UNSUPPORTED_SYS_ID

    Data type: String

    result.errors.message Message providing details on the associated error.

    Data type: String

    result.result Flag indicating whether the desired state was set for all CIs included in the request.
    Possible values:
    • true: Operational state set.
    • false: Operational state not set.

    Data type: String

    cURL request

    Set the Repair in Progress operational state for two CIs.

    curl --request POST \
    "https://instance.service-now.com/api/now/cilifecyclemgmt/statuses?opsLabel=Repair%20in%20Progress&requestorId=23d58bc030121010f877773aa7167c83&sysIds=affd3c8437201000deeabfc8bcbe5dc3,aac0b1213784200044e0bfc8bcbe5de3" \
    --header "Accept: application/json" \
    --header "Content-Type: application/json" \
    --user "username":"password"

    The response body shows that the desired operational state was set for both CIs specified in the request.

    {
      "result": {
        "result": true
      }
    }