-
Notifications
You must be signed in to change notification settings - Fork 0
Projects
Projects are the observability namespace within an organization. API keys, traces, prompts, guardrails, vault secrets, and evaluations are all scoped to a specific project.
Projects let you separate different applications, environments, or teams within the same organization:
Organization: "Acme AI"
├── Project: "Customer Support Bot" ← production chatbot traces
├── Project: "Internal Research Tool" ← research experiments
└── Project: "Data Pipeline" ← batch processing traces
Each project has its own API keys, prompts, guardrails, and vault secrets — completely isolated from other projects.
- Sign in and go to Settings → Organizations
- Select your organization
- Click New Project
- Enter a name and optional description
- Click Create
Only organization admins can create new projects. Members can view and use existing projects they have access to.
When you create an API key, you select which organization and project it belongs to. All data sent via that key is automatically attributed to that project:
from tmam import init
This key was generated for "Customer Support Bot" project
init(
url="http://localhost:5050/api/sdk",
public_key="pk-tmam-xxxxxxxx",
secrect_key="sk-tmam-xxxxxxxx",
application_name="support-bot",
environment="production",
)
All traces go to "Customer Support Bot" project
Projects can be transferred between users within the same organization. This is useful when ownership changes or teams reorganize.
From the API, the ProjectTransferBody accepts a target user ID. Contact your org admin to initiate a project transfer.
| Action | Required Access |
|---|---|
| Create project | Org admin |
| Delete project | Org admin or project owner |
| View project data | Any org member |
| Create API keys for project | Org admin |
| Create prompts/guardrails | Org admin |
| Run evaluations | Any org member |
A common pattern is to use separate API keys (and optionally separate projects) per environment:
Option A: Same project, different environment tag
# Production
init(..., environment="production")
Staging
init(..., environment="staging")
Filter by environment in the dashboard analytics and traces views.
Option B: Separate projects per environment
Project: "Support Bot - Production"
Project: "Support Bot - Staging"
Use separate API keys. Gives complete data isolation between environments.