Delete projects

Folds a project into another.

DELETE /v1/platform/projects/{project}

Addresshttps://api.hanzo.ai/v1/platform/projects/{project}
MethodDELETE
Operationdelete_platform_projects_by_project
AuthAuthorization: Bearer $HANZO_API_KEY

Folds a project into another.

An app always belongs to exactly one project, so a project ends by moving its apps: into names the existing project they move to, and the project is gone once no file names it. One commit to hanzoai/universe; mode as for create. 404 when into is not a project.

Request

4 fields.

FieldInTypeRequiredDescription
projectpathstringyesProject is the project to delete, from the path.
intoquerystring—Into is the existing project its apps move into.
orgquerystring—Org names the projects' owner, defaulting to the caller's own scope.
modequerystring—Mode is branch (the default) or commit.

Response

StatusBodyMeaning
200platform.projectWriteok
defaultproblem-detailsrefused

200 body — 11 fields.

FieldInTypeAlwaysDescription
commitbodystring—Commit is the sha the change created, "" when nothing had to move.
livebodyboolean—Live says whether the generator will see it: true only on main.
modebodystring—Mode is branch (a review; nothing deploys) or commit (main).
movedbodyplatform.relabel[]—Moved are the declarations whose partOf moved, and from what.
moved[].frombodystring—
moved[].namebodystring—
moved[].orgbodystring—
moved[].tobodystring—
projectbodystring—Project is the project the change leaves the moved apps in.
refbodystring—Ref is the branch the change was pushed to, main for a commit.
reviewbodystring—Review is where to open the pull request for a branch.

Failure carries the platform error shape — see Errors.

Examples

hanzo has no subcommand for this operation — the CLI serves only what cloud's live route table confirms. Use HTTP or an SDK.

import { Configuration, PlatformApi } from 'hanzoai';

const api = new PlatformApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.deletePlatformProjectsByProject({ project: 'project' });
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(project='project')
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.PlatformAPI.DeletePlatformProjectsByProject(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(&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).deletePlatformProjectsByProject();
curl -X DELETE https://api.hanzo.ai/v1/platform/projects/<project> \
  -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?