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

# Prompts: Reusable AI Instructions in Prompt Bank

> Prompts are the core unit in Prompt Bank. Learn about prompt types (text, image, video), fields like modelId and aspectRatio, and how prompts connect to vaults.

A prompt is the fundamental building block in Prompt Bank. It captures the instruction you send to an AI model — the text description, configuration, and any reference media — so you can store it, reuse it, and trigger generations from it at any time. Rather than rewriting the same prompt every time you call a model, you save it once and reference it by ID across your workflows.

## Prompt types

Every prompt has a `promptType` that describes the kind of output it is intended to produce.

| Type    | When to use                                                                                                                                             |
| ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `text`  | General-purpose text instructions, brainstorming prompts, or any prompt not tied to a specific media model. Good for storing reusable LLM instructions. |
| `image` | Prompts targeted at image-generation models (e.g., Recraft, Flux). Supports `modelId`, `aspectRatio`, and `referenceMediaUrls` for visual context.      |
| `video` | Prompts for video-generation models. Works the same as image prompts but signals that the intended output is a video asset.                             |

Choosing the correct type keeps your vault organized and lets the API surface the right generation options when you use a prompt to queue a job.

## Key fields

| Field                | Type         | Description                                                                                                                                                                       |
| -------------------- | ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `title`              | string       | Human-readable name for the prompt. Required. Maximum 120 characters.                                                                                                             |
| `prompt`             | string       | The actual instruction text sent to the model. Required. Maximum 15,000 characters.                                                                                               |
| `promptType`         | string       | One of `image`, `text`, or `video`. Defaults to `text`.                                                                                                                           |
| `modelId`            | string       | The fal.ai model endpoint to use for generation (e.g., `fal-ai/recraft/v4.1/text-to-image`). Must match the pattern `fal-ai/…`. Required when `promptType` is `image` or `video`. |
| `aspectRatio`        | string       | Desired output dimensions, such as `16:9`, `1:1`, or `9:16`. Maximum 20 characters.                                                                                               |
| `platform`           | string       | Optional label for the target platform or use-case (e.g., `instagram`, `youtube`).                                                                                                |
| `imageUrl`           | string (URI) | A URL to the primary image associated with this prompt — typically the last generated output or a reference image.                                                                |
| `referenceMediaUrls` | array (URI)  | Up to 10 URLs pointing to reference images or videos that provide visual context for the model.                                                                                   |
| `vaultId`            | integer      | The numeric ID of the vault to associate this prompt with. Omit to save to your General vault.                                                                                    |

## Prompt object

When you read a prompt from the API, the returned object includes the following fields:

| Field        | Description                                                   |
| ------------ | ------------------------------------------------------------- |
| `id`         | Unique prompt identifier.                                     |
| `title`      | Human-readable name.                                          |
| `prompt`     | The instruction text.                                         |
| `promptType` | `image`, `text`, or `video`.                                  |
| `platform`   | Optional platform label.                                      |
| `status`     | Current status of the prompt (e.g., `active`).                |
| `images`     | Array of generated output images associated with this prompt. |
| `vaultIds`   | Array of vault IDs this prompt belongs to.                    |
| `createdAt`  | ISO 8601 timestamp of when the prompt was created.            |
| `updatedAt`  | ISO 8601 timestamp of the last update.                        |

## Prompt lifecycle

Working with a prompt follows a predictable three-step pattern:

1. **Create** — Send a `POST /api/v1/prompts` request with your instruction text, type, and any model configuration. The API returns a prompt object with a unique `id`.
2. **Save to a vault** — Prompts are saved into a vault automatically when you supply a `vaultId`, or land in your General vault by default. You can move them between vaults at any time.
3. **Use in a generation** — Reference the prompt's text and configuration when calling `POST /api/v1/generations`. The generation runs asynchronously and saves its output back to a vault.

## Example prompt object

The following shows a complete image prompt as returned by the API:

```json theme={null}
{
  "data": {
    "id": "pmt_01hxyz1234abcd5678efgh",
    "title": "Cyberpunk cityscape at dusk",
    "prompt": "A vast cyberpunk city at dusk, towering neon-lit skyscrapers reflected in rain-soaked streets, volumetric fog, cinematic composition, 8k detail",
    "promptType": "image",
    "platform": "artstation",
    "status": "active",
    "images": [
      "https://cdn.promptbank.club/outputs/01hxyz1234.webp"
    ],
    "vaultIds": [42],
    "createdAt": "2024-11-15T10:32:00Z",
    "updatedAt": "2024-11-15T10:32:00Z"
  },
  "error": null
}
```

## Next steps

See the [Manage Prompts guide](/guides/manage-prompts) for step-by-step instructions on creating, updating, filtering, and deleting prompts via the API.
