{"id":9,"date":"2026-08-08T18:44:04","date_gmt":"2026-08-08T18:44:04","guid":{"rendered":"http:\/\/corpolearn.wp\/snow\/\/understanding-integrationhub-rest-spokes-and-webhooks\/"},"modified":"2026-08-08T18:44:04","modified_gmt":"2026-08-08T18:44:04","slug":"understanding-integrationhub-rest-spokes-and-webhooks","status":"publish","type":"post","link":"https:\/\/corpolearn.com\/snow\/understanding-integrationhub-rest-spokes-and-webhooks\/","title":{"rendered":"Understanding IntegrationHub REST Spokes and Webhooks"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">IntegrationHub enables developers to connect ServiceNow workflows with external SaaS applications like Jira, Salesforce, Slack, and AWS without writing custom integration code from scratch. This article covers building custom REST Spokes using Flow Designer Action Builder.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Key Components of a Custom Spoke<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n  <li><strong>Connection &amp; Credentials:<\/strong> Secure storage of OAuth 2.0 client IDs, API keys, or Basic Auth profiles.<\/li>\n  <li><strong>REST Step:<\/strong> Defines endpoint URL, HTTP method (GET, POST, PUT, DELETE), headers, and query parameters.<\/li>\n  <li><strong>Script Step:<\/strong> JavaScript step for parsing JSON payloads, handling error codes, and formatting outputs.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ Action Builder Script Step Sample\n(function execute(inputs, outputs) {\n    var responseBody = JSON.parse(inputs.response_raw);\n    if (inputs.status_code === 200) {\n        outputs.ticket_id = responseBody.id;\n        outputs.status = \"SUCCESS\";\n    } else {\n        outputs.status = \"ERROR: \" + inputs.status_code;\n    }\n})(inputs, outputs);<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>IntegrationHub enables developers to connect ServiceNow workflows with external SaaS applications like Jira, Salesforce, Slack, and AWS without writing custom integration code from scratch. This&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_cl_workflow_state":"","_cl_content_brief":"","_cl_target_topic":"","footnotes":""},"categories":[11],"tags":[],"class_list":["post-9","post","type-post","status-publish","format-standard","hentry","category-integrationhub"],"_links":{"self":[{"href":"https:\/\/corpolearn.com\/snow\/wp-json\/wp\/v2\/posts\/9","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/corpolearn.com\/snow\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/corpolearn.com\/snow\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/corpolearn.com\/snow\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/corpolearn.com\/snow\/wp-json\/wp\/v2\/comments?post=9"}],"version-history":[{"count":0,"href":"https:\/\/corpolearn.com\/snow\/wp-json\/wp\/v2\/posts\/9\/revisions"}],"wp:attachment":[{"href":"https:\/\/corpolearn.com\/snow\/wp-json\/wp\/v2\/media?parent=9"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/corpolearn.com\/snow\/wp-json\/wp\/v2\/categories?post=9"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/corpolearn.com\/snow\/wp-json\/wp\/v2\/tags?post=9"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}