Skip to content

ETPA Public API (1.0)

For access to the ETPA platform, please send an e-mail to support@etpa.nl

Download OpenAPI description
Languages
Servers
https://acc-trading.etpa.nl/

Congestion Management

This API provides congestion data to support grid management and decision-making. It is used exclusively by GOPACS to access spread bucket information related to electricity grid congestion

NOTE: This endpoint can be only used by GOPACS.

Operations

Congestion State Check

This API allows GOPACS to check the current status of congestion spread buckets. It helps determine whether congestion data is available or up to date.

NOTE: This endpoint can be only used by GOPACS.

Operations

GOPACS Orderbook Locking

NOTE: This API can only be used by GOPACS.

Operations

GOPACS Orders v2

This endpoints will allow you to create, update, delete orders for GOPACS only. Everything created here can be retrieved by the GOPACS platform and can be used for solving congestion problems.

Operations

GOPACS Orders – Grid Operator v2

NOTE: This API can only be used by GOPACS

Operations

On Hold Orders

The on hold orders API provides you the possibility to hold orders before they are going to be traded. You can hold your orders and once the orders are on hold they are not going to be traded with the orderbook.

Operations

Order Status

The Order status API will give the current status or the history of the status of the order. The Order status API can only be accessed by users who have trading rights. It will give you orders from GOPACS orderbook, local intraday and local intraday.

Operations

Orders v2

The following things are changed from version 1:

  • You will get an error code and an error message when the order is incorrect.
  • You will get an orderId back from the post request to check the status of your order. "Intraday" orders will be rejected from this endpoints when "XBID" functionality is enabled. "Expost" orders will still work. You can create "Intraday" orders for "XBID" using the XBID Orders endpoints
Operations

Trades v2

NOTE: The trade API can only be used by users who have trading rights

Operations

Get Recent Trades of Participant

Request

The recent trades will only return your trades back from the last 2 days. The participantId is only useful for brokers.

The pagination works slightly different than the other endpoints. It will return the first 1000 results and after that you can add the pageNumber as a parameter to get the remaining results.

Security
api-key
Query
participantIdstring
pageNumberinteger(int32)[ 0 .. 1000 ]
Default 0
curl -i -X GET \
  'https://acc-trading.etpa.nl/public-api/2.0/electricity/trades/recent?participantId=string&pageNumber=0' \
  -H 'api_key: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
idstringrequired
productTypestringrequired
Enum"ELECTRICITY""GAS"
timeblockstring
Enum"BASELOAD""PEAK""OFFPEAK""INTRADAY""EXPOST""GOPACS"
buyerIdstringrequired
sellerIdstringrequired
orderIdBuystringrequired
orderIdSellstringrequired
quantitynumberrequired
startstring(date-time)required
endstring(date-time)required
pricenumberrequired
durationnumberrequired
executedstring(date-time)required
typestringrequired
buyerEanstring
sellerEanstring
buyOrderMetadataobject
sellOrderMetadataobject
mwhTradednumberrequired
tradedForIdconsbooleanrequired
traderUsernameBuystringrequired
traderUsernameSellstringrequired
revertedbooleanrequired
Response
application/json
{ "id": "string", "productType": "ELECTRICITY", "timeblock": "BASELOAD", "buyerId": "string", "sellerId": "string", "orderIdBuy": "string", "orderIdSell": "string", "quantity": 0, "start": "2019-08-24T14:15:22Z", "end": "2019-08-24T14:15:22Z", "price": 0, "duration": 0, "executed": "2019-08-24T14:15:22Z", "type": "string", "buyerEan": "string", "sellerEan": "string", "buyOrderMetadata": { "property1": "string", "property2": "string" }, "sellOrderMetadata": { "property1": "string", "property2": "string" }, "mwhTraded": 0, "tradedForIdcons": true, "traderUsernameBuy": "string", "traderUsernameSell": "string", "reverted": true }

Get TradesDeprecated

Request

NOTE: This endpoint is not supported anymore. Please have a look at Trades v3

Get trades filtered on own orders or not with the my-parameter and date based on start and end.

In the Trade endpoint, we have introduced pagination. The reason is that when you apply no filters your request won’t be time-out and you won’t be overloaded with data. When you don’t provide any parameters, the application will return with the last 100 trades and give you the option to get the next 100 trades. To do this you use the cursor parameter with nextCursor value that has been given to you from the response.

It makes use of pagination V1.0

Security
api-key
Query
cursorstring

Next cursor provided by the response of a previous request.

countinteger(int32)[ 1 .. 100 ]

Number of trades to return. A number between 1 and 100.

Default 100
my_own_tradesboolean

Return only your own trades or only trades that are not yours. A trade is considered your own trade if you were the buyer or the seller.

participantIdstring

Filter on participantId. This is only useful for brokers.

orderIdstring

Filter on orderId.

tradeIdstring

Filter on tradeId.

startinteger(int64)>= 0

Return trades created after the given timestamp. Value must be a Unix timestamp in milliseconds.

endinteger(int64)>= 0

Return trades created before the given timestamp. Value must be a Unix timestamp in milliseconds.

fieldstring

The field to filter on start and/or end if specified

Default "EXECUTED"
Enum"START""END""EXECUTED"
timeblocksstring

Filter on timeblocks.

Enum"INTRADAY""EXPOST""GOPACS"
curl -i -X GET \
  'https://acc-trading.etpa.nl/public-api/2.0/electricity/trades?cursor=string&count=100&my_own_trades=true&participantId=string&orderId=string&tradeId=string&start=0&end=0&field=START&timeblocks=INTRADAY' \
  -H 'api_key: YOUR_API_KEY_HERE'

Responses

Requested trades

Bodyapplication/json
dataArray of objects(TradeApiResponseV2)required
data[].​idstringrequired
data[].​productTypestring
Enum"ELECTRICITY""GAS"
data[].​timeblockstring
Enum"BASELOAD""PEAK""OFFPEAK""INTRADAY""EXPOST""GOPACS"
data[].​buyerIdstring
data[].​sellerIdstring
data[].​orderIdBuystring
data[].​orderIdSellstring
data[].​quantitynumber
data[].​startinteger(int64)
Example: 1694422800000
data[].​endinteger(int64)
Example: 1694422800000
data[].​pricenumber
data[].​durationnumber
data[].​executedinteger(int64)
Example: 1694422800000
data[].​typestring
data[].​buyerEanstring
data[].​sellerEanstring
data[].​buyOrderMetadataobject
data[].​sellOrderMetadataobject
data[].​tradeIdstring
data[].​mwhTradednumber
data[].​tradedForIdconsboolean
data[].​traderUsernameBuystring
data[].​traderUsernameSellstring
data[].​revertedboolean
nextCursorstring
Response
application/json
{ "data": [ {} ], "nextCursor": "string" }

Get TradeDeprecated

Request

NOTE: This endpoint is not supported anymore. Please have a look at Trades v3

Get trade by tradeId.

Security
api-key
Path
tradeIdstringrequired
curl -i -X GET \
  'https://acc-trading.etpa.nl/public-api/2.0/electricity/trades/{tradeId}' \
  -H 'api_key: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
idstringrequired
tradeIdstringrequired
productTypestringrequired
Enum"ELECTRICITY""GAS"
timeblockstringrequired
Enum"BASELOAD""PEAK""OFFPEAK""INTRADAY""EXPOST""GOPACS"
buyerIdstringrequired
sellerIdstringrequired
orderIdBuystringrequired
orderIdSellstringrequired
buyerEanstring
sellerEanstring
buyTraderNamestring
sellTraderNamestring
buyOrderMetadataobject
sellOrderMetadataobject
quantitynumber
startinteger(int64)required
Example: 1694422800000
endinteger(int64)required
Example: 1694422800000
executedinteger(int64)required
Example: 1694422800000
durationnumber
mwhTradednumber
pricenumberrequired
typestring
tradedForIdconsboolean
revertedboolean
revertedAtinteger(int64)
Example: 1694422800000
Response
application/json
{ "id": "string", "tradeId": "string", "productType": "ELECTRICITY", "timeblock": "BASELOAD", "buyerId": "string", "sellerId": "string", "orderIdBuy": "string", "orderIdSell": "string", "buyerEan": "string", "sellerEan": "string", "buyTraderName": "string", "sellTraderName": "string", "buyOrderMetadata": { "property1": "string", "property2": "string" }, "sellOrderMetadata": { "property1": "string", "property2": "string" }, "quantity": 0, "start": 1694422800000, "end": 1694422800000, "executed": 1694422800000, "duration": 0, "mwhTraded": 0, "price": 0, "type": "string", "tradedForIdcons": true, "reverted": true, "revertedAt": 1694422800000 }

Trades v3

This API provides endpoints to retrieve trade information. It supports fetching all trades with pagination and sorting by latest first, as well as retrieving a specific trade by its tradeId. All endpoints are secured with an API key.

Operations

Platform Status

The platform Status API will give you information about the status of the ETPA Platform

Operations

User Management

The user API which will give you all the information about an individual and all the information about the participants. The User API can be accessed by Trade, Report and Wallet users.

Operations

Reporting v2

The reporting API is used for reporting purposes. It can be used by users who have trade, wallet or reporting access.

Operations

Reporting v3

This enable pv-parties to get the trade information of their connected pv-party clients, no order information is given to the pv-party. The connection of participants to a PV party is done by the ETPA admin in our system.

Operations

Wallet v2

The Wallet V2 provides wallet data about a participant and it will give you the transactions. The Wallet can be used by participant who has reporting, trade or wallet access.

Operations

Wallet v3

The XBID Wallet Balance Controller provides an endpoint to retrieve the balances of a trader’s wallet and XBID wallet for a given participantId. Access requires an API key, and the response returns the current wallet balances.

Operations

XBID Contracts v1

The XBID Contracts v1 provides an endpoint to retrieve all active XBID contracts. While the contractId cannot be used to create orders, the endpoint offers information about when contracts will be available for trading and requires an API key for access.

Operations

XBID Orders v1

The XBID Orders v1 will be used for managing orders for XBID. This API will also function in case of a disconnection of XBID.

Be aware: In case the XBID connection gets lost. The new orders which are created with the XBID order API will be automatically forwarded to the local intraday orderbook. You can use the XBID Status API for the current connection of XBID.

Operations

XBID Order Status v1

The XBID Order Status Controller provides endpoints to retrieve both the history and current status of XBID orders and baskets. It supports filtering by orderId or basketId and requires an API key for authentication. Responses include detailed order status entries or lists, with proper handling of cases where no matching records are found.

Operations

XBID Reporting v1

The XBID Order API is used for creating orders for XBID. It also remains functional in the event of a disconnection from XBID.

⚠️ Important: If the XBID connection is lost, any new orders created via the XBID Order API will be automatically forwarded to the local intraday orderbook. For monitoring the current connection status of XBID, you can use the XBID Status v1 API.

Operations

XBID Status v1

The XBID Status API provides the current status of the XBID connection.

  • Returns whether XBID is connected (true) or disconnected (false) in boolean format.
Operations

XBID Trades v1

This request will give you all your XBID trades from the last 48 hours.

Operations

XBID Trade Reports v1

The XBID Trades API allows you to retrieve all trades in XBID.

  • You can apply various filters to narrow down the results.
Operations

XBID Wallet v1

With XBID, wallets are separated. Before trading on XBID, you must transfer funds from your Trader Wallet to your XBID Wallet.

  • Transfers can be performed via the UI or the API.
  • This API provides:
    • Information about all transactions that have occurred.
    • The ability to transfer funds between the Trader Wallet and the XBID Wallet.
Operations

XBID Public Trade API v2

Operations

XBID Public Trade API v1

Operations