SurfSense/surfsense_web/lib/apis/stripe-api.service.ts

35 lines
963 B
TypeScript
Raw Normal View History

import {
type CreateCheckoutSessionRequest,
type CreateCheckoutSessionResponse,
createCheckoutSessionResponse,
type GetPagePurchasesResponse,
getPagePurchasesResponse,
type StripeStatusResponse,
stripeStatusResponse,
} from "@/contracts/types/stripe.types";
import { baseApiService } from "./base-api.service";
class StripeApiService {
createCheckoutSession = async (
request: CreateCheckoutSessionRequest
): Promise<CreateCheckoutSessionResponse> => {
2026-03-31 21:42:03 -07:00
return baseApiService.post(
"/api/v1/stripe/create-checkout-session",
createCheckoutSessionResponse,
{
body: request,
}
);
};
getPurchases = async (): Promise<GetPagePurchasesResponse> => {
return baseApiService.get("/api/v1/stripe/purchases", getPagePurchasesResponse);
};
getStatus = async (): Promise<StripeStatusResponse> => {
return baseApiService.get("/api/v1/stripe/status", stripeStatusResponse);
};
}
export const stripeApiService = new StripeApiService();