/loginSets the session and XSRF-TOKEN cookies. The page's data-page attribute carries the current Inertia version.
Everything the Robo Connect Dialer for Windows and Android fetches after an agent signs in: SIP setup, agents and presence, live calls, call history, recordings, transcripts, call notes, callbacks and contacts.
Requests use the agent's portal session, so each agent sees only their company's data and every write is attributed to them. Keep session cookies, SIP passwords and recordings on trusted devices and never in public frontend code or logs.
PUT /calls/1504956/note
Origin: https://portal.roboconnect.pk
X-Requested-With: XMLHttpRequest
X-XSRF-TOKEN: <decoded XSRF-TOKEN cookie>
Accept: application/json
Content-Type: application/json
{ "notes": "Disposition: Interested\nSend pricing by email" }
POST /calls/1504956/callbacks
{ "assigned_to_user_id": 321,
"due_at": "2026-10-21T10:00",
"note": "Call back with pricing" }
The softphone signs in with the agent's own portal email and password and keeps the session cookie. Every later request reuses that cookie.
/loginSets the session and XSRF-TOKEN cookies. The page's data-page attribute carries the current Inertia version.
/loginSigns the agent in. Success is a 302 redirect to /.
email, passwordstring, requiredrememberboolean/api/sip-configConfirms the session and returns the agent's SIP account: sip_username, sip_password, extension_number, wss_url, transport, ice_servers, dnd.
/companies/{companyId}/dialer-info/{userId}Richer provisioning: name, company, extension, SIP host, port and transport, caller ID, brand name.
Team rosters, presence and Do-Not-Disturb for the agent's company.
/monitor/live/{companyId}Agents (name, extension, department, sip_status online|offline, status idle|on-call, dnd, today's call stats), liveCalls[] and recentActivity[].
/phone/agent-statusesLightweight presence map: { statuses: { extension: online|offline }, dnd }.
/phone/dndSet the signed-in agent's Do-Not-Disturb. An explicit set, not a toggle.
dndboolean, requiredLive call data for wallboards and supervisor views. Poll every 2 to 5 seconds.
/api/live-callsActive calls with direction, numbers, extension and agent, plus serverTime.
/monitor/live/{companyId}The same live calls together with the agent roster (see Agents).
Call records include direction, numbers, start/answer/end time, duration, billable duration, disposition, cost, extension, notes, follow-up status, transcript status and recording availability.
/calls/historyCall records, 50 per page, as Inertia page props (send X-Inertia: true and X-Inertia-Version) in props.cdrs { data[], last_page }.
pageintegersearch, date_from, date_to, disposition, directionstring/calls/{id}One call as JSON: notes, follow_up_status, transcript, ai_summary, recording_exists.
/phone/timeline/{phone}Every call with a number (calls[]) plus the matching contact. The softphone uses it to find the record of a call that just ended by matching its start time.
/calls/{id}/timelineTimeline events (notes, comments, callbacks, status changes), teammates, tags and follow_up_status.
Recordings are WAV (8 kHz mono, both sides mixed). Transcription runs on the platform.
/calls/recordings/{id}Streams or downloads the recording (audio/wav, supports Range requests). 404 when the call has no recording.
/calls/{id}/transcribeStart transcription of the call recording.
/calls/{id}/transcript-statusPoll every 5 seconds: transcript_status (processing, completed, failed), transcript, ai_summary, ai_analysis.
After a call the softphone saves the agent's disposition note, follow-up status and callback on the call record, attributed to that agent.
/calls/{id}/noteSave the post-call (disposition) note.
notesstring/calls/{id}/statusSet the follow-up status.
statusstring, required/calls/{id}/callbacksSchedule a callback on the call.
assigned_to_user_idinteger, requireddue_atstring, requirednotestring/calls/callbacks/{callbackId}Complete, cancel or reopen a callback.
statusstring, required/calls/{id}/commentsAdd a timeline comment.
bodystring, requiredmentioned_user_idsinteger[]/calls/{id}/tagsReplace the call's tags.
tag_idsinteger[]Caller lookup for incoming calls and two-way contact sync with the softphone.
/phone/lookup/{phone}Who is calling: { found, contact }.
/contactsCompany contacts as Inertia page props (props.contacts).
/contactsCreate a contact from the softphone.
phonestring, requiredaccessstring, requiredname, email, company_name, role, notesstring/contacts/{id}Update a contact (same fields).
/contacts/{id}/notesAdd a note to a contact.
contentstring, requiredTell us what you are connecting. We will confirm the features on your account and help you go live.