Skip to content
Scalekit Docs
Talk to an EngineerDashboard

Directory sync

Sync users and groups via SCIM directories

Use the directory client for SCIM directory sync—listing providers, users, and groups provisioned from an IdP.

Use this after SSO is in place when the customer provisions users via SCIM.

clientDirectorieshttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/directory.ts
#asynclistDirectories

Retrieves all SCIM directories configured for an organization.

paramorganizationIdstring

Organization ID.

returnsListDirectoriesResponse

Directories for the org.

const response = await scalekit.directory.listDirectories('org_123456');
console.log(`Found ${response.directories.length} directories`);
response.directories.forEach(dir => {
console.log(`- ${dir.provider}: ${dir.enabled ? 'Active' : 'Inactive'}`);
console.log(` Users: ${dir.userCount}, Groups: ${dir.groupCount}`);
});
clientDirectorieshttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/directory.ts
#asyncgetDirectory

Retrieves comprehensive details about a specific SCIM directory.

paramorganizationIdstring

Organization ID.

paramdirectoryIdstring

The directory identifier to retrieve (format: “dir_…”)

returnsGetDirectoryResponse

The directory.

const response = await scalekit.directory.getDirectory(
'org_123456',
'dir_abc123'
);
const dir = response.directory;
console.log('Provider:', dir.provider);
console.log('Status:', dir.enabled ? 'Active' : 'Inactive');
console.log('Users:', dir.userCount);
clientDirectorieshttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/directory.ts
#asyncgetPrimaryDirectoryByOrganizationId

Retrieves the primary (first) directory for an organization.

paramorganizationIdstring

Organization ID.

returnsDirectory

The first directory object for the organization

const directory = await scalekit.directory.getPrimaryDirectoryByOrganizationId('org_123456');
console.log('Primary Directory:', directory.provider);
console.log('Users:', directory.userCount);
clientDirectorieshttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/directory.ts
#asynclistDirectoryUsers

Lists users synchronized from an identity provider via SCIM directory sync.

paramorganizationIdstring

The organization ID

paramdirectoryIdstring

The directory ID

paramoptionsobject

Optional fields: pageSize, pageToken, includeDetail, directoryGroupId, updatedAfter.

pageSize, pageToken, includeDetail, directoryGroupId, updatedAfter
returnsListDirectoryUsersResponse

Directory users.

// pageSize: Results per page (default 10, max 100)
// pageToken: Token for the next page
// includeDetail: include detail
// directoryGroupId: directory group id
// updatedAfter: Only resources updated after this time
const response = await scalekit.directory.listDirectoryUsers(
'org_123456',
'dir_abc123',
{ pageSize: 50 }
);
console.log(`Found ${response.totalSize} users`);
clientDirectorieshttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/directory.ts
#asynclistDirectoryGroups

Retrieves groups synchronized from an identity provider via SCIM directory sync.

paramorganizationIdstring

The organization ID (format: “org_…”)

paramdirectoryIdstring

The directory ID (format: “dir_…”)

paramoptionsobject

Optional fields: pageSize, pageToken, includeDetail, updatedAfter.

pageSize, pageToken, includeDetail, updatedAfter
returnsListDirectoryGroupsResponse

Directory groups.

// pageSize: Results per page (default 10, max 100)
// pageToken: Token for the next page
// includeDetail: include detail
// updatedAfter: Only resources updated after this time
const response = await scalekit.directory.listDirectoryGroups(
'org_123456',
'dir_abc123',
{ pageSize: 30 }
);
console.log(`Found ${response.totalSize} groups`);
clientDirectorieshttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/directory.ts
#asyncenableDirectory

Enables SCIM directory synchronization for an organization.

paramorganizationIdstring

The organization ID (format: “org_…”)

paramdirectoryIdstring

The directory ID to enable (format: “dir_…”)

returnsToggleDirectoryResponse

The updated resource.

const response = await scalekit.directory.enableDirectory(
'org_123456',
'dir_abc123'
);
console.log('Directory enabled:', response.directory.enabled);
clientDirectorieshttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/directory.ts
#asyncdisableDirectory

Disables SCIM directory synchronization for an organization.

paramorganizationIdstring

The organization ID (format: “org_…”)

paramdirectoryIdstring

The directory ID to disable (format: “dir_…”)

returnsToggleDirectoryResponse

The updated resource.

const response = await scalekit.directory.disableDirectory(
'org_123456',
'dir_abc123'
);
console.log('Directory disabled:', !response.directory.enabled);