Betting.WebApi

<back to all web services

StoreUserProfile

The following routes are available for this service:
POST/cmd/users/profile
"use strict";
export class Name {
    /** @param {{first?:string,last?:string,full?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    first;
    /** @type {string} */
    last;
    /** @type {string} */
    full;
}
export class Ref {
    /** @param {{id?:string,val?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    id;
    /** @type {string} */
    val;
}
export class GPSCoordinates {
    /** @param {{lat?:number,lng?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    lat;
    /** @type {number} */
    lng;
}
export class Address {
    /** @param {{street?:string,city?:string,state?:string,postalCode?:string,country?:Ref,gps?:GPSCoordinates,data?:RecordDictionary<string, string>}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    street;
    /** @type {string} */
    city;
    /** @type {string} */
    state;
    /** @type {string} */
    postalCode;
    /** @type {Ref} */
    country;
    /** @type {GPSCoordinates} */
    gps;
    /** @type {RecordDictionary<string, string>} */
    data;
}
export class ContactInfo {
    /** @param {{phone?:string,email?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    phone;
    /** @type {string} */
    email;
}
export class Person {
    /** @param {{name?:Name,address?:Address,dateOfBirth?:string,contactInfo?:ContactInfo}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {Name} */
    name;
    /** @type {Address} */
    address;
    /** @type {?string} */
    dateOfBirth;
    /** @type {ContactInfo} */
    contactInfo;
}
export class BettorWalletProfile {
    /** @param {{id?:string,username?:string,person?:Person,data?:RecordDictionary<string, string>}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    id;
    /** @type {string} */
    username;
    /** @type {Person} */
    person;
    /** @type {RecordDictionary<string, string>} */
    data;
}
export class StoreUserProfile {
    /** @param {{profile?:BettorWalletProfile}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {BettorWalletProfile} */
    profile;
}
class Dictionary {}
/** @typedef TKey {any} */
/** @typedef  TVal {any} */
export class RecordDictionary extends Dictionary {
    constructor(init) { super(init); Object.assign(this, init) }
}

JavaScript StoreUserProfile DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

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/csv
Content-Type: text/csv
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-01T00:00:00.0000000Z","contactInfo":{"phone":"String","email":"String"}},"data":{"String":"String"}}}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}