# Delete a project

> Deletes a project. Requires admin role. Fails with `409` if the project has any dependent resource, unless `force=true` is passed, in which case those resources are deleted along with the project.

<Heading
  as={"h1"}
  className={"openapi__heading"}
  children={"Delete a project"}
>
</Heading>

<MethodEndpoint
  method={"delete"}
  path={"/api/v1/projects/{project_id}"}
  context={"endpoint"}
>
  
</MethodEndpoint>

Deletes a project. Requires admin role. Fails with `409` if the project has any dependent resource, unless `force=true` is passed, in which case those resources are deleted along with the project.

Every project-scoped resource counts: agents, ai providers, model routes, tools, ingestion rules, actors, chats, conversations, sessions, generations, traces, datasets, evals, workflows, tasks, triggers, orchestrations and their runs, formations, memories, secrets, files, guardrails, quotas, usage history — and the activity, approval, exception and guardrail-evaluation records a project accumulates while it runs. Audit log entries are the one exception: they outlive the project, keeping their record with `project_id` cleared.

<Heading
  id={"request"}
  as={"h2"}
  className={"openapi-tabs__heading"}
>
  <Translate id="theme.openapi.request.title">Request</Translate>
</Heading>

<ParamsDetails
  {...require("./delete-project.ParamsDetails.json")}
>
  
</ParamsDetails>

<RequestSchema
  {...require("./delete-project.RequestSchema.json")}
>
  
</RequestSchema>

<StatusCodes
  {...require("./delete-project.StatusCodes.json")}
>
  
</StatusCodes>
