How to implement client generated IDs

My underlying use-case is slightly more complex, but I was hoping to solve my problem by letting the ids be “client_generated” and required. This would essentially let me solve my problem (where resources are created implicitly) at times. However when I did this, I got an error from terraform saying that the id attribute can’t be marked as required.

Is there a particular pattern to follow in this case. I did think about using a different name, but it’s really annoying and silly because we call it the id everywhere, so “existing_id” seemed kind of weird, when it will just eventually equal the id.