… it returns json with verified = true despite not being verified yet. When I check in my vercel dashboard, I see the new domain there, but since I have not yet configured the dns records, it is not yet verified.
I’ve also tried subsequently making a get request to…
The domain troubleshooting guide can help with most custom domain configuration issues. You might be able to use that guide to solve it before a human is available to help you. Then you can come back here and share the answer for bonus points.
You can also use v0 to narrow down the possibilities.
and it correctly returns json with misconfigured = true, but all of the arrays are empty except nameservers. I don’t want to force my users to change their nameservers and would prefer to have them just update the A or CNAME records so I am still troubleshooting this. Not sure why the A record and CNAME record arrays are empty in the json response.
I found another github discussion that fortunately added some color:
My current understanding is that the /config endpoint returns the CURRENT dns records, not the new ones needed for misconfiguration = false.
According to the discussion above, it seems that if a user is adding an apex domain, they will always need to add the cname record cname.vercel-dns.com. And if the user is adding a subdomain, they will always need to add the A record 76.76.21.21 so these values can seemingly be hardcoded and do not need to be retrieved each time via the API.
It looks like you already found the answer. Thanks for coming back to share it!
I’m going to summarize it here to help anyone else looking for this info:
The verified property on the /v10/projects/{idOrName}/domainsadd a domain response indicates whether additional domain access verification steps are needed.
The verification property lists the TXT value needed to verify the domain for use with the project. It does not include A and CNAME record requirements for standard domain setup.
Apex domains need A records with value 76.76.21.21 and subdomains need CNAME records with value cname.vercel-dns.com (or use Vercel nameservers instead when appropriate)
The /v6/domains/{domain}/config lets you get a domain’s configuration to check if it’s correctly configured for use with the project. Look for the misconfigured property in the response.