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

# Update webhook

> Atualiza um webhook existente para a sessão especificada



## OpenAPI

````yaml api-reference/openapi.json put /session/{sessionId}/webhook/{webhookId}
openapi: 3.0.0
info:
  title: Zappaz API
  description: API para envio de mensagens e gerenciamento de webhooks
  version: 1.0.0
servers:
  - url: https://api.zappaz.io/api/v1
    description: Servidor de API de Desenvolvimento
security:
  - bearerAuth: []
tags:
  - name: Sessions
    description: Operações de gerenciamento de sessões
  - name: Messages
    description: Operações de envio de mensagens
  - name: Webhooks
    description: Operações de gerenciamento de webhooks
  - name: Actions
    description: Ações do WhatsApp como gerenciamento de perfil e operações de contato
  - name: Groups
    description: Operações de gerenciamento de grupos do WhatsApp
  - name: Privacy
    description: Gerenciamento de configurações de privacidade
paths:
  /session/{sessionId}/webhook/{webhookId}:
    parameters:
      - $ref: '#/components/parameters/sessionId'
      - $ref: '#/components/parameters/webhookId'
    put:
      tags:
        - Webhooks
      summary: Update webhook
      description: Atualiza um webhook existente para a sessão especificada
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                url:
                  type: string
                  description: URL where webhook events will be sent
                displayName:
                  type: string
                  description: Optional display name for the webhook
                enabled:
                  type: boolean
                  description: Whether the webhook is active
                events:
                  $ref: '#/components/schemas/WebhookEventsSchema'
                  description: Configuration of which events this webhook subscribes to
                headers:
                  type: object
                  description: Custom headers to be sent with webhook requests
                  additionalProperties:
                    type: string
      responses:
        '200':
          description: Webhook updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookResponse'
        '400':
          description: Invalid request body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Webhook not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  parameters:
    sessionId:
      in: path
      name: sessionId
      required: true
      schema:
        type: string
      description: Identificador único da sessão
    webhookId:
      in: path
      name: webhookId
      required: true
      schema:
        type: string
      description: Identificador único do webhook
  schemas:
    WebhookEventsSchema:
      type: object
      properties:
        call:
          type: boolean
          default: false
        blocklist.set:
          type: boolean
          default: false
        blocklist.update:
          type: boolean
          default: false
        chats.delete:
          type: boolean
          default: false
        chats.phoneNumberShare:
          type: boolean
          default: false
        chats.update:
          type: boolean
          default: false
        chats.upsert:
          type: boolean
          default: false
        connection.update:
          type: boolean
          default: false
        contacts.update:
          type: boolean
          default: false
        contacts.upsert:
          type: boolean
          default: false
        creds.update:
          type: boolean
          default: false
        group-participants.update:
          type: boolean
          default: false
        group.join-request:
          type: boolean
          default: false
        groups.update:
          type: boolean
          default: false
        groups.upsert:
          type: boolean
          default: false
        labels.association:
          type: boolean
          default: false
        labels.edit:
          type: boolean
          default: false
        message-receipt.update:
          type: boolean
          default: false
        messages.delete:
          type: boolean
          default: false
        messages.media-update:
          type: boolean
          default: false
        messages.reaction:
          type: boolean
          default: false
        messages.send:
          type: boolean
          default: false
        messages.update:
          type: boolean
          default: false
        messaging-history.set:
          type: boolean
          default: false
        presence.update:
          type: boolean
          default: false
        inbound-message.upsert:
          type: boolean
          default: false
        outbound-message.upsert:
          type: boolean
          default: false
    WebhookResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - success
            - error
        data:
          $ref: '#/components/schemas/WebhookData'
    ErrorResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - failed
        message:
          type: string
    WebhookData:
      type: object
      properties:
        id:
          type: string
          description: Identificador único do webhook
        url:
          type: string
          description: URL onde os eventos do webhook serão enviados
        displayName:
          type: string
          description: Nome de exibição opcional para o webhook
        enabled:
          type: boolean
          description: Se o webhook está ativo
        events:
          $ref: '#/components/schemas/WebhookEventsSchema'
          description: Configuração de quais eventos este webhook assina
        headers:
          type: object
          description: >-
            Cabeçalhos personalizados a serem enviados com as requisições do
            webhook
          additionalProperties:
            type: string
        createdAt:
          type: string
          format: date-time
          description: Quando o webhook foi criado
        waSessionId:
          type: string
          description: ID da sessão do WhatsApp a que este webhook pertence
  securitySchemes:
    bearerAuth:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Token de usuário ou sessão, passado diretamente como uma string no
        cabeçalho 'Authorization'. O token de usuário tem escopo sobre todas as
        sessões pertencentes ao usuário. O token de sessão é limitado à própria
        sessão.

````