Has anyone worked with SOAP in the Cloud API? We are trying to get it working, but we are running into a few issues when trying to make a call. Here is the API help page for the software we are trying to work with.
Has anyone worked with SOAP in the Cloud API? We are trying to get it working, but we are running into a few issues when trying to make a call. Here is the API help page for the software we are trying to work with.
Hi Alex,
It would be helpful if you could expand on the "few issues" you're running into trying to make a call to this API. "We're having some issues, here's a link to the API docs" doesn't give people who may be able to help much to work with.
I'm working on the same project, I/We've seem to have gotten connected but trying to send a request using the sample request provided in the documentation for the request's content body I'm receiving 405: HTTP verb used to access this page is not allowed on PUT, PATCH, and POST.
The example in the documentation specifies that POST should be used. If you trust that the error message is correct, my best guess is that you aren't hitting the correct endpoint.
Yea that or permissions possibly(?), but either way we can reach out to the client and ask. Just wanted to make sure we weren't missing something obvious on our end, Thanks.
Hi Samuel,
I wanted to get a conversation started to just see if anyone was familiar with using SOAP in Cloud, so I left it pretty generic.
Do you know if Cloud natively supports SOAP as long as we build the request properly?
Thanks for the quick reply!
Can't see why not. It's ultimately an HTTP request that needs to have certain structure and values. The example request from their API docs looks pretty straightforward.
POST /0.99a/Api.svc HTTP/1.1 Accept-Encoding: gzip,deflate Content-Type: text/xml;charset=UTF-8 SOAPAction: "http://cdx.dealerbuilt.com/Api/0.99/IStandardApi/PullDealsByDealNumber" User-Agent: Jakarta Commons-HttpClient/3.1 Host: cdx.dealerbuilt.com:443 Content-Length: 1287 <soapenv:Envelope xmlns:arr="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:ns="http://cdx.dealerbuilt.com/Api/0.99/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header> <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <wsse:UsernameToken wsu:Id="UsernameToken-29" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <wsse:Username>myusername</wsse:Username> <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">mypassword</wsse:Password> <wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">bLW62fQBaMG77CELiw11dg==</wsse:Nonce> <wsu:Created>2016-01-22T18:14:02.430Z</wsu:Created> </wsse:UsernameToken> </wsse:Security> </soapenv:Header> <soapenv:Body> <ns:PullDealsByDealNumber> <ns:storeId>10</ns:storeId> <ns:dealNumbers> <arr:long>132079</arr:long> </ns:dealNumbers> </ns:PullDealsByDealNumber> </soapenv:Body> </soapenv:Envelope>
If you have reason to believe there's some issue constructing or sending SOAP requests to this API with Laserfiche Cloud, you should first validate that you can successfully send the same requests from the 3rd party testing tool they suggest:
Testing
DealerBuilt provides integration IDs for a test environment where you can push and pull test data.
These free tools are very handy for testing and debugging:
A nice user interface for creating and running test requests. SoapUI can read our service definition file (WSDL) and create sample requests for all API operations.
If you can successfully send a request with SoapUI (or similar tools), and can't successfully send the exact same request from Laserfiche Cloud for whatever reason, feel free to bring it back up and we can look into the specifics.
Samuel, this api only provides XML responses not json. Is there a way to parse an XML response in cloud or is a remote agent needed?
As Laserfiche Cloud unfortunately does not have native XML parsing functionality at this time, Remote Agent is needed here.