When using the Salesforce Marketing Cloud (SFMC) SOAP API, e.g. to run a Query Activity, we notice a task
gets created. The task initially has a Status: Queued
until Complete
. This queue time can be significant. Also, it seems that when we repeat a certain call a few times (e.g. during testing), the queue time increases.
We are looking for a way to reduce this queue time. In the docs I found a bit about priority.
My questions:
- Is this something that can be used for all SOAP calls? If so, how?
- If not, is there another way?
Regarding point 1, it might be possible it's only relevant for triggered sends, since a Google search returns results where it is mostly described in such a context, like here.
Here I tried to use priority
which resulted in an error:
<soapenv:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<PerformRequestMsg xmlns="http://exacttarget.com/wsdl/partnerAPI">
<Action>Start</Action>
<Definitions>
<ns1:Definition xmlns:ns1="http://exacttarget.com/wsdl/partnerAPI" xsi:type="ns1:QueryDefinition">
<ns1:PartnerKey xsi:nil="true"/>
<ns1:ModifiedDate xsi:nil="true"/>
<ns1:ObjectID>IDHIDDEN</ns1:ObjectID>
<ns1:Priority>High</ns1:Priority>
</ns1:Definition>
</Definitions>
</PerformRequestMsg>
</soapenv:Body>
Here I tried priority
which did not seem to make a difference (the call worked as before):
<soapenv:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<PerformRequestMsg xmlns="http://exacttarget.com/wsdl/partnerAPI">
<Action>Start</Action>
<Priority>High</Priority>
<Definitions>
<ns1:Definition xmlns:ns1="http://exacttarget.com/wsdl/partnerAPI" xsi:type="ns1:QueryDefinition">
<ns1:PartnerKey xsi:nil="true"/>
<ns1:ModifiedDate xsi:nil="true"/>
<ns1:ObjectID>IDHIDDEN</ns1:ObjectID>
</ns1:Definition>
</Definitions>
</PerformRequestMsg>
</soapenv:Body>