call put callback correctly