> ## 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.

# Atualizar uma programação cron

> Atualiza uma programação cron existente para um grupo de espaços de trabalho. Devem ser fornecidos todos os campos da programação, pois este endpoint implementa semântica de substituição completa. O sistema valida que não exista uma programação em conflito (mesmo tipo, hora e dia após a conversão de fuso horário), excluindo a programação atual que está sendo atualizada. Para eliminar um dispositivo intermediário de uma programação START, omita o campo dispositivo_intermediário.



## OpenAPI

````yaml /pt-BR/api-reference/openapi.pt-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 para 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:
        - Grupos de workspaces
      summary: Atualizar uma programação cron
      description: >-
        Atualiza uma programação cron existente para um grupo de espaços de
        trabalho. Devem ser fornecidos todos os campos da programação, pois este
        endpoint implementa semântica de substituição completa. O sistema valida
        que não exista uma programação em conflito (mesmo tipo, hora e dia após
        a conversão de fuso horário), excluindo a programação atual que está
        sendo atualizada. Para eliminar um dispositivo intermediário de uma
        programação START, omita o campo dispositivo_intermediário.
      operationId: updateWorkspaceGroupSchedule
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            maxLength: 24
            pattern: ^[0-9a-f]{24}$
          description: O identificador único da organização
          example: 507f1f77bcf86cd799439011
        - name: workspace_group_id
          in: path
          required: true
          schema:
            type: string
            maxLength: 24
            pattern: ^[0-9a-f]{24}$
          description: O identificador único do grupo de workspaces
          example: 507f1f77bcf86cd799439020
        - name: schedule_id
          in: path
          required: true
          schema:
            type: string
            maxLength: 24
            pattern: ^[0-9a-f]{24}$
          description: O identificador único da programação a ser atualizada
          example: 507f1f77bcf86cd799439060
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateWorkspaceGroupScheduleRequestV1'
            examples:
              update-schedule-time:
                summary: Atualizar programação para execução em horário diferente
                value:
                  cron_expression: 0 9 * * 1-5
                  time_zone: Eastern Standard Time
                  type: start
              add-intermediate-device:
                summary: >-
                  Adicionar dispositivo intermediário a uma programação START
                  existente
                value:
                  cron_expression: 0 8 * * 1-5
                  time_zone: Eastern Standard Time
                  type: start
                  intermediate_device: 507f1f77bcf86cd799439050
              remove-intermediate-device:
                summary: Remover dispositivo intermediário da programação START
                value:
                  cron_expression: 0 8 * * 1-5
                  time_zone: Eastern Standard Time
                  type: start
              change-schedule-type:
                summary: Alterar o tipo de programação de START para STOP
                value:
                  cron_expression: 0 18 * * 1-5
                  time_zone: UTC
                  type: stop
      responses:
        '200':
          description: >-
            Programação atualizada corretamente. A resposta contém o recurso
            atualizado.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceGroupScheduleV1'
        '400':
          $ref: '#/components/responses/BadRequest'
          description: >-
            Requisição incorreta. Causas comuns: - Campos obrigatórios em falta
            (cron_expression, time_zone, type) - Formato de expressão cron não
            válido - Valor de zona horária não válido - Tipo de programação não
            válido (deve ser START, STOP ou RESTART) - Formato de ID de
            Workspace intermediate_device não válido
        '401':
          $ref: '#/components/responses/Unauthorized'
          description: Não autorizado - é necessária autenticação
        '404':
          $ref: '#/components/responses/NotFound'
          description: >-
            Grupo de workspaces ou programação não encontrada, ou não pertence à
            organização
        '409':
          $ref: '#/components/responses/Conflict'
          description: >-
            Conflito - Já existe uma programação com o mesmo tipo, hora e dia
            (após a conversão de zona horária), excluindo a programação atual
            que se está a atualizar
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
          description: >-
            Entidade não processável. Causas comuns: - O ID de Workspace
            intermediate_device não existe ou não pertence à organização
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    UpdateWorkspaceGroupScheduleRequestV1:
      type: object
      properties:
        cron_expression:
          type: string
          description: >-
            Expressão cron que define quando a programação deve ser executada.
            Formato: minuto hora dia-do-mês mês dia-da-semana. Exemplos: '0 8 *
            * 1-5' (8 AM dias úteis), '0 0 * * 0' (meia-noite de domingo), '30
            14 * * *' (2:30 PM diariamente). Dia-da-semana: 0=domingo,
            1=segunda-feira, ..., 6=sábado. Suporta intervalos (1-5), listas
            (1,3,5) e curingas (*). Deve ser um formato de expressão cron válido
            com 5 campos separados por espaços.
          example: 0 8 * * 1-5
        time_zone:
          type: string
          description: >-
            Zona horária para a execução do cronograma. Suporta identificadores
            IANA (por exemplo, 'America/New_York') e Windows (por exemplo,
            'Pacific Standard Time').
          example: Eastern Standard Time
        type:
          type: string
          enum:
            - start
            - stop
            - restart
          description: >-
            Tipo de operação de energia a ser realizada. START: Liga os
            Workspaces do grupo. STOP: Desliga os Workspaces do grupo. RESTART:
            Reinicia os Workspaces do grupo.
          example: start
        intermediate_device:
          type: string
          maxLength: 24
          pattern: ^[0-9a-f]{24}$
          description: >-
            Opcional. O identificador único do Workspace de dispositivo
            intermediário. Se fornecido, indica que deve ser usado um
            dispositivo intermediário para operações Wake-on-LAN. Aplica-se
            apenas a programações START. É usado para ações Wake-on-LAN em redes
            seguras. O Workspace deve existir e pertencer à organização. Para
            remover um dispositivo intermediário, omita este campo.
          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: O identificador único da programação
          example: 507f1f77bcf86cd799439060
        cron_expression:
          type: string
          description: >-
            Expressão cron que define quando a programação é executada. Formato:
            minuto hora dia-do-mês mês dia-da-semana.
          example: 0 8 * * 1-5
        time_zone:
          type: string
          description: >-
            Zona horária para a execução do cronograma. Suporta identificadores
            IANA (por exemplo, 'America/New_York') e Windows (por exemplo,
            'Pacific Standard Time').
          example: Eastern Standard Time
        type:
          type: string
          enum:
            - start
            - stop
            - restart
          description: >-
            Tipo de operação de energia: START (liga), STOP (desliga), RESTART
            (reinicia Workspaces)
        intermediate_device:
          type: string
          pattern: ^[0-9a-f]{24}$
          nullable: true
          description: >-
            O identificador único do workspace do dispositivo intermediário, se
            estiver configurado. É usado para ações de Wake on LAN em redes
            seguras.
          example: 507f1f77bcf86cd799439050
        created_by:
          type: string
          pattern: ^[0-9a-f]{24}$
          nullable: true
          description: ID do usuário que criou a programação
          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: Solicitação incorreta
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: Não autorizado
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: Não encontrado
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Conflict:
      description: Conflito
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    UnprocessableEntity:
      description: Entidade não processável
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    TooManyRequests:
      description: Solicitações em excesso
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalServerError:
      description: Erro interno do servidor
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````