{"id":1503,"date":"2026-01-17T07:18:09","date_gmt":"2026-01-17T07:18:09","guid":{"rendered":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/?p=1503"},"modified":"2026-01-24T06:26:48","modified_gmt":"2026-01-24T06:26:48","slug":"how-google-meet-integration-works","status":"publish","type":"post","link":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/kivicare-google-meet-telemed-woocommerce-addon\/documentation\/core-concepts-doc\/how-google-meet-integration-works\/","title":{"rendered":"How Google Meet Integration Works"},"content":{"rendered":"<div class=\"nolwrap\">\n<p>Understanding how a virtual consultation is created and managed helps clinics operate more efficiently. This section explains the <strong>end-to-end workflow<\/strong> of the Google Meet integration in KiviCare and how automation works behind the scenes.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>1. Appointment Scheduling Trigger<\/strong><\/h2>\n\n\n\n<p>When an appointment is saved in KiviCare, the system performs two critical checks:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Service Validation:<\/strong> The selected service must be marked as <em>Telemedicine Enabled<\/em>.<\/li>\n\n\n\n<li><strong>Doctor Connection:<\/strong> The assigned doctor must have an active Google Meet connection.<\/li>\n<\/ol>\n\n\n\n<p>If both conditions are met, the system automatically triggers the<br><code>KCGMGoogleMeet-&gt;create_meeting()<\/code> method.<\/p>\n\n\n\n<p>This ensures that Google Meet meetings are created only when required.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>2. Google Calendar API Provisioning<\/strong><\/h2>\n\n\n\n<p>Once triggered, the plugin sends a <code>POST<\/code> request to the Google Calendar <code>\/events<\/code> endpoint with <code>conferenceDataVersion=1<\/code>.<\/p>\n\n\n\n<p>The request includes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Event Summary:<\/strong> Appointment title or consultation topic.<\/li>\n\n\n\n<li><strong>Start and End Time:<\/strong> Based on the scheduled KiviCare appointment.<\/li>\n\n\n\n<li><strong>Conference Data:<\/strong> A request to generate a <code>hangoutsMeet<\/code> (Google Meet) session.<\/li>\n<\/ul>\n\n\n\n<p>Google then creates the calendar event and associated video meeting.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>3. Secure Meeting Mapping<\/strong><\/h2>\n\n\n\n<p>Google Calendar responds with a payload containing the unique <strong>Google Meet link<\/strong> (<code>hangoutLink<\/code>).<\/p>\n\n\n\n<p>This information is securely stored:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>In the <code>kc_appointment_google_meet_mappings<\/code> database table.<\/li>\n\n\n\n<li>Linked directly to the corresponding KiviCare appointment ID.<\/li>\n<\/ul>\n\n\n\n<p>The Meet link is also automatically injected into KiviCare email and SMS notification templates (SMS requires KiviCare Pro).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>4. Starting or Joining the Consultation<\/strong><\/h2>\n\n\n\n<p>Once the appointment is confirmed, the KiviCare Dashboard displays Telemedicine controls:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Doctor View:<\/strong> A <strong>\u201cStart Google Meet\u201d<\/strong> button.<\/li>\n\n\n\n<li><strong>Patient View:<\/strong> A <strong>\u201cJoin Google Meet\u201d<\/strong> button.<\/li>\n<\/ul>\n\n\n\n<p>Both participants can access the meeting directly from their dashboard without manually sharing links.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>5. Appointment Completion &amp; Sync<\/strong><\/h2>\n\n\n\n<p>After the consultation:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The appointment status and Google Meet link remain stored within the encounter records.<\/li>\n\n\n\n<li>Any updates to the appointment time in KiviCare automatically sync with the linked Google Calendar event.<\/li>\n<\/ul>\n\n\n\n<p>This keeps both systems aligned and ensures accurate scheduling history.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Understanding how a virtual consultation is created and managed helps clinics operate more efficiently. This section explains the end-to-end workflow of the Google Meet integration in KiviCare and how automation works behind the scenes. 1. Appointment Scheduling Trigger When an appointment is saved in KiviCare, the system performs two critical checks: If both conditions are [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":0,"parent":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[43],"tags":[],"class_list":["post-1503","post","type-post","status-publish","format-standard","hentry","category-core-concepts-doc"],"featured_image_src":null,"author_info":{"display_name":"wordpressadminiq","author_link":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/author\/wordpressadminiq\/"},"_links":{"self":[{"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/posts\/1503","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/comments?post=1503"}],"version-history":[{"count":5,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/posts\/1503\/revisions"}],"predecessor-version":[{"id":1599,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/posts\/1503\/revisions\/1599"}],"wp:attachment":[{"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/media?parent=1503"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/categories?post=1503"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/tags?post=1503"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}