Skip to main content

Keys

About API Keys

In DIAL, API Keys play a crucial role in managing access and ensuring security:

  • API keys are used for authentication and access control.
  • They can be configured to be secured and can have specific roles and limits assigned to them.
  • API keys are essential for external applications accessing language models and applications deployed in DIAL.

Refer to Access & Cost Control to learn more.

Keys List

The Keys page provides a centralized view and management interface for all API keys in DIAL.

Keys Grid

TIP: Use the Columns selector to customize which columns are visible in the grid.

ColumnDefinition
NameA user-friendly identifier of a key (e.g. analytics-service-key). Names help you map keys to consumers or services in logs and configs.
DescriptionOptional notes explaining the key’s purpose, owner/team, or special instructions.
Key generation timeA key's creation timestamp. Useful for auditing and correlating the key's usage with system changes or deployments.
Expiration timeA key's expiration timestamp. Setting expirations enforces regular key rotation.
StatusThe current state of the key.
ProjectThe name of the project the key is associated with.
Project Contact PointThe contact person on a project.
SecuredA flag that identifies secured API keys.

Create Keys

  1. Click Create to invoke the Create Key modal.

  2. In the modal, specify the following parameters for the new key:

    FieldRequiredDescription & Use Cases
    NameYesA user-friendly identifier for the key.
    Use meaningful names to associate keys with projects, environments, or teams.
    DescriptionNoAn optional free-form text.
    Use to document the key’s purpose, owner team, or usage context.
    ProjectYesLogical project or department grouping (e.g. "AnalyticsTeam").
    Helps organize keys and apply cost/usage reporting by project.
    Key valueYesThe actual secret string used for authentication.
    Initially hidden; click 👁️ to reveal.
    Press Generate to have its value automatically generated.
    Validity PeriodYesA key's expiration time period. Use to enforce credential rotation and retirement.
  3. Once all required fields are filled, click Create. The dialog closes and the new key configuration screen is opened. A new key entry will appear immediately in the listing once created.

Key Configuration

Top Bar Controls
  • Delete: Permanently removes the selected key. All related entities (applications, models, routes) bound to it may fail.
  • JSON Editor (Toggle): Switch between the form-based UI and raw JSON view of the key’s configuration. Use JSON mode for copy-paste or advanced edits.

Keys Rotation

Use Rotation to refresh an existing API key.

  1. Click any API key to invoke the configuration screen
  2. Click Rotate.
  3. Paste or auto-generate a new secret in the Key value field.
  4. Pick the Validity period. The default expiration period is three months.
  5. Click Rotate to apply the changes.

Properties

In the Properties tab, you can view and manage all metadata and settings for a specific API key.

FieldRequiredDescription & Use Cases
NameYesA user-friendly identifier of a key.
Use meaningful names to tie keys back to projects, environments, or teams.
DescriptionNoA free-form text.
Use to document the key’s purpose, owner team, or usage context (e.g. "Used by QH Data Ingestion pipeline").
ProjectYesLogical project or department grouping (e.g. "QH", "AnalyticsTeam").
Helps organize keys and apply cost/usage reporting by project.
Project contact pointNoEmail of the responsible person or group.
Key valueYesThe actual secret string used for authentication.
Initially hidden - click 👁️ to reveal.
Press Copy to copy it to clipboard.
SecuredYesToggle to make the key a secured API key.

Roles

In the Roles tab, you can grant or revoke access to DIAL resources for API keys by associating them with roles. Only clients possessing this key and belonging to one of the assigned roles can invoke protected Models or Applications.

ColumnDescription
NameA unique identifier of the role.
DescriptionUser-friendly summary of the Role’s purpose.

Add

  1. Click + Add (top-right of the Roles Grid).
  2. Select one or more role in the modal window. Roles are defined in the Access Management → Roles section.
  3. Confirm to insert them into the table.

Remove

Use to stop associating API keys with roles. To delete a role, go to the Access Management → Roles section.

  1. Click the actions menu in the role's line.
  2. Choose Remove in the menu.

JSON Editor

For advanced scenarios of bulk updates, copy/paste between environments, or tweaking settings not exposed in the form UI—you can switch to the JSON Editor in any key's configuration page.

Switching to the JSON Editor
  1. Navigate to Access Management → Keys, then select the key you want to edit.
  2. Click the JSON Editor toggle (top-right). The UI reveals the raw JSON.

TIP: You can switch between UI and JSON only if there are no unsaved changes.