Betting.WebApi

<back to all web services

InstallLocationProductInstance

Requires Authentication
The following routes are available for this service:
POST/cmd/locations/productInstances/install
import 'package:servicestack/servicestack.dart';

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 ProductReference implements IConvertible
{
    String? id;
    String? value;
    String? category;
    Ref? productProvider;

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

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        value = json['value'];
        category = json['category'];
        productProvider = JsonConverters.fromJson(json['productProvider'],'Ref',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'value': value,
        'category': category,
        'productProvider': JsonConverters.toJson(productProvider,'Ref',context!)
    };

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

class ProductInstanceRef implements IConvertible
{
    String? id;
    String? name;
    String? title;
    ProductReference? product;

    ProductInstanceRef({this.id,this.name,this.title,this.product});
    ProductInstanceRef.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        name = json['name'];
        title = json['title'];
        product = JsonConverters.fromJson(json['product'],'ProductReference',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'name': name,
        'title': title,
        'product': JsonConverters.toJson(product,'ProductReference',context!)
    };

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

class InstallLocationProductInstance implements IConvertible
{
    String? id;
    ProductInstanceRef? productInstance;

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

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        productInstance = JsonConverters.fromJson(json['productInstance'],'ProductInstanceRef',context!);
        return this;
    }

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

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

TypeContext _ctx = TypeContext(library: 'api.sbbet.ath.cx', types: <String, TypeInfo> {
    'Ref': TypeInfo(TypeOf.Class, create:() => Ref()),
    'ProductReference': TypeInfo(TypeOf.Class, create:() => ProductReference()),
    'ProductInstanceRef': TypeInfo(TypeOf.Class, create:() => ProductInstanceRef()),
    'InstallLocationProductInstance': TypeInfo(TypeOf.Class, create:() => InstallLocationProductInstance()),
});

Dart InstallLocationProductInstance 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/locations/productInstances/install HTTP/1.1 
Host: api.sbbet.ath.cx 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	productInstance: 
	{
		id: String,
		name: String,
		title: String,
		product: 
		{
			id: String,
			value: String,
			category: String,
			productProvider: 
			{
				id: String,
				val: 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
	}
}