Projects
Organize your Stamp0 inboxes with projects. Group inboxes by environment, feature, or team for better organization.
Projects help you organize inboxes within your organization. Use them to group related inboxes by environment, feature, or team.
What is a Project?
A project is a container for inboxes. Each project:
- Has a unique name and ID
- Contains multiple inboxes
- Can have scoped API keys
- Belongs to one organization
Creating a Project
Navigate to Projects
From your dashboard, click New Project
Enter Project Details
- Enter a project name (e.g., "Production Tests")
- Click Create
Project Organization Patterns
By Environment
Separate test data by environment:
Organization
├── Production Tests
│ └── Inboxes for production E2E tests
├── Staging Tests
│ └── Inboxes for staging E2E tests
└── Development
└── Inboxes for local developmentBy Feature
Organize by what you're testing:
Organization
├── Signup Flow
│ └── Inboxes for signup testing
├── Password Reset
│ └── Inboxes for password reset testing
└── Notifications
└── Inboxes for notification testingBy Team
Separate by who's using them:
Organization
├── Frontend Tests
│ └── Inboxes for frontend team
├── Backend Tests
│ └── Inboxes for backend team
└── QA Tests
└── Inboxes for QA teamManaging Projects
Viewing Projects
Your dashboard shows all projects in the current organization with:
- Project name
- Number of inboxes
- Creation date
Project Settings
Access project settings by:
- Navigate to the project
- Click Settings or the gear icon
Settings include:
- Name: Rename the project
- Project ID: Unique identifier for API calls
- Danger Zone: Delete the project
Deleting a Project
Warning: Deleting a project will delete all inboxes and emails within it. This cannot be undone.
To delete a project:
- Go to Project Settings
- Scroll to Danger Zone
- Click Delete Project
- Confirm deletion
Using Projects in Tests
Project ID
Every project has a unique ID (e.g., prj_abc123). Use this when creating inboxes via the SDK or API:
const inbox = await stamp0.createInbox({
projectId: 'prj_abc123',
});Environment Variables
Store your project ID in environment variables:
STAMP0_PROJECT_ID=prj_abc123const inbox = await stamp0.createInbox({
projectId: process.env.STAMP0_PROJECT_ID,
});Multiple Projects in CI
You can have different projects for different test suites:
# .github/workflows/e2e.yml
jobs:
test-signup:
env:
STAMP0_PROJECT_ID: prj_signup_tests
test-password-reset:
env:
STAMP0_PROJECT_ID: prj_password_testsBest Practices
Project Tips:
- Use clear, descriptive names
- Match project structure to your test organization
- Create separate projects for CI vs local development
- Don't create too many projects - group related tests
- Clean up unused projects periodically
Recommended Setup
For most teams, we recommend:
Organization: My Company
├── E2E Tests (for CI/CD)
├── Development (for local testing)
└── Manual QA (for QA team)This gives you separation without over-complicating things.