Initialize API

This commit is contained in:
KMKoushik
2024-04-09 09:50:56 +10:00
parent 377069978a
commit 4d0441791b
7 changed files with 169 additions and 1 deletions

View File

@@ -0,0 +1,31 @@
import { DomainStatus } from "@prisma/client";
import { z } from "zod";
export const DomainStatusSchema = z.nativeEnum(DomainStatus);
export const DomainSchema = z.object({
id: z.number().openapi({ description: "The ID of the domain", example: 1 }),
name: z
.string()
.openapi({ description: "The name of the domain", example: "example.com" }),
teamId: z.number().openapi({ description: "The ID of the team", example: 1 }),
status: DomainStatusSchema,
region: z.string().default("us-east-1"),
clickTracking: z.boolean().default(false),
openTracking: z.boolean().default(false),
publicKey: z.string(),
dkimStatus: z.string().optional().nullish(),
spfDetails: z.string().optional().nullish(),
createdAt: z.string(),
updatedAt: z.string(),
});
export const CreateDomainSchema = DomainSchema.omit({
id: true,
createdAt: true,
updatedAt: true,
teamId: true,
publicKey: true,
dkimStatus: true,
spfDetails: true,
});