28 lines
576 B
TypeScript
28 lines
576 B
TypeScript
import { apiClient } from './client';
|
|
|
|
export interface CloudflareZone {
|
|
id: string;
|
|
name: string;
|
|
}
|
|
|
|
export interface CloudflarePermissions {
|
|
zone: boolean;
|
|
dns: boolean;
|
|
}
|
|
|
|
export interface CloudflareVerifyResponse {
|
|
tokenConfigured: boolean;
|
|
tokenValid: boolean;
|
|
tokenStatus: string;
|
|
zones: CloudflareZone[] | null;
|
|
requiredZones: string[] | null;
|
|
permissions: CloudflarePermissions;
|
|
error?: string;
|
|
}
|
|
|
|
export const cloudflareApi = {
|
|
async verify(): Promise<CloudflareVerifyResponse> {
|
|
return apiClient.get('/api/v1/cloudflare/verify');
|
|
},
|
|
};
|