Introduction#
A Profile represents an external actor that interacts with the system via authenticated API calls. Each profile encapsulates the following core attributes:username: Unique identifier used for authentication
password: Secret credential associated with the username
publicKey: A registered cryptographic public key used for verifying request signatures and securing communication
Profile Types#
The system supports two types of profiles:User: A profile that uses the system for uploading/downloading data, registering devices, and managing their account
Device: A storage device or authenticator that is registered under a user profile
Profile Activation Requirements#
For a profile to become active and fully functional within the system, its associated public key must be successfully registered. Without a registered public key, the profile remains incomplete and cannot initiate system-level operations.Public key registration is a mandatory step in the provisioning process. Until this is completed, the profile cannot participate in any authenticated workflow.
Authentication and Authorization#
Token-Based Authentication#
Before a profile can interact with protected system resources, it must obtain a valid authorization token through the authentication endpoint using its credentials (username and password).Using Authorization Tokens#
Once obtained, the authorization token must be included in all subsequent requests:For API requests: Include as an X-DPT-AUTHORIZATION header
For messages: Include as a token field
Token Lifecycle Management#
Authorization tokens have a limited lifespan for security purposes. The Profile Management API provides several endpoints to manage token lifecycle:Reauthorize: Extend token validity by specifying a new time-to-live (TTL)
Revoke: Invalidate a token immediately (useful for logout or security incidents)
Check Expiry: Query when your current token will expire to plan reauthorization
Profile Activation Requirements#
For a profile to become an active and fully functional identity within the system, its associated publicKey must be successfully registered. The absence of a registered key renders the profile incomplete and unable to initiate system-level operations.Note: Public key registration is a mandatory step in the provisioning process. Until this is completed, the profile cannot participate in any authenticated workflow.
Profile Management Features#
The Profile Management API provides the following capabilities:Security Operations#
Change Password: Update your password with entropy validation to ensure strong credentials
Token Management: Control token lifecycle through reauthorization, revocation, and expiry checking
Identity and Integration#
Retrieve Profile ID: Obtain your unique identifier for third-party integrations
Generate QR Token: Create scannable tokens for easy device registration and onboarding
Workflow Summary#
1.
Provision: Create a profile with username, password, and public key
2.
Register: Complete public key registration to activate the profile
3.
Authenticate: Obtain an authorization token using credentials
4.
Operate: Use the token to access protected resources and manage your profile
5.
Maintain: Monitor token expiry and reauthorize or revoke as needed