HTTP API
De rapport- en dashboardserver stelt een HTTPS-API beschikbaar die u kunt gebruiken om met de server te communiceren vanuit de code van uw toepassing. In dit document wordt beschreven hoe u deze HTTPS-API in een toepassing kunt gebruiken en worden de beschikbare API-eindpunten vermeld.
Authenticatie
Om de HTTP API van de rapport- en dashboardserver te gebruiken, moet u eerst een authenticatietoken ophalen dat u vervolgens aan alle API-verzoeken moet koppelen. Ga als volgt te werk om het token te verkrijgen:
Stuur het volgende GET-verzoek naar de server om een Bearer-token te verkrijgen dat nodig is om toegang te krijgen tot de reportserver API:
curl --location --request GET 'https://app.reportserver.eu/oauth/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=password' \
--data-urlencode 'username=<uw-gebruikersnaam>' \
--data-urlencode 'password=<uw-wachtwoord>'
Bij een succesvol request zal de onderstaande response worden getoond.
{
"access_token": "_Oy0nZMU4f4kyNOZiFxGbd36LAXuThUA2I.........",
"token_type": "bearer",
"expires_in": 1199
}
Om het verkregen token aan een API-verzoek te koppelen, voegt u de volgende HTTP-header toe aan het verzoek:
Authorization : Bearer <access_token>
Voorbeeld
Gebruik de volgende API-verzoeken om een rapport naar PDF te exporteren en het resulterende document te downloaden:
In de document parameters is een groter dan teken opgenomen. Hiermee filteren we de data die gelijk is aan of groter dan.
$ curl https://app.reportserver.eu/api/documents/export/report/16 \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <oauth-token>" \
--data \
'
{
exportOptions:
{
exportFormat:"pdf"
},
documentParameters:
[
{
name:"Freight>",
value:400
}
]
}
'
Zodra de request met succes een resultaat terug geeft ontvang je een exportId
{
"exportId": "3199cd9abee24a868fa68841f905c856"
}
Controleer de status van de exporttaak:
$ curl -X GET "https://app.reportserver.eu/api/documents/export/status/3199cd9abee24a868fa68841f905c856" \
--header "Authorization: Bearer <oauth-token>"
Indien het rapport klaar is voor downloaden dan zal de taskstatus “complete” worden geretourneerd
{
"taskStatus": "Complete"
}
Download het geƫxporteerde document:
$ curl -X GET "https://app.reportserver.eu/api/documents/export/result/3199cd9abee24a868fa68841f905c856" \
--header "Authorization: Bearer <oauth-token>"