Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

A sample client, written in C#, is available to demonstrate this process on Github.  This is a C# project created under Visual Studio 2010, written against .Net 4, and is a Winforms Application.


The key steps demonstrated by this client are:

  • Embed into your application
  • Handle the login method and retrieval of a session token from the cookies
  • Handle the keep alive method
  • Handle the logout method


How it works

Upon start-up, the URL of the API login page is assigned to the web browser control:

//Give embedded web browser Betfair api login page URL         

System.Uri u = new Uri(LogonURL);

When the web browser control receives data an event is triggered and the following function called: 

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
            //On embeded web browser response get cookie
            string cookie = this.webBrowser1.Document.Cookie;

            if (cookie != null)

            //If successfull login start KeepAlive 
            if (!m_LoggedOut && !m_KeepAliveTimer.Enabled)
                webBrowser1.Visible = false;
                SetMessage("Logon successfull\r\n SSOID=" + m_SSOID);


Upon successful login the cookie is parsed for the SSOID. The webrowser control made invisible and the SSOID displayed in a TextBox. The keep-alive timer is started

private void StartKeepAlive()
            m_KeepAliveTimer.Elapsed += new System.Timers.ElapsedEventHandler(OnKeepAliveTimer);
            // Set the Interval to 15 mins.
            m_KeepAliveTimer.Interval = 1000 * 60 * 15;
            m_KeepAliveTimer.Enabled = true;

Above the StartKeepAlive function simply starts a 15 minute timer which invokes function OnKeepAliveTimer. 

OnKeepAliveTimer sends a Keep Alive message.

A message to this effect is then displayed.

Upon hitting the Logout button the following event handler is invoked:

private void btnLogout_Click(object sender, EventArgs e)
            m_KeepAliveTimer.Enabled = false;
            m_LoggedOut = true;

            System.Uri u = new Uri(LogoutURL);
            this.webBrowser1.Url = u;

            SetMessage("Logged out");



The keep alive timer is closed. The logout url is sent and a Logged out message is displayed.