What Salesforce APIs does Metadata use?

We use the Salesforce Bulk API for the purposes of synchronizing account, opportunity, contact and lead data for attribution and reporting purposes and also for audience building.

Our process involves just a few API calls:

  1. The initial API call is made to create the report.

  2. We then periodically check the report's status every N seconds (typically less than 100 calls in total) until it's ready.

  3. Once the report is ready, we make one final API call to retrieve it.

As a result, the overall number of API calls generated by our service is kept to a minimum. However, please note that within the Bulk API, we may need to query a significant number of objects related to attribution, which could result in a higher volume of queries against those objects.