1) Welcome to the Party!
2) As you are obviously new here, I have some suggestions to help us all help you:
When you post, please post your entire configuration including (but not limited to) your installation method (7.X.X?) and vicidial version with build (VERSION: 2.X-XXXx ... BUILD: #####-####).
This IS a requirement for posting along with reading the stickies (at the top of each forum) and the manager's manual (available on EFLO.net, both free and paid versions)
You should also post: Asterisk version, telephony hardware (model number is helpful here), cluster information if you have one, and whether any other software is installed in the box. If your installation method is "manual/from scratch" you must post your operating system with version (and the .iso version from which you installed your original operating system) plus a link to the installation instructions you used. If your installation is "Hosted" list the site name of the host.
If this is a "Cloud" or "Virtual" server, please note the technology involved along with the version of that techology (ie: VMware Server Version 2.0.2). If it is not, merely stating the Motherboard model # and CPU would be helpful.
Similar to This:
Vicibox X.X from .iso | Vicidial X.X.X-XXX Build XXXXXX-XXXX | Asterisk X.X.X | Single Server | No Digium/Sangoma Hardware | No Extra Software After Installation | Intel DG35EC | Core2Quad Q6600
3) Do not make up your own "common sense based" description for technical terms. For instance: "Agent Events Push URL" does not exist. Please use the actual name for whatever it is you are talking about. For instance: "Dispo Call URL"? "/agc/api.php"?
4) API requests are not notification systems. You send a request, you get a response. That's it. If you want a notification of every event that occurs (or just specific events), you have to constantly monitor or modify the code specifically to send a notification of that event somewhere that you can see it and/or take action. For instance: When any event occurs as the result of an agent pressing a button, and AJAX request is sent by the agent web page to the AJAX responder in Vicidial. You can see this occur when the agent pushes a button in the Javascript Console of the agent's web browser. You could certainly modify the AJAX responder's php page to send a notice of any specific action (or all activity) to another location to trigger whatever you want triggered. But that's not part of Vicidial.
5) Given the odds, if you want the agent to pause but are blocked by a requirement for "hangup customer", you can probably issue a "hangup customer" command before the pause request. It may be a good idea to first test the status of the agent in some fashion to determine whether this is necessary.
6) Much of this is also possible by making direct queries to the asterisk database to gather information and even initiate events that are not otherwise supported by the API, but that's dangerous ground so watch your step.