---
title: "Intraday Trades By Contract"
method: GET
path: "/api/v2/Intraday/Trades/ByContractId"
tags: ["Intraday"]
---

# Intraday Trades By Contract

`GET /api/v2/Intraday/Trades/ByContractId`

Returns an intraday contract with trades for a delivery start time and contract id, where trades have at least one leg matching at least one of the provided areas. 

All trades have at least one leg belongs to Nord Pool. However, trades where both legs belong to other PXs are excluded from the response. 

Data is available with a delay of approximately 20 minutes.
 
### Response field descriptions

- **contractId**: identifier of the contract
- **contractName**: a descriptive name for the contract (e.g., QH-20250331-09).
- **deliveryStart**: the timestamp when the contract delivery starts
- **deliveryEnd**: the timestamp when the contract delivery ends
- **trades**: a list of trades associated with the contract 

  Each trade includes:
  - **tradeId**: identifier of the trade
  - **tradeTime**: the timestamp of trade creation
  - **tradeUpdatedAt**: the trade creation time (revisionNumber=1) or time of a trade modification (revisionNumber>1)
  - **tradeState**:
    - **Completed** - the trade is completed
    - **Cancelled** - the trade is cancelled
    - **Disputed** - the trade is pending decision for cancellation
  - **revisionNumber**: revision number for trade modification request. Should be incremented with a subsequent trade modification request.
  - **price**: price in EUR/MWh or GBP/MWh
  - **volume**: quantity in MW
  - **tradePhase**: there's two matching modes:
    - **Continuous** - the normal top of order book matching
    - **Auction** - the matching mode, where basically the buy and sell orders are matched in a similar manner as auction orders.
      This only happens when capacity is added in between areas - basically, in that case, the order books can be
      overlapping with buys in one area being much higher than sells in another area.
      In order for the price to be fair for both the sellers and buyers, this auction matching mode is used.
    - **None** - for old trades without this information
  - **crossPx**:
    - **false**: both legs belong to the Nord Pool market  
    - **true**: one of the legs belongs to Other Power Exchanges (OPX). Then the trade contains "referenceOrderId" only for the side which is presented in Nord Pool, the other side doesn't have reference order id ("referenceOrderId": null).
  - **legs**: a list of trade legs 

    Each leg contains: 

    - **deliveryArea**: delivery area that this order belongs to 

    - **referenceOrderId**: identifier of the order involved in the trade.
      In transactions where one party is external to Nord Pool, the referenceOrderId will be null for the leg that belongs to OPX.
    - **tradeSide**: Buy or Sell
            
[Sample response with valid data for areas NO1,AMP, delivery start 2025-05-05T01:00:00Z and contract id NX_519789](https://proddataservicespublic.blob.core.windows.net/public-api-response-samples/Intraday/get_api_v2_Intraday_Trades_ByContractId.json)

## Query parameters

- `areas` string, required
- `deliveryStart` string, date-time, required
- `contractId` string, required

## Response `200`

OK

- TopLevelPublicIntradayTradeContract
  - `contractId` string, nullable
  - `contractName` string, nullable
  - `priceUnit` string, nullable
  - `deliveryStart` string, date-time
  - `deliveryEnd` string, date-time
  - `trades` PublicIntradayTrade[], nullable
    - `tradeId` string, nullable
    - `tradeTime` string, date-time
    - `tradeUpdatedAt` string, date-time
    - `tradeState` 'None' | 'Completed' | 'Disputed' | 'NotCancelled' | 'Cancelled'
    - `revisionNumber` integer
    - `price` number, double
    - `volume` number, double
    - `tradePhase` 'Unknown' | 'Continuous' | 'Auction'
    - `crossPx` boolean
    - `legs` PublicIntradayTradeLeg[], nullable
      - `deliveryArea` string, nullable
      - `referenceOrderId` string, nullable
      - `tradeSide` 'None' | 'Buy' | 'Sell'
  - `volumeUnit` string, nullable

## Other responses

- `204` — No Content
- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden

---

[API](https://skmtc.net/nordpoolgroup/apis/auction-member-test.md) · [All operations](https://skmtc.net/nordpoolgroup/apis/auction-member-test/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/nordpoolgroup/auction-member-test/revisions/6a21504d677e/schema)
