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

# Update user calendar sync provider

> Updates the calendar sync provider settings for a specific user. Only company admins can update calendar sync settings. The calendar sync provider determines which calendar service (Google, Outlook, iCloud, CalDAV, Exchange, Nextcloud, SmartWe) is used to sync the user's availability and create calendar events for bookings. Provide the calendar connection ID and provider type to set the sync provider.



## OpenAPI

````yaml /openapi.json patch /v4/user/{id}/calendar-sync
openapi: 3.0.0
info:
  title: meetergo Platform API
  description: >-
    Scheduling, CRM and invoicing in one API: create users, manage availability
    and bookings, connect calendars, keep contacts and deals in sync, and take
    an offer through to a paid invoice.
  version: 3.274.0
  contact: {}
  termsOfService: https://www.meetergo.com/tos/
servers: []
security: []
tags:
  - name: User V4
    description: Create and manage users in your workspace
  - name: Meeting Type V4
    description: Configure meeting templates with durations, buffers, and conferencing
  - name: availability
    description: Manage weekly schedules and availability settings
  - name: Booking V4
    description: Create new bookings
  - name: Booking Availability V4
    description: Query available time slots for booking
  - name: Appointment V4
    description: Manage existing appointments
  - name: Attendee V4
    description: Manage attendee details and notes
  - name: Calendar Connections V4
    description: Connect and sync external calendars
  - name: Signatures V4
    description: >-
      Send PDFs for e-signature and download the signed, eIDAS-grade document
      (DocuSeal-compatible)
  - name: WhatsApp V4
    description: >-
      Send and receive WhatsApp messages by phone number and read conversation
      history
  - name: One Time Booking Link V4
    description: Create single-use booking links
  - name: availability-exception
    description: Override availability for specific dates
  - name: Booking Link V4
    description: Configure various booking page types
  - name: Personal Page V4
    description: Manage user profile pages
  - name: Handoff V4
    description: Reassign meetings to other hosts
  - name: Calendar Auth V4
    description: OAuth callbacks for calendar providers
  - name: CRM Contacts
    description: >-
      Create, find, and update the people in your CRM, including their custom
      data fields
  - name: CRM Deals
    description: >-
      Create, update, and track deals through pipeline stages (incl. per-deal
      activity history)
  - name: CRM Pipelines
    description: Manage pipelines and their stages
  - name: CRM Tasks
    description: Tasks on contacts, deals and companies
  - name: CRM Notes
    description: Notes on contacts, deals and companies
  - name: CRM Attachments
    description: Files attached to contacts, deals and companies
  - name: CRM Communications
    description: Logged calls, messages and meetings on contacts, deals and companies
  - name: CRM Email Sync
    description: Read the email history synced from connected mailboxes (read-only)
  - name: Data Fields
    description: >-
      Define the custom fields a contact can carry; their `name` is the key used
      in a contact's additionalData
  - name: Invoicing Documents
    description: >-
      Offers and invoices: create a draft, finalize it into a numbered
      e-invoice, send it, record payments, and run Mahnwesen
  - name: Invoicing Products
    description: Reusable products for invoice line items
  - name: Invoicing Settings
    description: Seller details, tax treatment, bank accounts, and number ranges
  - name: Invoicing Recurring
    description: >-
      Recurring schedules, billing runs over completed meetings, buyer prefill,
      and DATEV export
  - name: Queue V4
    description: Round-robin and queue-based routing (Beta)
  - name: Queue User Group V4
    description: Manage queue user groups (Beta)
  - name: Meeting Type Template V4
    description: Reusable meeting type configurations (Beta)
  - name: Attendee Pending V4
    description: Manage pending attendee approvals (Beta)
  - name: Provisional Booking V4
    description: Manage provisional/unconfirmed bookings (Beta)
paths:
  /v4/user/{id}/calendar-sync:
    patch:
      tags:
        - User V4
      summary: Update user calendar sync provider
      description: >-
        Updates the calendar sync provider settings for a specific user. Only
        company admins can update calendar sync settings. The calendar sync
        provider determines which calendar service (Google, Outlook, iCloud,
        CalDAV, Exchange, Nextcloud, SmartWe) is used to sync the user's
        availability and create calendar events for bookings. Provide the
        calendar connection ID and provider type to set the sync provider.
      operationId: updateUserCalendarSync
      parameters:
        - name: id
          required: true
          in: path
          description: Unique identifier of the user to update
          schema:
            example: 123e4567-e89b-12d3-a456-426614174000
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateUserCalendarSyncDTO'
      responses:
        '200':
          description: Calendar sync provider updated successfully
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          description: Forbidden - Only admins can update calendar sync settings
        '404':
          description: User not found or does not belong to your company
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
        - ApiUserHeader: []
        - JWT: []
        - ApiKey: []
components:
  schemas:
    UpdateUserCalendarSyncDTO:
      type: object
      properties:
        calendarSyncProviders:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/CalendarSync'
        id:
          type: string
          description: |-
            id of the user to be updated.
            If undefined, the user making the request is updated
      required:
        - calendarSyncProviders
    CalendarSync:
      type: object
      properties:
        id:
          type: string
        type:
          allOf:
            - $ref: '#/components/schemas/CalendarSyncProvider'
      required:
        - id
        - type
    ApiError:
      type: object
      required:
        - statusCode
        - message
      properties:
        statusCode:
          type: integer
          example: 400
        message:
          oneOf:
            - type: string
            - type: array
              items:
                type: string
          description: >-
            A sentence, or the list of field constraints that failed. Validation
            errors name the offending property.
          example:
            - limit must not be greater than 100
        error:
          type: string
          example: BadRequestException
    CalendarSyncProvider:
      type: string
      enum:
        - google
        - outlook
        - icloud
        - caldav
        - exchange
        - nextcloud
        - smart-we
        - salesforce
  responses:
    BadRequest:
      description: >-
        The request did not validate. `message` lists the constraints that
        failed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    Unauthorized:
      description: Missing, malformed, or expired credentials.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    TooManyRequests:
      description: Rate limited. Back off and retry.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
  securitySchemes:
    ApiUserHeader:
      type: apiKey
      in: header
      name: x-meetergo-api-user-id
      description: >-
        User ID to act on behalf of. Platform API Keys only (required with an
        API Key unless the endpoint states otherwise). Requests authenticated
        with a Personal Access Token are rejected if this header names another
        user.
    JWT:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: JWT Bearer token for standard user authentication
    ApiKey:
      scheme: bearer
      bearerFormat: API Key
      type: http
      description: >-
        Bearer token: a Platform API Key (format: ak_live:<uuid>:<secret>) or a
        Personal Access Token (format: rgo-...). PATs always act as the token
        owner.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.