ListCleanerDeveloper platform
Official API reference

Build cleaner email workflows.

Integrate list cleaning and real-time email verification into your application using the ListCleaner REST API.

Production API https://api.listcleaner.net JSON · HTTPS
Authenticate once per visit

Try every endpoint with one sign-in

Enter your ListCleaner account email and API key once. They are kept only in this tab's temporary session, applied to every documentation request page, and discarded when the tab closes.

No cookies, permanent local storage or server-side credential storage.

Credentials have not been entered.

Real-timePOST /verify_email

Single email validation API

Validate an individual email address and receive the normalized result in the same HTTP response. This is suited to signups, lead forms, CRM enrichment and server-side validation workflows.

  1. Send the email address as JSON.
  2. Add an idempotency key when the request may be retried.
  3. Read the final status directly from the response.
AsynchronousPOST /upload_list

Bulk email list validation API

Upload a structured email list, select its email column and use the returned UID to follow processing. CSV, XLSX, TSV and delimited TXT examples are available for every supported programming language.

  1. Upload the file as multipart form data.
  2. Provide the email-column mapping or XLSX auto-detection.
  3. Monitor the UID and download the required result set.
LifecycleGET /show_lists

Cleaning jobs and result files

List all jobs, inspect one job, download complete or filtered results, and remove a retained list when it is no longer required.

  • Show every list or one specific UID.
  • Download all, deliverable or non-deliverable records.
  • Delete a list through the authenticated API.
AccountGET /get_credits

API credit balance check

Retrieve the current credit balance for the authenticated ListCleaner account before submitting validation work.

  • Uses the same account email and API key.
  • Returns the available balance as JSON.
  • Requires no request body or query parameters.
Complete request library

Code examples for every API request

Choose an operation and programming language. After you enter tab credentials, each example includes the actual account email and API key so the copied request is ready to run.

Language examples are different from the request content type. Content type: application/json
PHP
Technical reference

Parameters, responses and schemas

Expand an operation to inspect its request fields, response codes and data models, or use Try it out with the temporary tab credentials entered above.

Built for dependable email data

One API for email verification and list cleaning

Use ListCleaner to verify an individual address during a signup or CRM workflow, or upload an entire customer list for asynchronous cleaning. The REST API gives your application a consistent way to submit data, monitor cleaning jobs, inspect results and download processed files.

01

Verify a single email

Call POST /verify_email for a synchronous status response. ListCleaner checks its internal data and validation layers before using the configured external verification step when needed.

02

Clean bulk email lists

Upload CSV, XLSX, TSV or delimited TXT files, identify the email column and track processing with the returned list UID. XLSX workbooks must contain one worksheet.

03

Retrieve actionable results

Inspect list status through the API and download all, deliverable or non-deliverable results for use in your CRM, email platform or internal data pipeline.

Simple REST authentication

Authenticate requests with your account email and API key:

  • X-User-Email: you@example.com
  • X-Api-Key: YOUR_API_KEY

Send credentials only over HTTPS and keep the API key on your server rather than in public browser code.

Designed for common workflows

  • Validate email addresses during account creation.
  • Clean CRM and newsletter exports before a campaign.
  • Automate recurring data-quality processes.
  • Separate deliverable and non-deliverable records.
Developer FAQ

ListCleaner API questions

Quick answers for developers integrating email verification and bulk list cleaning.

What does the single email validation API check?

POST /verify_email checks one address through ListCleaner's internal validation data and verification workflow, then returns its status in the same API response. It is designed for server-side signup, CRM and lead-validation workflows.

How does bulk email list validation work?

Upload a CSV, XLSX, TSV or delimited TXT file to POST /upload_list, identify the email column and retain the returned UID. Use that UID to monitor the job and download the required results.

Which file formats and upload limits are supported?

The list validation API accepts CSV, XLSX, TSV and delimited TXT files. The current endpoint limit is 100 MB and up to 1,000,000 data rows per upload.

Can an XLSX file contain multiple worksheets?

No. An XLSX upload must contain exactly one worksheet. Split a multi-sheet workbook into separate files and submit each worksheet as its own cleaning job.

How do I authenticate API requests?

Send your account email in X-User-Email and your API key in X-Api-Key over HTTPS. The credential form above applies both values to every Try it out request for the current page only.

How do I prevent duplicate single-email charges when retrying?

Send a unique Idempotency-Key with POST /verify_email. Repeating the same email and key replays the stored result instead of creating a second charge.

Does single email validation send an email?

No. No message is sent to the submitted address. The validation result is returned directly in the API response as quickly as the verification workflow allows.

How do I monitor a list cleaning job?

Call GET /show_lists to retrieve all retained jobs, or add a list UID to retrieve one specific job and its current processing status.

What is the difference between all, ok and bad downloads?

Use export_type=all for every processed row, export_type=ok for deliverable results, or export_type=bad for non-deliverable results.

How do I check the available API credit balance?

Call GET /get_credits with the same account email and API key. The response returns the current balance for the authenticated account.

Should I expose my ListCleaner API key in frontend JavaScript?

No. Production requests should come from a trusted backend, with the API key stored in a protected secret or environment variable. This documentation keeps entered credentials only in page memory and never inserts them into displayed examples.