I have seen fetchPersonRequest(PersonId.VIEWER, ...), where the viewer does not have the app installed, behave inconsistently in the last few days.. sometimes the response data is null and sometimes it is valid but contains the "unauthorized" error code..
Which is the expected behavior? Which is the implemented behavior?