• Интеграции и плагины
  • Сообщество
  • Связаться с нами
Документация

Нужна помощь в разработке плагина интеграции для Medusa?

Написать намНайти плагины

Gorgo снижает затраты на адаптацию Medusa к локальным рынкам.

Мы разрабатываем плагины интеграции, осуществляем поддержку и развиваем сообщество разработчиков на Medusa в Telegram.

  • Ресурсы
  • Интеграции и плагины
  • Сообщество
  • Medusa Чат в Telegram
  • Medusa Новости в Telegram
  • Документация
  • Контакты
  • head@gorgojs.com
  • TelegramGitHub
MedusaПлагиныWebhooks
W

Webhooks

A Medusa plugin that enables webhook management and integration, allowing you to configure and manage outgoing webhooks for your e-commerce events.

Нужна доработка этого плагина?

Связаться с нами
npm install @lambdacurry/medusa-webhooks
Категория
Другое
Создано
Lambda Curry
Версия
1.1.4
Последнее обновление
10 месяцев назад
Ежемесячные загрузки
1118
Звезды на Github
0
npmNPM
MedusaПлагиныWebhooks

@lambdacurry/medusa-webhooks

Add webhook functionality to your Medusa e-commerce server, allowing you to send real-time notifications to external services when specific events occur in your system. The plugin seamlessly integrates with Medusa's event system and provides a simple way to manage webhooks for various events.

Features

  • Event-Based Webhooks: Automatically trigger webhooks based on Medusa events like product creation, updates, and more
  • Flexible Configuration: Easy setup and configuration through Medusa's plugin system
  • Built-in Event Support: Pre-configured support for common Medusa events
  • Workflow Integration: Seamlessly integrates with Medusa's workflow system for reliable webhook processing

Installation

  1. Install the plugin using your preferred package manager:
npm install @lambdacurry/medusa-webhooks
# or
yarn add @lambdacurry/medusa-webhooks
  1. Add the plugin to your :
const plugins = [
// ... other plugins
{
resolve: "@lambdacurry/medusa-webhooks",
options: {
// Add here the subcribers you will define
subscriptions: ["product.created", "product.updated"],
},
},
];
  1. Run migrations:
yarn medusa db:migrate

Usage

Creating a Webhook Subscriber

The plugin provides three different workflows for handling webhooks:

  1. : Retrieves active webhook subscriptions for a specific event
  2. : Sends webhook events to the subscribed endpoints
  3. : Combines both workflows to handle the complete webhook process

Here's an example of how to use these workflows in your subscriber:

import {
SubscriberArgs,
SubscriberConfig,
} from "@medusajs/framework/subscribers";
import {
getWebhooksSubscriptionsWorkflow,
sendWebhooksEventsWorkflow,
fullWebhooksSubscriptionsWorkflow,
} from "@lambdacurry/medusa-webhooks/workflows";
export const config: SubscriberConfig = {
event: ["product.created", "product.updated"],
context: {
subscriberId: "product-added",
},
};
export default async function handleProductAdded({
event: { name },
container,
}: SubscriberArgs<{ id: string }>): Promise<void> {
const query = container.resolve("query");
const logger = container.resolve("logger");
// Fetch product data
const { data: productResult } = await query.graph({
entity: "product",
fields: ["*"],
});
const product = productResult[0];
if (!product) {
logger.error("Product not found");
return;
}
// Option 1: Use the full workflow (recommended for most cases)
const fullResult = await fullWebhooksSubscriptionsWorkflow(container).run({
input: {
eventName: name,
eventData: product,
},
});
// Option 2: Use separate workflows for more control
const { results: webhooks } = await getWebhooksSubscriptionsWorkflow(
container
).run({
input: {
eventName: name,
eventData: product,
},
});
const sendResult = await sendWebhooksEventsWorkflow(container).run({
input: {
webhooks,
eventData: product,
},
});
console.log(fullResult);
// or
console.log(sendResult);
}

Development

To contribute to this plugin:

  1. Clone the repository
  2. Install dependencies:
  3. Run the plugin:

Please read more about how to run the plugin in dev mode: https://docs.medusajs.com/learn/fundamentals/plugins/create

License

MIT License

Еще в этой категории

Посмотреть все
Другое
P

Plugin gati

От Devx Commerce

Gati ERP integration for Medusa

npm
Другое
P

Product reviews

От Lambda Curry

Product Reviews Plugin for Medusa

GitHubnpm
Другое
V

Variant images

От Betanoir

A variant images plugin for Medusa V2.

GitHubnpm

Еще от этого автора

Посмотреть все
Платежи
B

Braintree

От Lambda Curry

Braintree plugin for Medusa

GitHubnpm
Другое
P

Product reviews

От Lambda Curry

Product Reviews Plugin for Medusa

GitHubnpm