The issue is likely related to how your custom connector is sending variables or handling correlation keys compared to the REST API call. I found the following relevant resources:
The BPMN Spec requires that you cross process boundaries when throwing / receiving a message. As such, throwing from your main flow to your subprocess is not valid BPMN, which is likely why it’s not working (Camunda checks for this).
You can “cheat” by making your connector call the REST API (ie. appear to be outside your process), or by using one of the other Subprocess Start modes (condition is common)
It would be better to use a Conditional split ( < O > ) based on the diagram that you’ve shared - look at the results of your connector, and determine which branch(es) of the process should be started.