tl;dr
it should be possible and the starting point is provided below.
One possibility to populate your form with data is via the query-string
/main.aspx?etn=account&extraqs=name%3DNew%20Account&pagetype=entityrecord
taken from the documentation.
This way comes in pretty handy, when calling CRM-pages from 3rd Party software (e.g. your CTI-software: prepopulating a new contact-form with the number of the caller).
Of course, you could use ordinary javascript to manipulate the form in any kind, you want. That is possible, but not encouraged by Microsoft:
JavaScript developers are used to interacting with Document Object Model (DOM) elements in code. You might use the window.getElementById method or the jQuery library. You are free to use these techniques in your HTML web resources, but they are not supported to access elements in Microsoft Dynamics CRM application pages or entity forms. Instead, access to entity form elements are exposed through the Xrm.Page object model. The Microsoft Dynamics CRM development team reserves the right to change how pages are composed, including the ID values for elements, so using the Xrm.Page object model protects your code from changes in how pages are implemented
The "Microsoft-Way" for doing things is via the Xrm.Page-Object.
If you need userspecific information, look at Xrm.Page.context
Querying your REST-endpoint, you should get ervery information needed.