Files Data Exchange Troubleshooting
Symptom: Import API answers "Missing required parameters: entity, rows, mapping"
Cause: The request body was malformed or missing one of the three required keys.
Fix: Send entity, rows (non-empty array of objects), and a field mapping; use dryRun: true to validate first.
Symptom: "Maximum 1000 rows per import"
Cause: The batch exceeded the hard row cap.
Fix: Split the CSV into chunks of 1000 rows or fewer and run sequential jobs.
Symptom: "Unsupported import entity: …" after the job is created
Cause: The entity name isn't in the allowlist (leads, contacts, organizations, deals, vendors, tasks, campaigns, creators, contracts, time_entries, case_studies, invoices).
Fix: Correct the entity name to one of the supported values and resubmit.
Symptom: Some rows fail with "Cannot update a … record owned by another user" or "Create permission is required…"
Cause: Row ingestion re-checks the target module per row: updating needs edit permission plus record ownership for own-scope users, inserting needs create.
Fix: Fix the mapping or permissions for those rows; other rows still process — check per-row errors on the job.
Symptom: "Unsupported attachment target" or forbidden when attaching a file
Cause: Files only attach to campaigns, campaign talent, compliance deadlines, and contracts — and your permission on the owning module must cover the action.
Fix: Attach to a supported record type and ensure you hold read/edit on its module (own-scope users must also own the record).
Symptom: Export job finished but no Drive copy appeared
Cause: The Drive mirror is best-effort; object storage remains canonical even when the Drive upload fails.
Fix: Download from the export job's file link, then reconnect Google Drive in Settings → Integrations if mirroring matters.
