The Automation interface – supports a comprehensive API for use with any COM based language (and Java). This supports defining internal scripts, as well as accessibility for writing external add-ins. There is also support for model based event driven add-ins using Javascript.
