Greyhounds.WebApi

<back to all web services

FindStimulations

The following routes are available for this service:
All Verbs/stimulations
namespace Greyhounds.WebApi.ServiceModel

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

    [<AllowNullLiteral>]
    type PaginatedQuery() = 
        member val CurrentPage:Int32 = new Int32() with get,set
        member val PageSize:Int32 = new Int32() with get,set

    type StimulationStatus =
        | Pending = 0
        | Canceled = 1
        | Executed = 2
        | Rejected = 3

    [<AllowNullLiteral>]
    type FindStimulations() = 
        inherit PaginatedQuery()
        member val TargetQry:String = null with get,set
        member val PrizeQry:String = null with get,set
        member val Status:Nullable<StimulationStatus> = new Nullable<StimulationStatus>() with get,set
        member val PeriodFrom:DateTime = new DateTime() with get,set
        member val PeriodTo:DateTime = new DateTime() with get,set

    type RoundStatus =
        | Pending = 0
        | InProgress = 1
        | Ended = 2

    [<AllowNullLiteral>]
    type RoundStats() = 
        member val Id:String = null with get,set
        member val CreatedAt:DateTime = new DateTime() with get,set
        member val Status:RoundStatus = new RoundStatus() with get,set
        member val CanceledCount:Int32 = new Int32() with get,set
        member val CanceledAmount:Decimal = new Decimal() with get,set
        member val BetCount:Int32 = new Int32() with get,set
        member val StakeAmount:Decimal = new Decimal() with get,set
        member val WinningsAmount:Decimal = new Decimal() with get,set
        member val BalanceAmount:Decimal = new Decimal() with get,set
        member val BalancePct:Decimal = new Decimal() with get,set

    [<AllowNullLiteral>]
    type PaginatedResult<T>() = 
        member val Data:ResizeArray<RoundStats> = null with get,set
        member val CurrentPage:Int32 = new Int32() with get,set
        member val PageSize:Int32 = new Int32() with get,set
        member val TotalItems:Int32 = new Int32() with get,set
        member val TotalPages:Int32 = new Int32() with get,set

F# FindStimulations 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 /stimulations HTTP/1.1 
Host: grh1.api.bettor.webhop.biz 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	targetQry: String,
	prizeQry: String,
	status: 0,
	periodFrom: 0001-01-01,
	periodTo: 0001-01-01,
	currentPage: 0,
	pageSize: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	data: 
	[
		{
			id: String,
			scheduledAt: 0001-01-01,
			scheduledBy: String,
			target: 
			{
				id: String,
				value: String
			},
			pool: 
			{
				id: 0,
				name: String
			},
			cancellationInfo: 
			{
				canceledBy: String,
				canceledAt: 0001-01-01
			},
			confirmationInfo: 
			{
				confirmedAt: 0001-01-01,
				slipId: String,
				betId: String,
				amountAwarded: 0
			},
			status: 0,
			failInfo: 
			{
				failures: 
				{
					String: String
				},
				lastFailAt: 0001-01-01,
				failureCount: 0
			}
		}
	],
	currentPage: 0,
	pageSize: 0,
	totalItems: 0,
	totalPages: 0
}