Overview
This node acts as a real-time event trigger for OpenPhone, allowing workflows to respond immediately when specific events occur within the OpenPhone platform. It listens for various communication-related events such as incoming messages, message deliveries, call ringing, call completions, and availability of call recordings, summaries, or transcripts.
Common scenarios where this node is beneficial include:
- Automating responses or logging when a new message is received.
- Tracking delivery status of messages.
- Initiating follow-up actions when calls start ringing or complete.
- Processing call recordings, summaries, or transcripts as soon as they become available.
For example, a user could set up a workflow that triggers whenever a message is received to automatically log the message content into a CRM system or notify a team via chat.
Properties
| Name | Meaning |
|---|---|
| Events | The types of OpenPhone events to listen for. Options include: - Message Received (triggered on incoming messages) - Message Delivered - Call Ringing - Call Completed - Call Recording Completed - Call Summary Completed - Call Transcript Completed |
| Options | A collection of optional settings: - Filter by Phone Number: Only trigger the event if it relates to the specified phone number. - Include Raw Event: Whether to include the full raw webhook event data in the output. |
Output
The node outputs JSON data representing the event details. The structure includes:
eventType: The type of event triggered (e.g., "message.received").eventId: Unique identifier of the event.createdAt: Timestamp when the event occurred.- Additional fields from the event's
datapayload, which vary depending on the event type (e.g., message content, call details). - Optionally, if enabled, a
rawEventfield containing the entire original webhook event object.
No binary data output is produced by this node.
Example output JSON snippet:
{
"eventType": "message.received",
"eventId": "evt_123456",
"createdAt": "2024-06-01T12:00:00Z",
"from": "+1234567890",
"to": "+0987654321",
"text": "Hello!",
"rawEvent": { /* full webhook event object, if included */ }
}
Dependencies
- Requires an API key credential for authenticating with the OpenPhone API.
- The node registers webhooks with OpenPhone to receive event notifications; thus, a publicly accessible webhook URL configured in n8n is necessary.
- No additional external dependencies beyond the OpenPhone API and n8n webhook infrastructure.
Troubleshooting
- Webhook Registration Failures: Errors during webhook creation or deletion may occur due to invalid API credentials or network issues. Verify the API key and ensure the n8n instance can reach OpenPhone endpoints.
- Event Filtering Not Working: If no events trigger despite correct setup, check the "Events" property selections and any phone number filter applied. The filter requires exact matches on phone numbers present in the event data.
- Unexpected Event Types: The node ignores events not selected in the "Events" property. Ensure the desired event types are enabled.
- Missing Data Fields: Some events may have different data structures. Review the OpenPhone API documentation for event payload details if expected fields are missing.