Google Calendar (google_calendar_v1
)
This integration is included in WebhookDB Enterprise.
Replicate Google Calendars into your database.
To get set up, run this code from the WebhookDB CLI:
webhookdb integrations create google_calendar_v1
Source documentation for this API: https://developers.google.com/calendar/api/v3/reference/calendars
Features
- Depends on
- To use this replicator, you will need google_calendar_list_v1. You'll be prompted to create it if you haven't.
- Dependents
- This replicator is required for the creation of the following dependents:
- Supports Webhooks
- ✅
- Supports Backfilling
- ❌
- Enterprise Only
- Yes
Schema
Tables replicated from Google Calendars have this schema. Note that the data types listed are for Postgres; when replicating to other databases, other data types maybe used.
Column | Type | Indexed |
pk | bigint | |
compound_identity | text | ✅ |
row_created_at | timestamptz | ✅ |
row_updated_at | timestamptz | ✅ |
google_id | text | ✅ |
external_owner_id | text | ✅ |
time_zone | text | |
deleted | boolean | |
sync_tokens | jsonb | |
events_watch_channel_id | text | ✅ |
events_watch_resource_id | text | |
events_watch_channel_expiration | timestamptz | ✅ |
events_page_size | integer | |
data * | jsonb |
* The data
column contains the raw payload from the webhook or API. In many cases there is no canonical form, like if a webhook and API request return two different versions of the same resource. In that case we try to keep the most coherent and detailed resource.”
Table definition
This definition can also be generated through webhookdb fixture google_calendar_v1
.
CREATE TABLE public.google_calendar_v1_fixture (
pk bigserial PRIMARY KEY,
compound_identity text UNIQUE NOT NULL,
row_created_at timestamptz,
row_updated_at timestamptz,
google_id text,
external_owner_id text,
time_zone text,
deleted boolean,
sync_tokens jsonb,
events_watch_channel_id text,
events_watch_resource_id text,
events_watch_channel_expiration timestamptz,
events_page_size integer,
data jsonb NOT NULL
);
CREATE INDEX IF NOT EXISTS svi_fixture_compound_identity_idx ON public.google_calendar_v1_fixture (compound_identity);
CREATE INDEX IF NOT EXISTS svi_fixture_row_created_at_idx ON public.google_calendar_v1_fixture (row_created_at);
CREATE INDEX IF NOT EXISTS svi_fixture_row_updated_at_idx ON public.google_calendar_v1_fixture (row_updated_at);
CREATE INDEX IF NOT EXISTS svi_fixture_google_id_idx ON public.google_calendar_v1_fixture (google_id);
CREATE INDEX IF NOT EXISTS svi_fixture_external_owner_id_idx ON public.google_calendar_v1_fixture (external_owner_id);
CREATE INDEX IF NOT EXISTS svi_fixture_events_watch_channel_id_idx ON public.google_calendar_v1_fixture (events_watch_channel_id);
CREATE INDEX IF NOT EXISTS svi_fixture_events_watch_channel_expiration_idx ON public.google_calendar_v1_fixture (events_watch_channel_expiration);