UNPKG

@vulog/aima-promocode

Version:

```bash npm i @vulog/aima-client @vulog/aima-promocode ```

30 lines (26 loc) 759 B
import { Client } from '@vulog/aima-client'; import { z } from 'zod'; const schema = z.object({ userId: z.string().uuid(), entityId: z.string().uuid(), code: z.string().min(1), }); export const submitPromoCode = async ( client: Client, userId: string, entityId: string, code: string ): Promise<string> => { const result = schema.safeParse({ userId, entityId, code }); if (!result.success) { throw new TypeError('Invalid args', { cause: result.error.issues, }); } return client .put<string>(`boapi/proxy/user/billing/fleets/${client.clientOptions.fleetId}/promoCodes/redeem/${code}`, { userId, entityId, }) .then(({ data }) => data); };