add upload && query callback