Register up to 1,000 communications
POST
/v1/communications/batch
const url = 'https://api.fromenance.com/v1/communications/batch';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"items":[{"channel":"email","recipient_hash":"example","message_id":"example","from_address":"example","sent_at":"2026-04-15T12:00:00Z","subject_fingerprint":"example","content_fingerprint":{"simhash":"0x9a4d3c2b1f0e8d7c","sha256":"example"},"link_domains":["example"],"template_id":"example","campaign_id":"example","provider":"api","expires_at":"2026-04-15T12:00:00Z","verify_code":"example"}]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.fromenance.com/v1/communications/batch \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "items": [ { "channel": "email", "recipient_hash": "example", "message_id": "example", "from_address": "example", "sent_at": "2026-04-15T12:00:00Z", "subject_fingerprint": "example", "content_fingerprint": { "simhash": "0x9a4d3c2b1f0e8d7c", "sha256": "example" }, "link_domains": [ "example" ], "template_id": "example", "campaign_id": "example", "provider": "api", "expires_at": "2026-04-15T12:00:00Z", "verify_code": "example" } ] }'Per item results in input order. One bad item does not fail the batch. Rate limited at 6,000 items per minute.
Authorizations
Section titled “Authorizations”Request Body
Section titled “Request Body”Media typeapplication/json
object
items
required
Array<object>
object
channel
string
recipient_hash
required
HMAC-SHA256 of the lowercased, trimmed recipient address keyed with your tenant secret.
string
message_id
required
string
from_address
required
string
sent_at
required
string format: date-time
subject_fingerprint
string
content_fingerprint
object
simhash
required
string
Example
0x9a4d3c2b1f0e8d7csha256
required
string
link_domains
Array<string>
template_id
string | null
campaign_id
string | null
provider
string
expires_at
string format: date-time
verify_code
Only when completing a reserved code; otherwise omit and one is issued.
string
Responses
Section titled “ Responses ”Results
Media typeapplication/json
object
results
required
Array<object>
object
index
required
integer
ok
required
boolean
id
string
verify_code
string
expires_at
string
error
string
registered
required
integer
failed
required
integer
Examplegenerated
{ "results": [ { "index": 1, "ok": true, "id": "example", "verify_code": "example", "expires_at": "example", "error": "example" } ], "registered": 1, "failed": 1}