Formatters & Code
Salesforce Bulk API Error Analyser
Analyse Salesforce Bulk API failedResults CSV files. Group errors, inspect failed records and prepare reviewed retry files. Free, private and browser-based.
1. Upload result files
Bulk API 2.0 ingest CSVs only. No credentials or server uploads. Nothing is saved automatically. Files are read in a local Web Worker; reset releases the session data. Browser memory and downloaded files remain subject to your device’s security.
10 MiB per file, 20 MiB per session; up to 50,000 records per file, 100,000 records and 1,000,000 cells across the session. These are memory safeguards, not paid limits. Split larger investigations.
Reopen a saved investigation
Choose a PageUtil investigation JSON file (up to 50 MiB). It restores source records and corrections locally. Retry reviews must be renewed. A valid file replaces the current session; an invalid file leaves it intact.
2. Diagnose supplied evidence
Duplicate identifiers in supplied data
Find records
Selection includes only failed or unprocessed records. Filtering never changes your selection. Successful records cannot be selected.
| Retry selection | Record | Outcome / category | Identifier | Source file | Review |
|---|
Correct selected records together
Replace an exact candidate value in one field across selected records. Blank values are allowed. Preview before applying; changes clear the affected review marks. No code, regular expressions or formulas are executed.
4. Review and export a candidate retry
Select the records you intend to retry, inspect their candidate values and mark them reviewed. Export uses only selected records in enabled outcome categories; unresolved records can stay unselected. Successful records are always excluded. No automatic fixes or Salesforce submissions.
Repeated inserts can create duplicates. Upsert needs a configured external ID and unambiguous destination matches. Update/delete require a source Id column; sf__Id is never substituted. Delete exports only Id. Different objects or operations require separate sessions.
Check partial success, stale values, changed relationship references and current destination state. Unprocessed rows need their own review. Test in a sandbox where appropriate. Output uses COMMA / CRLF; set the new job accordingly. Retry values are preserved exactly, including formula-looking text: do not treat a raw retry CSV as a safe spreadsheet.
Diagnostic downloads
Spreadsheet-oriented reports prefix formula-looking cells with an apostrophe. They are not Salesforce import files. Findings include original and candidate values, changed fields, review status, selection and source matches. They may contain sensitive data.
Save this investigation to continue later
A portable JSON file contains all source values, errors, corrections and selection. It is not encrypted. Store it under your organisation’s data policy. Nothing is saved to this website or browser storage. Reopening requires a fresh review before retrying.
Reproduce the investigation
These synthetic files share the exact data used by the demo, guide and automated tests. They were checked against documented formats, not executed in a Salesforce org. Custom fields and error wording are illustrative. Never submit demonstration files to production.
Follow the worked example · Retry review workflow
All examples, ZIP and printable checklist
- A · Required field, picklist and lock errors (A-simple-failed.csv)
- B · One successful account (B-successful.csv)
- B · One failed account (B-failed.csv)
- C · Upsert source: repeated and empty keys (C-original.csv)
- C · Upsert failures; destination ambiguity differs from local duplicates (C-failed.csv)
- D / complete demo · Original account source (D-original.csv)
- D / complete demo · Three failures (D-failed.csv)
- D / complete demo · One success (D-successful.csv)
- D / complete demo · One unprocessed account (D-unprocessed.csv)
- E · Source in 001, 002, 003 order (E-original.csv)
- E · Results in 003, 001, 002 order (E-failed.csv)
- F · Missing account name (F-failed.csv)
- F · Manually corrected candidate (demonstration only) (F-reviewed-retry.csv)
- G · Quotes, newlines, Unicode and formula-looking text (G-parsing-failed.csv)
- README.md
- complete-dataset.zip
- retry-checklist.html
- example-findings.csv
What the result means
Counts describe only the supplied files, not a verified job total. Failed records encountered errors; unprocessed records were not processed. Successes may already have changed Salesforce. Match source records only by an explicitly chosen stable identifier, never by row position. Investigate each original error before changing candidate values, then review all included records and the intended operation. The retry export removes result metadata and excludes successful records. Use CSV Fixer for a separate encoding investigation, Text Diff for comparing candidate text, or JSON Formatter to inspect job metadata downloaded in your own authorised client.
Related tools
Guides
Questions
Can I start with failedResults alone?
Yes. You can group errors, inspect records and review candidates. Other job totals remain unknown until you supply evidence.
Does the analyser automatically fix my Salesforce records?
No. Suggestions guide investigation; you review edits locally and submit any candidate through your own authorised workflow.
Can I use Data Loader or Bulk API 1.0 results?
No. Use the Bulk API 2.0 ingest result endpoints. Other result conventions are not interchangeable.