Greyhounds.WebApi

<back to all web services

CancelBet

The following routes are available for this service:
POST/bets/cancel
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 Reference implements IConvertible
{
    String? id;
    String? value;

    Reference({this.id,this.value});
    Reference.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        value = json['value'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'value': value
    };

    getTypeName() => "Reference";
    TypeContext? context = _ctx;
}

class Origin implements IConvertible
{
    BettingApp? application;
    String? ip;
    Reference? organization;
    Reference? device;
    Reference? location;
    Reference? locationGroup;
    Reference? clerk;

    Origin({this.application,this.ip,this.organization,this.device,this.location,this.locationGroup,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'],'Reference',context!);
        device = JsonConverters.fromJson(json['device'],'Reference',context!);
        location = JsonConverters.fromJson(json['location'],'Reference',context!);
        locationGroup = JsonConverters.fromJson(json['locationGroup'],'Reference',context!);
        clerk = JsonConverters.fromJson(json['clerk'],'Reference',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'application': JsonConverters.toJson(application,'BettingApp',context!),
        'ip': ip,
        'organization': JsonConverters.toJson(organization,'Reference',context!),
        'device': JsonConverters.toJson(device,'Reference',context!),
        'location': JsonConverters.toJson(location,'Reference',context!),
        'locationGroup': JsonConverters.toJson(locationGroup,'Reference',context!),
        'clerk': JsonConverters.toJson(clerk,'Reference',context!)
    };

    getTypeName() => "Origin";
    TypeContext? context = _ctx;
}

class CancelBet implements IConvertible
{
    String? id;
    String? slipId;
    Origin? origin;

    CancelBet({this.id,this.slipId,this.origin});
    CancelBet.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!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'slipId': slipId,
        'origin': JsonConverters.toJson(origin,'Origin',context!)
    };

    getTypeName() => "CancelBet";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'grh1.api.bettor.webhop.biz', types: <String, TypeInfo> {
    'BettingApp': TypeInfo(TypeOf.Class, create:() => BettingApp()),
    'Reference': TypeInfo(TypeOf.Class, create:() => Reference()),
    'Origin': TypeInfo(TypeOf.Class, create:() => Origin()),
    'CancelBet': TypeInfo(TypeOf.Class, create:() => CancelBet()),
});

Dart CancelBet 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 /bets/cancel HTTP/1.1 
Host: grh1.api.bettor.webhop.biz 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	slipId: String,
	origin: 
	{
		application: 
		{
			name: String,
			version: String
		},
		ip: String,
		organization: 
		{
			id: String,
			value: String
		},
		device: 
		{
			id: String,
			value: String
		},
		location: 
		{
			id: String,
			value: String
		},
		locationGroup: 
		{
			id: String,
			value: String
		},
		clerk: 
		{
			id: String,
			value: String
		}
	}
}
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
	}
}