---
title: "create_text_source"
description: "Create a text source"
canonical: "https://poddub.com/docs/agents/tools/create_text_source"
last-updated: "2026-10-29"
---

# create_text_source

Create a text source

Pastes text into one of its person's live teams, up to 60,000 characters, as a source an episode can be made from. Any member can use it, in a team they belong to. It never uploads a file, and it stops when the organization's inbox is full for its plan.

## What the server says

The description an agent is given, word for word. This tool makes changes.

> Paste text into one of your live teams as a source an episode can be made from. Refused with source_cap_reached (with the cap and the count) when the organization's inbox is full, and plan_required without a plan. Uploads are the app's.

## Input

| Field      | Type | Required | What it takes                                 |
| ---------- | ---- | -------- | --------------------------------------------- |
| `teamId`   | text | yes      | not empty                                     |
| `title`    | text | yes      | 1 to 200 characters                           |
| `language` | text | yes      | matches `^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$` |
| `body`     | text | yes      | not empty                                     |

## Refusals

A refusal comes back as the tool's result, marked as an error, with the code and what explains it.

| Code                   | What it means                                                                                                 |
| ---------------------- | ------------------------------------------------------------------------------------------------------------- |
| `source_body_too_long` | The text is over 60,000 characters. The refusal says the limit and the length.                                |
| `team_not_found`       | The team is not one of the person's own teams.                                                                |
| `team_archived`        | The team is archived and takes no new work.                                                                   |
| `plan_required`        | The organization has no plan. An owner chooses one in the app.                                                |
| `source_cap_reached`   | The organization's inbox holds as many sources as its plan allows. The refusal carries the cap and the count. |

Every tool can also answer `rate_limited` and `not_a_member`: see [Limits](/docs/agents/limits) and [Keys](/docs/agents/keys).
