De MoneyView API - ALGEMEEN
De MoneyView API biedt de mogelijkheid om allerlei data uit de MoneyView databases beschikbaar te stellen. Dit is een RESTful API die JSON accepteert en ook retourneert.
MoneyView verzoekt u de server niet dermate zwaar te belasten zodanig dat andere gebruikers daar hinder van ondervinden (fair use).
Voor vragen of problemen over deze api kunt u contact opnemen met MoneyView via https://www.moneyview.nl/contact.
Endpoint
De MoneyView API voor het ophalen van documenten is te bereiken via https://apidocs.moneyview.nl. De API is alleen bereikbaar via een versleutelde verbinding (SSL). Andere data requests en berekeningen lopen via https://api.moneyview.nl.
Calls naar de API vanuit een browser (client) worden in verband met security technisch geblokkeerd. Onze webserver ondersteunt geen Cross-Origin Resource Sharing (CORS).
Authenticatie
Elk request moet verzonden worden met de volgende header keys:
user: xxx
pwd: xxx
organisationcode: xxx
Via deze gegevens wordt een licentie geladen. Op basis van deze licentie is bepaald welke productsoorten, kenmerken en producten opgehaald kunnen worden. Ook kan hierin bepaald zijn welke andere functies (features) toegestaan zijn.
Formattering JSON
Een response uit de data request is altijd ongeformatteerd. Bij een rekenrequest kan de header key ‘formatted’ worden meegegeven. Bij ‘yes’ wordt de response geformatteerd geretourneerd. Bij ‘no’ ongeformatteerd. Default is ‘yes’.
HTTP methods
Alle requests kunnen gedaan worden via een GET of een POST in een JSON query.
Status codes
Mogelijke status codes zijn:
-
200 OK: Request geslaagd.
-
400 Bad Request: Syntactische fout in de request.
-
401 Unauthorized: Geen geldige autorisatie. Er moet een geldige Username/Password/OrganisationCode combinatie worden meegegven in de Header van elke request.
-
404 Not Found: De gevraagde bron (pagina) bestaat niet.
-
500 Internal Server Error: Fout op de server. De fout wordt gelogged en zo snel mogelijk opgelost door MoneyView.
Alle requests kunnen gedaan worden via een GET of een POST in een JSON query.
Resource Group ¶
Document Lijst ¶
Documenten bevat polisvoorwaarden, verzekeringskaarten, hypotheekvoorwaarden of leningvoorwaarden van de aanbieder.
Get DocumentenGET/documenten?json={json}
Haal een lijst documenten op op basis van een JSON query. Om documenten op te halen moeten één of meer producten worden meegegeven. Mogelijke opties zijn documentStatus A voor actief, R voor archief of leeg. Andere zoekoptie is: producttypen. Hiervan kunnen de codes worden doorgegeven. Deze opties zijn niet verplicht.
Mogelijke codes voor producttypen zijn:
-
hypotheken alle (H)
-
hypotheken acceptatie (HA)
-
hypotheken diversen (HD)
-
hypotheken regelingen (HR)
-
hypotheekvoorwaarden (HV)
-
leningvoorwaarden (LV)
-
polisvoorwaarden (PV)
-
verzekeringskaarten (VK)
-
rentewijzigingen (RW)
Als geen producttypen worden meegegeven wordt uitgegaan van polisvoorwaarden (PV) en verzekeringskaarten (VK).
LET OP 1: Voor het downloaden van documenten moet in de licentie zijn aangegeven dat dit toegestaan is. Dit gebeurt per producttype en documentStatus.
LET OP 2: In de response wordt het complete document als byte array in base64 geretoureerd. Bij ontvangst moet dus eerst gedecodeerd worden van base 64, vervolgens kan de byte array als document worden geopend.
BIJZONDERHEDEN BIJ RENTEWIJZIGINGEN (producttype = RW)
Hier gelden twee stappen: eerst moet de lijst van rentewijzigingen opgehaald worden, vervolgens kan het wijzigingsdocument opgehaald worden. Bij het downloaden van het document moet een documentId worden meegegeven. Het documentId zit in de resultaten van de lijst van rentewijzigingen.
Bij rentewijzigingen hoeft niet eerste een product gekozen te worden, eventueel wel een aanbieder. Ook kan er een documentVanafDatum worden meegegeven voor het zoeken in de lijst (formaat=YYYYMMDDhhmm, default=vandaag). De documentstatus is niet relevant.
Via het attribuut ‘rentesDieVandaagAflopen’ (=true, of weglaten) kunnen de huidige datum aflopende rentes opgehaald worden.
Via het attribuut ‘respijtData’ (= lijst mogelijke respijtDatums (YYYYMMDD)) kan gezocht worden op respijtdatum.
De licentie bepaalt of alleen de lijst van rentewijzigingen opgehaald mag worden, of ook het wijzigingsdocument.
Example URI
- json
array
(optional) Example: {"documentStatus":"A","producten":[14511,13226],"productTypen":["H"]}Lijsten id’s van producten, documentStatus en codes productTypen.
200
Headers
Content-Type: application/json
Body
[
{
"productId": "Uniek id van het product",
"naam": "Naam van het document",
"code": "Code van het document",
"status": "Status van het document",
"productType": "Producttype",
"datumGewijzigd": "Wijzigingsdatum van het document",
"filename": "Filenaam van het document",
"file": "Document als byte array"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
File transfer ¶
Met behulp van de filetransfer functie kunnen bestanden opgehaald worden.
Bij het ophalen van de lijst of de bestanden kunnen optionele parameters ‘subdirectory1’ en ‘subdirectory2’ meegegeven worden. Dit zijn directories die eerder door MoneyView aangemaakt zijn.
Via het attribuut ‘bestandVanafDatum’ kan een vanaf datum worden meegegeven.
Get FilesGET/filetransfer?json={json}
Haal een lijst files op op basis van een JSON query.
Example URI
- json
array
(optional) Example: {"action":"list"}Action: list
200
Headers
Content-Type: application/json
Body
[
{
"filename": "Naam van de file",
"bytes": "Aantal bytes per file",
"datetime": "Wijzig datum tijd"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
DownloadGET/filetransfer?json={json}
Haal een of meer bestanden op basis van een JSON query.
Example URI
- json
array
(optional) Example: {"action":"get", "filenames":["my_file.zip"]}Action: get
200
Headers
Content-Type: application/json
Body
[
{
"filename": "Naam van de file",
"file": "Byte array"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}
DeleteGET/filetransfer?json={json}
Verwijder een of meer bestanden op basis van een JSON query.
Example URI
- json
array
(optional) Example: {"action":"delete", "filenames":["my_file.zip"]}Action: delete
200
Headers
Content-Type: application/json
Body
[
{
"text": "Hello, world!"
}
]
Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array"
}