Queue

The bulk extract APIs use a job queue (shared between leads, activities, program members, and custom objects). Extract jobs must first be created, and then enqueued by calling Create Export Lead/Activity/Program Member Job and Enqueue Export Lead/Activity/Program Member Job endpoints. Once enqueued, the jobs are pulled from the queue and started when computing resources become available.

The maximum number of jobs in the queue is 10. If you try to enqueue a job when the queue is full, the Enqueue Export Job endpoint returns an error “1029, Too many jobs in queue”. A maximum of two jobs can run concurrently (status is “Processing”).

File Size

The bulk extract APIs are metered based on the size-on-disk of the data retrieved by a bulk extract job. The explicit size in bytes for a job can be determined by reading the fileSize attribute from the completed status response of an export job.

The daily quota is a maximum of 500MB per day, which is shared between leads, activities, program members, and custom objects. When the quota is exceeded, you cannot Create or Enqueue another job until the daily quota resets at midnight Central Time. Until that time, an error “1029, Export daily quota exceeded” is returned. Aside from the daily quota, there is no maximum file size.

Once a job is queued or processing, it runs to completion (barring an error or job cancellation). If a job fails for some reason, you must recreate it. Files are fully written only when a job reaches the completed state (partial files are never written). You can verify that a file was fully written by computing it’s SHA-256 hash and comparing that with the checksum that is returned by job status endpoints.

You can determine the total amount of disk used for the current day by calling Get Export Lead/Activity/Program Member Jobs. These endpoints return a list of all jobs in the past seven days. You can filter that list down to just the jobs that completed in the current day (using status and finishedAt attributes). Then then sum the file sizes for those jobs to produce the total amount used. There is no way to delete a file to reclaim disk space.