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

# Update Monitored Topics

> Updates the name and description of one or more existing Monitored Topics. Topics not listed are left unchanged. Existing bindings to Topic campaigns are preserved. The owner cannot be changed. Returns one result per requested element, in request order: the saved Monitored Topic, or the reason that element was not applied (access, plan cap, not found). Other elements are unaffected.



## OpenAPI

````yaml https://api.goextrovert.com/client/v2/docs-json patch /client/v2/monitored-topics
openapi: 3.1.0
info:
  title: Extrovert Client API
  description: >-
    Public API for Extrovert platform integration. Use your API key for
    authentication.
  version: '1.0'
  contact: {}
servers:
  - url: https://api.goextrovert.com/
    description: API Server
security: []
tags: []
paths:
  /client/v2/monitored-topics:
    patch:
      tags:
        - Monitored Topics
      summary: Update Monitored Topics
      description: >-
        Updates the name and description of one or more existing Monitored
        Topics. Topics not listed are left unchanged. Existing bindings to Topic
        campaigns are preserved. The owner cannot be changed. Returns one result
        per requested element, in request order: the saved Monitored Topic, or
        the reason that element was not applied (access, plan cap, not found).
        Other elements are unaffected.
      operationId: RelevantPostTagClientApiController_update
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateRequestDto5'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateResponseDto5'
        '401':
          description: Invalid or missing API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientApiErrorResponseDto'
      security:
        - api-key: []
components:
  schemas:
    UpdateRequestDto5:
      type: object
      properties:
        items:
          type: array
          minItems: 1
          maxItems: 25
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
                description: ID of the Monitored Topic to update.
                examples:
                  - 8d256aa6-9b12-49a7-93ee-bf41634b5b60
              name:
                type: string
                minLength: 1
                description: >-
                  Topic name also feeds search-string generation with its
                  description; it is not only a display label.
                examples:
                  - AI agents
                  - B2B SaaS pricing
              description:
                type: string
                minLength: 1
                maxLength: 400
                description: >-
                  Matching scope and exclusions (up to 400 characters); used
                  with the name to generate Topic-campaign searches and classify
                  posts. Editing a bound topic regenerates its campaign's full
                  topic set before an atomic save.
            required:
              - id
              - name
              - description
          description: >-
            Elements to apply, 1 to 25. Each element is applied on its own and
            gets its own result, in the same order; a failed element does not
            affect the others.
      required:
        - items
    UpdateResponseDto5:
      type: object
      properties:
        status:
          type: string
          const: success
          description: Response status
        data:
          type: array
          items:
            type: object
            properties:
              index:
                type: integer
                minimum: 0
                maximum: 9007199254740991
                description: Position of the element in the request list, starting at 0.
              id:
                description: >-
                  Element ID. Present for every updated or deleted element, and
                  for a created element once it was saved.
                type: string
                format: uuid
              item:
                description: The element as saved. Absent when the element failed.
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                    description: Monitored Topic ID.
                    examples:
                      - 8d256aa6-9b12-49a7-93ee-bf41634b5b60
                  updatedAt:
                    type: string
                    description: >-
                      Timestamp of the most recent update to the Monitored
                      Topic.
                    examples:
                      - '2025-06-30T14:02:07.456Z'
                      - '2025-07-03T08:30:00.000Z'
                  createdAt:
                    type: string
                    description: Timestamp when the Monitored Topic was created.
                    examples:
                      - '2025-06-30T14:02:07.456Z'
                      - '2025-07-03T08:30:00.000Z'
                  name:
                    type: string
                    description: Short topic name (e.g. 'AI agents', 'B2B SaaS pricing').
                  description:
                    type: string
                    description: >-
                      Describe what makes a post qualify for this topic — what
                      it should be about, and what should be excluded. Used by
                      the AI matcher when scanning posts.
                  campaign:
                    description: >-
                      Topic campaign this Monitored Topic is bound to, if any -
                      only `id` and `name` are exposed. Omitted in JSON when the
                      topic is not bound to a campaign.
                    type: object
                    properties:
                      id:
                        type: string
                        format: uuid
                        description: Stable Extrovert entity ID.
                        examples:
                          - 8d256aa6-9b12-49a7-93ee-bf41634b5b60
                      name:
                        type: string
                        description: Customer-facing entity name.
                    required:
                      - id
                      - name
                required:
                  - id
                  - updatedAt
                  - createdAt
                  - name
                  - description
              error:
                description: >-
                  Why this element was not applied. Absent when the element
                  succeeded; the other elements are unaffected.
                type: object
                properties:
                  code:
                    type: string
                    description: >-
                      Status name of the failure, e.g. `NOT_FOUND`,
                      `PERMISSION_DENIED`, `INVALID_ARGUMENT`, `INTERNAL`.
                  message:
                    type: string
                    description: Human-readable reason this element was not applied.
                required:
                  - code
                  - message
            required:
              - index
          description: One result per requested Monitored Topic, in request order.
        message:
          type: string
          description: Success message
          examples:
            - Operation completed successfully
      required:
        - status
        - data
        - message
    ClientApiErrorResponseDto:
      type: object
      properties:
        status:
          type: string
          description: Response status
          example: error
          enum:
            - error
        data:
          type: object
          description: Response data
          example: null
          nullable: true
        message:
          type: string
          description: Error message
          example: An error occurred while processing the request
      required:
        - status
        - data
  securitySchemes:
    api-key:
      type: apiKey
      in: header
      name: X-API-Key
      description: API Key for authentication

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.