Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Beskrivning

Tillhandahåller stöddata för verksamhetssystem.

Livscykelstatus

Produktion

Lösningsbeskrivning

Gliffy
imageAttachmentIdatt773586947
macroId21fdebd5-b5c4-406c-8cbe-3b31a6b9f58e
baseUrlhttps://sundsvall.atlassian.net/wiki
nameFoundationObjects
diagramAttachmentIdatt773521422
containerId773521409
timestamp1632988529049

Hantering av personuppgifter

Namn på personal samt adresser till företag förekommer i API:et.

API specifikation

GET

Swagger ui
openapi: 3.0.1
info:
  title: FoundationObjects
  version: v1.0
servers:
  - url: https://api-test.sundsvall.se/fo/1.0
/companies

Listar kommunala bolag

/fo/1.0/benefitgroups

Listar förmånsgrupper

/fo/1.0/formofemployments

Listar anställningsformer

/fo/1.0/referencenumbers

Listar referensnummer för Sundsvalls kommun

/fo/1.0/companiesreferencenumbers

Listar referensnummer för kommunala bolag

/fo/1.0/units

Listar enheter inom Sundsvalls kommun

/fo/1.0/externalcompanies

Listar adresser för externa företag som köper tjänster av Sundsvalls kommun

/fo/1.0/externalcompanies/{organisationsnummer}

Hämtar adress för ett specifikt externt företag. Parameter är företagets organisationsnummer.

/fo/1.0/liabilities

Listar ansvar för Sundsvalls kommun

/fo/1.0/operations

Listar verksamheter för Sundsvalls kommun

/fo/1.0/activities

Listar aktiviteter för Sundsvalls kommun

/fo/1.0/projects

Listar projekt för Sundsvalls kommun

/fo/1.0/objects

Listar objekt kopplade till Sundsvalls kommun, objekt kan innebära en byggnad, väg, allmän plats m.m.


paths:
  /companies:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Company'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Company'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Company'
  /benefitgroups:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/BenefitGroup'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/BenefitGroup'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/BenefitGroup'
  /formofemployments:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FormOfEmployment'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FormOfEmployment'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FormOfEmployment'
  /referencenumbers:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReferenceNumber'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReferenceNumber'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReferenceNumber'
  /companiesreferencenumbers:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReferenceNumber'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReferenceNumber'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ReferenceNumber'
  /units:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Unit'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Unit'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Unit'
  /externalcompanies:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExternalCompanyAddress'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExternalCompanyAddress'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExternalCompanyAddress'
  '/externalcompanies/{organisationnumber}':
    get:
      tags:
        - FoundationObjects
      parameters:
        - name: organisationnumber
          in: path
          required: true
          style: simple
          explode: false
          schema:
            type: string
            format: string
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ExternalCompanyAddress'
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalCompanyAddress'
            text/json:
              schema:
                $ref: '#/components/schemas/ExternalCompanyAddress'
  /liabilities:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Liability'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Liability'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Liability'
  /operations:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Operation'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Operation'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Operation'
  /activities:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Activity'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Activity'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Activity'
  /projects:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Project'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Project'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Project'
  /objects:
    get:
      tags:
        - FoundationObjects
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MunicipalityObject'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MunicipalityObject'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MunicipalityObject'
security:
  - ApiKeyAuth: []
components:
  securitySchemes:
    ApiKeyAuth: 
      type: apiKey
      in: header   
      name: apikey
  schemas:
    Company:
      type: object
      properties:
        companyId:
          type: integer
          format: int32
        companyCode:
          type: string
          nullable: true
        shortName:
          type: string
          nullable: true
        displayName:
          type: string
          nullable: true
        isSchool:
          type: boolean
        isPrivateSchool:
          type: boolean
      additionalProperties: false
    BenefitGroup:
      type: object
      properties:
        benefitGroupId:
          type: integer
          format: int32
        description:
          type: string
          nullable: true
      additionalProperties: false
    FormOfEmployment:
      type: object
      properties:
        foeId:
          type: string
          nullable: true
        description:
          type: string
          nullable: true
      additionalProperties: false
    ReferenceNumber:
      type: object
      properties:
        id:
          type: integer
          format: int32
        companyCode:
          type: integer
          format: int32
        referenceNumber:
          type: string
          nullable: true
        referenceText:
          type: string
          nullable: true
      additionalProperties: false
    Unit:
      type: object
      properties:
        id:
          type: integer
          format: int32
        unit:
          type: string
          nullable: true
      additionalProperties: false
    ExternalCompanyAddress:
      type: object
      properties:
        id:
          type: integer
          format: int32
        companyName:
          type: string
          nullable: true
        addressLine1:
          type: string
          nullable: true
        addressLine2:
          type: string
          nullable: true
        addressLine3:
          type: string
          nullable: true
        counterpart:
          type: string
          nullable: true
        organizationNumber:
          type: string
          nullable: true
      additionalProperties: false
    Liability:
      type: object
      properties:
        id:
          type: integer
          format: int32
        liableId:
          type: string
          nullable: true
        liable:
          type: string
          nullable: true
      additionalProperties: false
    Operation:
      type: object
      properties:
        id:
          type: integer
          format: int32
        operationId:
          type: string
          nullable: true
        operation:
          type: string
          nullable: true
      additionalProperties: false
    Activity:
      type: object
      properties:
        id:
          type: integer
          format: int32
        activity:
          type: string
          nullable: true
      additionalProperties: false
    Project:
      type: object
      properties:
        id:
          type: integer
          format: int32
        project:
          type: string
          nullable: true
      additionalProperties: false
    MunicipalityObject:
      type: object
      properties:
        id:
          type: integer
          format: int32
        municipalityObject:
          type: string
          nullable: true
      additionalProperties: false

Säkerhetsklassning

Säkerhetsklass 1

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/META

För tekniska frågor: joel.lindberg@sundsvall.se, marcus.olsson@xpservices.se

Länkar

<Länkar till dev-portal;

  • Test

  • Sandbox

  • Produktion>

FAQ

<FAQ>