READ-ONLY PACKAGE PREVIEW

resend-cli/references/error-codes.md

Version edbfece3f402 · MIT. This preview displays packaged text and does not execute code. Treat the contents as untrusted instructions.

← Return to resource and package checksum

Error Codes

All errors exit with code 1 and output JSON to stderr:

{"error":{"message":"Human-readable description","code":"error_code"}}

Authentication Errors

Code Cause Resolution
auth_error No API key found from any source Set RESEND_API_KEY env or run resend login
missing_key login called non-interactively without --key Pass --key "$RESEND_API_KEY" (from env/secret manager, never a literal)
invalid_key_format API key does not start with re_ Use a valid Resend API key starting with re_
validation_failed Resend API rejected the key during login Verify the key exists and is active at resend.com/api-keys

Email Errors

Code Cause Resolution
missing_body None of --text, --html, --html-file, or --react-email provided Provide at least one body flag
react_email_build_error Failed to bundle a React Email .tsx template with esbuild Check the template compiles; ensure react and one of react-email (6.0+), @react-email/components (5.x), or @react-email/render are installed in the project
react_email_render_error Bundled template failed during render() Check the component exports a default function and renders valid React Email markup
file_read_error Could not read file from a --file/--html-file/--text-file path Check file path exists and is readable
send_error Resend API rejected the send request Check from address is on a verified domain; check recipient is valid

Contact Import Errors

Code Cause Resolution
missing_file contacts imports create called non-interactively without --file Pass --file <path> to the CSV to import
invalid_column_map --column-map is not valid JSON, or is not an object Pass a JSON object mapping contact fields to CSV headers, e.g. {"email":"Email"}
invalid_topics --topics is not valid JSON, or is not an array Pass a JSON array of {id, subscription} objects
create_error Resend API rejected the import (e.g. CSV missing the required email column, or file over 100MB) Ensure the CSV has an email column (or map it with --column-map) and is under 100MB

Domain Errors

Code Cause Resolution
domain_error Domain creation, verification, or update failed Check domain name is valid; check DNS records are configured

General Errors

Code Cause Resolution
unexpected_error Unhandled exception Check CLI version with resend update; report at github.com/resend/resend-cli/issues
unknown Error without a specific code Inspect the message field for details

Troubleshooting

"No API key found" in CI

Ensure RESEND_API_KEY is set in the environment. The CLI does not prompt in non-TTY mode.

"Missing required flags" errors

In non-interactive mode (CI, piped, agent), ALL required flags must be provided. The CLI will not prompt.

Deletion commands fail without --yes

All delete/rm subcommands require --yes in non-interactive mode to prevent accidental deletion.

API rate limits

The Resend API has rate limits. If you hit them, the error message will indicate rate limiting. Add delays between batch operations.

Scheduled email errors

--scheduled-at must be a valid ISO 8601 datetime. The scheduled time must be in the future.