Project Limits
By default, all verified domains are available to every project within your team. Project limits allow you to restrict a domain so that only specific projects can send emails from it.
When to Use Project Limits
Project limits are useful when you need to enforce boundaries between different parts of your organization:
| Use Case | Example |
|---|---|
| Multi-brand separation | Restrict mail.brand-a.com to only the Brand A project |
| Environment isolation | Prevent staging projects from accidentally using production domains |
| Security boundaries | Limit sensitive domains to specific applications |
If all your projects share the same domains, you don't need to configure project limits—the default unrestricted behavior works well for most teams.
How It Works
Domains can be in one of two states:
| State | Description |
|---|---|
| Unrestricted | Domain can be used by any project in your team (default) |
| Restricted | Domain can only be used by explicitly selected projects |
When a project attempts to send an email using a restricted domain it doesn't have access to, the API returns an error:
Code
Configuring Project Limits
You can configure which projects have access to a domain from the domain settings page.

Restricting a Domain
- Navigate to Domains in your dashboard
- Click on the domain you want to restrict
- In the project limits section, select the projects that should have access
- Save your changes
Removing Restrictions
To make a domain available to all projects again, simply remove all project selections. An empty selection means the domain is unrestricted and available to all projects in your team.
Managing via API
You can manage project limits programmatically using the Team API.
Restrict a Domain to Specific Projects
Remove All Restrictions
Pass an empty array to make the domain available to all projects:
Success Response:
Code
See the Team API reference for the domain project-limit endpoints.
Access Control
Domain access follows both the member's role and their project assignment:
- A domain is visible when it is associated with at least one project the member can access.
- Changing or deleting a domain requires the corresponding domain permission in the member's role.
- The member must also have access to every project associated with the domain. This prevents a change made through one project from affecting projects outside their scope.
- Owners have access to every project and every domain permission.
If a domain is shared with a project outside your project access, you can view it through an accessible project but cannot change or delete it.
Troubleshooting
Why can't I edit this domain?
Your role may not include the required domain permission, or the domain may be associated with a project outside your project access. Ask a team member with Manage members to review your assignment, or ask someone with access to every associated project to make the change.
How do I make a domain available to all projects again?
Remove all project selections in the dashboard, or via API, set project_ids to an empty array [].
Can I restrict a domain to zero projects?
No. An empty project list means the domain is unrestricted and available to all projects. To completely disable a domain, you would need to delete it instead.
Related
- Projects and Routes — Understand the team → project → route hierarchy
- Project access — Understand role permissions and project assignments
- Team API Introduction — Manage team resources programmatically