Welcome to the Kinde community.

A
K
r
P
K
New
what are the rate limits of SSO providers when using the Kinde credentials, for let's say e.g. google?
Because I feel like for small apps I could just use Kinde's oauth credentials instead of setting up my own, no?
2 comments
S
d

Is it possible to control the text content on the second page of the default registration pages. See below. The first page is fine but the second is confusing for our users. It is saying Enter your password and should say create your password. And why would it say "Can’t sign in? Reset password" at the bottom when they’re not even a registered user yet? I can edit the first page content in Kinde dashboard but the second is not available. Am I missing something?

2 comments
D
K

Hey, I've just noticed, it seems like our app is no longer redirecting us to our custom domain and is sending us back to the general domain

2 comments
D
B
Hi,

I'm trying to integrate the SDK into my web application. My backend is written in ExpressJS and my frontend in AngularJS.
The authentication flow is as follows:
1) User presses a button to Sign in with Kinde.
2) The user is navigated to the backend via window.location.href = this.api.address + 'kinde/login'
3) A check is made to see if user is authenticated (via await kindeClient.isAuthenticated(req))
4) If not authenticated, the user is redirected to BACKEND_URL/login via res.redirect('/login')
5) The user then enters the credentials and is redirected back to BACKEND_URL/login

This is the case if I enter from BACKEND_URL/login manually, but when I start from the frontend, after entering my credentials in Kinde, I get redirected to the unAuthorisedUrl
6 comments
R
I

Hello, we are trying to integrate NextJS App router SDK in our nextjs application (nextjs version -> 14.2.7, @kinde-oss/kinde-auth-nextjs -> 2.3.8)
when our access_token expires, the SDK does not automatically fetch the new access token using our refresh token (which is not expired yet!), and when we use the method isAuthenticated(), it also returns true, even if the access token is expired.
does anybody have any suggestions to fix this?

13 comments
M
O
P
L

Hey Guys i updated some permissions and roles for a user and then hit this api
https://kinde.com/api/docs/#refresh-user-claims-and-invalidate-cache
and got
{
"code": "CLAIMS_REFRESH_SUCCESS",
"message": "Claims successfully refreshed"
}
to see if he gets updated without logging out and in again but it didn't work
need help to do it please

22 comments
A
A
L
E
const session = await stripeClient.checkout.sessions.create({
success_url: `https://mydomain.com/restoflink and https://mydomain-staging.com/restoflink

Hello, when my application gets redirected to the success_url on staging, the user is still logged in (cookies are still set, etc) and correctly redirects to the success_url. However, on my production url, the user is always logged out and redirected to my home page.


Here's the code for the specific page I want to redirect to:

const {getPermission, getUser} = getKindeServerSession();
const user = await getUser()
const isAdmin = await getPermission("xxxx")

if (!user) {
redirect('/')
}

const userExists = await db.query.users.findFirst({
where: (fields) => eq(fields.kindeId, user.id)
});

if (!userExists) {
redirect('/')
}


const courseExists = await getCourseBySlug(params.course)

if (!courseExists) {
return <p className="mx-auto text-center font-extrabold mt-40">Course not found</p>;
}

if (!courseExists.isPublished && !isAdmin?.isGranted) {
redirect('/')
}
1 comment
g

Has anyone encountered this error with the add-urls-to-kinde.js while deploying on Vercel?

21 comments
C
J
D
P
P

Hey Kinde community 👋
Reminder to everyone new that you can:

  • Tag @ KindeAI in the ⁠#ask-kinde-ai channel to ask our help bot anything. This is especially useful if we're not available to respond immediately to your queries.
  • Contribute to docs - if you find there's something wrong or missing in our docs, you can raise a PR or issue yourself in our docs repo in GitHub.
  • Visit our roadmap and send feedback. Find out what's coming and subscribe to updates. Ask for the features you want.
  • Contact us here in the ⁠#kinde-support channel for pretty much everything else.

Happy building 🚀

Hi Support
I'm using kinde login into my iOS app using iOS SDK.

When i added the audience key into kinde-auth.json file, I'm getting invalid callback url. Otherwise, it is working fine.

The audience is optional, its there to request api access for the token, when granted it will be in the access token.

Why is it not working with audience key? What should be the expected behaviour?

16 comments
D
A
P
O
f
f6
·

linked auth

{
id: 'Kp_.....',
email: undefined,
family_name: 'falah',
given_name: 'Mohammed',
picture: 'https://.....',
username: undefined,
phone_number: undefined
}


why does linkedIn does not return the email
35 comments
f
C
When a user registers and is redirected to the dashboard page after signing up I am using the following code to get the user information.

import {getKindeServerSession} from "@kinde-oss/kinde-auth-nextjs/server";

export default async function Dashboard() {


const {getUser} = getKindeServerSession();
const user = await getUser();

console.log(user);

return (<div>Dashboard<pre>{JSON.stringify(user, null, 2)}</pre></div>);
}

In the console log on the server the email is undefined.

Why may this be?
41 comments
C
w
v
j
A
When you have configured the screens in dark mode, the INVALID CALLBACK URL error has the card in white, which I think is not correct, and the gray text, which is not seen, and under the underlined text is not seen well either.
9 comments
D
C

Access token with org_name but no org_code.

Hello,
I received an access token in which the org_name is set but not the org_code. This occurred after the organization was deleted. This seems inconsistent, should they not be both set, or none of them ?

Data in thread

10 comments
P
N
Hello,

I am using the NextJS SDK (server & client) to get the org details, it is not returning the org name, the property for "city" is undefined as I added a value through the UI and I have added a custom property and it is not showing in the org details. It is showing in the ID token and Access token as I have extended those to include the custom property.

Is this the expected behaviour?


Response from:
const { getOrganization } = getKindeServerSession();
const org = await getOrganization();
console.log(org, "org");

{
orgCode: 'org_**',
orgName: null,
properties: {
city: undefined,
industry: undefined,
postcode: undefined,
state_region: undefined,
street_address: undefined,
street_address_2: undefined
}
-> is billing_customerid not supposed to be part of properties? It is set to PublicResponse from: const { getIdToken } = getKindeServerSession(); const idToken = await getIdToken(); console.log(idToken, "idToken"); organizations: [ { id: 'org*', name: 'Test Organisation' } ],
organization_properties: { billing_customer_id: { v: '**' } },
7 comments
C
r

Hello guys,

I have an issue where valid tokens from my frontend, when introspected on the back end give me a token expired message. Even though the tokens are still valid

3 comments
D
B
Hi guys,

I'm currently building an application as a contractor for a client, using the next.js SDK. Once I've finished building the application for him, I'd like for him to be able to completely manage everything on his own, including adding users.

Due to his business model where he physically goes and works with businesses around Australia and does in-person training, the application I'm building will be invite only, ie people won't be able to just sign up, my client will have to setup the organisation and users within the app.

The problem is, I don't want him to have to log in to the Kinde dashboard to set up organisations and users, I'd like for him to be able to manage it all from within the application's dashboard. Is it possible to set up a workflow like this where he can create users from within the application I'm building?
3 comments
S
C
J
When listing org users via management api, the user without first and last name will return with full_name="<unknown>".
8 comments
d
O
Whenever I rename an organization, I get success toast but after refreshing the page, it falls back to the old name.
Furthermore, Handle field seems optional (can be empty when creating new org), but throws error whenever is empty after renaming.
9 comments
C
D
D
d
I would like to create a page so that the user can change his first name, last name, email, password... but I can't find docs to do it.
17 comments
I
D
C
When I am in production and I click on the loginlink it takes to the API url and says not found.
3 comments
O
D

Using Kinde in Expo/React-Native and I'm getting the following error in the Web side of things. Anyone have this issue and know what to do?

Metro error: (0 , _expoModulesCore.uuidv4) is not a function

  2 | import { ExecutionEnvironment, } from './Constants.types';
  3 | const ID_KEY = 'EXPO_CONSTANTS_INSTALLATION_ID';
> 4 | const _sessionId = uuidv4();
    |                          ^
  5 | function getBrowserName() {
  6 |     if (Platform.isDOMAvailable) {
  7 |         const agent = navigator.userAgent.toLowerCase();

Call Stack
  factory (node_modules/@kinde-oss/react-native-sdk-0-7x/node_modules/expo-constants/build/ExponentConstants.web.js:4:26)
  loadModuleImplementation (node_modules/metro-runtime/src/polyfills/require.js:277:5)
  guardedLoadModule (node_modules/metro-runtime/src/polyfills/require.js:184:12)
  require (node_modules/metro-runtime/src/polyfills/require.js:92:7)
  factory (node_modules/@kinde-oss/react-native-sdk-0-7x/node_modules/expo-constants/build/Constants.js:4)
  loadModuleImplementation (node_modules/metro-runtime/src/polyfills/require.js:277:5)
  guardedLoadModule (node_modules/metro-runtime/src/polyfills/require.js:184:12)
  require (node_modules/metro-runtime/src/polyfills/require.js:92:7)
  factory (node_modules/@kinde-oss/react-native-sdk-0-7x/dist/SDK/Utils.js:1:856)
  loadModuleImplementation (node_modules/metro-runtime/src/polyfills/require.js:277:5)
λ Bundled 6ms node_modules/expo-router/node/render.js (1 module)

10 comments
L
P

Hello. I am using the kinde management api to automatically create new users when they are created in our own system. As far as I've understood, only m2m applications can access the kinde management api. What is the best flow for when a kinde user, autenticated with admin roles creates a user in our system, and the backend creates a kinde user on behalf of them. From what i can see I can't pass user information in the api for things like audit logs or role checks

6 comments
P
J

I have upgraded to Pro to remove the Kinde branding (no offense :p). What's the quickest way to have the google Auth form say continue to Paypipe instead of continue to Kinde.com ?

13 comments
C
F
Hello,

I'm getting this error when trying to store a user id to a KindeId in my prisma ORM

Object literal may only specify known properties, and 'kindeId' does not exist in type 'UserWhereUniqueInput'.ts(2353)

import {PrismaClient} from "@prisma/client";
import {getKindeServerSession} from "@kinde-oss/kinde-auth-nextjs/server";
import {NextResponse} from "next/server";

const prisma = new PrismaClient();

export async function GET() {
const {getUser} = getKindeServerSession();
const user = await getUser();

if (!user

user == null

!user.id)
throw new Error("something went wrong with authentication" + user);

let dbUser = await prisma.user.findUnique({
where: {kindeId: user.id}
});

if (!dbUser) {
dbUser = await prisma.user.create({
data: {
kindeId: user.id,
firstName: user.given_name ?? "",
lastName: user.family_name ?? "",
email: user.email ?? "" // Using nullish coalescing operator to provide a default empty string value
}
});
}

return NextResponse.redirect("http://localhost:3000/dashboard");
}

I confirmed that the KindeId is unique in my prisma model. Would love a second pair of eyes.
4 comments
C
P