Python SDK and CLI tool for the IDSecure API
Project description
IDSecure Python SDK & CLI
A Python client and CLI tool for interacting with the IDSecure API. This project provides a simple and intuitive interface to manage users, devices, and view logs within your IDSecure instance.
Installation
Install via pip:
pip install idsecure-cli
Or install from source:
git clone https://github.com/tsuriu/idsecure-cli.git
cd idsecure-cli
pip install .
CLI Usage
The package includes a command-line interface idsecure-cli.
Configuration
You can provide credentials via flags or environment variables:
--url/IDSECURE_BASE_URL--user/IDSECURE_USERNAME--password/IDSECURE_PASSWORD
Commands
# List all users
idsecure-cli list-users
# List all devices
idsecure-cli list-devices
# Get details for a specific user
idsecure-cli get-user --id 123
# Delete a user
idsecure-cli delete-user --id 123
Visitor Management
# List all visitors
idsecure-cli list-visitors
# Create a new visitor
idsecure-cli create-visitor --name "John Doe" --date "01/01/2026"
# Delete a visitor
idsecure-cli delete-visitor --id 456
Group & Department Management
# List all groups
idsecure-cli list-groups
# List all departments
idsecure-cli list-departments
# Create a new group
idsecure-cli create-group --name "Engineering" --user-id 123 --user-id 456
# Create a new department
idsecure-cli create-department --name "R&D"
# Update a group
idsecure-cli update-group --id 789 --name "Hardware Engineering"
# Delete a group
idsecure-cli delete-group --id 789
SSL Verification
If you are using a local instance with a self-signed certificate, you can disable SSL verification using the --no-verify flag:
idsecure-cli --no-verify list-users
SDK Usage
You can also use the IDSecureClient directly in your Python scripts.
Initialization
import asyncio
from idsecure_cli import IDSecureClient
async def main():
# Initialize the client
client = IDSecureClient(
base_url="https://your-idsecure-instance.com",
username="your-username",
password="your-password"
)
# All client methods are asynchronous
async with client:
users = await client.list_users()
print(f"Total users: {users.get('recordsTotal')}")
if __name__ == "__main__":
asyncio.run(main())
SSL Verification (SDK)
To disable SSL verification in the SDK:
client = IDSecureClient(..., verify=False)
Examples
Check the examples/ directory for more usage examples:
example_usage.py: Demonstrates listing users, devices, logs, and departments.
To run the example script with self-signed certificates:
IDSECURE_VERIFY=false python3 examples/example_usage.py
Requirements
- Python 3.8+
httpxclickloguru
License
This project is licensed under the MIT License.
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 idsecure_cli-0.1.6.tar.gz.
File metadata
- Download URL: idsecure_cli-0.1.6.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d5e0bb63a3d9ddebff6206d9ba436e1298779514368a68fd83849d11c900dfc8
|
|
| MD5 |
afa88a58d840d4990c18e1b889ef32fb
|
|
| BLAKE2b-256 |
594b68dafe6ad4e8ac9fb1e727a32dd9ca7f508f091b296fe3db70bf7b001ffb
|
File details
Details for the file idsecure_cli-0.1.6-py3-none-any.whl.
File metadata
- Download URL: idsecure_cli-0.1.6-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32ffc833a51400be4b13f40e0a79e7e15fb334d062090ceefa2a315ed8c14ecd
|
|
| MD5 |
3ebf13726dbe4423cd403b71737b0c08
|
|
| BLAKE2b-256 |
fff699cf9da80efbafbe870efe04e97eeb48ec371841e43803982ee5d00e2170
|