betfair

package module
v0.0.0-...-4e67b4c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 23, 2021 License: MIT Imports: 9 Imported by: 0

README

Betting

GoDoc

It is API wrapper which have
  • Speed
  • Continued support
  • It is working!
Features
  • Full Account API
  • Keep Alive (Session key available for 20 minutes and after you need use this function)
  • Enums (Details)
  • Live Scores API - Tennis
Wrapper based on
  • fasthttp
  • ffjson
Examples
You can find in tests :)
License

MIT

Documentation

Overview

Account enums http://docs.developer.betfair.com/docs/display/1smk3cen4v3lu3yomq5qye0ni/Accounts+Enums

Index

Constants

View Source
const (
	CertURL                     = "https://identitysso-api.betfair.com/api/certlogin"
	KeepAliveURL                = "https://identitysso.betfair.com/api/keepAlive"
	AccountURL   BetfairRestURL = "https://api.betfair.com/exchange/account/rest/v1.0"
	BettingURL   BetfairRestURL = "https://api.betfair.com/exchange/betting/rest/v1.0"
	ScoresURL                   = "https://api.betfair.com/exchange/scores/json-rpc/v1"
)

Variables

View Source
var NewBet = NewBetfair

TODO: Deprecate

Functions

This section is empty.

Types

type AccountDetails

type AccountDetails struct {
	CurrencyCode  string
	FirstName     string
	LastName      string
	LocaleCode    string
	Region        string
	Timezone      string
	DiscountRate  float64
	PointsBalance int
	CountryCode   string
}

type AccountFunds

type AccountFunds struct {
	AvailableToBetBalance float64
	Exposure              float64
	RetainedCommission    float64
	ExposureLimit         float64
	DiscountRate          float64 `json:"omitempty"`
	PointsBalance         int     `json:"omitempty"`
}

type AccountStatementReport

type AccountStatementReport struct {
	AccountStatement []StatementItem
	MoreAvailable    bool
}

type Betfair

type Betfair struct {
	*Client
	*Betting
}

func NewBetfair

func NewBetfair(apikey string) *Betfair

type BetfairRestURL

type BetfairRestURL string

BetfairRestURL type of all betfair rest urls

type Betting

type Betting struct {
	*Client
}

func (*Betting) CreateAppKeys

func (b *Betting) CreateAppKeys() (developAppKeys []DeveloperAppKey, err error)

CreateAppKeys for create new developer app keys in account

func (*Betting) GetAccountDetails

func (b *Betting) GetAccountDetails() (accountDetails AccountDetails, err error)

GetAccountDetails like get account details :)

func (*Betting) GetAccountFunds

func (b *Betting) GetAccountFunds(filter Filter) (accountFunds AccountFunds, err error)

GetAccountFunds for getting balances of account

func (*Betting) GetAccountStatement

func (b *Betting) GetAccountStatement(filter Filter) (accountStatementReport AccountStatementReport, err error)

GetAccountStatement about get account statements for 90 days

func (*Betting) GetAppKeys

func (b *Betting) GetAppKeys() (developAppKeys []DeveloperAppKey, err error)

GetAppKeys for getting all developer keys from account

func (*Betting) GetListCurrencyRates

func (b *Betting) GetListCurrencyRates(filter Filter) (currencyRate []CurrencyRate, err error)

GetListCurrencyRates for get currency rates for hour

func (*Betting) GetTransferFunds

func (b *Betting) GetTransferFunds(filter Filter) (transferResponse TransferResponse, err error)

GetTransferFunds for transfer funds between UK and AUS wallets

func (*Betting) Request

func (b *Betting) Request(reqStruct interface{}, url BetfairRestURL, method string, filter *Filter) error

Request function for send requests to betfair via REST JSON

type BettingError

type BettingError struct {
	Detail      interface{} `json:"detail"`
	Faultcode   string      `json:"faultcode"`
	Faultstring string      `json:"faultstring"`
}

type CancelExecutionReport

type CancelExecutionReport struct {
	CustomerRef        *string                    `json:"customerRef,omitempty"`
	Status             EExecutionReportStatus     `json:"status"`
	ErrorCode          *EExecutionReportErrorCode `json:"errorCode,omitempty"`
	MarketID           *string                    `json:"marketId,omitempty"`
	InstructionReports []CancelInstructionReport  `json:"instructionReports,omitempty"`
}

type CancelInstruction

type CancelInstruction struct {
	BetId         string   `json:"betId"`
	SizeReduction *float64 `json:"sizeReduction,omitempty"`
}

type CancelInstructionReport

type CancelInstructionReport struct {
	Status        EInstructionReportStatus     `json:"status"`
	ErrorCode     *EInstructionReportErrorCode `json:"errorCode,omitempty"`
	Instruction   *CancelInstruction           `json:"instruction,omitempty"`
	SizeCancelled float64                      `json:"sizeCancelled"`
	CancelledDate *Time                        `json:"cancelledDate,omitempty"`
}

type ClearedOrderSummary

type ClearedOrderSummary struct {
	EventTypeID         *string           `json:"eventTypeId,omitempty"`
	EventID             *string           `json:"eventId,omitempty"`
	MarketID            *string           `json:"marketId,omitempty"`
	SelectionID         *int64            `json:"selectionId,omitempty"`
	Handicap            *float64          `json:"handicap,omitempty"`
	BetID               *string           `json:"betId,omitempty"`
	PlacedDate          *Time             `json:"placedDate,omitempty"`
	PersistenceType     *EPersistenceType `json:"persistenceType,omitempty"`
	OrderType           *EOrderType       `json:"orderType,omitempty"`
	Side                *ESide            `json:"side,omitempty"`
	ItemDescription     *ItemDescription  `json:"itemDescription,omitempty"`
	BetOutcome          *string           `json:"betOutcome,omitempty"`
	PriceRequested      *float64          `json:"priceRequested,omitempty"`
	SettledDate         *Time             `json:"settledDate,omitempty"`
	LastMatchedDate     *Time             `json:"lastMatchedDate,omitempty"`
	BetCount            *int              `json:"betCount,omitempty"`
	Commission          *float64          `json:"commission,omitempty"`
	PriceMatched        *float64          `json:"priceMatched,omitempty"`
	PriceReduced        *bool             `json:"priceReduced,omitempty"`
	SizeSettled         *float64          `json:"sizeSettled,omitempty"`
	Profit              *float64          `json:"profit,omitempty"`
	SizeCancelled       *float64          `json:"sizeCancelled,omitempty"`
	CustomerOrderRef    *string           `json:"customerOrderRef,omitempty"`
	CustomerStrategyRef *string           `json:"customerStrategyRef,omitempty"`
}

type ClearedOrderSummaryReport

type ClearedOrderSummaryReport struct {
	ClearedOrders []ClearedOrderSummary `json:"clearedOrders"`
	MoreAvailable bool                  `json:"moreAvailable"`
}

type Client

type Client struct {
	ApiKey     string
	SessionKey string
}

func (*Client) GetSession

func (c *Client) GetSession(pemCert, keyCert, login, password string) error

func (*Client) KeepAlive

func (c *Client) KeepAlive() error

KeepAlive for support connect, session key will available for 20 minutes

type Competition

type Competition struct {
	ID   *string `json:"id,omitempty"`
	Name *string `json:"name,omitempty"`
}

type CompetitionResult

type CompetitionResult struct {
	Competition       *Competition `json:"competition,omitempty"`
	MarketCount       *int         `json:"marketCount,omitempty"`
	CompetitionRegion *string      `json:"competitionRegion,omitempty"`
}

type CountryCodeResult

type CountryCodeResult struct {
	CountryCode *string `json:"countryCode,omitempty"`
	MarketCount *int    `json:"marketCount,omitempty"`
}

type CurrencyRate

type CurrencyRate struct {
	CurrencyCode string  `json:"omitempty"`
	Rate         float64 `json:"omitempty"`
}

type CurrentOrderSummary

type CurrentOrderSummary struct {
	BetID               string           `json:"betId"`
	MarketID            string           `json:"marketId"`
	SelectionID         int64            `json:"selectionId"`
	Handicap            float64          `json:"handicap"`
	PriceSize           PriceSize        `json:"priceSize"`
	BspLiability        float64          `json:"bspLiability"`
	Side                ESide            `json:"side"`
	Status              EOrderStatus     `json:"status"`
	PersistenceType     EPersistenceType `json:"persistenceType"`
	OrderType           EOrderType       `json:"orderType"`
	PlacedDate          Time             `json:"placedDate"`
	MatchedDate         Time             `json:"matchedDate"`
	AveragePriceMatched *float64         `json:"averagePriceMatched,omitempty"`
	SizeMatched         *float64         `json:"sizeMatched,omitempty"`
	SizeRemaining       *float64         `json:"sizeRemaining,omitempty"`
	SizeLapsed          *float64         `json:"sizeLapsed,omitempty"`
	SizeCancelled       *float64         `json:"sizeCancelled,omitempty"`
	SizeVoided          *float64         `json:"sizeVoided,omitempty"`
	RegulatorAuthCode   *string          `json:"regulatorAuthCode,omitempty"`
	RegulatorCode       *string          `json:"regulatorCode,omitempty"`
	CustomerOrderRef    *string          `json:"customerOrderRef,omitempty"`
	CustomerStrategyRef *string          `json:"customerStrategyRef,omitempty"`
}

type CurrentOrderSummaryReport

type CurrentOrderSummaryReport struct {
	CurrentOrders []CurrentOrderSummary `json:"currentOrders"`
	MoreAvailable bool                  `json:"moreAvailable"`
}

type DeveloperAppKey

type DeveloperAppKey struct {
	AppName     string
	AppID       int64
	AppVersions []DeveloperAppVersion
}

type DeveloperAppVersion

type DeveloperAppVersion struct {
	Owner                string
	VersionID            int
	Version              string
	ApplicationKey       string
	DelayData            bool
	SubscriptionRequired bool
	OwnerManaged         bool
	Active               bool
}

type EBetStatus

type EBetStatus string
const (
	BS_SETTLED   EBetStatus = "SETTLED"
	BS_VOIDED    EBetStatus = "VOIDED"
	BS_LAPSED    EBetStatus = "LAPSED"
	BS_CANCELLED EBetStatus = "CANCELLED"
)

type EBetTargetType

type EBetTargetType string
const (
	BTT_BACKERS_PROFIT EBetTargetType = "BACKERS_PROFIT"
	BTT_PAYOUT         EBetTargetType = "PAYOUT"
)

type EExecutionReportErrorCode

type EExecutionReportErrorCode string
const (
	EREC_ERROR_IN_MATCHER            EExecutionReportErrorCode = "ERROR_IN_MATCHER"
	EREC_PROCESSED_WITH_ERRORS       EExecutionReportErrorCode = "PROCESSED_WITH_ERRORS"
	EREC_BET_ACTION_ERROR            EExecutionReportErrorCode = "BET_ACTION_ERROR"
	EREC_INVALID_ACCOUNT_STATE       EExecutionReportErrorCode = "INVALID_ACCOUNT_STATE"
	EREC_INVALID_WALLET_STATUS       EExecutionReportErrorCode = "INVALID_WALLET_STATUS"
	EREC_INSUFFICIENT_FUNDS          EExecutionReportErrorCode = "INSUFFICIENT_FUNDS"
	EREC_LOSS_LIMIT_EXCEEDED         EExecutionReportErrorCode = "LOSS_LIMIT_EXCEEDED"
	EREC_MARKET_SUSPENDED            EExecutionReportErrorCode = "MARKET_SUSPENDED"
	EREC_MARKET_NOT_OPEN_FOR_BETTING EExecutionReportErrorCode = "MARKET_NOT_OPEN_FOR_BETTING"
	EREC_DUPLICATE_TRANSACTION       EExecutionReportErrorCode = "DUPLICATE_TRANSACTION"
	EREC_INVALID_ORDER               EExecutionReportErrorCode = "INVALID_ORDER"
	EREC_INVALID_MARKET_ID           EExecutionReportErrorCode = "INVALID_MARKET_ID"
	EREC_PERMISSION_DENIED           EExecutionReportErrorCode = "PERMISSION_DENIED"
	EREC_DUPLICATE_BETIDS            EExecutionReportErrorCode = "DUPLICATE_BETIDS"
	EREC_NO_ACTION_REQUIRED          EExecutionReportErrorCode = "NO_ACTION_REQUIRED"
	EREC_SERVICE_UNAVAILABLE         EExecutionReportErrorCode = "SERVICE_UNAVAILABLE"
	EREC_REJECTED_BY_REGULATOR       EExecutionReportErrorCode = "REJECTED_BY_REGULATOR"
	EREC_NO_CHASING                  EExecutionReportErrorCode = "NO_CHASING"
	EREC_REGULATOR_IS_NOT_AVAILABLE  EExecutionReportErrorCode = "REGULATOR_IS_NOT_AVAILABLE"
	EREC_TOO_MANY_INSTRUCTIONS       EExecutionReportErrorCode = "TOO_MANY_INSTRUCTIONS"
	EREC_INVALID_MARKET_VERSION      EExecutionReportErrorCode = "INVALID_MARKET_VERSION"
)

type EExecutionReportStatus

type EExecutionReportStatus string
const (
	ERS_SUCCESS               EExecutionReportStatus = "SUCCESS"
	ERS_FAILURE               EExecutionReportStatus = "FAILURE"
	ERS_PROCESSED_WITH_ERRORS EExecutionReportStatus = "PROCESSED_WITH_ERRORS"
	ERS_TIMEOUT               EExecutionReportStatus = "TIMEOUT"
)

type EGroupBy

type EGroupBy string
const (
	GB_EVENT_TYPE EGroupBy = "EVENT_TYPE"
	GB_EVENT      EGroupBy = "EVENT"
	GB_MARKET     EGroupBy = "MARKET"
	GB_SIDE       EGroupBy = "SIDE"
	GB_BET        EGroupBy = "BET"
)

type EIncludeItem

type EIncludeItem string
const (
	IT_ALL                  EIncludeItem = "ALL"
	IT_DEPOSITS_WITHDRAWALS EIncludeItem = "DEPOSITS_WITHDRAWALS"
	IT_EXCHANGE             EIncludeItem = "EXCHANGE"
	IT_POKER_ROOM           EIncludeItem = "POKER_ROOM"
)

type EInstructionReportErrorCode

type EInstructionReportErrorCode string
const (
	IREC_INVALID_BET_SIZE                EInstructionReportErrorCode = "INVALID_BET_SIZE"
	IREC_INVALID_RUNNER                  EInstructionReportErrorCode = "INVALID_RUNNER"
	IREC_BET_TAKEN_OR_LAPSED             EInstructionReportErrorCode = "BET_TAKEN_OR_LAPSED"
	IREC_BET_IN_PROGRESS                 EInstructionReportErrorCode = "BET_IN_PROGRESS"
	IREC_RUNNER_REMOVED                  EInstructionReportErrorCode = "RUNNER_REMOVED"
	IREC_MARKET_NOT_OPEN_FOR_BETTING     EInstructionReportErrorCode = "MARKET_NOT_OPEN_FOR_BETTING"
	IREC_LOSS_LIMIT_EXCEEDED             EInstructionReportErrorCode = "LOSS_LIMIT_EXCEEDED"
	IREC_MARKET_NOT_OPEN_FOR_BSP_BETTING EInstructionReportErrorCode = "MARKET_NOT_OPEN_FOR_BSP_BETTING"
	IREC_INVALID_PRICE_EDIT              EInstructionReportErrorCode = "INVALID_PRICE_EDIT"
	IREC_INVALID_ODDS                    EInstructionReportErrorCode = "INVALID_ODDS"
	IREC_INSUFFICIENT_FUNDS              EInstructionReportErrorCode = "INSUFFICIENT_FUNDS"
	IREC_INVALID_PERSISTENCE_TYPE        EInstructionReportErrorCode = "INVALID_PERSISTENCE_TYPE"
	IREC_ERROR_IN_MATCHER                EInstructionReportErrorCode = "ERROR_IN_MATCHER"
	IREC_INVALID_BACK_LAY_COMBINATION    EInstructionReportErrorCode = "INVALID_BACK_LAY_COMBINATION"
	IREC_ERROR_IN_ORDER                  EInstructionReportErrorCode = "ERROR_IN_ORDER"
	IREC_INVALID_BID_TYPE                EInstructionReportErrorCode = "INVALID_BID_TYPE"
	IREC_INVALID_BET_ID                  EInstructionReportErrorCode = "INVALID_BET_ID"
	IREC_CANCELLED_NOT_PLACED            EInstructionReportErrorCode = "CANCELLED_NOT_PLACED"
	IREC_RELATED_ACTION_FAILED           EInstructionReportErrorCode = "RELATED_ACTION_FAILED"
	IREC_NO_ACTION_REQUIRED              EInstructionReportErrorCode = "NO_ACTION_REQUIRED"
	IREC_TIME_IN_FORCE_CONFLICT          EInstructionReportErrorCode = "TIME_IN_FORCE_CONFLICT"
	IREC_UNEXPECTED_PERSISTENCE_TYPE     EInstructionReportErrorCode = "UNEXPECTED_PERSISTENCE_TYPE"
	IREC_INVALID_ORDER_TYPE              EInstructionReportErrorCode = "INVALID_ORDER_TYPE"
	IREC_UNEXPECTED_MIN_FILL_SIZE        EInstructionReportErrorCode = "UNEXPECTED_MIN_FILL_SIZE"
	IREC_INVALID_CUSTOMER_ORDER_REF      EInstructionReportErrorCode = "INVALID_CUSTOMER_ORDER_REF"
	IREC_INVALID_MIN_FILL_SIZE           EInstructionReportErrorCode = "INVALID_MIN_FILL_SIZE"
)

type EInstructionReportStatus

type EInstructionReportStatus string
const (
	IRS_SUCCESS EInstructionReportStatus = "SUCCESS"
	IRS_FAILURE EInstructionReportStatus = "FAILURE"
	IRS_TIMEOUT EInstructionReportStatus = "TIMEOUT"
)

type EItemClass

type EItemClass string
const (
	IC_UNKNOWN EItemClass = "UNKNOWN"
)

type ELoginStatus

type ELoginStatus string
const (
	LS_SUCCESS                                 ELoginStatus = "SUCCESS"
	LS_INVALID_USERNAME_OR_PASSWORD            ELoginStatus = "INVALID_USERNAME_OR_PASSWORD"
	LS_ACCOUNT_NOW_LOCKED                      ELoginStatus = "ACCOUNT_NOW_LOCKED"
	LS_ACCOUNT_ALREADY_LOCKED                  ELoginStatus = "ACCOUNT_ALREADY_LOCKED"
	LS_PENDING_AUTH                            ELoginStatus = "PENDING_AUTH"
	LS_TELBET_TERMS_CONDITIONS_NA              ELoginStatus = "TELBET_TERMS_CONDITIONS_NA"
	LS_DUPLICATE_CARDS                         ELoginStatus = "DUPLICATE_CARDS"
	LS_SECURITY_QUESTION_WRONG_3X              ELoginStatus = "SECURITY_QUESTION_WRONG_3X"
	LS_KYC_SUSPEND                             ELoginStatus = "KYC_SUSPEND"
	LS_SUSPENDED                               ELoginStatus = "SUSPENDED"
	LS_CLOSED                                  ELoginStatus = "CLOSED"
	LS_SELF_EXCLUDED                           ELoginStatus = "SELF_EXCLUDED"
	LS_INVALID_CONNECTIVITY_TO_REGULATOR_DK    ELoginStatus = "INVALID_CONNECTIVITY_TO_REGULATOR_DK"
	LS_NOT_AUTHORIZED_BY_REGULATOR_DK          ELoginStatus = "NOT_AUTHORIZED_BY_REGULATOR_DK"
	LS_INVALID_CONNECTIVITY_TO_REGULATOR_IT    ELoginStatus = "INVALID_CONNECTIVITY_TO_REGULATOR_IT"
	LS_NOT_AUTHORIZED_BY_REGULATOR_IT          ELoginStatus = "NOT_AUTHORIZED_BY_REGULATOR_IT"
	LS_SECURITY_RESTRICTED_LOCATION            ELoginStatus = "SECURITY_RESTRICTED_LOCATION"
	LS_BETTING_RESTRICTED_LOCATION             ELoginStatus = "BETTING_RESTRICTED_LOCATION"
	LS_TRADING_MASTER                          ELoginStatus = "TRADING_MASTER"
	LS_TRADING_MASTER_SUSPENDED                ELoginStatus = "TRADING_MASTER_SUSPENDED"
	LS_AGENT_CLIENT_MASTER                     ELoginStatus = "AGENT_CLIENT_MASTER"
	LS_AGENT_CLIENT_MASTER_SUSPENDED           ELoginStatus = "AGENT_CLIENT_MASTER_SUSPENDED"
	LS_DANISH_AUTHORIZATION_REQUIRED           ELoginStatus = "DANISH_AUTHORIZATION_REQUIRED"
	LS_SPAIN_MIGRATION_REQUIRED                ELoginStatus = "SPAIN_MIGRATION_REQUIRED"
	LS_DENMARK_MIGRATION_REQUIRED              ELoginStatus = "DENMARK_MIGRATION_REQUIRED"
	LS_SPANISH_TERMS_ACCEPTANCE_REQUIRED       ELoginStatus = "SPANISH_TERMS_ACCEPTANCE_REQUIRED"
	LS_ITALIAN_CONTRACT_ACCEPTANCE_REQUIRED    ELoginStatus = "ITALIAN_CONTRACT_ACCEPTANCE_REQUIRED"
	LS_CERT_AUTH_REQUIRED                      ELoginStatus = "CERT_AUTH_REQUIRED"
	LS_CHANGE_PASSWORD_REQUIRED                ELoginStatus = "CHANGE_PASSWORD_REQUIRED"
	LS_PERSONAL_MESSAGE_REQUIRED               ELoginStatus = "PERSONAL_MESSAGE_REQUIRED"
	LS_INTERNATIONAL_TERMS_ACCEPTANCE_REQUIRED ELoginStatus = "INTERNATIONAL_TERMS_ACCEPTANCE_REQUIRED"
	LS_EMAIL_LOGIN_NOT_ALLOWED                 ELoginStatus = "EMAIL_LOGIN_NOT_ALLOWED"
	LS_MULTIPLE_USERS_WITH_SAME_CREDENTIAL     ELoginStatus = "MULTIPLE_USERS_WITH_SAME_CREDENTIAL"
	LS_ACCOUNT_PENDING_PASSWORD_CHANGE         ELoginStatus = "ACCOUNT_PENDING_PASSWORD_CHANGE"
	LS_TEMPORARY_BAN_TOO_MANY_REQUESTS         ELoginStatus = "TEMPORARY_BAN_TOO_MANY_REQUESTS"
	ErrUnknownLoginStatus                      ELoginStatus = "Unknown loginStatus value"
)

type EMarketBettingType

type EMarketBettingType string
const (
	MBT_ODDS                       EMarketBettingType = "ODDS"
	MBT_LINE                       EMarketBettingType = "LINE"
	MBT_ASIAN_HANDICAP_DOUBLE_LINE EMarketBettingType = "ASIAN_HANDICAP_DOUBLE_LINE"
	MBT_ASIAN_HANDICAP_SINGLE_LINE EMarketBettingType = "ASIAN_HANDICAP_SINGLE_LINE"
	MBT_FIXED_ODDS                 EMarketBettingType = "FIXED_ODDS"
)

type EMarketBettingTypes

type EMarketBettingTypes []EMarketBettingType

type EMarketProjection

type EMarketProjection string
const (
	MP_COMPETITION        EMarketProjection = "COMPETITION"
	MP_EVENT              EMarketProjection = "EVENT"
	MP_EVENT_TYPE         EMarketProjection = "EVENT_TYPE"
	MP_MARKET_START_TIME  EMarketProjection = "MARKET_START_TIME"
	MP_MARKET_DESCRIPTION EMarketProjection = "MARKET_DESCRIPTION"
	MP_RUNNER_DESCRIPTION EMarketProjection = "RUNNER_DESCRIPTION"
	MP_RUNNER_METADATA    EMarketProjection = "RUNNER_METADATA"
)

type EMarketSort

type EMarketSort string
const (
	MS_MINIMUM_TRADED    EMarketSort = "MINIMUM_TRADED"
	MS_MAXIMUM_TRADED    EMarketSort = "MAXIMUM_TRADED"
	MS_MINIMUM_AVAILABLE EMarketSort = "MINIMUM_AVAILABLE"
	MS_MAXIMUM_AVAILABLE EMarketSort = "MAXIMUM_AVAILABLE"
	MS_FIRST_TO_START    EMarketSort = "FIRST_TO_START"
	MS_LAST_TO_START     EMarketSort = "LAST_TO_START"
)

type EMarketStatus

type EMarketStatus string
const (
	MS_INACTIVE  EMarketStatus = "INACTIVE"
	MS_OPEN      EMarketStatus = "OPEN"
	MS_SUSPENDED EMarketStatus = "SUSPENDED"
	MS_CLOSED    EMarketStatus = "CLOSED"
)

type EMarketType

type EMarketType string
const (
	MT_A              EMarketType = "A"
	MT_L              EMarketType = "L"
	MT_O              EMarketType = "O"
	MT_R              EMarketType = "R"
	MT_NOT_APPLICABLE EMarketType = "NOT_APPLICABLE"
)

type EMatchProjection

type EMatchProjection string
const (
	MP_NO_ROLLUP              EMatchProjection = "NO_ROLLUP"
	MP_ROLLED_UP_BY_PRICE     EMatchProjection = "ROLLED_UP_BY_PRICE"
	MP_ROLLED_UP_BY_AVG_PRICE EMatchProjection = "ROLLED_UP_BY_AVG_PRICE"
)

type EOrderBy

type EOrderBy string
const (
	OB_BY_BET          EOrderBy = "BY_BET"
	OB_BY_MARKET       EOrderBy = "BY_MARKET"
	OB_BY_MATCH_TIME   EOrderBy = "BY_MATCH_TIME"
	OB_BY_PLACE_TIME   EOrderBy = "BY_PLACE_TIME"
	OB_BY_SETTLED_TIME EOrderBy = "BY_SETTLED_TIME"
	OB_BY_VOID_TIME    EOrderBy = "BY_VOID_TIME"
)

type EOrderProjection

type EOrderProjection string
const (
	OP_ALL                EOrderProjection = "ALL"
	OP_EXECUTABLE         EOrderProjection = "EXECUTABLE"
	OP_EXECUTION_COMPLETE EOrderProjection = "EXECUTION_COMPLETE"
)

type EOrderStatus

type EOrderStatus string
const (
	OS_PENDING            EOrderStatus = "PENDING"
	OS_EXECUTION_COMPLETE EOrderStatus = "EXECUTION_COMPLETE"
	OS_EXECUTABLE         EOrderStatus = "EXECUTABLE"
	OS_EXPIRED            EOrderStatus = "EXPIRED"
)

type EOrderType

type EOrderType string
const (
	OT_LIMIT           EOrderType = "LIMIT"
	OT_LIMIT_ON_CLOSE  EOrderType = "LIMIT_ON_CLOSE"
	OT_MARKET_ON_CLOSE EOrderType = "MARKET_ON_CLOSE"
)

type EPersistenceType

type EPersistenceType string
const (
	PT_LAPSE           EPersistenceType = "LAPSE"
	PT_PERSIST         EPersistenceType = "PERSIST"
	PT_MARKET_ON_CLOSE EPersistenceType = "MARKET_ON_CLOSE"
)

type EPriceData

type EPriceData string
const (
	PD_SP_AVAILABLE   EPriceData = "SP_AVAILABLE"
	PD_SP_TRADED      EPriceData = "SP_TRADED"
	PD_EX_BEST_OFFERS EPriceData = "EX_BEST_OFFERS"
	PD_EX_ALL_OFFERS  EPriceData = "EX_ALL_OFFERS"
	PD_EX_TRADED      EPriceData = "EX_TRADED"
)

type EPriceLadderType

type EPriceLadderType string
const (
	PLT_CLASSIC    EPriceLadderType = "CLASSIC"
	PLT_FINEST     EPriceLadderType = "FINEST"
	PLT_LINE_RANGE EPriceLadderType = "LINE_RANGE"
)

type ERollupModel

type ERollupModel string
const (
	RM_STAKE             ERollupModel = "STAKE"
	RM_PAYOUT            ERollupModel = "PAYOUT"
	RM_MANAGED_LIABILITY ERollupModel = "MANAGED_LIABILITY"
	RM_NONE              ERollupModel = "NONE"
)

type ERunnerStatus

type ERunnerStatus string
const (
	RS_ACTIVE         ERunnerStatus = "ACTIVE"
	RS_WINNER         ERunnerStatus = "WINNER"
	RS_LOSER          ERunnerStatus = "LOSER"
	RS_PLACED         ERunnerStatus = "PLACED"
	RS_REMOVED_VACANT ERunnerStatus = "REMOVED_VACANT"
	RS_REMOVED        ERunnerStatus = "REMOVED"
	RS_HIDDEN         ERunnerStatus = "HIDDEN"
)

type ESide

type ESide string
const (
	S_BACK ESide = "BACK"
	S_LAY  ESide = "LAY"
)

type ESortDir

type ESortDir string
const (
	SD_EARLIEST_TO_LATEST ESortDir = "EARLIEST_TO_LATEST"
	SD_LATEST_TO_EARLIEST ESortDir = "LATEST_TO_EARLIEST"
)

type ESubscriptionStatus

type ESubscriptionStatus string
const (
	// Any subscription status
	SS_ALL ESubscriptionStatus = "ALL"

	// Only activated subscriptions
	SS_ACTIVATED ESubscriptionStatus = "ACTIVATED"

	// Only unactivated subscriptions
	SS_UNACTIVATED ESubscriptionStatus = "UNACTIVATED"

	// Only cancelled subscriptions
	SS_CANCELLED ESubscriptionStatus = "CANCELLED"

	// Only expired subscriptions
	SS_EXPIRED ESubscriptionStatus = "EXPIRED"
)

type ETimeGranularity

type ETimeGranularity string
const (
	TG_DAYS    ETimeGranularity = "DAYS"
	TG_HOURS   ETimeGranularity = "HOURS"
	TG_MINUTES ETimeGranularity = "MINUTES"
)

type ETimeInForce

type ETimeInForce string
const (
	TIF_FILL_OR_KILL ETimeInForce = "FILL_OR_KILL"
)

type EWallet

type EWallet string
const (
	W_UK EWallet = "UK"
)

type EXBestOffersOverrides

type EXBestOffersOverrides struct {
	BestPricesDepth          *int          `json:"bestPricesDepth,omitempty"`
	RollupModel              *ERollupModel `json:"rollupModel,omitempty"`
	RollupLimit              *int          `json:"rollupLimit,omitempty"`
	RollupLiabilityThreshold *float64      `json:"rollupLiabilityThreshold,omitempty"`
	RollupLiabilityFactor    *int          `json:"rollupLiabilityFactor,omitempty"`
}

type Event

type Event struct {
	ID          *string `json:"id,omitempty"`
	Name        *string `json:"name,omitempty"`
	CountryCode *string `json:"countryCode,omitempty"`
	Timezone    *string `json:"timezone,omitempty"`
	Venue       *string `json:"venue,omitempty"`
	OpenDate    *Time   `json:"openDate,omitempty"`
}

type EventResult

type EventResult struct {
	Event       *Event `json:"event,omitempty"`
	MarketCount *int   `json:"marketCount,omitempty"`
}

type EventType

type EventType struct {
	ID   *string `json:"id,omitempty"`
	Name *string `json:"name,omitempty"`
}

type EventTypeResult

type EventTypeResult struct {
	EventType   *EventType `json:"eventType,omitempty"`
	MarketCount *int       `json:"marketCount,omitempty"`
}

type ExchangePrices

type ExchangePrices struct {
	AvailableToBack []PriceSize `json:"availableToBack,omitempty"`
	AvailableToLay  []PriceSize `json:"availableToLay,omitempty"`
	TradedVolume    []PriceSize `json:"tradedVolume,omitempty"`
}

type Filter

type Filter struct {
	Wallet                  EWallet              `json:"wallet,omitempty"`
	Locale                  string               `json:"locale,omitempty"`
	FromRecord              int                  `json:"fromRecord,omitempty"`
	RecordCount             int                  `json:"recordCount,omitempty"`
	ItemTimeRange           *TimeRange           `json:"itemTimeRange,omitempty"`
	IncludeItem             EIncludeItem         `json:"recordCount,omitempty"`
	FromCurrency            string               `json:"fromCurrency,omitempty"`
	From                    EWallet              `json:"from,omitempty"`
	To                      EWallet              `json:"to,omitempty"`
	Amount                  float64              `json:"amount,omitempty"`
	BetIDs                  []string             `json:"betIds,omitempty"`
	MarketIDs               []string             `json:"marketIds,omitempty"`
	PriceProjection         *PriceProjection     `json:"priceProjection,omitempty"`
	OrderProjection         EOrderProjection     `json:"orderProjection,omitempty"`
	MarketProjection        *[]EMarketProjection `json:"marketProjection,omitempty"`
	TimeRange               *TimeRange           `json:"TimeRange,omitempty"`
	OrderBy                 EOrderBy             `json:"orderBy,omitempty"`
	SortDir                 ESortDir             `json:"sortDir,omitempty"`
	Sort                    EMarketSort          `json:"sort,omitempty"`
	MarketFilter            *MarketFilter        `json:"filter,omitempty"`
	BetStatus               EBetStatus           `json:"betStatus,omitempty"`
	EventTypeIDs            []string             `json:"eventTypeIds,omitempty"`
	EventIDs                []string             `json:"eventIds,omitempty"`
	RunnerIDs               []RunnerID           `json:"runnerIds,omitempty"`
	Side                    ESide                `json:"side,omitempty"`
	SettledTimeRange        *TimeRange           `json:"settledTimeRange,omitempty"`
	GroupBy                 EGroupBy             `json:"groupBy,omitempty"`
	IncludeItemDescription  bool                 `json:"includeItemDescription,omitempty"`
	MaxResults              int                  `json:"maxResults,omitempty"`
	IncludeSettledBets      bool                 `json:"includeSettledBets,omitempty"`
	TimeGranularity         ETimeGranularity     `json:"granularity,omitempty"`
	PlaceOrdersMarketID     string               `json:"marketId,omitempty"`
	PlaceOrdersInstructions []PlaceInstruction   `json:"instructions,omitempty"`
	CustomerOrderRefs       []string             `json:"customerOrderRefs,omitempty"`
	CustomerStrategyRefs    []string             `json:"customerStrategyRefs,omitempty"`
}

type ItemDescription

type ItemDescription struct {
	EventTypeDesc   *string  `json:"eventTypeDesc,omitempty"`
	EventDesc       *string  `json:"eventDesc,omitempty"`
	MarketDesc      *string  `json:"marketDesc,omitempty"`
	MarketType      *string  `json:"marketType,omitempty"`
	MarketStartTime *Time    `json:"marketStartTime,omitempty"`
	RunnerDesc      *string  `json:"runnerDesc,omitempty"`
	NumberOfWinners *int     `json:"numberOfWinners,omitempty"`
	EachWayDivisor  *float64 `json:"eachWayDivisor,omitempty"`
}

type KeepAlive

type KeepAlive struct {
	Token   string
	Product string
	Status  string
	Error   string
}

type KeyLineDescription

type KeyLineDescription struct {
	KeyLine []KeyLineSelection `json:"keyLine,omitempty"`
}

type KeyLineSelection

type KeyLineSelection struct {
	SelectionID *int64   `json:"selectionId,omitempty"`
	Handicap    *float64 `json:"handicap,omitempty"`
}

type LimitOnCloseOrder

type LimitOnCloseOrder struct {
	Liability float64 `json:"liability"`
	Price     float64 `json:"price"`
}

type LimitOrder

type LimitOrder struct {
	Size            float64          `json:"size"`
	Price           float64          `json:"price"`
	PersistenceType EPersistenceType `json:"persistenceType"`
	TimeInForce     *ETimeInForce    `json:"timeInForce,omitempty"`
	MinFillSize     *float64         `json:"minFillSize,omitempty"`
	BetTargetType   *EBetTargetType  `json:"betTargetType,omitempty"`
	BetTargetSize   *float64         `json:"betTargetSize,omitempty"`
}

type MarketBook

type MarketBook struct {
	MarketID              string              `json:"marketId"`
	IsMarketDataDelayed   bool                `json:"isMarketDataDelayed"`
	Status                *EMarketStatus      `json:"status,omitempty"`
	BetDelay              *int                `json:"betDelay,omitempty"`
	BspReconciled         *bool               `json:"bspReconciled,omitempty"`
	Complete              *bool               `json:"complete,omitempty"`
	Inplay                *bool               `json:"inplay,omitempty"`
	NumberOfWinners       *int                `json:"numberOfWinners,omitempty"`
	NumberOfRunners       *int                `json:"numberOfRunners,omitempty"`
	NumberOfActiveRunners *int                `json:"numberOfActiveRunners,omitempty"`
	LastMatchTime         *Time               `json:"lastMatchTime,omitempty"`
	TotalMatched          *float64            `json:"totalMatched,omitempty"`
	TotalAvailable        *float64            `json:"totalAvailable,omitempty"`
	CrossMatching         *bool               `json:"crossMatching,omitempty"`
	RunnersVoidable       *bool               `json:"runnersVoidable,omitempty"`
	Version               *int64              `json:"version,omitempty"`
	Runners               []Runner            `json:"runners,omitempty"`
	KeyLineDescription    *KeyLineDescription `json:"keyLineDescription,omitempty"`
}

type MarketCatalogue

type MarketCatalogue struct {
	MarketID        string             `json:"marketId"`
	MarketName      string             `json:"marketName"`
	MarketStartTime *Time              `json:"marketStartTime,omitempty"`
	Description     *MarketDescription `json:"description,omitempty"`
	TotalMatched    *float64           `json:"totalMatched,omitempty"`
	Runners         []RunnerCatalog    `json:"runners,omitempty"`
	EventType       *EventType         `json:"eventType,omitempty"`
	Competition     *Competition       `json:"competition,omitempty"`
	Event           *Event             `json:"event,omitempty"`
}

type MarketDescription

type MarketDescription struct {
	PersistenceEnabled     bool                    `json:"persistenceEnabled"`
	BspMarket              bool                    `json:"bspMarket"`
	MarketTime             Time                    `json:"marketTime"`
	SuspendTime            Time                    `json:"suspendTime"`
	SettleTime             *Time                   `json:"settleTime,omitempty"`
	BettingType            EMarketBettingType      `json:"bettingType"`
	TurnInPlayEnabled      bool                    `json:"turnInPlayEnabled"`
	MarketType             string                  `json:"marketType"`
	Regulator              string                  `json:"regulator"`
	MarketBaseRate         float64                 `json:"marketBaseRate"`
	DiscountAllowed        bool                    `json:"discountAllowed"`
	Wallet                 *string                 `json:"wallet,omitempty"`
	Rules                  *string                 `json:"rules,omitempty"`
	RulesHasDate           *bool                   `json:"rulesHasDate,omitempty"`
	EachWayDivisor         *float64                `json:"eachWayDivisor,omitempty"`
	Clarifications         *string                 `json:"clarifications,omitempty"`
	LineRangeInfo          *MarketLineRangeInfo    `json:"lineRangeInfo,omitempty"`
	RaceType               *string                 `json:"raceType,omitempty"`
	PriceLadderDescription *PriceLadderDescription `json:"priceLadderDescription,omitempty"`
}

type MarketFilter

type MarketFilter struct {
	TextQuery          *string               `json:"textQuery,omitempty"`
	ExchangeIDs        []string              `json:"exchangeIds,omitempty"`
	EventTypeIDs       []string              `json:"eventTypeIds,omitempty"`
	EventIDs           []string              `json:"eventIds,omitempty"`
	CompetitionIDs     []string              `json:"competitionIds,omitempty"`
	MarketIDs          []string              `json:"marketIds,omitempty"`
	Venues             []string              `json:"venues,omitempty"`
	BspOnly            *bool                 `json:"bspOnly,omitempty"`
	TurnInPlayEnabled  *bool                 `json:"turnInPlayEnabled,omitempty"`
	InPlayOnly         *bool                 `json:"inPlayOnly,omitempty"`
	MarketBettingTypes []EMarketBettingTypes `json:"marketBettingTypes,omitempty"`
	MarketCountries    []string              `json:"marketCountries,omitempty"`
	MarketTypeCodes    []string              `json:"marketTypeCodes,omitempty"`
	MarketStartTime    *TimeRange            `json:"marketStartTime,omitempty"`
	WithOrders         []EOrderStatus        `json:"withOrders,omitempty"`
	RaceTypes          []string              `json:"raceTypes,omitempty"`
}

type MarketLicence

type MarketLicence struct {
	Wallet         string  `json:"wallet"`
	Rules          *string `json:"rules,omitempty"`
	RulesHasDate   *bool   `json:"rulesHasDate,omitempty"`
	Clarifications *string `json:"clarifications,omitempty"`
}

type MarketLineRangeInfo

type MarketLineRangeInfo struct {
	MaxUnitValue float64 `json:"maxUnitValue"`
	MinUnitValue float64 `json:"minUnitValue"`
	Interval     float64 `json:"interval"`
	MarketUnit   string  `json:"marketUnit"`
}

type MarketOnCloseOrder

type MarketOnCloseOrder struct {
	Liability float64 `json:"liability"`
}

type MarketProfitAndLoss

type MarketProfitAndLoss struct {
	MarketID          *string               `json:"marketId,omitempty"`
	CommissionApplied *float64              `json:"commissionApplied,omitempty"`
	ProfitAndLosses   []RunnerProfitAndLoss `json:"profitAndLosses,omitempty"`
}

type MarketRates

type MarketRates struct {
	MarketBaseRate  float64 `json:"marketBaseRate"`
	DiscountAllowed bool    `json:"discountAllowed"`
}

type MarketTypeResult

type MarketTypeResult struct {
	MarketType  *string `json:"marketType,omitempty"`
	MarketCount *int    `json:"marketCount,omitempty"`
}

type MarketVersion

type MarketVersion struct {
	Version *int64 `json:"version,omitempty"`
}

type Match

type Match struct {
	BetID     *string `json:"betId,omitempty"`
	MatchID   *string `json:"matchId,omitempty"`
	Side      ESide   `json:"side"`
	Price     float64 `json:"price"`
	Size      float64 `json:"size"`
	MatchDate *Time   `json:"matchDate,omitempty"`
}

An individual bet Match, or rollup by price or avg price. Rollup depends on the requested MatchProjection.

type Order

type Order struct {
	BetID               string           `json:"betId"`
	OrderType           EOrderType       `json:"orderType"`
	Status              EOrderStatus     `json:"orderStatus"`
	PersistenceType     EPersistenceType `json:"persistenceType"`
	Side                ESide            `json:"side"`
	Price               float64          `json:"price"`
	Size                float64          `json:"size"`
	BspLiability        float64          `json:"bspLiability"`
	PlacedDate          Time             `json:"placedDate"`
	AvgPriceMatched     *float64         `json:"avgPriceMatched,omitempty"`
	SizeMatched         *float64         `json:"sizeMatched,omitempty"`
	SizeRemaining       *float64         `json:"sizeRemaining,omitempty"`
	SizeLapsed          *float64         `json:"sizeLapsed,omitempty"`
	SizeCancelled       *float64         `json:"sizeCancelled,omitempty"`
	SizeVoided          *float64         `json:"sizeVoided,omitempty"`
	CustomerOrderRef    *string          `json:"customerOrderRef,omitempty"`
	CustomerStrategyRef *string          `json:"customerStrategyRef,omitempty"`
}

type PlaceExecutionReport

type PlaceExecutionReport struct {
	CustomerRef        *string                    `json:"customerRef,omitempty"`
	Status             EExecutionReportStatus     `json:"status"`
	ErrorCode          *EExecutionReportErrorCode `json:"errorCode,omitempty"`
	MarketID           *string                    `json:"marketId,omitempty"`
	InstructionReports []PlaceInstructionReport   `json:"instructionReports,omitempty"`
}

type PlaceInstruction

type PlaceInstruction struct {
	OrderType          EOrderType          `json:"orderType"`
	SelectionID        int64               `json:"selectionId"`
	Handicap           *float64            `json:"handicap,omitempty"`
	Side               ESide               `json:"side"`
	LimitOrder         *LimitOrder         `json:"limitOrder,omitempty"`
	LimitOnCloseOrder  *LimitOnCloseOrder  `json:"limitOnCloseOrder,omitempty"`
	MarketOnCloseOrder *MarketOnCloseOrder `json:"marketOnCloseOrder,omitempty"`
	CustomerOrderRef   *string             `json:"customerOrderRef,omitempty"`
}

type PlaceInstructionReport

type PlaceInstructionReport struct {
	Status              EInstructionReportStatus     `json:"status"`
	ErrorCode           *EInstructionReportErrorCode `json:"errorCode,omitempty"`
	OrderStatus         *EOrderStatus                `json:"orderStatus,omitempty"`
	Instruction         PlaceInstruction             `json:"instruction"`
	BetID               *string                      `json:"betId,omitempty"`
	PlacedDate          *Time                        `json:"placedDate,omitempty"`
	AveragePriceMatched *float64                     `json:"averagePriceMatched,omitempty"`
	SizeMatched         *float64                     `json:"sizeMatched,omitempty"`
}

type PriceLadderDescription

type PriceLadderDescription struct {
	Type *EPriceLadderType `json:"type,omitempty"`
}

type PriceProjection

type PriceProjection struct {
	PriceData             []EPriceData           `json:"priceData,omitempty"`
	EXBestOffersOverrides *EXBestOffersOverrides `json:"exBestOffersOverrides,omitempty"`
	Virtualise            *bool                  `json:"virtualise,omitempty"`
	RolloverStakes        *bool                  `json:"rolloverStakes,omitempty"`
}

type PriceSize

type PriceSize struct {
	Price float64 `json:"price"`
	Size  float64 `json"size"`
}

type ReplaceExecutionReport

type ReplaceExecutionReport struct {
	CustomerRef        *string                    `json:"customerRef,omitempty"`
	Status             EExecutionReportStatus     `json:"status"`
	ErrorCode          *EExecutionReportErrorCode `json:"errorCode,omitempty"`
	MarketID           *string                    `json:"marketId,omitempty"`
	InstructionReports []ReplaceInstructionReport `json:"instructionReports,omitempty"`
}

type ReplaceInstruction

type ReplaceInstruction struct {
	BetId    string  `json:"betId"`
	NewPrice float64 `json:"newPrice"`
}

type ReplaceInstructionReport

type ReplaceInstructionReport struct {
	Status                  EInstructionReportStatus     `json:"status"`
	ErrorCode               *EInstructionReportErrorCode `json:"errorCode,omitempty"`
	CancelInstructionReport *CancelInstructionReport     `json:"cancelInstructionReport,omitempty"`
	PlaceInstructionReport  *PlaceInstructionReport      `json:"placeInstructionReport,omitempty"`
}

type Runner

type Runner struct {
	SelectionID       int64              `json:"selectionId"`
	Handicap          float64            `json:"handicap"`
	Status            ERunnerStatus      `json:"status"`
	AdjustmentFactor  float64            `json:"adjustmentFactor"`
	LastPriceTraded   *float64           `json:"lastPriceTraded,omitempty"`
	TotalMatched      *float64           `json:"totalMatched,omitempty"`
	RemovalDate       *Time              `json:"removalDate,omitempty"`
	SP                *StartingPrices    `json:"sp,omitempty"`
	EX                *ExchangePrices    `json:"ex,omitempty"`
	Orders            []Order            `json:"orders,omitempty"`
	Matches           []Match            `json:"matches,omitempty"`
	MatchesByStrategy map[string][]Match `json:"matchesByStrategy,omitempty"`
}

type RunnerCatalog

type RunnerCatalog struct {
	SelectionID  int64             `json:"selectionId"`
	RunnerName   string            `json:"runnerName"`
	Handicap     float64           `json:"handicap"`
	SortPriority int               `json:"sortPriority"`
	Metadata     map[string]string `json:"metadata,omitempty"`
}

type RunnerID

type RunnerID struct {
	MarketID    *string  `json:"marketId,omitempty"`
	SelectionID *int64   `json:"selectionId,omitempty"`
	Handicap    *float64 `json:"handicap,omitempty"`
}

type RunnerProfitAndLoss

type RunnerProfitAndLoss struct {
	SelectionID *int64   `json:"selectionId,omitempty"`
	IfWin       *float64 `json:"ifWin,omitempty"`
	IfLose      *float64 `json:"ifLose,omitempty"`
	IfPlace     *float64 `json:"ifPlace,omitempty"`
}

type Session

type Session struct {
	SessionToken string
	LoginStatus  ELoginStatus
}

type StartingPrices

type StartingPrices struct {
	NearPrice         *float64    `json:"nearPrice,omitempty"`
	FarPrice          *float64    `json:"farPrice,omitempty"`
	BackStakeTaken    []PriceSize `json:"backStakeTaken,omitempty"`
	LayLiabilityTaken []PriceSize `json:"layLiabilityTaken,omitempty"`
	ActualSP          *float64    `json:"actualSP,omitempty"`
}

type StatementItem

type StatementItem struct {
	RefID         string `json:"omitempty"`
	ItemDate      time.Time
	Amount        float64             `json:"omitempty"`
	Balance       float64             `json:"omitempty"`
	ItemClass     EItemClass          `json:"omitempty"`
	ItemClassData map[string]string   `json:"omitempty"`
	LegacyData    StatementLegacyData `json:"omitempty"`
}

type StatementLegacyData

type StatementLegacyData struct {
	AvgPrice        float64     `json:"omitempty"`
	BetSize         float64     `json:"omitempty"`
	BetType         string      `json:"omitempty"`
	BetCategoryType string      `json:"omitempty"`
	CommissionRate  string      `json:"omitempty"`
	EventID         int64       `json:"omitempty"`
	EventTypeID     int64       `json:"omitempty"`
	FullMarketName  string      `json:"omitempty"`
	GrossBetAmount  float64     `json:"omitempty"`
	MarketName      string      `json:"omitempty"`
	MarketType      EMarketType `json:"omitempty"`
	PlacedDate      time.Time   `json:"omitempty"`
	SelectionID     int64       `json:"omitempty"`
	SelectionName   string      `json:"omitempty"`
	StartDate       time.Time   `json:"omitempty"`
	TransactionType string      `json:"omitempty"`
	TransactionID   int64       `json:"omitempty"`
	WinLose         string      `json:"omitempty"`
}

type Time

type Time time.Time

func (*Time) UnmarshalJSON

func (t *Time) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaler interface. The time is expected to be a quoted string in RFC 3339 format.

type TimeRange

type TimeRange struct {
	From *Time `json:"from,omitempty"`
	To   *Time `json:"to,omitempty"`
}

type TimeRangeResult

type TimeRangeResult struct {
	TimeRange   *TimeRange `json:"timeRange,omitempty"`
	MarketCount *int       `json:"marketCount,omitempty"`
}

type TransferResponse

type TransferResponse struct {
	TransactionID string
}

type UpdateExecutionReport

type UpdateExecutionReport struct {
	CustomerRef        *string                    `json:"customerRef,omitempty"`
	Status             EExecutionReportStatus     `json:"status"`
	ErrorCode          *EExecutionReportErrorCode `json:"errorCode,omitempty"`
	MarketID           *string                    `json:"marketId,omitempty"`
	InstructionReports []UpdateInstructionReport  `json:"instructionReports,omitempty"`
}

type UpdateInstruction

type UpdateInstruction struct {
	BetId              string           `json:"betId"`
	NewPersistenceType EPersistenceType `json:"newPersistenceType"`
}

type UpdateInstructionReport

type UpdateInstructionReport struct {
	Status      EInstructionReportStatus     `json:"status"`
	ErrorCode   *EInstructionReportErrorCode `json:"errorCode,omitempty"`
	Instruction UpdateInstruction            `json:"instruction"`
}

type VenueResult

type VenueResult struct {
	Venue       *string `json:"venue,omitempty"`
	MarketCount *int    `json:"marketCount,omitempty"`
}

Directories

Path Synopsis
examples

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL