Skip to main content

TURN Server Projects

info

Only available in Business and Enterprise Plans

Turn Server Projects is a feature that allows you to logically group your TURN server credentials into distinct projects. Each project has its own API Key, quota settings, notifications, and usage tracking—enabling you to achieve multi-tenancy, secure credential management, and better control over your overall TURN usage.


Overview

  • Project Isolation: Create separate projects for different customers or products, and group TURN server credentials accordingly.
  • API Key Security: Each project receives its own unique API Key, which can be used to programmatically create and manage credentials within that specific project.
  • Quota Management: Optionally enforce quotas on a per-project basis to cap the data usage and apply custom actions (e.g., notify or disable credentials) when the quota is reached.
  • Notifications: Configure email or webhook alerts that trigger upon reaching quotas, helping you stay on top of usage.
  • Usage Tracking: Even if you set no quota (i.e., set quota to 0), you can still track usage by project for billing or reporting purposes.

Creating a Project

  1. Navigate to the Turn Servers page on the dashboard
  2. Click on the Add Project button.
  3. Enter your project details:
    • Project Name: A descriptive name (e.g., "Customer A", "Internal Product X").
    • Quota: Set the data usage limit (e.g., 500 GB), or specify 0 or keep it empty if you do not want to enforce a quota.
    • Notification Email(s) - Optional: You can add upto 10 email addresses, the notification email will be sent to these addresses when the quota is reached.
    • Webhook URL - Optional: You can specify a https URL, a HTTP POST request will be sent to that URL when the quota is reached.
    • Project Quota Exceeded Action: Specify the action when the project quota is exceeds. By default the action is disable which will disable all the turn credentials in the project. But you can also specify the action is notify which will only trigger notification email and webhook and will not disable the turn credentials or action as none which will do nothing and will also not send notification email or webhook.
  4. Save your project. You will see the newly created project with an assigned Project ID and API Key.

You can also use Create Project API API to create the project using the API.


Managing Credentials within a Project

Once a project is created, you can manage TURN credentials under that project:

  1. Select the Manage TURN Credentials button on the project card from the dashboard.
  2. Click the Add Credential button inside the project page.
  3. Optionally specify a label for the credential.

You can also use the Create Project Credential API and use the Project API Key to create the credentials inside the project.


Quota Settings

By default, a project’s quota is set to 0 (meaning unlimited). You can change the quota to any non-zero value to enforce data usage limits.

Actions on Quota Reach

When a project reaches its quota, you can choose one of the following actions:

  • notify: Sends notifications (email/webhook) but keeps the credentials active.
  • disable: Automatically disables all TURN credentials in the project, preventing any further usage until the quota is adjusted or reset.
  • none: Does nothing. Does not disable the credentials. Also does not send email notification or trigger webhook.

Example Scenarios

Quota (GB)ActionDescription
0No QuotaNo limit enforced, but usage is still tracked.
100Notify OnlySends alerts when usage is at or exceeds 100 GB, but credentials remain active.
200Disable CredentialsDisables all credentials when usage hits 200 GB. This project cannot use TURN until quota changes.

Notifications

You can configure one or more notifications for a project:

  • Email Notifications: Specify the email address(es) that should receive usage alerts.
  • Webhook Notifications: Provide a webhook URL that will receive JSON payloads when usage crosses the project’s quota threshold.

Configuring Notifications

  1. Edit the project you want to configure.
  2. Notification Emails - You can specify upto 10 notification emails separated by comma. Notification emails are sent at 80% quota and at 100% quota
  3. Webhook URL - Optional - You can specify a Webhook URL where https POST request is sent. The webhook is sent at 80% quota and at 100% quota.

When the usage quota is reached, an alert will be triggered, sending details about the project and the current usage.


Example Use Cases

  1. Multi-Tenant Environment
    If you have multiple customers each requiring TURN services, create a project for each customer and set an appropriate quota. For instance:

    • Customer A Project: Quota of 100 GB
    • Customer B Project: Quota of 200 GB
      Each customer’s usage is tracked separately, and notifications/actions can be set individually.
  2. Multiple Products
    A company with multiple products can create a project for each product. Each project has its own credentials, API Key, and quota settings, improving organization and security.

  3. Usage Tracking Without Quotas
    Set the project quota to 0 if you only want to track usage without imposing limits. This still gives you insights into how much data each project is consuming.


Summary

Turn Server Projects introduce a robust way to organize, secure, and manage your TURN server credentials. By leveraging per-project API Keys, optional quota settings, and notification rules, you can tailor usage limits and security policies for each tenant or product line—ensuring clear visibility into resource utilization and preventing unexpected overages.

Key Highlights:

  • Secure isolation through unique API Keys per project.
  • Customizable quotas to limit usage and trigger actions.
  • Multi-tenant support for customers or product lines.
  • Detailed usage metrics and notifications.