params optional
support query params too