Energistics® Transfer Protocol (ETP) 1.1/1.2

The ETP protocol takes drilling data exchange to the next level by enabling real-time bi-directional communication between different actors through WebSocket technology.

ETP enables high-frequency data streaming to meet market needs. The protocol always supports CRUD (create, read, update, delete) operations on the server store.

Our solutions are compatible with:

✓ ETP 1.1 / WITSML™ 1.4.1.1
✓ ETP 1.2 / WITSML™ 2.1
Energistics® Transfer Protocol (ETP)

ETP Advantages

Real-time - High-frequency streaming

High frequency

Lightweight - Avro binary data + compression

Very lightweight

Maximum security - Encryption and authentication

Built-in security

Scalability - Support for massive connections

High scalability

Industry standard - Complete Energistics® compliance

ETP 1.2 / WITSML™ 2.1

What is ETP?

The Energistics® Transfer Protocol (ETP) is a modern, real-time communication protocol designed to enable efficient data exchange between applications in the upstream oil and gas industry.

ETP was introduced to overcome the limitations of traditional WITS level 0 and WITSML™ over SOAP data transfers, providing a lighter, faster and easier-to-integrate alternative to legacy TCP/IP-based mechanisms. It is specifically built to support the real-time requirements of drilling and subsurface operations.

Designed around the Energistics® Common Data Architecture, ETP enables seamless data exchange across the Energistics® standards ecosystem, including WITSML™, PRODML and RESQML. Its primary use cases include streaming real-time data from wellsite systems to ETP servers, replicating data between WITSML™ stores, and delivering real-time data to client and analytical applications.

ETP is optimized for real-time data access, while its architecture allows for future extensions, including support for historical data queries and broader data streaming scenarios. By relying on a publish-and-discover mechanism, ETP eliminates the need for continuous polling, allowing applications to receive data as soon as it becomes available, improving responsiveness and reducing system overhead. ETP supports very high-frequency data streaming, making it a future-proof solution.

What is ETP

Overcome Legacy Limitations

ETP replaces slower WITSML™ over SOAP with a modern, WebSocket-based protocol designed for real-time drilling operations and subsurface data exchange.

Energistics® Standards Alignment

Full compliance with WITSML™, PRODML, and RESQML through the Energistics® Common Data Architecture, ensuring interoperability across the entire standards ecosystem.

Publish-and-Discover Architecture

Eliminates continuous polling with event-driven subscriptions, enabling applications to receive data instantly while reducing network overhead and latency.

WITSML™ ETP Server

Our ETP server provides a solution for centralizing and storing your WITSML™ data from multiple sources.

Communication is done through the ETP protocol defined by Energistics®. Any data source that can communicate in ETP can connect as a client to send or receive data in real-time through streaming protocols.

Data received by the server is immediately sent to clients subscribed to the relevant "channels" guaranteeing minimal latency. The delay between data transmission and reception by all connected clients is minimized.

The amount of data exchanged is optimized through Avro binary serialization and compression.

Supported ETP Sub-Protocols

ETP 1.1ETP 1.2
0. Core, 1. ChannelStreaming, 3. Discovery, 4. Store0. Core, 1. ChannelStreaming, 3. Discovery, 4. Store, 6. GrowingObject, 21. ChannelSubscribe, 22. ChannelDataLoad
ETP Server Data Flow
ETP Server Protocol and Certifications

ETP Relay

If you want to work immediately in ETP without migrating your old SOAP servers already in operation, ETP Relay is the ideal solution.

Implementation is very fast since ETP Relay acts as a normal ETP server. You only need to specify your SOAP server URL and connection credentials, the rest is transparent.

Any ETP-compatible device can connect and access the target SOAP server store in read mode. All responses will be translated to ETP.

Our server queries the target server at regular intervals to simulate the streaming mode of the ETP protocol. Since WITSML™ SOAP servers only support the WITSML™ 1.4.1.1 format, all data objects will be automatically converted to WITSML™ 2.1 format.

Supported ETP Sub-Protocols (read-only)

ETP 1.1ETP 1.2
0. Core, 1. ChannelStreaming, 3. Discovery, 4. Store0. Core, 3. Discovery, 4. Store, 6. GrowingObject, 21. ChannelSubscribe, 22. ChannelDataLoad

Supported WITSML™ Data Objects

WITSML™ 1.4.1.1WITSML™ 2.1 (conversion)
attachment, bhaRun, cementJob, convCore, coordinateReferenceSystem, downholeComponent, drillReport, fluidsReport, formationMarker, log, mudLog, objectGroup, opsReport, rig, risk, sidewallCore, stimJob, surveyProgram, target, trajectory, tubular, wbGeometry, well, wellboreChannel (mapping logCurveInfo), ChannelSet (creation), Log, Trajectory, Well, Wellbore
ETP relay Data Flow
ETP Relay and WITSML Conversion Services

WITSML™ Gateway

Intermediary between the frontend application and target servers that acts as a proxy.

The Gateway not only logs all exchanges between clients and servers but also avoids CORS (Cross-origin resource sharing) issues when code is executed in a browser.

This solution is notably deployed with the Well Data Hub to ensure access to all remote servers, regardless of their CORS policy.

Witsml Gateway can relay simple HTTP requests to communicate with WITSML™ SOAP servers but also establish a WebSocket connection with ETP servers.

WITSML™ Gateway Data Flow
WITSML Gateway HTTP and WebSocket Bridge