Versions Compared
compared with
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Beskrivning
Funktion som hanterar utgående kommunikation till våra intressenter.
Kommunikationsmöjligheter:
SMS (implementerad)
Se SmsSenderE-post (implementerad)
Se EmailSenderDigital post (Implementerad)
Se digitalMailSenderWebb-meddelanden (implementerad)
Se webMessageSender
Bubblare:
Analog post
App-push
Dessutom sparas, för identifierade mottagare, kommunikationshistorik.
Livscykelstatus
Produktion
Lösningsbeskrivning
Gliffy | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Hantering av personuppgifter
Vilka personuppgifter hanteras och varför?
API-specifikation
Swagger ui |
---|
openapi: 3.0.1 info: title: Messaging contact: {} license: name: MIT License url: https://opensource.org/licenses/MIT version: "2.0" tags'@project.version@' servers: - nameurl: Sending Resources - name: Status and History Resourceshttp://localhost:8080 description: Generated server url paths: /webmessage: post: tags: - Sending Resources summary: Send a single web message operationId: sendWebMessage requestBody: content: application/json: schema: $ref: '#/components/schemas/WebMessageRequest' required: true responses: "400500": description: BadInternal Server RequestError content: '*/*': schema: $ref: '#/components/schemas/Problem' "500200": description: InternalSuccessful Server ErrorOperation content: '*/*': schema: $ref: '#/components/schemas/ProblemMessageResponse' "200400": description: SuccessfulBad OperationRequest content: '*/*': schema: $ref: '#/components/schemas/MessageResponseProblem' /sms: post: tags: - Sending Resources summary: Send a single SMS operationId: sendSms requestBody: content: application/json: schema: $ref: '#/components/schemas/SmsRequest' required: true responses: "400500": description: Internal BadServer RequestError content: '*/*': schema: $ref: '#/components/schemas/Problem' "500200": description: InternalSuccessful Server ErrorOperation content: '*/*': schema: $ref: '#/components/schemas/ProblemMessageResponse' "200400": description: SuccessfulBad OperationRequest content: '*/*': schema: $ref: '#/components/schemas/MessageResponseProblem' /messages: post: tags: - Sending Resources summary: Send a batch of messages as e-mail or SMS to a list of parties operationId: sendMessage requestBody: content: application/json: schema: $ref: '#/components/schemas/MessageRequest' required: true responses: "400500": description: BadInternal Server RequestError content: '*/*': schema: $ref: '#/components/schemas/Problem' "500200": description: InternalSuccessful Server ErrorOperation content: '*/*': schema: $ref: '#/components/schemas/ProblemMessagesResponse' "200400": description: SuccessfulBad OperationRequest content: '*/*': schema: $ref: '#/components/schemas/MessagesResponseProblem' /email: post: tags: - Sending Resources summary: Send a single e-mail operationId: sendEmail requestBody: content: application/json: schema: $ref: '#/components/schemas/EmailRequest' required: true responses: "400500": description: BadInternal Server RequestError content: '*/*': schema: $ref: '#/components/schemas/Problem' "500200": description: InternalSuccessful Server ErrorOperation content: '*/*': schema: $ref: '#/components/schemas/ProblemMessageResponse' "200400": description: SuccessfulBad OperationRequest content: '*/*': schema: $ref: '#/components/schemas/MessageResponseProblem' /status/{messageId}digitalmail: getpost: tags: - Status andSending History Resources summary: Get the status for Send a single messagedigital mail to one or more operationId: getMessageStatusparties parametersoperationId: sendDigitalMail - namerequestBody: messageId incontent: path required: true application/json: schema: $ref: '#/components/schemas/DigitalMailRequest' typerequired: stringtrue responses: "500": description: Internal Server Error content: '*/*': schema: $ref: '#/components/schemas/Problem' "404200": description: NotSuccessful FoundOperation content: '*/*': schema: $ref: '#/components/schemas/ProblemMessageResponse' "200400": description: SuccessfulBad OperationRequest content: '*/*': schema: $ref: '#/components/schemas/MessageStatusResponseProblem' /conversationHistorystatus/{partyIdmessageId}: get: tags: - Status and History Resources summary: Get the entire conversationstatus history for a givensingle partymessage operationId: getConversationHistorygetMessageStatus parameters: - name: partyIdmessageId in: path required: true schema: type: string - nameresponses: fromDate "500": in: query description: Internal "Format: yyyy-MM-dd (ISO8601)"Server Error requiredcontent: false schema: '*/*': type: string formatschema: date - name: toDate in$ref: query'#/components/schemas/Problem' description: "200"Format: yyyy-MM-dd (ISO8601)" requireddescription: falseSuccessful Operation schema: content: type: string '*/*': format: date responsesschema: "500": description: Internal Server Error content: '*/*': schema: $ref$ref: '#/components/schemas/ProblemMessageStatusResponse' "200404": description: SuccessfulNot OperationFound content: '*/*': schema: $ref: '#/components/schemas/HistoryResponseProblem' /batchStatusconversationHistory/{batchIdpartyId}: get: tags: - Status and History Resources summary: Get the statusentire conversation history for a messagegiven batchparty operationId: getBatchStatusgetConversationHistory parameters: - name: batchIdpartyId in: path required: true schema: type: string - responsesname: fromDate "200" in: query description: Successful Operation "Format: yyyy-MM-dd (ISO8601)" contentrequired: false '*/*'schema: type: string schema: format: date - $refname: '#/components/schemas/BatchStatusResponse'toDate "500"in: query description: Internal Server Error"Format: yyyy-MM-dd (ISO8601)" contentrequired: false '*/*'schema: type: string schema: format: date $refresponses: '#/components/schemas/Problem' "404500": description: NotInternal Server FoundError content: '*/*': schema: $ref: '#/components/schemas/Problem' /api-docs: get"200": tags: description: Successful Operation - API summary: OpenAPI content: operationId: getApiDocs responses'*/*': "200": schema: description: OK content: $ref: '#/components/schemas/HistoryResponse' /batchStatus/{batchId}: get: tags: - Status and History Resources summary: Get the status for a message batch operationId: getBatchStatus parameters: - name: batchId in: path required: true schema: type: string responses: "500": description: Internal Server Error content: '*/*': schema: $ref: '#/components/schemas/Problem' "200": description: Successful Operation content: '*/*': schema: $ref: '#/components/schemas/BatchStatusResponse' "404": description: Not Found content: '*/*': schema: $ref: '#/components/schemas/Problem' /api-docs: get: tags: - API summary: OpenAPI operationId: getApiDocs responses: "200": description: OK content: application/yaml: schema: type: string x-auth-type: None x-throttling-tier: Unlimited x-wso2-mutual-ssl: Optional components: schemas: ExternalReference: required: - key - value type: object properties: key: type: string description: The external reference key example: flowInstanceId value: type: string description: The external reference value example: 356t4r34f description: External references Header: required: - name - values type: object properties: name: type: string description: The header name values: type: array description: The header values items: type: string description: The header values description: Headers Party: type: object properties: partyId: type: string description: The message party ID example: f427952b-247c-4d3b-b081-675a467b3619 externalReferences: type: array description: External references items: $ref: '#/components/schemas/ExternalReference' description: Party WebMessageRequest: required: - message type: object properties: party: $ref: '#/components/schemas/Party' headers: type: array description: Headers items: $ref: '#/components/schemas/Header' message: type: string description: Message Problem: type: object properties: instance: type: string format: uri application/yamltype: type: string schema: format: uri parameters: type: string object additionalProperties: x-auth-type: None object title: x-throttling-tier: Unlimitedtype: string x-wso2-mutual-sslstatus: Optional components: schemas: ExternalReference$ref: '#/components/schemas/StatusType' requireddetail: - key type: string - valueStatusType: type: object properties: keyreasonPhrase: type: string descriptionstatusCode: The external reference key type: integer example: flowInstanceId format: int32 value: MessageResponse: type: stringobject descriptionproperties: The external reference value messageId: example: 356t4r34f descriptiontype: Externalstring references HeaderSms: required: - name -type: valuesobject typeproperties: object propertiesname: namemaxLength: 11 typeminLength: string0 descriptiontype: Thestring header name valuesdescription: The sender of the SMS type: array example: sender description: Sender The header valuesSmsRequest: required: items: - message - mobileNumber type: string type: object descriptionproperties: The header values Partyparty: type: object properties:$ref: '#/components/schemas/Party' partyIdheaders: type: stringarray description: TheHeaders message party ID items: example: f427952b-247c-4d3b-b081-675a467b3619 externalReferences$ref: '#/components/schemas/Header' typesender: array description$ref: External references'#/components/schemas/Sms' itemsmobileNumber: $reftype: '#/components/schemas/ExternalReference'string WebMessageRequest: requireddescription: Mobile number. Should start with +467x - message typemessage: object properties: type: string party: description: Message $refEmail: '#/components/schemas/Party' required: headers: - address type:- arrayname type: object items: properties: $refname: '#/components/schemas/Header' messagetype: string typedescription: stringThe sender of the e-mail Problem: typeaddress: object properties: type: string instance: description: type: stringSender e-mail address formatexample: urisender@sender.se typereplyTo: type: string format: uridescription: Reply-to e-mail address parametersexample: sender@sender.se Message: type: object required: - message additionalProperties: type: object typeproperties: object statusparty: $ref: '#/components/schemas/StatusTypeParty' titleheaders: type: stringarray detail: description: Headers type: string StatusTypeitems: type: object properties: reasonPhrase:$ref: '#/components/schemas/Header' sender: type: string statusCode$ref: '#/components/schemas/Sender' typesubject: integer formattype: int32string MessageResponse: typedescription: objectThe message subject properties:(for E-mails) messageIdmessage: type: string Sms: requireddescription: The message text - name description: A message to be type:sent object propertiesMessageRequest: nametype: object maxLength: 11 properties: minLengthmessages: 0 type: stringarray description: The sendermessages ofto thebe SMSsent exampleitems: sender SmsRequest: required$ref: '#/components/schemas/Message' - messagedescription: Message representation -Sender: mobileNumber type: object properties: partysms: $ref: '#/components/schemas/PartySms' headersemail: type$ref: array'#/components/schemas/Email' itemsdescription: Sender $ref: '#/components/schemas/Header'MessagesResponse: sender: type: object $refproperties: '#/components/schemas/Sms' mobileNumberbatchId: patterntype: "^\\+467[02369]\\d{7}$"string typemessageIds: string descriptiontype: Mobile number.array Should start with +467x items: message: type: string EmailAttachment: required: - addresscontent - name type: object properties: namecontent: type: string description: The sender of the e-mail: The attachment (file) content as a BASE64-encoded string example: aGVsbG8gd29ybGQK addressname: type: string description: SenderThe e-mailattachment addressfilename example: sender@sendertest.setxt replyTocontentType: type: string description: The Reply-to e-mail addressattachment content type example: text/plain description: sender@sender.seAttachments MessageEmailRequest: required: - messageemailAddress - subject type: object properties: party: $ref: '#/components/schemas/Party' headers: type: array itemsdescription: Headers $ref: '#/components/schemas/Header' sender:items: $ref: '#/components/schemas/SenderHeader' subjectemailAddress: type: string description: TheRecipient messagee-mail subjectaddress (for E-mails) messagesubject: type: string description: E-mail Thesubject message text descriptionmessage: A message to be sent MessageRequesttype: string type: object description: E-mail plain-text properties:body messageshtmlMessage: type: arraystring description: TheE-mail messagesHTML to be sentbody (BASE64-encoded) items: sender: $ref: '#/components/schemas/Message'Email' attachments: description: Message representation Sendertype: array type: object description: Attachments properties: smsitems: $ref: '#/components/schemas/SmsAttachment' DigitalMailAttachment: emailrequired: - content $ref: '#/components/schemas/Email' - filename descriptiontype: object Sender MessagesResponseproperties: type contentType: object propertiestype: string batchId: description: Content type typeenum: string messageIds: - application/pdf typecontent: array itemstype: string typedescription: stringContent (BASE64-encoded) Attachment: requiredfilename: - content type: string - name typedescription: objectFilename propertiesdescription: Attachments DigitalMailRequest: content required: - body type: string - contentType descriptiontype: Theobject attachment (file) content as a BASE64-encoded stringproperties: party: example: aGVsbG8gd29ybGQK name$ref: '#/components/schemas/Parties' typeheaders: string descriptiontype: The attachment filenamearray exampledescription: Headers test.txt contentTypeitems: type: string $ref: '#/components/schemas/Header' descriptionsubject: The attachment content type type: string example: text/plain description: AttachmentsSubject EmailRequest: nullable: true required: - emailAddresscontentType: - subject type: string type: object properties:description: Content type partyenum: $ref:- '#/components/schemas/Party'text/plain headers:- text/html typebody: array itemstype: string description: $ref: '#/components/schemas/Header'Body (BASE64-encoded) emailAddressattachments: type: stringarray description: Attachments Recipient e-mail address items: example: recipient@recipient.se subject$ref: '#/components/schemas/DigitalMailAttachment' Parties: type required: string - partyIds description: E-mail subject type: object messageproperties: typepartyIds: string descriptiontype: E-mail plain-text bodyarray htmlMessagedescription: The message party ID:s type: string items: description: E-mail HTML body (BASE64-encoded) type: string sender: description: The message party $ref: '#/components/schemas/Email'ID:s attachmentsexternalReferences: type: array description: External Attachmentsreferences items: $ref: '#/components/schemas/AttachmentExternalReference' description: Parties MessageStatusResponse: type: object properties: messageId: type: string status: type: string enum: - AWAITING_FEEDBACK - PENDING - SENT - FAILED - NO_FEEDBACK_SETTINGS_FOUND - NO_FEEDBACK_WANTED HistoryResponse: type: object properties: messageType: type: string enum: - MESSAGE - EMAIL - SMS - WEB_MESSAGE - DIGITAL_MAIL status: type: string enum: - AWAITING_FEEDBACK - PENDING - SENT - FAILED - NO_FEEDBACK_SETTINGS_FOUND - NO_FEEDBACK_WANTED content: type: object timestamp: type: string format: date-time BatchStatusResponse: type: object properties: messageStatuses: type: array items: $ref: '#/components/schemas/MessageStatusResponse' securitySchemes: {} |
Säkerhetsklassning
Säkerhetsklass 1
Autentiseringsmetod: Oauth2
Teknisk ägare
Ansvarigt team: Team Dynasty
För tekniska frågor: teamdynasty@sundsvall.se
Källkod
<TBD>
FAQ
<FAQ>
Create from Template | ||||||||
---|---|---|---|---|---|---|---|---|
|