SOAP API call error




We are testing a SOAP API call to add a new record/email in a subscription but getting an error.  It was working before but now we are getting an error. The error says “that record does not exist”, so somehow the script is looking for an existing record instead of adding a new record. If you see the script below, they are using optIn=”1” which I thought would add a new record.

We are testing this in our DEV environment. See below the Request and Response. Can you look into this?


<?xml version="1.0" encoding="UTF-8"?>

<SOAP-ENV:Envelope xmlns:SOAP-ENV="" xmlns:ns1="urn:nms:recipient"><SOAP-ENV:Body><ManageSubscription><sessiontoken>___833b4a4a-8675-45c0-8694-706def530d1f</sessiontoken><source>Micros</source><email></email><neolaneServiceName><subscription name="tvEcommerce" optIn="1"/></neolaneServiceName><recipient emailFormat="2" firstname="QA" lastname="Basanskii" preferredStore="" birthMonth="10" tvRewardsCardNum="111" diySkillLevel="1"><location zipCode="60604-4136"/></recipient></ManageSubscription></SOAP-ENV:Body></SOAP-ENV:Envelope>


<?xml version='1.0'?><SOAP-ENV:Envelope xmlns:xsd='' xmlns:xsi='' xmlns:SOAP-ENV=''><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>SOAP-ENV:Server</faultcode><faultstring xsi:type='xsd:string'>SOP-330011 Error while executing the method 'ManageSubscription' of service 'nms:recipient'.</faultstring><detail xsi:type='xsd:string'>WDB-200001 SQL statement 'SELECT R0.iRecipientId, R0.sFirstName FROM NmsRecipient R0 WHERE (R0.sEmail = :#(1)#)' could not be executed.


WDB-200011 The requested database record does not exist.

Cannot load document of type 'Recipients (nms:recipient)' satisfying condition '([/@email] = '')'.

SOP-330011 Error while executing the method 'ExecuteQuery' of service 'xtk:queryDef'.</detail></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>

Accepted Solutions (0)