+ Start a Discussion
Gautam_KasukhelaGautam_Kasukhela 

Async Calls: Continuation Object

I have a scenario where in a website needs to make a call to Salesforce and Salesforce in turn needs to call a host of downstream systems with a single SOAP callout.

For the website to connect and send data to Salesforce, a Webservice will be exposed. The downstream system endpoint will be invoked asynchronously from Salesforce. The response from downstream systems can take upto 60 seconds.

I had planned to used Continuation in my SOAP callout from my Webservice, but the below paragraph talks about ignoring concurrent callouts if called from VF page? 

"A typical Salesforce application that benefits from asynchronous callouts contains a Visualforce page with a button. Users click that button to get data from an external Web service. For example, a Visualforce page that gets warranty information for a certain product from a Web service. Thousands of agents in the organization can use this page. Therefore, a hundred of those agents can click the same button to process warranty information for products at the same time. These hundred simultaneous actions exceed the limit of concurrent long-running requests of 10. But by using asynchronous callouts, the requests aren’t subjected to this limit and can be executed."

https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_continuation_overview.htm

Can I only use it from a VF page or does the async calls ignore the limits when invoked from anywhere, from a webservice in my case?