how to use soap step in flow designer correctly
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
Hi Friends,
I’m trying to call the ServiceNow Table SOAP API (incident / problem) from Flow Designer using the SOAP step, and I’m stuck.
What I’m trying to do
Use Flow Designer → SOAP step
Call incident.do SOAP API (get operation)
Then call problem.do SOAP API using the same credentials/instance
So, what I did is I first created a soap message
Created SOAP Message from WSDL named soap_incident:
https://<instance>.service-now.com/incident.do?WSDLAuthentication type: Basic
SOAP Message Functions auto-generated:
get
getRecords
insert
update
delete, etc.
then in the flow I created a soap step
Connection: Use Connection Alias
Connection Alias endpoint:
https://<instance>.service-now.com
Build Envelope: From WSDL
Selected WSDL: soap_incident (from the first step)
Operation: get
SOAP Action: http://www.service-now.com/incident.do?SOAP
and the problem is:
The SOAP step returns HTTP 200
But the response body is HTML, not SOAP
The HTML looks like the ServiceNow UI / Guest page
If I'm changing the "Connection Alias" to this URL https://<instance>.service-now.com/incident.do?SOAP
it is working, but then I cannot call to another soap step with https://<instance>.service-now.com/problem.do?SOAP.
because I cannot create another Connection Alias with the same domain.
So, my question is what is the correct setup?
Thanks for anyone that tries to answer 🙂
Lior Grinberg
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
HI @Lior grinberg1 ,
I am adding the step by step solution for you.
- Connection Alias: Keep your existing alias (e.g., ServiceNow_SOAP_Alias).
- Connection Record: Edit the Connection record linked to this alias.
- Connection URL: Set this to the Base URL only: https://<instance>.service-now.com.
- Credential: Ensure your Basic Auth credentials are attached here.
- In Flow Designer, open your Action and add a SOAP Step.
- Connection: Select "Use Connection Alias" and pick your ServiceNow_SOAP_Alias.
- Build Request: Select Manually (this is the key to unlocking the path override).
- Endpoint: This field will now be editable. Type: /incident.do?SOAP.
- Note: Because the Connection Alias provides the base domain, this path is appended to it at runtime.
- SOAP Action: Set to www.service-now.com.
- Envelope: Paste the XML envelope for the get operation. Use data pills from your Action Inputs to map variables like the sys_id.
- Create a second Action (or another SOAP step in the same action).
- Connection: Use the same ServiceNow_SOAP_Alias.
- Build Request: Select Manually.
- Endpoint: Type: /problem.do?SOAP.
- SOAP Action: Set to www.service-now.com.
- Envelope: Paste the XML envelope for the Problem get operation.
- WSDL Loading: You can still use the "From WSDL" option initially to generate your XML envelopes, but once generated, switching to Manually allows you to explicitly define the /table.do?SOAP path.
- Authentication: Ensure the user in your Credentials has the soap_query or itil role to access the Incident/Problem tables via SOAP.
- HTTP Header: If you still see HTML, manually add an HTTP Header in the SOAP step: Content-Type: text/xml.
If the solution is helpful for you please mark it as helpful.
Regards,
Sagnic
