@platform/sdk-payments
Typed TypeScript client for services/payments. The page is generated from the SDK package source plus its generated OpenAPI types.
Installation
npm install @platform/sdk-paymentsYou’ll also need the shared auth/client helpers:
npm install @platform/hosts @platform/sdkQuick start
import { LoopClient } from "@platform/sdk";
import { platformHost, SERVICE_NAMES } from "@platform/hosts";
import { createPaymentsClient } from "@platform/sdk-payments";
const loop = new LoopClient({
clientId: process.env.LOOP_CLIENT_ID!,
clientSecret: process.env.LOOP_CLIENT_SECRET!,
redirectUri: "https://your-app.example.com/auth/loop/callback",
});
const payments = createPaymentsClient({
baseUrl: platformHost({ service: SERVICE_NAMES.PAYMENTS }),
accessToken: tokens.access_token,
});Use the convenience helpers below when the SDK exposes them, or call the typed endpoint methods directly with GET / POST / PATCH / DELETE.
Convenience helpers
createPromo
Underlying REST endpoint: POST /v1/admin/promos
Parameters
input: CreatePromoInput
Return type
Promise<{
data?: PromoRecord;
error?: unknown;
response: Response;
}>Example
const result = await payments.createPromo({
/* CreatePromoInput */
});createRefund
Underlying REST endpoint: POST /v1/admin/refunds
Parameters
input: CreateRefundInput
Return type
Promise<{
data?: {
refund_id: string;
payment_id: string;
charge_id: string | null;
amount_cents: number;
status: string;
stripe_refund_id: string;
};
error?: unknown;
response: Response;
}>Example
const result = await payments.createRefund({
/* CreateRefundInput */
});listInvoices
Underlying REST endpoint: GET /v1/billing/invoices
Parameters
input?: ListInvoicesInput
Return type
Promise<{
data?: InvoiceRecord[];
error?: unknown;
response: Response;
}>Example
const result = await payments.listInvoices({
/* ListInvoicesInput */
});listPromos
Underlying REST endpoint: GET /v1/admin/promos
Parameters
None
Return type
Promise<{
data?: { promos: PromoRecord[] };
error?: unknown;
response: Response;
}>Example
const result = await payments.listPromos();listRefunds
Underlying REST endpoint: GET /v1/admin/refunds
Parameters
input?: ListRefundsInput
Return type
Promise<{
data?: { refunds: AdminRefundRecord[] };
error?: unknown;
response: Response;
}>Example
const result = await payments.listRefunds({
/* ListRefundsInput */
});replayStripeWebhook
Underlying REST endpoint: POST /v1/admin/webhooks/replay
Parameters
eventId: string
Return type
Promise<{
data?: StripeWebhookReplayResult;
error?: unknown;
response: Response;
}>Example
const result = await payments.replayStripeWebhook("<eventId>");Endpoint calls
GET /readyz
Underlying REST endpoint: GET /readyz
Parameters
None
Return type
Promise<{
data?: paths["/readyz"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/readyz");GET /v1/admin/disputes
Underlying REST endpoint: GET /v1/admin/disputes
Parameters
query: paths["/v1/admin/disputes"]["get"]["parameters"]["query"]
Return type
Promise<{
data?: paths["/v1/admin/disputes"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/admin/disputes", {
params: {
query: {
/* paths["/v1/admin/disputes"]["get"]["parameters"]["query"] */
},
},
});GET /v1/admin/disputes/{id}
Underlying REST endpoint: GET /v1/admin/disputes/\{id\}
Parameters
path: paths["/v1/admin/disputes/{id}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/admin/disputes/{id}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/admin/disputes/{id}", {
params: {
path: {
id: "<id>",
},
},
});POST /v1/admin/dunning/retry-invoices
Underlying REST endpoint: POST /v1/admin/dunning/retry-invoices
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/dunning/retry-invoices"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/dunning/retry-invoices");GET /v1/admin/members/{user_id}/billing-summary
Underlying REST endpoint: GET /v1/admin/members/\{user_id\}/billing-summary
Parameters
path: paths["/v1/admin/members/{user_id}/billing-summary"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/admin/members/{user_id}/billing-summary"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/admin/members/{user_id}/billing-summary", {
params: {
path: {
user_id: "<user_id>",
},
},
});POST /v1/admin/payments/monitor-failures
Underlying REST endpoint: POST /v1/admin/payments/monitor-failures
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/payments/monitor-failures"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/payments/monitor-failures");GET /v1/admin/promos
Underlying REST endpoint: GET /v1/admin/promos
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/promos"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/admin/promos");POST /v1/admin/promos
Underlying REST endpoint: POST /v1/admin/promos
Parameters
body?: paths["/v1/admin/promos"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/admin/promos"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/promos", {
body: {
/* paths["/v1/admin/promos"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/admin/reconciliation/stripe-bc
Underlying REST endpoint: POST /v1/admin/reconciliation/stripe-bc
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/reconciliation/stripe-bc"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/reconciliation/stripe-bc");GET /v1/admin/refunds
Underlying REST endpoint: GET /v1/admin/refunds
Parameters
query?: paths["/v1/admin/refunds"]["get"]["parameters"]["query"]
Return type
Promise<{
data?: paths["/v1/admin/refunds"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/admin/refunds", {
params: {
query: {
/* paths["/v1/admin/refunds"]["get"]["parameters"]["query"] */
},
},
});POST /v1/admin/refunds
Underlying REST endpoint: POST /v1/admin/refunds
Parameters
body: paths["/v1/admin/refunds"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/admin/refunds"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/refunds", {
body: {
/* paths["/v1/admin/refunds"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/admin/subscriptions/{id}/cancel
Underlying REST endpoint: POST /v1/admin/subscriptions/\{id\}/cancel
Parameters
path: paths["/v1/admin/subscriptions/{id}/cancel"]["post"]["parameters"]["path"]body: paths["/v1/admin/subscriptions/{id}/cancel"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/admin/subscriptions/{id}/cancel"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/subscriptions/{id}/cancel", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/admin/subscriptions/{id}/cancel"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/admin/subscriptions/{id}/pause
Underlying REST endpoint: POST /v1/admin/subscriptions/\{id\}/pause
Parameters
path: paths["/v1/admin/subscriptions/{id}/pause"]["post"]["parameters"]["path"]body: paths["/v1/admin/subscriptions/{id}/pause"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/admin/subscriptions/{id}/pause"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/subscriptions/{id}/pause", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/admin/subscriptions/{id}/pause"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/admin/subscriptions/{id}/resume
Underlying REST endpoint: POST /v1/admin/subscriptions/\{id\}/resume
Parameters
path: paths["/v1/admin/subscriptions/{id}/resume"]["post"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/admin/subscriptions/{id}/resume"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/subscriptions/{id}/resume", {
params: {
path: {
id: "<id>",
},
},
});POST /v1/admin/sync/telehealth-charge
Underlying REST endpoint: POST /v1/admin/sync/telehealth-charge
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/sync/telehealth-charge"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/sync/telehealth-charge");POST /v1/admin/webhooks/replay
Underlying REST endpoint: POST /v1/admin/webhooks/replay
Parameters
body: paths["/v1/admin/webhooks/replay"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/admin/webhooks/replay"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/admin/webhooks/replay", {
body: {
/* paths["/v1/admin/webhooks/replay"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/billing/gifts/checkout-session
Underlying REST endpoint: POST /v1/billing/gifts/checkout-session
Parameters
body: paths["/v1/billing/gifts/checkout-session"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/billing/gifts/checkout-session"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/billing/gifts/checkout-session", {
body: {
/* paths["/v1/billing/gifts/checkout-session"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/billing/gifts/checkout-session/{session_id}/finalize
Underlying REST endpoint: POST /v1/billing/gifts/checkout-session/\{session_id\}/finalize
Parameters
path: paths["/v1/billing/gifts/checkout-session/{session_id}/finalize"]["post"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/billing/gifts/checkout-session/{session_id}/finalize"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/billing/gifts/checkout-session/{session_id}/finalize", {
params: {
path: {
session_id: "<session_id>",
},
},
});POST /v1/billing/gifts/redeem
Underlying REST endpoint: POST /v1/billing/gifts/redeem
Parameters
body: paths["/v1/billing/gifts/redeem"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/billing/gifts/redeem"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/billing/gifts/redeem", {
body: {
/* paths["/v1/billing/gifts/redeem"]["post"]["requestBody"]["content"]["application/json"] */
},
});GET /v1/billing/invoices
Underlying REST endpoint: GET /v1/billing/invoices
Parameters
query?: paths["/v1/billing/invoices"]["get"]["parameters"]["query"]
Return type
Promise<{
data?: paths["/v1/billing/invoices"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/billing/invoices", {
params: {
query: {
/* paths["/v1/billing/invoices"]["get"]["parameters"]["query"] */
},
},
});GET /v1/billing/payment-methods
Underlying REST endpoint: GET /v1/billing/payment-methods
Parameters
None
Return type
Promise<{
data?: paths["/v1/billing/payment-methods"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/billing/payment-methods");POST /v1/billing/portal-session
Underlying REST endpoint: POST /v1/billing/portal-session
Parameters
body: paths["/v1/billing/portal-session"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/billing/portal-session"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/billing/portal-session", {
body: {
/* paths["/v1/billing/portal-session"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/billing/subscription/cancel
Underlying REST endpoint: POST /v1/billing/subscription/cancel
Parameters
body: paths["/v1/billing/subscription/cancel"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/billing/subscription/cancel"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/billing/subscription/cancel", {
body: {
/* paths["/v1/billing/subscription/cancel"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/billing/subscription/pause
Underlying REST endpoint: POST /v1/billing/subscription/pause
Parameters
None
Return type
Promise<{
data?: paths["/v1/billing/subscription/pause"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/billing/subscription/pause");GET /v1/billing/summary
Underlying REST endpoint: GET /v1/billing/summary
Parameters
None
Return type
Promise<{
data?: paths["/v1/billing/summary"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/billing/summary");POST /v1/checkout
Underlying REST endpoint: POST /v1/checkout
Parameters
body: paths["/v1/checkout"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/checkout"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/checkout", {
body: {
/* paths["/v1/checkout"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/gift-membership/redeem
Underlying REST endpoint: POST /v1/gift-membership/redeem
Parameters
body: paths["/v1/gift-membership/redeem"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/gift-membership/redeem"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/gift-membership/redeem", {
body: {
/* paths["/v1/gift-membership/redeem"]["post"]["requestBody"]["content"]["application/json"] */
},
});GET /v1/payment-methods
Underlying REST endpoint: GET /v1/payment-methods
Parameters
None
Return type
Promise<{
data?: paths["/v1/payment-methods"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/payment-methods");GET /v1/payments/{id}
Underlying REST endpoint: GET /v1/payments/\{id\}
Parameters
path: paths["/v1/payments/{id}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/payments/{id}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/payments/{id}", {
params: {
path: {
id: "<id>",
},
},
});GET /v1/payments/methods/{customer_id}
Underlying REST endpoint: GET /v1/payments/methods/\{customer_id\}
Parameters
path: paths["/v1/payments/methods/{customer_id}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/payments/methods/{customer_id}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/payments/methods/{customer_id}", {
params: {
path: {
customer_id: "<customer_id>",
},
},
});POST /v1/promo/validate
Underlying REST endpoint: POST /v1/promo/validate
Parameters
body: paths["/v1/promo/validate"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/promo/validate"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/promo/validate", {
body: {
/* paths["/v1/promo/validate"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/promos/validate
Underlying REST endpoint: POST /v1/promos/validate
Parameters
body: paths["/v1/promos/validate"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/promos/validate"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/promos/validate", {
body: {
/* paths["/v1/promos/validate"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/refunds
Underlying REST endpoint: POST /v1/refunds
Parameters
body: paths["/v1/refunds"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/refunds"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/refunds", {
body: {
/* paths["/v1/refunds"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/subscriptions
Underlying REST endpoint: POST /v1/subscriptions
Parameters
body: paths["/v1/subscriptions"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/subscriptions", {
body: {
/* paths["/v1/subscriptions"]["post"]["requestBody"]["content"]["application/json"] */
},
});DELETE /v1/subscriptions/{id}
Underlying REST endpoint: DELETE /v1/subscriptions/\{id\}
Parameters
path: paths["/v1/subscriptions/{id}"]["delete"]["parameters"]["path"]body?: paths["/v1/subscriptions/{id}"]["delete"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}"]["delete"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.DELETE("/v1/subscriptions/{id}", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/subscriptions/{id}"]["delete"]["requestBody"]["content"]["application/json"] */
},
});GET /v1/subscriptions/{id}
Underlying REST endpoint: GET /v1/subscriptions/\{id\}
Parameters
path: paths["/v1/subscriptions/{id}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.GET("/v1/subscriptions/{id}", {
params: {
path: {
id: "<id>",
},
},
});PATCH /v1/subscriptions/{id}
Underlying REST endpoint: PATCH /v1/subscriptions/\{id\}
Parameters
path: paths["/v1/subscriptions/{id}"]["patch"]["parameters"]["path"]body: paths["/v1/subscriptions/{id}"]["patch"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}"]["patch"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.PATCH("/v1/subscriptions/{id}", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/subscriptions/{id}"]["patch"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/subscriptions/{id}/cadence
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/cadence
Parameters
path: paths["/v1/subscriptions/{id}/cadence"]["post"]["parameters"]["path"]body: paths["/v1/subscriptions/{id}/cadence"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/cadence"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/subscriptions/{id}/cadence", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/subscriptions/{id}/cadence"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/subscriptions/{id}/cancel
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/cancel
Parameters
path: paths["/v1/subscriptions/{id}/cancel"]["post"]["parameters"]["path"]body: paths["/v1/subscriptions/{id}/cancel"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/cancel"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/subscriptions/{id}/cancel", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/subscriptions/{id}/cancel"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/subscriptions/{id}/pause
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/pause
Parameters
path: paths["/v1/subscriptions/{id}/pause"]["post"]["parameters"]["path"]body: paths["/v1/subscriptions/{id}/pause"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/pause"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/subscriptions/{id}/pause", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/subscriptions/{id}/pause"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/subscriptions/{id}/resume
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/resume
Parameters
path: paths["/v1/subscriptions/{id}/resume"]["post"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/resume"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await payments.POST("/v1/subscriptions/{id}/resume", {
params: {
path: {
id: "<id>",
},
},
});