diff --git a/src/api/subscription.ts b/src/api/subscription.ts index a6d9911..868d517 100644 --- a/src/api/subscription.ts +++ b/src/api/subscription.ts @@ -103,6 +103,34 @@ export const subscriptionApi = { await apiClient.post('/cabinet/subscription/devices/save-cart', { devices }); }, + // Get device reduction info (for reducing device limit) + getDeviceReductionInfo: async (): Promise<{ + available: boolean; + reason?: string; + current_device_limit: number; + min_device_limit: number; + can_reduce: number; + connected_devices_count: number; + }> => { + const response = await apiClient.get('/cabinet/subscription/devices/reduction-info'); + return response.data; + }, + + // Reduce device limit + reduceDevices: async ( + newDeviceLimit: number, + ): Promise<{ + success: boolean; + message: string; + old_device_limit: number; + new_device_limit: number; + }> => { + const response = await apiClient.post('/cabinet/subscription/devices/reduce', { + new_device_limit: newDeviceLimit, + }); + return response.data; + }, + // Save traffic cart for later purchase after top-up saveTrafficCart: async (trafficGb: number): Promise => { await apiClient.post('/cabinet/subscription/traffic/save-cart', { gb: trafficGb });