> ## Documentation Index
> Fetch the complete documentation index at: https://docs.heify.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Configurations

> Create and manage reusable configurations that define how audio is processed, summarized, and analyzed.

A **Configuration** is a reusable template that defines how the system processes an audio file: whether to generate an AI summary, which language to use, what custom vocabulary to apply, which data fields to extract from the transcript, and where to send webhook notifications on completion. Every transcription must be associated with a configuration.

For the full data model, see [Configuration](/core/configuration).

***

## Your configurations

The list view shows all your configurations with search, sort, and view controls. You can filter by **tag**, **configuration ID**, or **vocabulary words** in real time, toggle between a card grid and a table layout, and sort by creation date.

Each configuration displays **capability badges** at a glance:

| Badge          | What it means                          |
| -------------- | -------------------------------------- |
| **AI Summary** | Summary generation is enabled          |
| **Webhooks**   | At least one webhook URL is configured |
| **N field(s)** | Number of extraction fields defined    |
| **N word(s)**  | Number of custom vocabulary words      |

To delete multiple configurations at once, hover over any card or row to reveal its checkbox, select the items you want to remove, and click **Delete selection** in the action bar that appears.

***

## Creating a configuration

Click **New Configuration** to open the creation form.

### Tag *(required)*

A descriptive name for the configuration — for example `Customer Support`, `Sales Calls Q4`, or `Selection Interviews EN`. This name is shown throughout the platform.

<Warning>
  The tag **cannot be changed after creation**. Choose a meaningful name before saving.
</Warning>

### AI Summary

Toggle to enable automatic transcript summarization. Off by default.

When enabled, two additional options appear:

* **Summary Language** — output language for the summary. Default: auto-detected from the audio. Supports 60+ languages.
* **Custom Summary Instructions** — optional textarea (max 300 characters) with specific directives for the AI summarizer.

Seven preset templates are available to fill the instructions field instantly:

| Preset               | Best for                                                         |
| -------------------- | ---------------------------------------------------------------- |
| Selection interviews | Experience, strengths, weaknesses, hire/no-hire recommendation   |
| Meetings & minutes   | Attendees, topics, agreements, assigned tasks, next steps        |
| Customer follow-up   | Client status, issues, satisfaction, pending follow-up actions   |
| Sales                | Prospect needs, objections, value proposition, close probability |
| Team meetings        | Decisions, blockers, task assignments, next meeting date         |
| Training sessions    | Topics covered, key concepts, questions, areas to reinforce      |
| Custom               | Blank — write your own instructions                              |

<Note>
  Selecting a preset fills the textarea with a ready-to-edit prompt. Customize it before saving.
</Note>

### Analytics Language

Sets the output language for analysis reports (Configuration Analysis, Evaluator Analysis, Participant Analysis). Always enabled, regardless of the Summary toggle. Default: inferred from the audio.

### Custom Vocabulary

Type a word and press **Enter** to add it. Each word appears as a tag that can be removed individually. Use this for brand names, technical jargon, acronyms, or any term the transcription engine should recognize accurately.

Examples: `Kubernetes`, `OAuth2`, `GDPR`, `SaaS`, `B2B`.

### Webhook Notifications

Two independent, optional URLs:

| URL             | When it fires                                                      |
| --------------- | ------------------------------------------------------------------ |
| **Success URL** | A `POST` request is sent when transcription completes successfully |
| **Error URL**   | A `POST` request is sent when transcription fails                  |

<details>
  <summary>Example webhook payloads</summary>

  **Success**

  ```json theme={null}
  {
    "transcription_id": "f0e9d8c7-b6a5-4321-fedc-ba9876543210",
    "status": "COMPLETED",
    "configuration_id": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
    "duration": 125.5,
    "completed_at": "2025-10-03T10:02:15.456Z"
  }
  ```

  **Error**

  ```json theme={null}
  {
    "transcription_id": "f0e9d8c7-b6a5-4321-fedc-ba9876543210",
    "status": "FAILED",
    "error": {
      "message": "Unsupported audio format",
      "code": 400
    }
  }
  ```
</details>

### Extraction Fields

Define structured data the AI will extract from each transcript. Up to **20 fields** per configuration.

Each field requires:

* **Name** — machine-readable key, e.g. `customer_name`, `sentiment`
* **Type** — see [field types](#extraction-field-types) below
* **Description for the AI** *(required, max 1000 chars)* — natural-language instruction telling the AI what to extract

#### Quick Actions

The right panel offers 8 pre-built templates you can add with a single click:

| Template              | Field name                 | Type    | What it extracts                           |
| --------------------- | -------------------------- | ------- | ------------------------------------------ |
| Sentiment Analysis    | `sentiment_analysis`       | String  | `POSITIVE`, `NEGATIVE`, or `NEUTRAL`       |
| Classification        | `classification_tag`       | String  | A category from a list you define          |
| Quality Score         | `quality_score`            | Number  | 0–10 quality rating based on your criteria |
| Next Action           | `next_action`              | String  | Recommended next step from a defined list  |
| Feature Extraction    | `feature_extraction`       | Array   | Features present from a defined list       |
| Extract Specific Data | `specific_data_extraction` | String  | Any custom data point you specify          |
| Resolution            | `first_call_resolution`    | Boolean | Whether the customer's issue was resolved  |
| Customer Satisfaction | `customer_satisfaction`    | Boolean | Whether the customer was satisfied         |

<Warning>
  Quick Action descriptions contain **placeholders in brackets** — for example `[CATEGORY 1]`, `[YOUR CRITERIA]`. **Replace them with your actual values before saving**, or the AI will produce inconsistent results.
</Warning>

#### Writing good descriptions

<Tip>
  **Use bounded responses.** Define a fixed set of valid values so the AI's output is consistent and easy to process downstream.

  Good: `"Classify the sentiment. Must be one of: POSITIVE, NEGATIVE, or NEUTRAL."`
  Poor: `"What is the sentiment?"`
</Tip>

<Tip>
  **Provide context and examples.** The clearer your instructions, the more accurate the results.

  Good: `"Extract the customer's order number. Usually a 6–8 digit code starting with 'ORD-'. Examples: ORD-123456, ORD-78945."`
  Poor: `"Get the order number."`
</Tip>

***

## Extraction field types

| Type      | Use for                                    |
| --------- | ------------------------------------------ |
| `string`  | Free text, short answers, named categories |
| `number`  | Scores, counts, numeric ratings            |
| `boolean` | Yes/no, true/false outcomes                |
| `array`   | Lists of items, multiple selections        |
| `date`    | Dates and timestamps                       |
| `object`  | Nested structured data                     |

***

## Viewing and editing

Click any configuration in the list to open its detail view. It shows five sections: **General Information** (ID with copy button), **AI Summary & Analysis**, **Custom Vocabulary**, **Extraction Fields**, and **Webhooks** (URLs are hidden by default — click **Show URLs** to reveal them).

Click **Edit** to enter edit mode. You can update:

* AI Summary toggle, languages, and custom instructions
* Custom Vocabulary (add or remove words)
* Extraction Fields (edit descriptions, add new fields, remove existing ones)
* Webhook URLs

<Note>
  **Tag** is read-only in edit mode and cannot be changed after creation.
</Note>

Use the sticky **Save changes** bar at the bottom to confirm, or **Cancel** to discard all edits.

To delete a configuration, use the trash icon in the detail view header. **This cannot be undone.** Deleting a configuration does not affect transcriptions that were already processed with it.

***

## Cloning a configuration

Click the **Clone** button (copy icon, in the detail view header alongside Edit and Delete) to duplicate an existing configuration.

You are taken directly to the creation form with all fields pre-filled:

| Field                             | Pre-filled value                                                           |
| --------------------------------- | -------------------------------------------------------------------------- |
| **Tag**                           | Original tag + `(Copy)` suffix — truncated if over the 100-character limit |
| **AI Summary** toggle             | Copied from original                                                       |
| **Summary & Analytics Languages** | Copied from original                                                       |
| **Custom Summary Instructions**   | Copied from original — the `Custom` preset is automatically selected       |
| **Custom Vocabulary**             | All words copied                                                           |
| **Extraction Fields**             | All fields copied with their names, types, and descriptions                |
| **Webhooks**                      | Copied from original                                                       |

<Note>
  The clone is a new draft — nothing is saved until you click **Create Configuration**. Edit any field before saving, or save immediately to create an exact copy.
</Note>

***

<CardGroup cols={2}>
  <Card title="Configuration" icon="gear" href="/core/configuration">
    Full data model and field reference
  </Card>

  <Card title="Transcribe" icon="microphone" href="/sandbox/transcribe">
    Submit audio using a configuration
  </Card>
</CardGroup>
