vBulletin is written in php. The easiest way for a thick client app to talk to a web page is for custom php services to be created that return the info you want. For example we create a hallo world call like this (psuedo code)

helloworld.php
<?php
$name = getParam("name");
echo "Hello $name";
?>

and this can be called from a browser like http://localhost/helloworld.php?name=William
and it returns a text string contianing "Hello William\n".

This can the be included inside a Delphi/Freepascal program as an HTTP call to the server. The result comes back as text and can be loaded into a TStringList to interpret.

These services can be created as needed for example
logincheck.php?username=cairnswm&md5password=klh54 lkjh3kjndklj43
fetchlatest.php?username=cairnswm&chatroom=pgdchat &lastid=1243
addchat.php?username=cairnswm&chatroom=pgdchat&com ment=Hi guys, long time no see
etc

I currently run a software deployment and discovery system covering about 200 servers using this system. Each server every 5 minutes asks for a list of new deployments that are relvant for it. If a new deployment is identified it asks for details and then does an FTP of the required files. After that it again tells the server if it was successful or not and what the new version is.

I have also written a full website for my GPRO.net team where each persons data is loaded to the website using services like this.

My examples above are not good examples as the whole system should work on session tokens rather than usernames.