Betting.WebApi

<back to all web services

GetSSDWalletProfile

The following routes are available for this service:
All Verbs/qry/integrations/wallet/ssd
# frozen_string_literal: true
# encoding: utf-8


require 'json'
require 'servicestack'


module DeviceUserInterface
    TABLET = 0
    KIOSK = 1
    DEFAULT = 2
    UNKNOWN = -1
end

class Ref
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :id
    # @return [String]
    attr_accessor :val

    def self.properties
        {
            id: { name: 'id' },
            val: { name: 'val' },
        }
    end

end

class GPSCoordinates
    include ServiceStack::DTO

    # @return [Float]
    attr_accessor :lat
    # @return [Float]
    attr_accessor :lng

    def self.properties
        {
            lat: { name: 'lat' },
            lng: { name: 'lng' },
        }
    end

end

class Address
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :street
    # @return [String]
    attr_accessor :city
    # @return [String]
    attr_accessor :state
    # @return [String]
    attr_accessor :postal_code
    # @return [Ref]
    attr_accessor :country
    # @return [GPSCoordinates]
    attr_accessor :gps
    # @return [RecordDictionary]
    attr_accessor :data

    def self.properties
        {
            street: { name: 'street' },
            city: { name: 'city' },
            state: { name: 'state' },
            postal_code: { name: 'postalCode' },
            country: { name: 'country', type: Ref },
            gps: { name: 'gps', type: GPSCoordinates },
            data: { name: 'data', type: RecordDictionary },
        }
    end

end

class DeviceLocation
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :id
    # @return [String]
    attr_accessor :name
    # @return [Address]
    attr_accessor :address
    # @return [RecordDictionary]
    attr_accessor :data
    # @return [String]
    attr_accessor :taxation_authority_id

    def self.properties
        {
            id: { name: 'id' },
            name: { name: 'name' },
            address: { name: 'address', type: Address },
            data: { name: 'data', type: RecordDictionary },
            taxation_authority_id: { name: 'taxationAuthorityId' },
        }
    end

end

class SSDWalletProfile
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :id
    # @return [Ref]
    attr_accessor :device
    # @return [DeviceUserInterface]
    attr_accessor :device_user_interface
    # @return [DeviceLocation]
    attr_accessor :location

    def self.properties
        {
            id: { name: 'id' },
            device: { name: 'device', type: Ref },
            device_user_interface: { name: 'deviceUserInterface' },
            location: { name: 'location', type: DeviceLocation },
        }
    end

end

class GetSSDWalletProfile
    include ServiceStack::DTO

    # @return [String]
    attr_accessor :device_id
    # @return [String]
    attr_accessor :session_id
    # @return [String]
    attr_accessor :organization_id
    # @return [RecordDictionary]
    attr_accessor :data

    def self.properties
        {
            device_id: { name: 'deviceId' },
            session_id: { name: 'sessionId' },
            organization_id: { name: 'organizationId' },
            data: { name: 'data', type: RecordDictionary },
        }
    end

    def response_type() = SSDWalletProfile
    def get_type_name() = 'GetSSDWalletProfile'
end

class RecordDictionary < Hash
end

Ruby GetSSDWalletProfile DTOs

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

HTTP + OTHER

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /qry/integrations/wallet/ssd HTTP/1.1 
Host: api.bettor.webhop.biz 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"deviceId":"String","sessionId":"String","organizationId":"String","data":{"String":"String"}}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"id":"String","device":{"id":"String","val":"String"},"deviceUserInterface":0,"location":{"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"}},"data":{"String":"String"},"taxationAuthorityId":"String"}}