ringcentral

n8n node for RingCentral API integration with comprehensive support for SMS, Voice, Fax, Meetings, Team Messaging, and more

Package Information

Downloads: 387 weekly / 387 monthly
Latest Version: 1.0.1
Author: Joshua Smith

Documentation

n8n-nodes-ringcentral

npm version
License: MIT
n8n
TypeScript
GitHub

This is an n8n community node that provides comprehensive integration with the RingCentral API. It lets you use RingCentral in your n8n workflows for SMS messaging, voice calls, fax, video meetings, team messaging, and more.

RingCentral is a leading cloud communications platform that provides voice, video, team messaging, and collaboration solutions for businesses.

n8n is a fair-code licensed workflow automation platform.

Installation
Operations
Credentials
Compatibility
Usage
Resources

Installation

Follow the installation guide in the n8n community nodes documentation.

  1. Go to Settings > Community Nodes.
  2. Select Install.
  3. Enter n8n-nodes-ringcentral in Enter npm package name.
  4. Agree to the risks of using community nodes: select I understand the risks of installing unverified code from a public source.
  5. Select Install.

After installing the node, you can use it like any other node. n8n displays the node in search results in the Nodes panel.

Operations

This node supports the following RingCentral resources and operations:

Message (SMS)

  • Send - Send an SMS message
  • Get - Get a specific message
  • Get Many - Retrieve multiple messages with filtering
  • Update - Update message read status
  • Delete - Delete a message

Call Log

  • Get - Get a specific call log record
  • Get Many - Retrieve call logs (extension or account level)
  • Delete - Delete call log records

Call Queue

  • Get - Get a call queue
  • Get Many - List all call queues
  • Get Members - Get call queue members
  • Assign Members - Assign members to a call queue

Contact

  • Create - Create a personal contact
  • Get - Get a contact
  • Get Many - List all personal contacts
  • Update - Update a contact
  • Delete - Delete a contact
  • Search Directory - Search company directory

Extension (Users)

  • Create - Create a new extension/user
  • Get - Get extension details
  • Get Many - List all extensions
  • Update - Update extension information
  • Delete - Delete an extension

Fax

  • Send - Send a fax with file attachments
  • Get - Get a specific fax
  • Get Many - Retrieve multiple faxes

Meeting

  • Create - Create a video meeting
  • Get - Get meeting details
  • Get Many - List all meetings
  • Update - Update meeting settings
  • Delete - Delete a meeting

Presence

  • Get - Get presence status
  • Update - Update presence status (Available, Busy, Offline)

Recording

  • Get - Get recording metadata
  • Get Content - Get recording content or download as binary
  • Get Many - List all recordings from call log

Team Messaging

  • Post Message - Post a message to a chat
  • Get Chats - Retrieve all chats
  • Get Chat - Get a specific chat

Webhook

  • Create - Create a webhook subscription
  • Get - Get webhook details
  • Get Many - List all webhooks
  • Update - Update webhook settings
  • Delete - Delete a webhook

Analytics

  • Get Aggregated Data - Get aggregated call analytics
  • Get Performance Data - Get performance metrics

Credentials

This node uses OAuth 2.0 authentication. To set up credentials:

  1. Create a RingCentral developer account at https://developers.ringcentral.com
  2. Create a new app in the RingCentral Developer Portal
  3. Configure your app with the following:
    • Application Type: Public
    • Platform Type: Server/Web
    • OAuth Redirect URI: Your n8n OAuth callback URL
    • Permissions: Select the scopes you need (ReadAccounts, SMS, ReadMessages, etc.)
  4. Note your Client ID and Client Secret
  5. In n8n, create new RingCentral OAuth2 credentials:
    • Select Production or Sandbox environment
    • Enter your Client ID
    • Enter your Client Secret
    • Configure the Scope (space-separated)
    • Connect and authorize

Required Scopes

Different resources require different scopes. Configure your RingCentral app with the appropriate permissions:

Resource Required Scopes
Message (SMS) SMS, ReadMessages, EditMessages
Call Log ReadCallLog
Call Queue ReadAccounts
Contact ReadContacts, Contacts
Extension ReadAccounts, EditAccounts
Fax Faxes, ReadMessages
Meeting Meetings
Presence ReadPresence, EditPresence
Recording ReadCallRecording
Team Messaging TeamMessaging, Glip
Webhook SubscriptionWebhook
Analytics Analytics

Note: When using the Sandbox environment, some features may have limited functionality or test data.

Common Issues

  • 403 Permission Denied: Missing required scope - check the table above
  • 404 Not Found: Resource ID doesn't exist or was deleted
  • 429 Rate Limited: Too many requests - node auto-retries with backoff
  • Empty Dropdowns: Credentials may need reconnection

Compatibility

  • Tested with n8n version 1.0.0+
  • Compatible with RingCentral REST API v1.0

Usage

Sending an SMS

  1. Add the RingCentral node to your workflow
  2. Select Message (SMS) as the resource
  3. Select Send as the operation
  4. Configure:
    • From Phone Number: Your RingCentral phone number
    • To Phone Number(s): Recipient number(s)
    • Message Text: Your message content

Creating a Meeting

  1. Add the RingCentral node to your workflow
  2. Select Meeting as the resource
  3. Select Create as the operation
  4. Configure:
    • Topic: Meeting subject
    • Meeting Type: Instant, Scheduled, or Recurring
    • Start Time: When the meeting starts (for scheduled meetings)
    • Duration: Meeting length in minutes

Getting Call Logs

  1. Add the RingCentral node to your workflow
  2. Select Call Log as the resource
  3. Select Get Many as the operation
  4. Configure filters:
    • Scope: Extension or Account level
    • Date Range: Filter by date

Multi-Tenancy (Dynamic Authentication)

This node supports Multi-Tenancy by allowing you to inject Access Tokens dynamically instead of using saved credentials. This is ideal for managing multiple customers in a single workflow.

  1. Set Authentication Mode to Dynamic Access Token (Multi-Tenant).
  2. Map your Access Token from an upstream node (e.g., from a database or HTTP Request).
  3. Select the Server Environment (Production or Sandbox).

Note: In Dynamic Mode, the node cannot refresh tokens. Your workflow must handle token refresh logic (e.g., using an HTTP Request node to /restapi/oauth/token) before passing the valid access token to this node.

Resources

Development

To modify or extend this node:

# Install dependencies
npm install

# Build the node
npm run build

# Run n8n in development mode
npm run dev

# Lint code
npm run lint

# Format code
npm run format

Contributing

Contributions are welcome! If you'd like to add features, fix bugs, or improve documentation:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Please ensure your code passes linting (npm run lint) before submitting.

License

MIT

Support

For issues, questions, or contributions, please visit the GitHub repository.

Discussion