Authentication
User registration, login, password management, API keys, and session management. Public endpoints (register, login, forgotPassword, resetPassword) do not require authentication.
17 methods
client.auth.register()
Register a new user account.
ParametersRegisterInput
emailrequiredstringemailUser email address.
passwordrequiredstringUser password.
Return Fields
idrequiredstringuuidUser ID.
emailrequiredstringUser email.
isActiverequiredbooleanAccount active status.
rolerequiredUserRoleUser role.
useradminsystemcreatedAtrequiredstringdate-timeCreation timestamp.
register(input: RegisterInput): Promise<RegisterResponse>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.register({ email: 'user@example.com', password: 'SecurePass123!' });
console.log(result.id);// Promise<RegisterResponse>
{
id: string;
email: string;
isActive: boolean;
role: UserRole;
createdAt: string;
}client.auth.login()
Authenticate with email and password. Returns a session token and user profile.
ParametersLoginInput
emailrequiredstringemailUser email address.
passwordrequiredstringUser password.
Return Fields
userrequiredAuthUserAuthenticated user profile.
sessionTokenrequiredstringJWT session token.
expiresAtrequiredstringdate-timeToken expiration.
login(input: LoginInput): Promise<LoginResponse>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.login({ email: 'user@example.com', password: 'SecurePass123!' });
console.log(result.user);// Promise<LoginResponse>
{
user: AuthUser;
sessionToken: string;
expiresAt: string;
}client.auth.logoutAll()
Revoke all active sessions for the current user.
Return Fields
sessionsRevokedrequirednumberNumber of sessions revoked.
logoutAll(): Promise<{ sessionsRevoked: number }>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.logoutAll();
console.log(result.sessionsRevoked);// Promise<{ sessionsRevoked: number }>
{
sessionsRevoked: number;
}client.auth.forgotPassword()
Send a password reset email. Always returns success to prevent email enumeration.
Parameters
emailrequiredstringemailUser email address.
Return Fields
messagerequiredstringSuccess message.
forgotPassword(email: string): Promise<MessageResponse>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.forgotPassword('user@example.com');
console.log(result.message);// Promise<MessageResponse>
{
message: string;
}client.auth.resetPassword()
Reset password using a token from the forgot-password email.
ParametersResetPasswordInput
tokenrequiredstringPassword reset token from email.
passwordrequiredstringNew password.
Return Fields
messagerequiredstringSuccess message.
resetPassword(input: ResetPasswordInput): Promise<MessageResponse>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.resetPassword({ token: 'reset-token-abc123', password: 'SecurePass123!' });
console.log(result.message);// Promise<MessageResponse>
{
message: string;
}client.auth.changePassword()
Change password for the authenticated user. Requires current password for verification.
ParametersChangePasswordInput
currentPasswordrequiredstringCurrent password for verification.
newPasswordrequiredstringNew password.
Return Fields
messagerequiredstringSuccess message.
changePassword(input: ChangePasswordInput): Promise<MessageResponse>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.changePassword({ currentPassword: 'SecurePass123!', newPassword: 'SecurePass123!' });
console.log(result.message);// Promise<MessageResponse>
{
message: string;
}client.auth.setPassword()
Set a password for the first time (no current password required).
Parameters
passwordrequiredstringPassword to set.
Return Fields
messagerequiredstringSuccess message.
setPassword(password: string): Promise<MessageResponse>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.setPassword('SecurePass123!');
console.log(result.message);// Promise<MessageResponse>
{
message: string;
}client.auth.getMe()
Get the authenticated user's profile.
Return Fields
idrequiredstringuuidUser ID.
emailrequiredstringemailUser email.
rolerequiredUserRoleUser role.
useradminsystemusernamerequiredstring | nullDisplay username.
namerequiredstring | nullFull name.
getMe(): Promise<AuthUser>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.getMe();
console.log(result.id);// Promise<AuthUser>
{
id: string;
email: string;
role: UserRole;
username: string | null;
name: string | null;
}client.auth.getProfile()
Get the authenticated user's full public profile.
Return Fields
userrequiredPublicUserFull public user profile including avatar, bio, timezone.
getProfile(): Promise<{ user: PublicUser }>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.getProfile();
console.log(result.user);// Promise<{ user: PublicUser }>
{
user: PublicUser;
}client.auth.updateProfile()
Update the authenticated user's profile fields.
ParametersUpdateProfileInput
usernameoptionalstring | nullDisplay username.
nameoptionalstring | nullFull name.
biooptionalstring | nullShort bio.
timezoneoptionalstring | nullIANA timezone string.
websiteUrloptionalstring | nulluriWebsite URL.
Return Fields
userrequiredPublicUserUpdated public user profile.
updateProfile(input: UpdateProfileInput): Promise<{ user: PublicUser }>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.updateProfile();
console.log(result.user);// Promise<{ user: PublicUser }>
{
user: PublicUser;
}client.auth.deleteAvatar()
Delete the authenticated user's avatar.
deleteAvatar(): Promise<void>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.deleteAvatar();Promise<void>client.auth.listApiKeys()
List all API keys for the authenticated user.
Return Fields
idrequiredstringuuidKey ID.
namerequiredstring | nullKey name.
lastUsedAtrequiredstring | nulldate-timeLast usage timestamp.
expiresAtrequiredstring | nulldate-timeExpiration timestamp.
createdAtrequiredstringdate-timeCreation timestamp.
listApiKeys(): Promise<PublicApiKey[]>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.listApiKeys();
console.log(result.id);// Promise<PublicApiKey[]>
{
id: string;
name: string | null;
lastUsedAt: string | null;
expiresAt: string | null;
createdAt: string;
}client.auth.createApiKey()
Create a new API key. The plaintext key is only returned once.
ParametersCreateApiKeyInput
nameoptionalstringOptional name for the API key.
expiresAtoptionalstringdate-timeOptional expiration date.
Return Fields
keyrequiredstringPlaintext API key — only shown once.
apiKeyrequiredPublicApiKeyKey metadata (id, name, createdAt).
createApiKey(input?: CreateApiKeyInput): Promise<ApiKeyCreatedResponse>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.createApiKey();
console.log(result.key);// Promise<ApiKeyCreatedResponse>
{
key: string;
apiKey: PublicApiKey;
}client.auth.revokeApiKey()
Revoke an API key by ID.
Parameters
keyIdrequiredstringuuidAPI key ID to revoke.
revokeApiKey(keyId: string): Promise<void>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.revokeApiKey('550e8400-e29b-41d4-a716-446655440000');Promise<void>client.auth.listSessions()
List all active sessions for the authenticated user.
Return Fields
idrequiredstringuuidSession ID.
expiresAtrequiredstringdate-timeSession expiration.
createdAtrequiredstringdate-timeSession creation.
lastActiveAtrequiredstringdate-timeLast activity.
userAgentrequiredstring | nullClient user agent.
ipAddressrequiredstring | nullClient IP address.
listSessions(): Promise<PublicSession[]>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.listSessions();
console.log(result.id);// Promise<PublicSession[]>
{
id: string;
expiresAt: string;
createdAt: string;
lastActiveAt: string;
userAgent: string | null;
ipAddress: string | null;
}client.auth.revokeSession()
Revoke a session by ID.
Parameters
sessionIdrequiredstringuuidSession ID to revoke.
revokeSession(sessionId: string): Promise<void>import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.revokeSession('550e8400-e29b-41d4-a716-446655440000');Promise<void>client.auth.getAvatar()
Fetch the current user's avatar bytes and content type.
getAvatar()import { OpsClient } from '@uluops/ops-sdk';
const client = new OpsClient({
apiKey: 'ulr_your-api-key',
});
const result = await client.auth.getAvatar();Promise<{ bytes: ArrayBuffer; contentType: string }>