Follower export workflow to CSV, JSON, or XLSX
Use this workflow when a worker needs an owned follower list. It fits Node.js, Bun, and queue workers. Use the list for CRM import, warehouse loading, account scoring, or analyst CSV. You can also deliver it as an XLSX workbook or a resumable JSON handoff. The workflow callsPOST /extractions/estimate through client.extractions.estimateCost. It creates the job with client.extractions.run. It reads saved rows with client.extractions.retrieve. It downloads files with client.extractions.exportResults.client.extractions.run returns the queued 202 Accepted receipt from POST /extractions. The receipt holds id, toolType, and status: "running". Store job.id immediately, then poll client.extractions.retrieve before reading pages or calling client.extractions.exportResults. Credit reservation happens after the job starts. If available credits changed since estimateCost, the API has 2 options. It can set resultsLimit to the affordable count before fetching rows. Or it can mark the job failed with insufficient_credits.follower_explorer requires targetUsername. Store job.id, targetUsername, estimate.estimatedResults, and estimate.source before polling. With them, a queue retry, worker restart, or agent handoff can resume that export. client.extractions.retrieve returns results, hasMore, and nextCursor. Pass nextCursor back as cursor when you need stored JSON pages before exporting files. Use xquik-followers.jsonl for queue replay or warehouse loads, and xquik-followers.json for app ingestion. Use xquik-followers.csv for CRM import and xquik-followers.xlsx for analyst handoff. Map exported User ID or row xUserId as the CRM unique key. The cost is 1 credit per follower extracted or returned. Exports cost no credits after the extraction job exists.