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
imageAttachmentIdatt225312771
macroId72c1dffe-20f3-4069-8499-2e378a8f654d
baseUrlhttps://sundsvall.atlassian.net/wiki
nameagreementAPI
diagramAttachmentIdatt225345537
containerId221904957
timestamp1616422121082

Datamodell

Gliffy
imageAttachmentIdatt266567684
macroId00ad94ed-267c-4a5a-b0d3-cae64b4f3160
baseUrlhttps://sundsvall.atlassian.net/wiki
displayNameContract datamodell
nameContract informationsmodell
diagramAttachmentIdatt266502160
containerId221904957
timestamp1617082332223

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

arrendekontrakt

kontrakt

POST /contracts/leaseContracts

Request body:

https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#LeaseContractContract#ContractHolder-objektobjektet

Hämta

arrendekontrakt med query-parametrar

kontrakt

GET /contracts/leaseContracts

Query

Tillgängliga query-parametrar:

  • end

  • externalReferenceId

  • leaseTypelandLeaseType

  • organizationNumber

  • personId

  • propertyDesignation

Response body:

En lista [] bestående av: https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#LeaseContractContract#ContractHolder-objektobjektet

Hämta

arrendekontrakt

kontrakt med kontrakt-ID

GET /contracts/leaseContracts/{id}

Response body:

https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#LeaseContractContract#ContractHolder-objektobjektet

Uppdatera

arrendekontrakt

kontrakt

PATCH /contracts/leaseContracts/{id}

Request body:

De fält från https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#LeaseContract-objekt som ska uppdateras.

Response body:

https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#LeaseContractContract#ContractHolder-objektobjektet

Avsluta

arrendekontrakt

kontrakt

PATCH /contracts/leaseContracts/{id}

Request body:

Code Block
languagejson
{
  "landLeaseContracts": [
    {
      "status": "TERMINATED"
    }
  ]
}

Response body:

https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#LeaseContractContract#ContractHolder-objektobjektet

ContractHolder-objektet

Detta är ett objekt som kommer innehålla alla 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
languagejson
{
  "firstContractType": [
    {
      "field" : "value"
    }
  ],
  "secondContractType": [
    {
      "field" : "value"
    }
  ],
  "thirdContractType": [
    {
      "field" : "value"
    }
  ]
}

Exempel (endast en typ av kontrakt hittills):

Code Block
languagejson
{
  "leaseContractlandLeaseContracts": [
    {
      "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>