curl --request POST \
--url https://api.bizzyco.ai/v1/domains \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"domain": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({domain: '<string>'})
};
fetch('https://api.bizzyco.ai/v1/domains', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.bizzyco.ai/v1/domains"
payload = { "domain": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.bizzyco.ai/v1/domains"
payload := strings.NewReader("{\n \"domain\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"domain": "<string>",
"source": "registered",
"status": "active",
"kind": "apex",
"parentDomainId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"purpose": "general",
"capabilities": {
"dns": true,
"email": true,
"registration": true,
"renewal": true
},
"verification": {
"status": "pending",
"instruction": {
"type": "TXT",
"name": "<string>",
"value": "<string>"
},
"attempts": 123,
"verifiedAt": "2023-11-07T05:31:56Z",
"expiresAt": "2023-11-07T05:31:56Z"
},
"registration": {
"registered": true,
"state": "<string>",
"registeredAt": "2023-11-07T05:31:56Z",
"expiresAt": "2023-11-07T05:31:56Z",
"autoRenew": true,
"whoisPrivacy": true,
"transferLock": true,
"periodYears": 123,
"registrantVerificationDeadline": "2023-11-07T05:31:56Z"
},
"email": {
"domainId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"domain": "<string>",
"source": "registered",
"managed": true,
"resendStatus": "none",
"readiness": "ready",
"failureReason": "provider",
"drift": {
"brokenAt": "2023-11-07T05:31:56Z",
"kinds": [
"SPF"
]
},
"fromEmail": "<string>",
"records": [
{
"kind": "SPF",
"state": "verified",
"managed": true,
"required": true,
"name": "<string>",
"type": "TXT",
"value": "<string>",
"ttl": "<string>",
"priority": 123,
"inheritedFrom": "<string>",
"effectivePolicy": "none"
}
]
}
},
"meta": {
"pagination": {
"limit": 123,
"offset": 123,
"hasMore": true,
"total": 123
}
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}Create verified domain attempt
Create an externally owned domain verification attempt. The response includes the TXT instruction to publish. The name is always created as an apex domain (kind apex) with its own verification challenge, whatever its label count: mail.acme.com is an independent name you prove control of by publishing _bizzy.mail.acme.com, exactly as example.co.uk is. The one exception is a name under a domain the organization already holds — mail.acme.com while acme.com is in the domain list. That request is refused with 409: code DOMAIN_PARENT_EXISTS when the name is exactly one label under a held apex domain — add it as a sending subdomain with POST /v1/domains//subdomains instead, so it inherits the parent’s verification and DNS; code DOMAIN_NESTING_UNSUPPORTED when the held domain is itself a subdomain or the name is deeper than one label under it, because a subdomain sits exactly one label under an apex and no path can add such a name while its parent is held. Both name the held domain in the error details (parentDomainId, parentDomain). A name already in the organization returns 409 with code DOMAIN_ALREADY_EXISTS.
curl --request POST \
--url https://api.bizzyco.ai/v1/domains \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"domain": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({domain: '<string>'})
};
fetch('https://api.bizzyco.ai/v1/domains', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.bizzyco.ai/v1/domains"
payload = { "domain": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.bizzyco.ai/v1/domains"
payload := strings.NewReader("{\n \"domain\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"domain": "<string>",
"source": "registered",
"status": "active",
"kind": "apex",
"parentDomainId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"purpose": "general",
"capabilities": {
"dns": true,
"email": true,
"registration": true,
"renewal": true
},
"verification": {
"status": "pending",
"instruction": {
"type": "TXT",
"name": "<string>",
"value": "<string>"
},
"attempts": 123,
"verifiedAt": "2023-11-07T05:31:56Z",
"expiresAt": "2023-11-07T05:31:56Z"
},
"registration": {
"registered": true,
"state": "<string>",
"registeredAt": "2023-11-07T05:31:56Z",
"expiresAt": "2023-11-07T05:31:56Z",
"autoRenew": true,
"whoisPrivacy": true,
"transferLock": true,
"periodYears": 123,
"registrantVerificationDeadline": "2023-11-07T05:31:56Z"
},
"email": {
"domainId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"domain": "<string>",
"source": "registered",
"managed": true,
"resendStatus": "none",
"readiness": "ready",
"failureReason": "provider",
"drift": {
"brokenAt": "2023-11-07T05:31:56Z",
"kinds": [
"SPF"
]
},
"fromEmail": "<string>",
"records": [
{
"kind": "SPF",
"state": "verified",
"managed": true,
"required": true,
"name": "<string>",
"type": "TXT",
"value": "<string>",
"ttl": "<string>",
"priority": 123,
"inheritedFrom": "<string>",
"effectivePolicy": "none"
}
]
}
},
"meta": {
"pagination": {
"limit": 123,
"offset": 123,
"hasMore": true,
"total": 123
}
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}{
"error": {
"message": "<string>",
"code": "<string>",
"details": "<unknown>"
}
}Authorizations
API key authentication via Bearer token
Headers
Key that makes this request safe to retry. Reuse the same value when retrying a request that may already have succeeded — the original response is replayed with an Idempotency-Replay: true header. Use a new value for a new operation.
1 - 255"9f8c2b1a-4d3e-4a6b-8c1d-2e3f4a5b6c7d"
Body
1 - 253^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?(\.[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$