n8n-nodes-telli
v1.2.0
Published
n8n community node which lets you use the telli AI phone calling platform in your n8n workflows
Maintainers
Keywords
Readme
n8n-nodes-telli
This is an n8n community node. It lets you use telli AI phone call platform in your n8n workflows.
telli is an AI phone calling platform that lets you automate phone call operations and perform custom tasks.
n8n is a fair-code licensed workflow automation platform.
Repository Structure
credentials/: Contains credential definitionsTelliApi.credentials.ts: Defines the API key authentication for telli API
nodes/: Contains the actual node implementationsTelli/: The telli node folderTelli.node.ts: Main implementation of the telli node with all operationstelli.svg: Icon for the node in n8n
dist/: Generated folder containing compiled JavaScript code (created after runningnpm run build)package.json: Defines package dependencies and n8n node registration information
Installation
Option 1: Install from npm
Follow the installation guide in the n8n community nodes documentation.
npm install n8n-nodes-telliOption 2: Manual installation
- Clone this repository to your local machine
- Install dependencies:
npm install - Build the code:
npm run build - Create a custom directory in your n8n installation:
mkdir -p ~/.n8n/custom - Create a package.json file in the custom directory:
{
"name": "n8n-custom-nodes",
"version": "0.1.0",
"private": true,
"dependencies": {
"n8n-nodes-telli": "file:///path/to/cloned/n8n-nodes-telli"
}
}- Install the dependency:
cd ~/.n8n/custom && npm install - Restart n8n
Actions
The telli node provides the following operations, grouped by resource:
Contact
| Operation | Description | API Docs | | --- | --- | --- | | Create Contact | Create a new contact with name, phone number, email, and custom properties | Docs | | Get Contact | Retrieve a contact by ID | Docs | | Get Contact by External ID | Retrieve a contact using your external system's ID | Docs | | List Contacts | List contacts with pagination and optional "Return All" toggle | Docs | | Update Contact | Update an existing contact. Only provided fields are changed | Docs | | Delete Contact | Soft-delete a contact and anonymize all PII data | Docs |
Agent
| Operation | Description | API Docs | | --- | --- | --- | | Get Agent | Retrieve an agent by selecting from a dropdown or specifying an ID | Docs | | List Agents | List agents with pagination and optional "Return All" toggle | Docs |
Call
| Operation | Description | API Docs | | --- | --- | --- | | Schedule Call | Schedule an AI phone call at the earliest opportunity within the dialer window | Docs | | Schedule Calls (Batch) | Schedule multiple calls in one request (max 50 per request) | Docs | | Get Call | Retrieve call details including transcript and analysis by call ID | Docs | | Initiate Call | Immediately initiate an outbound call (not recommended — prefer Schedule Call) | Docs | | Remove From Auto Dialer | Remove a contact from the auto dialer queue | Docs | | Remove From Auto Dialer (Batch) | Remove multiple contacts from the auto dialer queue (max 50 per request) | Docs |
Contact Property
| Operation | Description | API Docs | | --- | --- | --- | | Create Contact Property | Define a new custom property for contacts (text, number, select, etc.) | Docs | | Get Contact Property | Retrieve a contact property by key | Docs | | List Contact Properties | List all contact properties for the account | Docs | | Update Contact Property | Update an existing contact property's label, description, or options | Docs |
Phone Number
| Operation | Description | API Docs | | --- | --- | --- | | List Phone Numbers | List all active phone numbers for the account | Docs | | Import Phone Number | Import a phone number from your own SIP trunk provider | Docs | | Replace Phone Number | Replace a phone number with a new one (old number stays active for callbacks for 30 days) | Docs | | Delete Phone Number | Schedule a phone number for deletion (stays active for callbacks for 30 days) | Docs |
Deprecated (v1)
These operations use the legacy v1 API and are kept for backward compatibility with existing workflows. Use the Contact resource above for new workflows.
| Operation | Description | API Docs | | --- | --- | --- | | Add Contact | Add a contact using the v1 endpoint | Docs | | Add Contacts (Batch) | Add multiple contacts using the v1 batch endpoint | Docs | | Get Contact | Get a contact by ID using the v1 endpoint | Docs | | Get Contact by External ID | Get a contact by external ID using the v1 endpoint | Docs | | Get Contacts (Batch) | Get multiple contacts using the v1 batch endpoint | Docs | | Update Contact | Update a contact using the v1 endpoint | Docs | | Update Contacts (Batch) | Update multiple contacts using the v1 batch endpoint | Docs |
Credentials
To use the telli nodes, you need to authenticate with the telli API:
- Sign up for an account at telli.com
- Navigate to your account settings
- Create an API key with the necessary permissions
- Use this API key in the telli API credentials in n8n
Compatibility
This node has been tested with n8n version 0.171.0 and higher.
Usage
Create Contact Example
- Add the telli node to your workflow
- Select the Contact resource and Create Contact operation
- Fill in the required fields (First Name, Last Name, Phone Number)
- Optionally add email, external ID, salutation, timezone, and custom properties
- Properties can be added using the field editor or as a JSON array:
[{"key": "company", "value": "Acme"}]
Schedule Call Example
- Add the telli node to your workflow
- Select the Call resource and Schedule Call operation
- Enter the Contact ID and select an Agent from the dropdown
- Optionally set max retry days and override the from number
- The call will be scheduled at the earliest opportunity within the agent's dialer window
List Contacts with Pagination
- Add the telli node to your workflow
- Select the Contact resource and List Contacts operation
- Toggle Return All to fetch every contact, or set a Limit for a single page
Manage Contact Properties
- Add the telli node to your workflow
- Select the Contact Property resource
- Use Create Contact Property to define new fields (e.g., a "Company" text field or a "Status" select field)
- For
selectandmulti_selecttypes, add options using the field editor or as JSON:[{"value": "a", "label": "Option A"}]
Delete Contact Example
- Add the telli node to your workflow
- Select the Contact resource and Delete Contact operation
- Enter the Contact ID
- Warning: This soft-deletes the contact and anonymizes all PII data
Remove from Auto Dialer Example
- Add the telli node to your workflow
- Select the Call resource and Remove From Auto Dialer operation
- Enter the Contact ID
- This stops the contact from receiving automated calls without deleting their data
Resources
Development
Making Changes and Rebuilding Locally
Refer to the n8n docs on how to run nodes locally: docs
Make your changes to the code (e.g., in
nodes/Telli/Telli.node.ts)Build the project:
npm run build- Copy the built files to your n8n custom directory:
cp -r dist/* ~/.n8n/custom/n8n-nodes-telli/ # or wherever your custom directory is- Restart n8n to see your changes:
# First kill the current n8n process (Ctrl+C), then run:
n8n startDevelopment Workflow Tips
- Use
npm run devto continuously build the code as you make changes - Check for linting errors with
npm run lint - Format code with
npm run format
Troubleshooting
If you don't see your changes after rebuilding and restarting n8n:
- Check if there are any errors in the n8n logs
- Verify that the files were correctly copied to the custom directory
- Make sure n8n was properly restarted
- Clear your browser cache or open n8n in an incognito window
