Skip to content
AdiosDocumentation
Browse documentation

Domains API

Add a hostname you own, configure the verification CNAME returned by the API, then send Verify domain.

Use API authentication for protected requests. Examples use your own resource IDs and a temporary token; saved response examples are synthetic.

MethodPathOperation
GET/v1/domainList domains
POST/v1/domainCreate domain
GET/v1/domain/{id}Get domain
PUT/v1/domain/{id}Update domain
DELETE/v1/domain/{id}Delete domain
POST/v1/domain/{id}/verifyVerify domain

List domains

GET /v1/domain

Returns a paginated list of Domain

Authentication: bearer token and the team header shown below.

Parameters

NameLocationRequiredDescription
X-Tenant-IDheaderyesActive team ID. Must match the tenant bound to a diagnostic token.
pagequerynoPage number
per_pagequerynoItems per page

Request example

Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.

curl --fail-with-body --request GET "$ADIOS_API_URL/v1/domain" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID"

Response: HTTP 200

List of Domain

Response fields

FieldTypeDescription
dataarray
data[].created_atinteger(Unix timestamp)
data[].deleted_atinteger(Unix timestamp)
data[].domain_idstring
data[].hostnamestringUser-owned custom hostname; adios.dev and adios.run namespaces are reserved for platform-managed routes
data[].redirect_tostringOptional URL or hostname to redirect to (e.g. https://www.adios.dev)
data[].scopestringAuthorized hostname scope: exact permits only hostname; subtree also permits descendant hostnames. New registrable domains default to subtree, new subdomains default to exact, and existing records remain subtree for backward compatibility. Allowed: exact, subtree.
data[].statusstringDomain verification status Allowed: pending, verified.
data[].team_idstring
data[].updated_atinteger(Unix timestamp)
data[].verification_hostnamestringDNS name that must be configured as a CNAME for ownership verification
data[].verification_parent_idstringVerified parent domain claim from which this hostname inherited verification; empty for direct DNS verification
data[].verification_valuestringExpected CNAME value for ownership verification
data[].verified_atinteger(Unix timestamp)
data[].workload_idstring
paginationobject
pagination.pageintegerCurrent page number
pagination.per_pageintegerNumber of items per page
pagination.totalintegerTotal number of items

Illustrative example; not a live response:

{
  "data": [
    {
      "created_at": 1791072000,
      "deleted_at": 0,
      "domain_id": "000000000000000000000000001",
      "hostname": "app.example.com",
      "redirect_to": "example",
      "scope": "exact",
      "status": "pending",
      "team_id": "000000000000000000000000001",
      "updated_at": 1791072000,
      "verification_hostname": "example",
      "verification_parent_id": "000000000000000000000000001",
      "verification_value": "example",
      "verified_at": 0,
      "workload_id": "000000000000000000000000001"
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 1,
    "total": 1
  }
}

Create domain

POST /v1/domain

Creates a new Domain

This request changes data or starts an action. Review the target and body before sending it.

Request fields (the body contains an editable example):

FieldTypeRequiredDescription
hostnamestringyesUser-owned custom hostname; adios.dev and adios.run namespaces are reserved for platform-managed routes
redirect_tostringnoOptional URL or hostname to redirect to (e.g. https://www.adios.dev)
scopestringnoAuthorized hostname scope: exact permits only hostname; subtree also permits descendant hostnames. New registrable domains default to subtree, new subdomains default to exact, and existing records remain subtree for backward compatibility. Allowed: exact, subtree.
statusstringnoDomain verification status Allowed: pending, verified. Default: "pending".
team_idstringyes
verification_hostnamestringnoDNS name that must be configured as a CNAME for ownership verification
verification_parent_idstringnoVerified parent domain claim from which this hostname inherited verification; empty for direct DNS verification
verification_valuestringnoExpected CNAME value for ownership verification
verified_atintegerno(Unix timestamp) Default: 0.
workload_idstringno

Authentication: bearer token and the team header shown below.

Parameters

NameLocationRequiredDescription
X-Tenant-IDheaderyesActive team ID. Must match the tenant bound to a diagnostic token.

Request example

Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.

curl --fail-with-body --request POST "$ADIOS_API_URL/v1/domain" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'JSON'
{
  "team_id": "YOUR_TEAM_ID",
  "hostname": "YOUR_HOSTNAME"
}
JSON

Replace YOUR_* body placeholders before sending. The quoted heredoc keeps the JSON literal.

Response: HTTP 201

Domain created

Response fields

FieldTypeDescription
created_atinteger(Unix timestamp)
deleted_atinteger(Unix timestamp)
domain_idstring
hostnamestringUser-owned custom hostname; adios.dev and adios.run namespaces are reserved for platform-managed routes
redirect_tostringOptional URL or hostname to redirect to (e.g. https://www.adios.dev)
scopestringAuthorized hostname scope: exact permits only hostname; subtree also permits descendant hostnames. New registrable domains default to subtree, new subdomains default to exact, and existing records remain subtree for backward compatibility. Allowed: exact, subtree.
statusstringDomain verification status Allowed: pending, verified.
team_idstring
updated_atinteger(Unix timestamp)
verification_hostnamestringDNS name that must be configured as a CNAME for ownership verification
verification_parent_idstringVerified parent domain claim from which this hostname inherited verification; empty for direct DNS verification
verification_valuestringExpected CNAME value for ownership verification
verified_atinteger(Unix timestamp)
workload_idstring

Illustrative example; not a live response:

{
  "created_at": 1791072000,
  "deleted_at": 0,
  "domain_id": "000000000000000000000000001",
  "hostname": "app.example.com",
  "redirect_to": "example",
  "scope": "exact",
  "status": "pending",
  "team_id": "000000000000000000000000001",
  "updated_at": 1791072000,
  "verification_hostname": "example",
  "verification_parent_id": "000000000000000000000000001",
  "verification_value": "example",
  "verified_at": 0,
  "workload_id": "000000000000000000000000001"
}

Get domain

GET /v1/domain/{id}

Returns a single Domain

Set domain_id using IDs from your own API responses.

Authentication: bearer token and the team header shown below.

Parameters

NameLocationRequiredDescription
idpathyesResource identifier from your team's API results.
X-Tenant-IDheaderyesActive team ID. Must match the tenant bound to a diagnostic token.

Request example

Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.

curl --fail-with-body --request GET "$ADIOS_API_URL/v1/domain/${ADIOS_DOMAIN_ID}" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID"

Response: HTTP 200

Domain

Response fields

FieldTypeDescription
created_atinteger(Unix timestamp)
deleted_atinteger(Unix timestamp)
domain_idstring
hostnamestringUser-owned custom hostname; adios.dev and adios.run namespaces are reserved for platform-managed routes
redirect_tostringOptional URL or hostname to redirect to (e.g. https://www.adios.dev)
scopestringAuthorized hostname scope: exact permits only hostname; subtree also permits descendant hostnames. New registrable domains default to subtree, new subdomains default to exact, and existing records remain subtree for backward compatibility. Allowed: exact, subtree.
statusstringDomain verification status Allowed: pending, verified.
team_idstring
updated_atinteger(Unix timestamp)
verification_hostnamestringDNS name that must be configured as a CNAME for ownership verification
verification_parent_idstringVerified parent domain claim from which this hostname inherited verification; empty for direct DNS verification
verification_valuestringExpected CNAME value for ownership verification
verified_atinteger(Unix timestamp)
workload_idstring

Illustrative example; not a live response:

{
  "created_at": 1791072000,
  "deleted_at": 0,
  "domain_id": "000000000000000000000000001",
  "hostname": "app.example.com",
  "redirect_to": "example",
  "scope": "exact",
  "status": "pending",
  "team_id": "000000000000000000000000001",
  "updated_at": 1791072000,
  "verification_hostname": "example",
  "verification_parent_id": "000000000000000000000000001",
  "verification_value": "example",
  "verified_at": 0,
  "workload_id": "000000000000000000000000001"
}

Update domain

PUT /v1/domain/{id}

Updates an existing Domain

Set domain_id using IDs from your own API responses.

This request changes data or starts an action. Review the target and body before sending it.

Request fields (the body contains an editable example):

FieldTypeRequiredDescription
hostnamestringyesUser-owned custom hostname; adios.dev and adios.run namespaces are reserved for platform-managed routes
redirect_tostringnoOptional URL or hostname to redirect to (e.g. https://www.adios.dev)
scopestringnoAuthorized hostname scope: exact permits only hostname; subtree also permits descendant hostnames. New registrable domains default to subtree, new subdomains default to exact, and existing records remain subtree for backward compatibility. Allowed: exact, subtree.
statusstringnoDomain verification status Allowed: pending, verified. Default: "pending".
team_idstringyes
verification_hostnamestringnoDNS name that must be configured as a CNAME for ownership verification
verification_parent_idstringnoVerified parent domain claim from which this hostname inherited verification; empty for direct DNS verification
verification_valuestringnoExpected CNAME value for ownership verification
verified_atintegerno(Unix timestamp) Default: 0.
workload_idstringno

Authentication: bearer token and the team header shown below.

Parameters

NameLocationRequiredDescription
idpathyesResource identifier from your team's API results.
X-Tenant-IDheaderyesActive team ID. Must match the tenant bound to a diagnostic token.

Request example

Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.

curl --fail-with-body --request PUT "$ADIOS_API_URL/v1/domain/${ADIOS_DOMAIN_ID}" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'JSON'
{
  "team_id": "YOUR_TEAM_ID",
  "hostname": "YOUR_HOSTNAME"
}
JSON

Replace YOUR_* body placeholders before sending. The quoted heredoc keeps the JSON literal.

Response: HTTP 200

Domain updated

Response fields

FieldTypeDescription
created_atinteger(Unix timestamp)
deleted_atinteger(Unix timestamp)
domain_idstring
hostnamestringUser-owned custom hostname; adios.dev and adios.run namespaces are reserved for platform-managed routes
redirect_tostringOptional URL or hostname to redirect to (e.g. https://www.adios.dev)
scopestringAuthorized hostname scope: exact permits only hostname; subtree also permits descendant hostnames. New registrable domains default to subtree, new subdomains default to exact, and existing records remain subtree for backward compatibility. Allowed: exact, subtree.
statusstringDomain verification status Allowed: pending, verified.
team_idstring
updated_atinteger(Unix timestamp)
verification_hostnamestringDNS name that must be configured as a CNAME for ownership verification
verification_parent_idstringVerified parent domain claim from which this hostname inherited verification; empty for direct DNS verification
verification_valuestringExpected CNAME value for ownership verification
verified_atinteger(Unix timestamp)
workload_idstring

Illustrative example; not a live response:

{
  "created_at": 1791072000,
  "deleted_at": 0,
  "domain_id": "000000000000000000000000001",
  "hostname": "app.example.com",
  "redirect_to": "example",
  "scope": "exact",
  "status": "pending",
  "team_id": "000000000000000000000000001",
  "updated_at": 1791072000,
  "verification_hostname": "example",
  "verification_parent_id": "000000000000000000000000001",
  "verification_value": "example",
  "verified_at": 0,
  "workload_id": "000000000000000000000000001"
}

Delete domain

DELETE /v1/domain/{id}

Deletes a Domain

Set domain_id using IDs from your own API responses.

This request changes data or starts an action. Review the target and body before sending it.

Authentication: bearer token and the team header shown below.

Parameters

NameLocationRequiredDescription
idpathyesResource identifier from your team's API results.
X-Tenant-IDheaderyesActive team ID. Must match the tenant bound to a diagnostic token.

Request example

Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.

curl --fail-with-body --request DELETE "$ADIOS_API_URL/v1/domain/${ADIOS_DOMAIN_ID}" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID"

Response: HTTP 200

Resource deleted.

Response fields

FieldTypeDescription
messagestring

Illustrative example; not a live response:

{
  "message": "Deleted successfully"
}

Verify domain

POST /v1/domain/{id}/verify

Check the ownership CNAME provided when the domain was created. Configure DNS before sending this request.

Set domain_id using IDs from your own API responses.

This request changes data or starts an action. Review the target and body before sending it.

Authentication: bearer token and the team header shown below.

Parameters

NameLocationRequiredDescription
idpathyesResource identifier from your team's API results.
X-Tenant-IDheaderyesActive team ID. Must match the tenant bound to a diagnostic token.

Request example

Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.

curl --fail-with-body --request POST "$ADIOS_API_URL/v1/domain/${ADIOS_DOMAIN_ID}/verify" \
  -H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
  -H "X-Tenant-ID: $ADIOS_TEAM_ID"

Response: HTTP 200

Successful response. Inspect returned state for operations that start asynchronous work.

A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.