activity api requests
some refactor