Files
gestion-certificats2/src/services/api/perimeters.ts
2025-06-16 14:38:15 +02:00

40 lines
1.1 KiB
TypeScript

import { apiClient } from './client';
import { FunctionalPerimeter } from '../../types';
export interface CreatePerimeterRequest {
name: string;
intermediate_passphrase?: string;
}
export interface PerimeterResponse {
success: boolean;
data: FunctionalPerimeter;
message?: string;
}
export interface PerimetersListResponse {
success: boolean;
data: FunctionalPerimeter[];
message?: string;
}
export const perimetersApi = {
async getAll(): Promise<FunctionalPerimeter[]> {
const response = await apiClient.get<PerimetersListResponse>('/perimeters');
return response.data.data;
},
async getById(id: number): Promise<FunctionalPerimeter> {
const response = await apiClient.get<PerimeterResponse>(`/perimeters/${id}`);
return response.data.data;
},
async create(data: CreatePerimeterRequest): Promise<FunctionalPerimeter> {
const response = await apiClient.post<PerimeterResponse>('/perimeters', data);
return response.data.data;
},
async delete(id: number): Promise<void> {
await apiClient.delete(`/perimeters/${id}`);
},
};