register API functioning