Interceptor Deployments
Introduction
DIAL uses interceptors as a middleware that modifies incoming or outgoing requests to/from apps and AI models according to a specific logic enabling PII obfuscation, guardrails, safety checks, and beyond.
Refer to Interceptors to learn more.
Ways of adding interceptors in DIAL
Use Interceptors SDK to create custom interceptors.
- Use endpoints of your custom interceptors to add interceptors directly using the External Endpoint source type.
- Define and configure Interceptor Templates and use them as a source type to create interceptors.
- You can also deploy custom interceptors using Docker Images, create containers, which you can use as a source type to create interceptors.
Main Screen
In Interceptor Deployments, you can manage containers for interceptors within the DIAL system. You can create new containers based on existing images, start and stop running containers as needed, edit configuration settings, and view logs and events for troubleshooting.

Interceptor Containers Grid
| Column | Description |
|---|---|
| Display Name | Name of the interceptor container rendered in UI. |
| Description | Brief description of the interceptor container. |
| Interceptor Image | Docker image from which the interceptor container was created. |
| Status | Current status of the interceptor container (e.g., Running, Stopped). |
| ID | Unique identifier of the interceptor container. |
| Container URL | URL to access the interceptor container. |
| Maintainer | Maintainer of the interceptor container. |
| Create time | Date and time when the interceptor container was created. |
| Update time | Date and time when the interceptor container was last updated. |
| Actions | Buttons to manage the selected interceptor container: - Open in a new tab: click to open the container configuration screen in a new tab in your browser. - Duplicate: click to duplicate the interceptor container. - Stop/Run: click to start and stop a container. - Delete: click to remove the container. |
Create
On the main screen, you can add new interceptor containers based on existing images. When a new container is created, you can use it as a source type to create interceptors.
To create a new interceptor container
- Click the +Create button on the main screen to open the Creating Interceptor Container form.
- Select the desired image from the list and pick its installed version from the list (labeled with green indicator).
- Specify properties and click Finish to create the container.
- The screen with the container configuration is displayed. You can modify the configuration as needed, run, stop or delete the container.

Configuration Screen
Click any interceptor container from the main screen to open its configuration screen.
On the configuration screen, you can view and edit the selected interceptor container settings, start and stop the container, view logs and events, or delete the container.
Actions
In the header of the Configuration screen, you can find the following action buttons:
| Action | Description |
|---|---|
| Create Interceptor | Available for running containers. Click to create a new interceptor using this selected interceptor container. |
| Run/Stop | Click to start or stop the interceptor container. |
| Delete | Click to delete the interceptor container. |

To Create Interceptor
You can use a running interceptor container to create a new interceptor in DIAL. Once created, the interceptor appears in Entities/Interceptors and can be used by DIAL applications, tool and models or as a global interceptor.
- In the Configuration screen of the running interceptor container, click the Create Interceptor button in the header.
- In the Create Interceptor dialog, fill in the form fields:
- ID: Unique identifier for the interceptor.
- Display Name: Enter a name for the interceptor.
- Description: Provide a brief description of the interceptor.
- Click the Create button to submit the form and create the interceptor. Repeat these steps to create more interceptors if needed.

Properties
In the Properties tab, you can view and edit the selected interceptor container settings.
Fields Description
| Property | Required | Editable | Description |
|---|---|---|---|
| ID | - | No | Unique identifier for the interceptor container. |
| Type | - | No | Type of the interceptor container. |
| Interceptor Image | - | No | Docker image from which the interceptor container was created. |
| Creation Time | - | No | Date and time when the interceptor container was created. |
| Updated Time | - | No | Date and time when the interceptor container was last updated. |
| Status | - | No | Current status of the interceptor container (e.g., Running, Stopped). |
| URL | - | No | URL to access the interceptor container. |
| Display Name | Yes | Yes | Name of the interceptor container rendered in UI. |
| Description | No | Yes | Brief description of the interceptor container. |
| Maintainer | No | Yes | Maintainer of the interceptor container. |
| Endpoint Configuration | No | Yes | Configuration details for the endpoints exposed by the interceptor container. |
| Environment Variables | No | Yes | Environment variables set for the interceptor container. |
| Resources | No | Yes | Resource limits and requests for the interceptor container. |

Advanced users with technical expertise can work with the container properties in a JSON editor view mode. It is useful for advanced scenarios of bulk updates, copy/paste between environments, or tweaking settings not exposed on UI.

Execution log
In the Execution Log tab, you can view real-time logs generated by the selected interceptor container. This log provides insights into the container's operations, including any errors or important events that occur during its execution.
Events
In the Events tab, you can view a log of significant events related to the selected interceptor container, such as start and stop actions, errors, and other system messages.