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

# Update agent

> Update an existing agent definition



## OpenAPI

````yaml https://api.sapt.ai/openapi.json put /projects/{projectId}/agents/{agentId}
openapi: 3.1.0
info:
  title: Sapt Platform API
  version: 1.0.0
  description: >-
    API for Sapt platform - project management, authentication, and email
    services
servers:
  - url: https://api.sapt.ai
    description: Production
  - url: http://localhost:8787
    description: Local development
security: []
tags:
  - name: Accounts
    description: >-
      The social accounts connected to a project. Start here — the `id` of an
      account is the `socialAccountId` that every posting, scheduling and
      analytics call takes.
  - name: Actions
  - name: Ads
  - name: Agents
  - name: Analytics
    description: >-
      Account- and post-level organic performance for connected Instagram and
      Facebook accounts.
  - name: Assets
  - name: Auth
  - name: CMS
  - name: CRM
  - name: Calendar
  - name: Comments
    description: >-
      Read, reply to, hide and delete comments on published Instagram and
      Facebook posts.
  - name: Content Calendar
    description: >-
      Create, schedule, update and publish organic posts, and stage the media
      they carry. Publishing a post whose status is `failed` retries it.
  - name: Contracts
  - name: Conversions
    description: >-
      Meta server-side Conversions API (CAPI): discover pixels, connect a pixel
      + CAPI token, and send deduped server-side conversions.
  - name: Dashboard Sidebar
  - name: Emails
  - name: Engagement
    description: >-
      Act as the Page or account on published posts: comment, like, unlike, and
      delete a published post.
  - name: Geo
  - name: Google Ads
  - name: Google Analytics
  - name: Google Business
  - name: Integrations
    description: >-
      Connect third-party providers (Meta, Gmail, Google Business Profile, …).
      List providers, mint OAuth connect links, and poll connection status.
  - name: Invitations
  - name: Memory
  - name: OAuth Clients
  - name: Project Roles
  - name: Project Templates
  - name: Projects
  - name: Schedules
  - name: Service Accounts
  - name: Socials
    description: >-
      Organic social: the connected accounts, the content calendar, media
      staging, publishing, comments and engagement across Instagram, Facebook,
      TikTok, YouTube and Google Business Profile.
  - name: Team
  - name: Users
  - name: Web Analytics
  - name: Workflows
paths:
  /projects/{projectId}/agents/{agentId}:
    put:
      tags:
        - Agents
      summary: Update agent
      description: Update an existing agent definition
      operationId: updateAgent
      parameters:
        - schema:
            type: string
            format: uuid
            example: 123e4567-e89b-12d3-a456-426614174000
          required: true
          name: projectId
          in: path
        - schema:
            type: string
            format: uuid
            example: 123e4567-e89b-12d3-a456-426614174001
          required: true
          name: agentId
          in: path
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                description:
                  type:
                    - string
                    - 'null'
                systemPrompt:
                  type: string
                memoryFiles:
                  type: array
                  items:
                    type: string
                toolCategories:
                  type: array
                  items:
                    type: string
                    enum:
                      - memory
                      - agents
                      - ads
                      - analytics
                      - socials
                      - cms
                      - email
                      - calendar
                      - support
                      - serp
                      - gbp
                      - feedback
                      - agent_schedules
                      - web
                      - onboarding
                      - navigation
                      - interaction
                mcpServers:
                  type:
                    - array
                    - 'null'
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        description: >-
                          Unique name within the agent definition, used as tool
                          name prefix
                      url:
                        type: string
                        format: uri
                        description: MCP server endpoint (Streamable HTTP)
                      headers:
                        type: object
                        additionalProperties:
                          type: string
                        description: Static headers, e.g. Authorization
                    required:
                      - name
                      - url
                maxSteps:
                  type: integer
                metadata:
                  type: object
                  additionalProperties: {}
      responses:
        '200':
          description: Updated agent definition
          content:
            application/json:
              schema:
                type: object
                properties:
                  agent:
                    type: object
                    properties:
                      id:
                        type: string
                      projectId:
                        type: string
                      name:
                        type: string
                      description:
                        type:
                          - string
                          - 'null'
                      builtIn:
                        type: boolean
                      systemPrompt:
                        type: string
                      memoryFiles:
                        type: array
                        items:
                          type: string
                      toolCategories:
                        type: array
                        items:
                          type: string
                          enum:
                            - memory
                            - agents
                            - ads
                            - analytics
                            - socials
                            - cms
                            - email
                            - calendar
                            - support
                            - serp
                            - gbp
                            - feedback
                            - agent_schedules
                            - web
                            - onboarding
                            - navigation
                            - interaction
                      mcpServers:
                        type:
                          - array
                          - 'null'
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                              description: >-
                                Unique name within the agent definition, used as
                                tool name prefix
                            url:
                              type: string
                              format: uri
                              description: MCP server endpoint (Streamable HTTP)
                            headers:
                              type: object
                              additionalProperties:
                                type: string
                              description: Static headers, e.g. Authorization
                          required:
                            - name
                            - url
                      access:
                        type: string
                        enum:
                          - project_member
                          - specific_roles
                          - public
                      allowedRoles:
                        type:
                          - array
                          - 'null'
                        items:
                          type: string
                      maxSteps:
                        type: integer
                      model:
                        type:
                          - string
                          - 'null'
                      metadata:
                        type: object
                        additionalProperties: {}
                      createdAt:
                        type: string
                        format: date-time
                      updatedAt:
                        type: string
                        format: date-time
                    required:
                      - id
                      - projectId
                      - name
                      - description
                      - builtIn
                      - systemPrompt
                      - memoryFiles
                      - toolCategories
                      - mcpServers
                      - access
                      - allowedRoles
                      - maxSteps
                      - model
                      - metadata
                      - createdAt
                      - updatedAt
                required:
                  - agent
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                  code:
                    type: string
                    description: Error code for programmatic handling
                required:
                  - message
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                  code:
                    type: string
                    description: Error code for programmatic handling
                required:
                  - message
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                  code:
                    type: string
                    description: Error code for programmatic handling
                required:
                  - message
        '404':
          description: Not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                  code:
                    type: string
                    description: Error code for programmatic handling
                required:
                  - message
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        JWT token obtained from /api/auth/token endpoint. Token is verified
        using JWKS and must include a valid user identifier.

````