Integraation helpottamiseksi useisiin Vardan tietoihin on mahdollista viitata lähdejärjestelmän ja tunnisteen avulla. Tämän mekanismin avulla lähdejärjestelmän ei välttämättä tarvitse pitää kirjaa Vardan sisäisistä ID:stä ja viittaukset voi hoitaa lähdejärjestelmän käyttämillä tunnisteilla.

Jokaisella lähdejärjestelmällä on oma lähdejärjestelmäkoodi, jota tulisi käyttää tietojen siirrossa. Lähdejärjestelmät ovat näkyvissä Vardan julkisella sivulla: https://virkailija.opintopolku.fi/varda/julkinen/koodistot/vardalahdejarjestelma.

Lähdejärjestelmä on tuetuissa tietosisällöissä pakollinen tieto, kun taas tunnisteen voi tallentaa vapaaehtoisesti.

Seuraavat tietosisällöt tukevat lähdejärjestelmää ja tunnistetta:

  • Toimipaikka
    • Toiminnallinen painotus
    • Kielipainotus
  • Lapsi
    • Varhaiskasvatuspäätös
    • Varhaiskasvatussuhde
    • Maksutieto
  • Työntekijä
    • Palvelussuhde
    • Työskentelypaikka
    • Pidempi poissaolo
    • Täydennyskoulutus
  • Vuokrattu henkilöstö

Tunnisteen rajoitukset

Tunnisteeseen kohdistuu seuraavat rajoitukset:

  • Tunnisteen on oltava merkkijono
  • Maksimipituus 120 merkkiä
  • Voi sisältää isoja ja pieniä kirjaimia (a-z), numeroita, pisteitä ., väliviivoja - ja alaviivoja _
  • Ei voi olla henkilötunnus

Tietojen haku

Objekteja voi hakea Vardan rajapinnasta käyttämällä lähdejärjestelmä:tunniste-paria.

Esimerkiksi, lapsi tallennetaan seuraavasti:

{
  "vakatoimija_oid": "1.2.246.562.10.34683023489",
  "henkilo_oid": "1.2.246.562.24.47279942111",
  "lahdejarjestelma": "1",
  "tunniste": "tunniste"
}

Rajapinnan vastauksessa lapsi on saanut ID:n 1.

Luotuun lapseen voi kohdistaa GET-, PUT-, PATCH- ja DELETE-kutsuja joko käyttäen ID:tä tai lähdejärjestelmän ja tunnisteen yhdistelmää:

  • /api/v1/lapset/1/
  • /api/v1/lapset/1:tunniste/

Tietojen tallennus

Tietoja tallennettaessa on mahdollista URL-muotoisen suoran linkin sijaan viitata objektiin käyttäen sen tunnistetta. Tässä tapauksessa viitatun objektin täytyy olla tallennettu käyttäen samaa lähdejärjestelmäkoodia, kuin luotava objekti.

Esimerkiksi lapsi tallennetaan seuraavasti:

{
  "vakatoimija_oid": "1.2.246.562.10.34683023489",
  "henkilo_oid": "1.2.246.562.24.47279942111",
  "lahdejarjestelma": "1",
  "tunniste": "lapsi-tunniste"
}

Lapsen varhaiskasvatuspäätöksen voi tallentaa seuraavasti:

{
  "lapsi_tunniste": "lapsi-tunniste",
  "tuntimaara_viikossa": "37.5",
  "jarjestamismuoto_koodi": "jm01",
  "hakemus_pvm": "2021-01-02",
  "alkamis_pvm": "2021-01-02",
  "tilapainen_vaka_kytkin": false,
  "vuorohoito_kytkin": false,
  "paivittainen_vaka_kytkin": true,
  "kokopaivainen_vaka_kytkin": true,
  "lahdejarjestelma": "1",
  "tunniste": "paatos-tunniste"
}

Varhaiskasvatuspäätökseen liittyvän varhaiskasvatussuhteen voi tallentaa seuraavasti:

{
  "varhaiskasvatuspaatos_tunniste": "paatos-tunniste",
  "toimipaikka_oid": "1.2.246.562.10.9395737548810",
  "alkamis_pvm": "2021-01-02",
  "lahdejarjestelma": "1"
}


Tietoja ei voi tallentaa käyttäen ristiin eri lähdejärjestelmiä.

Esimerkiksi lapsi tallennetaan seuraavasti:

{
  ...
  "lahdejarjestelma": "1",
  "tunniste": "lapsi-tunniste"
}

Varhaiskasvatuspäätöstä yritetään tallentaa seuraavasti:

{
  ...
  "lapsi_tunniste": "lapsi-tunniste",
  "lahdejarjestelma": "2",
  "tunniste": "paatos-tunniste"
}

Tallennus epäonnistuu, koska lasta ei löydy lähdejärjestelmäkoodilla 2 (tallennettu koodilla 1).

  • No labels