System Setup - rtCamp/frappe-appointment GitHub Wiki

System Setup

1. Google Cloud Setup

Create a Google Project (If Not Already Created)

  1. Visit Google Cloud Project Creation.
  2. Create a project with a suitable name and location.

image

Set Up Consent Screen

  1. Navigate to Consent Screen Setup.
  2. Choose User Type:
    • Internal: For organizational use (requires Google Workspace).
    • External: Requires app verification due to sensitive scopes.
  3. Fill out the following:
    • App Name: Enter a name for your app.
    • Support Email: Add your contact email.
    • Authorized Domain: Provide your app's domain or skip to auto-generate.

image

Add Required Scopes

  1. Click Add or Remove Scopes.
  2. Either include the full https://www.googleapis.com/auth/calendar scope or add the following fine-grained scopes:
API Scope
Google Calendar API .../auth/calendar.calendarlist.readonly
Google Calendar API .../auth/calendar.events.freebusy
Google Calendar API .../auth/calendar.events.public.readonly
Google Calendar API .../auth/calendar.calendarlist
Google Calendar API .../auth/calendar.calendars
Google Calendar API .../auth/calendar.calendars.readonly
Google Calendar API .../auth/calendar.events
Google Calendar API .../auth/calendar.events.owned
Google Calendar API .../auth/calendar.events.owned.readonly
Google Calendar API .../auth/calendar.events.readonly

Enable Calendar API

  1. Visit Calendar API Marketplace.
  2. Click Enable.

image

Create OAuth Credentials

  1. Navigate to Google API Credentials.
  2. Select Create Credentials > OAuth Client ID.

image

  1. Configure:
    • Application Type: Web application.
    • Authorized JavaScript Origins: Add your Frappe app’s base URL (must use HTTPS).
    • Authorized Redirect URIs:
   <BASE_URL>?cmd=frappe.integrations.doctype.google_calendar.google_calendar.google_callback

Replace <BASE_URL> with your Frappe installation URL, e.g., https://erp-dev.rt.gw.

image

  1. Save the generated Client ID and Client Secret.

Note: Use the same OAuth credentials for other Frappe integrations like Gmail Threads or Drive.


2. Frappe Appointment Setup

Install the App (using bench)

bench get-app [email protected]:rtCamp/frappe-appointment.git
bench --site {sitename} install-app frappe_appointment

Configure Google Settings

Steps:

  1. Log in as Administrator in Frappe.
  2. Navigate to Google Settings:
    • Enable Google API.
    • Enter the saved Client ID and Client Secret.

image


⚠️ **GitHub.com Fallback** ⚠️