paypal-rest-api
Version:
A typescript module for integrating with PayPal REST APIs.
56 lines (55 loc) • 2.26 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const joi = require("joi");
const schemas_1 = require("../webhook/schemas");
exports.webhookEventIdSchema = joi.string().min(1);
exports.webhookEventGetRequestSchema = joi.object({
method: joi.string().default("GET"),
uri: joi.string().regex(/\/v1\/notifications\/webhooks-events\/.*/).required(),
});
exports.webhookEventListRequestSchema = joi.object({
method: joi.string().default("GET"),
qs: joi.object({
end_time: joi.string().optional(),
event_type: schemas_1.webhookEventTypeNameSchema.optional(),
page_size: joi.number().min(1).default(10),
start_time: joi.string().optional(),
transaction_id: joi.string().optional(),
}).default({}),
uri: joi.string().default("/v1/notifications/webhooks-events"),
});
exports.webhookEventResendRequestSchema = joi.object({
body: joi.object({
webhook_ids: joi.array().min(1).items(joi.string().alphanum().min(1)).optional(),
}).default({}),
method: joi.string().default("POST"),
uri: joi.string().required(),
});
exports.webhookEventVerifyRequestSchema = joi.object({
body: joi.object({
auth_algo: joi.string().required(),
cert_url: joi.string().required(),
transmission_id: joi.string().required(),
transmission_sig: joi.string().required(),
transmission_time: joi.string().required(),
webhook_event: joi.string().required(),
webhook_id: joi.string().required(),
}).required(),
headers: joi.object({
"Content-Type": joi.string().default("application/json"),
}).default(),
json: joi.boolean().default(false),
method: joi.string().default("POST"),
uri: joi.string().default("/v1/notifications/verify-webhook-signature"),
});
exports.webhookEventSimulateRequestSchema = joi.object({
body: joi.object({
event_type: schemas_1.webhookEventTypeNameSchema.required(),
url: joi.string().uri({
scheme: ["https"],
}).optional(),
webhook_id: joi.string().optional(),
}).xor("url", "webhook_id").required(),
method: joi.string().default("POST"),
uri: joi.string().default("/v1/notifications/simulate-event"),
});