in reply to SCORM and Perl

2. Generally an API is the definition of the visible subroutines, objects and variables of a library. In a way the stuff you read in the perldoc of any module on CPAN.

Initiating an API might mean defining how your perl script or scripts (better call it modules) are called and how they are used (i.e. the interface). And in your case your module has to provide the functionality that the SCORM model demands

Disclaimer: Even though I made that sound as if I knew what SCORM is, I just read about it in the wikipedia