Delete domains

Detaches a hostname and releases the claim.

DELETE /v1/platform/projects/{project}/apps/{app}/domains/{host}

Addresshttps://api.hanzo.ai/v1/platform/projects/{project}/apps/{app}/domains/{host}
MethodDELETE
Operationdelete_platform_projects_by_project_apps_by_app_domains_by_host
AuthAuthorization: Bearer $HANZO_API_KEY

Detaches a hostname and releases the claim.

It drops the host from the app's ingress and releases any custom claim on it, so the name becomes claimable again — by this org or any other. Answers 204.

The default host is permanent and cannot be removed: that is 400, not 404. A host that is neither attached nor claimed here is 404. Requires a validated principal; 401 without one.

Request

3 fields.

FieldInTypeRequiredDescription
projectpathstringyesProject is the project the application lives under, from the path.
apppathstringyesApp is the application's slug, from the path.
hostpathstringyesHost is the hostname, from the path.

Response

StatusBodyMeaning
204—no content
defaultproblem-detailsrefused

Failure carries the platform error shape — see Errors.

Examples

hanzo platform projects apps domains rm <project> <app> <host>
import { Configuration, PlatformApi } from 'hanzoai';

const api = new PlatformApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.deletePlatformProjectsByProjectAppsByAppDomainsByHost({ project: 'project', app: 'app', host: 'host' });
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import PlatformApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = PlatformApi(client).delete_platform_projects_by_project_apps_by_app_domains_by_host(project='project', app='app', host='host')
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.PlatformAPI.DeletePlatformProjectsByProjectAppsByAppDomainsByHost(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, platform_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = platform_api::delete_platform_projects_by_project_apps_by_app_domains_by_host(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.PlatformApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new PlatformApi(client).deletePlatformProjectsByProjectAppsByAppDomainsByHost();
curl -X DELETE https://api.hanzo.ai/v1/platform/projects/<project>/apps/<app>/domains/<host> \
  -H "Authorization: Bearer $HANZO_API_KEY"

MCP reaches platform through the platform tool, which names its 38 operations with its own verbs — this one among them, under a name only MCP declares. describe explains any of them:

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "describe",
         "arguments": {
           "op": "get_build"
         }
       }
     }'

Platform API · All Hanzo APIs · Interactive reference

Was this page useful?