LegalGEСодержание
Legal Sandbox Georgia LLC
Document Type: Function Rulebook (Binding) Version: 1.0 Effective Date: 13 May 2026 Document Language: English (Georgian version prevails in case of conflict) Status: Binding contract, incorporated by reference into all applicable Role Terms and Conditions
This Calendar Function Rulebook ("Rulebook") establishes the rules governing the Specialist Calendar functionality on the legal.ge platform operated by Legal Sandbox Georgia LLC, Registration Number 405713768 (the "Platform").
This Rulebook is a binding part of the Terms and Conditions of every role permitted to publish availability, manage calendar events, or interact with calendar-driven booking on the Platform. By publishing an Available Slot, creating a personal calendar block, connecting Google Calendar, or otherwise interacting with the Platform's calendar functionality, You agree to be bound by this Rulebook.
This Rulebook is intentionally narrow in scope: it governs calendar publication mechanics, Google Calendar integration, personal block management, and external busy synchronization. It does NOT govern:
consultation_fee (governed by Specializations & Pricing Rulebook).In the event of any conflict between this Rulebook and another Function Rulebook on a matter governed by that other Rulebook, the other Rulebook prevails.
1.1.1 This Rulebook provides a single authoritative source of truth governing the Specialist Calendar function on the Platform.
1.1.2 This Rulebook serves to:
(a) Define the calendar event sources and unified feed model;
(b) Govern Available Slot publication, modification, and removal;
(c) Govern Google Calendar OAuth integration, connection, and disconnection;
(d) Define personal calendar block creation, editing, and deletion;
(e) Specify external busy synchronization from Google Calendar;
(f) Specify sync failure handling and reliability mechanics;
(g) Govern Multi-Specialist team calendar mechanics for Multi-Target Inquiry contexts;
(h) Define calendar data retention at termination;
(i) Allocate liability for calendar-related and sync-related matters;
(j) Coordinate with the Specializations & Pricing Rulebook (§8 Standing Offer), Video Consultations Rulebook (session mechanics), and Inquiries Rulebook (Quote auto-acceptance per §7.4.3).
1.2.1 This Rulebook applies to:
(a) The Specialist dashboard calendar tab and its associated data;
(b) Available Slot publication and lifecycle;
(c) Google Calendar OAuth integration, sync semantics, and disconnection;
(d) Personal calendar blocks created via Platform interface;
(e) External busy blocks pulled from connected Google Calendars;
(f) Multi-Specialist team calendar mechanics where applicable.
1.2.2 This Rulebook does NOT govern:
(a) The legal/contractual effect of publishing an Available Slot (Standing Offer) — governed by Specializations & Pricing Rulebook §8.3;
(b) Pricing fields including consultation_fee — governed by Specializations & Pricing Rulebook;
(c) Inquiry creation, Quote, payment, and Capture from book-from-calendar bookings — governed by Inquiries Rulebook (with §7.4.3 auto-acceptance exception);
(d) Video session mechanics for consultations booked via calendar — governed by Video Consultations Rulebook;
(e) Subscription tier definitions and feature gates — governed by Subscriptions & Billing Rulebook;
(f) Calendar UX implementation details (week-grid vs. month view, color schemes, button placement) — governed by Platform operational documentation;
(g) Specific Google Calendar API behaviors beyond the rules established here.
1.3.1 This Rulebook directly affects the following roles:
| Role | Capability |
|---|---|
| Solo Specialist | Publishes Available Slots; creates personal blocks; connects Google Calendar (per tier) |
| Company Specialist | Same capabilities as Solo Specialist (per Affiliated Company tier) |
| Trainer | May use calendar in Trainer capacity for Trainings (governed by Trainer T&C; this Rulebook applies where Trainer also operates as Specialist) |
| User (Client) | May view Specialist's published Available Slots; may book slots per Specializations & Pricing Rulebook §8 |
| Moderator | May review calendar publication patterns for prohibited conduct per Article 14 |
| Author | Not affected |
| Trainee | Not affected |
| Company | Holds context for Affiliated Specialists; does not itself publish calendar events |
| Organisation | Not affected |
2.1 Capitalized terms used but not defined in this Rulebook have the meanings given in the applicable Role Terms and Conditions or other Function Rulebook where context makes clear.
2.2 For purposes of this Rulebook:
"Available Slot" has the meaning given in Specializations & Pricing Rulebook §8 — a calendar time window published by a Specialist as available for book-from-calendar consultation booking.
"Calendar Feed" means the unified event-source aggregation returned by the Platform's calendar query API per Article 3.
"Calendar Tab" means the calendar interface in the Specialist dashboard.
"Confirmed Booking" means a Service Inquiry Consultation, Direct Consultation, or book-from-calendar booking that has progressed to confirmed state with Pre-Authorization completed.
"External Busy Block" means a busy time window mirrored into the Platform from a Specialist's connected Google Calendar, governed by Article 8.
"Google Calendar" means the Google Calendar third-party service as connected via OAuth per Article 7.
"Google-Native Event" means an event created directly in a Specialist's Google Calendar, not through the Platform interface — protected from Platform modification per §9.5.
"Inquiries Rulebook" means the Inquiries & Messaging Function Rulebook v1.2 or successor.
"Lead Specialist" has the meaning given in the Inquiries Rulebook §4.4 — the designated lead in Multi-Target Inquiries.
"OAuth Token" or "Token" means the authentication credentials issued by Google Calendar to the Platform on behalf of a Specialist following authorization, comprising access token, refresh token, and associated metadata.
"Personal Block" means a busy time window created by a Specialist via the Platform calendar interface for personal scheduling purposes, governed by Article 6.
"Pricing Rulebook" means the Specializations & Pricing Function Rulebook v1.0 or successor.
"Specialist Availability" means the data store (specialist_availability) recording all Available Slots and their statuses.
"Standing Offer" has the meaning given in Specializations & Pricing Rulebook §8 — the binding effect of publishing an Available Slot.
"Sync" means the Platform's bidirectional synchronization with a Specialist's connected Google Calendar:
(a) Outbound Sync — Confirmed Bookings pushed from Platform to Google;
(b) Inbound Sync — Google busy blocks pulled from Google to Platform.
"Video Rulebook" means the Video Consultations Function Rulebook v1.0 or successor.
"Watch Channel" means a Google Calendar API mechanism by which the Platform receives notifications of changes in a Specialist's Google Calendar, used to drive Inbound Sync.
3.1.1 The Platform's unified Calendar Feed aggregates four event kinds into a single Specialist-facing view:
| Event Kind | Source | Description |
|---|---|---|
consultation |
service_inquiries |
Confirmed or pending Service Inquiry Consultations |
direct_consultation |
direct_consultations |
Specialist-initiated Direct Consultations per Video Rulebook §7 |
availability |
specialist_availability |
Specialist-published Available Slots (open / held / booked / blocked) |
external_busy |
specialist_external_busy |
Busy blocks mirrored from connected Google Calendar |
3.2.1 The Calendar Feed API accepts a date range parameter capped at thirty-one (31) days per query.
3.2.2 Available Slots, Confirmed Bookings, and Personal Blocks may be published or stored at any future date without limit per Section 4.3 of this Rulebook; the 31-day cap is a query optimization for the Calendar Feed, not a publication restriction.
3.2.3 Events outside the queried 31-day window remain stored and become visible as their dates approach.
3.3.1 When events from different sources occupy overlapping time windows, the Calendar Feed renders them in the following priority for visual display:
(a) consultation and direct_consultation (Confirmed Bookings) — rendered on top;
(b) availability — rendered as background under any overlapping booking;
(c) external_busy — rendered as a busy band; suspends overlapping availability per Article 9.
3.4.1 Calendar Feed access is restricted to:
(a) The Specialist whose calendar it is (full Calendar Feed including all four event kinds);
(b) Public users (Clients browsing) — partial view per Section 3.5.
3.5.1 Where a Specialist has published Available Slots, a public-facing view is available on the Specialist's Profile.
3.5.2 The public-facing view displays:
(a) Available Slots in open status — bookable by Clients;
(b) Time windows occupied by other event kinds — displayed as "Busy" without further detail.
3.5.3 The public-facing view does NOT expose:
(a) Titles, descriptions, or content of Personal Blocks;
(b) Titles, descriptions, or content of External Busy Blocks;
(c) Identities of Clients booked into other slots;
(d) Sources of busy time (Personal Block vs. External Busy vs. confirmed booking — all are simply "Busy").
4.1.1 A Specialist may publish Available Slots only if all of the following are met:
(a) Specialist is Verified per Pricing Rulebook §4.4;
(b) Specialist has at least one selected L2 specialization per Pricing Rulebook Article 4;
(c) Specialist has published at least one Service pricing record with consultation_fee set per Pricing Rulebook §8.2;
(d) Specialist's subscription is in good standing (not Past Due / Suspended);
(e) Specialist's subscription tier supports calendar functionality per Subscriptions Rulebook (Pro/Expert for Solo; Established/Enterprise for Companies).
4.1.2 Where any of these conditions ceases to be met during the lifetime of a published slot:
(a) Already-booked slots proceed to consultation per their original terms;
(b) Future Available Slots in open status are rendered non-bookable until conditions are restored;
(c) The Specialist is notified.
4.2.1 A Specialist publishes an Available Slot by:
(a) Selecting a date and start time in the Calendar Tab;
(b) Specifying the slot duration;
(c) Confirming the slot;
(d) The Platform records a row in specialist_availability with status open.
4.3.1 Available Slots must:
(a) Have duration in multiples of fifteen (15) minutes (e.g., 15, 30, 45, 60, 75 minutes);
(b) Start at 15-minute aligned times (i.e., :00, :15, :30, :45 minutes past the hour);
(c) Have positive duration (zero or negative durations are invalid).
4.3.2 The Platform validates these constraints on slot creation; non-compliant requests are rejected.
4.4.1 No upper limit is imposed on how far in the future an Available Slot may be published.
4.4.2 No minimum advance notice is required between slot publication and slot start time; a Specialist may publish a slot starting in five minutes if they so choose.
4.4.3 Specialists who publish far-future slots should be aware that:
(a) The Calendar Feed query window is capped at 31 days per Section 3.2;
(b) Slots beyond the query window remain stored and become visible as their dates approach;
(c) The Specialist's Standing Offer per Pricing Rulebook §8.3 binds them to honor far-future slots when booked.
4.5.1 A row in specialist_availability may have one of the following statuses:
| Status | Description | Bookable by Client? |
|---|---|---|
open |
Slot published; no booking yet | ✅ Yes |
held |
Booking initiated; Pre-Authorization pending | ❌ No (transient) |
booked |
Booking confirmed via Pre-Authorization | ❌ No |
blocked |
Slot withdrawn by Specialist or system (e.g., conflict) | ❌ No |
4.5.2 Status transitions:
(a) open → held — Client begins booking flow per Pricing Rulebook §8.4;
(b) held → booked — Pre-Authorization succeeds; Inquiry record created per Inquiries Rulebook;
(c) held → open — Pre-Authorization fails or Client abandons within timeout;
(d) open → blocked — Specialist withdraws slot per Section 4.6 OR system blocks for conflict per Article 9;
(e) booked → cancellation flows governed by Inquiries Rulebook §10.3 and Pricing Rulebook §8.5.
4.6.1 A Specialist may withdraw an open Available Slot at any time by removing it from the calendar.
4.6.2 A Specialist may NOT withdraw a held or booked slot unilaterally:
(a) held slots are transient — they auto-resolve to open or booked within the booking flow timeout;
(b) booked slots represent confirmed Inquiries; cancellation is governed by Inquiries Rulebook §10.3 (preauth refund) and Pricing Rulebook §8.5.2 (Specialist inability to honor with reschedule).
4.6.3 Withdrawal of an open slot is logged in the calendar audit trail per Article 13.
4.7.1 An open Available Slot may be modified (date, start time, duration) by withdrawing and re-publishing.
4.7.2 Direct in-place modification is not supported in v1.0 to preserve audit trail simplicity.
4.8.1 A Specialist may publish multiple Available Slots through the Platform's bulk-publication interface (e.g., a recurring weekly schedule).
4.8.2 Bulk-published slots are subject to the same validation as individual slots per Section 4.3.
4.8.3 Bulk operations are at the Platform's reasonable discretion; the Platform may impose rate limits or per-batch caps in operational policy.
5.1.1 The legal/contractual effect of publishing an Available Slot — namely, that publication constitutes a Standing Offer that auto-accepts upon Client booking — is governed by Specializations & Pricing Rulebook §8.3, not by this Rulebook.
5.1.2 This Rulebook governs only the publication mechanics and lifecycle of Available Slots.
5.2.1 Where a Specialist's calendar configuration would create a Standing Offer the Specialist cannot honor (e.g., overlap with later-discovered commitments), the resolution is:
(a) Before booking — Specialist may withdraw the slot per Section 4.6;
(b) After booking — Pricing Rulebook §8.5.2 applies (genuine inability with reschedule path);
(c) Specialists are responsible for ensuring published Available Slots reflect their actual availability before publication.
5.3.1 The Standing Offer effect of an Available Slot is independent of the Specialist's Google Calendar connection status:
(a) An Available Slot is binding once published, regardless of whether Google is connected;
(b) Disconnecting Google Calendar does NOT suspend, modify, or cancel published Available Slots;
(c) Specialists who disconnect Google Calendar bear sole responsibility for managing their availability without Google sync;
(d) Conflicts that arise post-disconnect are resolved per Pricing Rulebook §8.5.2 if a booking cannot be honored.
6.1.1 A Specialist may create a Personal Block representing busy time on their calendar through the Platform interface.
6.1.2 Personal Block creation is available regardless of Google Calendar connection status:
(a) Without Google connection — Personal Block is stored in Platform data only;
(b) With Google connection — Personal Block is created on the Platform AND pushed to the Specialist's primary Google Calendar.
6.2.1 A Personal Block contains:
(a) Title (Specialist-provided);
(b) Description (optional, Specialist-provided);
(c) Start time;
(d) End time;
(e) Origin marker indicating Platform-created (vs. Google-native).
6.3.1 Personal Block visibility:
(a) To the Specialist — full title and description visible in their Calendar Tab;
(b) To Clients (public-facing) — only "Busy" indicator displayed; no title, description, or any other content surfaced;
(c) To Platform administrators — accessible only on legal compulsion or for investigation per Privacy Policy;
(d) To Moderators — not accessible in routine moderation; accessible only for specific compliance investigations per Moderator T&C.
6.4.1 Specialists may edit or delete Personal Blocks they created via the Platform.
6.4.2 Edit/delete operations on Platform-created Personal Blocks:
(a) When Google is connected — propagate to the corresponding Google Calendar event;
(b) When Google is not connected — affect only Platform-stored data.
6.5.1 Only the Specialist themselves may create, edit, or delete Personal Blocks for their calendar in v1.0.
6.5.2 Delegation of Personal Block management to assistants, staff, or representatives is NOT supported in v1.0; reserved for future Platform versions.
6.6.1 Personal Blocks are treated as busy time for the purposes of:
(a) Preventing overlapping Available Slot publication;
(b) Suspending Standing Offer for overlapping open slots per Article 9;
(c) Indicating "Busy" in public-facing calendar views.
7.1.1 Google Calendar connection is available only to:
(a) Solo Specialists on Expert tier;
(b) Company Specialists whose Affiliated Company holds Enterprise tier subscription.
7.1.2 Specialists at lower tiers (Freemium, Pro, Basic, Established) may use the Platform calendar for Available Slots and Personal Blocks but cannot connect Google Calendar.
7.2.1 A Specialist initiates Google Calendar connection through the Platform interface:
(a) Specialist clicks "Connect Google Calendar" in the Calendar Tab;
(b) Platform redirects to Google's OAuth consent screen with a signed state parameter preserving the return URL;
(c) Specialist authorizes the Platform on Google's interface;
(d) Google redirects back to Platform's OAuth callback;
(e) Platform validates the state parameter and persists the OAuth Token.
7.3.1 The Platform requests OAuth scope sufficient for read and write access to the Specialist's primary Google Calendar only (typically calendar.events.owned or equivalent narrowest-fit scope).
7.3.2 The Platform does NOT request:
(a) Access to additional Google Calendars (work, secondary, shared);
(b) Read access to other Google services;
(c) Persistent profile information beyond what is required for OAuth identity resolution.
7.4.1 Each Specialist may have at most one (1) connected Google account at any time.
7.4.2 To change connected accounts, the Specialist must disconnect the existing account before connecting a new one.
7.5.1 OAuth Tokens are stored in specialist_google_calendar_tokens with the following protection:
(a) Encrypted at rest per Platform's encryption standards;
(b) Access restricted to authorized Platform services performing sync;
(c) Not exposed to Platform administrators except on legal compulsion or investigation per Privacy Policy.
7.6.1 The Specialist's Calendar Tab displays:
(a) Current connection status (connected / not connected);
(b) Connected Google email address;
(c) Last successful sync timestamp;
(d) Any active sync failure indicators per Article 10.
7.7.1 Upon successful OAuth authorization, the Platform establishes a Watch Channel with Google Calendar to receive notifications of calendar changes.
7.7.2 Watch Channels are renewed automatically by the Platform before expiration per Section 10.4.
7.8.1 When a Specialist connects Google Calendar after having previously created Personal Blocks via the Platform without Google sync:
(a) Existing Personal Blocks are pushed to the connected Google Calendar;
(b) Push operations may be batched and retried per Article 10;
(c) The Specialist is notified upon successful or failed bulk push.
8.1.1 A Specialist may disconnect Google Calendar at any time, at will, without justification or advance notice obligation.
8.1.2 Disconnection is initiated by the Specialist through the Calendar Tab.
8.2.1 Upon disconnection:
(a) The Platform stops all active Watch Channels;
(b) The Platform attempts to revoke the OAuth refresh token with Google;
(c) The Platform deletes the row in specialist_google_calendar_tokens.
8.2.2 If revocation with Google fails (e.g., already revoked at Google side), local Platform data deletion proceeds nonetheless.
8.3.1 Disconnection does NOT affect:
(a) Already-confirmed bookings (consultations remain scheduled);
(b) Previously-published open Available Slots (Standing Offer continues per Section 5.3);
(c) Personal Blocks (preserved as Platform-only data).
8.4.1 Upon disconnection, all rows in specialist_external_busy for that Specialist are deleted from Platform storage.
8.4.2 This reflects the principle that External Busy Blocks are derivative of the Google connection; without the connection, the data has no operational purpose and should not persist.
8.4.3 Already-confirmed bookings on the Specialist's Google Calendar (pushed from Platform during the connected period) remain on the Specialist's Google Calendar; the Platform no longer manages or removes them.
8.5.1 A Specialist may reconnect Google Calendar at any time after disconnection.
8.5.2 Re-connection follows the same OAuth flow per Article 7.
8.5.3 Re-connection does NOT recover prior External Busy Block data; busy blocks are re-pulled fresh from Google on next Inbound Sync.
8.6.1 A Specialist who has disconnected Google Calendar:
(a) Has no special obligation to take any action — disconnect is at-will;
(b) Bears sole responsibility for managing availability without Google sync;
(c) Must continue to honor Standing Offers for already-published Available Slots per Pricing Rulebook §8.3;
(d) May publish, modify, or withdraw Available Slots and Personal Blocks normally through the Platform interface.
9.1.1 When Google Calendar is connected, the Platform pulls busy time from the Specialist's primary Google Calendar into the specialist_external_busy data store.
9.1.2 Inbound Sync is triggered by:
(a) Watch Channel notifications from Google indicating calendar changes;
(b) Periodic polling at the Platform's discretion;
(c) Specialist-initiated manual refresh.
9.2.1 For each Google event identified as busy time, the Platform pulls:
(a) Start time;
(b) End time;
(c) Title (event summary).
9.2.2 The Platform does NOT pull:
(a) Event description / body text;
(b) Location;
(c) Attendees;
(d) Attachments;
(e) Recurring event series metadata beyond the individual occurrence;
(f) Event reminders or notifications.
9.3.1 External Busy Blocks displayed in the Specialist's Calendar Tab:
(a) Show the Google event title for the Specialist's reference;
(b) Are visually distinguished from Platform-native events (Available Slots, Personal Blocks, Confirmed Bookings);
(c) Are read-only — Specialist cannot edit or delete them through the Platform per Section 9.5.
9.4.1 External Busy Blocks in public-facing calendar views display only as "Busy" with no title, no description, and no source indication.
9.4.2 Clients viewing the Specialist's public calendar cannot distinguish External Busy Blocks from Personal Blocks or Confirmed Bookings — all appear uniformly as "Busy."
9.5.1 Google-Native Events (events created directly in the Specialist's Google Calendar without Platform involvement) are NOT editable or deletable through the Platform interface.
9.5.2 This protection is a deliberate Rulebook-level rule to preserve the Specialist's Google Calendar as their own data:
(a) The Platform's role is to read busy data only;
(b) Modification of Google-Native Events must occur through Google's interface directly;
(c) The Platform shall not perform any write operation on Google-Native Events.
9.5.3 Platform-created events (Personal Blocks, Confirmed Bookings) pushed to Google ARE editable/deletable through the Platform; the protection in Section 9.5.1 applies only to Google-Native events.
9.6.1 Where an External Busy Block overlaps with an open Available Slot:
(a) The External Busy Block wins;
(b) The overlapping open Available Slot is rendered non-bookable for the duration of the conflict;
(c) The Standing Offer for that Slot is suspended for the duration of the conflict;
(d) The Specialist is notified of the conflict;
(e) If the External Busy Block is later removed (e.g., Google event canceled), the Available Slot returns to bookable status.
9.6.2 Where an External Busy Block overlaps with an already-booked slot (i.e., a Confirmed Booking):
(a) The Confirmed Booking is NOT suspended — the consultation proceeds;
(b) The overlap is logged for Specialist's awareness;
(c) The Specialist must resolve the conflict externally (e.g., reschedule the Google event or manage attendance).
9.7.1 When a Service Inquiry Consultation, Direct Consultation, or book-from-calendar booking is confirmed, the Platform pushes a corresponding event to the Specialist's connected Google Calendar (Outbound Sync).
9.7.2 The pushed event includes:
(a) Event title indicating the consultation type and Client identifier (anonymized as appropriate);
(b) Start and end times;
(c) Location field indicating Platform meeting URL or "legal.ge consultation";
(d) Description with non-privileged metadata (e.g., consultation reference number).
9.7.3 The pushed event does NOT include:
(a) Privileged consultation content;
(b) Specific Inquiry text or messages;
(c) Attached documents;
(d) Other content protected by Inquiries Rulebook §13 confidentiality.
9.8.1 Where a Confirmed Booking is rescheduled, cancelled, or otherwise updated on the Platform side, the Platform pushes the corresponding update to Google Calendar.
9.8.2 Updates respect the Section 9.5 boundary: only Platform-created events are modified; Google-Native Events are untouched.
10.1.1 The Platform commits to commercially reasonable sync reliability through:
(a) Watch Channel renewal automation per Section 10.4;
(b) Retry logic with exponential backoff for transient failures;
(c) Surface notifications to Specialist for persistent failures;
(d) Last-successful fallback for Inbound Sync.
10.1.2 The Platform does NOT guarantee real-time sync; Google Calendar API rate limits, network conditions, and third-party reliability constraints may introduce sync latency.
10.2.1 When the Platform's attempt to refresh a Specialist's OAuth refresh token fails (e.g., Specialist revoked authorization at Google side, token expired beyond renewable window):
(a) The Platform performs an auto-disconnect treating the connection as terminated per Article 8;
(b) specialist_external_busy rows are cleared per §8.4.1;
(c) The Specialist is notified via in-app notification and email that the Google Calendar connection has been terminated and re-authorization is required;
(d) Already-confirmed bookings remain on Google per §8.4.3.
10.2.2 Auto-disconnect on token failure follows the same mechanics as user-initiated disconnect — at-will, no special Specialist obligation per §8.6.
10.3.1 When an Outbound Sync push (Confirmed Booking → Google) fails:
(a) The Platform retries with exponential backoff (typical retry windows: minutes to hours);
(b) Persistent failure (e.g., 24 hours of failed retries) is surfaced to the Specialist via in-app notification;
(c) The Specialist is responsible for adding the booking to their Google Calendar manually if persistent push failure occurs;
(d) The booking on the Platform side is unaffected by Outbound Sync failure.
10.4.1 Google Calendar Watch Channels expire periodically (typically 7–30 days).
10.4.2 The Platform auto-renews Watch Channels before expiration to maintain Inbound Sync continuity.
10.4.3 Watch Channel renewal failures are handled the same as Inbound Sync failures per Section 10.5.
10.5.1 When Inbound Sync fails (Watch Channel notification fails, polling fails, etc.):
(a) The Platform retries with exponential backoff;
(b) During failure, the Platform uses last-successful sync data — existing specialist_external_busy rows remain in effect;
(c) Persistent failures are surfaced to the Specialist;
(d) Stale External Busy data may be incorrect; Specialists should verify availability if persistent failures are reported.
10.6.1 To prevent notification fatigue, the Platform aggregates sync-failure notifications:
(a) Transient failures (resolved within retry window) are not surfaced;
(b) Persistent failures (24+ hours) are surfaced once per failure event;
(c) Repeated failure events are surfaced, but in-app notification rate-limited.
11.1.1 Multi-Target Inquiries per Inquiries Rulebook §4.4 may involve multiple Specialists assigned to a single Inquiry, with one designated as Lead Specialist per Inquiries §4.4.
11.1.2 Multi-Specialist video sessions are governed by Video Rulebook §12.
11.2.1 Available Slots for Multi-Specialist consultations are published on the Lead Specialist's calendar only.
11.2.2 Team Specialists do not separately publish Available Slots for the Multi-Specialist engagement; the Lead's calendar is authoritative.
11.2.3 Team Specialists must coordinate their availability with the Lead off-Platform; the Platform does not arbitrate team scheduling.
11.3.1 When a Multi-Specialist consultation is confirmed, the Platform pushes the consultation event to each team Specialist's Google Calendar (where each Specialist has a connected Google Calendar).
11.3.2 The pushed event:
(a) Appears on each team Specialist's primary Google Calendar;
(b) Contains the same content rules per §9.7.2 (anonymized as appropriate);
(c) Indicates the team Specialist's role (Lead or team member);
(d) Provides the meeting URL.
11.3.3 Pushing to team Specialists' Google Calendars provides situational awareness; the legal effect of the booking is governed by Inquiries Rulebook (Quote/Capture) and Video Rulebook (session mechanics), not by calendar push.
11.4.1 Where a non-Lead team Specialist has a calendar conflict with a Multi-Specialist Available Slot:
(a) The Lead Specialist's calendar is authoritative for booking availability;
(b) The non-Lead's calendar conflict is not a basis for blocking the booking on the Platform side;
(c) The team must resolve the non-Lead's conflict off-Platform;
(d) Where the non-Lead cannot attend, this is treated as a team coordination matter, not a Platform-blocking event.
11.4.2 This rule reflects the operational principle that the Lead Specialist coordinates the team and bears responsibility for ensuring team availability per the Inquiries Rulebook §4.4.
11.5.1 Where the Lead Specialist disconnects Google Calendar:
(a) Per Article 8, disconnect is at-will;
(b) Lead retains all obligations to manage availability per Pricing Rulebook §8;
(c) Outbound Sync to non-Lead team Specialists' Google Calendars continues independently for each team Specialist who maintains their own connected Google Calendar.
11.6.1 Where a non-Lead team Specialist disconnects Google Calendar:
(a) Disconnect affects only that Specialist's individual sync;
(b) The Multi-Specialist consultation continues per its scheduled terms;
(c) Outbound Sync to other team members' Google Calendars is unaffected.
12.1.1 During an active Specialist account:
(a) specialist_availability data is retained per Privacy Policy retention schedules — typically aligned with legal/financial transactional record requirements;
(b) specialist_external_busy data is retained while Google Calendar is connected and refreshed continuously;
(c) specialist_google_calendar_tokens are retained while connected.
12.2.1 Upon Google Calendar disconnection per Article 8:
(a) specialist_external_busy rows for that Specialist are deleted;
(b) specialist_google_calendar_tokens row is deleted (after token revocation attempt);
(c) specialist_availability is unaffected (retained per Section 12.1.1).
12.3.1 Upon Specialist account termination per Subscriptions Rulebook §17:
(a) specialist_availability — retained per Privacy Policy schedule (typically 5 years for transactional/financial records, subject to applicable Georgian legal retention requirements);
(b) specialist_external_busy — deleted at termination (no operational purpose post-termination);
(c) specialist_google_calendar_tokens — deleted at termination (token revoked first where possible);
(d) Already-confirmed bookings on Specialist's Google Calendar (pushed during the connected period) — remain on the Specialist's Google Calendar; the Platform no longer manages or removes them.
12.4.1 Specialists may request their own calendar data per the Platform's Privacy Policy:
(a) Available Slot history;
(b) Personal Block history;
(c) External Busy Block snapshots (where retained);
(d) Google connection metadata (connection events, sync timestamps);
(e) Audit log entries pertaining to their calendar.
12.4.2 Such requests are honored within reasonable timeframes consistent with the Privacy Policy.
12.5.1 Where the Platform receives a court order or legally binding directive compelling disclosure of calendar data:
(a) The Platform shall notify the affected Specialist before disclosure where legally permissible;
(b) The Platform shall comply with the order's scope only.
13.1.1 The Platform logs the following calendar-related events:
(a) Available Slot publication, withdrawal, and modification;
(b) Personal Block creation, edit, and deletion;
(c) Google Calendar OAuth authorization (connection);
(d) Google Calendar disconnection (user-initiated or auto-disconnect);
(e) Watch Channel establishment and renewal;
(f) Sync failures (both directions);
(g) Conflict events (External Busy vs. Available Slot);
(h) Slot status transitions (open → held → booked, etc.);
(i) Bulk publication operations;
(j) Slot withdrawal at booking-time disputes.
13.2.1 Each audit log entry includes:
(a) Timestamp;
(b) Specialist ID;
(c) Action type;
(d) Affected entity (slot ID, block ID, token ID, etc.);
(e) Before/after values for modifications;
(f) Source (Specialist UI action / API / system action);
(g) Result (success/failure and reason).
13.3.1 Specialists may request audit log entries pertaining to their own calendar actions through the Platform interface.
13.3.2 Such requests are honored within reasonable timeframes consistent with the Privacy Policy.
13.4.1 The Platform may use audit logs:
(a) To resolve disputes and Appeals per the applicable Rulebook;
(b) To investigate suspected violations of Article 14;
(c) For internal quality assurance and product improvement (in aggregate, anonymised form);
(d) For compliance with legal obligations.
14.1.1 Specialists shall NOT:
(a) Publish Available Slots without intent to honor them (preserved from Pricing Rulebook §14.1(f));
(b) Publish Available Slots that conflict with known commitments (e.g., known holidays, pre-existing engagements) when such conflicts are reasonably foreseeable at the time of publication;
(c) Repeatedly cancel book-from-calendar bookings at the last minute without genuine inability per Pricing Rulebook §8.5.2;
(d) Use Personal Blocks to systematically block out specific Clients or Client groups in a manner constituting unlawful discrimination;
(e) Repeatedly disconnect and reconnect Google Calendar to manipulate the appearance of availability;
(f) Create fake or misleading Available Slots to manipulate Specialist Profile metrics, search rankings, or Median Market Price calculations;
(g) Misuse Personal Blocks to feign unavailability for non-availability reasons (e.g., to evade specific Clients);
(h) Attempt to modify Google-Native Events through unauthorized means;
(i) Share, transmit, or expose other Specialists' calendar data (where access has been improperly obtained).
14.2.1 Clients shall NOT:
(a) Repeatedly book then cancel slots in a pattern constituting slot squatting;
(b) Bulk-book multiple Available Slots without intent to attend all of them;
(c) Use calendar booking to harass Specialists (e.g., booking inappropriate or misleading slots repeatedly);
(d) Submit spurious booking requests designed to consume Specialist availability for non-engagement purposes;
(e) Attempt to manipulate Specialist booking metrics through booking patterns inconsistent with genuine engagement intent.
14.3.1 Violations may result in:
| Severity | Possible Consequences |
|---|---|
| Minor | Warning |
| Standard | Calendar publication restrictions; specific blocks removed; rate limits imposed |
| Serious | Calendar feature suspension; loss of Google Calendar integration access; loss of Standing Offer eligibility per Pricing Rulebook |
| Severe | Account suspension or termination per Role T&C |
14.3.2 Specific consequence application is at Platform discretion in coordination with Moderators per Moderator T&C.
15.1.1 The Platform shall notify Specialists of the following calendar events:
(a) Available Slot booked by Client (per Pricing Rulebook §15);
(b) Available Slot expired (slot time passed without booking);
(c) Personal Block created (confirmation of action);
(d) Personal Block edited (confirmation of action);
(e) Personal Block deleted (confirmation of action);
(f) Google Calendar connected (post-OAuth success);
(g) Google Calendar disconnected (Specialist-initiated or auto-disconnect per §10.2);
(h) Sync failure detected after retry exhaustion per §10.3 / §10.5;
(i) External Google event auto-blocked an Available Slot (conflict resolution per §9.6);
(j) Multi-Specialist consultation pushed to Google Calendar (notification of receipt of confirmed booking event).
15.2.1 Client-side calendar notifications (booking confirmation, reschedule, cancellation) are governed by Pricing Rulebook §15, which is canonical for Client-side calendar-related notifications. This Rulebook does not duplicate those rules.
15.3.1 Notifications are delivered via:
(a) In-app notification (mandatory);
(b) Email to address on file (mandatory);
(c) Other channels at Platform discretion.
16.1.1 The Platform commits to commercially reasonable Google Calendar sync infrastructure consistent with standard SaaS calendar integration practices.
16.1.2 The Platform makes no specific warranty regarding:
(a) Sync latency or real-time accuracy;
(b) Continuous Google Calendar API availability;
(c) Watch Channel reliability across third-party network conditions;
(d) Google's third-party policies or actions affecting OAuth token validity.
16.2.1 Calendar functionality depends on:
(a) Google's Calendar API service availability;
(b) Google's OAuth infrastructure;
(c) Specialist's ongoing authorization grant at Google side;
(d) Google's policies on Watch Channel duration and renewal.
16.2.2 The Platform is not liable for failures arising from third-party (Google) actions, outages, or policy changes.
16.3.1 The Specialist is responsible for:
(a) Accuracy of their published Available Slots;
(b) Ensuring published slots reflect actual availability;
(c) Honoring Standing Offers per Pricing Rulebook §8;
(d) Managing availability without Google sync if disconnected;
(e) Resolving conflicts arising from External Busy vs. Available Slot overlaps;
(f) Maintaining valid Google account and authorization where Google integration is used.
16.4.1 The Platform's liability for matters under this Rulebook is limited to:
(a) Maintaining the Platform's own calendar data store;
(b) Operating the OAuth integration and sync mechanics;
(c) Providing audit logging;
(d) Such other remedies as expressly provided in this Rulebook or referenced Rulebooks.
16.4.2 The Platform is NOT liable for:
(a) Loss of bookings arising from sync failures;
(b) Specialist business loss arising from Google Calendar policy changes;
(c) Discrepancies between Platform calendar and Google Calendar data;
(d) Errors in third-party calendar event content pushed to Google;
(e) Outcomes of consultations booked via calendar.
16.5.1 The Specialist shall defend, indemnify, and hold harmless the Platform from claims arising from:
(a) Misrepresentation of availability through calendar publication;
(b) Failure to honor Standing Offers;
(c) Discriminatory or abusive use of Personal Blocks;
(d) Manipulation of calendar metrics;
(e) Breach of Article 14 prohibited conduct.
17.1.1 This Rulebook is governed by the laws of Georgia.
17.2.1 Any dispute arising out of or relating to this Rulebook that cannot be resolved through Platform mechanisms shall be subject to the exclusive jurisdiction of the courts of Tbilisi, Georgia.
17.3.1 This Rulebook is published in English, Georgian, and Russian. In the event of any conflict between language versions, the Georgian version prevails.
18.1.1 The Platform reserves the right to amend this Rulebook at any time, in its sole discretion.
18.2.1 Non-material amendments take effect upon publication; continued use constitutes acceptance.
18.2.2 Material amendments (e.g., changes to OAuth scope, changes to Google-Native Events protection, changes to Standing Offer mechanics insofar as referenced here, changes to data retention) are subject to:
(a) Affirmative re-consent for Specialists wishing to continue using calendar functionality;
(b) At least thirty (30) days' advance notice.
18.3.1 A Specialist who does not accept a material amendment may decline; the consequence is loss of calendar publishing privileges. Other Platform features may remain accessible.
19.1.1 This Rulebook coordinates with the following Function Rulebooks:
| Topic | Where the Rules Live |
|---|---|
| Standing Offer effect of Available Slot | Specializations & Pricing Rulebook §8.3 |
consultation_fee and pricing fields |
Specializations & Pricing Rulebook |
| Inquiry, Quote, payment, Capture | Inquiries Rulebook (with §7.4.3 auto-acceptance for book-from-calendar) |
| Video session mechanics | Video Consultations Rulebook |
| Subscription tier definitions | Subscriptions & Billing Rulebook |
| Reviews | Reviews & Ratings Rulebook |
| Multi-Specialist Inquiry context | Inquiries Rulebook §4.4 |
| Multi-Specialist video session mechanics | Video Rulebook §12 |
| Organisation membership | Organisation Terms and Conditions |
19.2.1 Conflicts are resolved as follows:
(a) Standing Offer effect, pricing fields — Specializations & Pricing Rulebook prevails;
(b) Inquiry mechanics, Quote, Capture, Appeals — Inquiries Rulebook prevails;
(c) Video session mechanics — Video Rulebook prevails;
(d) Subscription tier and billing — Subscriptions Rulebook prevails;
(e) Calendar publication mechanics, OAuth integration, sync semantics, Personal Blocks, External Busy synchronization — this Rulebook prevails;
(f) Where matters cross categories — interpreted to give effect to all and avoid conflict; if irreducible, the more specific Rulebook prevails over the more general.
19.3.1 Adoption of this Rulebook requires the following updates to other Rulebooks:
(a) Subscriptions Rulebook — update to add Calendar Functionality and Google Calendar Integration as tier features (handled in companion amendment package);
(b) Specializations & Pricing Rulebook — minor cross-reference note in §8 may benefit from explicit reference to this Rulebook (handled in companion amendment package);
(c) Other Rulebooks do not require modification.
19.3.2 No Role T&C requires substantive modification; cross-reference updates may be applied through routine Role T&C updates.
20.1.1 If any provision of this Rulebook is held invalid, illegal, or unenforceable, the provision shall be modified to the minimum extent necessary to make it valid; if not possible, the provision shall be severed, and the remaining provisions shall continue in force.
20.2.1 This Rulebook, together with the master Terms and Conditions, Privacy Policy, Cookie Policy, and applicable Function Rulebooks and Role Terms and Conditions, constitutes the entire agreement regarding the Calendar function on the Platform.
20.3.1 The Platform's failure to enforce any provision shall not constitute a waiver. Any waiver must be in writing to be effective.
| Version | Date | Author | Description |
|---|---|---|---|
| 1.0 | 13 May 2026 | Legal Sandbox Georgia LLC | Initial publication |
| Parameter | Value | Source |
|---|---|---|
| Calendar event sources | 4 (consultation, direct_consultation, availability, external_busy) | Art. 3.1 |
| Calendar feed query window | 31 days max | Art. 3.2 |
| Slot duration constraint | Multiples of 15 minutes | Art. 4.3.1(a) |
| Slot start alignment | 15-minute aligned (:00, :15, :30, :45) | Art. 4.3.1(b) |
| Minimum advance notice | None | Art. 4.4.2 |
| Maximum publication horizon | None | Art. 4.4.1 |
| Slot statuses | open / held / booked / blocked | Art. 4.5.1 |
| Personal Block — Google connection required | No (works with or without) | Art. 6.1.2 |
| Personal Block visibility (public) | "Busy" only | Art. 6.3.1(b) |
| Personal Block delegation | Specialist only (v1.0) | Art. 6.5 |
| Google Calendar integration tier | Expert (Solo) / Enterprise (Company) only | Art. 7.1 |
| OAuth scope | Primary calendar only | Art. 7.3 |
| Connected Google accounts per Specialist | 1 (max) | Art. 7.4 |
| Disconnect | At-will, no special obligation | Art. 8.1, §8.6 |
| External Busy data deleted on disconnect | Yes | Art. 8.4 |
| Already-confirmed bookings on Google | Remain on Google after disconnect | Art. 8.4.3 |
| Inbound sync data | Time + title only | Art. 9.2 |
| External Busy public display | "Busy" only (no title) | Art. 9.4 |
| Google-Native Events | Protected (read-only via Platform) | Art. 9.5 |
| Conflict resolution (External Busy vs. Available Slot) | External Busy wins; Standing Offer suspended | Art. 9.6 |
| Outbound sync (Confirmed Booking → Google) | Auto-pushed; non-privileged content only | Art. 9.7 |
| Token refresh failure | Auto-disconnect | Art. 10.2 |
| Watch Channel renewal | Auto-renewed before expiry | Art. 10.4 |
| Outbound sync failure | Retry, then surface to Specialist | Art. 10.3 |
| Inbound sync failure | Retry + last-successful fallback | Art. 10.5 |
| Multi-Specialist availability publication | Lead Specialist's calendar only | Art. 11.2 |
| Multi-Specialist confirmed event push | All team Specialists' Google Calendars | Art. 11.3 |
| Multi-Specialist conflict resolution | Lead's calendar drives | Art. 11.4 |
specialist_availability retention |
Per Privacy Policy schedule (~5 years) | Art. 12.3 |
specialist_external_busy retention at termination |
Deleted | Art. 12.3 |
specialist_google_calendar_tokens retention |
Deleted at termination | Art. 12.3 |
| Material amendment notice | 30 days | Art. 18.2.2 |
END OF RULEBOOK
© 2026 LegalGE. Все права защищены.