API ReferenceLinks API
Branded Domains
Add and verify your own short-link domain - /v1/domains.
Use your own domain (e.g. go.yourbrand.com) instead of go.esmsafrica.io. Branded domains are available on Business plans and above.
Add a domain
POST https://links.esmsafrica.io/v1/domainsRequest body
{ "hostname": "go.yourbrand.com" }Response - 201
{
"id": "d1a2…",
"hostname": "go.yourbrand.com",
"verified": false,
"tls_ready": false,
"verify_token": "f3a9c1…",
"txt_record": "_esms-links.go.yourbrand.com TXT f3a9c1…",
"created_at": "2026-08-03T09:00:00Z"
}Add the txt_record at your DNS provider, then call verify.
Errors
| Status | Description |
|---|---|
402 | Paid plan required, or your plan's domain limit is reached |
403 | Branded domains not available on your plan |
409 | Hostname already registered |
422 | Invalid hostname |
Verify a domain
POST https://links.esmsafrica.io/v1/domains/{id}/verifyChecks that the TXT record _esms-links.<hostname> matches your verify_token. On success verified becomes true; we then provision a TLS certificate for the host. Returns the domain object.
| Status | Description |
|---|---|
400 | TXT record not found yet - add it and allow DNS to propagate |
List domains
GET https://links.esmsafrica.io/v1/domainsReturns your domains, each including the txt_record while still pending.
Delete a domain
DELETE https://links.esmsafrica.io/v1/domains/{id}Returns 204 No Content.
Once a domain is verified, pass its id as domain_id when creating a link to mint short links on that host.