Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Registrering av klage via SAS #113

Open
fagerli93 opened this issue Sep 21, 2023 · 0 comments
Open

Registrering av klage via SAS #113

fagerli93 opened this issue Sep 21, 2023 · 0 comments

Comments

@fagerli93
Copy link

Registrering av klage via SAS

Bakgrunn

I dag må skolene registrere klager direkte i PAS. UDIR lager nå endepunkter som skoleadministrative systemer kan bruke til å sende og slette klageregistreringer til PAS fra SAS-et. Det er valgfritt for skoleadministrative systemer å bruke denne løsningen - den gamle løsningen for klageregistering direkte i PAS vil fortsatt fungere. UDIR sikter mot å ha endepunktene klart slik at det kan brukes for klager etter høsteksamen (i januar).

Dette er et utkast for teknisk løsning - vi tar gjerne i mot tilbakemeldinger for den foreslåtte løsningen innen 1. oktober. Etter dette blir den endelige løsningen spikret, slik at dette kan bli implementert på deres side.

Endepunkter

Dokumentasjon for endepunktene vil finnes under https://eksamenapi-sas.udir.no/swagger/index.html når det er avgjort retning og dette er klart for testing, men per nå vil det kun være en beskrivelse som sett under. I tillegg vil det legges til under wiki.

Registrering av klage(r)

Ressurs: ~/sas/klage/{organisasjonsnummer}
Verb: POST

Dette endepunktet kan brukes for å registrere en, eller flere, klager.
All input vil bli validert mot Klage.xsd som sett under.

Godkjent body kan finnes i Klage.xsd

<?xml version='1.0' encoding='UTF-8' ?>
<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'
           xmlns:pa='http://pas.udir.no/Klage'
           targetNamespace='http://pas.udir.no/Klage'
           elementFormDefault="qualified">
    <xs:element name="RegistrerKlage">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="BrukernavnPAS" type="xs:string" minOccurs="1" maxOccurs="1"/>
                <xs:element name="EpostadresseVedFeil" type="xs:string" minOccurs="0" maxOccurs="1"/>
                <xs:element name="Klager" nillable="true" type="pa:Klager"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:complexType name="Klager">
        <xs:sequence>
            <xs:element name="Klage" minOccurs="0" maxOccurs="unbounded" type="pa:Klage"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="Klage">
        <xs:sequence>
            <xs:element name="Fagkode" type="xs:string" nillable="false"/>
            <xs:element name="Kandidatnummer" type="xs:string" nillable="false"/>
        </xs:sequence>
    </xs:complexType>
</xs:schema>

Svar:

202 Accepted - Om formatet på meldingen er godkjent, og blir sendt videre til prosessering. Svaret vil gi gitt i form av en referanse som kan brukes videre.

<?xml version='1.0' encoding='UTF-8' ?>
<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'
           targetNamespace='http://pas.udir.no/Klage'
           elementFormDefault="qualified">
    <xs:element name="KlageReference">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="Reference" type="xs:string"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

400 Bad request - Om meldingen har feil format. Som tidligere vil denne gi en ApiError, som følger formatet fra ApiError.xsd
401 Unauthorized - Om meldingen mangler autentisering

403 Forbidden - Om det foreligger autentisering, men brukeren ikke har rettighetene til å gjøre handlingen

ApiError.xsd

<?xml version='1.0' encoding='UTF-8' ?>
<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'
           targetNamespace='http://pas.udir.no/Pamelding'
           elementFormDefault="qualified">
    <xs:element name="ApiError">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="Message" type="xs:string"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Status på klage

Ressurs: ~/sas/klage/{reference:guid}

Verb: GET

Dette endepunktet kan brukes for å få en status på registrert(e)e klage(r). Dette må brukes fordi klager blir prosessert asynkront.

Svar:

200 OK - Meldingen er godtatt, og du kan forvente et svar i formatet fra KlageReport.xsd

<?xml version='1.0' encoding='UTF-8' ?>
<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'
           xmlns:kl='http://pas.udir.no/Klage'
           targetNamespace='http://pas.udir.no/Klage'
           elementFormDefault="qualified">
    <xs:element name="RegistrerKlage">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="Reference" type="xs:string"/>
                <xs:element name="Orgnr" type="xs:string"/>
                <xs:element name="EksamensPeriodeKode" type="xs:string"/>
                <xs:element name="ProcessingStatus" type="xs:string"/>
                <xs:element name="StatusMessage" type="xs:string"/>
                <xs:element name="Klager" nillable="true" type="kl:Klager"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:complexType name="Klager">
        <xs:sequence>
            <xs:element name="Klage" minOccurs="0" maxOccurs="unbounded" type="kl:Klage"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="Klage">
        <xs:sequence>
            <xs:element name="Fagkode" type="xs:string"/>
            <xs:element name="Kandidatnummer" type="xs:string"/>
            <xs:element name="Status" type="xs:string"/>
            <xs:element name="StatusMessage" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
</xs:schema>

400 Bad request - Om meldingen har feil format. Som tidligere vil denne gi en ApiError, som følger formatet fra ApiError.xsd

401 Unauthorized - Om meldingen mangler autentisering

403 Forbidden - Om det foreligger autentisering, men brukeren ikke har rettighetene til å gjøre handlingen

404 Not found - Om en ikke finner referansen

Sletting av klage

Ressurs: ~/sas/klage/{organisasjonsnummer}/{fagkode}/{kandidatnummer}

Verb: DELETE

Dette endepunktet kan brukes for å slette en enkelt klage registrert på en kandidat.

Svar:

204 No content - Klagen på den gitte kandidaten har blitt slettet

400 Bad request - Om meldingen har feil format. Som tidligere vil denne gi en ApiError, som følger formatet fra ApiError.xsd

401 Unauthorized - Om meldingen mangler autentisering

403 Forbidden - Om det foreligger autentisering, men brukeren ikke har rettighetene til å gjøre handlingen

404 Not found - Det er forsøkt å slette klagen, men det finnes ikke en klage på den gitte kandidaten

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant