Google Directory and Google Calendar connector specifications
Integrate with Google Directory to share employee contact information with your entire organization on any device, intranet, or messenger. Integrate with Google Calendar to manage calendar events.
Version details
Citrix microapps supports the latest G Suite APIs.
Endpoints
Note:
Custom endpoints are not supported.
Google Directory
https://developers.google.com/admin-sdk/directory/
https://www.googleapis.com/admin/directory/v1
/users
/groups
Google Calendar
https://developers.google.com/calendar/overview/
https://www.googleapis.com/admin/directory/v1
/users
/resources
/calendar
/events
Service Actions
Google Directory
- Create User - Create a new user (Admin)
- Update User - Update an existing user
- Delete User - Delete an existing user (Admin)
- Create event - Create a one-time event. We can create an event to any calendar (even personal) to which the account (used to set up the connector) has access
- Create recurring event - Create a recurring event
- Add Attendee - Book a meeting room / Add attendee. For the selected event, you can book a resource - room or add an attendee
- Load Specific Calendar Events - Loads calendar events
Key Entities
The following are the main business entities that this connector addresses:
Google Directory
- User
- Group
Google Calendar
- Attachments
- Attendees
- Buildings
- Calendars
- Events
- Rooms
- Room Features
- Room Availability
Entities with Attributes
The following is a full list of entities and their attributes (Google Directory v.0.6.0):
- user_id: STRING(250), FK(user.id)
- group_id: STRING(250), FK(group.id)
- value: STRING(100), PK
group
- id: STRING(250), PK
- name: STRING(250)
- etag: STRING(250)
- direct_members_count: LONG
- description: STRING(250)
- admin_created: BOOLEAN
- email: STRING(250)
member
- sapho_id: STRING(100), PK
- id: STRING(250)
- etag: STRING(250)
- role: STRING(100)
- type: STRING(100)
- status: STRING(100)
- email: STRING(250)
- group_id: STRING(250), FK(group.id)
- group_member_id: STRING(250), FK(group.id)
- user_member_id: STRING(250), FK(user.id)
organization_unit
- org_unit_id: STRING(250), PK
- etag: STRING(250)
- name: STRING(250)
- description: STRING(250)
- org_unit_path: STRING(250)
- parent_org_unit_path: STRING(250)
- parent_org_unit_id: STRING(250), FK(organization_unit.org_unit_id)
- block_inheritance: BOOLEAN
user
- id: STRING(250), PK
- e_tag: STRING(250)
- given_name: STRING(100)
- surname: STRING(100)
- full_name: STRING(100)
- email: STRING(100)
- photo_url: STRING(500)
- admin: BOOLEAN
- delegated_admin: BOOLEAN
- last_login_time: DATETIME
- creation_time: DATETIME
- deletion_time: DATETIME
- agreed_to_terms: BOOLEAN
- suspended: BOOLEAN
- suspension_reason: STRING(100)
- chng_pswd_at_next_login: BOOLEAN
- ip_whitelisted: BOOLEAN
- thumbnail_photo_etag: STRING(500)
- customer_id: STRING(100)
- org_unit_path: STRING(100), FK(organization_unit.org_unit_path)
- mailbox_setup: BOOLEAN
- enforced_in_2_sv: BOOLEAN
- enrolled_in_2_sv: BOOLEAN
- incl_in_glob_addr_list: BOOLEAN
- gender_address_me_as: STRING(100)
- gender_custom_gender: STRING(100)
- gender_type: STRING(100)
- note_value: STRING(100)
- note_content_type: STRING(100)
- phone: STRING(50)
- title: STRING(100)
- location: STRING(100)
- relation: STRING(100)
- department: STRING(100)
- photo: BINARY
- photo_mime_type: STRING(100)
user_address
- id: STRING(100), PK
- index: INTEGER(x32)
- user_id: STRING(250), FK(user.id)
- type: STRING(100)
- custom_type: STRING(250)
- source_is_structured: BOOLEAN
- formatted: STRING(250)
- po_box: STRING(100)
- extended_address: STRING(250)
- street_address: STRING(250)
- locality: STRING(100)
- region: STRING(100)
- postal_code: STRING(100)
- country: STRING(100)
- primary: BOOLEAN
- country_code: STRING(100)
user_email
- id: STRING(100), PK
- index: INTEGER(x32)
- user_id: STRING(250), FK(user.id)
- address: STRING(100)
- type: STRING(100)
- custom_type: STRING(100)
- primary: BOOLEAN
user_external_id
- id: STRING(100), PK
- index: INTEGER(x32)
- user_id: STRING(250), FK(user.id)
- type: STRING(100)
- custom_type: STRING(100)
- value: STRING(100)
user_imaccount
- id: STRING(100), PK
- index: INTEGER(x32)
- user_id: STRING(250), FK(user.id)
- type: STRING(100)
- custom_type: STRING(100)
- primary: BOOLEAN
- protocol: STRING(100)
- custom_protocol: STRING(100)
- im: STRING(100)
user_organization
- id: STRING(100), PK
- index: INTEGER(x32)
- user_id: STRING(250), FK(user.id)
- name: STRING(100)
- title: STRING(100)
- primary: BOOLEAN
- type: STRING(100)
- custom_type: STRING(100)
- department: STRING(100)
- symbol: STRING(100)
- location: STRING(100)
- description: STRING(100)
- domain: STRING(100)
- cost_center: STRING(100)
- full_time_equivalent: INTEGER(x32)
user_phone
- id: STRING(100), PK
- index: INTEGER(x32)
- user_id: STRING(250), FK(user.id)
- type: STRING(100)
- custom_type: STRING(100)
- value: STRING(100)
- primary: BOOLEAN
user_relation
- id: STRING(100), PK
- index: INTEGER(x32)
- user_id: STRING(250), FK(user.id)
- type: STRING(100)
- custom_type: STRING(100)
- value: STRING(100)
user_website
- id: STRING(100), PK
- index: INTEGER(x32)
- user_id: STRING(250), FK(user.id)
- value: STRING(100)
- type: STRING(100)
- custom_type: STRING(100)
- primary: BOOLEAN
The following is a full list of entities and their attributes (Google Calendar v.0.1.0):
attachment (List of Attachments to a calendar event)
- generated_attachment_id: STRING(128), PK
- file_id: STRING(100)
- generated_event_id: STRING(128), FK(event.generated_event_id)
- file_url: STRING(1024)
- icon_link: STRING(1024)
- mime_type: STRING(250)
- title: STRING(250)
attendee (List of Attendees to a calendar event)
- generated_id: STRING(128), PK
- attendee_id: STRING(100)
- generated_event_id: STRING(128), FK(event.generated_event_id)
- display_name: STRING(250)
- email: STRING(250)
- comment: STRING(2000)
- organizer: BOOLEAN
- optional: BOOLEAN
- resource: BOOLEAN
- response_status: STRING(250)
building (List of Buildings)
- etag: STRING(250)
- building_id: STRING(100), PK
- building_name: STRING(100)
- description: STRING(250)
- latitude: FLOAT(prec=10, scale=4)
- longitude: FLOAT(prec=10, scale=4)
calendar (A collection of all existing calendars)
- calendar_id: STRING(191), PK
- summary: STRING(2000)
- description: STRING(2000)
- location: STRING(2000)
- time_zone: STRING(100)
calendar_acl (Calendars’ Access Control List)
- id: STRING(128), PK
- acl_id: STRING(100)
- calendar_id: STRING(191), FK(calendar.calendar_id)
- room_calendar_id: STRING(191), FK(room.resource_email)
- resource: BOOLEAN
- etag: STRING(250)
- scope_type: STRING(64)
- scope_value: STRING(100)
- role: STRING(64)
event (List of Events from a calendar)
- generated_event_id: STRING(128), PK
- calendar_id: STRING(191), FK(calendar.calendar_id)
- user_calendar_id: STRING(191), FK(user_calendar.calendar_id)
- google_event_id: STRING(1024)
- i_cal_uid: STRING(250)
- name: STRING(250)
- description: STRING(-1)
- color_id: INTEGER(x32)
- status: STRING(250)
- created: DATETIME
- updated: DATETIME
- all_day_event: BOOLEAN
- start_time_original: DATETIME
- start_time: DATETIME
- end_time: DATETIME
- location: STRING(1024)
- visibility: STRING(250)
- html_link: STRING(1024)
- hangout_link: STRING(1024)
- creator_id: STRING(250)
- creator_display_name: STRING(250)
- creator_email: STRING(250)
- organizer_id: STRING(250)
- organizer_display_name: STRING(250)
- organizer_email: STRING(250)
- multi_day_event: BOOLEAN
room (List of Rooms)
- resource_id: STRING(100), PK
- etag: STRING(250)
- building_id: STRING(100), FK(building.building_id)
- resource_name: STRING(100)
- generated_resource_name: STRING(100)
- resource_type: STRING(100)
- resource_description: STRING(250)
- resource_email: STRING(191), FK(calendar.calendar_id)
- capacity: INTEGER(x32)
- floor_name: STRING(100)
- floor_section: STRING(100)
- resource_category: STRING(100)
- user_visible_description: STRING(250)
- feature_list: STRING(2000)
room_availability (List of availability intervals for room calendars)
- id: STRING(128), PK
- room_id: STRING(100), FK(room.resource_id)
- start_time: DATETIME
- end_time: DATETIME
room_feature (List of Room Features)
- id: STRING(128), PK
- room_id: STRING(100), FK(room.resource_id)
- name: STRING(100)
- etag: STRING(250)
sync_token (Internal use sync token storage table)
- token_key: STRING(191), PK
- token: STRING(128)
user_calendar (The collection of calendars in the user’s calendar list)
- id: STRING(128), PK
- user_id: STRING(100)
- calendar_id: STRING(191), FK(calendar.calendar_id)
- etag: STRING(250)
- summary: STRING(2000)
- description: STRING(2000)
- location: STRING(2000)
- time_zone: STRING(100)
- summary_override: STRING(2000)
- color_id: STRING(100)
- background_color: STRING(100)
- foreground_color: STRING(100)
- hidden: BOOLEAN
- selected: BOOLEAN
- primary: BOOLEAN
- access_role: STRING(250)