Changed web API "action" route parameter as optional
Ported JavaScript application code to TypeScript