🌐
Expo Documentation
docs.expo.dev › versions › latest › sdk › auth-session
AuthSession - Expo Documentation
This works because AuthSession adds +expo-auth-session to the default returnUrl; however, if you provide your own returnUrl, you may want to consider adding a similar identifier to enable you to filter out AuthSession events from other handlers.
🌐
npm
npmjs.com › package › expo-auth-session
expo-auth-session - npm
Latest version: 7.0.10, last published: 10 days ago. Start using expo-auth-session in your project by running `npm i expo-auth-session`. There are 74 other projects in the npm registry using expo-auth-session.
      » npm install expo-auth-session
    
Published   Dec 05, 2025
Version   7.0.10
Author   650 Industries, Inc.
🌐
Expo Documentation
docs.expo.dev › guides › authentication
Authentication with OAuth or OpenID providers - Expo Documentation
Most providers use the OAuth 2 standard for secure authentication and authorization. In the authorization code grant, the identity provider returns a one-time code.
🌐
GitHub
github.com › expo › expo › blob › main › docs › pages › versions › unversioned › sdk › auth-session.mdx
expo/docs/pages/versions/unversioned/sdk/auth-session.mdx at main · expo/expo
This works because AuthSession adds +expo-auth-session to the default returnUrl; however, if you provide your own returnUrl, you may want to consider adding a similar identifier to enable you to filter out AuthSession events from other handlers.
Author   expo
🌐
GitHub
github.com › expo › expo › blob › master › docs › pages › versions › unversioned › sdk › auth-session.md
expo/docs/pages/versions/unversioned/sdk/auth-session.md at master · expo/expo
This works because AuthSession adds +expo-auth-session to the default returnUrl; however, if you provide your own returnUrl, you may want to consider adding a similar identifier to enable you to filter out AuthSession events from other handlers.
Author   expo
🌐
CodeSandbox
codesandbox.io › examples › package › expo-auth-session
expo-auth-session examples - CodeSandbox
docs.expo.dev/versions/latest/sdk/auth-session · github.com/expo/expo · github.com/expo/expo/issues ·
🌐
GitHub
gist.github.com › jdthorpe › aaa0d31a598f299a57e5c76535bf0690
expo-auth-session example · GitHub
Thank you for sharing this! Works great with Auth0, within a few modifications (endpoint, clientId, and setting an appropriate path in makeRedirectUri).
🌐
Reddit
reddit.com › r/expo › expo expo-auth-session & google calendar oauth setup
r/expo on Reddit: Expo expo-auth-session & Google Calendar OAuth setup
February 7, 2025 -

I’m working on integrating Google Calendar OAuth into my React Native app using Expo, and I’m running into an issue where the redirect URI returned by makeRedirectUri({ useProxy: true }) is wrong — it’s always exp://127.0.0.1:8081, even though I’m expecting the Expo proxy URI (e.g. https://auth.expo.io/@username/myapp) to be returned.

I’ve been debugging this for hours and would really appreciate any advice or insight.

Some Context:

I’m using expo-auth-session version ~5.5.2 My app is built with Expo Router and uses OAuth to Google Calendar I want to allow users to connect their Google Calendar and add events from our app I’m using web-based OAuth, not direct sign-in or server-side flows Running locally via expo & Android studio

This is my code snippet:

import { makeRedirectUri, useAuthRequest, ResponseType } from 'expo-auth-session'; import * as WebBrowser from 'expo-web-browser'; import { useEffect } from 'react'; import config from '@/config';

WebBrowser.maybeCompleteAuthSession();

const discovery = { authorizationEndpoint: 'https://accounts.google.com/o/oauth2/v2/auth', tokenEndpoint: 'https://oauth2.googleapis.com/token', };

export function useGoogleAuth() { const redirectUri = makeRedirectUri({ useProxy: true, scheme: 'my app name', });

console.log('[useGoogleAuth] redirectUri =', redirectUri);

const [request, response, promptAsync] = useAuthRequest( { clientId: config.googleClientId, scopes: ['https://www.googleapis.com/auth/calendar.events'], redirectUri, responseType: ResponseType.Code, extraParams: { access_type: 'offline', prompt: 'consent', }, }, discovery );

useEffect(() => { console.log('[useGoogleAuth] response =', response); }, [response]);

return { promptAsync, request, response }; }

And yes I added authorized uris and authorized test users in Google cloud console.

I also added the redirect URI: https://auth.expo.io/@myusername/myapp to google.

My questions: • Why is makeRedirectUri({ useProxy: true }) still giving me exp://127.0.0.1:8081? • Is there some config I’m missing in app.json, expo-router, or somewhere else? • Should I upgrade expo-auth-session or use a different method to get the correct proxy URI?

Thanks

🌐
GitHub
github.com › expo › expo › issues › 21437
After upgrading the expo-auth-session to 4, an error occurs when calling authUrl with startAsync. · Issue #21437 · expo/expo
January 16, 2023 - But an error occurred only on IOS ... [email protected] like below. If I removed redirected_to from url, then I cannot back to app after authentication. expo-env-info 1.0.5 environment info: System: OS: macOS 12.5 Shell: 5.8.1 - /bin/zsh Binaries: Node: 16.13.1 - ~/.nvm/versions/node/v16....
Published   Feb 28, 2023
Find elsewhere
🌐
GitHub
github.com › expo › expo › blob › main › packages › expo-auth-session › CHANGELOG.md
expo/packages/expo-auth-session/CHANGELOG.md at main · expo/expo
This version does not introduce any user-facing changes. Allow prompt parameter of AuthRequest to accept multiple values as an array (#32373 by @Nkzn) Add missing react/react-native peer dependencies. (#30573 by @byCedric) Add basic support for using in API routes. (#31480 by @EvanBacon) Use getRandomValues from expo-crypto (#22608 by @LinusU)
Author   expo
🌐
Stack Overflow
stackoverflow.com › questions › tagged › expo-auth-session
Newest 'expo-auth-session' Questions - Stack Overflow
This might be a silly question, but still. I am trying to use OAuth in my mobile app using doorkeeper (Rails) and expo-auth-session I managed to setup the login as follows: const [request, response, ...
🌐
Expo Documentation
docs.expo.dev › develop › authentication
Authentication in Expo and React Native apps - Expo Documentation
Passkeys offer a seamless and secure experience, but they require a user to already be authenticated before registering one. They also require extra configuration if you're not using a provider that handles them for you. React Native passkey support: react-native-passkeys · Native passkey support with Clerk: Clerk Passkeys for Expo · This guide covers a lot of ground, from basic email and password flows to fully custom OAuth implementations, session management, and modern methods like biometrics and passkeys.
🌐
Expo Documentation
docs.expo.dev › router › advanced › authentication
Authentication in Expo Router - Expo Documentation
How to implement authentication and protect routes with Expo Router. ... Note: This guide requires SDK 53 and later. For the previous version of this guide see Authentication (redirects).
🌐
GitHub
github.com › expo › expo › issues › 21084
[expo-auth-session] I'm unable to sign in with Google on Android · Issue #21084 · expo/expo
February 3, 2023 - "dependencies": { "@types/react": "~18.0.24", "@types/react-native": "~0.70.6", "expo": "~47.0.12", "expo-auth-session": "~3.8.0", "expo-constants": "~14.0.2", "expo-dev-client": "~2.0.1", "expo-random": "~13.0.0", "expo-splash-screen": "~0.17.5", "expo-status-bar": "~1.4.2", "expo-updates": "~0.15.6", "expo-web-browser": "~12.0.0", "react": "18.1.0", "react-native": "0.70.5", "typescript": "^4.6.3" }, expo-env-info 1.0.5 environment info: System: OS: macOS 12.5.1 Shell: 5.8.1 - /bin/zsh Binaries: Node: 14.20.1 - ~/.nvm/versions/node/v14.20.1/bin/node Yarn: 1.22.19 - ~/.nvm/versions/node/v14.2
Published   Feb 03, 2023
🌐
Reddit
reddit.com › r/expo › expo-auth-session issue
r/expo on Reddit: expo-auth-session issue
April 14, 2024 -

Hello,

I hope someone can help with this expo issue.

I am trying to use the expo-auth-session to implement SSO with Facebook and getting the following message. Looking at the URL, it seems like it's able to retrieve the access_token from Facebook but something is throwing it off...

I saw a couple of articles on this error and they suggest to use the proxy parameter. But this field was obsolete and removed from the version i am using...

anybody has any idea what's going on??

🌐
Npm
npm.io › package › expo-auth-session
Expo-auth-session NPM | npm.io
Check Expo-auth-session 6.0.3 package - Last release 6.0.3 with MIT licence at our NPM packages aggregator and search engine.