I know that java offers a set of apis to contact an LDAP server, and a process could contact LDAP server by providing credentials, but I always thought that to update
the LDAP besides a user name and password, the PC contacting LDAP should be joined in the windows domain.
Is assumption this wrong?
That assumption is indeed wrong.
LDAP is not a Windows-specific technology. All you need in order to update directory data is the ability to connect to the appropriate port (389 for unencrypted or TLS-encrypted connections, or 636 for SSL-encrypted connections) and bind to the LDAP server using the credentials of a user that has sufficient access to modify the attributes you have in mind.