Import af grupper, medlemmer og kontaktpersoner

Vedligeholdes af

Institution

Formel WSDL servicebeskrivelse


Gyldig fraGyldig tilURL
juni 2021N/Ahttps://wsaimport.unilogin.dk/wsaimport-v7/ws?WSDL

Formål

Import webservicen anvendes til at overføre data om brugere og grupper på en institution til SkoleGrunddata.

Unilogin SkoleGrunddata Importformat anvendes i forbindelse med import via webservicen ws10/wsaIMPORT. WSDL definitionen for wsaIMPORT (ws10) rummer den formelle definition i XML Schema format.

Nedenfor er vist en skitse af den overordnede struktur i importformatet. Lister af elementer er angivet med stiplet ramme.


Tabel over felter og attributter

Tabellen beskriver de felter med tilhørende attributter, der kan importeres med de regler der gælder for hvert felt. Bemærk konventionen: Feltnavne er med stort begyndelsesbogstav og attributnavne er med lille.

Angivelser af feltlængde for felter af typen ”String” er i forhold til utf8 tegnsætkodning, dvs. at visse tegn fylder to felter.

UNILoginImport

Felt

Type

Antal

Beskrivelse

sourceDateTime

DateTime

1

Tid for eksport af data fra kildesystemet

Fx: 2011-11-10T17:00:00

Tidspunktet skal være nyere end tidspunktet for sidste eksport der er indlæst

source

String

1

Navn på kildesystem. Navnet bruges sammen institutionens registreringsnummer til identifikation af importen

schoolYear

String

1

Skoleår angivet på formatet YYYY-YYYY

Fx: ”2016-2017”

sourceVersion

String

0-1

Versionsnummer på kildesystem. Kun information. Gemmes ikke i SkoleGrunddata

Institution

Institution

1

Institution

Institution

Felt

Type

Antal

Beskrivelse

InstitutionNumber

String

1

Seks-tegns registreringsnummer, som identificerer en institution (kan indeholde både bogstaver og tal)

InstitutionName

String

0-1

Institutionsnavn

Group

Group

0-n

Grupper på institutionen

InstitutionPerson

InstitutionPerson

0-n

Ansatte og elever på institutionen

Group

Grupper bruges til samling af personer på en institution. Både elever og lærere kan tilknyttes grupper. En gruppe kan fx være klasser i grundskolen, hold, fag, studiegrupper eller lærerteams. Der er i gruppebegrebet ingen begrænsninger i forhold til hvad den enkelte institution vil bruge det til.

Felt

Type

Antal

Beskrivelse

GroupId

String

1

GroupId kan bruges i skolernes infrastruktur (fx AD) og af udbydere i forbindelse med tildeling af adgang til tjenester. Det er derfor vigtigt at koordinere GroupId på tværs importkilder for at der ikke oprettes flere grupper med samme navn og for ikke at risikere at miste adgangen til tjenester ved skifte af importleverandør. Eksisterende grupper på en institution kan kortlægges med wsiEKSPORT

Elever og lærere kan tilknyttes gruppen ved at angive MainGroupId eller GroupId på personen

Gruppeid er unikt og uforanderligt i hele sin levetid på institutionen

Fx: "2016a"

GroupName

String

0-1

Gruppenavn, som vises til brugere

GroupType

Enum

1

Gruppetypen

En af værdierne:  Hovedgruppe, Årgang, Retning, Hold, SFO, Team eller Andet

GroupLevel

Enum

0-1

Hovedgruppens trin

En af værdierne: DT, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, U1, U2, U3, U4, VU eller Andet

DT er dagtilbud

1 svarer til 1. klassetrin i grundskolen

U1 er første trin på en ungdomsuddannelse

VU er voksenuddannelse

Skal angives for grupper med groupType ”Hovedgruppe” og kun da

Line

String

0-1

Spor, linje, studieretning eller lign. for hovedgruppen

Skal angives for grupper med groupType ”Hovedgruppe” og kun da

For grundskoler fx: ”B”

FromDate

Date

0-1

Gruppens startdato på formen YYYY-MM-DD

ToDate

Date

0-1

Gruppens slutdato på formen YYYY-MM-DD

InstitutionPerson

Felt

Type

Antal

Beskrivelse

LocalPersonId

String

1

Den lokale identifikation af personen på institutionen. Identifikationen bruges til at genkende personer fra en import til den næste. Identifikationen skal derfor være unik inden for en import, således at <institutionNumber><source><LocalPersonId> skal være unik. Identifikationen skal være uforanderlig, således at en person der en gang er importeret med et LocalPersonId skal have det samme LocalPersonId i alle fremtidige importer.

Dette ID må ikke være personens CPR-nummer

Person

Person

1

Personoplysninger

Student

Student

0-1

Elevoplysninger om personen

Student, Employee og Extern udelukker gensidigt hinanden

Employee

Employee

0-1

Ansat person

Student, Employee og Extern udelukker gensidigt hinanden

ExternExtern0-1

Ikke-ansat person

Student, Employee og Extern udelukker gensidigt hinanden

Employee

Felt

Type

Antal

Beskrivelse

RoleEnum1-n

Den ansattes roller

Vælges blandt følgende værdier: Lærer, Pædagog, Vikar, Leder, Ledelse, TAP eller Konsulent

ShortName

String

0-1

Initialer

Occupation

String

0-1

Stilling

Location

String

0-1

Afdeling, bygning eller værelsesnummer på kostskoler

GroupId

String

0-n

De grupper medarbejderen er tilknyttet

Feltet skal indeholde gruppernes unikke id på institutionen

Extern

Felt

Type

Antal

Beskrivelse

RoleEnum1

Den ikke-ansattes rolle

En af værdierne: Ekstern eller Praktikant

GroupId

String

0-n

De grupper den eksterne medarbejder er tilknyttet

Feltet skal indeholde gruppernes unikke id på institutionen

Student

Felt

Type

Antal

Beskrivelse

RoleEnum1

Elevens Rolle

En af værdierne: Barn, Elev eller Studerende

StudentNumber

String

0-1

Elevens studienummer fra lokalt administrativt system

Level

Enum

1

Elevens trin

En af værdierne: DT, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, U1, U2, U3, U4, VU eller Andet

DT er dagtilbud

1 svarer til 1. klassetrin i grundskolen

U1 er første trin på en ungdomsuddannelse

VU er voksenuddannelse

Location

String

0-1

Afdeling, bygning eller værelsesnummer på kostskoler

MainGroupId

String

1

Elevens hovedgruppe. For grundskoler elevens klasse og kan for andre institutioner for eksempel studieretning eller stamhold

Feltet skal indeholde gruppens unikke id på institutionen

MainGroiupId må kun referere til grupper med groupType ”Hovedgruppe”

GroupId

String

0-n

Yderligere grupper eleven er tilknyttet, ud over tilknytningen via MainGroupId.

Feltet skal indeholde gruppernes unikke id på institutionen - GroupId.

ContactPerson

Contact-Person

0-10

Kontaktperson

ContactPerson

Felt

Type

Antal

Beskrivelse

relation

Enum

1

Kontaktpersonens relation til eleven

En af værdierne: Mor, Far, Andet eller Officielt tilknyttet person

childCustody

Bool

1

Har personen forældremyndighed?

accessLevelEnum1

Bruges til autorisation i tjenester

En af værdierne: 1 eller 0

accessLevel=1 gives automatisk, hvis childCustody=yes

Hvis childCustody=no, skal hjemmel opnås på anden vis

Person

Person

1

Personoplysninger på kontaktpersonen

Person

Felt

Type

Antal

Beskrivelse

protected

Bool

1

Har personen navne- og adressebeskyttelse

verificationLevel

Enum

1

Er informationen vedrørende personen verificeret i CPR-registret

En af værdierne: 1=CPR-verificeret, 0=uverificeret

FirstName

String

1

Fornavne. Feltet skal mindst indeholde et bogstav - Særlige forhold ved unavngivne børn

FamilyName

String

1

Efternavn. Feltet skal mindst indeholde et bogstav - Særlige forhold ved unavngivne børn

CivilRegistrationNumber

String

1

Personnummer på formen DDMMYYXXXX

EmailAddress

RegEx

0-1

E-mail

BirthDate

String

0-1

Fødselsdato på formen YYYY-MM-DD

Gender

Enum

0-1

Personens køn.

En af værdierne: M eller K

PhotoId

String

0-1

Reference til foto i kildesystemet

Address

Address

0-1

Adresse

HomePhoneNumber

PhoneNumber

0-1

Hjemmetelefon

WorkPhoneNumber

PhoneNumber

0-1

Arbejdstelefon

MobilePhoneNumber

PhoneNumber

0-1

Mobiltelefon

AliasFirstName

String

0-1

Alias-fornavne som importeres i SkoleGrunddata ved navne og adresse-beskyttelse

Feltet skal mindst indeholde et bogstav ved navne- og adressebeskyttelse

Er feltet tomt, indsættes Alias-fornavn ved navne og adresse-beskyttelse ifm. importen

AliasFamilyName

String

0-1

Alias-efternavn som importeres i SkoleGrunddata ved navne og adresse-beskyttelse

Feltet skal mindst indeholde et bogstav ved navne- og adressebeskyttelse

Er feltet tomt, indsættes Alias-efternavn ved navne og adresse-beskyttelse ifm. importen

PhoneNumber

Felt

Type

Antal

Beskrivelse

protected

Bool

1

Er telefonnummeret beskyttet

(element value)

RegEx

1

Telefonnummer

Address

Felt

Type

Antal

Beskrivelse

StreetAddress

String

0-1

Adressens vejnavn, nr. og etage

PostalCode

String

0-1

Postnummer

PostalDistrict

String

0-1

By

CountryCode

String

0-1

Adressens landekode. i to tegn efter standarden ISO 3166-1 alpha-2.

Fx DK

Country

String

0-1

Adressens land

MunicipalityCode

String

0-1

Kommunekode

MunicipalityName

String

0-1

Kommunenavn

Som led i importen straksoprettes brugerne i Unilogin IdP og de vil kunne anvende andre IdP'er via Unilogin Broker.

Oprettede grupper anvendes i skolernes infrastruktur og af udbydere i forbindelse med tildeling af adgang til tjenester. Det er derfor vigtigt at koordinere grupper på tværs importkilder for at der ikke oprettes flere grupper med samme navn og for ikke at risikere at miste adgangen til tjenester ved skifte af importleverandør. Eksisterende brugeroplysninger og grupper på en institution kan kortlægges med ws17/wsiEKSPORT, som importleverandører automatisk har adgang til, når der er givet adgang til ws10/wsaIMPORT.

Metoder

Metodenavn

Returnerer

Beskrivelse

importerXml (wsBrugerid, wsPassword, instXML)

XMLsvar

Fuld import til SkoleGrunddata. Anvendes første gang der importeres data, eller når man vil sikre sig, at data er fuldstændig i synk. Her overføres alle brugere hver gang.

importerDeltaXml (wsBrugerid, wsPassword, instXML)

XMLsvar

Delta-import til SkoleGrunddata. Det kan enten være nye brugere eller ændringer til eksisterende brugere. Der overføres kun de ændrede brugere. Anvendes som den primære importmetode.

importerSletXml (wsBrugerid, wsPassword, instXML)

XMLsvar

Delta-sletning af Brugere i SkoleGrundata. Anvendes sammen med delta-import til vedligehold af brugerbasen. Alternativt kan brugere slettes via fuld import.

Anvendelsespolitik

Udbyderes brug af BPI-webservices

Fejlkoder

Type

Kode

Beskrivelse

Resultat

Ekstern Svar

ErrorE1101Import afvist - wsaIMPORT er lukket i en periodeImport afvisesDer er lukket for import. Se driftinfo.stil.dk for mere information.
ErrorE1102En anden import er allerede i gang på samme institutionsnummer.Import afvisesEn anden import på institutionen er i gang - prøv igen om lidt.
ErrorE2001Personen kan ikke findes på det angivet LocalPersonIdPerson springes overIngen eksisterende person fundet på institutionen med LocalPersonId %s
ErrorE2101Institutions CPR Integritet er ikke valid

Import stoppes

Institutionen har overlap i CPR-numre mellem tilknyttede personer
ErrorE2102Institutions CPR Integritet er ikke valid - Forsaget af LocalPersonIdImport stoppesLocalPersonId %s forsager overlap i CPR
ErrorE2103CPR Nummer er ikke unik for ImportPerson springes over i ImportCPR-nummer for localPersonId %s er ikke unik, personen springes over i import
ErrorE2104CPR-nummer skal består af 10 tegn (11 inkl bindestreg).Person springes over i ImportCPR-nummer for localPersonId %s har ikke den korrekte længde
ErrorE2105CPR Nummer er ikke gyldigt (Mod-11, KOT, dato Mv)Person springes over i ImportCPR-nummer for localPersonId %s er ikke et validt nummer
ErrorE2106CPR-nummer er blevet ændret for en given person med det angivet localPersonId. Omidentifikation ikke tilladt.Person springes over i ImportCPR-nummer for localPersonId %s er blevet ændret. Omidentifikation ikke tilladt.
ErrorE2107CPR-nummer er blevet ændret til et allerede eksisterende CPR-nummer for personen med det angivet localPersonId. Omidentifikation ikke tilladt.Person springes over i ImportCPR-nummer for localPersonId %s er blevet ændret til allerede eksisterende CPR-nummer. Omidentifikation ikke tilladt.
ErrorE2201Kontaktperson har alias navn sat, men er ikke beskyttet.Person som kontaktperson er tilknyttet springes over i ImportKontaktperson for elev med localPersonId %s er ikke navne- og adressebeskyttet, men har angivet alias navne
ErrorE2203Person har alias navn sat, men er ikke beskyttet.Person springes over i ImportPerson for localPersonId %s er ikke navne- og adressebeskyttet, men har angivet alias navne
ErrorE2402Person med hovedgruppe som ikke er "Klasse"Person springes over i importPerson med localPersonId %s har en hovedgruppe som ikke er af typen 'klasse'.
ErrorE3001Hovedgruppe mangler gruppe niveauGruppe springes over i importGruppen med id %s er af typen hovedgruppe men har ikke et angivet gruppe niveau
ErrorE3002Gruppe er ikke hovedgruppe men har gruppe niveau.Gruppe springes over i importGruppen med id %s er ikke af typen hovedgruppe, men har et angivet gruppe niveau
ErrorE3101Forsøg på at ændre i en gruppe som nogle elver har som hovedgruppe fra samme kilde.Gruppe springes over i import

Gruppen med id %s blev sat til en anden GroupType end Hovedgruppe, men der findes Students med gruppen som hovedgruppe! Dette må ikke gøres i en delta-import; Lav en fuld import, så de pågældende elever genimporteres.

ErrorE3102Forsøg på at ændre i en gruppe som nogle students har som hovedgruppe fra anden kildeGruppe springes over i import

Gruppen med id %s blev sat til en anden GroupType end Hovedgruppe, men der findes Students med gruppen som MainGroupId fra en anden importkilde! Fjern først alle elever fra hovedgruppen i den anden kilde.

ErrorE4001Institution er ukendt og findes ikke institutionsregisteret.Import afvisesInstitutionen findes ikke, import kan ikke foretages
ErrorE4002Den angivet kilde kendes ikke af systemet. Import afvisesImporten kan ikke foretages med en ukendt kilde
ErrorE4003Der er ikke angivet sourceDateTimeImport afvisessourceDateTime mangler, import kan ikke foretages
ErrorE4005Import som er ældre end seneste modtaget importImport afvisessourceDateTime er ældre end senest indlæste import
ErrorE4006Deltaimport kan ikke foretages. Der eksistere ingen tidligere imports for institutionen med den angivne kilde. Fortage en fuld import først.Import afvisesIngen eksisterende import for kilde og institution, DeltaImport er afvist
ErrorE4007Sletimport på kilde som ikke findes. Der eksistere ingen tidligere imports for institutionen med den angivne kilde. Fortage en fuld import først.Import afvisesIngen eksisterende import for kilde og institution, SletImport er afvist
ErrorE9999Ukendt Fejl.Ukendt fejl. Noget er gået galt. Foretagede handling er fejletUkendt fejl. Noget er gået galt. Foretagede handling er fejlet