All Projects → trilix-gmbh → akeneo-events-api-bundle

trilix-gmbh / akeneo-events-api-bundle

Licence: MIT license
The Events API Bundle for Akeneo PIM delivers catalog changes as events to a 3rd party systems.

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to akeneo-events-api-bundle

lemon
Lemon – LED Monitor – is a $79.43 opensource alternative to LaMetric that supports GitHub-, IFTTT- and Zapier-webhooks and even integrates with Pushover!
Stars: ✭ 45 (+150%)
Mutual labels:  webhooks, ifttt-webhooks
convoy
Fast and Secure Webhooks Service.
Stars: ✭ 763 (+4138.89%)
Mutual labels:  webhooks
react-preview
a GitHub App built with probot that generates preview links for react based projects.
Stars: ✭ 14 (-22.22%)
Mutual labels:  webhooks
CEventCenter
一个Android事件分发中心库,基于对象池及接口回调实现。实现类似BroadcastReceiver/RxBus/EventBus等的消息事件传递功能,用于在Activity/Fragment/Service之间的消息传递通讯。
Stars: ✭ 116 (+544.44%)
Mutual labels:  event
kubewise
Get Helm notifications in your team chat
Stars: ✭ 52 (+188.89%)
Mutual labels:  webhooks
awesome-frappe
A curated list of awesome things related to the Frappe Framework
Stars: ✭ 140 (+677.78%)
Mutual labels:  integrations
untrace
🐳 Minimal event tracking on the client in 300 bytes.
Stars: ✭ 26 (+44.44%)
Mutual labels:  event
PoShLog
🔩 PoShLog is PowerShell cross-platform logging module. It allows you to log structured event data into console, file and much more places easily. It's built upon great C# logging library Serilog - https://serilog.net/
Stars: ✭ 108 (+500%)
Mutual labels:  event
WELA
WELA (Windows Event Log Analyzer): The Swiss Army knife for Windows Event Logs! ゑ羅(ウェラ)
Stars: ✭ 442 (+2355.56%)
Mutual labels:  event
discord-twitter-webhooks
🤖 Stream tweets to Discord
Stars: ✭ 47 (+161.11%)
Mutual labels:  webhooks
react-trigger-change
Trigger React's synthetic change events on input, textarea and select elements
Stars: ✭ 63 (+250%)
Mutual labels:  event
sapa
sapa is a library that creates a UI with a simple event system.
Stars: ✭ 65 (+261.11%)
Mutual labels:  event
solace-integration-guides
solacelabs.github.io/solace-integration-guides/
Stars: ✭ 12 (-33.33%)
Mutual labels:  integrations
ExcelInitBundle
Setup your Akeneo PIM data with a single init.xls file
Stars: ✭ 21 (+16.67%)
Mutual labels:  akeneo-pim
SyliusAkeneoPlugin
This Sylius plugin allows you to import data from Akeneo PIM
Stars: ✭ 17 (-5.56%)
Mutual labels:  akeneo-pim
tradingview-webhooks
Backend service converting tradingview alerts into action.
Stars: ✭ 44 (+144.44%)
Mutual labels:  webhooks
UT GameEventSystem
A flexible event system in Unreal Engine 4
Stars: ✭ 33 (+83.33%)
Mutual labels:  event
glitchub
A step by step guide on how to keep a Glitch project in sync with a GitHub repo
Stars: ✭ 31 (+72.22%)
Mutual labels:  webhooks
hepipe.js
Pipe arbitrary data rows (logs, events, cdrs, esl, etc) to HEP Server (HOMER)
Stars: ✭ 22 (+22.22%)
Mutual labels:  event
hookbot
Turn webhooks into websockets
Stars: ✭ 37 (+105.56%)
Mutual labels:  webhooks

Akeneo PIM Events API

The Events API is a smooth and easy way to build integrations that respond to activities in Akeneo PIM. All you need is PIM Events API Bundle and an endpoint where to send Akeneo PIM events.

Table of contents

Getting Started

Requirements

  • Akeneo PIM >= 5.0 (CE & EE)

Installation

Install via composer:

php composer.phar require trilix/akeneo-events-api-bundle:^0.7.0

To enable the bundle add to the config/bundles.php file:

return [
    // ...
    Trilix\EventsApiBundle\TrilixEventsApiBundle::class => ['all' => true]
]

Add the following line at the end of env file:

EVENTS_API_REQUEST_URL=your_request_url

where your_request_url is a target location where all the events (see event types) will be delivered.

Create file config/packages/trilix_events_api.yml with the following:

trilix_events_api:
    transport:
        factory: "pim_events_api.transport_factory.http"
        options:
            request_url: "%env(EVENTS_API_REQUEST_URL)%"

Clear cache:

php bin/console cache:clear --env=prod

Run the following command to create a job to deliver events to consumer:

php bin/console akeneo:batch:create-job 'Deliver outer event to consumer' deliver_outer_event_to_consumer internal deliver_outer_event_to_consumer

Make sure Akeneo job queue daemon is running. For more information read Setting up the job queue daemon.

Functionality

How it works

Some event(s) happens in Akeneo PIM. This triggers a mechanism to send those event(s) as HTTP POST request to your Request URL. Each request contains event, with correspondent event type presented in JSON format (see example).

Events API sends one request per one event, and sending of requests happens in real-time.

Event types delivered over Events API

Event Description
category_created New category was created
category_updated Existing category was updated
category_removed Existing category was deleted
attribute_created New attribute was created
attribute_updated Existing attribute was updated
attribute_removed Existing attribute was deleted
family_created New family was created
family_updated Existing family was updated
family_removed Existing family was deleted
product_created New product was created
product_updated Existing product was updated
product_removed Existing product was deleted
product_model_created New product model was created
product_model_updated Existing product model was updated
product_model_removed Existing product model was deleted

Example of category_updated event

{
  "event_type": "category_updated",
  "payload": {
    "code": "cameras",
    "labels": {
      "de_DE": "Cameras",
      "en_US": "Cameras new name",
      "fr_FR": "Caméras"
    },
    "parent": "master"
  },
  "event_time": 1565021907
}

Example of product_model_removed event

{
  "event_type": "product_model_removed",
  "payload": {
    "code": "derby"
  },
  "event_time": 1579792377
}

Event Type Structure

Field Type Description
event_type String Type of event which happened (see event types)
payload Object Contains information which represents the event. For events related to deletion of entity it contains entity only identifier (identifier value for Products and code for all others)
event_time Integer Timestamp in seconds when the event was created

Attention

If Akeneo family contains variants, then during family update (or it's variants as well), Akeneo will re-save related products. It will trigger sending product_updated events.

License

This project is licensed under the MIT License - see the LICENSE file for details

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].