Cochrane+ App API

<back to all web services

SubmitThunderBoltAction

Requires Authentication
The following routes are available for this service:
POST/thunderbolt/submit
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports WebService.ServiceModel
Imports WebService.ServiceModel.Base
Imports BusinessLogic.Entities
Imports CommonService.Api.Models.Base
Imports CommonService.Api.Models.Shared

Namespace Global

    Namespace BusinessLogic.Entities

        Public Enum ContactInteractionPlatform
            None = 0
            Whatsapp = 1
            Linkus = 2
            Mobile = 3
            Outlook = 4
            LinkedIn = 5
            Telegram = 6
            Signal = 7
            Sms = 8
        End Enum
    End Namespace

    Namespace CommonService.Api.Models.Base

        Public Partial Class ApiServiceResponse
            Implements IServiceResponse
            Public Overridable Property Description As String
            Public Overridable Property Heading As String
            Public Overridable Property WasSuccessful As Boolean
            Public Overridable Property ModelState As Object
        End Class
    End Namespace

    Namespace CommonService.Api.Models.Shared

        Public Partial Class EnumOption
            Public Overridable Property Value As Integer
            Public Overridable Property Label As String
        End Class
    End Namespace

    Namespace WebService.ServiceModel

        Public Partial Class ContactData
            Public Overridable Property ContactId As Integer
            Public Overridable Property ContactName As String
            Public Overridable Property Email As String
            Public Overridable Property PhoneNumber As String
        End Class

        Public Partial Class GetThunderBoltActionsResponse
            Inherits ApiServiceResponse
            Public Sub New()
                ThunderBoltActions = New List(Of ThunderBoltActionData)
                ThunderBoltActionEvents = New List(Of ThunderBoltActionEventData)
                Contacts = New List(Of ContactData)
            End Sub

            Public Overridable Property DailyActionsNumber As Integer
            Public Overridable Property SupportingDocumentProbability As Integer
            Public Overridable Property ThunderBoltActions As List(Of ThunderBoltActionData)
            Public Overridable Property ThunderBoltActionEvents As List(Of ThunderBoltActionEventData)
            Public Overridable Property Contacts As List(Of ContactData)
        End Class

        Public Partial Class SubmitThunderBoltAction
            Inherits ApiServiceRequest
            Public Overridable Property ActionId As Integer
            Public Overridable Property Platform As ContactInteractionPlatform
            Public Overridable Property Number As String
            Public Overridable Property Email As String
            Public Overridable Property Notes As String
            Public Overridable Property DateTime As Date
            Public Overridable Property ContactId As Integer
        End Class

        Public Partial Class SubmitThunderBoltActionResponse
            Inherits GetThunderBoltActionsResponse
            Public Overridable Property ThunderboltActionEventId As Integer
        End Class

        Public Partial Class ThunderBoltActionData
            Public Sub New()
                ContactInteractionPlatforms = New List(Of EnumOption)
            End Sub

            Public Overridable Property Id As Integer
            Public Overridable Property ActionName As String
            Public Overridable Property Color As String
            Public Overridable Property DailyActionCount As Integer
            Public Overridable Property ShowNumberInput As Boolean
            Public Overridable Property ShowEmailInput As Boolean
            Public Overridable Property ShowPlatformInput As Boolean
            Public Overridable Property ShowDateTimeInput As Boolean
            Public Overridable Property ContactInteractionPlatforms As List(Of EnumOption)
        End Class

        Public Partial Class ThunderBoltActionEventData
            Public Overridable Property Id As Integer
            Public Overridable Property CreatedDate As String
            Public Overridable Property ActionId As Integer
            Public Overridable Property ActionName As String
            Public Overridable Property Color As String
            Public Overridable Property Notes As String
        End Class
    End Namespace

    Namespace WebService.ServiceModel.Base

        Public Partial Class ApiServiceRequest
            Implements IServiceRequest
            Implements IHasApiKey
            Implements IHasDeviceInfo
            '''<Summary>
            '''The API Key required for authentication
            '''</Summary>
            <ApiMember(DataType:="string", Description:="The API Key required for authentication", IsRequired:=true)>
            Public Overridable Property ApiKey As String

            '''<Summary>
            '''Latitude of the user making this request
            '''</Summary>
            <ApiMember(DataType:="double", Description:="Latitude of the user making this request")>
            Public Overridable Property Latitude As Double

            '''<Summary>
            '''Longitude of the user making this request
            '''</Summary>
            <ApiMember(DataType:="double", Description:="Longitude of the user making this request")>
            Public Overridable Property Longitude As Double
        End Class
    End Namespace
End Namespace

VB.NET SubmitThunderBoltAction DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other

HTTP + OTHER

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /thunderbolt/submit HTTP/1.1 
Host: cochraneplus-api-dev.happen.zone 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"actionId":0,"platform":0,"number":"String","email":"String","notes":"String","dateTime":"0001-01-01T00:00:00.0000000","contactId":0,"apiKey":"String","latitude":0,"longitude":0}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"thunderboltActionEventId":0,"dailyActionsNumber":0,"supportingDocumentProbability":0,"thunderBoltActions":[{"id":0,"actionName":"String","color":"String","dailyActionCount":0,"showNumberInput":false,"showEmailInput":false,"showPlatformInput":false,"showDateTimeInput":false,"contactInteractionPlatforms":[{"value":0,"label":"String"}]}],"thunderBoltActionEvents":[{"id":0,"createdDate":"String","actionId":0,"actionName":"String","color":"String","notes":"String"}],"contacts":[{}],"description":"String","heading":"String","wasSuccessful":false,"modelState":{}}