Skip to main content

Client Management Overview

The Client Management API is a secure, multi-tenant microservice that handles client lifecycle management with JWT authentication and role-based access control (RBAC).

Base URL

https://dev.api.authsec.dev/clientms

Key Features

  • Multi-Tenant Architecture: Complete tenant isolation for client data
  • Client Lifecycle Management: Create, read, update, and delete clients
  • Status Management: Activate and deactivate clients
  • Advanced Filtering: Filter clients by status, name, tags, and active state
  • Pagination Support: Efficient data retrieval with configurable page sizes
  • OIDC Integration: Support for OIDC-enabled clients via Hydra
  • Tag-Based Organization: Categorize clients with custom tags
  • Ownership Validation: Ensure proper authorization for client operations

API Sections

Client Operations

Comprehensive CRUD operations for managing clients within a tenant context.

Client Status

Activate and deactivate clients with admin-level controls.

Client Search & Filtering

List and filter clients with pagination and multiple filter criteria.

Authentication

All endpoints require Bearer token authentication. Include the JWT token in the Authorization header:

Authorization: Bearer YOUR_JWT_TOKEN

Tenant Isolation

All operations are scoped to a specific tenant. The tenantId path parameter ensures proper multi-tenant data isolation.

Client Object

A client object contains the following key properties:

PropertyTypeDescription
idstringUnique client identifier
client_idstringClient identifier for authentication
namestringClient name
emailstringClient email address
statusstringClient status (Active, Inactive, etc.)
activebooleanWhether the client is active
oidc_enabledbooleanOIDC integration status
hydra_client_idstringHydra OAuth2 client ID
tagsarray[string]Custom tags for organization
rolesarray[object]Assigned roles and permissions
tenant_idstringAssociated tenant identifier
org_idstringOrganization identifier
project_idstringProject identifier
owner_idstringOwner user identifier
created_atstringCreation timestamp
updated_atstringLast update timestamp

Multi-Factor Authentication (MFA) Support

Client objects include MFA-related fields:

  • mfa_enabled: Whether MFA is enabled
  • mfa_verified: MFA verification status
  • mfa_method: Available MFA methods
  • mfa_default_method: Default MFA method
  • mfa_enrolled_at: MFA enrollment timestamp
  • last_login: Last login timestamp