Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Beskrivning
Generisk tjänst för hantering av avtal (arrendeavtal t ex).
I version 1 implementeras följande:
GET:
contracts/{personId} - hämta alla avtal för en person
contracts/{organizationNumber} - hämta alla avtal för en organisation
contracts/{propertyDesignation} - hämta alla avtal för en fastighet
contracts/{geoReference} - hämta ett/alla avtal baserat på en geografisk referens
contracts/{id} - hämta ett avtal baserat på avtalets id
contracts/{externalReferanceId} - hämta ett avtal baserat på avtalets historiska id
contracts/{end} - hämta alla avtal baserat på avtalets slutdatum
contracts/{leaseType} - hämta alla avtal baserat på avtaletstyp
POST:
contracts/ - skapa ett avtal
PATCH:
contracts/{id} - uppdatera ett avtal
contracts/{id}/terminate - avsluta ett avtal
Livscykelstatus
Design
Lösningsbeskrivning
Gliffy | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Datamodell
Gliffy | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Hantering av personuppgifter
<Vilka personuppgifter hanteras och varför?>
API specifikation (draft)
/GET
contractcontracts/template/{id} - hämta avtalsmall
contractcontracts/{personId} - hämta alla avtal för en person
contractcontracts/{organisationNumber} - hämta alla avtal för en organisation
contractcontracts/{geoReference} - hämta ett avtal baserat på en geografisk referens
contractcontracts/{id} - hämta ett avtal
contractcontracts/{id}/asPdf - hämta ett avtal på pdf-format
/POST
contractcontracts/ - skapa ett avtal
contractcontracts/{id}/sign - trigga en avtalssignering
contractcontracts/{id}/archive - trigga en arkivering
/PATCH
contractcontracts/{id} - uppdatera ett avtal
contractcontracts/{id}/signReminder - skicka en signeringspåminnelse
/DELETE
contractcontracts/{id} - radera ett avtal
Exempel på anrop
Skapa kontrakt
POST /contracts
Request body:
https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#ContractHolder-objektet
Hämta kontrakt
GET /contracts
Tillgängliga query-parametrar:
end
externalReferenceId
landLeaseType
organizationNumber
personId
propertyDesignation
Response body:
https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#ContractHolder-objektet
Hämta kontrakt med kontrakt-ID
GET /contracts/{id}
Response body:
https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#ContractHolder-objektet
Uppdatera kontrakt
PATCH /contracts/{id}
Request body:
De fält som ska uppdateras.
Response body:
https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#ContractHolder-objektet
Avsluta kontrakt
PATCH /contracts/{id}
Request body:
Code Block | ||
---|---|---|
| ||
{ "landLeaseContracts": [ { "status": "TERMINATED" } ] } |
Response body:
https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#ContractHolder-objektet
ContractHolder-objektet
Detta är ett objekt som kommer innehålla listor med alla kontraktstyper. Detta kommer innebära att vi kan lägga till nya kontraktstyper utan att bryta det befintliga API’t samt att vi kan minimera antalet sökvägar till resurserna.
Strukturen blir enligt följande:
Code Block | ||
---|---|---|
| ||
{ "firstContractType": [ { "field" : "value" } ], "secondContractType": [ { "field" : "value" } ], "thirdContractType": [ { "field" : "value" } ] } |
Exempel (endast en typ av kontrakt hittills):
Code Block | ||
---|---|---|
| ||
{ "landLeaseContracts": [ { "version": 0, "status": "ACTIVE", "caseId": 100, "indexTerms": "string", "description": "string", "additionalTerms": "string", "stakeholders": [ { "type": "ASSOCIATION", "roles": [ "ARRENDATOR" ], "organizationName": "Sundsvalls kommun", "organizationNumber": "212000-2411", "firstName": "Test", "lastName": "Testorsson", "personId": "40f14de9-815d-44a5-a34d-b1d38b628e07", "phoneNumber": "0701231212", "emailAddress": "test.testorsson@test.se", "address": { "streetAddress": "Testgatan 1A", "postalCode": "841 76", "town": "Sundsvall", "country": "Sweden", "attention": "Test Testorsson" }, "billingAddress": { "streetAddress": "Testgatan 1A", "postalCode": "841 76", "town": "Sundsvall", "country": "Sweden", "attention": "Test Testorsson" } } ], "attachments": [ { "category": "KONTRAKT", "name": "Arrendekontrakt", "extension": ".pdf", "mimeType": "application/pdf", "note": "Kontraktet var lite skrynkligt vid inskanningen.", "file": "string" } ], "landLeaseType": "LEASEHOLD", "leaseholdType": "AGRICULTURE", "usufructType": "FISHING", "externalReferenceId": "string", "propertyDesignation": "Skalvik 1:13", "leaseDuration": 3, "rental": 4350, "start": "2020-01-01", "end": "2022-01-01", "periodOfNotice": 90, "area": 150 } ] } |
Säkerhetsklassning
Säkerhetsklass TBD
Autentiseringsmetod: Oauth2
(Ref: Säkerhetsklassning av APIer )
API-ägare
<Kontaktuppgifter till den verksamhet som äger APIets livscykel>
Teknisk ägare
https://sundsvall.atlassian.net/wiki/spaces/API
För tekniska frågor:
Länkar
<Länkar till dev-portal;
Test
Sandbox
Produktion>
FAQ
<FAQ>