Loket: tabelnaam voor GetRunOverviewsByPayrollRunId endpoint

In Invantive lijkt de GetRunOverviewsByPayrollRunId voor Loket.nl niet beschikbaar. Dit is een zeer belangrijke endpoint volgens Loket, omdat het aangeeft op welke maand een verloning betrekking heeft.

Bijvoorbeeld: er is in maart 200 euro verloond, en vervolgens is er in april een correctie van -90 die betrekking heeft op maart. Maar nergens zie je dan dat die -90 betrekking heeft op periode maart.

Heb dit gevraagd bij Loket en zij geven aan dat dit te zien is in GetRunOverviewsByPayrollRunId. Echter kan ik deze endpoint niet terugvinden als een Invantive view, tabel of tabelfunctie.

Is die beschikbaar?

Heb nogmaals contact gehad met Loket en zij geven aan dat deze wel beschikbaar moet zijn.

Kijk ik er overheen in de Query Tool?

Is deze anders genaamd in de Invantive Query Tool?

Is deze informatie uit een andere activiteit te halen?

Of: is deze informatie gewoon niet op te halen via Invantive?

De tabelnaam lijkt op een standaard gegenereerde naam op basis van de Loket metadata. Ik herken hem niet 123, maar hij is terug te zoeken in de metadata die Invantive vasthoudt van de tabellen in SystemTables@DataDictionary. Dat kan bijvoorbeeld met:

select swagger_select_operation
,      name
from   SYSTEMTABLES@DataDictionary
where  lower(swagger_select_operation) like '%get%run%over%'

met als uitkomst de volgende Loket tabellen en hun Swagger (OpenAPI) locatie:

Ik vermoed dat de tabelfunctie RunOverviewsByPayrollRunId bedoeld wordt. Die geeft een BLOB (document waarschijnlijk) terug zoals te zien als op F4 gedrukt wordt terwijl de cursor op de tabelnaam staat:

image

Als er een payroll run ID in gestopt wordt als parameter (het is dus een “tabelfunctie”):

image

De payroll run ID kun je vermoed ik opvragen via de view PayrollAdministrationPayrollRuns:

De combinatie van de documenten met de payroll runs zou de gewenste data leveren:

select pan.prn_payrollPeriod_year
,      pan.prn_payrollPeriod_periodNumber
,      rod.*
from   PayrollAdministrationPayrollRuns pan
join   RunOverviewsByPayrollRunId(pan.prn_id) rod

Echter, die geeft momenteel een foutmelding

itgenlnr005 Insufficient rights for this request, reason: “Client does not have access to activity.”.
The remote server returned an error: (403) Forbidden.

op bijvoorbeeld https://api.loket.nl/v2/providers/employers/payrolladministrations/payrollruns/dcdfacce-4702-4b06-aa44-04d8aef37dd2/runoverviews

De “client” verwijst naar de registratie van de standaard Invantive app voor Loket. Die heeft op dit moment nog geen rechten op deze API. De Loket.nl REST API is namelijk erg fijnkorrelig: er zijn tientallen zogenaamde “scopes” die allemaal apart aangevraagd moeten worden.

We zullen rechten aanvragen via Loket aanvraag #191441. Als die toegekend worden op basis van deze use case dan kan de query gebruikt worden. Het topic zal dan bijgewerkt worden.

Alternatief is om zelf een client app te laten registreren bij Loket en die te gebruiken met de juiste rechten.