| POST | /bets/place |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using FBiHBetting.Aggregator.WebApi.ServiceModel;
namespace FBiHBetting.Aggregator.WebApi.ServiceModel
{
public partial class BetPlacement
{
public virtual string Id { get; set; }
public virtual string BetCode { get; set; }
public virtual BettorState BettorState { get; set; }
public virtual Origin Origin { get; set; }
public virtual DateTime BetIssuedAt { get; set; }
public virtual bool IsLive { get; set; }
public virtual bool IsSystemBet { get; set; }
public virtual Dictionary<string, string> Payload { get; set; }
public virtual PaymentOrigin PaymentOrigin { get; set; }
public virtual PayinRecap PayinRecap { get; set; }
public virtual PayoutRecap PossiblePayoutRecap { get; set; }
}
public partial class BettorState
{
public virtual string Id { get; set; }
public virtual decimal AccountBalanceBeforeBet { get; set; }
public virtual decimal AccountBalanceAfterBet { get; set; }
}
public partial class Origin
{
public virtual Reference Device { get; set; }
public virtual Reference Location { get; set; }
public virtual Reference LocationGroup { get; set; }
public virtual Reference Organization { get; set; }
public virtual ProductInstanceRef ProductInstance { get; set; }
}
public partial class PayinRecap
{
public virtual decimal Payin { get; set; }
public virtual decimal TaxAmount { get; set; }
public virtual decimal Stake { get; set; }
}
public enum PaymentOrigin
{
POS = 0,
SMS = 1,
Internet = 2,
}
public partial class PayoutRecap
{
public virtual decimal Winnings { get; set; }
public virtual decimal TaxAmount { get; set; }
public virtual decimal Payout { get; set; }
}
public enum ProductCategory
{
Sportsbook = 0,
RNG = 1,
}
public partial class ProductInstanceRef
{
public virtual string Id { get; set; }
public virtual string Name { get; set; }
public virtual ProductReference Product { get; set; }
}
public partial class ProductReference
{
public virtual string Id { get; set; }
public virtual string Value { get; set; }
public virtual ProductCategory Category { get; set; }
public virtual Reference ProductProvider { get; set; }
}
public partial class Reference
{
public virtual string Id { get; set; }
public virtual string Value { get; set; }
}
public partial class ReportBetPlacements
{
public virtual List<BetPlacement> BetPlacements { get; set; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /bets/place HTTP/1.1
Host: fbihtaapi.bettor.webhop.biz
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
betPlacements:
[
{
id: String,
betCode: String,
bettorState:
{
id: String,
accountBalanceBeforeBet: 0,
accountBalanceAfterBet: 0
},
origin:
{
device:
{
id: String,
value: String
},
location:
{
id: String,
value: String
},
locationGroup:
{
id: String,
value: String
},
organization:
{
id: String,
value: String
},
productInstance:
{
id: String,
name: String,
product:
{
id: String,
value: String,
category: 0,
productProvider:
{
id: String,
value: String
}
}
}
},
betIssuedAt: 0001-01-01,
isLive: False,
isSystemBet: False,
payload:
{
String: String
},
paymentOrigin: 0,
payinRecap:
{
payin: 0,
taxAmount: 0,
stake: 0
},
possiblePayoutRecap:
{
winnings: 0,
taxAmount: 0,
payout: 0
}
}
]
}
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
}
}