This guide is for teams that want to create Confident AI projects programmatically instead of creating them manually in the platform UI. It is especially useful for internal agent-building platforms, multi-tenant products, and proofs of concept where each agent (or tenant or customer) should have its own isolated Confident AI project.
For example, imagine an enterprise platform where every user builds their own agents. Each agent should get its own Confident AI project so its traces and evaluations stay isolated from every other agent on the platform.
In this guide, you will:
By the end, your platform will be able to provision an isolated Confident AI project per agent on demand and send each agent’s traces, datasets, and evaluations to the right workspace.
The Admin SDK is available in both Python and TypeScript through confidentai. You also need deepeval to route traces into each project.
You need an Organization API Key before you start. Retrieve yours here.
Set CONFIDENT_ORG_API_KEY to your Organization API Key. The Admin SDK reads this variable by default when you create a client.
Create a project for each application. The projects.create(...) call returns the new project and its first Project API Key. Store both values with that application so traces can be routed to the same project later.
The storage helpers in this example represent your own database or persistence layer.
To grant project access after creation, invite members with project.invitations.create(...) and assign a role from the same Admin SDK client.
The Project API Key determines which project receives a trace. To keep applications isolated, set the key on the current trace inside the observed function.
Create a project for an application, execute the application, and confirm that the trace appears in the correct project.
Open the Observatory and switch to the support-bot project. The trace appears in that project, isolated from every other application.
Done ✅. The workflow now creates a dedicated project per application and routes traces using a single Organization API Key.
Now that each tenant or application can route traces to its own project, use these sections to extend the workflow:
Manage the projects your application creates, including updates and cleanup.
Add users to the projects you create and assign the right project-level roles.
Customize the traces you route by setting span types, metadata, tags, and other trace attributes.
Run evaluations automatically as traces arrive in each isolated project.