a month ago
I'm having issues with a custom domain binding on my project.
Project: adequate-consideration (ID: 0afd41a7-ef83-4bab-8b0d-cd18b76e162a)
Service: web (ID: b86a967a-422b-4a6f-af9d-27d3f99fc381)
Custom domain: www.techenergyamerica.com
Issue: The custom domain is registered in Railway and DNS is correctly set (CNAME www -> m2mtei9s.up.railway.app, confirmed propagated via Google DNS). Railway's API also reports the DNS status as DNS_RECORD_STATUS_PROPAGATED. However, when I access https://www.techenergyamerica.com, Railway's edge returns 404 "Application not found".
The service works perfectly on its default subdomain: https://web-production-dd98f0.up.railway.app/
I've tried deleting and recreating the custom domain multiple times. Each time a new CNAME target is assigned but the binding issue persists.
Could you please help verify why the custom domain isn't being bound to the service?
7 Replies
a month ago
Make sure you configured the TXT record correctly.
a month ago
I ran nslookup on _railway-verify.www and I got NXDOMAIN.
a month ago
Thanks for the response. The API doesn't show me a TXT record requirement in the dnsRecords response - only the CNAME. Could you please share what exact value I need to put in the TXT record at _railway-verify.www.techenergyamerica.com?
a month ago
Go to your Railway project and select your service, then go to the networking tab. You should be able to find the domain you're trying to add, and it'll show the required CNAME/TXT records from there.
a month ago
I'll bring up the issue about the API not returning sufficient values with the team.
a month ago
Actually, no.
After some further digging, you can access the required TXT records through the properties verificationDnsHost and verificationToken.
a month ago
Sample query:
mutation customDomainCreate($input: CustomDomainCreateInput!) {
customDomainCreate(input: $input) {
status {
dnsRecords {
requiredValue
hostlabel
zone
status
currentValue
purpose
}
verificationDnsHost
verificationToken
}
}
}