SMS Gateway API

<back to all web services

SMSSend

Saves the specified SMS and sends it for background processing

Requires Authentication
The following routes are available for this service:
POST/api/sendmessage
POST/api/sendmessage/immediate
POST/api/send
POST/api/sms/send
POST/api/send/immediate
POST/api/sms/send/immediate
namespace Eros.Subtle.Dvaravartman.Common.Model.ServiceModel

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

    [<AllowNullLiteral>]
    type CommResponse() = 
        member val CommId:Guid = new Guid() with get,set
        member val Reference:String = null with get,set
        member val Status:Boolean = new Boolean() with get,set
        member val Message:String = null with get,set

    [<AllowNullLiteral>]
    type BaseLicenseeEnforcedServiceModel() = 
        member val LicenseeId:Guid = new Guid() with get,set

    [<AllowNullLiteral>]
    type SMSContact() = 
        member val Name:String = null with get,set
        member val PhoneNumber:String = null with get,set
        member val ContactId:Guid = new Guid() with get,set

    [<AllowNullLiteral>]
    type SMSModel() = 
        inherit BaseLicenseeEnforcedServiceModel()
        member val From:SMSContact = null with get,set
        member val To:ResizeArray<SMSContact> = null with get,set
        member val MessageBody:String = null with get,set
        member val ReplyIsAllowed:Boolean = new Boolean() with get,set
        member val ReplyIsRequired:Boolean = new Boolean() with get,set
        member val Notes:String = null with get,set
        member val LinkedObjectId:Guid = new Guid() with get,set
        member val SuiteId:Guid = new Guid() with get,set

    ///<summary>
    ///Saves the specified SMS and sends it for background processing
    ///</summary>
    [<Api(Description="Saves the specified SMS and sends it for background processing")>]
    [<AllowNullLiteral>]
    type SMSSend() = 
        member val SMSModel:SMSModel = null with get,set
        member val CreateCommunicationReferencesImmediately:Boolean = new Boolean() with get,set

F# SMSSend 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 /api/sendmessage HTTP/1.1 
Host: production-eros-gateway-api-sms-wa.azurewebsites.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	SMSModel: 
	{
		From: 
		{
			Name: String,
			PhoneNumber: String,
			ContactId: 00000000000000000000000000000000
		},
		To: 
		[
			{
				Name: String,
				PhoneNumber: String,
				ContactId: 00000000000000000000000000000000
			}
		],
		MessageBody: String,
		ReplyIsAllowed: False,
		ReplyIsRequired: False,
		Notes: String,
		LinkedObjectId: 00000000000000000000000000000000,
		SuiteId: 00000000000000000000000000000000,
		LicenseeId: 00000000000000000000000000000000
	},
	CreateCommunicationReferencesImmediately: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	CommId: 00000000000000000000000000000000,
	Reference: String,
	Status: False,
	Message: String
}