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

# Update Prompt

> Update an existing prompt

Updates an existing prompt in your workspace. Only include the fields you want to change.

## Base URL

```
https://api.langdock.com/prompts/v1/{promptId}
```

<Warning>
  **Dedicated deployments**

  Replace `api.langdock.com` with `<your-deployment-url>/api/public` in all requests.
</Warning>

## Required Scopes

This endpoint requires the `PROMPT_API` scope.

<Info>
  Requires creator access, workspace editor access, or group editor access on the prompt's folder.
</Info>

## Parameters

### Path Parameters

| Parameter  | Type   | Required | Description                   |
| ---------- | ------ | -------- | ----------------------------- |
| `promptId` | string | Yes      | UUID of the prompt to update. |

### Request Body

| Parameter             | Type           | Description                                                                                                         |
| --------------------- | -------------- | ------------------------------------------------------------------------------------------------------------------- |
| `title`               | string         | Prompt title. Minimum: 2 characters. Maximum: 100 characters.                                                       |
| `prompt`              | string         | Prompt content. Minimum: 2 characters. Maximum: 120000 characters.                                                  |
| `promptFolderId`      | string \| null | Folder UUID to assign, or `null` to remove the folder. Cannot be set while the prompt is shared with the workspace. |
| `sharedWithWorkspace` | boolean        | Share the prompt with the workspace. Requires `sharePrompts`. Cannot be `true` while the prompt is in a folder.     |

## Example

```javascript theme={null}
const axios = require("axios");

async function updatePrompt(promptId) {
  const response = await axios.patch(
    `https://api.langdock.com/prompts/v1/${promptId}`,
    {
      title: "Support Reply",
      prompt: "Write a concise customer reply. Include the next best action and the ticket ID."
    },
    {
      headers: {
        Authorization: "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
      }
    }
  );

  console.log("Updated prompt:", response.data.prompt.updatedAt);
}

updatePrompt("550e8400-e29b-41d4-a716-446655440000");
```

## Response Format

### Success Response (200 OK)

```typescript theme={null}
{
  prompt: {
    id: string;
    title: string;
    prompt: string;
    createdBy: string | null;
    promptFolderId: string | null;
    sharedWithWorkspace: boolean;
    createdAt: string | null;
    updatedAt: string | null;
  };
}
```

## Error Handling

| Status Code | Description                                                                                         |
| ----------- | --------------------------------------------------------------------------------------------------- |
| 400         | Invalid request body, missing update fields, or workspace sharing combined with a folder assignment |
| 401         | Invalid or missing API key                                                                          |
| 403         | Missing `PROMPT_API` scope, write access, or share permission                                       |
| 404         | Prompt or prompt folder not found                                                                   |
| 429         | Rate limit exceeded                                                                                 |
| 500         | Internal server error                                                                               |

<Info>
  Langdock intentionally blocks browser-origin requests to protect your API key and ensure your applications remain secure. For more information, please see our guide on [API Key Best Practices](/en/admin/ai-adoption-and-rollout/best-practices/api-key-best-practices).
</Info>


## OpenAPI

````yaml PATCH /prompts/v1/{promptId}
openapi: 3.0.0
info:
  title: Langdock API
  version: 3.0.0
servers:
  - url: https://api.langdock.com
    description: Production
security:
  - bearerAuth: []
paths:
  /prompts/v1/{promptId}:
    patch:
      tags:
        - Prompts
      summary: Update a prompt
      description: Updates an existing prompt in your workspace.
      operationId: updatePrompt
      parameters:
        - $ref: '#/components/parameters/PromptId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePromptRequest'
      responses:
        '200':
          description: Prompt updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PromptResponse'
        '400':
          description: Invalid request body
        '401':
          description: Invalid or missing API key
        '403':
          description: Missing required scope, write access, or share permission
        '404':
          description: Prompt or prompt folder not found
        '429':
          description: Rate limit exceeded
        '500':
          description: Internal server error
components:
  parameters:
    PromptId:
      name: promptId
      in: path
      required: true
      description: UUID of the prompt.
      schema:
        type: string
        format: uuid
  schemas:
    UpdatePromptRequest:
      type: object
      minProperties: 1
      additionalProperties: false
      properties:
        title:
          type: string
          minLength: 2
          maxLength: 100
          description: Prompt title.
        prompt:
          type: string
          minLength: 2
          maxLength: 120000
          description: Prompt content.
        promptFolderId:
          type: string
          format: uuid
          nullable: true
          description: Folder UUID to assign, or null to remove the folder.
        sharedWithWorkspace:
          type: boolean
          description: Share the prompt with the workspace.
    PromptResponse:
      type: object
      required:
        - prompt
      properties:
        prompt:
          $ref: '#/components/schemas/Prompt'
    Prompt:
      type: object
      required:
        - id
        - title
        - prompt
        - sharedWithWorkspace
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the prompt.
        title:
          type: string
          minLength: 2
          maxLength: 100
          description: Prompt title.
        prompt:
          type: string
          minLength: 2
          maxLength: 120000
          description: Prompt content.
        createdBy:
          type: string
          format: uuid
          nullable: true
          description: User ID of the prompt creator.
        promptFolderId:
          type: string
          format: uuid
          nullable: true
          description: Folder ID the prompt is assigned to.
        sharedWithWorkspace:
          type: boolean
          description: Whether the prompt is shared with the workspace.
        createdAt:
          type: string
          format: date-time
          nullable: true
          description: ISO 8601 timestamp for prompt creation.
        updatedAt:
          type: string
          format: date-time
          nullable: true
          description: ISO 8601 timestamp for the latest prompt update.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: API key as Bearer token. Format "Bearer YOUR_API_KEY"

````