{"id":1554,"date":"2026-01-17T08:49:36","date_gmt":"2026-01-17T08:49:36","guid":{"rendered":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/?p=1554"},"modified":"2026-01-24T06:31:40","modified_gmt":"2026-01-24T06:31:40","slug":"technical-design-data-handling","status":"publish","type":"post","link":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/kivicare-google-meet-telemed-woocommerce-addon\/documentation\/google-cloud-readiness\/technical-design-data-handling\/","title":{"rendered":"Technical Design &amp; Data Handling"},"content":{"rendered":"<div class=\"nolwrap\">\n<p>This document outlines the technical architecture and data-handling practices of <strong>KiviCare Google Meet integration<\/strong>, specifically intended for <strong>Google App Reviewers<\/strong>. It explains how user data is processed, stored, and secured during API interactions.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Technical Design Overview<\/strong><\/h2>\n\n\n\n<h5 class=\"wp-block-heading\"><strong>Data Flow Architecture<\/strong><\/h5>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Authentication<\/strong><br>The plugin uses <strong>OAuth 2.0<\/strong> to securely obtain access and refresh tokens from Google. These tokens are stored safely as <strong>user metadata<\/strong> within the WordPress database.<\/li>\n\n\n\n<li><strong>Event Creation<\/strong><br>When a consultation appointment is scheduled in KiviCare, the plugin sends a <strong>POST request<\/strong> to the <strong>Google Calendar API<\/strong> to create a corresponding calendar event with a Google Meet link.<\/li>\n\n\n\n<li><strong>Local Data Storage<\/strong><br>Only essential and minimal data is stored locally, including:\n<ul class=\"wp-block-list\">\n<li>Google Calendar Event ID<\/li>\n\n\n\n<li>Google Meet link<br>This data is saved in the <code>kc_appointment_google_meet_mappings<\/code> database table.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Data Synchronization<\/strong><br>To maintain consistency, the plugin periodically checks for updates to Google Calendar events or uses webhooks (when available) to synchronize data between <strong>KiviCare<\/strong> and <strong>Google Calendar<\/strong>.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Security &amp; Privacy Measures<\/strong><\/h2>\n\n\n\n<h5 class=\"wp-block-heading\"><strong>Data Encryption<\/strong><\/h5>\n\n\n\n<ul class=\"wp-block-list\">\n<li>All communication between the plugin and Google APIs is conducted over <strong>HTTPS<\/strong>, ensuring secure data transmission.<\/li>\n\n\n\n<li>OAuth access and refresh tokens are stored in the WordPress database and protected using <strong>standard WordPress security mechanisms<\/strong>.<\/li>\n<\/ul>\n\n\n\n<h5 class=\"wp-block-heading\"><strong>Data Usage Policy<\/strong><\/h5>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The plugin only requests access to the <strong>Google Calendar API scope<\/strong>:<br><code>https:\/\/www.googleapis.com\/auth\/calendar<\/code><\/li>\n\n\n\n<li>This access is strictly used to manage <strong>telemedicine appointments<\/strong>.<\/li>\n\n\n\n<li>No personal Google account data is shared with third parties or used for any purpose other than scheduling and managing consultations.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>App Uninstallation &amp; Account Disconnection<\/strong><\/h2>\n\n\n\n<p>When a user disconnects their Google account from KiviCare:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>All stored <strong>access and refresh tokens<\/strong> are permanently removed from the WordPress database.<\/li>\n\n\n\n<li>The user\u2019s connection status is updated to <strong><code>not_connected<\/code><\/strong>.<\/li>\n\n\n\n<li>The plugin immediately stops making any further API requests to Google on behalf of that user.<\/li>\n<\/ol>\n\n\n\n<p><\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>This document outlines the technical architecture and data-handling practices of KiviCare Google Meet integration, specifically intended for Google App Reviewers. It explains how user data is processed, stored, and secured during API interactions. Technical Design Overview Data Flow Architecture Security &amp; Privacy Measures Data Encryption Data Usage Policy App Uninstallation &amp; Account Disconnection When a [&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":[46],"tags":[],"class_list":["post-1554","post","type-post","status-publish","format-standard","hentry","category-google-cloud-readiness"],"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\/1554","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=1554"}],"version-history":[{"count":3,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/posts\/1554\/revisions"}],"predecessor-version":[{"id":1559,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/posts\/1554\/revisions\/1559"}],"wp:attachment":[{"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/media?parent=1554"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/categories?post=1554"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/documentation.iqonic.design\/kivicare-wordpress\/wp-json\/wp\/v2\/tags?post=1554"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}