| POST | /cmd/slips/cancellation/resolve |
|---|
import 'package:servicestack/servicestack.dart';
class BettingApp implements IConvertible
{
String? name;
String? version;
BettingApp({this.name,this.version});
BettingApp.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
name = json['name'];
version = json['version'];
return this;
}
Map<String, dynamic> toJson() => {
'name': name,
'version': version
};
getTypeName() => "BettingApp";
TypeContext? context = _ctx;
}
class Ref implements IConvertible
{
String? id;
String? val;
Ref({this.id,this.val});
Ref.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
val = json['val'];
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'val': val
};
getTypeName() => "Ref";
TypeContext? context = _ctx;
}
class RefEx extends Ref implements IConvertible
{
RecordDictionary<String,String>? data;
RefEx({this.data});
RefEx.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
data = JsonConverters.fromJson(json['data'],'RecordDictionary<String,String>',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'data': JsonConverters.toJson(data,'RecordDictionary<String,String>',context!)
});
getTypeName() => "RefEx";
TypeContext? context = _ctx;
}
class Origin implements IConvertible
{
BettingApp? application;
String? ip;
RefEx? organization;
Ref? region;
Ref? locationGroup;
RefEx? location;
RefEx? device;
Ref? clerk;
Origin({this.application,this.ip,this.organization,this.region,this.locationGroup,this.location,this.device,this.clerk});
Origin.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
application = JsonConverters.fromJson(json['application'],'BettingApp',context!);
ip = json['ip'];
organization = JsonConverters.fromJson(json['organization'],'RefEx',context!);
region = JsonConverters.fromJson(json['region'],'Ref',context!);
locationGroup = JsonConverters.fromJson(json['locationGroup'],'Ref',context!);
location = JsonConverters.fromJson(json['location'],'RefEx',context!);
device = JsonConverters.fromJson(json['device'],'RefEx',context!);
clerk = JsonConverters.fromJson(json['clerk'],'Ref',context!);
return this;
}
Map<String, dynamic> toJson() => {
'application': JsonConverters.toJson(application,'BettingApp',context!),
'ip': ip,
'organization': JsonConverters.toJson(organization,'RefEx',context!),
'region': JsonConverters.toJson(region,'Ref',context!),
'locationGroup': JsonConverters.toJson(locationGroup,'Ref',context!),
'location': JsonConverters.toJson(location,'RefEx',context!),
'device': JsonConverters.toJson(device,'RefEx',context!),
'clerk': JsonConverters.toJson(clerk,'Ref',context!)
};
getTypeName() => "Origin";
TypeContext? context = _ctx;
}
class BetPlacementStatus
{
static const BetPlacementStatus Pending = const BetPlacementStatus._(0);
static const BetPlacementStatus Accepted = const BetPlacementStatus._(2);
static const BetPlacementStatus Rejected = const BetPlacementStatus._(3);
static const BetPlacementStatus Failed = const BetPlacementStatus._(4);
final int _value;
const BetPlacementStatus._(this._value);
int get value => _value;
static List<BetPlacementStatus> get values => const [Pending,Accepted,Rejected,Failed];
}
class Bet implements IConvertible
{
String? id;
BetPlacementStatus? placementStatus;
Map<String,String?>? payload;
Bet({this.id,this.placementStatus,this.payload});
Bet.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
placementStatus = JsonConverters.fromJson(json['placementStatus'],'BetPlacementStatus',context!);
payload = JsonConverters.toStringMap(json['payload']);
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'placementStatus': JsonConverters.toJson(placementStatus,'BetPlacementStatus',context!),
'payload': payload
};
getTypeName() => "Bet";
TypeContext? context = _ctx;
}
class ResolveSlipCancellation implements IConvertible
{
String? id;
String? slipId;
Origin? origin;
List<Bet>? bets;
ResolveSlipCancellation({this.id,this.slipId,this.origin,this.bets});
ResolveSlipCancellation.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
slipId = json['slipId'];
origin = JsonConverters.fromJson(json['origin'],'Origin',context!);
bets = JsonConverters.fromJson(json['bets'],'List<Bet>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'slipId': slipId,
'origin': JsonConverters.toJson(origin,'Origin',context!),
'bets': JsonConverters.toJson(bets,'List<Bet>',context!)
};
getTypeName() => "ResolveSlipCancellation";
TypeContext? context = _ctx;
}
class RecordDictionary<TKey,TVal> extends Map<TKey,TVal?> implements IConvertible
{
RecordDictionary();
RecordDictionary.fromJson(Map<String, dynamic> json) : super.fromJson(json);
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
return this;
}
Map<String, dynamic> toJson() => super.toJson();
getTypeName() => "RecordDictionary<$TKey,$TVal>";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.sbbet.ath.cx', types: <String, TypeInfo> {
'BettingApp': TypeInfo(TypeOf.Class, create:() => BettingApp()),
'Ref': TypeInfo(TypeOf.Class, create:() => Ref()),
'RefEx': TypeInfo(TypeOf.Class, create:() => RefEx()),
'RecordDictionary<String,String>': TypeInfo(TypeOf.Class, create:() => RecordDictionary<String,String>()),
'Origin': TypeInfo(TypeOf.Class, create:() => Origin()),
'BetPlacementStatus': TypeInfo(TypeOf.Enum, enumValues:BetPlacementStatus.values),
'Bet': TypeInfo(TypeOf.Class, create:() => Bet()),
'ResolveSlipCancellation': TypeInfo(TypeOf.Class, create:() => ResolveSlipCancellation()),
'List<Bet>': TypeInfo(TypeOf.Class, create:() => <Bet>[]),
'RecordDictionary<TKey,TVal>': TypeInfo(TypeOf.GenericDef,create:() => RecordDictionary()),
});
Dart ResolveSlipCancellation DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /cmd/slips/cancellation/resolve HTTP/1.1
Host: api.sbbet.ath.cx
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<ResolveSlipCancellation xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Betting.WebApi.ServiceModel">
<Bets>
<ResolveSlipCancellation.Bet>
<Id>String</Id>
<RejectionReason>String</RejectionReason>
<Status>Canceled</Status>
</ResolveSlipCancellation.Bet>
</Bets>
<Id>String</Id>
<Origin xmlns:d2p1="http://schemas.datacontract.org/2004/07/Betting.Common">
<d2p1:Application>
<d2p1:Name>String</d2p1:Name>
<d2p1:Version>String</d2p1:Version>
</d2p1:Application>
<d2p1:Clerk xmlns:d3p1="http://schemas.datacontract.org/2004/07/Starnet.Common">
<d3p1:_x003C_Id_x003E_k__BackingField>String</d3p1:_x003C_Id_x003E_k__BackingField>
<d3p1:_x003C_Val_x003E_k__BackingField>String</d3p1:_x003C_Val_x003E_k__BackingField>
</d2p1:Clerk>
<d2p1:Device xmlns:d3p1="http://schemas.datacontract.org/2004/07/Starnet.Common">
<d3p1:_x003C_Id_x003E_k__BackingField>String</d3p1:_x003C_Id_x003E_k__BackingField>
<d3p1:_x003C_Val_x003E_k__BackingField>String</d3p1:_x003C_Val_x003E_k__BackingField>
<d3p1:_x003C_Data_x003E_k__BackingField xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:KeyValueOfstringstring>
<d4p1:Key>String</d4p1:Key>
<d4p1:Value>String</d4p1:Value>
</d4p1:KeyValueOfstringstring>
</d3p1:_x003C_Data_x003E_k__BackingField>
</d2p1:Device>
<d2p1:IP>String</d2p1:IP>
<d2p1:Location xmlns:d3p1="http://schemas.datacontract.org/2004/07/Starnet.Common">
<d3p1:_x003C_Id_x003E_k__BackingField>String</d3p1:_x003C_Id_x003E_k__BackingField>
<d3p1:_x003C_Val_x003E_k__BackingField>String</d3p1:_x003C_Val_x003E_k__BackingField>
<d3p1:_x003C_Data_x003E_k__BackingField xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:KeyValueOfstringstring>
<d4p1:Key>String</d4p1:Key>
<d4p1:Value>String</d4p1:Value>
</d4p1:KeyValueOfstringstring>
</d3p1:_x003C_Data_x003E_k__BackingField>
</d2p1:Location>
<d2p1:LocationGroup xmlns:d3p1="http://schemas.datacontract.org/2004/07/Starnet.Common">
<d3p1:_x003C_Id_x003E_k__BackingField>String</d3p1:_x003C_Id_x003E_k__BackingField>
<d3p1:_x003C_Val_x003E_k__BackingField>String</d3p1:_x003C_Val_x003E_k__BackingField>
</d2p1:LocationGroup>
<d2p1:Organization xmlns:d3p1="http://schemas.datacontract.org/2004/07/Starnet.Common">
<d3p1:_x003C_Id_x003E_k__BackingField>String</d3p1:_x003C_Id_x003E_k__BackingField>
<d3p1:_x003C_Val_x003E_k__BackingField>String</d3p1:_x003C_Val_x003E_k__BackingField>
<d3p1:_x003C_Data_x003E_k__BackingField xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:KeyValueOfstringstring>
<d4p1:Key>String</d4p1:Key>
<d4p1:Value>String</d4p1:Value>
</d4p1:KeyValueOfstringstring>
</d3p1:_x003C_Data_x003E_k__BackingField>
</d2p1:Organization>
<d2p1:Region xmlns:d3p1="http://schemas.datacontract.org/2004/07/Starnet.Common">
<d3p1:_x003C_Id_x003E_k__BackingField>String</d3p1:_x003C_Id_x003E_k__BackingField>
<d3p1:_x003C_Val_x003E_k__BackingField>String</d3p1:_x003C_Val_x003E_k__BackingField>
</d2p1:Region>
</Origin>
<SlipId>String</SlipId>
</ResolveSlipCancellation>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<ResponseStatus xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<ErrorCode>String</ErrorCode>
<Message>String</Message>
<StackTrace>String</StackTrace>
<Errors>
<ResponseError>
<ErrorCode>String</ErrorCode>
<FieldName>String</FieldName>
<Message>String</Message>
<Meta xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:KeyValueOfstringstring>
<d4p1:Key>String</d4p1:Key>
<d4p1:Value>String</d4p1:Value>
</d4p1:KeyValueOfstringstring>
</Meta>
</ResponseError>
</Errors>
<Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringstring>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>String</d2p1:Value>
</d2p1:KeyValueOfstringstring>
</Meta>
</ResponseStatus>