Skip to main content
Paid Feature

This is a paid feature. Email us to get a license key to start a SuperTokens subscription.

If you want to try this feature without contacting us, you can:

  • Sign up for our managed service, and use this feature in our development environment for free; OR
  • You can self host the SuperTokens core and run it with the in memory db, by not connecting it to a database when running it. All paid features are enabled for free when using the in memory db.

Listing all tenants and apps

List all tenants for an app#

import Multitenancy from "supertokens-node/recipe/multitenancy";

async function listAllTenants() {

let resp = await Multitenancy.listAllTenants();
let tenants = resp.tenants;

tenants.forEach(tenant => {
let coreConfig = tenant.coreConfig;

let isEmailPasswordLoginEnabled = tenant.emailPassword.enabled;
let isThirdPartyLoginEnabled = tenant.thirdParty.enabled;
let isPasswordlessLoginEnabled = tenant.passwordless.enabled;

let configuredThirdPartyProviders = tenant.thirdParty.providers;
});
}

List all apps in a SuperTokens core#

This can only be done via a cURL command. There is no helper function for this in our backend SDKs since our backend SDKs are per app anyway.

curl --location --request GET '/recipe/multitenancy/app/list' \
--header 'api-key: ' \
--header 'Content-Type: application/json'

You will get the following JSON output:

{
"status": "OK",
"apps": [{
"appId": "app1",
"tenants": [{
"tenantId": "customer1",
"emailPassword": {
"enabled": true
},
"thirdParty": {
"enabled": true,
"providers": [...]
},
"passwordless": {
"enabled": true
},
"coreConfig": {...}
}]
}]
}