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

# Iniciar proceso de contenido

> Genera un artículo o plan de contenido en AthenaHQ. Obtiene URL de origen, envía el material a proveedores externos de IA y consume créditos de contenido. Obtén la aprobación del usuario antes de llamar. No publica en un sitio ni CMS. En modo draft, auto_approve es true por defecto; usa false para generar solo el plan y esperar a approve_brief. Consulta GET /api/v1/content/{content_id}/status para cada valor de content_ids. El modo slice devuelve slice_titles y content_ids vacío; lista los elementos generados con GET /api/v1/content/items. Para guardar un artículo ya escrito sin generar ni consumir créditos, usa la herramienta MCP add_content.



## OpenAPI

````yaml es/api-reference/openapi.json post /api/v1/content/generate
openapi: 3.1.0
info:
  title: API de AthenaHQ
  description: >-
    La API de AthenaHQ ofrece acceso programático para gestionar tus sitios web
    y consultas para optimizar el contenido con IA.
  version: 1.0.0
  contact:
    email: support@athenahq.ai
servers:
  - url: https://api.athenahq.ai
    description: Servidor de producción
security:
  - apiKey: []
tags:
  - name: Basics
    description: Operaciones principales de la API para gestionar sitios web y consultas
  - name: Metrics
    description: Endpoints de métricas y análisis para monitorizar la visibilidad en IA
  - name: Billing
    description: Endpoints de facturación y créditos para gestionar el uso
  - name: Team Management
    description: Endpoints para gestionar miembros del equipo e invitaciones
  - name: Groups
    description: Endpoints para gestionar grupos de sitios web
  - name: Content
    description: >-
      Endpoints para acceder a los datos del centro de contenidos: pestañas, URL
      monitorizadas y desglose de consultas por URL.
  - name: Pitch Workspace
    description: >-
      Endpoints para acceder a los informes del espacio de propuestas:
      ejecuciones de propuestas con alcance de organización, con competidores,
      consultas, atributos y métricas agregadas.
  - name: Knowledge Base
    description: >-
      Endpoints para leer la base de conocimientos de la marca: datos aprobados
      sobre la marca y los pilares que los organizan.
paths:
  /api/v1/content/generate:
    post:
      tags:
        - Content
      summary: Iniciar proceso de contenido
      description: >-
        Genera un artículo o plan de contenido en AthenaHQ. Obtiene URL de
        origen, envía el material a proveedores externos de IA y consume
        créditos de contenido. Obtén la aprobación del usuario antes de llamar.
        No publica en un sitio ni CMS. En modo draft, auto_approve es true por
        defecto; usa false para generar solo el plan y esperar a approve_brief.
        Consulta GET /api/v1/content/{content_id}/status para cada valor de
        content_ids. El modo slice devuelve slice_titles y content_ids vacío;
        lista los elementos generados con GET /api/v1/content/items. Para
        guardar un artículo ya escrito sin generar ni consumir créditos, usa la
        herramienta MCP add_content.
      operationId: content.pipeline.start
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                website_id:
                  type: string
                mode:
                  type: string
                  enum:
                    - draft
                    - snipe
                    - optimize
                    - slice
                  description: >-
                    draft: genera un plan de contenido y, opcionalmente, un
                    artículo a partir de consultas monitorizadas. snipe: redacta
                    un artículo a partir de una URL competidora. optimize:
                    mejora una página para búsquedas con IA. slice: convierte
                    una URL en varios artículos.
                title:
                  type: string
                  description: >-
                    Título del artículo. Obligatorio en los modos draft, snipe y
                    optimize.
                url:
                  type: string
                  description: >-
                    URL de la página de origen. Obligatoria en los modos snipe,
                    optimize y slice. Se admite una URL sin protocolo, como
                    example.com/article.
                prompt_ids:
                  type: array
                  items:
                    type: string
                  description: >-
                    UUID de consultas monitorizadas existentes, hasta 100.
                    Obligatorio y no vacío para draft; omítelo para slice. Usa
                    ID de la lista de consultas monitorizadas del sitio web;
                    nunca los inventes.
                custom_instructions:
                  type: string
                brand_kit_id:
                  type: string
                sheet_id:
                  anyOf:
                    - type: string
                    - type: 'null'
                use_content_memories:
                  type: boolean
                auto_approve:
                  type: boolean
                  description: >-
                    Solo en modo draft. Por defecto, true: continúa desde la
                    generación del plan de contenido hasta la del artículo. Usa
                    false para detenerse en generated_brief hasta llamar a
                    approve_brief.
                content_format_type:
                  type: string
                scrape_additional_links:
                  type: boolean
                kb_mode:
                  type: string
                  enum:
                    - auto
                    - manual
                    - none
                selected_topic_ids:
                  type: array
                  items:
                    type: string
                pinned_claim_ids:
                  type: array
                  items:
                    type: string
                use_kb_internal_links:
                  type: boolean
                fact_review:
                  type: object
                  description: >-
                    Selección revisada de datos de la vista previa. Cuando
                    aparece (modo draft con la base de conocimientos
                    habilitada), la generación utiliza exactamente estos pilares
                    y datos conservados en vez de calcular una selección;
                    pinned_claim_ids deja de influir. Nunca se usan afirmaciones
                    sin pilar: los ID conservados que correspondan a ellas se
                    descartan y se notifican en el resultado de selección de la
                    ejecución.
                  properties:
                    topic_ids:
                      type: array
                      items:
                        type: string
                    kept_claim_ids:
                      type: array
                      items:
                        type: string
                    excluded_claim_ids:
                      type: array
                      items:
                        type: string
                  required:
                    - topic_ids
                    - kept_claim_ids
                    - excluded_claim_ids
                rec_id:
                  type: string
                rec_kind:
                  type: string
                  enum:
                    - on_page_topic
                    - on_page_snipe
                pdf_file_name_or_r2_key:
                  type: string
              required:
                - website_id
                - mode
      responses:
        '202':
          description: Correcto
          content:
            application/json:
              schema:
                type: object
                properties:
                  content_ids:
                    type: array
                    items:
                      type: string
                  status:
                    enum:
                      - generating
                    type: string
                  slice_titles:
                    type: array
                    items:
                      type: string
                required:
                  - content_ids
                  - status
        '400':
          description: 'Solicitud incorrecta: la validación ha fallado'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '401':
          description: Sin autenticar
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '403':
          description: Acceso denegado
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '404':
          description: No encontrado
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '409':
          description: Conflicto
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '429':
          description: Límite de solicitudes alcanzado
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '500':
          description: Error interno
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
components:
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Clave de API para autenticarse. Puedes crear una
        [aquí](https://app.athenahq.ai/organization?tab=api).

````

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