Files
EventHubFrontAdmin/src/api/subscriptionsApi.ts
T

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;
},
};