Pre-validate KYC address
Optional early check for the address step of a Tier 4 (end-user identity)
registration: validates a postal address for deliverability BEFORE the full
KYC submit, so it can be corrected before any documents are uploaded. The
full submit (POST /v1/phone-numbers/kyc) re-validates the address,
so this call is purely a fast feedback path and skipping it is safe. Only
the postal address is sent (no documents, no gov-ID fields). A region
(administrative_area) is required by the validator; when it is omitted the
pre-check is skipped and { ok: true, skipped: true } is returned (the
final submit still validates).
API key authentication - use your Zernio API key as a Bearer token
In: header
ISO 3166-1 alpha-2 country code.
2 <= length <= 2Address complement: apartment, suite, unit, or the quadra/lote used in some countries. Optional. Does not substitute for a building number on street_address.
City / town.
State / province / region. When omitted, the pre-check is skipped (the final submit still validates).
Response 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.phonenumbers.validatePhoneNumberKycAddress({ body: { country: 'string', street_address: 'string', locality: 'string', postal_code: 'string', },});console.log(data);{
"ok": true,
"skipped": true
}{
"error": "string",
"type": "string",
"code": "INVALID_FIELD_VALUE",
"param": "address",
"details": {
"addressSuggestions": [
{
"field": "administrative_area",
"label": "State / Province",
"value": "Dublin"
}
]
}
}{
"error": "Unauthorized"
}Upload a porting document POST
Upload ONE porting document and get back its `documentId`. For the signed LOA / carrier invoice the id goes to `loaDocumentId` / `invoiceDocumentId`; for a country-specific document requirement (international ports) it becomes that requirement's `fieldValue`. Requirement documents are normalized to PDF automatically (regulators reject raw images). PDF, JPEG, or PNG, 10MB max. Uploads must be attached to an order within 30 minutes or the carrier deletes them.
View a KYC document on file GET
Stream a document backing a reusable verification (the `documentId` values from GET /v1/phone-numbers/kyc `reusable.options[].details[]`), so the account holder can see what's on file before reusing it. Returned inline as `application/pdf` (uploads are normalized to PDF). Auth-scoped: a document is viewable only when its id is referenced by one of the caller's own numbers — otherwise `404`.