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

# Update article

> Partial update. Provide only fields you want to change, plus the `id`.



## OpenAPI

````yaml /api-reference/ai-cms/openapi.json put /articles/update
openapi: 3.1.0
info:
  title: Blog API
  version: 1.0.0
servers:
  - url: https://api.octaviatech.app/cms
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: Tags
    description: Tag management endpoints
paths:
  /articles/update:
    put:
      tags:
        - Articles
      summary: Update article
      description: Partial update. Provide only fields you want to change, plus the `id`.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
                - id
              properties:
                id:
                  type: string
                  pattern: ^[a-fA-F0-9]{24}$
                  example: '{{objectId}}'
                mainTitle:
                  type: object
                  additionalProperties: false
                  properties:
                    en:
                      type: string
                    es:
                      type: string
                title2:
                  type: object
                  additionalProperties: false
                  properties:
                    en:
                      type: string
                    es:
                      type: string
                title3:
                  type: object
                  additionalProperties: false
                  properties:
                    en:
                      type: string
                    es:
                      type: string
                slug:
                  type: string
                summary:
                  type: object
                  additionalProperties: false
                  properties:
                    en:
                      type: string
                    es:
                      type: string
                content:
                  type: object
                  additionalProperties: false
                  properties:
                    en:
                      type: string
                      description: HTML string
                    es:
                      type: string
                      description: HTML string
                thumbnail:
                  type: string
                  format: uri
                tags:
                  type: array
                  items:
                    type: string
                category:
                  type: array
                  items:
                    type: string
                    pattern: ^[a-fA-F0-9]{24}$
                subCategory:
                  type: array
                  items:
                    type: string
                    pattern: ^[a-fA-F0-9]{24}$
                author:
                  type: string
                  pattern: ^[a-fA-F0-9]{24}$
                gallery:
                  type: array
                  items:
                    type: string
                    format: uri
                publishDate:
                  type: string
                  format: date-time
                isPublished:
                  type: boolean
                isPrivate:
                  type: boolean
            examples:
              Update (partial):
                value:
                  id: '{{objectId}}'
                  mainTitle:
                    en: Hello World (updated)
                    es: Hola Mundo (actualizado)
                  tags:
                    - news
                    - ai
                    - ml
      responses:
        '200':
          description: Updated
          content:
            application/json:
              example:
                success: true
                statusCode: 200
                message: Article updated successfully
                data:
                  article:
                    id: '{{objectId}}'
        '400':
          description: Bad request (missing `id`)
          content:
            application/json:
              example:
                success: false
                statusCode: 400
                message: Article id is required
                data: null
        '401':
          description: Unauthorized
          content:
            application/json:
              example:
                success: false
                statusCode: 401
                message: Unauthorized
                data: null
        '403':
          description: Forbidden
          content:
            application/json:
              example:
                success: false
                statusCode: 403
                message: Forbidden
                data: null
        '404':
          description: Not found
          content:
            application/json:
              example:
                success: false
                statusCode: 404
                message: Article not found
                data: null
        '500':
          description: Server error
          content:
            application/json:
              example:
                success: false
                statusCode: 500
                message: Internal server error
                data: null
      security:
        - ApiKeyAuth: []
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````