<h2>Building spokes using Spoke Generator</h2><br/><div style="overflow-x:auto"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><meta content="text/html; charset=UTF-8" /><meta name="copyright" content="(C) Copyright 2025" /><meta name="DC.rights.owner" content="(C) Copyright 2025" /><meta name="generator" content="DITA-OT" /><meta name="DC.type" content="concept" /><meta name="DC.title" content="Building spokes using Spoke Generator" /><meta name="abstract" content="Automate integration tasks by creating a sequence of reusable actions to develop custom integrations called spokes." /><meta name="description" content="Automate integration tasks by creating a sequence of reusable actions to develop custom integrations called spokes." /><meta name="DC.creator" content="ServiceNow" /><meta name="DC.date.created" content="2023-08-03" /><meta name="DC.date.modified" content="2023-08-03" /><meta name="DC.format" content="XHTML" /><meta name="DC.identifier" content="spoke-builder" /><link rel="stylesheet" type="text/css" href="../../../CSS/commonltr.css" /><title>Building spokes using Spoke Generator</title></head><body id="spoke-builder"> <h1 class="title topictitle1" id="ariaid-title1">Building spokes using Spoke Generator</h1> <div class="body conbody"><p class="shortdesc">Automate integration tasks by creating a sequence of reusable actions to develop custom integrations called spokes.</p> <div class="section" id="spoke-builder__section_tcg_rrx_zxb"><h2 class="title sectiontitle">Request apps on the Store</h2> <p class="p">Visit the <a class="xref" href="https://store.servicenow.com/sn_appstore_store.do#!/store/home" target="_blank" rel="noopener noreferrer"><span class="ph">ServiceNow Store</span></a> website to view all the available apps, for information about submitting requests to the store, and to download and install Spoke Generator (sn_spoke_builder). For cumulative release notes information for all released apps, see the <a class="xref" href="https://docs.servicenow.com/bundle/store-release-notes/page/release-notes/store/sn-store-release-notes.html" target="_blank" rel="noopener noreferrer"><span class="ph">ServiceNow Store</span> version history release notes</a>.</p> </div> <div class="section" id="spoke-builder__section_ntz_2rx_zxb"><h2 class="title sectiontitle">App dependencies</h2> <p class="p">If you’re having trouble installing the app, ensure that the dependent plugin, ServiceNow IntegrationHub Professional Pack Installer (com.glide.hub.integrations.professional) is installed.</p> <div class="note"><span class="notetitle">Note:</span> Some of these plugins are licensable features and require appropriate licenses, if used outside the spoke implementation.</div> </div> <div class="section" id="spoke-builder__section_gdk_qmx_zxb"><h2 class="title sectiontitle">Capabilities</h2> <p class="p">An <span class="ph">Integration Hub</span> custom spoke provides both inbound and outbound integration with third-party applications. These integrations, referred to as spokes, are easy to configure and enable you to quickly add powerful actions without the need to write a script. This feature requires an <span class="ph">Integration Hub</span> subscription. For more information, see <a class="xref" href="https://www.servicenow.com/content/dam/servicenow-assets/public/en-us/doc-type/legal/snc-addendum-integrationhub.pdf" target="_blank" rel="noopener noreferrer">Legal schedules - IntegrationHub overview</a>.</p> <p class="p">You can build custom spokes for the required third-party application by importing an OpenAPI Specification or creating a spoke manually.</p> </div> <div class="section" id="spoke-builder__section_np1_3ky_byb"><h2 class="title sectiontitle">Required user roles</h2> <div class="p"><ul class="ul" id="spoke-builder__ul_btf_1ly_byb"><li class="li">Users with the admin role can:<ul class="ul" id="spoke-builder__ul_qzw_bly_byb"><li class="li">View the <span class="ph uicontrol">Spokes</span> tab.</li><li class="li">Create a new spoke.</li><li class="li">Import an OpenAPI Specification.</li><li class="li">Create connection alias.</li><li class="li">Publish actions and save actions as drafts.</li><li class="li">See spoke activity log.</li></ul> </li><li class="li">Users with the action_designer and fd_read_actions roles can:<ul class="ul" id="spoke-builder__ul_z2v_tly_byb"><li class="li">View the <span class="ph uicontrol">Spokes</span> tab.</li><li class="li">See actions in a spoke.</li></ul> </li><li class="li">Users with the action_designer role can add actions manually.<div class="note"><span class="notetitle">Note:</span> Users with just the fd_read_actions role can only see actions.</div> </li></ul> </div> </div> <div class="section" id="spoke-builder__section_ssb_lmy_byb"><h2 class="title sectiontitle">OpenAPI Specification size limit</h2> <p class="p">By default, the system can import OpenAPI Specifications up to 10 MB. To increase the import size, update the <span class="keyword parmname">glide.rest.openapi.max_request_size</span> system property. The maximum value is 100 MB.</p> </div> <div class="section" id="spoke-builder__section_igf_l1g_dhb"><h2 class="title sectiontitle">Limitations of OpenAPI Specification</h2> <p class="p">Spoke actions created by importing OpenAPI specification, contain the OpenAPI step. Ensure that you are aware of these OpenAPI step limitations.</p> <div class="p"><dl class="dl"> <dt class="dt dlterm">Request body media types</dt> <dd class="dd">The request body only supports JSON media types. <div class="note"><span class="notetitle">Note:</span> A string type output object is created when the OpenAPI schema has additionalProperties or no properties.</div> </dd> <dt class="dt dlterm">OpenAPI 3.0 components</dt> <dd class="dd"><p class="p">OpenAPI 3.0 adds new components to Swagger 2.0 to describe an API in further detail. OpenAPI support in the OpenAPI step supports some, but not all of these components. The OpenAPI step does not currently support these components.</p> <div class="p"><ul class="ul" id="spoke-builder__ul_gtc_xbp_zhb"><li class="li">Schema Object: oneOf, anyOf, additionalProperties properties</li><li class="li">Discriminator Object</li><li class="li">Info object: termsOfService, contact, license fields</li><li class="li">Example Object</li><li class="li">Link Object</li><li class="li">Callback Object</li><li class="li">Security Scheme Object</li><li class="li">Security Requirements Object</li><li class="li">Tag Object</li><li class="li">External Documentation Object</li><li class="li">Server Object</li><li class="li">Specification extensions</li><li class="li">Recursive references</li></ul> </div> <p class="p">More information on these components is available in the OpenAPI documentation. See <a class="xref" href="https://swagger.io/specification/" target="_blank" rel="noopener noreferrer">OpenAPI Specification</a>.</p> </dd> <dt class="dt dlterm">Maximum number of operations supported</dt> <dd class="dd">The number of API operations is limited to 500 by default. However, using the system property <span class="keyword parmname">glide.rest.openapi.max_operation_limit</span>, you can configure the number of operations from 1 through 1000.</dd> </dl> </div> </div> <div class="section" id="spoke-builder__section_d34_kgj_zyb"><h2 class="title sectiontitle">App version</h2> <p class="p">Spoke Generator v1.1.0 is the latest version.</p> </div> </div> </body></html></div>