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

# Update Prompt Status

> Pauses or resumes a prompt. Requires the `configure` scope.

**Pausing** (`status: paused`) stops collection for the prompt and releases its variants from the organization's prompt pool. The prompt keeps its configuration and all of its collected history, and stays readable through `GET /{brand_id}/prompts?status=paused`.

**Resuming** (`status: active`) restores the exact deployment the prompt had when it was paused and re-checks the prompt pool, so it can return `429 quota_exceeded` when the organization no longer has room for the prompt's variants.

Both transitions are idempotent: a prompt already in the requested status returns `200` with the prompt, unchanged.

A transition the prompt's status does not allow (resuming an archived prompt, resuming one whose persona is archived) returns `409` with a `type` naming the reason. To archive a prompt, use `DELETE /{brand_id}/prompts/{prompt_id}` instead.



## OpenAPI

````yaml /api-reference/openapi.json patch /{brand_id}/prompts/{prompt_id}
openapi: 3.1.0
info:
  title: Scrunch Data API
  version: 0.1.0
servers:
  - url: https://api.scrunchai.com/v1
security: []
paths:
  /{brand_id}/prompts/{prompt_id}:
    patch:
      summary: Update Prompt Status
      description: >-
        Pauses or resumes a prompt. Requires the `configure` scope.


        **Pausing** (`status: paused`) stops collection for the prompt and
        releases its variants from the organization's prompt pool. The prompt
        keeps its configuration and all of its collected history, and stays
        readable through `GET /{brand_id}/prompts?status=paused`.


        **Resuming** (`status: active`) restores the exact deployment the prompt
        had when it was paused and re-checks the prompt pool, so it can return
        `429 quota_exceeded` when the organization no longer has room for the
        prompt's variants.


        Both transitions are idempotent: a prompt already in the requested
        status returns `200` with the prompt, unchanged.


        A transition the prompt's status does not allow (resuming an archived
        prompt, resuming one whose persona is archived) returns `409` with a
        `type` naming the reason. To archive a prompt, use `DELETE
        /{brand_id}/prompts/{prompt_id}` instead.
      operationId: patchPrompt
      parameters:
        - name: brand_id
          in: path
          required: true
          schema:
            type: integer
            description: The unique identifier for the brand
            title: Brand Id
          description: The unique identifier for the brand
        - name: prompt_id
          in: path
          required: true
          schema:
            type: integer
            description: The unique identifier for the prompt to update
            title: Prompt Id
          description: The unique identifier for the prompt to update
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/APIPromptPatchInput'
      responses:
        '200':
          description: >-
            The prompt after the transition. Also returned when the prompt was
            already in the requested status.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PromptListing'
        '404':
          description: >-
            Not found. `detail.type` is `prompt_not_found` when no prompt with
            this ID exists for this brand, or `brand_not_found` when the brand
            no longer exists.
        '409':
          description: >-
            The prompt's current state does not allow the requested transition.
            `detail.type` names the reason:


            - `is_archived` - archived prompts cannot be paused or resumed

            - `persona_archived` - the prompt's persona is archived;
            `detail.blocking_persona_ids` lists the personas to restore or
            reassign before resuming

            - `active_duplicate` - an active prompt with the same text, persona
            and country already exists

            - `no_active_variants` - the prompt has no active variants, so
            resuming it would collect nothing
        '422':
          description: >-
            Validation error. `status` accepts only `active` or `paused`, and no
            other field is accepted in the body.
        '429':
          description: >-
            The organization's prompt pool has no room for the prompt's
            variants. Returns the `quota_exceeded` error envelope.
        '503':
          description: >-
            The transition did not complete (`detail.type` is `pause_failed` or
            `resume_failed`). Retry the request.
      security:
        - HTTPBearer:
            - configure
components:
  schemas:
    APIPromptPatchInput:
      properties:
        status:
          type: string
          enum:
            - active
            - paused
          title: Status
          description: >-
            The lifecycle status to move the prompt to.


            - `paused` - stop collecting for this prompt and release its
            variants from the organization's prompt pool; its configuration and
            history are kept

            - `active` - resume collecting with the exact deployment the prompt
            had when it was paused


            `archived` is not accepted here - archive a prompt with `DELETE
            /{brand_id}/prompts/{prompt_id}`.
      additionalProperties: false
      type: object
      required:
        - status
      title: APIPromptPatchInput
      description: >-
        Body of the prompt PATCH. `status` is the only mutable field - a
        prompt's text, platforms and labels are fixed at create time.
    PromptListing:
      properties:
        id:
          type: integer
          title: Id
          description: Unique identifier for the prompt
        text:
          type: string
          title: Text
          description: The prompt text being tracked
        stage:
          type: string
          title: Stage
          description: >-
            The customer journey stage this prompt represents. Returned as the
            display name of the brand's active stage — one of the brand's
            default set (`Advice`, `Awareness`, `Evaluation`, `Comparison`,
            `Other` for intent brands; `Awareness`, `Consideration`,
            `Conversion`, `Loyalty`, `Other` for funnel brands) or a custom
            stage name.
        persona_id:
          anyOf:
            - type: integer
            - type: 'null'
          title: Persona Id
          description: ID of the associated persona, if any
        platforms:
          items:
            type: string
            enum:
              - chatgpt
              - claude
              - google_ai_overviews
              - perplexity
              - meta
              - google_ai_mode
              - google_gemini
              - copilot
              - grok
          type: array
          title: Platforms
          description: AI platforms this prompt is tracked on
        tags:
          items:
            type: string
          type: array
          title: Tags
          description: Custom tags assigned to this prompt
        topics:
          items:
            type: string
          type: array
          title: Topics
          description: Auto-detected or assigned topics for this prompt
        status:
          type: string
          enum:
            - active
            - paused
            - archived
          title: Status
          description: Lifecycle status of the prompt (`active`, `paused`, or `archived`)
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Timestamp when the prompt was created
      type: object
      required:
        - id
        - text
        - stage
        - persona_id
        - platforms
        - tags
        - topics
        - status
        - created_at
      title: PromptListing
      description: >-
        Represents a prompt being tracked for AI visibility, including its
        configuration and metadata.
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````

## Related topics

- [Scrunch MCP Feature Reference and Example Prompts](/mcp/tools.md)
- [Update Brand](/api-reference/update-brand.md)
- [Draft a Stakeholder Email Update](/mcp/workflows/stakeholder-email-update.md)
