Versions Compared

Key

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

Beskrivning

Tar emot felanmälan, samt tillhandahåller master data för nya felanmälningar.

Aktuell version: integration mot ISYcase för SBK-relaterade felanmälningar - i övrigt så skickas felanmälan vidare via e-post till kundtjänst (digilogt)

Fas 2: addera bildanalys samt integrationer mot fler verksamhetssystem (digitalt)

Mer information: Felanmälan

Livscykelstatus

Test

Lösningsbeskrivning

Gliffy
imageAttachmentIdatt86442117
macroIddf280ba3-c550-4e27-b653-4c987cfc4001
baseUrlhttps://sundsvall.atlassian.net/wiki
nameincident-API
diagramAttachmentIdatt88080415
containerId22315023
timestamp1613027090720

Hantering av personuppgifter

För att möjliggöra återkoppling till intressenter så sparas intressentens person-id och det angetts.

API Specifikation

Expand
titleAPI-nyckel för sandbox-miljö. Klicka på "Authorize" nedan och ange denna nyckel för att testa API:et.

Kommer snart

Swagger ui
openapi: 3.0.1
info:
  title: Incident
  version: '1.0'
servers:
  - url: https://api-test.sundsvall.se/incident/1.0
paths:
  '/api/getincident/{externalCaseId}':
    get:
      tags:
        - Incident
      parameters:
        - name: externalCaseId
          in: path
          required: true
          style: simple
          explode: false
          schema:
            type: string
            format: string
      responses:
        '200':
          description: ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Incident'
  /api/listincidents:
    get:
      tags:
        - Incident
      parameters:
        - name: offset
          in: query
          required: false
          style: form
          explode: true
          schema:
            type: integer
        - name: limit
          in: query
          required: false
          style: form
          explode: true
          schema:
            type: integer
      responses:
        '200':
          description: ok
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ListIncident'
  /api/validcategories/oep:
    get:
      tags:
        - Incident
      parameters: []
      responses:
        '200':
          description: ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidCategoryOeP'
  /api/validcategories:
    get:
      tags:
        - Incident
      parameters: []
      responses:
        '200':
          description: ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidCategory'
  /api/sendincident:
    post:
      tags:
        - Incident
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostIncident'
      responses:
        '200':
          description: ok
  /api/setincidentfeedback:
    get:
      tags:
        - Incident
      parameters:
        - name: feedback
          in: query
          required: true
          style: form
          explode: true
          schema:
            type: string
        - name: errandid
          in: query
          required: true
          style: form
          explode: true
          schema:
            type: integer
      responses:
        '200':
          description: ok
  /api/validstatuses:
    get:
      tags:
        - Incident
      parameters: []
      responses:
        '200':
          description: ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidStatus'
  '/api/internal/oep/status/{externalCaseId}':
    get:
      tags:
        - OeP
      parameters:
        - name: externalCaseId
          in: path
          required: true
          style: simple
          explode: false
          schema:
            type: string
            format: string
      responses:
        '200':
          description: ok
  '/api/getincident/{id}':
    get:
      tags:
        - Incident
      parameters:
        - name: id
          in: path
          required: true
          style: simple
          explode: false
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Incident'
  '/api/{id}/status':
    patch:
      tags:
        - Incident
      description: Updates status for specific errand
      parameters:
        - name: id
          in: path
          required: true
          style: simple
          explode: false
          schema:
            type: string
            format: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                status:
                  type: integer
              example:
                status: 2
      responses:
        '200':
          description: ok
security:
  - ApiKeyAuth: []
components:
  securitySchemes:
    ApiKeyAuth: 
      type: apiKey
      in: header   
      name: apikey
  schemas:
    Incident:
      type: object
      properties:
        incidentId:
          type: string
          format: uuid
          nullable: false
        externalCaseId:
          type: string
          nullable: true
        personId:
          type: string
          nullable: false
        created:
          type: string
          nullable: false
        phoneNumber:
          type: string
          nullable: true
        email:
          type: string
          nullable: true
        contactMethod:
          type: string
          nullable: false
        category:
          type: integer
          format: int32
          nullable: false
        description:
          type: string
          nullable: true
        fileName:
          type: string
          nullable: true
        image:
          type: string
          nullable: true
      additionalProperties: false
    Attachment:
      type: object
      properties:
        category:
          type: string
          nullable: true
        extension:
          type: string
          nullable: false
        mimeType:
          type: string
          nullable: false
        note:
          type: string
          nullable: true
        file:
          type: string
          nullable: false
    PostIncident:
      type: object
      properties:
        personId:
          type: string
          format: uuid
          nullable: false
        phoneNumber:
          type: string
          nullable: true
        email:
          type: string
          nullable: true
        contactMethod:
          type: string
          nullable: false
        category:
          type: integer
          nullable: false
        description:
          type: string
          nullable: true
        mapCoordinates:
          type: string
          nullable: true
        externalCaseId:
          type: string
          nullable: true
        attachments:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/Attachment'
      additionalProperties: false
    ValidCategory:
      type: object
      properties:
        CATEGORY_ID:
          type: integer
          format: int32
          nullable: false
        category:
          type: string
          nullable: false
      additionalProperties: false
    ValidCategoryOeP:
      type: object
      properties:
        key:
          type: integer
          format: int32
          nullable: false
        value:
          type: string
          nullable: false
      additionalProperties: false
    ValidStatus:
      type: object
      properties:
        STATUS_ID:
          type: integer
          format: int32
          nullable: false
        status:
          type: string
          nullable: false
      additionalProperties: false
    ListIncident:
      type: object
      properties:
        incidentId:
          type: string
          format: uuid
          nullable: false
        status:
          type: integer
          format: int32
          nullable: false
        externalCaseId:
          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/API

Ansvarigt team: Team Dynasty

För tekniska frågor: teamdynasty@sundsvall.se

Länkar

<Länkar till dev-portal;

FAQ

<FAQ>