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:
leaseContractcontracts/{personId} - hämta alla avtal för en person
leaseContractcontracts/{organizationNumber} - hämta alla avtal för en organisation
leaseContractcontracts/{propertyDesignation} - hämta alla avtal för en fastighet
leaseContractcontracts/{geoReference} - hämta ett/alla avtal baserat på en geografisk referens
leaseContractcontracts/{id} - hämta ett avtal baserat på avtalets id
leaseContractcontracts/{externalReferanceId} - hämta ett avtal baserat på avtalets historiska id
leaseContractcontracts/{end} - hämta alla avtal baserat på avtalets slutdatum
leaseContractcontracts/{leaseType} - hämta alla avtal baserat på avtaletstyp
POST:
leaseContractcontracts/ - skapa ett avtal
PATCH:
leaseContractcontracts/{id} - uppdatera ett avtal
leaseContractcontracts/{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
arrendekontraktkontrakt
POST /contracts/leaseContracts
Request body:
Hämta arrendekontrakt med query-parametrar//sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#ContractHolder-objektet
Hämta kontrakt
GET /contracts
/leaseContractsQuery parameters
Tillgängliga query-parametrar:
end
externalReferenceId
leaseTypelandLeaseType
organizationNumber
personId
propertyDesignation
Response body:
https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#ContractHolder-objektet
Hämta
arrendekontraktkontrakt med kontrakt-ID
GET /contracts/leaseContracts/{id}
Response body:
https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#ContractHolder-objektet
Uppdatera
arrendekontraktkontrakt
PATCH /contracts/leaseContracts/{id}
Avsluta arrendekontraktRequest 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/leaseContracts/{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" } ], "leaseType "landLeaseType": "LEASEHOLD", "leaseholdType": "AGRICULTURE", "usufructType": "ANLAGGNINGSARRENDEFISHING", "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>