Betting.WebApi

<back to all web services

CorrectUserAddress

Requires Authentication
The following routes are available for this service:
POST/cmd/users/correct/address
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 GPSCoordinates implements IConvertible
{
    double? lat;
    double? lng;

    GPSCoordinates({this.lat,this.lng});
    GPSCoordinates.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        lat = JsonConverters.toDouble(json['lat']);
        lng = JsonConverters.toDouble(json['lng']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'lat': lat,
        'lng': lng
    };

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

class Address implements IConvertible
{
    String? street;
    String? city;
    String? state;
    String? postalCode;
    Ref? country;
    GPSCoordinates? gps;
    RecordDictionary<String,String>? data;

    Address({this.street,this.city,this.state,this.postalCode,this.country,this.gps,this.data});
    Address.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        street = json['street'];
        city = json['city'];
        state = json['state'];
        postalCode = json['postalCode'];
        country = JsonConverters.fromJson(json['country'],'Ref',context!);
        gps = JsonConverters.fromJson(json['gps'],'GPSCoordinates',context!);
        data = JsonConverters.fromJson(json['data'],'RecordDictionary<String,String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'street': street,
        'city': city,
        'state': state,
        'postalCode': postalCode,
        'country': JsonConverters.toJson(country,'Ref',context!),
        'gps': JsonConverters.toJson(gps,'GPSCoordinates',context!),
        'data': JsonConverters.toJson(data,'RecordDictionary<String,String>',context!)
    };

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

class CorrectUserAddress implements IConvertible
{
    String? id;
    Address? address;

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

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

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

    getTypeName() => "CorrectUserAddress";
    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> {
    'Ref': TypeInfo(TypeOf.Class, create:() => Ref()),
    'GPSCoordinates': TypeInfo(TypeOf.Class, create:() => GPSCoordinates()),
    'Address': TypeInfo(TypeOf.Class, create:() => Address()),
    'RecordDictionary<String,String>': TypeInfo(TypeOf.Class, create:() => RecordDictionary<String,String>()),
    'CorrectUserAddress': TypeInfo(TypeOf.Class, create:() => CorrectUserAddress()),
    'RecordDictionary<TKey,TVal>': TypeInfo(TypeOf.GenericDef,create:() => RecordDictionary()),
});

Dart CorrectUserAddress 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/users/correct/address HTTP/1.1 
Host: api.sbbet.ath.cx 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	address: 
	{
		street: String,
		city: String,
		state: String,
		postalCode: String,
		country: 
		{
			id: String,
			val: String
		},
		gps: 
		{
			lat: 0,
			lng: 0
		},
		data: 
		{
			String: 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
	}
}