Which API should I use to query report(50 columns) about 5k, 10k, or 15k records per call? Can I use the Rest API for this? Or it should be Bulk API or SOAP API?

  • Pagination occurs automatically, and I'm pretty sure you can't do more than 2k records per call no matter what you do.
    – sfdcfox
    Commented Feb 8, 2018 at 16:17
  • @sfdcfox Batches for data loads can consist of a single CSV, XML, or JSON file that is no larger than 10 MB. A batch can contain a maximum of 10,000 records. ->proof<- A batch can contain a maximum of 10,000,000 characters for all the data in a batch. A field can contain a maximum of 32,000 characters. A record can contain a maximum of 5,000 fields. A record can contain a maximum of 400,000 characters for all its fields.
    – eppe
    Commented Feb 9, 2018 at 12:10

1 Answer 1


I think the best solution is to make a batch class for this. I'm not entirely sure what you are trying to do with the data though so this may not be the best answer.

a batch class will allow you to query your entire database and perform functionality on whatever you please with no limitations (Besides time)

  • I want to integrate SF with my web service, which generate csv files based on diffrent criteries . For this I need report or some objects from SF. But Objects have got over 20k records, at this time report(based on objects and created in SF) consist less than 5k records. I can use Salesforce API, but can't change or write Apex code in Salesforce. This mean, that I can't to use batch classes.
    – eppe
    Commented Feb 9, 2018 at 12:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .