Betting.WebApi

<back to all web services

RegisterOrganization

Requires Authentication
The following routes are available for this service:
POST/cmd/organizations
// @ts-nocheck

export class Ref
{
    public id: string;
    public val: string;

    public constructor(init?: Partial<Ref>) { (Object as any).assign(this, init); }
}

export class GPSCoordinates
{
    public lat: number;
    public lng: number;

    public constructor(init?: Partial<GPSCoordinates>) { (Object as any).assign(this, init); }
}

export class Address
{
    public street: string;
    public city: string;
    public state: string;
    public postalCode: string;
    public country: Ref;
    public gps: GPSCoordinates;
    public data: RecordDictionary<string, string>;

    public constructor(init?: Partial<Address>) { (Object as any).assign(this, init); }
}

export class Locale
{
    public timeZone?: Ref;
    public currency?: Ref;
    public language?: Ref;

    public constructor(init?: Partial<Locale>) { (Object as any).assign(this, init); }
}

export class WinningsExpirationPolicy
{
    public enabled: boolean;
    public interval: string;

    public constructor(init?: Partial<WinningsExpirationPolicy>) { (Object as any).assign(this, init); }
}

export enum OrganizationNature
{
    FirstParty = 1,
    Partner = 2,
}

export class IntegrationConnection
{
    public url?: string;
    public credentialsRef?: string;

    public constructor(init?: Partial<IntegrationConnection>) { (Object as any).assign(this, init); }
}

export class IntegrationInstance
{
    public id?: string;
    public integrationId?: string;
    public wallet?: IntegrationConnection;
    public partnerApi?: IntegrationConnection;
    public slipForwardingEnabled: boolean;

    public constructor(init?: Partial<IntegrationInstance>) { (Object as any).assign(this, init); }
}

export class OrganizationIntegrations
{
    public firstParty?: IntegrationInstance;
    public partner?: IntegrationInstance;

    public constructor(init?: Partial<OrganizationIntegrations>) { (Object as any).assign(this, init); }
}

export enum WalletPayoutMode
{
    RealTime = 0,
    BatchPayout = 1,
}

export class PayoutPolicy
{
    public selfService: WalletPayoutMode;
    public personal: WalletPayoutMode;

    public constructor(init?: Partial<PayoutPolicy>) { (Object as any).assign(this, init); }
}

export class RegisterOrganization
{
    public id?: string;
    public name?: string;
    public address?: Address;
    public locale?: Locale;
    public integrationsData?: RecordDictionary<string, string>;
    public winningsExpirationPolicy?: WinningsExpirationPolicy;
    public nature?: OrganizationNature;
    public integrations?: OrganizationIntegrations;
    public payoutPolicy?: PayoutPolicy;

    public constructor(init?: Partial<RegisterOrganization>) { (Object as any).assign(this, init); }
}

export class Dictionary<T> { [Key: string]: T; }

export class RecordDictionary<TKey, TVal> extends Dictionary<TVal>
{

    public constructor(init?: Partial<RecordDictionary<TKey, TVal>>) { super(); (Object as any).assign(this, init); }
}

TypeScript RegisterOrganization 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/organizations HTTP/1.1 
Host: api.bettor.webhop.biz 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"id":"String","name":"String","address":{"street":"String","city":"String","state":"String","postalCode":"String","country":{"id":"String","val":"String"},"gps":{"lat":0,"lng":0},"data":{"String":"String"}},"locale":{"timeZone":{"id":"String","val":"String"},"currency":{"id":"String","val":"String"},"language":{"id":"String","val":"String"}},"integrationsData":{"String":"String"},"winningsExpirationPolicy":{"enabled":false,"interval":"PT0S"},"nature":0,"integrations":{"firstParty":{"id":"String","integrationId":"String","wallet":{"url":"String","credentialsRef":"String"},"partnerApi":{"url":"String","credentialsRef":"String"},"slipForwardingEnabled":false},"partner":{"id":"String","integrationId":"String","wallet":{"url":"String","credentialsRef":"String"},"partnerApi":{"url":"String","credentialsRef":"String"},"slipForwardingEnabled":false}},"payoutPolicy":{"selfService":0,"personal":0}}
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"}}