curl --request GET \
--url https://{host}/v1/process/market-partners/{key}/partin \
--header 'X-API-Key: <api-key>'import requests
url = "https://{host}/v1/process/market-partners/{key}/partin"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://{host}/v1/process/market-partners/{key}/partin', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{host}/v1/process/market-partners/{key}/partin",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://{host}/v1/process/market-partners/{key}/partin"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://{host}/v1/process/market-partners/{key}/partin")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{host}/v1/process/market-partners/{key}/partin")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"lookback_days": 90,
"mp_id": "9900146000008",
"name": "Stadtwerke Dreieich GmbH",
"queried": {
"key": "9900146000008",
"resolved_by": "mp_id"
},
"received": [
{
"company": {
"hausnummer": "24",
"land": "DE",
"mp_id": "",
"name": "Stadtwerke Dreieich GmbH",
"ort": "Dreieich",
"plz": "63303",
"strasse": "Eisenbahnstraße"
},
"contacts": [
{
"emails": [
"mako@stadtwerke-dreieich.de"
],
"faxe": [],
"name": "Marktkommunikation",
"rolle": "Z21",
"telefone": [
"+4961031234"
]
}
],
"created_at": "202608251518+00",
"date": "2026-08-25T15:20:11+02:00",
"document_number": "d1f853bc1eb09c3d",
"pruefidentifikator": "37001",
"receiver_mp_id": "9985803000004",
"reference": "4A0669ECFCE8F1",
"sender_mp_id": "9900146000008",
"vat_id": "DE123456789",
"version": "1",
"website": "www.stadtwerke-dreieich.de"
}
],
"sent": [
{
"date": "2026-08-25T15:15:07+02:00",
"reference": "460669ECFCE8F8"
}
],
"window": {
"begin": "2026-05-30T15:00:00",
"end": "2026-08-28T15:00:00"
}
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}PARTIN data for one market party
The PARTIN exchange with one market party, parsed for humans: what the partner declared about themselves, and what we sent them.
received holds every PARTIN the partner sent us in the window,
newest first, each parsed into its business content: the application
case (pruefidentifikator - 37001 announces their master data,
37003 answers ours), the company block with address, VAT id and
website, and every contact block with the names, e-mail addresses
and phone numbers the partner published - the same addresses the
correction-mail loop writes to. Fields the partner did not fill are
empty strings, never guessed.
sent lists our own PARTINs to that partner (send date and
interchange reference); their content is our configured datasheet.
Address the partner by MP-ID or by any of its MGA EICs, exactly as in
the brp-status endpoint. A read-only report key is sufficient.
curl --request GET \
--url https://{host}/v1/process/market-partners/{key}/partin \
--header 'X-API-Key: <api-key>'import requests
url = "https://{host}/v1/process/market-partners/{key}/partin"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://{host}/v1/process/market-partners/{key}/partin', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{host}/v1/process/market-partners/{key}/partin",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://{host}/v1/process/market-partners/{key}/partin"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://{host}/v1/process/market-partners/{key}/partin")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{host}/v1/process/market-partners/{key}/partin")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"lookback_days": 90,
"mp_id": "9900146000008",
"name": "Stadtwerke Dreieich GmbH",
"queried": {
"key": "9900146000008",
"resolved_by": "mp_id"
},
"received": [
{
"company": {
"hausnummer": "24",
"land": "DE",
"mp_id": "",
"name": "Stadtwerke Dreieich GmbH",
"ort": "Dreieich",
"plz": "63303",
"strasse": "Eisenbahnstraße"
},
"contacts": [
{
"emails": [
"mako@stadtwerke-dreieich.de"
],
"faxe": [],
"name": "Marktkommunikation",
"rolle": "Z21",
"telefone": [
"+4961031234"
]
}
],
"created_at": "202608251518+00",
"date": "2026-08-25T15:20:11+02:00",
"document_number": "d1f853bc1eb09c3d",
"pruefidentifikator": "37001",
"receiver_mp_id": "9985803000004",
"reference": "4A0669ECFCE8F1",
"sender_mp_id": "9900146000008",
"vat_id": "DE123456789",
"version": "1",
"website": "www.stadtwerke-dreieich.de"
}
],
"sent": [
{
"date": "2026-08-25T15:15:07+02:00",
"reference": "460669ECFCE8F8"
}
],
"window": {
"begin": "2026-05-30T15:00:00",
"end": "2026-08-28T15:00:00"
}
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Path Parameters
The partner's MP-ID (BDEW code or GLN), or the EIC Y code of any of its Bilanzierungsgebiete (MGA)
Query Parameters
How far back the MakoFlow inbox and outbox are scanned
1 <= x <= 730Response
Successful Response
The PARTIN exchange with one market party.
Show child attributes
Show child attributes
The partner's MP-ID
Partner name from the BDEW registry/roles
The partner's PARTINs to us, newest first
Show child attributes
Show child attributes
Our PARTINs to the partner, newest first
Show child attributes
Show child attributes
Evaluated MakoFlow window size
Show child attributes
Show child attributes