API release notes

  • Release version: Yokohama
  • Updated January 30, 2025
  • 7 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of API release notes Yokohama

    The Yokohama release introduces significant enhancements and new features across ServiceNow APIs, enabling customers to build more robust custom applications and integrations. This release includes updates to server-side and client-side JavaScript APIs, inbound REST APIs, and scoped/global classes, improving functionality and flexibility for developers.

    Show full answer Show less

    Key Features

    • New and updated APIs: Introduction of new scoped and global classes with additional methods, including enhancements to Console, Fetch, GlideUser, PDFGenerationAPI, and ProcessMiningIntegrationAPI.
    • Expanded REST API endpoints: New endpoints for Advanced Work Assignment, Continuous Integration and Continuous Delivery, Lead Management, Accounts Payable Operations, AI Assets, Customer Contracts, Sales Agreements, and more.
    • New client API capabilities: Updates to client classes in Customer Service Management and Mobile SDKs (Android and iOS) to support theme changes and event subscriptions.
    • Enhanced PDF generation: Added properties for URL whitelisting and accessibility support to improve PDF output security and compliance.
    • Performance improvements: Optimizations in Lead to Cash Core and ATF Test Generator for better API execution and test suite management.

    Key Outcomes

    • Improved customization and integration: Customers can leverage new and enhanced APIs to tailor applications more precisely and integrate with external systems efficiently.
    • Better API security and manageability: New properties for PDF generation control external content rendering, enhancing security.
    • Expanded automation and testing: Enhanced ATF Test Generator APIs allow creation of named test suites, supporting more organized and scalable testing workflows.
    • Broader plugin support: Several new APIs require activation of specific plugins, enabling customers to adopt advanced capabilities as needed.

    Activation and Plugin Requirements

    Many new APIs are available by default, such as Console, Fetch, GlideUser, and RESTMessageV2. However, several APIs require activation of specific plugins to be used, including:

    • AI Asset API (Asset Classes plugin)
    • AP Invoice API (Accounts Payable Invoice Processing plugin)
    • AWA Offer Work API (Advanced Work Assignment plugin)
    • Lead API (Lead Management Data Model plugin)
    • Mobile SDK (requires installation of Android/iOS libraries)
    • OrderUtil API (Order Management plugin)
    • ProcessMiningIntegrationAPI (Process Mining Core plugin)
    • Sales Agreement API and Service Contract API (various related plugins)
    • Verify Entitlements API (Entitlement Verification plugin)
    • vrecord API (Remote Tables plugin)

    Activating these plugins enables access to enhanced and specialized API capabilities aligned with specific ServiceNow Store applications and modules.

    ServiceNow® APIs let you build custom applications and experiences. APIs were enhanced and updated in the Yokohama release.

    API highlights for the Yokohama release

    • Use server-side JavaScript APIs in scripts to change the application functionality.
    • Run client APIs whenever a client-based event occurs, such as when a form loads, a form is submitted, or a field value changes.
    • Use inbound REST APIs to interact with various ServiceNow functionalities within your application.

    See API implementation and reference for more information.

    New in the Yokohama release

    Table 1. New scoped classes and additional methods to existing scoped classes in Yokohama
    Class Methods
    Console - Scoped, Global
    • error()
    • group()
    • groupCollapsedString()
    • groupEnd()
    • info()
    • log()
    • table()
    • time()
    • timeEnd()
    • timeLog()
    • trace()
    • warn()
    Fetch - Scoped, Global fetch()
    Fetch Headers - Scoped, Global
    • Headers()
    • append()
    • delete()
    • entries()
    • forEach()
    • get()
    • getSetCookie()
    • has()
    • keys()
    • set()
    • values()
    Fetch Request - Scoped, Global
    • Request()
    • arrayBuffer()
    • blob()
    • bytes()
    • clone()
    • formData()
    • json()
    • text()
    Fetch RequestInit - Scoped, Global requestInit()
    Fetch Response - Scoped,Global
    • arrayBuffer()
    • blob()
    • bytes()
    • formData()
    • json()
    • text()
    GlideUser - Scoped
    • getTimeZoneLabel()
    • getTimeZoneLabelLang()
    OrderUtil - Scoped
    • getStateFromOrder()
    • isOrderInDraftState()
    PDFGenerationAPI - Scoped, Global
    • convertToPDFAsync()
    • convertToPDFWithHeaderFooterAsync()
    ProcessMiningIntegrationAPI - Scoped
    • createProject()
    • deleteProject()
    • getBreakDownStats()
    • getFindings()
    • getMiningStatus()
    • getProject()
    • scheduleMining()
    RESTMessageV2 - Scoped, Global setAllowedRedirectURIs()
    SOAPMessageV2 - Scoped, Global
    • setAllowedRedirectURIs()
    • setFollowRedirect()
    UriMatcher - Scoped
    • UriMatcher()
    • match()
    UriMatcherResponse - Scoped
    • getErrorMessages()
    • isError()
    • isFragmentMatches()
    • isHostMatches()
    • isMatch()
    • isPathMatches()
    • isSchemeMatches()
    v_record - Scoped, Global setLastErrorMessage()
    Table 2. New global classes and additional methods to existing global classes in Yokohama
    Class Methods
    Console - Scoped, Global
    • error()
    • group()
    • groupCollapsedString()
    • groupEnd()
    • info()
    • log()
    • table()
    • time()
    • timeEnd()
    • timeLog()
    • trace()
    • warn()
    Fetch - Scoped, Global fetch()
    Fetch Headers - Scoped, Global
    • Headers()
    • append()
    • delete()
    • entries()
    • forEach()
    • get()
    • getSetCookie()
    • has()
    • keys()
    • set()
    • values()
    Fetch Request - Scoped, Global
    • Request()
    • arrayBuffer()
    • blob()
    • bytes()
    • clone()
    • formData()
    • json()
    • text()
    Fetch RequestInit - Scoped, Global requestInit()
    Fetch Response - Scoped,Global
    • arrayBuffer()
    • blob()
    • bytes()
    • formData()
    • json()
    • text()
    GlideDynamicAttribute - Global
    • getSysId()
    • getName()
    • getType()
    • getGroupName()
    • getPath()
    • isTransient()
    GlideDynamicAttributeStore - Global getDynamicAttributes()
    GlideElementDynamicAttributeStore - Global
    • getDynamicAttributesInSchema()
    • getDynamicAttributesInStore()
    GlideTransientDynamicAttribute - Global
    • getSysId()
    • getName()
    • getType()
    • getGroupName()
    • getPath()
    • isTransient()
    GlideUser - Global
    • getTimeZoneLabel()
    • getTimeZoneLabelLang()
    PDFGenerationAPI - Scoped, Global
    • convertToPDFAsync()
    • convertToPDFWithHeaderFooterAsync()
    RESTMessageV2 - Scoped, Global setAllowedRedirectURIs()
    SOAPMessageV2 - Scoped, Global
    • setAllowedRedirectURIs()
    • setFollowRedirect()
    Table 3. New REST APIs and additional endpoints to existing REST APIs in Yokohama
    API Endpoints
    AWA Offer Work API POST /now/awa/documents/{document_table}/{document_sys_id}/offer
    Continuous Integration and Continuous Delivery (CICD) Update Set API
    • POST /sn_cicd/update_set/retrieve
    • POST /sn_cicd/update_set/commitMultiple
    • POST /sn_cicd/update_set/preview/{remote_update_set_id}
    • POST /sn_cicd/update_set/back_out
    • POST /sn_cicd/update_set/commit/{remote_update_set_id}
    • POST /sn_cicd/update_set/create
    Table 4. New scoped classes and additional methods to existing scoped classes in the ServiceNow Store
    Application App Version Class Methods
    Lead Management v3.0 LeadAPIHelperOOB - Scoped
    • getJSONFromGR()
    • getLeadsJSON()
    • getTransformedLead()
    Lead Management v3.0 LeadAPIProcessUtilOOB - Scoped
    • processCreateLead()
    • processGetAllLeads()
    • processGrtLeadById()
    • processUpdateLead()
    Lead Management v3.0 LeadAPIValidationUtilOOB - Scoped
    • validateLeadObjectForPatchCall()
    • validateLeadObjectForPostCall()
    Sales and Service API Core 7.0.0 IBQConfigBase API - Scoped
    • generateParentRecord()
    • getRunMode()
    • processInboundQueueRequest()
    Order Management v12.5.0 OrderGuide - Scoped isOrderInDraftState()
    Table 5. New client classes and additional methods to existing client classes in the ServiceNow Store
    Application App Version Class Methods
    Customer Service Management v1.2 openFrameAPI - Client setICContext()
    Mobile SDK v2.9.0 NowChatService class - Android updateTheme()
    Mobile SDK v2.9.0 NowWebService class - Android updateTheme()
    Mobile SDK v2.9.0 NowChatService class - iOS updateTheme()
    Mobile SDK v2.9.0 NowChatServiceDelegate protocol - iOS chatService(_chatService: NowChatService, systemThemeDidChange traitCollection: UITraitCollection)
    Mobile SDK v2.9.0 NowWebViewController class - iOS updateTheme()
    Mobile SDK v2.9.0 NowWebViewControllerDelegate protocol - iOS nowWebViewController(_ nowWebViewController: NowWebViewController, systemThemeDidChange traitCollection: UITraitCollection)
    Table 6. New REST APIs and additional endpoints to existing REST APIs in the ServiceNow Store
    Application App Version API Endpoints
    Accounts Payable Operations v2.0.0 AP Invoice API
    • POST /sn_spend_intg/ap_invoice/xml
    Expanded Product Model and Asset Classes v1.0 AI Assets API
    • GET /sn_ent/asset/ai_dataset/{sys_id}
    • GET /sn_ent/asset/ai_model/{sys_id}
    • GET /sn_ent/asset/ai_prompt/{sys_id}
    • GET /sn_ent/asset/ai_system/{sys_id}
    • POST /sn_ent/asset/ai_dataset
    • POST sn_ent/asset/ai_model
    • POST /sn_ent/asset/ai_prompt
    • POST /sn_ent/asset/ai_system
    • PUT /sn_ent/asset/ai_dataset/{sys_id}
    • PUT /sn_ent/asset/ai_model/{sys_id}
    • PUT /sn_ent/asset/ai_prompt/{sys_id}
    • PUT /sn_ent/asset/ai_system/{sys_id}
    Customer Contracts and Entitlements v6.0 Service Contract API
    • POST /sn_pss_core/servicecontract
    • GET /sn_pss_core/servicecontract/{id}
    • POST /sn_pss_core/servicecontract/contractline
    • GET /sn_pss_core/servicecontract/contractline/{id}
    Customer Contracts and Entitlements v6.0 Verify Entitlements API GET /sn_ent_verify/verifyentitlements
    Lead Management v3.0 lead API
    • GET /sn_lead_mgmt_core/lead
    • GET /sn_lead_mgmt_core/lead/{sys_id}
    • PATCH /sn_lead_mgmt_core/lead/{sys_id}
    • POST /sn_lead_mgmt_core/lead
    Sales Customer Relationship Management v4.0 Sales Agreement API
    • GET /sn_sales_agmt_core/salesagreement /{id}
    • POST /sn_sales_agmt_core/salesagreement 

    Changed in this release

    Table 7. Changed scoped classes in Yokohama
    Class Methods
    PDFGenerationAPI - Scoped, Global
    • convertToPDF()
    • convertToPDFWithHeaderFooter()

    New properties, glide.pdf.url.whitelisting.enabled and com.snc.pdf.whitelisted_urls, have been added to ensure whether external URLs provided should be rendered in the PDF output.

    A new property, accessibilityEnabled, has been added for PDF accessibility support.

    Table 8. Changed global classes in Yokohama
    Class Methods
    PDFGenerationAPI - Scoped, Global
    • convertToPDF()
    • convertToPDFWithHeaderFooter()

    New properties, glide.pdf.url.whitelisting.enabled and com.snc.pdf.whitelisted_urls, have been added to ensure whether external URLs provided should be rendered in the PDF output.

    A new property, accessibilityEnabled, has been added for PDF accessibility support.

    Table 9. Changed REST APIs in Yokohama
    API Endpoints
    Attachment API POST /now/attachment/file: A new parameter, creation_time, can be used to capture attachment creation times when the Now Mobile app is offline and the attachment is uploaded to a record at a later time.
    Table 10. Changed scoped classes in the ServiceNow Store
    Application App Version Class Methods
    Lead to Cash Core V1.4 LeadtoCashCore - Scoped Enhanced the performance of the Commit Instance API to improve number generation for the number field:
    • effect(): The _records_count return object is added to provide details about newly inserted records for a particular table, such as the table name and number of inserted records.
    • commitInstance(): A new additional parameter, useNumberGenerator, is added to optionally generate and apply sys_ids to new table records in bulk.
    ATF Test Generator and Cloud Runner 2.7.2 TestGenerationApi – startJob(String tableEncodedQuery, String userEncodedQuery, String catalogEncodedQuery, Number maxTestCount, Number maxTestCountPerTable, Number maxTestCountPerItem, String email, Boolean separateUpdateSetPerScope, String scopeForGeneratingTests, String suiteName) Added the testSuite parameter allowing you to set the name of the new test suite that is created during test generation.
    Table 11. Changed client classes in the ServiceNow Store
    Application App Version Class Methods
    Customer Service Management v1.2 openFrameAPI - Client subscribe(): Added new events
    • openframe_wrap_up_submitted
    • openframe_heart_beat
    Mobile SDK v2.9.0 NowChatTheme interface - Android Updated available chat UI color defaults.
    Mobile SDK v2.9.0 NowWebTheme interface - Android Updated available web view UI color defaults.
    Mobile SDK v2.9.0 NowChatThemeable protocol - iOS Updated available chat UI color defaults.
    Mobile SDK v2.9.0 NowWebThemeable protocol - iOS Updated available web view UI color defaults.
    Table 12. Changed global classes in the ServiceNow Store
    Application App Version Class Methods
    ATF Test Generator and Cloud Runner 2.7.2 TestGenerationApi – startJob(String tableEncodedQuery, String userEncodedQuery, String catalogEncodedQuery, Number maxTestCount, Number maxTestCountPerTable, Number maxTestCountPerItem, String email, Boolean separateUpdateSetPerScope, String scopeForGeneratingTests, String suiteName) Added the testSuite parameter allowing you to set the name of the new test suite that is created during test generation.
    Table 13. Changed REST APIs in the ServiceNow Store
    Application App Version API Endpoints
    Accounts Payable Operations v2.0.0 AP Invoice API Add properties supporting bill-to address information.
    • POST /sn_spend_intg/ap_invoice/cxml
    • POST /sn_spend_intg/ap_invoice/json
    ATF Test Generator and Cloud Runner 2.7.2 Cloud Runner Test Generation - POST /now/sn_atf_tg/test_generation Added the testSuite parameter allowing you to set the name of the new test suite that is created during test generation.
    Order Management v11.3.0 Product Order Open API The productSpecification request parameter has changed from required to optional.
    • PATCH /sn_ind_tmt_orm/order/productOrder/{id}
    • PATCH /sn_ind_tmt_orm/productorder/{id}
    • POST /sn_ind_tmt_orm/order/productOrder
    • POST /sn_ind_tmt_orm/productorder
    Order Management v12.5.0 Product Inventory Open API The productSpecification request parameter has changed from required to optional. These endpoints now retrieve all product inventory records. In prior releases, product inventory records without a specified product specification weren't returned.
    • POST /api/sn_prd_invt_/product
    • GET /api/sn_prd_invt_/product
    • GET /api/sn_prd_invt_/product/{id}
    Product Catalog v14.1.0 Product Catalog Open API The ability to specify product bundles has been added to the following endpoints:
    • GET /sn_tmf_api/ catalogmanagement/catalog
    • GET /sn_tmf_api/ catalogmanagement/catalog/{id}
    • GET /sn_tmf_api/ catalogmanagement/productOffering
    • GET /sn_tmf_api/ catalogmanagement/productOffering/{id}
    • PATCH /sn_tmf_api/ catalogmanagement/productOffering/{id}
    • POST /sn_tmf_api/ catalogmanagement/productOffering
    • GET /sn_tmf_api/ catalogmanagement/productSpecification
    • GET/sn_tmf_api/ catalogmanagement/productSpecification/{id}
    • PATCH /sn_tmf_api/ catalogmanagement/productSpecification/{id}
    • POST /sn_tmf_api/ catalogmanagement/productSpecification

    Activation information

    The following APIs are available by default:
    • Attachment
    • Console
    • Fetch
    • Fetch.Headers
    • Fetch.Request
    • Fetch.Response
    • Fetch.RequestInit
    • GlideDynamicAttribute
    • GlideDynamicAttributeStore
    • GlideElementDynamicAttributeStore
    • GlideTransientDynamicAttribute
    • GlideUser
    • openFrameAPI
    • PDFGenerationAPI
    • RESTMessageV2
    • ScriptableUriMatcher
    • SOAPMessageV2
    • UriMatcher
    • UriMatcherResponse
    The following APIs require plugin activation:
    • The AI Asset API requires the Asset Classes (sn_ent) plugin to be activated.
    • The AP Invoice API requires the Accounts Payable Invoice Processing (com.sn_ap_apm) plugin to be activated.
    • The AWA Offer Work API requires the Advanced Work Assignment (com.glide.awa) plugin to be activated.
    • The IBQConfigBase API requires the Sales and Service API Core (com.sn_tmt_core) plugin to be activated.
    • The lead API requires the Lead Management Data Model (sn_lead_mgmt_core) plugin to be activated.
    • The Mobile SDK requires the Mobile SDK Android library (NowSDK) or the Mobile SDK iOS library to be downloaded and installed.
    • The openFrame API requires the com.sn_openframe_store plugin to be activated.
    • The OrderUtil API (script include) requires the Order Management (com.sn_ind_tmt_orm) plugin to be activated.
    • The ProcessMiningIntegrationAPI requires the Process Mining Core (com.sn_process_optimization) plugin to be activated.
    • The Product Order Open and the Product Inventory Open APIs require Order Management (sn_ind_tmt_orm) plugin to be activated.
    • The Sales Agreement API requires the following plugins to be activated:
      • Sales Agreement Data Model (com.sn_sales_agmt_core) 
      • Product Catalog Management Core (com.sn_prd_pm)
      • Pricing (com.sn_csm_pricing)  
    • The Service Contract API requires the following plugins to be activated:
      • Customer Contracts and Entitlements (com.sn_pss_core)
      • Customer Service Install Base Management (com.snc.install)
      • Product Catalog Management Core (com.sn_prd)
    • The v_record API requires the Remote Tables (com.glide.script.vtable) plugin to be activated.
    • The Verify Entitlements API requires the Entitlement Verification (com.sn_ent_verify) plugin to be activated.