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

# Update widget studio

> Update widget studio belonging to this Id



## OpenAPI

````yaml /automation.api.json put /widget-studio/{widgetId}
openapi: 3.0.3
info:
  title: OpenAPI definition for automation api
  version: 1.0.0
servers:
  - url: https://api.kameleoon.com
security: []
tags:
  - description: >-
      This is an object representing a Kameleoon account.You can retrieve it to
      view its properties, such as its current e-mail address or locale.With
      proper authorization, your application can read and update an account and
      profile settings.<aside class="notice"> Not all settings are exposed via
      the API. See the API reference for details. </aside>
    name: Account
  - description: >-
      Feature flag is used to  help our clients implement new features, test and
      deploy them viaour SDK. This service allows you to create and configure
      the feature flag which will be used in the source code of your feature.
    name: FeatureFlag
  - description: >
      You can use your account to set up multiple websites.This is helpful if
      you want to test your website and its mobile version or if you want to try
      Kameleoon on your site in a pre-production environment,It allows you to
      create different testing environments.
    name: Site
  - description: >-
      Custom data is an advanced tool that lets you target your customers in a
      unique way using data that is already available,such as user account
      information.
    name: CustomData
  - description: >-
      Experiment is an A/B test which can be targeted to a specific audience or
      any other audience. Kameleoon has several types of experiments: `Classic`,
      `Multivariate test (MVT)`, `Server-side` and the one that suits the best
      can be used to achieve the best results.
    name: Experiment
  - description: >-
      To measure the efficiency of an experiment or a personalization, it must
      be linked to one or several goals. All goals can be managed through
      Kameleoon interface or Automation API. There are variety of different
      goals you can choose from to better measure the results.
    name: Goal
  - description: This is an object representing an image
    name: Image
  - description: >-
      This is an object representing a key moment. Please note that `KeyMoment`
      has now been renamed to `Triggers`.
    name: KeyMoment
  - description: >-
      KeyPage allows you to target visitors that have visited a particular page,
      or multiple pages on your website.
    name: KeyPage
  - description: >
      Web personalization tailors the experience for each visitor to improve
      your conversion rate.

      The personalization object contains all vital information about a
      personalization as well as segments and variations used in it.
    name: Personalization
  - description: This is an object representing a projectThemeConfig
    name: ProjectThemeConfig
  - description: This is an object representing recommender block
    name: RecommenderBlock
  - description: >
      Referrer is an advanced tool that allows you to target visitors according
      to acquisition methods that lead them to your website.

      Kameleoon automatically creates 5 default channels: `Bing`, `Baidu`,
      `Google`, `Yahoo` and `Google Adwords`.
    name: Referrer
  - description: >-
      Segmenting allows you to effectively target visitors.You can create,
      modify, and duplicate segments using the Segment Builder tool in
      Kameleoon’s backend or through our Automation API.
    name: Segment
  - description: This is an object representing studio recommender block
    name: StudioRecommenderBlock
  - description: This is an object representing tag
    name: Tag
  - description: >-
      Represents an object aggregating the main information about an experiment
      result.
    name: Takeaway
  - description: This is an object representing a takeaway comment.
    name: TakeawayComment
  - description: >-
      TargetingRule is a system entity that combines segments (user groups) and
      triggers (activation conditions) to define precise targeting rules for
      experiments.
    name: TargetingRule
  - description: This is an object representing a theme
    name: Theme
  - description: >-
      A variation is a modified version of your webpage that can be edited for
      experiments or personalization.

      When you add a new variation, Kameleoon creates a copy of the original
      page from which you started.All changes will be saved in the variation,
      which will include all your edits when the test starts.
    name: Variation
  - description: This is an object representing a widget
    name: Widget
  - description: This is an object representing a widget studio
    name: WidgetStudio
  - description: This is an object representing widget studio template
    name: WidgetStudioTemplate
  - name: Audience
    description: >-
      Audience refers to statistical information regarding the number of visits,
      conversions, and other metrics related to a specific segment. Gaining
      insights into your website's audience is essential for effectively
      adjusting segments.
  - name: Data
    description: >
      Web personalization involves offering visitors a tailored experience to
      optimize your conversion rate.

      Personalization object contains information about a personalization, as
      well as the segments and variations used in it.
  - name: Raw Export
    description: >-
      Start a raw data exportation for experiment or personalization, which will
      be sent to the given emails.
paths:
  /widget-studio/{widgetId}:
    put:
      tags:
        - WidgetStudio
      summary: Update widget studio
      description: Update widget studio belonging to this Id
      operationId: update-widget-studio
      parameters:
        - description: The ID of the widget studio object
          example: 100000
          in: path
          name: widgetId
          required: true
          schema:
            type: integer
            format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WidgetStudio'
        required: true
      responses:
        '200':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/WidgetStudio'
          description: OK
        '400':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ExternalResponseObject'
          description: Bad Request
        '401':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ExternalResponseObject'
          description: Unauthorized
        '403':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ExternalResponseObject'
          description: Forbidden
        '404':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ExternalResponseObject'
          description: Not Found
        '422':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ExternalResponseObject'
          description: Unprocessable Entity
        '423':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ExternalResponseObject'
          description: Locked
        '429':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ExternalResponseObject'
          description: Too Many Requests
        '500':
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ExternalResponseObject'
          description: Internal Server Error
      security:
        - bearerAuth: []
components:
  schemas:
    WidgetStudio:
      type: object
      properties:
        dateCreated:
          type: string
          description: Date the widget studio object was created.
          format: date-time
          readOnly: true
        dateModified:
          type: string
          description: Date the widget studio object was last modified.
          format: date-time
          readOnly: true
        elements:
          type: array
          description: List of element types used in the widget studio.
          items:
            type: string
            description: List of element types used in the widget studio.
            enum:
              - BOX
              - BUTTON
              - BUTTON_V2
              - CHECKBOX
              - CLOSE
              - COPY
              - COUNTDOWN
              - COUNTDOWN_V2
              - COUNTDOWN_PROGRESS_BAR
              - COUNTDOWN_V2_PROGRESS_BAR
              - DATE
              - FORM_ERROR_MESSAGE
              - GROUP
              - HEADING
              - HIDDEN_INPUT
              - HTML
              - IFRAME
              - IMAGE
              - INPUT
              - LINK
              - SCROLLING_TEXT
              - MULTI_STEP_FORM
              - PRODUCT_RECO
              - PROGRESS_BAR
              - RADIO_BUTTON
              - SELECT
              - SHAPE
              - SLIDER
              - STEP_PROGRESS_BAR
              - TEXT
              - TEXTAREA
              - TIME
              - TOOLTIP
              - TOGGLE
              - VIDEO
              - QR_CODE
              - RANGE_INPUT
              - SPIN_WHEEL
              - SCALE
              - SCRATCH_CARD
              - NPS
              - MULTI_CHOICE
              - SHORT_TEXT
              - LONG_TEXT
        eventActions:
          type: array
          description: >-
            List of event actions that can be triggered within the widget
            studio.
          items:
            type: string
            description: >-
              List of event actions that can be triggered within the widget
              studio.
            enum:
              - SET_LOCAL_STORAGE
              - SET_SESSION_STORAGE
              - SET_COOKIES
              - SHOW_ELEMENT
              - HIDE_ELEMENT
              - SET_STEP
              - CLICK_ON_ELEMENT
              - FORM_DISABLE
              - FORM_ENABLE
              - JAVASCRIPT
              - PROCESS_CONVERSION
              - CANCEL_CONVERSION
              - SET_CUSTOM_DATA
              - TRIGGER_EVENT
              - SET_PROGRESS
              - SEND_DATA
              - RUN_ROTATION_SPIN_WHEEL
              - SET_LOCALE
              - URL_REDIRECT
        eventConditions:
          type: array
          description: List of event conditions that determine widget studio behavior.
          items:
            type: string
            description: List of event conditions that determine widget studio behavior.
            enum:
              - BEFORE_DISPLAY
              - AFTER_DISPLAY
              - ON_COUNTDOWN_END
              - IS_MOBILE
              - IS_NOT_MOBILE
              - IS_TABLET
              - IS_NOT_TABLET
              - IS_DESKTOP
              - IS_NOT_DESKTOP
              - FORM_ITEM_VALUE
              - BY_CUSTOM_DATA
              - ON_CLICK
              - ON_SUCCESS
              - ON_ERROR
              - REVEALED_SCRATCH_CARD
              - ON_SPIN_WHEEL_TURNED
              - WIN_SLICE_VALUE
              - ON_TIMER_END
              - VISITOR_BROWSER_LANGUAGE
              - URL_CONTAINS
              - URL_REGEX
              - ON_VIDEO_END
        fonts:
          type: array
          description: List of custom fonts used within the widget studio.
          items:
            $ref: '#/components/schemas/WidgetFont1'
        isLegacy:
          type: boolean
          description: 'Indicate if the widget is part of a legacy system '
        screens:
          type: array
          description: List of screens that are part of this widget studio configuration.
          items:
            $ref: '#/components/schemas/Screen'
        translation:
          $ref: '#/components/schemas/Translation'
        version:
          type: number
          description: Version of the widget, precision = 5, scale = 2.
          format: double
        widgetEditorTemplate:
          type: string
          description: >-
            Serialized JSON representation of the widget configuration used in
            the editor.
        widgetId:
          type: integer
          description: Id of the widget.
          format: int64
          readOnly: true
      description: >-
        Represents the Widget Studio entity containing metadata and
        configurations.
    ExternalResponseObject:
      type: object
      properties:
        code:
          type: string
        impersonator:
          type: string
        message:
          type: string
        name:
          type: string
        status:
          type: string
          enum:
            - SUCCESS
            - ERROR
        sub:
          type: string
        time:
          type: integer
          format: int64
        timestamp:
          type: string
          format: date-time
    WidgetFont1:
      type: object
      properties:
        fontFamily:
          type: string
        fontSrc:
          type: string
        fontWeights:
          type: array
          items:
            type: string
        id:
          type: string
        importSrc:
          type: string
      description: List of custom fonts used within the widget studio.
    Screen:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        templateName:
          type: string
      description: List of screens that are part of this widget studio configuration.
    Translation:
      type: object
      properties:
        defaultLanguageId:
          type: string
        enabled:
          type: boolean
        languages:
          type: array
          items:
            $ref: '#/components/schemas/Language'
      description: Translation settings for the widget studio.
    Language:
      type: object
      properties:
        IID:
          type: string
        code:
          type: string
        name:
          type: string
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http

````