Instead of id, use email, url or other unique identifiers on the actor field.
Currently, in order to associate actors with entities, you need to specify the actor id of the backend database on creation time. So the actors should pre-exist on the database. The workflow on entity creation then is, if there are actors, first check if the actor exist in the database (only on the name field?), get the id if it exists and it is one matched actor, and add on the entity description. If it does not exist, create one, get the id and then add it on the entity description.
I think this workflow should be included as a service on the backend. On the entity you should specify either a unique ID (ORCID), a URL or an email. Then the service will execute the above workflow. So the client will need to execute only on request.