Input validation for snapshots v2 API

This commit adds to v2 snapshots API
- Request parameters validation
- Permission checking
- A small "integration" test that tries to minimize stubs and mocks