Roam Trigger

Handle Roam webhooks

Overview

This node acts as a trigger for events from the Roam service, specifically designed to handle webhooks related to meeting recordings and transcripts. It listens for two types of events: when a new meeting recording is saved and when a new transcript is saved. The node can be used in automation workflows that need to react immediately to these events, such as processing or storing new recordings or transcripts, sending notifications, or triggering further data analysis.

Typical use cases include:

  • Automatically downloading or archiving new meeting recordings as soon as they become available.
  • Initiating transcription review or text analysis workflows when a new transcript is saved.
  • Integrating Roam meeting data into other systems like CRMs or document management platforms.

Properties

Name Meaning
Event The type of event to listen for. Options are:
- New Recording: Triggers when a new meeting recording is saved.
- New Transcript: Triggers when a new transcript is saved.

Output

The node outputs JSON data representing the event payload received from Roam:

  • When triggered by a webhook, it outputs an array of objects corresponding to the event data (recordings or transcripts).
  • On manual execution (e.g., testing), it fetches the latest item from the Roam API for the selected event type and outputs it as JSON.
  • The output JSON structure corresponds to the Roam API's response for either recordings or transcripts, depending on the event selected.
  • No binary data output is produced by this node.

Dependencies

  • Requires an API authentication token configured via OAuth2 credentials to access the Roam API.
  • Needs a valid webhook URL configured in n8n to receive incoming webhook calls from Roam.
  • Relies on the Roam API endpoints for subscribing/unsubscribing to webhooks and fetching event data:
    • /v0/webhook.subscribe
    • /v0/webhook.unsubscribe
    • /v1/recording.list (for recordings)
    • /v0/transcript.list (for transcripts)

Troubleshooting

  • Unsupported Event Error: If an unsupported event value is set, the node throws an error indicating the event is not supported. Ensure the "Event" property is set to one of the allowed options.
  • Webhook URL Issues: Failure to determine the webhook URL will cause subscription creation to fail. Verify that the workflow is activated and the webhook URL is accessible.
  • API Request Failures: Errors during API requests (subscribe, unsubscribe, or data fetch) may occur due to invalid credentials, network issues, or API changes. Check the API key validity and network connectivity.
  • Manual Execution Returns Empty Data: If no recent recordings or transcripts exist, the manual run will return an empty array. This is expected behavior if no data is available.
  • Webhook Data Missing or Malformed: If the webhook payload does not contain expected data, the node might output empty results. Confirm that Roam sends the correct payload format.

Links and References

Discussion