22 lines
1.0 KiB
TypeScript
22 lines
1.0 KiB
TypeScript
import apiClient from './client';
|
|
import { Subscription, SubscriptionListParams, PaginatedResponse } from '../types/api';
|
|
|
|
export const subscriptionsApi = {
|
|
getSubscriptions: async (params: SubscriptionListParams): Promise<PaginatedResponse<Subscription>> => {
|
|
const { data, headers } = await apiClient.get('/v1/admin/subscriptions', { params });
|
|
const total = parseInt(headers['x-total-count'] || '0', 10);
|
|
return { data, total };
|
|
},
|
|
getSubscription: async (id: string): Promise<Subscription> => {
|
|
const { data } = await apiClient.get(`/v1/admin/subscriptions/${id}`);
|
|
return data;
|
|
},
|
|
updateSubscription: async (id: string, payload: Partial<Subscription>): Promise<Subscription> => {
|
|
const { data } = await apiClient.put(`/v1/admin/subscriptions/${id}`, payload);
|
|
return data;
|
|
},
|
|
deleteSubscription: async (id: string): Promise<Subscription> => {
|
|
const { data } = await apiClient.delete(`/v1/admin/subscriptions/${id}`);
|
|
return data;
|
|
},
|
|
}; |