Betting.WebApi

<back to all web services

StoreUserProfile

The following routes are available for this service:
POST/cmd/users/profile
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    public static class StoreUserProfile
    {
        public BettorWalletProfile profile = null;
        
        public BettorWalletProfile getProfile() { return profile; }
        public StoreUserProfile setProfile(BettorWalletProfile value) { this.profile = value; return this; }
    }

    public static class BettorWalletProfile
    {
        public String id = null;
        public String username = null;
        public Person person = null;
        public RecordDictionary<String, String> data = null;
        
        public String getId() { return id; }
        public BettorWalletProfile setId(String value) { this.id = value; return this; }
        public String getUsername() { return username; }
        public BettorWalletProfile setUsername(String value) { this.username = value; return this; }
        public Person getPerson() { return person; }
        public BettorWalletProfile setPerson(Person value) { this.person = value; return this; }
        public RecordDictionary<String, String> getData() { return data; }
        public BettorWalletProfile setData(RecordDictionary<String, String> value) { this.data = value; return this; }
    }

    public static class Person
    {
        public Name name = null;
        public Address address = null;
        public Date dateOfBirth = null;
        public ContactInfo contactInfo = null;
        
        public Name getName() { return name; }
        public Person setName(Name value) { this.name = value; return this; }
        public Address getAddress() { return address; }
        public Person setAddress(Address value) { this.address = value; return this; }
        public Date getDateOfBirth() { return dateOfBirth; }
        public Person setDateOfBirth(Date value) { this.dateOfBirth = value; return this; }
        public ContactInfo getContactInfo() { return contactInfo; }
        public Person setContactInfo(ContactInfo value) { this.contactInfo = value; return this; }
    }

    public static class Name
    {
        public String first = null;
        public String last = null;
        public String full = null;
        
        public String getFirst() { return first; }
        public Name setFirst(String value) { this.first = value; return this; }
        public String getLast() { return last; }
        public Name setLast(String value) { this.last = value; return this; }
        public String getFull() { return full; }
        public Name setFull(String value) { this.full = value; return this; }
    }

    public static class Address
    {
        public String street = null;
        public String city = null;
        public String state = null;
        public String postalCode = null;
        public Ref country = null;
        public GPSCoordinates gps = null;
        public RecordDictionary<String, String> data = null;
        
        public String getStreet() { return street; }
        public Address setStreet(String value) { this.street = value; return this; }
        public String getCity() { return city; }
        public Address setCity(String value) { this.city = value; return this; }
        public String getState() { return state; }
        public Address setState(String value) { this.state = value; return this; }
        public String getPostalCode() { return postalCode; }
        public Address setPostalCode(String value) { this.postalCode = value; return this; }
        public Ref getCountry() { return country; }
        public Address setCountry(Ref value) { this.country = value; return this; }
        public GPSCoordinates getGps() { return gps; }
        public Address setGps(GPSCoordinates value) { this.gps = value; return this; }
        public RecordDictionary<String, String> getData() { return data; }
        public Address setData(RecordDictionary<String, String> value) { this.data = value; return this; }
    }

    public static class Ref
    {
        public String id = null;
        public String val = null;
        
        public String getId() { return id; }
        public Ref setId(String value) { this.id = value; return this; }
        public String getVal() { return val; }
        public Ref setVal(String value) { this.val = value; return this; }
    }

    public static class GPSCoordinates
    {
        public Double lat = null;
        public Double lng = null;
        
        public Double getLat() { return lat; }
        public GPSCoordinates setLat(Double value) { this.lat = value; return this; }
        public Double getLng() { return lng; }
        public GPSCoordinates setLng(Double value) { this.lng = value; return this; }
    }

    public static class RecordDictionary<TKey, TVal> extends HashMap<TKey,TVal>
    {
        
    }

    public static class ContactInfo
    {
        public String phone = null;
        public String email = null;
        
        public String getPhone() { return phone; }
        public ContactInfo setPhone(String value) { this.phone = value; return this; }
        public String getEmail() { return email; }
        public ContactInfo setEmail(String value) { this.email = value; return this; }
    }

}

Java StoreUserProfile 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/profile HTTP/1.1 
Host: api.sbbet.ath.cx 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	profile: 
	{
		id: String,
		username: String,
		person: 
		{
			name: 
			{
				first: String,
				last: String,
				full: String String
			},
			address: 
			{
				street: String,
				city: String,
				state: String,
				postalCode: String,
				country: 
				{
					id: String,
					val: String
				},
				gps: 
				{
					lat: 0,
					lng: 0
				},
				data: 
				{
					String: String
				}
			},
			dateOfBirth: 0001-01-01,
			contactInfo: 
			{
				phone: String,
				email: String
			}
		},
		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
	}
}