A SCIM directory simulator and management tool
Project description
scim-sim — SCIM Directory Simulator
A CLI for creating and managing users and groups against any SCIM-compliant Client. Can be Used to Simulate An IDP Like OKTA, Microsoft, OneIdentity, Jumpcloud etc
Installation
Recommended — using uv:
uv tool install scim-sim
First-time setup: If
scim-simis not found after installing, runuv tool update-shelland restart your terminal. This is a one-time step that adds~/.local/binto your PATH.
Alternatively, with pip:
pip install scim-sim
Configuration
Before using the tool, run setup to configure your SCIM endpoint:
scim-sim setup
This will prompt you for:
- SCIM Base URL — the endpoint of your SCIM service (e.g.
https://api.example.com/scim/v2) - SCIM Auth Token — your authentication token
Configuration is stored in ~/.scim_config.json. View it anytime with:
scim-sim config
Commands
All commands follow the pattern scim-sim <command> [args]. Run scim-sim --help or scim-sim <command> --help for details.
User Management
# Add a new user (generates random user data)
scim-sim add-user
# Remove a user
scim-sim remove-user <user-id>
Group Management
# Create a new group
scim-sim create-group "Engineering Team"
# Delete a group and permanently delete all its members
scim-sim delete-group <group-id>
# Add a user to a group
scim-sim add-to-group <user-id> <group-id>
# Remove a user from a group
scim-sim remove-from-group <user-id> <group-id>
Warning:
delete-grouppermanently deletes all users that belong to the group, not just the group itself.
Directory Visualization
scim-sim show
Displays a tree view of your full directory structure — groups, members, and ungrouped users.
📂 Directory
├── 👥 Groups
│ ├── Engineering Team │ ID: dirgroup_1234567890123456
│ │ ├── 👤 avinash.kamath@example.com │ ID: diruser_8913202356420102
│ │ └── 👤 srini.k@example.com │ ID: diruser_4123456789012345
│ │
│ └── Product Team │ ID: dirgroup_6789012345678901
└── 👤 Ungrouped Users
└── ravi@example.com │ ID: diruser_6789012345678901
Command Reference
| Command | Description |
|---|---|
setup |
Configure SCIM endpoint and auth token |
config |
View current configuration |
add-user |
Create a new randomly generated user |
remove-user <id> |
Delete a user |
show |
Display full directory structure |
create-group <name> |
Create a new group |
delete-group <id> |
Delete a group and all its members |
add-to-group <user-id> <group-id> |
Add a user to a group |
remove-from-group <user-id> <group-id> |
Remove a user from a group |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file scim_sim-0.2.0.tar.gz.
File metadata
- Download URL: scim_sim-0.2.0.tar.gz
- Upload date:
- Size: 136.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f4fc641bf3e55dbffd1e3b2c72d23c4640e50fcafcf94b3fab3630c3062df54
|
|
| MD5 |
64fa8a1f1f312e47b6285e4d0326a7e9
|
|
| BLAKE2b-256 |
4a03964303b2f74634bd9a9506713a91c8bfe2cbc430a59109e561b593d8261b
|
Provenance
The following attestation bundles were made for scim_sim-0.2.0.tar.gz:
Publisher:
python-publish.yml on Avinash-Kamath/scim-simulator
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
scim_sim-0.2.0.tar.gz -
Subject digest:
3f4fc641bf3e55dbffd1e3b2c72d23c4640e50fcafcf94b3fab3630c3062df54 - Sigstore transparency entry: 1670833610
- Sigstore integration time:
-
Permalink:
Avinash-Kamath/scim-simulator@58400a4c927ba822134c10d1e77aa29d8f079021 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/Avinash-Kamath
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@58400a4c927ba822134c10d1e77aa29d8f079021 -
Trigger Event:
release
-
Statement type:
File details
Details for the file scim_sim-0.2.0-py3-none-any.whl.
File metadata
- Download URL: scim_sim-0.2.0-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c584b3d56b62f196fb3c53a33f7f51d3433c01d4c653e4a9cd2815b87853b586
|
|
| MD5 |
0e6fcaabd92b0639c991a2fd38cffcaf
|
|
| BLAKE2b-256 |
f23e98b8693a5b0c76d540f406ba46393679050d5899398c960477bc2891ce2d
|
Provenance
The following attestation bundles were made for scim_sim-0.2.0-py3-none-any.whl:
Publisher:
python-publish.yml on Avinash-Kamath/scim-simulator
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
scim_sim-0.2.0-py3-none-any.whl -
Subject digest:
c584b3d56b62f196fb3c53a33f7f51d3433c01d4c653e4a9cd2815b87853b586 - Sigstore transparency entry: 1670833670
- Sigstore integration time:
-
Permalink:
Avinash-Kamath/scim-simulator@58400a4c927ba822134c10d1e77aa29d8f079021 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/Avinash-Kamath
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@58400a4c927ba822134c10d1e77aa29d8f079021 -
Trigger Event:
release
-
Statement type: