Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Google integration 🚀 #289

Open
4 tasks done
Parth18Shah opened this issue Jun 14, 2024 · 5 comments
Open
4 tasks done

feat: Google integration 🚀 #289

Parth18Shah opened this issue Jun 14, 2024 · 5 comments

Comments

@Parth18Shah
Copy link

Is there an existing issue for this?

  • No, I have searched the existing issues

Feature Description

This issue will mainly deal with the organization's integration with its Google account. This will allow the form creators to import their Google forms into this platform.

Use Case

Import existing google forms into the platform.

Benefits

Opens the opportunity to various other features that can be added to this website.

Add ScreenShots

No response

Priority

High

Record

  • I have read the Contributing Guidelines
  • I'm a GSSOC'24 contributor
  • I want to work on this issue
@Parth18Shah Parth18Shah added the enhancement Work on improvements label Jun 14, 2024
@growupanand growupanand added gssoc GirlScript Summer of Code level2 labels Jun 14, 2024
@growupanand growupanand added hacktoberfest and removed gssoc GirlScript Summer of Code labels Sep 24, 2024
@lcrojano
Copy link

Hi. I could work on this issue

@growupanand
Copy link
Owner

@lcrojano , Please share your plan how will you do this?

@lcrojano
Copy link

Since ConvoForm already handles Google authentication, we can build on this to integrate Google Forms into the platform. Here's the plan:

Use Existing Google Auth:
Leverage the existing Google OAuth setup to request additional permissions for accessing Google Forms (https://www.googleapis.com/auth/forms).

Frontend-Driven Flow:
After login, the user can choose to load their Google Forms via an "Import Google Form" button.
Fetch the forms list from Google Forms API in real-time and display it for the user to select and preview.

Form Preview & Edit:
Once the user selects a form, it will be converted into ConvoForm’s format for preview and editing.
Example:

  const forms = google.forms({ version: 'v1', auth: oauth2Client });
   const res = await forms.forms.list(); // Fetch and display

Save to ConvoForm:
After the user finalizes their changes, send the form data to the backend, converting it to ConvoForm's format before saving.

@growupanand
Copy link
Owner

@lcrojano I am not sure if you checked but we are using clerk for the google auth login. Can you check and confirm if your plan will work with this? or Create a POC in which just try to get google forms list in a separate branch.

@lcrojano
Copy link

@growupanand Sure! From what I’ve checked, Clerk does support additional OAuth scopes. I will create a new branch with a POC to retrieve the Google Forms and confirm that it works. You can find more details about configuring additional scopes here: https://clerk.com/docs/authentication/social-connections/oauth#configure-additional-o-auth-scopes. I'll keep you updated!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants