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

# Add a new article

> Add a new article to portal



## OpenAPI

````yaml https://raw.githubusercontent.com/chatwoot/chatwoot/develop/swagger/tag_groups/application_swagger.json post /api/v1/accounts/{account_id}/portals/{id}/articles
openapi: 3.1.0
info:
  title: Chatwoot
  description: This is the API documentation for Chatwoot server.
  version: 1.1.0
  termsOfService: https://www.chatwoot.com/terms-of-service/
  contact:
    email: hello@chatwoot.com
  license:
    name: MIT License
    url: https://opensource.org/licenses/MIT
servers:
  - url: https://app.chatwoot.com/
security: []
tags:
  - name: Account AgentBots
    description: Account-specific Agent Bots
  - name: Agents
    description: Agent management APIs
  - name: Canned Responses
    description: Pre-defined responses for common queries
  - name: Contacts
    description: Contact management APIs
  - name: Contact Labels
    description: Manage contact labels
  - name: Conversation Assignments
    description: Manage conversation assignments
  - name: Conversation Labels
    description: Manage conversation labels
  - name: Conversations
    description: Conversation management APIs
  - name: Custom Attributes
    description: Custom fields for contacts and conversations
  - name: Custom Filters
    description: Saved filters for conversations
  - name: Inboxes
    description: Communication channels setup
  - name: Integrations
    description: Third-party integrations
  - name: Labels
    description: Account label management APIs
  - name: Messages
    description: Message management APIs
  - name: Profile
    description: User profile APIs
  - name: Reports
    description: Analytics and reporting APIs
  - name: Teams
    description: Team management APIs
  - name: Webhooks
    description: Event notification webhooks
  - name: Automation Rule
    description: Workflow automation rules
  - name: Help Center
    description: Knowledge base management
paths:
  /api/v1/accounts/{account_id}/portals/{id}/articles:
    parameters:
      - $ref: '#/components/parameters/account_id'
      - $ref: '#/components/parameters/portal_id'
    post:
      tags:
        - Help Center
      summary: Add a new article
      description: Add a new article to portal
      operationId: add-new-article-to-account
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/article_create_update_payload'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/article'
        '403':
          description: Access denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bad_request_error'
      security:
        - userApiKey: []
components:
  parameters:
    account_id:
      in: path
      name: account_id
      schema:
        type: integer
      required: true
      description: The numeric ID of the account
    portal_id:
      in: path
      name: id
      schema:
        type: string
      required: true
      description: The slug identifier of the portal
  schemas:
    article_create_update_payload:
      type: object
      properties:
        title:
          type: string
          description: The title of the article
          example: Article Title
        slug:
          type: string
          description: The slug of the article
          example: article-title
        position:
          type: integer
          description: article position in category
          example: 1
        content:
          type: string
          description: The text content.
          example: This is the content of the article
        description:
          type: string
          description: The description of the article
          example: This is the description of the article
        category_id:
          type: integer
          description: The category id of the article
          example: 1
        author_id:
          type: integer
          description: The author agent id of the article
          example: 1
        associated_article_id:
          type: integer
          description: >-
            To associate similar articles to each other, e.g to provide the link
            for the reference.
          example: 2
        status:
          type: integer
          description: >-
            The status of the article. 0 for draft, 1 for published, 2 for
            archived
          example: 1
        locale:
          type: string
          description: The locale of the article
          example: en
        meta:
          type: object
          description: Use for search
          example:
            tags:
              - article_name
            title: article title
            description: article description
    article:
      type: object
      properties:
        id:
          type: integer
        content:
          type: string
          description: The text content.
        meta:
          type: object
        position:
          type: integer
        status:
          type: integer
          enum:
            - draft
            - published
            - archived
        title:
          type: string
        slug:
          type: string
        views:
          type: integer
        portal_id:
          type: integer
        account_id:
          type: integer
        author_id:
          type: integer
        category_id:
          type: integer
        folder_id:
          type: integer
        associated_article_id:
          type: integer
          description: >-
            To associate similar articles to each other, e.g to provide the link
            for the reference.
    bad_request_error:
      title: data
      type: object
      properties:
        description:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/request_error'
    request_error:
      type: object
      properties:
        field:
          type: string
        message:
          type: string
        code:
          type: string
  securitySchemes:
    userApiKey:
      type: apiKey
      in: header
      name: api_access_token
      description: >-
        This token can be obtained by visiting the profile page or via rails
        console. Provides access to  endpoints based on the user permissions
        levels. This token can be saved by an external system when user is
        created via API, to perform activities on behalf of the user.

````