Further rationalisation of the external API