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

# Set reservation message event

> Requires `reservations:messaging:write`. Changes future guest messaging for one Cloudbeds integration. Existing global gates remain enforced; enabling does not guarantee delivery.



## OpenAPI

````yaml /openapi.json put /reservations/lifecycle/integrations/{integrationId}/events/{eventType}
openapi: 3.0.3
info:
  title: Visito M2M API
  version: 1.0.0
  description: >-
    Tenant-scoped server-to-server API for channels, conversations, commerce,
    custom AI tools, and WhatsApp templates. Send operations are asynchronous
    and return queued acknowledgements. Expansion adds conversation controls,
    knowledge, sales opportunities, delivery status, reporting, and signed
    webhooks.
servers:
  - url: https://platform-api.visitoai.com/m2m/v1
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Channels
  - name: Conversations
  - name: Commerce
  - name: Custom tools
  - name: WhatsApp templates
  - name: Properties
  - name: Knowledge
  - name: Sales CRM
  - name: Delivery
  - name: Reporting
  - name: Webhooks
paths:
  /reservations/lifecycle/integrations/{integrationId}/events/{eventType}:
    put:
      summary: Set reservation message event
      description: >-
        Requires `reservations:messaging:write`. Changes future guest messaging
        for one Cloudbeds integration. Existing global gates remain enforced;
        enabling does not guarantee delivery.
      operationId: set_reservation_message_event
      parameters:
        - name: integrationId
          in: path
          required: true
          schema:
            type: string
            maxLength: 200
            minLength: 1
        - name: eventType
          in: path
          required: true
          schema:
            type: string
            enum:
              - booking_confirmed
              - pre_checkin
              - post_checkout_review
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                enabled:
                  type: boolean
              required:
                - enabled
              additionalProperties: false
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReservationLifecycleEventSwitchesResponse'
        default:
          $ref: '#/components/responses/Error'
components:
  schemas:
    ReservationLifecycleEventSwitchesResponse:
      type: object
      properties:
        integrations:
          type: array
          items:
            type: object
            properties:
              provider:
                anyOf:
                  - type: string
                    enum:
                      - cloudbeds
                  - type: string
                    enum:
                      - siteminder
                  - type: string
                    enum:
                      - mirai
                  - type: string
                    enum:
                      - guesty
                  - type: string
                    enum:
                      - hotelrunner
                  - type: string
                    enum:
                      - wix
                  - type: string
                    enum:
                      - simplebooking
                  - type: string
                    enum:
                      - p3
                  - type: string
                    enum:
                      - glofox
                  - type: string
                    enum:
                      - shopify
                  - type: string
                    enum:
                      - google_sheets
              integrationId:
                type: string
              name:
                type: string
              eligible:
                type: boolean
              lifecycleEvents:
                type: object
                properties:
                  booking_confirmed:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                    required:
                      - enabled
                    additionalProperties: false
                  pre_checkin:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                    required:
                      - enabled
                    additionalProperties: false
                  post_checkout_review:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                    required:
                      - enabled
                    additionalProperties: false
                required:
                  - booking_confirmed
                  - pre_checkin
                  - post_checkout_review
                additionalProperties: false
            required:
              - provider
              - integrationId
              - eligible
              - lifecycleEvents
            additionalProperties: false
      required:
        - integrations
      additionalProperties: false
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
          properties:
            code:
              type: string
              example: M2M_AUTH_INSUFFICIENT_SCOPE
            message:
              type: string
            details:
              type: object
              additionalProperties: true
      example:
        error:
          code: M2M_AUTH_INSUFFICIENT_SCOPE
          message: M2M credential does not have required scope.
          details:
            requiredScopes:
              - conversations:write
            missingScopes:
              - conversations:write
  responses:
    Error:
      description: Structured error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Visito M2M API key
      description: Server-side tenant-scoped credential created from Build > API Keys.

````