VNG-Realisatie / Haal-Centraal-BRK-bevragen

Project repository tbv de ontwikkeling van de Haal Centraal BRK Bevragen API
https://vng-realisatie.github.io/Haal-Centraal-BRK-bevragen/
Other
19 stars 15 forks source link

Technische uitwerking scenario opvragen zakelijkGerechtigden van een persoon #962

Open kad-hebbim opened 1 year ago

kad-hebbim commented 1 year ago

Hieronder wordt het scenario beschreven om de zakelijkgerechtigden op te vragen van een persoon. Daarbij wordt eerst gekeken hoe de huidige flow is vormgegeven (WAS) en daarna hoe de nieuwe flow er uit komt te zien (WORDT). Reden voor een aanpassing in deze flow is het feit dat bepaalde aanvragen nu in een timeout treden en dus niet op te vragen zijn. De nieuwe flow moet dit verhelpen.

In onderstaande flow wordt alleen 1 flow uitgewerkt, maar deze oplossing geldt dus ook voor de volgende endpoints:

WAS:

1. Opvragen persoon:

Levert de persoonsgegevens, een lijst met KadastraalOnroerendeZaken en een lijst met ZakelijkGerechtigden op.

GET /kadasternietnatuurlijkpersonen/71291440

{
  "identificatie": "71291440",
  "domein": "NL.IMKAD.Persoon",
  "omschrijving": "Bankbedrijf",
  "kadastraalOnroerendeZaakIdentificaties": [
    "76870482570000",
    "76870488070000"
  ],
  "_links": {
    "self": {
      "href": "/kadasternietnatuurlijkpersonen/71291440"
    },
    "kadastraalOnroerendeZaken": [
      {
        "href": "/kadastraalonroerendezaken/{kadastraalOnroerendeZaakIdentificaties}",
        "templated": true
      }
    ],
        "zakelijkGerechtigden": [
        {
            "href": "/kadastraalonroerendezaken/76870482570000/zakelijkgerechtigden/20170719"
        },
        {
            "href": "/kadastraalonroerendezaken/76870488070000/zakelijkgerechtigden/30493369"
        }
    ]
    }
}

2. Opvragen zakelijkGerechtigde (loop):

Levert de zakelijkGerechtigde op.

WORDT:

1. Opvragen persoon:

Levert de persoonsgegevens & een lijst met KadastraalOnroerendeZaken op.

GET /kadasternietnatuurlijkpersonen/71291440

{
    "identificatie": "71291440",
    "domein": "NL.IMKAD.Persoon",
    "omschrijving": "Bedrijf x",
    "kadastraalOnroerendeZaakIdentificaties": [
        "76870482570000",
        "76870488070000"
    ],
    "_links": {
        "self": {
            "href": "/kadasternietnatuurlijkpersonen/71291440"
        },
        "kadastraalOnroerendeZaken": [
            {
                "href": "/kadastraalonroerendezaken/{kadastraalOnroerendeZaakIdentificaties}",
                "templated": true
            }
        ]
    }
}

2. Opvragen zakelijkGerechtigden (loop):

Levert alle zakelijkGerechtigden van een kadastraalOnroerendeZaak op. Hier kan ook gekozen worden om nog een type parameter mee te geven als de gebruiker alleen op zoek is naar zakelijkGerechtigden van een bepaald type (wat voorheen in de WAS situatie kon met de parameter zakelijkgerechtigde___type.

3. Filter de zakelijkGerechtigden.

"zakelijkGerechtigden": [
{ "identificatie": "20170719" },
{ "identificatie": "30493369" },
]

Kanttekening

Dit is een breaking change; immers we leveren geen zakelijkGerechtigden meer bij bovenstaande endpoints.

melsk-r commented 1 year ago

Grotendeels is het mij duidelijk. Ik heb wel een opmerking en een vraag.

  1. Misschien een beetje muggenziften maar uit de WORDT situatie leidt ik af dat het eerste JSON fragment in de WAS situatie eigenlijk als onderstaand zou moeten zijn:
{
  "identificatie": "71291440",
  "domein": "NL.IMKAD.Persoon",
  "omschrijving": "Bankbedrijf",
  "kadastraalOnroerendeZaakIdentificaties": [
    "76870482570000",
    "76870488070000"
  ],
  "_links": {
    "self": {
      "href": "/kadasternietnatuurlijkpersonen/71291440"
    },
    "kadastraalOnroerendeZaken": [
      {
        "href": "/kadastraalonroerendezaken/{kadastraalOnroerendeZaakIdentificaties}",
        "templated": true
      }
    ],
        "zakelijkGerechtigden": [
        {
            "href": "/kadastraalonroerendezaken/76870482570000/zakelijkgerechtigden/20170719"
        },
        {
            "href": "/kadastraalonroerendezaken/76870482570000/zakelijkgerechtigden/20170717"
        },
        {
            "href": "/kadastraalonroerendezaken/76870488070000/zakelijkgerechtigden/30493369"
        }
    ]
    }
}
  1. Wat is de functie van step 3 in de WORDT situatie? Ik bedoel, hoe/waar/wanneer gebruik je dit filter?

3. Filter de zakelijkGerechtigden.

"zakelijkGerechtigden": [
{ "identificatie": "20170719" },
{ "identificatie": "30493369" },
]
kad-hebbim commented 1 year ago

Ziehier de antwoorden:

  1. De response levert hier alleen de zakelijkgerechtigdeIdentificaties van deze persoon (71291440). ZakelijkgerechtigdeIdentificatie 20170717is gekoppeld aan een ander persoon en wordt dus niet teruggegeven.
  2. Aangezien je nu de zakelijkgerechtigden gaat opvragen van een kadastraalonroerendezaak, krijg je dus alle zakelijkgerechtigden terug die gekoppeld zijn aan deze zaak. Daarom moet er nog een filtering plaatsvinden om alleen de zakelijkgerechtigden te pakken die betrekking hebben op de persoon (71291440) die je initieel bevraagt.
kad-hebbim commented 1 year ago

PR