Pre-check a carrier registration
Dry-run of POST /v1/sms/registrations for 10DLC: validates and
composes the exact brand/campaign payloads a submission would store
(branding, disclosures, auto-replies), runs deterministic compliance
lints plus an AI reviewer over them, and returns the findings WITHOUT
creating anything. Use it to fix issues before submitting; block
severity findings indicate a near-certain carrier rejection.
API key authentication - use your Zernio API key as a Bearer token
In: header
"standard_10dlc" | "sole_prop_10dlc"Same shape as the registration brand.
Same shape as the registration campaign.
2 <= length <= 60Response Body
application/json
application/json
application/json
import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.sms.preflightSmsRegistration({ body: { registrationType: 'standard_10dlc', brand: {}, campaign: {}, },});console.log(data);{
"composed": {
"brand": {},
"campaign": {}
},
"advisories": [
{
"field": "string",
"code": "string",
"concern": "string",
"severity": "block"
}
],
"verdict": "pass",
"aiUnavailable": true
}{
"error": "string",
"type": "invalid_request_error",
"code": "string",
"param": "string",
"platform": "string",
"platformError": {},
"details": {}
}{
"error": "Unauthorized"
}Look up carrier + line type GET
Carrier name and line type (mobile / landline / voip / toll-free) for a number, plus `smsReachable` (landlines can't receive SMS). Use it to validate recipients before sending. Each lookup is billed by the carrier-data provider, so call it explicitly (e.g. pre-validating an opt-in list), not on every send.
Request a higher sender ID daily limit POST
Asks support to raise the workspace's daily sender-ID message cap. There is no self-serve raise: the request (desired cap + use case) is reviewed manually, usually within a business day.