TypeScript client for TAMM Admin Service API - Auto-generated from OpenAPI spec
npm install @tammsyr/admin-api-clientbash
npm install @tammsyr/admin-api-client
`
Quick Start
`typescript
import { AdminApiClient } from '@tammsyr/admin-api-client';
// Create client instance
const adminClient = new AdminApiClient({
baseURL: 'http://localhost:3006/admin/v1', // Include /admin/v1 prefix
token: 'your-jwt-token', // Optional, can be set later
});
// Login
const loginResponse = await adminClient.auth.login({
email: 'admin@example.com',
password: 'password123',
});
// Store token
adminClient.setToken(loginResponse.data.accessToken);
// Use authenticated endpoints
const admins = await adminClient.admins.getAll();
const roles = await adminClient.roles.getAll();
const permissions = await adminClient.permissions.getAll();
`
API Reference
$3
- adminClient.auth - Authentication (login, logout)
- adminClient.admins - Admin user management
- adminClient.roles - Role management
- adminClient.permissions - Permission management
- adminClient.agents - Agent management
- adminClient.agentBranches - Agent branch management
- adminClient.agentSettlements - Agent settlement management
- adminClient.kyc - KYC management
- adminClient.notifications - Notification management
- adminClient.activityLogs - Activity log queries
- adminClient.seed - Database seeding (dev only)
$3
`typescript
// Set token during initialization
const client = new AdminApiClient({
baseURL: 'http://localhost:3006',
token: 'your-token',
});
// Or set token later
client.setToken('new-token');
// Clear token
client.clearToken();
`
$3
`typescript
import { Admins, HttpClient } from '@tammsyr/admin-api-client';
const httpClient = new HttpClient({
baseURL: 'http://localhost:3006',
securityWorker: async (authData) => {
const token = localStorage.getItem('admin_token');
if (token) {
return {
headers: {
Authorization: Bearer ${token},
},
};
}
},
secure: true,
});
const adminsApi = new Admins(httpClient);
const allAdmins = await adminsApi.getAll();
`
Types
All TypeScript types are exported:
`typescript
import type {
LoginAdminDto,
AdminUserDto,
AdminRoleDto,
AdminPermissionDto,
// ... all other types
} from '@tammsyr/admin-api-client';
`
Error Handling
`typescript
try {
const response = await adminClient.admins.create(adminData);
console.log('Success:', response.data);
} catch (error) {
if (error.response) {
// Server responded with error status
console.error('API Error:', error.response.status, error.response.data);
} else {
// Network error
console.error('Network Error:', error.message);
}
}
`
Configuration
`typescript
const client = new AdminApiClient({
baseURL: 'http://localhost:3006', // Admin Service URL
timeout: 10000, // Request timeout (ms)
token: 'your-jwt-token', // Optional auth token
headers: {
// Custom headers
'X-Custom-Header': 'value',
},
});
``