---
title: "Import interviews"
description: "Bring interview transcripts and recordings into Deck, and confirm that Deck turned each one into insights."
url: "/docs/agents/workflows/import-interviews"
---

This page is an agent-readable workflow for Deck. Humans can follow along. Coding agents should treat the steps as the source of truth.

# Import interviews — agent workflow

* **Use it when:** the user says "upload these interview transcripts", "add our user research calls to Deck" or "get our customer calls into Deck".
* **Outcome:** each interview is in Deck with the status `COMPLETE`, and the user has Deck's insights and themes for each one.
* **Needs:** Deck MCP and the Deck web app. The user uploads in Manage → User Interviews, because no MCP tool imports feedback. Interview processing uses credits. Gong and Notion need an organization admin to connect them.

## 1. Probe Deck MCP

Call `get_user_context`. This must be a real tool call.

* 401 Unauthorized: tell the user to connect Deck MCP in this client (Settings → Connections). Stop.
* No Deck tools: fetch and follow [https://docs.getdeck.io/docs/agents/getting-started/prompts/ai-pm.md](https://docs.getdeck.io/docs/agents/getting-started/prompts/ai-pm.md). Stop this workflow until the tools work.
* More than one Deck organization: call `select_organization`, ask which one to use, and pass its `org_id` on every later call.

## 2. Pick the path

Ask the user what they have. Then pick one path:

| The user has                  | Path                                                                                                                                              |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| Video or audio recordings     | Manage → User Interviews → **Add Interview** → **Interview Video**. MP4, MOV, AVI, WEBM, WMV, 3GP, MP3, WAV, M4A, WEBA or OGG, up to 500 MB each. |
| Transcript files or text      | Manage → User Interviews → **Add Interview** → **Interview Transcript**. A `.vtt`, `.txt` or `.docx` file, or pasted text.                        |
| Many transcripts in one table | A CSV upload of the type User Interview. `transcript` is required. See [CSV Import](/docs/features/csv-import).                                   |
| Sales calls in Gong           | The Gong integration. Follow [Connect feedback stack](/docs/agents/workflows/connect-feedback-stack).                                             |
| Interview notes in Notion     | The Notion integration, then Manage → Notion. Follow [Connect feedback stack](/docs/agents/workflows/connect-feedback-stack).                     |

See [User Interviews](/docs/feedback-methods/user-interviews) and [Transcript Upload](/docs/feedback-methods/user-interviews/transcript-upload).

## 3. Check what Deck already has

Call `list_sources` with `content_type: "USER_INTERVIEW"` and `query` set to a participant name or a topic. Do not upload an interview that Deck already has. For a large batch, for example more than 10 interviews, follow [Credits readiness check](/docs/agents/workflows/credits-readiness-check) first.

## 4. Prepare each transcript

Fetch [https://docs.getdeck.io/interview-upload-schema.md](https://docs.getdeck.io/interview-upload-schema.md) and follow it. In short:

* Write one speaker turn on each line, in the form `Speaker Name: spoken text`.
* Keep the participant's words and meaning. Do not summarize, classify or add insights.
* Remove timestamps, join notices and recording disclaimers that nobody said.
* Keep the speaker labels stable. When a name is not known, use `Interviewer` and `Participant`.
* The transcript must have at least 100 words and 10 non-empty lines, and at most 50,000 words. When it is too short, tell the user. Do not add text.
* Give the metadata for the Interview Details step: Interview Name, Interview Date and User Email.

## 5. Hand off the upload

1. Call `get_platform_links` with `resources: [{ resource_type: "interview" }]` to get the link to the interviews list.
2. Give the user the link, the transcript and the metadata for each interview.
3. Tell the user to paste only the transcript into the transcript input, and to put the metadata in Interview Details. The user can pick a segment there too.

Wait until the user says that the upload is submitted.

## 6. Track processing

1. Call `list_sources` with `content_type: "USER_INTERVIEW"`. The newest sources come first. Collect the IDs of the new interviews.
2. Call `list_sources` with only `feedback_ids` (up to 50). Read the status, the failure reason and the insight count of each interview.
3. While an interview is active, wait about 10 seconds and check again. A transcript takes about 2 minutes and a recording about 5 minutes. Stop after 5 checks and tell the user that processing continues in the background.
4. `CREDIT_BLOCKED`: follow [Credits readiness check](/docs/agents/workflows/credits-readiness-check).
5. `FAILED`: give the user Deck's failure reason. Fix the transcript and upload it again.

## 7. Review the results

For each interview, call `read_transcript` with its `feedback_id`. Read the insights, their themes and where each quote is in the transcript. Give the user a short list for each interview: Deck's insight count, the top themes and the `deck_url`.

A large batch can add new themes. To clean them up, follow [Review the theme taxonomy](/docs/agents/workflows/taxonomy-review).

## 8. Set segments (optional)

When the user wants the interviews in a customer segment and did not pick one in the wizard:

1. Call `explore_segments` to get the segment IDs.
2. Show the plan: each interview name and the segments it gets. The call replaces the manual segments of every insight from that interview.
3. After the user says yes, call `set_feedback_source_segments` with the `feedback_id` and the `segment_ids`.

## Rules

* No MCP tool uploads an interview. The user uploads it in the Deck web app.
* Never change what a participant said. Never pad a short transcript.
* Transcripts hold customer conversations. Do not send them anywhere other than Deck.
* Quote Deck's numbers. Do not compute your own.
* Show the plan and get a yes before you call write tools. In this workflow, the only write tool is `set_feedback_source_segments`.

## Done when

* Each interview has the status `COMPLETE`, or the user knows Deck's failure reason and the fix.
* The user has Deck's insight count, top themes and link for each interview.

---

[View full sitemap](/docs/sitemap)
