---
title: "Flow-based Constraints"
method: GET
path: "/api/v2/Auction/FlowBasedConstraints/ByDomain"
tags: ["Auction"]
---

# Flow-based Constraints

`GET /api/v2/Auction/FlowBasedConstraints/ByDomain`

Returns a list of flow-based constraints per market, date and one domain
            
Flow-based capacity constraints represent limits on critical network elements in the power grid. Flow-based constraints are used in combination with ATC capacities to calculate flows inside of flow-based regions.
            
Flow-based capacity constraints are given per delivery period. Each period contains multiple constraints, and each constraint consists of:
- **RAM (Remaining Available Margin)** - the available margin for the critical network element, which serves as an upper bound on the total consumption of this element by different bidding areas.
 - A list of **PTDFs (Power Transfer Distribution Factors**) for each Bidding Zone in the corresponding Flow-Based region. A PTDF indicates how much a bidding zone's Net-Position contributes to the load of the critical network element (limited by RAM).
            
To see if a constraint is binding (or how close it is to being reached), multiply the Net-Position (NP) for each Bidding Zone by its respective PTDF. Then, sum the results of each multiplication. This must result in a value that is lower or equal to the RAM.
            
When the sum equals the RAM, the corresponding constraint (CNEC) is binding. This can be exemplified by the following formula:
            
`PTDF1 * NP1 + PTDF2 * NP2 + ... + PTDFn * NPn ≤ RAM`
            
Euphemia ensures that these constraints will always be respected.
            
The Net-Position of a Bidding Zone is defined as Total Export - Total Import for a Bidding Zone. In our data model, this is easiest gotten from the Flow model, and refers to -(totalNetPosition) for each delivery period and area.
            
### Response field descriptions
**periods**: a list of delivery periods. Each period has
- **deliveryStart**: the start time of the delivery period
- **deliveryEnd**: the end time of the delivery period
- **constraints**: a list of constraints.
            
Each constraint consist of:
- **id**: an identifier for the unit. Note that this id is only to identify the constraint within this market coupling session
- **name**: an optional name for the unit, not always present
- **remainingAvailableMargin**: the RAM value, described above
- **powerTransferDistributionFactors**: a list of Power Transfer Distribution factors for each area, described above

## Query parameters

- `market` 'DayAhead', required
- `flowBasedDomain` 'Core' | 'Nordic' | 'DK1', required
- `date` string, date, required

## Response `200`

OK

- ApiFlowBasedConstraint[]
  - `deliveryDateCET` string, date
  - `updatedAt` string, date-time
  - `market` 'DayAhead' | 'GbHalfHour_DayAhead' | 'N2EX_DayAhead' | 'SemGb_IntradayAuction1' | 'SemGb_IntradayAuction2' | 'SIDC_IntradayAuction1' | 'SIDC_IntradayAuction2' | 'SIDC_IntradayAuction3'
  - `status` 'Missing' | 'Available'
  - `flowBasedDomain` 'Core' | 'Nordic' | 'DK1'
  - `remainingAvailableMarginUnit` string, nullable
  - `periods` FlowBasedPeriodItem[], nullable
    - `deliveryStart` string, date-time
    - `deliveryEnd` string, date-time
    - `constraints` FlowBasedConstraintItem[], nullable
      - `id` string, nullable
      - `name` string, nullable
      - `remainingAvailableMargin` number, double
      - `powerTransferDistributionFactors` PowerTransferDistributionItem[], nullable
        - `area` string, nullable
        - `powerTransferDistributionFactor` number, double

## Other responses

- `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/versions/6a21504d677e/schema)
