API Documentation

Last updated: October 2026

The Rt Agent Connector API lets AI assistants such as Meta Muse read a workspace's leads, conversations, bookings and knowledge. It is a single REST endpoint described by an OpenAPI 3.1 specification.

Download OpenAPI spec

Base URL

POST https://agent.rtstics.com/api/public/muse/v1

Authentication

Workspace admins create a connector token in Settings → Meta Muse connector and choose its permissions (scopes). The token is shown once. Send it on every request:

Authorization: Bearer rt_muse_live_<64 hex characters>
Content-Type: application/json

Tokens are stored only as SHA-256 hashes, see data from their own workspace only, and can be revoked at any time.

Request body

{
  "action": "search_knowledge" | "get_leads" | "get_conversations" | "get_bookings",
  "query": "string (required for search_knowledge, max 1000 chars)",
  "agent_id": "uuid (optional — limit to one agent)",
  "limit": 1-50 (optional, default 10)
}

Actions

search_knowledge scope: knowledge:read

Semantic search across the workspace's uploaded files and crawled website pages. Requires query.

Request

{ "action": "search_knowledge", "query": "cancellation policy", "limit": 5 }

Response

{ "results": [ { "agent_id": "…", "content": "Cancellations within 24h…", "similarity": 0.81 } ] }

get_leads scope: leads:read

Most recent leads captured by the workspace's agents.

Request

{ "action": "get_leads", "limit": 10 }

Response

{ "leads": [ { "id": "…", "agent_id": "…", "name": "Jane", "email": "jane@example.com", "phone": "+1…", "custom_fields": {}, "created_at": "2026-10-01T15:00:00Z" } ] }

get_conversations scope: conversations:read

Recent visitor conversations (test chats excluded) with their messages. Max 20 conversations.

Request

{ "action": "get_conversations", "limit": 5 }

Response

{ "conversations": [ { "id": "…", "agent_id": "…", "origin": "https://example.com", "last_message_at": "…", "messages": [ { "role": "user", "content": "Do you take WCB?", "created_at": "…" } ] } ] }

get_bookings scope: bookings:read

Appointments booked through Cal.com or Juvonno, from the last 24 hours onward.

Request

{ "action": "get_bookings", "limit": 10 }

Response

{ "bookings": [ { "id": "…", "agent_id": "…", "start_time": "2026-10-03T14:00:00Z", "attendee_name": "Jane", "attendee_email": "jane@example.com", "status": "confirmed" } ] }

Examples

cURL

curl -X POST https://agent.rtstics.com/api/public/muse/v1 \
  -H "Authorization: Bearer $RT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"action":"get_leads","limit":5}'

JavaScript

const res = await fetch("https://agent.rtstics.com/api/public/muse/v1", {
  method: "POST",
  headers: { Authorization: `Bearer ${token}`, "Content-Type": "application/json" },
  body: JSON.stringify({ action: "get_bookings" }),
});
const data = await res.json();

Python

import requests
r = requests.post("https://agent.rtstics.com/api/public/muse/v1",
    headers={"Authorization": f"Bearer {token}"},
    json={"action": "search_knowledge", "query": "opening hours"})
print(r.json())

Errors

400 bad_request   Invalid body or missing query
401 unauthorized  Missing, unknown or revoked token
403 forbidden     Token lacks the scope for this action
404 not_found     agent_id not in this workspace
429 rate_limited  More than 60 requests per minute per token
500 server_error  Unexpected error

Rate limits

60 requests per minute per token.

Support

Questions or issues: support@rtstics.com. See also our Privacy Policy and Terms.