Internal Server Error could be because of incorrect permissions (755 on Unix/Linux) on the script file. Also if line endings are incorrect (\n on Unix/Linux).
Don't have Windows server experience, so can't speak for its requirements.
for apps - Facebook, iPad, mobile phones. No charge
to use API. [info]