Queue management using REST API in FreePBX

Dear FreePBX Team,

I am writing to request detailed information about using the FreePBX REST API specifically for queue management (creating, modifying, and viewing queues). I have reviewed the official documentation and available resources, but I have not found clear instructions or examples on how to work with queues through the REST API.

I am currently using the REST API URL:
https://localhost/admin/api/api/rest

However, I have not been able to find the endpoints or methodology to manage queues from this interface. In contrast, I have noticed that the modules using GraphQL (URL: https://localhost/admin/api/api/gql) have very comprehensive documentation, and I have been able to successfully implement extension management via GraphQL.

Could you please let me know if there is any official documentation or examples on how to create, modify, and view queues using the REST API? If this functionality is not available, I would appreciate your confirmation and, if possible, any suggestions for recommended alternatives for queue management via API.

Thank you in advance for your attention and support.

Best regards,

S.Caballero

Are you talking about run-time management, rather than configuration time? In that case you should be using Asterisk AMI, not FreePBX ARI. In particular, Asterisk ARI is something you would use for an alternative implementation of queuing, not a me means of controlling the existing application.

I’m not familiar with FreePBX’s ARI interface, so can’t answer for configuration time use.

Hi David,

Thank you very much for your prompt response.

We’ve been handling queue events in our application via AGI for many years now, and it works flawlessly.

My question is specifically related to using the FreePBX API to perform CRUD operations on queues — we’d like to create, list, and modify queues directly from our application, without relying on the FreePBX web interface.

For instance, I’ve already built an MVP to manage extensions using FreePBX’s GraphQL API, which is very well documented.
However, after much research, testing, and failure, I’ve decided to play the wildcard and ask the expert. :sweat_smile:

I truly appreciate your time and any guidance you can provide.

Best regards,
S. Caballero