Implement asynchronous and non-authenticated access.

Implement test cases.
