Thunkable Docs
Build an AppDrag and Drop DocsSnap to Place DocsAcademy
Drag and Drop
Drag and Drop
  • What is Thunkable?
  • 🗺️Getting Started
    • Getting Started Guide
    • Keyboard Shortcuts
    • Undo Redo
    • Thunkable Account
      • Account Management
    • Preview and Test your App
    • Versioning
    • Data Sources
      • Google Sheets Data Source
      • Airtable Data Source
      • Webflow Data Source
      • Local Table Data Source
    • Project Collaboration
      • Organizations
    • 🎓Sample Apps & Tutorials
      • Thunkable Community Forums
      • Sample Apps
      • Video Tutorials
        • Thunkable Live App
          • How to Test and Troubleshoot with Thunkable Live App
        • Data Source Tutorials
          • Connecting to Data Sources
            • Google Sheets
            • Local Table
          • Create Data in a Thunkable Data Source
          • Read Data in a Thunkable Data Source
          • Update Data in a Thunkable Data Source
          • Delete Data in a Thunkable Data Source
        • User Auth & Management
          • Firebase
            • User Sign-Up, Sign-In, and Auth
            • User Sign Out and Password Reset
          • Google
            • User Sign-Up, Sign-In, Sign-Out, and Auth
          • Apple
            • User Sign-Up, Sign-In, Sign-Out, and Auth
        • Projects
          • How to Save Versions of Your Thunkable Project
          • How to Copy and Customize Public or Sample Thunkable Projects
        • User Interface & Design
          • Screens
            • Save and Reuse Thunkable Screens
            • Change Thunkable Screens with a Button Click
            • Create Scrollable Screens in Your Thunkable App
          • Navigators
            • How to Use the Thunkable Stack Navigator
            • How to Use Thunkable Top and Bottom Tab Navigators
            • How to Use the Thunkable Drawer Navigator
            • Combine Figma Frames with Thunkable Navigators
          • Components
            • How to Use the Visibility Property to Create Modals in Thunkable
          • Data Visualization
            • Customize a Data Viewer
          • Text
            • Implement Text Input Validation
        • Alerts & Notifications
          • Display Alert Messages in Your Thunkable App
          • How to Create Three-Button Alert Messages
        • Files
          • Cloudinary
            • Store and Access Cloudinary Files in Your Thunkable App
        • Camera
          • How to Use the Device’s Camera
          • How to Use the Device’s Video Camera
          • Use the Device’s Camera as a QR or Barcode Scanner
        • Realtime Databases
          • Firebase
            • How to Read Data in a Firebase Realtime Database
            • How to Update Data in a Firebase Realtime Database
        • Advanced Blocks
          • Connect Your Thunkable App to a Web API
        • Thunkable Academy
          • Building Your First Thunkable App
            • Getting Started with Thunkable
            • How to Design a Thunkable App
            • How to Connect a Thunkable App to a Data Source
            • How to Make A Thunkable App Interactive with Blocks
          • Thunkable No Code App Creation Basics
            • Thunkable UI Components and App Features
            • Understanding Thunkable's Drag and Drop Block Builder
            • Design, Develop, Debug, and Deploy Your App
        • Hour of Code
          • 2021 - Build an Informational App
          • 2022 - Build a Scavenger Hunt App
          • 2023 - Build a Translator and Text-to-Speech App
        • App Building
          • How to Build a Translation App in Thunkable
          • How to Create an Image Recognition App with Thunkable
          • How to Create a Text-to-Speech App in Thunkable
  • 🎨App Design
    • User Interface (UI) Components
      • Basic Components
        • Button Component
        • Label Component
        • Rich Text Component
        • Image Component
        • Text Input Component
        • Layout Component
        • Group Component
      • Data Components
        • Simple List Component
        • Data Viewer Components
          • Data Viewer List Component
          • Data Viewer Grid Component
          • Custom Data Viewer
      • Input Components
        • Switch Component
        • Slider Component
        • Checkbox Component
        • Date Input Component
        • Time Input Component
      • Media Components
        • Animation Component
        • Video Component
        • Loading Icon Component
      • Embed Components
        • Web Viewer Component
        • Map Component
        • Canvas Component
        • PDF Reader Component
        • Rating Component
      • Modules
        • Introduction
        • User Guide
      • Generative AI
    • Screens
      • Save and Reuse Screens
      • Improve Thunkable Load Time
    • Navigators
      • Top Tab Navigator
      • Bottom Tab Navigator
      • Drawer Navigator
      • Stack Navigator
    • Figma Integration
  • 🛠️Blocks
    • Thunkable Blocks Overview
    • Core Blocks
      • Control Blocks
      • Logic Blocks
      • Math Blocks
      • Text Blocks
      • Lists Blocks
      • Color Blocks
      • Device Blocks
      • Objects Blocks
      • Variables Overview
        • Connect a Firebase Realtime Database
        • Variables Blocks
      • Functions Blocks
    • App Features Blocks
      • Speech Blocks
      • Sound Blocks
      • Share Blocks
      • Camera Blocks
      • Files Blocks
      • Sign In Blocks
        • User Sign Up, Sign In, and Authentication with Firebase
        • User Sign Up, Sign In, and Authentication with Google
        • User Sign Up, Sign In, and Authentication with Apple
      • Location Blocks
      • Push Notification Blocks
      • In-App Purchase Blocks (with RevenueCat)
      • Data Sources Blocks
      • Alerts Blocks
      • Timer Blocks
      • Sensors Blocks
        • Gyroscope
        • Magnetometer
        • Accelerometer
        • Location Sensor
      • Ads by AdMob
    • Advanced Blocks
      • Web APIs Blocks
        • CORS Policy
        • 🆓No Auth APIs
          • Update Data in a Data Source
          • CRUD Operations
          • Setting Headers
        • 📊Charting APIs
          • Create a chart template
          • Charting in Thunkable
      • Bluetooth Low Energy Blocks
      • OpenAI Services ChatGPT Integration Blocks
      • "Any Component" Blocks
      • JavaScript Web Bridge
  • ⚙️Settings
    • App Settings
      • Tablet View
    • Assets
    • Cloud Variable Viewer
    • Manage your Projects
      • My Projects Page
      • Thunkable Projects
      • Duplicate Project
      • Share Your App
      • Download Your App
        • Download Your App on iOS
        • Download Your App on Android
      • Add to Home Screen
      • Managing Project Storage
      • App Data Privacy
      • Delete Project
  • 📱Publishing
    • Overview
    • Publish to the Apple App Store
      • User Guide
      • Troubleshooting
      • Review Process
      • Tracking Usage Description
    • Publish to Google Play Store
      • User Guide
      • Troubleshooting
      • Review Process
    • Publish as a Web App
      • User Guide
      • Custom Domains
      • Troubleshooting
    • Testing
      • Testing on iOS via TestFlight
      • Testing on Android
    • Troubleshooting
      • Publishing Checklist
      • Generate Screenshots
  • 🎮Gaming
    • Gaming Overview
      • Canvas Label
      • Sprites
      • Sprite Gallery
    • Gaming Blocks
      • Events
      • Motion
      • Looks
      • Direction
      • Sensing
      • Add & Remove
      • Stage
  • 🗃️Additional Resources
    • Release Notes
      • Release Notes 2024
      • Release Notes 2023
    • Troubleshooting
      • Can't Sign in to Thunkable?
      • FAQs
    • Minimum Requirements
    • Bugs and Product Feedback
    • App Services and Emulators
Powered by GitBook
On this page
  • Overview
  • Video Tutorial
  • How to Build User Sign In, Sign Out, and Authentication with Google in Thunkable
  • Sign in with Google
  • Select or Create a Project
  • Configure Your OAuth Consent Screen
  • Create OAuth Client ID
  • Blocks
  • Block: get profile from Google
  • Block: sign out from Google

Was this helpful?

Export as PDF
  1. Blocks
  2. App Features Blocks
  3. Sign In Blocks

User Sign Up, Sign In, and Authentication with Google

PreviousUser Sign Up, Sign In, and Authentication with FirebaseNextUser Sign Up, Sign In, and Authentication with Apple

Last updated 6 months ago

Was this helpful?

Overview

Authentication is the process by which your app’s users sign up or sign in to your app. The authentication process confirms the legitimacy of a user's identity before allowing them to interact with the application.

Sign in with Google makes it easy for your users to sign in and sign up to your app with the trusted security of their Google Account. It eliminates their dependency on passwords, which reduces the frustrations and security risks associated with them. Learn more here: .

Video Tutorial

How to Build User Sign In, Sign Out, and Authentication with Google in Thunkable

In this tutorial, we’ll show you how to use Google to authenticate your users and allow them to sign in and sign out of your app.

Template app:

  1. Click Copy Project or Edit Project in the upper right.

Sign in with Google

Select or Create a Project

  1. Sign in with your existing Google account credentials or create an account.

    If this is your first visit, you may need to provide your location and accept the Google Cloud Platform Terms of Service.

  2. Click the dropdown next to Google Cloud in the upper left.

  3. Either:

    1. Select an existing project.

    2. Click NEW PROJECT.

      1. Give your project a name.

      2. Indicate if you'd like to create the project in a parent organization or folder.

      3. Click Create.

      4. In the notification that appears, click SELECT PROJECT.

  4. The name of the selected project appears in the header at the top.

Configure Your OAuth Consent Screen

When you use OAuth for authorization, your app requests authorizations for one or more scopes of access from a Google Account. Google displays a consent screen to the user, including a summary of your project and its policies and the requested scopes of access.

To configure your Oauth consent screen:

  1. Click APIs & Services.

  2. In the left sidebar, select OAuth consent screen.

  3. Indicate who your target users are, Internal or External.

    Most Creators will need to select External. You should only select Internal if your app is exclusively for users in the same organization as your Google Cloud account.

  4. Click Create.

  5. Complete the App information screen to represent your brand best. The required fields are:

    1. App name

    2. User support email

    3. Developer contact email address

  6. Click SAVE AND CONTINUE.

  7. On the Scopes screen, click ADD OR REMOVE SCOPES.

  8. Select the following scopes:

    1. .../auth/userinfo.email

    2. .../auth/userinfo.profile

  9. Click UPDATE.

  10. Click SAVE AND CONTINUE.

  11. On the Test users screen, click SAVE AND CONTINUE.

  12. On the Summary screen, click BACK TO DASHBOARD.

Create OAuth Client ID

  1. In the left sidebar, select Credentials.

  2. Click + CREATE CREDENTIALS.

  3. Select OAuth client ID.

    A client ID is used to identify a single app to Google's OAuth servers. If your app runs on multiple platforms, each will need its own client ID.

  4. Select the Application type you'd like to configure (e.g. web application, Android, or iOS). If your app runs on multiple platforms, you must configure separate OAuth client IDs for each.

  5. See here for instructions for each of the application types Thunkable supports:

Create iOS OAuth Client ID

  1. Select iOS as the Application type.

  2. Complete the following fields:

    1. Name - The name of your OAuth 2.0 client. This name is only used to identify the client in the console and will not be shown to end users.

  3. Click CREATE.

  4. Click OK.

  5. In the OAuth 2.0 Client IDs, click the iOS client ID you just created.

  6. Copy the Client ID.

  7. In your Thunkable tab, click the Settings gear icon in the sidebar.

  8. Scroll to the OAuth Settings section and paste the iOS client ID into the Google IOS Client ID field.

  9. Return to Google and copy the iOS URL scheme.

  10. Back in Thunkable, paste the copied iOS URL scheme into the Google IOS URL Scheme field.

Create Web Application OAuth Client ID

  1. Select Web application as the Application type.

  2. Give your client a Name. This name is only used to identify the client in the console and will not be shown to end users.

  3. Under Authorized JavaScript origins, click + ADD URI.

  4. To test your project on the web, use https://x.thunkable.com. To use Google Sign in with a published web app, use https://thunkable.site.

  5. Click CREATE.

  6. Click OK.

  7. In the OAuth 2.0 Client IDs section, click the web application client ID you just created.

  8. Copy the Client ID.

  9. In your Thunkable tab, click the Settings gear icon in the sidebar.

  10. Scroll to the OAuth Settings section and paste the web application client ID into the Google Web Client ID field.

Create Android OAuth Client ID

  1. Select Android as the Application type.

  2. Complete the following fields:

    1. Name - The name of your OAuth 2.0 client. This name is only used to identify the client in the console and will not be shown to end users.

  3. Click CREATE.

Get the SHA-1 Certificate Fingerprint

  1. You do not need to download the resulting Android APK file.

  2. Run the following command from the Command Prompt on Windows or Terminal on Mac: keytool -keystore path-to-debug-or-production-keystore -list -v, where "path-to-debug-or-production-keystore" is the location of the Keystore file on your computer. Or keytool -keystore path-to-debug-or-production-keystore -storepass keystore_password -v where "path-to-debug-or-production-keystore" is the location of the Keystore file on your computer.

    The "keystore_password" needs to be replaced by your keystore password.

  3. Locate the Certificate fingerprints section.

  4. Copy the SHA1 certificate fingerprint.

Alternatively, publish the app on the Google Play Store and get the SHA-1 Certificate Fingerprint from the App signing page:

Blocks

Block: get profile from Google

The mint green blocks represent the available outputs provided by the Google Sign-In process when sign-in is successful. You can save this information to personalize the user's experience within your app, display their profile picture, greet them by name, or pre-fill form fields with their email address, for example.

Output Name
Output Description

User ID

A unique identifier assigned to the authenticated user by Google. It is typically a long string of characters that is unique to each user.

Display name

The user's full name, including their first name and last name, as it appears in their Google account profile.

Given name

The user's first name.

Family name

The user's last name.

Email address

Email address of the Google account.

Profile photo image URL

URL that points to the profile image associated with the Google account.

error

If there is an error, provides the details about what went wrong.

For web apps, no blocks, including errors, will be returned if the user rejects login (as opposed to fails login).

Block: sign out from Google

Click:

Visit the .

Follow these instructions above: .

Bundle ID - This is available under Publishing Settings in your Thunkable project's Settings.

Follow these instructions above: .

Follow these instructions above: .

Package name - Use the App (Bundle) ID located under Publishing Settings in your Thunkable project's Settings.

SHA-1 certificate fingerprint - See here for instructions:

If you haven't previously downloaded this Android app, you must download it to access its Keystore. Instructions are available here: .

Follow the instructions here to export your Keystore: .

Click here to download the Java Development Kit (JDK) for your system: .

If prompted for a password, enter the password you saved when exporting your Keystore. Learn more here: .

Have feedback on this doc? Please take a moment to share your feedback here: . Your valuable insights will help us improve and better serve you in the future.

🛠️
https://x.thunkable.com/projectPage/6557d522bdcda418faaeccbb
Google Cloud console
Get the SHA-1 Certificate Fingerprint
Download Android App
Export Keystore from a Thunkable Project
JDK Development Kit Download
Android Keystore Alias and Password
Thunkable Docs Feedback
Create iOS OAuth Client ID
Create Web Application OAuth Client ID
Create Android OAuth Client ID
Create OAuth Client ID
Create OAuth Client ID
Create OAuth Client ID
Sign in with Google