Channel Originate Setting Caller ID

I need to place two calls and connect them both through API. I’ not simulating the following command to achieve that through an API.

channel originate local/1234567890@from-internal extension 2345678901@from-internal

This is working fine. But I need to set Caller ID.
I have the caller IDs set at the extension level. If I can call from the extension, then caller id can be set. So I tried to use 3117 extension without any success

channel originate local/1234567890@3117 extension 2345678901@3117

I also tried with the trunk name after @ but that was also failed.

Can you guys guide me to place the calls through an extension or custom dialplan to make a call by setting a caller ID?

Thanks in advance.

Set(CALLERID(num)=…)

Is it possible to do within the command?

I’ve modified the from-internal to active that. Thanks everyone for replying here.