Gegevens ophalen
Op deze pagina krijg je technisch inzicht m.b.t. het ophalen van gegevens.
Ophalen access_token
Zodra de callback binnen is met de code, kan deze code worden ingewisseld voor een access_token. Dit gaat door middel van de authorization_code grant in combinatie met jwt-bearer client assertion. Maak hiervoor een client_assertion oftewel een jwt die wordt gesigned met het private deel van de RSA keypair.
{
"typ": "JWT",
"alg": "RS256",
"kid": "keyid opgegeven bij de public key"
}
.
{
"jti": "uuid"
"iss": "client-id-van-de-dienst",
"sub": "client-id-van-de-dienst",
"aud": "https://www.acc.mijnenergiedata.nl/autorisatieregister",
"exp": 1516239023,
"iat": 1516239022ß
}
.
signature
Dit is een voorbeeld aanvraag:
curl --request POST \ --url https://www.acc.mijnenergiedata.nl/autorisatieregister/oauth2/token \ --header 'content-type: application/x-www-form-urlencoded' \ --data grant_type=authorization_code \ --data code=received-code \ --data redirect_uri=http://hostvandienst/callback \ --data code_verifier=generated \ --data client_id=afnemende-dienst-client-id \ --data client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer \ --data client_assertion=signed-assertion
Endpoint uit het access_token halen
Het access_token heeft de volgende structuur:
{
"sub": "ae783dab-a56f-403b-8521-9fc707296288",
"aud": "slynergie-consumption-data-eenmalig",
"nbf": 1755854253,
"scope": [
"consumption_data"
],
"service_id": "slynergie-consumption-data-eenmalig",
"iss": "https://www.acc.mijnenergiedata.nl/autorisatieregister",
"resources": [
{
"scope": "consumption_data",
"endpoints": {
"single_sync": "https://api.acc.mijnenergiedata.nl/dataregisters/v1/single/consumption_data"
}
}
],
"exp": 1755855153,
"iat": 1755854253,
"jti": "eb489558-e6af-4db7-814c-3189f46ea7bb",
"consent_id": "47652988-f592-4cac-a407-73f6bc992bdd",
"eans": [
"870751900000531268",
"870751900000531275"
]
}
Uit het access_token moet deze $.resources.[0].endpoints.single_sync attribuut gehaald worden om te worden gebruikt als endpoint.
Eenmalig ophalen van de gegevens
Naar het endpoint dat hierboven gevonden is, moet de aanroep gedaan worden om de gegevens op te halen. Gebruik hetzelfde access_token als Bearer token in de Authorization header.
Authorization: Bearer eyJhbGciO..