Product documentation Docs
    • English
    • Deutsch
    • 日本語
    • 한국어
    • Français
  • More Sites
    • Now Community
    • Developer Site
    • Knowledge Base
    • Product Information
    • ServiceNow.com
    • Training
    • Customer Success Center
    • ServiceNow Support Videos
  • Log in

Product documentation

  • Home
How search works:
  • Punctuation and capital letters are ignored
  • Special characters like underscores (_) are removed
  • Known synonyms are applied
  • The most relevant topics (based on weighting and matching to search terms) are listed first in search results
Topics are ranked in search results by how closely they match your search terms
  • A match on the entire phrase you typed
  • A match on part of the phrase you typed
  • A match on ALL of the terms in the phrase you typed
  • A match on ANY of the terms in the phrase you typed

Note: Matches in titles are always highly ranked.

  • Release version
    Table of Contents
    • Now Platform capabilities
Table of Contents
Choose your release version
    Home Madrid Now Platform Capabilities Now Platform capabilities Configuration Management Database CMDB CI Lifecycle Management Lifecycle management APIs

    Lifecycle management APIs

    • Save as PDF Selected topic Topic & subtopics All topics in contents
    • Unsubscribe Log in to subscribe to topics and get notified when content changes.
    • Share this page

    Lifecycle management APIs

    CI Lifecycle Management provides a set of state management APIs for manipulating CI operational states, and applying CI actions. State management APIs adhere to restrictions and allowances specified by Not Allowed CI Actions, Compatible CI Actions, and Not Allowed Operational Transitions. If an API attempts to perform a restricted operation, the operation is blocked, an error is logged, and a task is automatically created if appropriate.

    Lifecycle management APIs can set operational states and CI actions to CMDB groups by utilizing lifecycle management bulk APIs.

    Registration APIs

    • registerOperator() - Method to register operator with state management for non-workflow user.
    • unregisterOperator(String requestorId) - Method to unregister operator for non-workflow users.
    • isValidRequestor(String requestorId) - Method to determine if the specified requestor is a valid active workflow user or a registered user.
    • isLeaseExpired(String requestorId, String ciSysId, String ciActionName) - Method to check if registered user lease expired.
    • extendCIActionLease(String requestorId, String ciSysId, String ciActionName, String leaseTime) - Method to extend CI Action Lease time, for registered users. If previous lease already expired, extend lease from now.

    Operational State APIs

    • setBulkCIOperationalState(String requestorId, String sysIdList, String opsLabel, String opsStateListOld) - Method to set Operational State for an array of CIs.
    • getOperationalState(String ciSysId) - Method to get CI Operational State.

    CI Actions APIs

    • addBulkCIAction(String requestorId, String sysIdList, String ciActionName, String ciActionListOld, String leaseTime) - Method to add CI Action for an array of CIs.
    • removeBulkCIAction(String requestorId, String sysIdList, String ciActionName) - Method to remove a CI Action for a list of CIs.
    • getCIActions(String ciSysId) - Method to get CI Actions.

    Not Allowed Action Based on Operational State API

    • isNotAllowedAction (String ciType, String opsLabel, String actionName) - Method to check if a specific CI action is not allowed for specific Operational State on a CI Type.

    Not Allowed Operational State Transition API

    • isNotAllowedOpsTransition(String ciType, String opsLabel, String transitionOpsLabel) - Method to check if specific operational state transition is not allowed on a CI Type.

    Compatible Action API

    • isCompatibleCIAction(String actionName, String otherActionName)- Method to check if two specific actions are compatible with each other.

    Example: Using state management APIs

    // 1. Register Operator with State Mgmt
    var output = SNC.StateManagementScriptableApi.registerOperator();
    var jsonUntil = new JSON();
    var result = jsonUntil.decode(output);
    var requestorId = result.requestorId;
    
    // Get list of sys_ids to update
    var sys_ids;
    
    // 2. Set list of sys_ids's Operational State to 'Repair in Progress'
    output = SNC.StateManagementScriptableApi.setBulkCIOperationalState(requestorId, sys_ids,'Repair in Progress');
    gs.print(output);
    
    // 3. Set list of sys_ids's CI Action State to 'Patching'
    output = SNC.StateManagementScriptableApi.addBulkCIAction(requestorId, sys_ids, 'Patching');
    gs.print(output);

    Tags:

    Feedback
    On this page

    Previous topic

    Next topic

    • Contact Us
    • Careers
    • Terms of Use
    • Privacy Statement
    • Sitemap
    • © ServiceNow. All rights reserved.

    Release version
    Choose your release version

      Lifecycle management APIs

      • Save as PDF Selected topic Topic & subtopics All topics in contents
      • Unsubscribe Log in to subscribe to topics and get notified when content changes.
      • Share this page

      Lifecycle management APIs

      CI Lifecycle Management provides a set of state management APIs for manipulating CI operational states, and applying CI actions. State management APIs adhere to restrictions and allowances specified by Not Allowed CI Actions, Compatible CI Actions, and Not Allowed Operational Transitions. If an API attempts to perform a restricted operation, the operation is blocked, an error is logged, and a task is automatically created if appropriate.

      Lifecycle management APIs can set operational states and CI actions to CMDB groups by utilizing lifecycle management bulk APIs.

      Registration APIs

      • registerOperator() - Method to register operator with state management for non-workflow user.
      • unregisterOperator(String requestorId) - Method to unregister operator for non-workflow users.
      • isValidRequestor(String requestorId) - Method to determine if the specified requestor is a valid active workflow user or a registered user.
      • isLeaseExpired(String requestorId, String ciSysId, String ciActionName) - Method to check if registered user lease expired.
      • extendCIActionLease(String requestorId, String ciSysId, String ciActionName, String leaseTime) - Method to extend CI Action Lease time, for registered users. If previous lease already expired, extend lease from now.

      Operational State APIs

      • setBulkCIOperationalState(String requestorId, String sysIdList, String opsLabel, String opsStateListOld) - Method to set Operational State for an array of CIs.
      • getOperationalState(String ciSysId) - Method to get CI Operational State.

      CI Actions APIs

      • addBulkCIAction(String requestorId, String sysIdList, String ciActionName, String ciActionListOld, String leaseTime) - Method to add CI Action for an array of CIs.
      • removeBulkCIAction(String requestorId, String sysIdList, String ciActionName) - Method to remove a CI Action for a list of CIs.
      • getCIActions(String ciSysId) - Method to get CI Actions.

      Not Allowed Action Based on Operational State API

      • isNotAllowedAction (String ciType, String opsLabel, String actionName) - Method to check if a specific CI action is not allowed for specific Operational State on a CI Type.

      Not Allowed Operational State Transition API

      • isNotAllowedOpsTransition(String ciType, String opsLabel, String transitionOpsLabel) - Method to check if specific operational state transition is not allowed on a CI Type.

      Compatible Action API

      • isCompatibleCIAction(String actionName, String otherActionName)- Method to check if two specific actions are compatible with each other.

      Example: Using state management APIs

      // 1. Register Operator with State Mgmt
      var output = SNC.StateManagementScriptableApi.registerOperator();
      var jsonUntil = new JSON();
      var result = jsonUntil.decode(output);
      var requestorId = result.requestorId;
      
      // Get list of sys_ids to update
      var sys_ids;
      
      // 2. Set list of sys_ids's Operational State to 'Repair in Progress'
      output = SNC.StateManagementScriptableApi.setBulkCIOperationalState(requestorId, sys_ids,'Repair in Progress');
      gs.print(output);
      
      // 3. Set list of sys_ids's CI Action State to 'Patching'
      output = SNC.StateManagementScriptableApi.addBulkCIAction(requestorId, sys_ids, 'Patching');
      gs.print(output);

      Tags:

      Feedback

          Share this page

          Got it! Feel free to add a comment
          To share your product suggestions, visit the Idea Portal.
          Please let us know how to improve this content

          Check any that apply

          To share your product suggestions, visit the Idea Portal.
          Confirm

          We were unable to find "Coaching" in Jakarta. Would you like to search instead?

          No Yes
          • Contact Us
          • Careers
          • Terms of Use
          • Privacy Statement
          • Sitemap
          • © ServiceNow. All rights reserved.

          Subscribe Subscribed Unsubscribe Last updated: Tags: January February March April May June July August September October November December No Results Found Versions Search preferences successfully updated My release version successfully updated My release version successfully deleted An error has occurred. Please try again later. You have been unsubscribed from all topics. You are now subscribed to and will receive notifications if any changes are made to this page. You have been unsubscribed from this content Thank you for your feedback. Form temporarily unavailable. Please try again or contact  docfeedback@servicenow.com  to submit your comments. The topic you requested does not exist in the release. You were redirected to a related topic instead. The available release versions for this topic are listed There is no specific version for this documentation. Explore products Click to go to the page. Release notes and upgrades Click to open the dropdown menu. Delete Remove No selected version Reset This field is required You are already subscribed to this topic Attach screenshot The file you uploaded exceeds the allowed file size of 20MB. Please try again with a smaller file. Please complete the reCAPTCHA step to attach a screenshot
          Log in to personalize your search results and subscribe to topics
          No, thanks Login