The SCUBA User Reduction Facility (Surf, SUN/33) provides data reduction software for submillimetre bolometer cameras. It was specifically designed for the Submillimetre Common-User Bolometer Array (SCUBA; Holland et al 1999, MNRAS, 303, 659) but could be ported to similar bolometer cameras. This document describes the programming interface used to write Surf tasks and import foreign data formats into the system.