Betting.WebApi

<back to all web services

NotifyFrontend

The following routes are available for this service:
All Verbs/cmd/notify/frontend/
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*


open class NotifyFrontend
{
    open var acceptedSlipInfo:AcceptedSlipInfo? = null
    open var errorInfo:ErrorInfo? = null
    open var confirmationInfo:ConfirmationInfo? = null
    open var slipCancellationId:String? = null
    open var walletUpdatedInfo:WalletUpdateInfo? = null
    open var userNotificationsUpdated:UserNotificationsUpdatedInfo? = null
    open var applicationEventsUpdated:ApplicationEventsUpdated? = null
    open var slipDeliveryIssueRefundRequestUpdated:SlipDeliveryIssueRefundRequestUpdated? = null
}

open class AcceptedSlipInfo
{
    open var id:String? = null
    open var origin:Origin? = null
    open var bettor:Ref? = null
    open var slipSubmissionStatus:SlipSubmissionStatus? = null
    open var payload:RecordDictionary<String, String>? = null
}

open class Origin
{
    open var application:BettingApp? = null
    open var ip:String? = null
    open var organization:RefEx? = null
    open var region:Ref? = null
    open var locationGroup:Ref? = null
    open var location:RefEx? = null
    open var device:RefEx? = null
    open var clerk:Ref? = null
}

open class BettingApp
{
    open var name:String? = null
    open var version:String? = null
}

open class RefEx : Ref()
{
    @SerializedName("data") open var Data:RecordDictionary<String, String>? = null
}

open class Ref
{
    open var id:String? = null
    @SerializedName("val") open var Val:String? = null
}

open class RecordDictionary<TKey, TVal> : HashMap<TKey,TVal>()
{
}

enum class SlipSubmissionStatus(val value:Int)
{
    @SerializedName("0") Pending(0),
    @SerializedName("2") Accepted(2),
    @SerializedName("3") Rejected(3),
    @SerializedName("4") Failed(4),
}

open class ErrorInfo
{
    open var origin:Origin? = null
    open var errorCode:String? = null
    open var errorDescription:String? = null
    open var payload:HashMap<String,String>? = null
}

open class ConfirmationInfo
{
    open var bettor:Ref? = null
    open var origin:Origin? = null
    open var confirmationCode:String? = null
    open var confirmationDescription:String? = null
    open var payload:HashMap<String,String>? = null
}

open class WalletUpdateInfo
{
    open var bettor:Ref? = null
    open var origin:Origin? = null
    open var transactionInfo:WalletTransactionInfo? = null
}

open class WalletTransactionInfo
{
    open var reason:String? = null
}

open class UserNotificationsUpdatedInfo
{
    open var id:String? = null
}

open class ApplicationEventsUpdated
{
}

open class SlipDeliveryIssueRefundRequestUpdated
{
}

Kotlin NotifyFrontend 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 /cmd/notify/frontend/ HTTP/1.1 
Host: api.beto2.webhop.biz 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	acceptedSlipInfo: 
	{
		id: String,
		origin: 
		{
			application: 
			{
				name: String,
				version: String
			},
			ip: String,
			organization: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			region: 
			{
				id: String,
				val: String
			},
			locationGroup: 
			{
				id: String,
				val: String
			},
			location: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			device: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			clerk: 
			{
				id: String,
				val: String
			}
		},
		bettor: 
		{
			id: String,
			val: String
		},
		slipSubmissionStatus: 0,
		payload: 
		{
			String: String
		}
	},
	errorInfo: 
	{
		origin: 
		{
			application: 
			{
				name: String,
				version: String
			},
			ip: String,
			organization: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			region: 
			{
				id: String,
				val: String
			},
			locationGroup: 
			{
				id: String,
				val: String
			},
			location: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			device: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			clerk: 
			{
				id: String,
				val: String
			}
		},
		errorCode: String,
		errorDescription: String,
		payload: 
		{
			String: String
		}
	},
	confirmationInfo: 
	{
		bettor: 
		{
			id: String,
			val: String
		},
		origin: 
		{
			application: 
			{
				name: String,
				version: String
			},
			ip: String,
			organization: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			region: 
			{
				id: String,
				val: String
			},
			locationGroup: 
			{
				id: String,
				val: String
			},
			location: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			device: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			clerk: 
			{
				id: String,
				val: String
			}
		},
		confirmationCode: String,
		confirmationDescription: String,
		payload: 
		{
			String: String
		}
	},
	slipCancellationId: String,
	walletUpdatedInfo: 
	{
		bettor: 
		{
			id: String,
			val: String
		},
		origin: 
		{
			application: 
			{
				name: String,
				version: String
			},
			ip: String,
			organization: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			region: 
			{
				id: String,
				val: String
			},
			locationGroup: 
			{
				id: String,
				val: String
			},
			location: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			device: 
			{
				data: 
				{
					String: String
				},
				id: String,
				val: String
			},
			clerk: 
			{
				id: String,
				val: String
			}
		},
		transactionInfo: 
		{
			reason: String
		}
	},
	userNotificationsUpdated: 
	{
		id: String
	},
	applicationEventsUpdated: {},
	slipDeliveryIssueRefundRequestUpdated: {}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	errorCode: String,
	message: String,
	stackTrace: String,
	errors: 
	[
		{
			errorCode: String,
			fieldName: String,
			message: String,
			meta: 
			{
				String: String
			}
		}
	],
	meta: 
	{
		String: String
	}
}