@MartinVanEs
I'm sorry answering late.
VOIPTools free makecall API work as expected until now. They propose three of them. I use the free one, I don't really know if the other two could be better to use. This solution is free and it looks solid. Maybe some other solutions exists, but my goal was to have something working not to try them all.
Regarding "Get the remote number from current call", I though I had found a solution but I was wrong (the famous LK-99 syndrome). Here are my investigations: data are written to the log and the database only when the call hang up, so too late. I can assure nothing usable is written anywhere in the DB before.
@VoIPTools is an honest company, they propose a way to do it, but also claim it's not so easy (through Event).
Presently, I'm looking for a way to do it through call flow designer or the CRM module. The idea is to write those information as soon as known in another DB and then request that DB. I'm only at the beginning.
Regarding the main subject, I really hope 3CX to work on a solid REST API. It would boost 3CX system usage. For instance, regarding webclient, a lot of people request for "this but not that". I dream of the day when 3CX webclient would be just a default free webclient, but the ecosystem will provide other ones for free or not based on an API. As mentioned in another post, we have decided to move to 3CX, but the company mainly use RDS sessions for users. It's rather hard to have any Real Time working with RDS session. So, we have equipped users with Yealink phone when at office. But we still need access to the chat and status change. Sadly, you can't disable phone on the webclient. And has some have also installed the 3CX app on their own phone, when a call arrive it rings everywhere: Yealink, webclient, mobile phone... With an API, we could consider, building a "chat only" webclient. Or a "Change status only" web page.
I keep you informed of my findings, regards