Versions Compared

Key

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

Beskrivning

Hanterar publicering av meddelanden i Open-E, samt möjliggör att dessa meddelanden kan hämtas upp även för andra kanaler.

För att kunna publicera ett meddelande till ett ärende på Open-E förutsätts att en

För att kunna publicera meddelanden på Open-E förutsätts att en externalReference vara ett flowInstanceId (ärendenummer i Open-E), exempel:

Code Block
"name" : "flowInstanceId",
"value" : "356t4r34f"

Saknas flowInstanceId så lagras meddelandet i databas, inget mer.

Livscykelstatus

Design

Lösningsbeskrivning

Gliffy
imageAttachmentIdatt916258829
macroId69052846-b404-4b65-b5d4-5f13e684a61d
baseUrlhttps://sundsvall.atlassian.net/wiki
namewebMess
diagramAttachmentIdatt916226075
containerId916455428
timestamp1643622232708

Hantering av personuppgifter

<Vilka personuppgifter hanteras och varför?>

API specifikation

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

eyJ4NXQiOiJOVGRtWmpNNFpEazNOalkwWXpjNU1tWm1PRGd3TVRFM01XWXdOREU1TVdSbFpEZzROemM0WkE9PSIsImtpZCI6ImdhdGV3YXlfY2VydGlmaWNhdGVfYWxpYXMiLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJhZG1pbkBjYXJib24uc3VwZXIiLCJhcHBsaWNhdGlvbiI6eyJvd25lciI6ImFkbWluIiwidGllclF1b3RhVHlwZSI6bnVsbCwidGllciI6IjUwUGVyTWluIiwibmFtZSI6IkNvbmZsdWVuY2UiLCJpZCI6NDksInV1aWQiOiI5MTc3ZGYxZC1hMDQwLTQwMTYtOGVjZC05NGM1OGI1NmFjYTYifSwiaXNzIjoiaHR0cHM6XC9cL2FwaS1pbS10ZXN0LnN1bmRzdmFsbC5zZTo0NDNcL29hdXRoMlwvdG9rZW4iLCJ0aWVySW5mbyI6eyJVbmxpbWl0ZWQiOnsidGllclF1b3RhVHlwZSI6InJlcXVlc3RDb3VudCIsImdyYXBoUUxNYXhDb21wbGV4aXR5IjowLCJncmFwaFFMTWF4RGVwdGgiOjAsInN0b3BPblF1b3RhUmVhY2giOnRydWUsInNwaWtlQXJyZXN0TGltaXQiOjAsInNwaWtlQXJyZXN0VW5pdCI6bnVsbH19LCJrZXl0eXBlIjoiU0FOREJPWCIsInN1YnNjcmliZWRBUElzIjpbeyJzdWJzY3JpYmVyVGVuYW50RG9tYWluIjoiY2FyYm9uLnN1cGVyIiwibmFtZSI6IkRpc3R1cmJhbmNlcyIsImNvbnRleHQiOiJcL2Rpc3R1cmJhbmNlc1wvMS4xIiwicHVibGlzaGVyIjoiYWRtaW4iLCJ2ZXJzaW9uIjoiMS4xIiwic3Vic2NyaXB0aW9uVGllciI6IlVubGltaXRlZCJ9LHsic3Vic2NyaWJlclRlbmFudERvbWFpbiI6ImNhcmJvbi5zdXBlciIsIm5hbWUiOiJGZWVkYmFja1NldHRpbmdzIiwiY29udGV4dCI6IlwvZmVlZGJhY2tzZXR0aW5nc1wvMS4wIiwicHVibGlzaGVyIjoiYWRtaW4iLCJ2ZXJzaW9uIjoiMS4wIiwic3Vic2NyaXB0aW9uVGllciI6IlVubGltaXRlZCJ9LHsic3Vic2NyaWJlclRlbmFudERvbWFpbiI6ImNhcmJvbi5zdXBlciIsIm5hbWUiOiJBZ3JlZW1lbnQiLCJjb250ZXh0IjoiXC9hZ3JlZW1lbnRcLzAuMSIsInB1Ymxpc2hlciI6ImFkbWluIiwidmVyc2lvbiI6IjAuMSIsInN1YnNjcmlwdGlvblRpZXIiOiJVbmxpbWl0ZWQifSx7InN1YnNjcmliZXJUZW5hbnREb21haW4iOiJjYXJib24uc3VwZXIiLCJuYW1lIjoiV2ViTWVzc2FnZVNlbmRlciIsImNvbnRleHQiOiJcL3dlYm1lc3NhZ2VzZW5kZXJcLzEuMCIsInB1Ymxpc2hlciI6ImFkbWluIiwidmVyc2lvbiI6IjEuMCIsInN1YnNjcmlwdGlvblRpZXIiOiJVbmxpbWl0ZWQifSx7InN1YnNjcmliZXJUZW5hbnREb21haW4iOiJjYXJib24uc3VwZXIiLCJuYW1lIjoiQ2FzZVN0YXR1cyIsImNvbnRleHQiOiJcL2Nhc2VzdGF0dXNcLzEuMCIsInB1Ymxpc2hlciI6ImFkbWluIiwidmVyc2lvbiI6IjEuMCIsInN1YnNjcmlwdGlvblRpZXIiOiJVbmxpbWl0ZWQifV0sImlhdCI6MTY0NjE0MzU5OCwianRpIjoiOTU3Y2RhNGYtMGViOS00ZTdmLTkzODMtMGZiY2NiMDhiYzY4In0=.Ly1hWOfOuVCKhSnupGkI3w89LZzycWwBGIdROWpdTg25FOayMyCoDr0zLTvf2Jw5yiLKakQk1zBJrvWnlsl_QCsxZSEnEu2qXiZJZImzodQd-kqXHOwFnOtWXiyQwgeTxWoj_xOYzZcZ9hrc8SsuETSjy9K6YuBw2-MnoYQxdbFxBdx2n7_w84JAK4MOMhAJucvWv_FrEHLK6YaHIROXXOTanoNwrSkC-CH22938pfZAsJ_V5KUZwVCI9rnv068DGyLwTeBSIhG8MXoa_gmqOhrJhKdjD18RRlLQQz_eWkx6uQh4FpmvbOGozvoyl_TmOJ-i-KqAcTj9wh8oZ8Z9Yg==

Swagger ui
openapi: 3.0.1
info:
  title: API-WebMessageSender
servers:
  - url: https://api-test.sundsvall.se/webmessagesender/1.0
tags:
  - name: WebMessages
    description: Web messages
paths:
  /webmessages:
    post:
      tags:
        - WebMessages
      summary: Create web message
      operationId: createWebMessage
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateWebMessageRequest'
        required: true
      responses:
        '201':
          description: Successful operation
          headers:
            Location:
              style: simple
              schema:
                type: string
        '400':
          description: Bad request
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '404':
          description: Not found
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '500':
          description: Internal Server error
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
  /webmessages/{id}:
    get:
      tags:
        - WebMessages
      summary: Get web message by ID
      operationId: getWebMessageById
      parameters:
        - name: id
          in: path
          description: Web message ID
          required: true
          schema:
            type: string
          example: 81471222-5798-11e9-ae24-57fa13b361e1
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebMessage'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/WebMessage'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '500':
          description: Internal Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
    delete:
      tags:
        - WebMessages
      summary: Delete web message by ID
      operationId: deleteWebMessageById
      parameters:
        - name: id
          in: path
          description: Web message ID
          required: true
          schema:
            type: string
          example: 81471222-5798-11e9-ae24-57fa13b361e1
      responses:
        '204':
          description: Successful operation
        '400':
          description: Bad request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Problem'
        '404':
          description: Not found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Problem'
        '500':
          description: Internal Server error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Problem'
  /webmessages/recipients/{partyId}:
    get:
      tags:
        - WebMessages
      summary: Get web messages by partyId
      operationId: getWebMessagesByPartyId
      parameters:
        - name: partyId
          in: path
          description: PartyID
          required: true
          schema:
            type: string
          example: 81471222-5798-11e9-ae24-57fa13b361e1
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WebMessage'
            application/problem+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WebMessage'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '500':
          description: Internal Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
  /webmessages/external-references/{key}/{value}:
    get:
      tags:
        - WebMessages
      summary: Get web messages by externalReference
      operationId: getWebMessagesByExternalReference
      parameters:
        - name: key
          in: path
          description: The external-reference key
          required: true
          schema:
            maxLength: 128
            minLength: 3
            type: string
          example: flowInstanceId
        - name: value
          in: path
          description: The external-reference value
          required: true
          schema:
            maxLength: 128
            minLength: 3
            type: string
          example: 356t4r34f
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WebMessage'
            application/problem+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WebMessage'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '500':
          description: Internal Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Problem'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
security:
  - ApiKeyAuth: []
components:
  securitySchemes:
    ApiKeyAuth: 
      type: apiKey
      in: header   
      name: apikey  
  schemas:
    CreateWebMessageRequest:
      type: object
      properties:
        partyId:
          type: string
          description: Party ID (e.g. a personId or an organizationId)
          example: 81471222-5798-11e9-ae24-57fa13b361e1
        message:
          type: string
          description: The message
          example: This is a message
        externalReferences:
          type: array
          items:
            $ref: '#/components/schemas/ExternalReference'
      description: CreateWebMessageRequest model
    ExternalReference:
      type: object
      properties:
        key:
          type: string
          description: The external reference key
          example: flowInstanceId
        value:
          type: string
          description: The external reference value
          example: 356t4r34f
      description: ExternalReference model
    Problem:
      type: object
      properties:
        instance:
          type: string
          format: uri
        type:
          type: string
          format: uri
        parameters:
          type: object
          additionalProperties:
            type: object
        status:
          $ref: '#/components/schemas/StatusType'
        title:
          type: string
        detail:
          type: string
    StatusType:
      type: object
      properties:
        statusCode:
          type: integer
          format: int32
        reasonPhrase:
          type: string
    WebMessage:
      type: object
      properties:
        id:
          type: string
          description: Web Message ID
          example: f0882f1d-06bc-47fd-b017-1d8307f5ce95
        partyId:
          type: string
          description: Party ID (e.g. a personId or an organizationId)
          example: 81471222-5798-11e9-ae24-57fa13b361e1
        message:
          type: string
          description: The message
          example: This is a message
        externalReferences:
          type: array
          items:
            $ref: '#/components/schemas/ExternalReference'
        created:
          type: string
          description: Created timestamp
          format: date-time
          readOnly: true
      description: WebMessage model

Säkerhetsklassning

Säkerhetsklass 2

Autentiseringsmetod: Oauth2

(Ref: Säkerhetsklassning av APIer )

API-ägare

<Kontaktuppgifter till den verksamhet som äger APIets livscykel>

Teknisk ägare

<Kontaktuppgifter till utvecklare/teknisk förvaltare>https://sundsvall.atlassian.net/wiki/spaces/API

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

Länkar

FAQ

<FAQ>