Details of the codelist API that can be used to programatically fetch codes and codelists are on the AidInfoLabs blog here: http://www.aidinfolabs.org/archives/690
Summary pasted below also
You can browse all the code-lists on the web at http://iatistandard.org/codelists. When you view each code-list page you have the option to fetch the code-list as CSV, JSON or XML data, as well as viewing a table online.
However, you can also get a full list of available codelists in JSON or XML format by pointing your code at:
This will return a document that can be iterated through to fetch each individual code-list.
For individual code lists, there are two formats of returned values, depending on whether the codelist is a simple list, or whether some hierarchy of codes is present. Returned codes will be wrapped in a <codelist> element, and then each code in an element of the same name as the codelist (e.g. <Sector> for the sector code list). Simple code lists then have a <code>, <name>, and <language> element and may have a <description>. More complex lists such as Sector have <code>, <name>, <description>, <category>, <category-name> and <category-description> elements.
In the future, translated codes may be available in the API. If you have translations of code list values available, please contact IATI Standard Support as it may be possible to import these into the API. Add a ‘lang’ parameter to the end of the URL to fetch codes in a particular language if it is available. E.g. http://www.iatistandard.org/api/codelists/ActivityDateType.xml?lang=fr