🎯 Goal: Connect MyOperator telephony with Salesforce so you can: (1) auto‑create/update leads on inbound calls, (2) initiate outbound calls from Salesforce, and (3) auto‑log call activities with recording links—without manual entry.
💡 Tip: Keep a test customer number and an agent number ready for validation.
Flow | Trigger | Where you configure | What happens |
Inbound | Customer calls your MyOperator number | MyOperator (In‑/After‑Call push) → Salesforce (endpoint/connector) | Lead/contact is created/updated; Activity logged with metadata & recording URL. |
Outbound | Click‑to‑call in Salesforce | Salesforce (action/button) → MyOperator (outbound handler) | Call is placed; outcome + recording are logged back to Salesforce. |
If unsure which path you have, start with Path A. You can switch later without data loss.
Method: POST • Content‑Type: application/json
Salesforce receiving endpoint (example) (paste your actual URL from Path A or your Site):
https://<your-domain>.my.salesforce-sites.com/services/apexrest/myoperator/callRecommended JSON keys (map these in MyOperator → Parameters):
{ "callerNumber": "9876543210", "agentNumber": "9988776655", "callStartTime": "2025-08-29T10:07:12Z", "callEndTime": "2025-08-29T10:10:19Z", "status": "connected", "durationSec": 187, "recordingUrl": "https://files.myoperator.com/rec/abcd1234.mp3"}✅ Keep key names consistent—your Salesforce Flow/Apex will rely on them.
callerNumber → Customer Number (no country code)agentNumber → User/Agent NumbercallStartTime → Call Start TimecallEndTime → Call End Timestatus → Call StatusdurationSec → Call Duration (seconds)recordingUrl → File URL🎯 Expected result: After connected calls, MyOperator posts JSON to your Salesforce endpoint; Salesforce creates/updates the record and logs an Activity with metadata + recording link.
/services/apexrest/myoperator/call) that upserts Leads by callerNumber and logs a Task with the metadata.🗒️ Don’t want to code? Use middleware (e.g., Flow + External Services, MuleSoft, or an HTTPS bridge) to accept MyOperator’s POST and write to Salesforce.
A) Inbound test
B) Outbound test
C) Check logs
D) Manual ping (optional)
curl -X POST \ -H "Content-Type: application/json" \ -d '{ "callerNumber":"9876543210", "agentNumber":"9988776655", "callStartTime":"2025-08-29T10:07:12Z", "callEndTime":"2025-08-29T10:10:19Z", "status":"connected", "durationSec":187, "recordingUrl":"https://files.myoperator.com/rec/abcd1234.mp3" }' \ https://<your-domain>.my.salesforce-sites.com/services/apexrest/myoperator/callNo data appears in Salesforce
Outbound “Make Call” does nothing
Recording URL missing
Duplicate Leads
4xx/5xx in MyOperator Logs
Collect before raising a ticket
Who to contact
support@myoperator.coWhat to say
“We integrated MyOperator → Salesforce via POST JSON. We observe . Here are logs, timestamps, endpoint URL, and sample payload.”
/kb/myoperator/manage-webhooks/kb/salesforce/sites-rest-endpoint/kb/salesforce/phone-normalizationHowTo
<script type="application/ld+json">{ "@context": "https://schema.org", "@type": "HowTo", "name": "Integrate MyOperator with Salesforce (inbound, outbound, auto-logging)", "totalTime": "PT35M", "step": [ {"@type": "HowToStep", "name": "Configure in MyOperator", "text": "Set POST + JSON and map callerNumber, agentNumber, timestamps, status, durationSec, recordingUrl.", "url": "#mo-steps"}, {"@type": "HowToStep", "name": "Create Salesforce receiving endpoint", "text": "Use connector (Path A) or Sites + Apex REST (Path B). Copy the endpoint URL.", "url": "#sf-steps"}, {"@type": "HowToStep", "name": "Validate", "text": "Place inbound & outbound test calls; confirm 200 OK in MyOperator logs.", "url": "#validate"} ], "tool": [ {"@type": "HowToTool", "name": "MyOperator Dashboard"}, {"@type": "HowToTool", "name": "Salesforce"} ], "image": {"@type": "ImageObject", "url": "./images/myoperator-salesforce-settings.png", "caption": "MyOperator → Salesforce mapping (POST + JSON)."}}</script>FAQPage
<script type="application/ld+json">{ "@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [ {"@type": "Question", "name": "Is there a live call pop-up in Salesforce?", "acceptedAnswer": {"@type": "Answer", "text": "No. Calls are logged automatically after completion with metadata and a recording link."}}, {"@type": "Question", "name": "Do I need code?", "acceptedAnswer": {"@type": "Answer", "text": "Use the official connector when available (no code). Otherwise, create a Sites + Apex REST endpoint or use middleware."}}, {"@type": "Question", "name": "What fields are logged?", "acceptedAnswer": {"@type": "Answer", "text": "Duration, status, start/end time, and a recording URL, along with the caller/agent numbers."}} ]}</script>