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

# Actualitzar una programació cron

> Actualitza una programació cron existent per a un grup de workspaces. S'han de proporcionar tots els camps de la programació, ja que aquest endpoint implementa semàntica de reemplaç complet. El sistema valida que no existeixi una programació en conflicte (mateix tipus, hora i dia després de la conversió de zona horària), excloent la programació actual que s'està actualitzant. Per eliminar un dispositiu intermedi d'una programació START, omet el camp intermediate_device.



## OpenAPI

````yaml /ca/api-reference/openapi.ca-v1.json put /v1/organizations/{organization_id}/workspace-groups/{workspace_group_id}/schedules/{schedule_id}
openapi: 3.0.3
info:
  title: API Publica Portal
  version: 1.0.0
  description: API pública REST per al portal
servers:
  - url: https://api.flexxible.net
    description: Portal API (production)
security:
  - bearerAuth: []
tags: []
paths:
  /v1/organizations/{organization_id}/workspace-groups/{workspace_group_id}/schedules/{schedule_id}:
    put:
      tags:
        - Grups de Workspaces
      summary: Actualitzar una programació cron
      description: >-
        Actualitza una programació cron existent per a un grup de workspaces.
        S'han de proporcionar tots els camps de la programació, ja que aquest
        endpoint implementa semàntica de reemplaç complet. El sistema valida que
        no existeixi una programació en conflicte (mateix tipus, hora i dia
        després de la conversió de zona horària), excloent la programació actual
        que s'està actualitzant. Per eliminar un dispositiu intermedi d'una
        programació START, omet el camp intermediate_device.
      operationId: updateWorkspaceGroupSchedule
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            maxLength: 24
            pattern: ^[0-9a-f]{24}$
          description: El identificador únic de l'organització
          example: 507f1f77bcf86cd799439011
        - name: workspace_group_id
          in: path
          required: true
          schema:
            type: string
            maxLength: 24
            pattern: ^[0-9a-f]{24}$
          description: L'identificador únic del grup de workspaces
          example: 507f1f77bcf86cd799439020
        - name: schedule_id
          in: path
          required: true
          schema:
            type: string
            maxLength: 24
            pattern: ^[0-9a-f]{24}$
          description: L'identificador únic de la programació a actualitzar
          example: 507f1f77bcf86cd799439060
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateWorkspaceGroupScheduleRequestV1'
            examples:
              update-schedule-time:
                summary: Actualitzar programació per executar a una hora diferent
                value:
                  cron_expression: 0 9 * * 1-5
                  time_zone: Eastern Standard Time
                  type: start
              add-intermediate-device:
                summary: Afegir dispositiu intermedi a una programació START existent
                value:
                  cron_expression: 0 8 * * 1-5
                  time_zone: Eastern Standard Time
                  type: start
                  intermediate_device: 507f1f77bcf86cd799439050
              remove-intermediate-device:
                summary: Eliminar dispositiu intermedi de la programació START
                value:
                  cron_expression: 0 8 * * 1-5
                  time_zone: Eastern Standard Time
                  type: start
              change-schedule-type:
                summary: Canviar el tipus de programació de START a STOP
                value:
                  cron_expression: 0 18 * * 1-5
                  time_zone: UTC
                  type: stop
      responses:
        '200':
          description: >-
            Programació actualitzada correctament. La resposta conté el recurs
            actualitzat.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceGroupScheduleV1'
        '400':
          $ref: '#/components/responses/BadRequest'
          description: >-
            Sol·licitud incorrecta. Causes comunes: - Falten camps obligatoris
            (cron_expression, time_zone, type) - Format d'expressió cron no
            vàlid - Valor de zona horària no vàlid - Tipus de programació no
            vàlid (ha de ser START, STOP o RESTART) - Format d'ID d'espai de
            treball intermediate_device no vàlid
        '401':
          $ref: '#/components/responses/Unauthorized'
          description: No autoritzat - es requereix autenticació
        '404':
          $ref: '#/components/responses/NotFound'
          description: >-
            Grup d'espais de treball o programació no trobada, o no pertany a
            l'organització
        '409':
          $ref: '#/components/responses/Conflict'
          description: >-
            Conflicte - Ja existeix una programació amb el mateix tipus, hora i
            dia (després de la conversió de zona horària), excloent la
            programació actual que s'està actualitzant
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
          description: >-
            Entitat no processable. Causes comunes: - L'ID d'espai de treball
            intermediate_device no existeix o no pertany a l'organització
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    UpdateWorkspaceGroupScheduleRequestV1:
      type: object
      properties:
        cron_expression:
          type: string
          description: >-
            Expressió cron que defineix quan s'ha d'executar la programació.
            Format: minut hora dia-del-mes mes dia-de-la-setmana. Exemples: '0 8
            * * 1-5' (8 AM entre setmana), '0 0 * * 0' (mitjanit del diumenge),
            '30 14 * * *' (2:30 PM diàriament). Dia-de-la-setmana: 0=diumenge,
            1=dilluns, ..., 6=dissabte. Admet rangs (1-5), llistes (1,3,5) i
            comodins (*). Ha de ser un format d'expressió cron vàlid amb 5 camps
            separats per espais.
          example: 0 8 * * 1-5
        time_zone:
          type: string
          description: >-
            Zona horària per a l'execució de la programació. Admet
            identificadors IANA (per exemple, 'America/New_York') i Windows (per
            exemple, 'Pacific Standard Time').
          example: Eastern Standard Time
        type:
          type: string
          enum:
            - start
            - stop
            - restart
          description: >-
            Tipus d'operació d'energia a realitzar. START: Encén els Workspaces
            del grup. STOP: Apaga els Workspaces del grup. RESTART: Reinicia els
            Workspaces del grup.
          example: start
        intermediate_device:
          type: string
          maxLength: 24
          pattern: ^[0-9a-f]{24}$
          description: >-
            Opcional. L'identificador únic del Workspace de dispositiu
            intermedi. Si es proporciona, indica que s'ha d'utilitzar un
            dispositiu intermedi per a operacions de Wake-on-LAN. Només aplica a
            programacions START. S'utilitza per a accions de Wake-on-LAN en
            xarxes segures. El Workspace ha d'existir i pertànyer a
            l'organització. Per eliminar un dispositiu intermedi, omet aquest
            camp.
          example: 507f1f77bcf86cd799439050
      required:
        - cron_expression
        - time_zone
        - type
    WorkspaceGroupScheduleV1:
      type: object
      required:
        - id
        - cron_expression
        - time_zone
        - type
      properties:
        id:
          type: string
          pattern: ^[0-9a-f]{24}$
          description: L'identificador únic de la programació
          example: 507f1f77bcf86cd799439060
        cron_expression:
          type: string
          description: >-
            Expressió cron que defineix quan es executa la programació. Format:
            minut hora dia-del-mes mes dia-de-la-setmana.
          example: 0 8 * * 1-5
        time_zone:
          type: string
          description: >-
            Zona horària per a l'execució de la programació. Admet
            identificadors IANA (per exemple, 'America/New_York') i Windows (per
            exemple, 'Pacific Standard Time').
          example: Eastern Standard Time
        type:
          type: string
          enum:
            - start
            - stop
            - restart
          description: >-
            Tipus d'operació d'energia: START (encén), STOP (apaga), RESTART
            (reinicia Workspaces)
        intermediate_device:
          type: string
          pattern: ^[0-9a-f]{24}$
          nullable: true
          description: >-
            L'identificador únic del Workspace del dispositiu intermedi, si està
            configurat. S'utilitza per a accions de Wake on LAN en xarxes
            segures.
          example: 507f1f77bcf86cd799439050
        created_by:
          type: string
          pattern: ^[0-9a-f]{24}$
          nullable: true
          description: ID d'usuari que va crear la programació
          example: 507f1f77bcf86cd799439070
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
            code:
              type: string
            details:
              type: string
          required:
            - message
            - code
      required:
        - error
  responses:
    BadRequest:
      description: Sol·licitud incorrecta
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: No autoritzat
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: No trobat
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Conflict:
      description: Conflicte
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    UnprocessableEntity:
      description: Entitat no processable
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    TooManyRequests:
      description: Masses sol·licituds
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalServerError:
      description: Error intern del servidor
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````