3CX icon

3CX

Interact with 3CX telephony system

Actions462

Overview

The "Update Queue" operation in the Queues resource allows users to modify the configuration of an existing call queue within the 3CX telephony system. This node is useful for administrators or automation workflows that need to programmatically update queue settings such as agent availability, routing strategies, announcements, and other queue behaviors.

Typical use cases include:

  • Adjusting agent availability modes dynamically based on business hours.
  • Changing the polling strategy to optimize call distribution among agents.
  • Updating greeting or on-hold audio files.
  • Modifying callback options or chat/phone/video enablement.
  • Managing queue membership by adding or removing agents or managers.
  • Setting up special routing rules for breaks, holidays, or out-of-office scenarios.

For example, a contact center manager could automate updating queue parameters at the start of each shift or during special campaigns without manual intervention.

Properties

Name Meaning
Id The unique identifier of the queue entity to update. Can be set via expression like {{$json.Id}}.
Agent Availability Mode Boolean flag to enable or disable agent availability mode.
Agents JSON array defining the agents assigned to the queue.
Announcement Interval Number specifying the interval (in seconds) between announcements played to callers in the queue.
Announce Queue Position Boolean indicating whether to announce the caller's position in the queue.
Break Route JSON object defining routing behavior when agents are on break, including tags for routing.
Callback Enable Time Number representing the time (in seconds) after which callbacks are enabled.
Callback Prefix String prefix used for callback numbers.
Call Us Enable Chat Boolean to enable chat channel for the queue.
Call Us Enable Phone Boolean to enable phone calls for the queue.
Call Us Enable Video Boolean to enable video calls for the queue.
Call Us Requirement Option to specify required caller information: Both name and email, only name, only email, or none. Options: Both, Name, Email, None.
Click To Call Id String identifier for click-to-call functionality.
Enable Intro Boolean to enable playing an introductory message to callers.
Forward No Answer JSON object defining routing when no answer occurs, including tags.
Greeting File String URL or identifier for the greeting audio file.
Groups JSON array defining groups with rights and tags associated with the queue.
Holidays Route JSON object defining routing during holidays, including tags.
Intro File String URL or identifier for the intro audio file.
Is Registered Boolean indicating if the queue is registered.
Managers JSON array defining managers assigned to the queue.
Master Timeout Number specifying the master timeout duration (seconds).
Max Callers In Queue Number limiting the maximum number of callers allowed in the queue.
Name String name of the queue.
Notify Codes JSON array of notification codes related to the queue.
Number String representing the queue's phone number or extension.
On Hold File String URL or identifier for the on-hold audio file.
Out Of Office Route JSON object defining routing when out of office, including tags.
Play Full Prompt Boolean indicating whether to play the full prompt to callers.
Polling Strategy Option selecting the call distribution strategy among agents. Options include Hunt, Ring All, Hunt Random Start, Next Agent, Longest Waiting, Least Talk Time, Fewest Answered, Hunt By 3 S, First 3 Available, Skill Based Routing variants.
Priority Queue Boolean indicating if the queue is a priority queue.
Prompt Set String identifier for the prompt set used.
Recording Option controlling call recording behavior: Disabled, Allow To Opt Out, Ask To Opt In.
Reset Queue Statistics Schedule JSON object defining schedule for resetting queue statistics.
Reset Statistics Schedule Enabled Boolean to enable or disable the reset statistics schedule.
Ring Timeout Number specifying how long (seconds) to ring before forwarding or other action.
SLA Time Number defining the Service Level Agreement time threshold (seconds).
Transcription Mode Option for transcription settings: Nothing, Voicemail, Recordings, Both, Inherit.
Type Of Chat Ownership Type Option for chat ownership assignment: Take Manually or Auto Assign.
Wrap Up Time Number specifying wrap-up time (seconds) after a call ends.

Output

The node outputs the response from the 3CX API after updating the queue. The main output is a JSON object containing the updated queue details or confirmation of the update operation.

If the node supports binary data output (not explicitly shown here), it would typically relate to audio files or recordings associated with the queue, but this operation primarily deals with JSON data.

Dependencies

  • Requires an active connection to a 3CX telephony system.
  • Needs an API authentication token or OAuth2 credential configured in n8n to authorize requests.
  • The base URL for the 3CX API must be set correctly in the credentials.
  • The node uses HTTP requests to the 3CX API endpoint /xapi/v1.

Troubleshooting

  • Invalid Queue Id: If the provided queue Id does not exist, the API will return an error. Verify the Id is correct and accessible.
  • Malformed JSON Properties: Properties like Agents, Groups, or Routes require valid JSON. Invalid JSON syntax will cause errors. Use proper JSON formatting or expressions that parse JSON correctly.
  • Authentication Errors: Ensure the API credentials are valid and have sufficient permissions to update queues.
  • Missing Required Fields: The Id property is mandatory; omitting it will cause failure.
  • API Endpoint Issues: Confirm the base URL is correct and the 3CX server is reachable.
  • Unsupported Property Values: For options like Polling Strategy or Recording, ensure values match one of the predefined options.

Links and References

Discussion