Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

Beskrivning

Generisk tjänst för hantering av avtal (arrendeavtal t ex).

I version 1 implementeras följande:

GET:

  • leaseContract/{personId} - hämta alla avtal för en person

  • leaseContract/{organizationNumber} - hämta alla avtal för en organisation

  • leaseContract/{propertyDesignation} - hämta alla avtal för en fastighet

  • leaseContract/{geoReference} - hämta ett/alla avtal baserat på en geografisk referens

  • leaseContract/{id} - hämta ett avtal baserat på avtalets id

  • leaseContract/{externalReferanceId} - hämta ett avtal baserat på avtalets historiska id

  • leaseContract/{end} - hämta alla avtal baserat på avtalets slutdatum

  • leaseContract/{leaseType} - hämta alla avtal baserat på avtaletstyp

POST:

  • leaseContract/ - skapa ett avtal

PATCH:

  • leaseContract/{id} - uppdatera ett avtal

  • leaseContract/{id}/terminate - avsluta ett avtal

Livscykelstatus

Design

Lösningsbeskrivning

Datamodell

Hantering av personuppgifter

<Vilka personuppgifter hanteras och varför?>

API specifikation (draft)

/GET

contract/template/{id} - hämta avtalsmall

contract/{personId} - hämta alla avtal för en person

contract/{organisationNumber} - hämta alla avtal för en organisation

contract/{geoReference} - hämta ett avtal baserat på en geografisk referens

contract/{id} - hämta ett avtal

contract/{id}/asPdf - hämta ett avtal på pdf-format

/POST

contract/ - skapa ett avtal

contract/{id}/sign - trigga en avtalssignering

contract/{id}/archive - trigga en arkivering

/PATCH

contract/{id} - uppdatera ett avtal

contract/{id}/signReminder - skicka en signeringspåminnelse

/DELETE

contract/{id} - radera ett avtal

Exempel på anrop

Skapa arrendekontrakt

POST /contracts/leaseContracts

Request body:

https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#LeaseContract-objekt

Hämta arrendekontrakt med query-parametrar

GET /contracts/leaseContracts

Query-parametrar:

  • end

  • externalReferenceId

  • leaseType

  • organizationNumber

  • personId

  • propertyDesignation

Response body:

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

Hämta arrendekontrakt med kontrakt-ID

GET /contracts/leaseContracts/{id}

Response body:

https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#LeaseContract-objekt

Uppdatera arrendekontrakt

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#LeaseContract-objekt

Avsluta arrendekontrakt

PATCH /contracts/leaseContracts/{id}

Request body:

{
  "status": "TERMINATED"
}

Response body:

https://sundsvall.atlassian.net/wiki/spaces/SK/pages/221904957/Contract#LeaseContract-objekt

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:

{
  "firstContractType": [
    {
      "field" : "value"
    }
  ],
  "secondContractType": [
    {
      "field" : "value"
    }
  ],
  "thirdContractType": [
    {
      "field" : "value"
    }
  ]
}

Exempel (endast en typ av kontrakt hittills):

{
  "leaseContract": [
    {
      "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
    }
  ]
}

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>

  • No labels