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

# Bulk update translations

> Bulk upsert translations for a single language using merge semantics — only supplied keys are touched. Values equal to the language's default are removed from the database to keep storage clean (mirrors UI behavior).



## OpenAPI

````yaml put /api/v2/chatbots/{chatbotId}/translations/{language}
openapi: 3.0.1
info:
  title: LiveChatAI API v2
  description: >-
    LiveChatAI API v2 - Build powerful AI-powered customer support experiences.
    This API follows REST principles with predictable, resource-oriented URLs,
    JSON responses, and standard HTTP methods.
  version: 2.0.0
servers:
  - url: https://app.livechatai.com
    description: Production server
security:
  - bearerAuth: []
paths:
  /api/v2/chatbots/{chatbotId}/translations/{language}:
    put:
      tags:
        - Translations
      summary: Bulk update translations
      description: >-
        Bulk upsert translations for a single language using merge semantics —
        only supplied keys are touched. Values equal to the language's default
        are removed from the database to keep storage clean (mirrors UI
        behavior).
      parameters:
        - in: path
          name: chatbotId
          schema:
            type: string
            example: clx1234567890abcdef
          required: true
          description: Unique identifier of the chatbot
        - in: path
          name: language
          schema:
            type: string
            example: GERMAN
          required: true
          description: Language to update (predefined enum or custom uppercase identifier)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - translations
              properties:
                translations:
                  type: array
                  items:
                    type: object
                    required:
                      - key
                      - value
                    properties:
                      key:
                        type: string
                        example: newMessageToast
                      value:
                        type: string
                        example: Neue Nachricht!
      responses:
        '200':
          description: Translations updated successfully
        '400':
          description: Bad request
        '401':
          description: Unauthorized access
        '404':
          description: Chatbot not found
        '500':
          description: Internal server error occurred
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````