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

# Atualizar Agendamento

> Atualiza os dados de um agendamento específico.

## Requisição

`PUT https://crm.wavups.com/api/v1/scheduling/{id}`

<ParamField header="Token" type="string" required>
  Seu token de autenticação.
</ParamField>

### Path Parameters

<ParamField path="id" type="string" required>
  ID do agendamento a ser atualizado.
</ParamField>

### Body

Envie os campos que deseja atualizar. Todos os campos são opcionais:

<ParamField body="title" type="string">
  Título do agendamento.
</ParamField>

<ParamField body="description" type="string">
  Descrição do agendamento.
</ParamField>

<ParamField body="date" type="string">
  Nova data e horário. Formato ISO 8601.
</ParamField>

<ParamField body="status" type="string">
  Status do agendamento. Valores: `scheduled`, `completed`, `canceled`.
</ParamField>

<ParamField body="accountProductId" type="string">
  ID do produto vinculado ao agendamento.
</ParamField>

<ParamField body="externalConversationId" type="string">
  ID da conversa externa vinculada ao agendamento.
</ParamField>

***

## Resposta

Retorna uma mensagem de sucesso confirmando a atualização.

<ResponseField name="message" type="string">
  Confirma que o agendamento foi atualizado com sucesso.
</ResponseField>

***

## Exemplos

<RequestExample>
  ```bash PUT /api/v1/scheduling/{id} theme={null}
  curl --request PUT \
    --url 'https://crm.wavups.com/api/v1/scheduling/sch_001' \
    --header 'Token: SEU_TOKEN_DE_API' \
    --header 'Content-Type: application/json' \
    --data '{
      "status": "completed",
      "date": "2025-07-15T10:00:00.000Z"
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "message": "Scheduling updated"
  }
  ```

  ```json 404 theme={null}
  {
    "error": "Scheduling not found"
  }
  ```

  ```json 500 theme={null}
  {
    "error": "Error to update scheduling"
  }
  ```
</ResponseExample>


## OpenAPI

````yaml PUT /scheduling/{id}
openapi: 3.0.3
info:
  title: WavUps CRM API
  description: >-
    API pública da plataforma WavUps CRM — gerencie leads, produtos, categorias,
    atendimentos, agendamentos, conversas e pipelines de CRM.
  version: 1.0.0
servers:
  - url: https://crm.wavups.com/api/v1
    description: Servidor de produção
security:
  - Token: []
paths:
  /scheduling/{id}:
    put:
      tags:
        - Agendamentos
      summary: Atualizar Agendamento
      description: Atualiza os dados de um agendamento específico.
      operationId: updateSchedulingById
      parameters:
        - $ref: '#/components/parameters/id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSchedulingBody'
      responses:
        '200':
          description: Agendamento atualizado com sucesso.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
        '404':
          $ref: '#/components/responses/Error404'
        '500':
          $ref: '#/components/responses/Error500'
components:
  parameters:
    id:
      name: id
      in: path
      required: true
      description: Identificador único do recurso.
      schema:
        type: string
  schemas:
    CreateSchedulingBody:
      type: object
      properties:
        leadId:
          type: string
          description: ID do lead vinculado ao agendamento.
        productId:
          type: string
          description: ID do produto vinculado ao agendamento.
        scheduledAt:
          type: string
          format: date-time
          description: Data e hora do agendamento (ISO 8601).
        status:
          type: string
          description: Status do agendamento.
        description:
          type: string
          description: Descricao ou observacoes do agendamento.
    SuccessMessage:
      type: object
      properties:
        message:
          type: string
          example: Operação realizada com sucesso.
    ErrorMessage:
      type: object
      properties:
        error:
          type: string
          example: Recurso não encontrado.
  responses:
    Error404:
      description: Recurso não encontrado.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
    Error500:
      description: Erro interno no servidor.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
  securitySchemes:
    Token:
      type: apiKey
      in: header
      name: Token
      description: Token de autenticacao gerado na plataforma WavUps CRM.

````