Skip to content

DNS Naming Convention

Overview

Consistent hostnames make environments predictable, simplify certificate and ingress management, and let tooling derive URLs instead of hardcoding them. Follow this convention for every new subdomain across all company domains.

Naming Structure

Standard Format

<env>.<component>.<domain>
  • Dot-separated segments — never hyphenated environment prefixes (dev-cms is the legacy style)
  • Environment first, then the component, then the domain
  • Production drops the environment prefix entirely

Examples

# Development
dev.ai-ml-platform.azmx.sa
dev.cms.azmx.sa
dev.admin.goanatomi.ai

# Staging
staging.api.goanatomi.ai
staging.cms.azmx.sa

# Production (no environment prefix)
api.goclix.ai
cms.azmx.sa

Quick Reference

Environment Pattern Example
Development dev.<component>.<domain> dev.api.goanatomi.ai
Staging staging.<component>.<domain> staging.api.goanatomi.ai
Production <component>.<domain> api.goanatomi.ai

Applies to all company domains: azmx.sa, goanatomi.ai, goclix.ai.

No Hardcoded Hostnames

Hostnames must never be hardcoded in application code or in configuration files committed to a repository. Inject them through environment variables or secrets only.

# Good - hostname injected via environment
API_BASE_URL=https://staging.api.goanatomi.ai
# Avoid - hostname hardcoded in source
API_BASE_URL = "https://staging.api.goanatomi.ai"

This keeps the same build deployable to any environment and makes DNS migrations a configuration change rather than a code change.

Legacy Hostnames to Migrate

The following hostnames predate this convention and use the hyphenated style. Migrate them when convenient (e.g., alongside other work on the affected service):

Current (legacy) Target
admin-dev.goanatomi.ai dev.admin.goanatomi.ai
dev-cms.azmx.sa dev.cms.azmx.sa
dev-ar.azmx.sa dev.ar.azmx.sa

Open question

Confirm whether www.goclix.ai intentionally points at the dev website app. If not, repoint it to the production website before migrating the dev hostname.