Skip to content

@lastshotlabs/slingshot-scim

npm install @lastshotlabs/slingshot-scim

Creates the slingshot-scim plugin, which adds SCIM 2.0 user provisioning to a Slingshot app.

Requires slingshot-auth to be installed and configured with auth.scim settings in the auth plugin config. Routes are mounted at /scim/v2/* during setupRoutes.

Supported SCIM 2.0 endpoints:

  • GET /scim/v2/Users — list/search users with single-clause filter support
  • GET /scim/v2/Users/:id — retrieve a single user
  • POST /scim/v2/Users — provision a new user
  • PUT /scim/v2/Users/:id — full user replacement
  • PATCH /scim/v2/Users/:id — partial update (PatchOp)
  • DELETE /scim/v2/Users/:id — deprovision (suspend or hard-delete, configurable)
  • GET /scim/v2/ServiceProviderConfig — capability discovery
  • GET /scim/v2/ResourceTypes — resource type discovery
function createScimPlugin(): SlingshotPlugin

Source: packages/slingshot-scim/src/plugin.ts

Rate-limit options applied to SCIM read endpoints (GET /scim/v2/Users, etc.). 100 requests per minute per client IP.

function createScimRouter(runtime: AuthRuntimeContext): void

Source: packages/slingshot-scim/src/routes/scim.ts

A SCIM 2.0 User resource as defined by RFC 7643 §4.1. Returned by the /scim/v2/Users endpoints in JSON response bodies.

function parseScimFilter(filter?: string): UserQuery | null

Source: packages/slingshot-scim/src/lib/scim.ts

A SCIM 2.0 User resource as defined by RFC 7643 §4.1. Returned by the /scim/v2/Users endpoints in JSON response bodies.

function scimError(status: number, detail: string, scimType?: string): Response

Source: packages/slingshot-scim/src/lib/scim.ts

A SCIM 2.0 User resource as defined by RFC 7643 §4.1. Returned by the /scim/v2/Users endpoints in JSON response bodies.

function userRecordToScim(user: UserRecord, config?: { userName?: 'email' | 'username' },): ScimUser

Source: packages/slingshot-scim/src/lib/scim.ts

A SCIM 2.0 User resource as defined by RFC 7643 §4.1. Returned by the /scim/v2/Users endpoints in JSON response bodies.

Source: packages/slingshot-scim/src/lib/scim.ts

A SCIM 2.0 User resource as defined by RFC 7643 §4.1. Returned by the /scim/v2/Users endpoints in JSON response bodies.

Source: packages/slingshot-scim/src/lib/scim.ts

A SCIM 2.0 User resource as defined by RFC 7643 §4.1. Returned by the /scim/v2/Users endpoints in JSON response bodies.

Source: packages/slingshot-scim/src/lib/scim.ts