Integration · Available after publish
SimpleCold SDKs for Node and Python
Official clients for Node.js and Python: one, 50 or a whole CSV list of addresses, typed results and errors, retries done right, and webhook signature checks. They are built and tested; you can install them once we publish them to npm and PyPI. The OpenAPI spec works today.
What they do
What the SDKs give you
Built and tested. You can install them once we publish them to npm and PyPI.
Every endpoint, typed
verify, a batch of up to 50, credits, and bulk lists: upload a file or an array, wait for completion, download CSV or JSON rows.
Retries done right
Waits out 429s, backs off on server errors, and never retries a bulk upload in a way that could start a job twice.
Webhook signatures
Verify the SimpleCold-Signature header against the raw body and get a typed event back. Express, Flask and FastAPI examples included.
Manage webhook endpoints
Create, update, test and rotate the secret of your webhook endpoints from code, with an owner or admin key.
Node and Python
@simplecold/sdk for Node 18+ (ESM and CommonJS, no runtime dependencies). simplecold for Python 3.10+, with sync and async clients.
OpenAPI 3.1 spec, live now
Generate a client in any language, or import it into Postman or Insomnia, from /api/v1/openapi.json.
Open the specSetup
Set it up in 3 steps
Once the packages are published. A few lines of code.
- 01
Install
npm install @simplecold/sdk, or pip install simplecold.
- 02
Add your key
Create an API key in the dashboard and set SIMPLECOLD_API_KEY on your server. A sc_test_ key runs in the sandbox with no credits.
- 03
Verify
await simplecold.verify(email) in Node, client.verify(email) in Python. Branch on category; show statusMessage to people.
Side by side
The same methods in both
Node uses camelCase, Python uses snake_case. Everything else matches.
| What | Node | Python |
|---|---|---|
| One address | verify(email) | verify(email) |
| Up to 50 addresses | verifyBatch(emails) | verify_batch(emails) |
| Collect a slow result | getResult(email) | get_result(email) |
| Upload a list | lists.upload / lists.uploadEmails | lists.upload / lists.upload_emails |
| Wait and download | lists.waitForCompletion / lists.download | lists.wait_for_completion / lists.download |
| Credit balance | credits() | credits() |
Today
What you can use right now
Until the packages are published, these work today.
Use the OpenAPI spec
The OpenAPI 3.1 spec is served with the API. Generate a client or import it into your HTTP tool.
Open the specCall the REST API
Single checks in real time, batches of up to 50 addresses, and bulk CSV jobs, with a Bearer API key.
Read the API docsReceive webhooks
Signed bulk.finished and credits.low events, the same ones the apps listen to, pushed to any HTTPS endpoint.
Set up webhooksAvailable after publish
Get told when the SDKs are published
Leave your email and we'll write once, when they are on npm and PyPI.
Need it working today?
The REST API works now: single, batch and bulk endpoints with an API key. Or upload a CSV from any tool.
FAQ
SDK questions
Short answers.
Still have a question? Talk to us.
Check your list before you send it
Start with 200 free credits. Pay per credit after that.