Domains

Connect a custom domain.

Registers the hostname, runs a preflight check, and returns the DNS records the domain owner has to create. The domain stays pending until those records resolve; SSL is issued automatically once they do.

Requires an active subscription on the workspace even while inside the free tier, so a card must be on file.

post/v1/domains

Request

  • Base URL: https://api.domainee.dev
  • URL: https://api.domainee.dev/v1/domains
  • Auth: HTTP bearer

Headers

Idempotency-Keystring

Any unique string. Retrying with the same key replays the first response instead of repeating the work.

Request body

hostnamestring required

The customer's hostname. Normalized and validated server-side.

originUrlstring uri required

Where verified traffic should go.

metadataobject
mode'proxy' | 'redirect'
keepHostboolean
redirectWwwboolean
redirectStatus301 | 302

Example request

{
  "hostname": "app.acme.com",
  "originUrl": "https://acme.vercel.app"
}

Response

Domain created. Follow dnsRecords to finish verification.

Example response

{
  "domain": {
    "id": "dom_9f2c",
    "hostname": "app.acme.com",
    "originUrl": "https://acme.vercel.app",
    "dnsRecords": [
      {
        "name": "app.acme.com",
        "value": "edge.domainee.dev",
        "type": "CNAME",
        "purpose": "Traffic Routing"
      }
    ],
    "dnsRecordOptions": [
      {
        "label": "A records",
        "records": [
          {
            "name": "app.acme.com",
            "value": "edge.domainee.dev",
            "type": "CNAME",
            "purpose": "Traffic Routing"
          }
        ]
      }
    ]
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.