Enterprise Integration
Platform

Establish a truly connected enterprise by leveraging the power of a cloud-native, low-code integration platform

elastic.io Enterprise Integration Platform

With the elastic.io easy-to-use and powerful Enterprise Integration Platform, you can have the advantages offered by B2B gateways, API management and ESB solutions all in one tool

With an easy-to-use and powerful Enterprise Integration Platform, you can have the advantages offered by B2B gateways, API management and ESB solutions all in one tool

Enterprise Integration Platform - Customer Logo - Krombacher
Enterprise Integration Platform - Customer Logo - Tata Consultancy Services
Enterprise Integration Platform - Customer Logo - PDI
Enterprise Integration Platform - Customer Logo - Krombacher
Enterprise Integration Platform - Customer Logo - Tata Consultancy Services
Enterprise Integration Platform - Customer Logo Mobile - PDI

Designer

With the intuitive Integration Flow Designer, you can easily transform data between various applications and systems by mapping incoming data into the specific fields where the next integration components expect them to receive.

Smart connectors

Over 100 pre-built connectors for mainstream business applications

hybrid integration platform hybrid integration platform
Protocol connectors

Integrate via standard protocols such as REST, SOAP, ODATA, or via Database

SOAP and REST connectors on elastic.io Enterprise Integration Platform SOAP and REST connectors on elastic.io Enterprise Integration Platform
Mapper

Fast and no-code configuration of integration flows

Workflow designer for data integration on elastic.io Enterprise Integration Platform Workflow designer for data integration on elastic.io Enterprise Integration Platform
Expression Language

Built-in operators and functions for smart extraction and transformation of data

Data transformation in application integration on elastic.io Enterprise Integration Platform Data transformation in application integration on elastic.io Enterprise Integration Platform
Forks

Send data from one system to multiple systems and then aggregate it again

Data aggregation in application integration on elastic.io Enterprise Integration Platform Data aggregation in application integration on elastic.io Enterprise Integration Platform
Content-based routing

Send a data message to the appropriate system based on the message content

Integration Patterns - Content-based Router on elastic.io Enterprise Integration Platform Integration Patterns - Content-based Router
Content enrichment

Map data between non-adjacent integration steps

Data mapping in application integration on elastic.io Enterprise Integration Platform Data mapping in application integration on elastic.io Enterprise Integration Platform
Batch and event-based

Data is sent to other systems at scheduled intervals or in real-time mode

Event-based data integration for event-driven architecture Event-based data integration for event-driven architecture

Monitoring

The elastic.io Enterprise Integration Platform comes with all the necessary tools to detect inconsistencies in your integration workflows, find the source of errors and fix rebelling workflows within one or two hours.

dashboard
Data monitoring in data integration flows
logging
Data logging in data integration flows
error-handling
Fix data integration flows quickly

Deployment

Though being by nature an ideal fit for cloud applications, the elastic.io hybrid integration platform can be easily connected to the on-premises data sources via a secure VPN Local Agent, or deployed on-premises altogether.

Public cloud
Private cloud
Hybrid cloud
Multi cloud

Developers-Friendly

The platform is easily extensible, ensuring fast development of new integration components with minimal efforts, and provides an ideal playground for building new products and services.

sdk
                                                 
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
                                                
const request = require ('request-promise');
/**
* This method will be called from elastic.io with following parameteers
*
* @param msg incoming message object that contains body with payload
* @param cfg configuration that is account information and configuration field values
*/
async function process (msg, cfg) {
   console.log ('You stdout will be safe with us');
   const user = await request.get (https://api.github.com/users/${msg.body.user}?length=${cfg.pageSize});
   const repos = await request.get (user.repos_url);
   console.log (Fetched ${repos.length} repos);
   return { repos };
}

module.exports.process = process;
                                            
                                          
                                                
public class CreateCustomerAction implements Module {

    private static final Logger logger = LoggerFactory.getLogger(CreateCustomerAction
            .class) ;

    @Override
    public final void execute (ExecutionParameters parameters) {
        // This is an incoming message
        final Message message = parameters.getMessage() ;

        logger.info("Received message {}", message) ;

        // This is outgoing result
        final JsonObject body = Json.createObjectBuilder()
                .add("message", "hello world")
                .build() ;

        final Message data = new Message.Builder().body(body).build() ;

        // Sending it to the next integration step
        parameters.getEventEmitter().emitData(data) ;
    }
}

                                                    

                                                
                                            
                                                

Coming soon.

                                                
                                            
integration management api
                                                 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
                                                
curl https://api.elastic.io/v2/flows \
   -u {EMAIL}:{APIKEY} \
   -H 'Accept: application/json' \
   -H 'Content-Type: application/json' -d '
    {
      "data": {
        "type": "flow",
        "attributes": {
          "name": "Timer to E-Mail",
          "type": "ordinary",
          "graph": {
            "nodes": [
              {
                "id": "step_1",
                "command": "elasticio/timer:timer",
                "fields": {
                  "interval": "minute"
                }
              },
              {
                "id": "step_2",
                "command": "elasticio/email:send"
              }
            ],
            "edges": [
              {
                "source": "step_1",
                "target": "step_2",
                "config": {
                  "mapper": {
                    "to": "info@acme.org",
                    "subject": "Test",
                    "textBody": "{{fireTime}}"
                  }
                }
              }
            ]
          }
        }
      }
    }'

                                                
                                            
                                                
curl https://api.elastic.io/v2/users \
   -X POST \
   -u {EMAIL}:{APIKEY} \
   -H 'Accept: application/json' \
   -H 'Content-Type: application/json' -d '
    {
        "data": {
            "type": "user",
            "attributes": {
                "first_name": "John",
                "last_name": "Doe",
                "email": "test@example.com",
                "password": "secret",
                "company": "Doe & Partners"
            },
            "relationships": {
                "organizations": {
                    "data": [
                        {"id": "54f4be3fe7d5224f91000001"}
                    ]
                }
            }
        }
    }'

                                                
                                            
                                                
curl https://api.elastic.io/v2/flows/{FLOW_ID}/start \
   -X POST \
   -u {EMAIL}:{APIKEY} \
   -H 'Accept: application/json' \
   -H 'Content-Type: application/json'