Activity Forums Salesforce® Discussions What is Database.AllowsCallouts in Salesforce?

  • Suraj

    Member
    April 25, 2017 at 1:11 pm

    Hi Saurabh,

    It is used to allow Callouts in batch Apex, "Callouts include HTTP requests as well as methods defined with the webService keyword". Syntax is:

    global class SearchAndReplace implements Database.Batchable<sObject>,Database.AllowsCallouts{
    }

  • Manpreet

    Member
    April 25, 2017 at 1:14 pm

    Hi saurabh,

    Database.AllowCallouts are used to allow Callouts in batch Apex, "Callouts include HTTP requests as well as methods defined with the webService keyword". To use a callout in batch Apex, specify Database.AllowsCallouts in the class definition. For example:

    global class SearchAndReplace implements Database.Batchable<sObject>, Database.AllowsCallouts{
    }

    For further details refer to this link :
    https://www.salesforce.com/us/developer/docs/apexcode/Content/apex_batch_interface.htm

    Thanks.

  • Louis

    Member
    May 16, 2017 at 9:51 am

    Hi Saurabh,

    Database.AllowCallout helps in integrate salesforce with external server by making a call to an external web service .

    If you want to integrate other party then we have to use Database.AllowsCallouts interface. It is used to allow Callouts in batch Apex Callouts include HTTP requests as well as methods defined with the web Service keyword.

    public class AsyncExecutionExample implements Queueable, Database.AllowsCallouts {
        public void execute(QueueableContext context) {
            //your code including the callout
        }
    }
    global class insert implements Database.Batchable<sObject>,Database.AllowsCallouts{
    }

    Callouts includes http requests as well as methods defined with the web service keyword.

    salesforce

  • Avnish Yadav

    Member
    September 5, 2018 at 10:20 am

    Hi,

    To use HTTP Callouts in batch class we need to use Database.allowcallouts in an interface.

    global class BatchName implements Database.Batchable<sObject>,Database.AllowsCallouts {

    }

    Thanks.

  • Saravjeet

    Member
    November 15, 2018 at 4:29 pm

    Hey Folks,

    I have a quick question....Can we use Database.allowcallouts inteface in class without using Database.batchabale interface?

    And How to write  test class for a class implementing only Database.allowcallouts.

Log In to reply.

Popular Salesforce Blogs