diff --git a/content/applications/general/calendars/google/google_calendar_credentials.rst b/content/applications/general/calendars/google/google_calendar_credentials.rst index 6a5c8f229..282928c9e 100644 --- a/content/applications/general/calendars/google/google_calendar_credentials.rst +++ b/content/applications/general/calendars/google/google_calendar_credentials.rst @@ -2,89 +2,130 @@ Synchronize Google Calendar with Odoo ===================================== -Odoo is perfectly integrated with Google Calendar so that you -can see & manage your meetings from both platforms -(updates go through both directions). +Synchronize Google Calendar with Odoo to see and manage meetings from both platforms (updates go +in both directions). This integration helps organize your schedule so you never miss a meeting. Setup in Google =============== -- Go to `Google APIs platform `__ - to generate Google Calendar API credentials. Log in with your Google account. -- Go to the API & Services page. +Enable Google Calendar API +-------------------------- -.. image:: google_calendar_credentials/google_calendar_credentials00.png - :align: center +Begin by creating a new Google API project and enabling the Google Calendar API. Then, go to the +`Google API Console `_ and log into your Google account. -- Search for *Google Calendar API* and select it. +.. note:: + If this is your first time visiting this page, Google will prompt you to enter a country and + agree to the Terms of Service. Select a country from the drop-down list and agree to the + :abbr:`ToS (Terms of Service)`. -.. image:: google_calendar_credentials/google_calendar_credentials01.png - :align: center +Next, click :guilabel:`Select a project` and select or create an API project to store credentials. -.. image:: google_calendar_credentials/google_calendar_credentials02.png - :align: center +.. image:: google_calendar_credentials/new-api-project.png + :align: center + :alt: Create a new API project to store credentials. -- Enable the API. +.. tip:: + Give the API Project a clear name like "Odoo Sync" so you can easily find it. -.. image:: google_calendar_credentials/google_calendar_credentials03.png - :align: center +Then, open the API Project and click :guilabel:`Enable APIs and Services`. -- Select or create an API project to store the credentials if not yet done - before. Give it an explicit name (e.g. Odoo Sync). +.. image:: google_calendar_credentials/enable-apis-services.png + :align: center + :alt: Enable APIs and Services on the API Project. -- Create credentials. +After that, search for *Google Calendar API* using the search bar and select :guilabel:`Google +Calendar API` from the search results. Click :guilabel:`Enable`. -.. image:: google_calendar_credentials/google_calendar_credentials04.png - :align: center +.. image:: google_calendar_credentials/enable-google-cal-api.png + :align: center + :alt: Enable the Google Calendar API. -- Select *Web browser (Javascript)* - as calling source and *User data* as kind of data. +Create credentials +------------------ -.. image:: google_calendar_credentials/google_calendar_credentials05.png - :align: center +Now that you have created your API project and enabled the Google Calendar API, you need to create +credentials. Begin by clicking :guilabel:`Create Credentials`. Google will then guide you through +four steps to create your API credentials. -- Then you can create a Client ID. - Enter the name of the application (e.g. Odoo Calendar) and the allowed pages on - which you will be redirected. The *Authorized JavaScript origin* is your - Odoo's instance URL. The *Authorized redirect URI* is your Odoo's instance - URL followed by '/google_account/authentication'. +- In the first step, :guilabel:`Credential Type`, select the :guilabel:`Google Calendar API` and + :guilabel:`User Data` options. Then, click :guilabel:`Next`. -.. image:: google_calendar_credentials/google_calendar_credentials06.png - :align: center +.. image:: google_calendar_credentials/credential-type.png + :align: center + :alt: Select Google Calendar API and User Data for the Credential Type. -- Go through the Consent Screen step by entering a product name - (e.g. Odoo Calendar). Feel free to check the customizations options - but this is not mandatory. The Consent Screen will only show up when you - enter the Client ID in Odoo for the first time. +- In the second step, :guilabel:`OAuth Consent Screen`, type *Odoo* in the :guilabel:`App name` + field, select your email address for the :guilabel:`User support email` field, and type your email + address for the :guilabel:`Developer contact information` section. Then, click :guilabel:`Save + and Continue`. -- Finally you are provided with your **Client ID**. Go to *Credentials* to - get the **Client Secret** as well. Both of them are required in Odoo. +- Skip the third step, :guilabel:`Scopes`, by clicking :guilabel:`Save and Continue`. -.. image:: google_calendar_credentials/google_calendar_credentials07.png - :align: center +- In the last step, :guilabel:`OAuth Client ID`, select :guilabel:`Website application` for the + :guilabel:`Application Type` field and type *My Odoo Database* for the :guilabel:`Name`. + + - Under the :guilabel:`Authorized JavaScript Origins` section, click :guilabel:`+ Add URI` and + type your company's Odoo URL address. + + - Under the :guilabel:`Authorized redirect URIs` section, click :guilabel:`+ Add URI` and type + your company's Odoo URL address followed by */google_account/authentication*. Finally, click + :guilabel:`Create` and :guilabel:`Done`. + +.. image:: google_calendar_credentials/uri.png + :align: center + :alt: Add the authorized JavaScript origins and the authorized redirect URIs. + +After successfully creating a new API project, enabling the Google Calendar API, and generating the +Google Calendar API credentials, you should now have a Client ID and Client Secret. + +Client ID & Client Secret +------------------------- + +The **Client ID** and the **Client Secret** are both needed to connect Google Calendar to Odoo. Find +the Client ID and the Client Secret by opening the Google Cloud Platform navigation menu and going +to :menuselection:`API & Services --> Credentials --> OAuth 2.0 Client IDs`. + +Next, locate the credentials you just created for the Google Calendar API. Then, click on +:guilabel:`Edit OAuth Client` (the pencil icon). The page will redirect to the edit page, where you +can view the Client ID and the Client Secret. + +.. image:: google_calendar_credentials/edit-oauth-2.png + :align: center + :alt: Click Edit OAuth Client to view the credential details. Setup in Odoo ============= -- Install the **Google Calendar** App from the *Apps* menu or by checking - the option in :menuselection:`Settings --> General Settings`. +Once the Client ID and the Client Secret are located, open the Odoo database and go to +:menuselection:`Settings --> General Settings --> Integrations --> Google Calendar`. Check the box +next to :guilabel:`Google Calendar`. -.. image:: google_calendar_credentials/google_calendar_credentials08.png - :align: center +.. image:: google_calendar_credentials/settings-google-cal.png + :align: center + :alt: The Google Calendar checkbox in General Settings. -- Go to :menuselection:`Settings --> General Settings` and enter your - **Client ID** and **Client Secret** in Google Calendar option. +Next, copy and paste the Client ID and the Client Secret from the Google Calender API Credentials +page into their respective fields below the :guilabel:`Google Calendar` checkbox. Then, click +:guilabel:`Save`. -.. image:: google_calendar_credentials/google_calendar_credentials09.png - :align: center +Finally, open the Calendar module in Odoo and click on the :guilabel:`Google` sync button to sync +Google Calendar with Odoo. -- The setup is now ready. Open your Odoo Calendar and sync with Google. - The first time you do it you are redirected to Google to authorize - the connection. Once back in Odoo, click the sync button again. - You can click it whenever you want to synchronize your calendar. +.. image:: google_calendar_credentials/sync-google.png + :align: center + :alt: Click the Google sync button in Odoo Calendar to sync Google Calendar with Odoo. -.. image:: google_calendar_credentials/google_calendar_credentials10.png - :align: center +.. note:: + The first time you sync your Google Calendar with Odoo, the page will redirect to your Google + Account. Click :guilabel:`OK` and :guilabel:`Allow` to authorize Odoo to access Google Calendar. -As of now you no longer have excuses to miss a meeting! +.. image:: google_calendar_credentials/trust-odoo.png + :align: center + :alt: Give Odoo permission to access Google Calendar. +Now, Odoo Calendar is successfully synced with Google Calendar! + +.. image:: google_calendar_credentials/successful-sync.png + :align: center + :alt: Successfully sync between Odoo and Google Calendar. diff --git a/content/applications/general/calendars/google/google_calendar_credentials/credential-type.png b/content/applications/general/calendars/google/google_calendar_credentials/credential-type.png new file mode 100644 index 000000000..5e5f64b9f Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/credential-type.png differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/edit-oauth-2.png b/content/applications/general/calendars/google/google_calendar_credentials/edit-oauth-2.png new file mode 100644 index 000000000..9cf436940 Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/edit-oauth-2.png differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/enable-apis-services.png b/content/applications/general/calendars/google/google_calendar_credentials/enable-apis-services.png new file mode 100644 index 000000000..6b01aa974 Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/enable-apis-services.png differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/enable-google-cal-api.png b/content/applications/general/calendars/google/google_calendar_credentials/enable-google-cal-api.png new file mode 100644 index 000000000..2189dc62e Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/enable-google-cal-api.png differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials00.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials00.png deleted file mode 100644 index 89afb2201..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials00.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials01.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials01.png deleted file mode 100644 index 99cf1f5f8..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials01.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials02.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials02.png deleted file mode 100644 index 293a02bae..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials02.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials03.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials03.png deleted file mode 100644 index 8d067b641..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials03.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials04.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials04.png deleted file mode 100644 index 679968a6a..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials04.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials05.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials05.png deleted file mode 100644 index 7dc377cba..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials05.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials06.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials06.png deleted file mode 100644 index 1d7b2208b..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials06.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials07.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials07.png deleted file mode 100644 index c71dcd8ff..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials07.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials08.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials08.png deleted file mode 100644 index fddfc40ff..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials08.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials09.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials09.png deleted file mode 100644 index 711ea1787..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials09.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials10.png b/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials10.png deleted file mode 100644 index f009bb609..000000000 Binary files a/content/applications/general/calendars/google/google_calendar_credentials/google_calendar_credentials10.png and /dev/null differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/new-api-project.png b/content/applications/general/calendars/google/google_calendar_credentials/new-api-project.png new file mode 100644 index 000000000..c0d292255 Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/new-api-project.png differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/settings-google-cal.png b/content/applications/general/calendars/google/google_calendar_credentials/settings-google-cal.png new file mode 100644 index 000000000..d670f67c9 Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/settings-google-cal.png differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/successful-sync.png b/content/applications/general/calendars/google/google_calendar_credentials/successful-sync.png new file mode 100644 index 000000000..c834b3066 Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/successful-sync.png differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/sync-google.png b/content/applications/general/calendars/google/google_calendar_credentials/sync-google.png new file mode 100644 index 000000000..94f51a9df Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/sync-google.png differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/trust-odoo.png b/content/applications/general/calendars/google/google_calendar_credentials/trust-odoo.png new file mode 100644 index 000000000..1d90763f5 Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/trust-odoo.png differ diff --git a/content/applications/general/calendars/google/google_calendar_credentials/uri.png b/content/applications/general/calendars/google/google_calendar_credentials/uri.png new file mode 100644 index 000000000..e2b0ec2f8 Binary files /dev/null and b/content/applications/general/calendars/google/google_calendar_credentials/uri.png differ