← All integration guides

Set Up the RecordJoy AI Agent (Enterprise)

Plan: Enterprise. The AI Agent listens to your video engagement events, reasons over watch behavior and CRM context, then scores leads, drafts follow-ups, creates CRM tasks, and alerts your reps. Version 1 runs in your own n8n instance from a workflow RecordJoy generates for you.

flowchart LR A["Prospect watches video"] --> B["RecordJoy signed event"] B --> C["AI Agent (Claude) in n8n"] C --> D["Score · task · draft · alert"] D --> E["Rep approves & sends"] E -.->|"learns from outcomes"| C

Prerequisites

Estimated time

30–45 minutes

Steps

Part A — configure and download

  1. In RecordJoy, open Dashboard → AI Agent.

🖥️ What you should see: the AI Agent page with an Enterprise badge, an enable toggle, your signing secret, and a three-step setup.

<!-- SCREENSHOT: ai-agent-dashboard.png -->
  1. Choose Your CRM.
  2. Choose your Alert channel and paste the Slack webhook URL (or the alert email address).
  3. Leave Autonomy level on Draft only for your first run. The agent will create drafts and never send to a prospect.
  4. Click Save configuration.
  5. Click Download n8n workflow. A file named recordjoy-ai-agent-<crm>-v1.0.0.json downloads.

The file contains no credentials. Every CRM, Claude, Gmail, and SMTP node references an n8n credential placeholder you connect in Part C. Your RecordJoy signing secret is included, because the workflow must verify RecordJoy's HMAC signature against it — treat the file as sensitive.

Part B — import the workflow

  1. In n8n, click Workflows → Import from File (or the menu → Import from File).
  2. Select the downloaded JSON file.

🖥️ What you should see: the workflow canvas with the pipeline: RecordJoy Event → Verify Signature → Route by Event → Video Context → CRM: Find Contact → AI Agent (Claude) → Parse Agent JSON → Route by Action, plus alert / draft / CRM-write branches and an error handler.

<!-- SCREENSHOT: ai-agent-n8n-imported.png -->
  1. Click Save.

Part C — connect credentials

Each node with a red credential warning needs one connection. Create them once; n8n reuses them.

  1. RecordJoy API (node: Video Context) — credential type Header Auth. Set Name to Authorization and Value to Bearer <your signing secret> (copy the secret from the RecordJoy AI Agent page).
  2. Anthropic API (node: AI Agent (Claude)) — credential type Anthropic. Paste your Anthropic API key.
  3. Connect your CRM credential on the CRM: Find Contact and CRM: Log Engagement nodes:
    • HubSpotHubSpot App Token: a Private App token with crm.objects.contacts.read, crm.objects.contacts.write, and crm.objects.notes.write.
    • SalesforceSalesforce OAuth2: sign in, then replace YOUR_INSTANCE in both node URLs with your My Domain host.
    • Zoho CRMZoho OAuth2: sign in with ZohoCRM.modules.ALL. If your account is not in the .com data center, change zohoapis.com to zohoapis.eu or zohoapis.in in both nodes.
    • GoHighLevelHighLevel OAuth2: authorize the correct sub-account.
  4. Rep Gmail (node: Create Follow-up DRAFT) — credential type Gmail OAuth2, connected as the rep whose drafts folder should receive follow-ups.
  5. If your alert channel is email: connect the Alert SMTP credential on the Alert Rep (Email) and Notify Failure (Email) nodes.

🖥️ What you should see: no red credential warnings left on any node.

<!-- SCREENSHOT: ai-agent-credentials-connected.png -->

Part D — connect the RecordJoy webhook

  1. Open the RecordJoy Event node and copy the Production URL.
  2. Click Save, then turn the workflow Active.
  3. Back in RecordJoy → Dashboard → AI Agent, paste that URL into Agent webhook URL and click Save configuration.
  4. Turn the Enabled toggle on.

Part E — test with a sample event

  1. In RecordJoy, click Test connection. It sends a signed sample video.completed event to your workflow.

🖥️ What you should see: a success toast in RecordJoy, a new execution in n8n, and a row in the Recent activity list showing delivered · HTTP 200.

<!-- SCREENSHOT: ai-agent-test-execution.png -->
  1. Open the n8n execution and confirm each node succeeded — particularly that Verify Signature passed and Parse Agent JSON returned an intent_score and action.
  2. For a real end-to-end check: open one of your shared videos and watch it to the end. Within a minute you should see a video.completed execution, an alert in Slack/email, and a note on the contact in your CRM.

Verification

Troubleshooting

ProblemCauseFix
"Invalid RecordJoy signature — check the signing secret"The secret in the workflow doesn't match your account'sRe-download the workflow after saving your config (the secret is baked in at download time), or paste the current secret into the Verify Signature node's SECRET constant. Don't edit the payload — the signature covers the exact bytes.
CRM node returns 401 / "auth expired"OAuth token lapsed or scopes are missingReconnect the CRM credential in n8n. HubSpot needs contacts read/write + notes write; Zoho needs ZohoCRM.modules.ALL; GoHighLevel needs the Version: 2021-07-28 header (already in the workflow).
"AI Agent did not return JSON"The model wrapped output in prose or fencesThe Parse Agent JSON node already strips fences and extracts the object. If it still fails, open the AI Agent (Claude) node and confirm the system prompt is intact and max_tokens is at least 1024.
Slack alert never arrivesInvalid or revoked incoming webhookTest the URL with curl -X POST -d '{"text":"test"}' <url>. Regenerate the Slack webhook and re-save it in RecordJoy, then re-download the workflow.
Workflow runs but nothing happens in the CRMNo contact_email on the eventVideos sent without a recipient have no contact to match. Send videos through your portal or the send flow so sentTo/sentBy is populated; the agent skips events with no contact.

Notes on autonomy

Updating

The workflow carries meta.templateVersion. When RecordJoy ships an update, re-download from Dashboard → AI Agent and import it as a new workflow, then re-point the RecordJoy webhook URL and deactivate the old one.

Ready to connect?

Your webhook settings live in Dashboard → CRM Integration.