Messaging Service


Messaging Service


Create a new message for an user
    Resource: messages 

    URLhttps://api-stage.bimplus.net/v2/messages

    Examplehttps://api-stage.bimplus.net/v2/messages

    JSON Structure

    Name

    Mandatory / Optional

    Type

    Description

    id

    will be ignored

    string

    Id of the message

    receiver

    mandatory

    object

    receiver user object (contains id & email).
    When 'Id' is user id, must be defined also 'email' string property with email address of the user. Email will be sent only to this address.
    When 'Id' is group id, email will be sent to all users which belongs to this group.

    sender optional object sender user object (contains id & email)
    id mandatory string(guid) id of the user
    email mandatory string email id of the user

    source

    mandatory

    string

    Source of the message (eg: Import Service)

    topic

    mandatory

    string

    Topic of the message

    severity

    mandatory

    object

    Severity can be Info, Warning, Error

    returnCode

    mandatory

    string

    Readable return code

    timestamp will be ignored string Creation date of the message
    unreadEmail optional boolean

    When 'unreadEmail' is missing the default value is true.
    If set to true or default, the message will me marked as an email ( yet unread ), and sent via email service.
    If it is set as false the message will be marked as a "read" (collect) email.

    unreadBrowserNotification optional boolean

    When 'unreadBrowserNotification' is missing the default value is true.
    If set to true or default, the message will be marked as browser notification ( yet unread ) and send to the Bimplus portal as popup message.
    If it is set as false the message will be marked as a "read" (collect) browser notification.

    additionalData optional string Extra info
    correlationId optional guid Id of the other related message
     POST

    Create a new message for an user or group of users.
    When message is created as 'read' (i.e. unreadBrowserNotification or unreadEmail is set to false), such messages are not sent immediatelly but only collected in server.

    Headers
    Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
    Content-Type: application/json
    
    JSON
    {
        "sender": {
                "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed"
        },
        "receiver": {
                "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed"
        },
        "source": "ServiceName",
        "topic": "SKETCHUP_JOB",
        "severity": "Warn",
        "returncode": "FILE_TOO_BIG",
        "unreadBrowserNotification": true
    }
    Status
    Status: 201 Created
    
    JSON
    {
        "id": "4633d522-53aa-4d81-90b4-704681e0573d",
        "sender": {
                "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
                "email": "customer1@bimplus.net"
        },
        "receiver": {
                "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
                "email": "customer2@bimplus.net"
        },
        "source": "ServiceName",
        "topic": "SKETCHUP_JOB",
        "severity": "Warn",
        "returncode": "FILE_TOO_BIG",
        "unreadBrowserNotification": true,
        "timestamp": "2013-11-15T10:55:53"
    }

    Get the message list of the current user
      Resource: user/<user_id>/messages 

      URLhttps://api-stage.bimplus.net/v2/user/<user_id>/messages

      Examplehttps://api-stage.bimplus.net/v2/user/123456789/messages

       GET
       Gets the message list of the current user
      Headers
      Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
      Content-Type: application/json
      
      Status
      Status: 200 OK
      
      JSON
      [
          {
              "id": "481713d6-7dab-410c-8c8a-d65ff1d4a766",
              "sender": {
                  "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
                  "email": "customer1@bimplus.net"
              },
              "receiver": {
                  "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
                  "email": "customer2@bimplus.net"
              },
              "source": "ServiceName2",
              "topic": "SKETCHUP_JOB",
              "severity": "Info",
              "returncode": "FILE_TOO_BIG",
              "timestamp": "2013-11-18T14:55:22",
              "unreadBrowserNotification": false,
              "unreadEmail": false,
              "additionaldata": null,
              "correlationid": null
          },
          {
              "id": "93c29c5d-1391-4ae8-8876-ef9815e60f7d",
              "sender": {
                  "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
                  "email": "customer1@bimplus.net"
              },
              "receiver": {
                  "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
                  "email": "customer2@bimplus.net"
              },
              "source": "ServiceName",
              "topic": "IFC_JOB",
              "severity": "Info",
              "returncode": "OK",
              "timestamp": "2013-11-18T14:30:53",
              "unreadBrowserNotification": true,
              "unreadEmail": false,
              "additionaldata": null,
              "correlationid": null
          }
      ]


      Get information about a specified message
        Resource: messages 

        URLhttps://api-stage.bimplus.net/v2/messages/<message_id>

        Examplehttps://api-stage.bimplus.net/v2/messages/<message_id>


         GET
         Get information about a specified message
        Headers
        Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
        Content-Type: application/json
        
        Status
        Status: 200 OK
        
        JSON
        {
            "id": "93c29c5d-1391-4ae8-8876-ef9815e60f7d",
            "sender": {
                    "id": "1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
                    "email": "customer1@bimplus.net"
            },
            "receiver": {
                    "id": "1e2223b-fa49-e540-ac2f-8caff3dd72ed",
                    "email": "customer2@bimplus.net"
            },
            "source": "ServiceName",
            "topic": "IFC_JOB",
            "severity": "Info",
            "returncode": "OK",
            "timestamp": "2013-11-18T14:30:53",
            "unreadBrowserNotification": true,
            "unreadEmail": false,
            "additionaldata": null,
            "correlationid": null
        }


        Modify contents of the dashboard messages
          Resource: messages/<message_id>/updatedashboardadditionaldata

          URLhttps://api-stage.bimplus.net/v2/messages/<message_id>/updatedashboardadditionaldata

          Examplehttps://api-stage.bimplus.net/v2/messages/b8615afc-99cc-4bcd-b0ca-ff0593ce15c6/updatedashboardadditionaldata

          JSON Structure

          Name

          Mandatory / Optional

          Type

          Description

          additionalData

          mandatory

          object

          The content of the message

          JSON Structure of the object additionalData

          Name

          Mandatory / Optional

          Type

          Description

          title

          mandatory

          string

          Title of the message

          content

          mandatory

          string

          Message text content

          imageBase64   
          optional string
          pictureLink
          optional string
          messageLink
          optional string
           PUT

          Update the content of the dashboard message or the contents of the grouped dashboard messages by given posting.

          Headers
          Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
          Content-Type: application/json
          
          JSON
          {
            "additionalData":{
              "title":"Anothermessage",
              "content":"Loremipsumdolorsitamet,consetetursadipscingelitr",
              "imageBase64":null,
              "pictureLink":"http://blog.bimplus.net/wp-content/uploads/2014/08/bim-manager-300x222.png",
              "messageLink":""
            }
          }
          Status
          Status: 200 OK


          Delete the specified message
            Resource: messages/<message_id> 

            URLhttps://api-stage.bimplus.net/v2/messages/<message_id>

            Examplehttps://api-stage.bimplus.net/v2/messages/<message_id>

             DELETE

            Delete the specified message or group of messages by given posting.

            Headers
            Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
            Content-Type: application/json
            
            Status
            Status: 200 OK
            


            Mark a browser message as "read"
              Resource: messages/<message_id>/markasreadbrowser 

              URLhttps://api-stage.bimplus.net/v2/messages/<message_id>/markasreadbrowser 

              Examplehttps://api-stage.bimplus.net/v2/messages/<message_id>/markasreadbrowser 

               POST
               Mark a message or group of messages by given posting as read by browser.
              Headers
              Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
              Content-Type: application/json
              
              Status
              Status: 200 OK
              
              Mark a browser message as "unread"
                Resource: messages/<message_id>/markasunreadbrowser 

                URLhttps://api-stage.bimplus.net/v2/messages/<message_id>/markasunreadbrowser 

                Examplehttps://api-stage.bimplus.net/v2/messages/<message_id>/markasunreadbrowser 

                 POST

                Mark a message or group of messages by given posting as unread by browser.

                Headers
                Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                Content-Type: application/json
                
                Status
                Status: 200 OK
                
                Mark an email message as "unread"
                  Resource: messages/<message_id>/markasunreademail 

                  URLhttps://api-stage.bimplus.net/v2/messages/<message_id>/markasunreademail

                  Examplehttps://api-stage.bimplus.net/v2/messages/<message_id>/markasunreademail

                   POST
                   Mark an email message as unread.
                  Headers
                  Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                  Content-Type: application/json
                  
                  Status
                  Status: 200 OK
                  

                  Filter the messages (eg: Get all the unread messages from a particular user)
                     GET
                     Get information about a specified message
                    Headers
                    Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                    Content-Type: application/json
                    
                    Status
                    Status: 200 OK
                    
                    JSON
                    [
                        {
                            "id": "44ad058b-1f76-4343-bafa-031eb462215c",
                            "receiver": {
                                "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
                                "email": "customer@bimplus.net"
                            },
                            "sender": {
                                "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
                                "email": "testuser1@bimplus.net"
                            },
                            "source": "IssueService",
                            "topic": "ISSUE_DELETED",
                            "severity": "Info",
                            "returnCode": "ISSUE_DELETED",
                            "timestamp": "2014-05-09T09:54:17",
                            "unreadBrowserNotification": true,
                            "unreadEmail": false,
                            "correlationId": null
                        },
                        {
                            "id": "0a4c8eab-26af-49ce-9191-049a141ba762",
                            "receiver": {
                                "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
                                "email": "customer@bimplus.net"
                            },
                            "sender": {
                                "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
                                "email": "testuser1@bimplus.net"
                            },
                            "source": "IssueService",
                            "topic": "ISSUE_UPDATED",
                            "severity": "Info",
                            "returnCode": "ISSUE_UPDATED",
                            "timestamp": "2014-04-08T08:54:41",
                            "unreadBrowserNotification": false,
                            "unreadEmail": false,
                            "correlationId": "de96f4ae-79fd-4d83-99e9-07cec7a80906"
                        },
                        {
                            "id": "ffd50096-fb82-4029-8d49-06a04e31f02a",
                            "receiver": {
                                "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
                                "email": "customer@bimplus.net"
                            },
                            "sender": {
                                "id": "71e0ac3b-fa49-e540-ac2f-8caff3dd72ed",
                                "email": "testuser2@bimplus.net"
                            },
                            "source": "IssueService",
                            "topic": "ISSUE_DELETED",
                            "severity": "Info",
                            "returnCode": "ISSUE_DELETED",
                            "timestamp": "2014-05-09T09:54:27",
                            "unreadBrowserNotification": false,
                            "unreadEmail": true,
                            "correlationId": null
                        }
                    ]

                    Get all messages sent by given user to all single users
                      Resource: user/<user_id>/messages/sent

                      URLhttps://api-stage.bimplus.net/v2/user/<user_id>/messages/sent

                      Examplehttps://api-stage.bimplus.net/v2/user/1110ac3b-fa49-e540-ac2f-8caff3dd72ed/messages/sent

                       GET

                      Gets the list of all messages sent from user (user_id) to all single users

                      Headers
                      Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                      Content-Type: application/json
                      
                      Status
                      Status: 200 OK
                      
                      JSON
                      [{
                          "id":"481713d6-7dab-410c-8c8a-d65ff1d4a766",
                          "sender":{
                            "id":"1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
                            "email":"customer1@bimplus.net"
                          },
                          "receiver":{
                            "id":"1e2223b-fa49-e540-ac2f-8caff3dd72ed",
                            "email":"customer2@bimplus.net"
                          },
                          "source":"ServiceName2",
                          "topic":"SKETCHUP_JOB",
                          "severity":"Info",
                          "returncode":"FILE_TOO_BIG",
                          "timestamp":"2013-11-18T14:55:22",
                          "unreadBrowserNotification":false,
                          "unreadEmail":false,
                          "additionaldata":null,
                          "correlationid":null
                        },
                        {
                          "id":"93c29c5d-1391-4ae8-8876-ef9815e60f7d",
                          "sender":{
                            "id":"1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
                            "email":"customer1@bimplus.net"
                          },
                          "receiver":{
                            "id":"1e2223b-fa49-e540-ac2f-8caff3dd72ed",
                            "email":"customer2@bimplus.net"
                          },
                          "source":"ServiceName",
                          "topic":"IFC_JOB",
                          "severity":"Info",
                          "returncode":"OK",
                          "timestamp":"2013-11-18T14:30:53",
                          "unreadBrowserNotification":true,
                          "unreadEmail":false,
                          "additionaldata":null,
                          "correlationid":null
                        }
                      ]

                      Get all messages sent by given user to all groups
                        Resource: user/<user_id>/messages/groupsent

                        URLhttps://api-stage.bimplus.net/v2/user/<user_id>/messages/groupsent

                        Examplehttps://api-stage.bimplus.net/v2/user/1110ac3b-fa49-e540-ac2f-8caff3dd72ed/messages/groupsent

                         GET

                        Gets the list of all messages sent from user (user_id) to all users groups

                        Headers
                        Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                        Content-Type: application/json
                        
                        Status
                        Status: 200 OK
                        
                        JSON
                        [{
                            "id":"481713d6-7dab-410c-8c8a-d65ff1d4a766",
                            "sender":{
                              "id":"1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
                              "email":"customer1@bimplus.net"
                            },
                            "group":{
                              "id":"1e2223b-fa49-e540-ac2f-8caff3dd72ed",
                              "name":"Users from Italy",
                              "description":"Group of users from Italy"
                            },
                            "source":"DashboardAnnouncement",
                            "topic":"DASHBOARD",
                            "severity":"Info",
                            "returncode":"FILE_TOO_BIG",
                            "timestamp":"2013-11-18T14:55:22",
                            "unreadBrowserNotification":false,
                            "unreadEmail":false,
                            "additionalData":"{ Test message to group Italy}",
                            "correlationid":null
                          },
                          {
                            "id":"8757d4c6-477b-419e-b0e2-52cbb9e1b1a8",
                            "sender":{
                              "id":"1110ac3b-fa49-e540-ac2f-8caff3dd72ed",
                              "email":"customer1@bimplus.net"
                            },
                            "group":{
                              "id":"594bbc5d-1949-4d74-84d3-B966a42c68A1",
                              "name":"Users from France",
                              "description":"Group of users from France"
                            },
                            "source":"DashboardNews",
                            "topic":"DASHBOARD",
                            "severity":"Info",
                            "returncode":"OK",
                            "timestamp":"2013-11-18T14:30:53",
                            "unreadBrowserNotification":true,
                            "unreadEmail":false,
                            "additionalData":"{ Test message to group France}",
                            "correlationid":null
                          }
                        ]


                        Get all messaging groups
                           GET
                           Gets all existing messaging groups.
                          Headers
                          Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                          Content-Type: application/json
                          
                          Status
                          Status: 200 OK
                          
                          JSON
                          [{
                              "systemGroup":{
                                "id":"9c3c8a6c-67b5-406f-a44c-0dca6eb3c031",
                                "name":"Users from Munich",
                                "description":"Group of users from Munich area"
                              },
                              "usersIdList":["6ae90098-5b01-4141-8ef5-0079ae6c1c04",
                                "9d32f46b-157f-dfee-a5d7-0162543dc304",
                                "a33e89a2-b5fc-408a-b4ec-01fb593e2b1d"
                              ]
                            },
                            {
                              "systemGroup":{
                                "id":"242fab5a-fce6-4413-900b-5f5b6ca2a414",
                                "name":"Users from Paris",
                                "description":"Group of users from Paris"
                              },
                              "usersIdList":["61c9c325-52a2-21b5-47b6-0a06e7152ff9",
                                "6be10633-5950-319f-eae0-12dec2c04219",
                                "2e798f29-4b71-15ee-90eb-18592bc18317"
                              ]
                            }
                          ]

                          Get the messaging group details
                            Resource: systemgroups/<messaginggroup_id>

                            URLhttps://api-stage.bimplus.net/v2/ systemgroups/<messaginggroup_id>

                            Examplehttps://api-stage.bimplus.net/v2/systemgroups/242fab5a-fce6-4413-900b-5f5b6ca2a414

                             GET
                             Get details of a specified messaging group. Description of returned json in Create a new messaging group.
                            Headers
                            Authorization: BimPlus 9c1874a62c974dcfa75e0132c423a088
                            Content-Type: application/json
                            
                            Status
                            Status: 200 OK
                            
                            JSON
                            {
                              "systemGroup":{
                                "id":"242fab5a-fce6-4413-900b-5f5b6ca2a414",
                                "name":"Bimplusdevelopers",
                                "description":""
                              },
                              "usersIdList":["61c9c325-52a2-21b5-47b6-0a06e7152ff9",
                                "6be10633-5950-319f-eae0-12dec2c04219",
                                "3b638075-24cd-cb2b-5464-fa955d2bd1e0"
                              ]
                            }




                            • No labels