BokaMera.API.Host

<back to all web services

SendEmailToCompany

The following routes are available for this service:
POST/messages/sendemailtocompanySend email to company with id or sitepathThis is used by the homepage to send emails to the company
namespace BokaMera.API.ServiceModel.Dtos

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type MessageLogQueryResponse() = 
        ///<summary>
        ///The message log id
        ///</summary>
        [<ApiMember(Description="The message log id")>]
        member val Id:Int32 = new Int32() with get,set

        ///<summary>
        ///The booking id for the message (if connected to a booking).
        ///</summary>
        [<ApiMember(Description="The booking id for the message (if connected to a booking).")>]
        member val BookingId:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///The message receiver. Either a email or a mobile phone number.
        ///</summary>
        [<ApiMember(Description="The message receiver. Either a email or a mobile phone number.")>]
        member val Receiver:String = null with get,set

        ///<summary>
        ///Message Title.
        ///</summary>
        [<ApiMember(Description="Message Title.")>]
        member val MessageTitle:String = null with get,set

        ///<summary>
        ///Message Storage Url.
        ///</summary>
        [<ApiMember(Description="Message Storage Url.")>]
        member val StorageUrl:String = null with get,set

        ///<summary>
        ///Message Body.
        ///</summary>
        [<ApiMember(Description="Message Body.")>]
        member val MessageBody:String = null with get,set

        ///<summary>
        ///When message was created.
        ///</summary>
        [<ApiMember(Description="When message was created.")>]
        member val Created:DateTime = new DateTime() with get,set

        ///<summary>
        ///When the message will be sent.
        ///</summary>
        [<ApiMember(Description="When the message will be sent.")>]
        member val ToSendDate:DateTime = new DateTime() with get,set

        ///<summary>
        ///When the message was sent.
        ///</summary>
        [<ApiMember(Description="When the message was sent.")>]
        member val SentDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        ///<summary>
        ///If Message is sent
        ///</summary>
        [<ApiMember(Description="If Message is sent")>]
        member val Sent:Boolean = new Boolean() with get,set

        ///<summary>
        ///Number of retries to send the message
        ///</summary>
        [<ApiMember(Description="Number of retries to send the message")>]
        member val MessageRetries:Int32 = new Int32() with get,set

        ///<summary>
        ///Send Method. 1 = Email, 2 = SMS
        ///</summary>
        [<ApiMember(Description="Send Method. 1 = Email, 2 = SMS")>]
        member val SendMethodId:Int32 = new Int32() with get,set

    [<ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)>]
    [<AllowNullLiteral>]
    type SendEmailToCompany() = 
        ///<summary>
        ///The company id, if empty you will need to provide the sitepath instead.
        ///</summary>
        [<ApiMember(Description="The company id, if empty you will need to provide the sitepath instead.")>]
        member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set

        ///<summary>
        ///Message Title.
        ///</summary>
        [<ApiMember(Description="Message Title.")>]
        member val MessageTitle:String = null with get,set

        ///<summary>
        ///Message Body.
        ///</summary>
        [<ApiMember(Description="Message Body.")>]
        member val MessageBody:String = null with get,set

        ///<summary>
        ///Message Sender Name.
        ///</summary>
        [<ApiMember(Description="Message Sender Name.")>]
        member val Name:String = null with get,set

        ///<summary>
        ///Message Sender Email.
        ///</summary>
        [<ApiMember(Description="Message Sender Email.")>]
        member val Email:String = null with get,set

        ///<summary>
        ///Message Sender Phone Number.
        ///</summary>
        [<ApiMember(Description="Message Sender Phone Number.")>]
        member val Phone:String = null with get,set

        ///<summary>
        ///The homeage sitepath.
        ///</summary>
        [<ApiMember(Description="The homeage sitepath.")>]
        member val SitePath:String = null with get,set

F# SendEmailToCompany DTOs

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

HTTP + JSV

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

POST /messages/sendemailtocompany HTTP/1.1 
Host: api.bokamera.se 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	CompanyId: 00000000-0000-0000-0000-000000000000,
	MessageTitle: String,
	MessageBody: String,
	Name: String,
	Email: String,
	Phone: String,
	SitePath: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Id: 0,
	BookingId: 0,
	Receiver: String,
	MessageTitle: String,
	StorageUrl: String,
	MessageBody: String,
	SentDate: "0001-01-01T00:00:00",
	Sent: False,
	MessageRetries: 0,
	SendMethodId: 0
}