RB2B
Read the website visitors RB2B identified in the last 90 days: who they are, where they work and the page they were on. Connect with an RB2B API key on a Pro or Pro+ plan.
- rest
https://api.superagnt.com/v1/connections/rb2bplus the vendor's own path, with your superagnt_ API key asAuthorization: Bearer.- mcp
- Tools named
connection_rb2b_*onhttps://mcp.superagnt.com/mcp, served once the account is connected. - billing
- RB2B bills your own account. Calls cost no superagnt_ data credits.
- rate limit
- 0.33 requests a second, 20 a minute: the vendor's ceiling as the registry records it, for sizing bursts. Your plan's own limit is on Connections.
- sync
- Can copy 2 tables into your workspace database and keep them fresh: the tables.
The RB2B connection lets an agent read the people RB2B identified on your website through RB2B's Profiles API: name, title, company, business email, LinkedIn URL, company size and revenue, location, the page they were last seen on, the referrer, and the tags your RB2B rules set (for example Hot Lead or ICP). It has one tool, connection_rb2b_list_profiles. The tool only reads, so a superagnt_ agent runs it without asking.
one shared rate budget
RB2B allows 20 requests per minute per key and 60 requests per minute per IP address, counted across every key. superagnt_ calls RB2B from shared servers, so every superagnt_ workspace connected to RB2B draws on that same 60 per minute. Read 100 profiles per call and never poll in a tight loop. A refused call comes back as RATE_LIMITED: back off, then retry with the same cursor.
01
Setup
- Check your RB2B plan. The API needs RB2B Pro or Pro+ (trials of those plans work). Free and Starter accounts, and cancelled, past-due or unpaid subscriptions, are refused with
api_access_not_allowed. - Copy your RB2B API key. In RB2B open My Account → Account Details → Account Settings and copy the API key. It starts with
r_live_. Each RB2B account has one key, and regenerating it revokes the old one, so paste the new key on the connection's page if you ever do. - Connect RB2B. In the superagnt app open Integrations, pick RB2B, and paste the key.
02
Things to know
connection_rb2b_list_profiles returns identified visitors, newest first by when they were last seen:
{
"profiles": [
{
"id": 123456789,
"LinkedIn URL": "https://www.linkedin.com/in/example",
"First Name": "Jane",
"Last Name": "Doe",
"Title": "VP Marketing",
"Company Name": "Acme",
"Business Email": "jane@acme.com",
"Website": "https://acme.com",
"Industry": "Software",
"Employee Count": "51-200",
"Estimate Revenue": "$10M-$50M",
"City": "Austin",
"State": "TX",
"Zipcode": "78701",
"Seen At": "2026-10-08T14:03:00Z",
"Referrer": "https://www.google.com/",
"Captured URL": "https://yoursite.com/pricing",
"Tags": "Hot Page, Hot Lead"
}
],
"next_cursor": "eyJpZCI6MTIzNDV9"
}The values above are illustrative. Field names contain spaces and are case-sensitive, and Tags is one comma-separated string.
- One profile per person, with the latest visit only. It is not a page-view log. RB2B sends earlier page views only through its webhook, which you set up in the RB2B app (there is no API for it). The webhook payload carries no profile
id, so match its rows onLinkedIn URL. - 90 days of history.
sinceanduntilfilter on when a visitor was last seen, andsincecannot be more than 90 days back. Older history exists only as a CSV export from the RB2B app. - No lookups or company filters. There is no single-profile lookup and no industry, size or revenue filter. List by time and match on
Business EmailorLinkedIn URLyourself. - Paging. Each call returns up to
limitprofiles (1 to 100, default 25). Whilenext_cursoris not null, pass it back unchanged ascursor, with the samesince,untilandlimit. A nullnext_cursoris the last page, and there is no total count. To read only what is new, start again without a cursor and setsinceto the time of your last read. - The connection does not cover RB2B's OEM partner endpoints (managing domains and reading credit usage), which only OEM partner accounts can call.
Errors
| RB2B answers | You get | What to do |
|---|---|---|
401 missing_api_key, invalid_api_key_format or invalid_api_key | PROVIDER_ERROR, HTTP 401 | The key is wrong, or it was regenerated or deleted in RB2B. Paste the current key on the connection's page. |
403 api_access_not_allowed | PROVIDER_ERROR, HTTP 403 | The RB2B account is not on Pro or Pro+, or its subscription is cancelled, past due or unpaid. |
429 rate_limited | RATE_LIMITED, HTTP 429 | The key's limit or the shared per-IP budget is used up. Back off, then retry with the same cursor. |
Over MCP, the tool result carries RB2B's own code in upstreamError (with limit_per_minute on a 429). Over REST only the HTTP status and the superagnt_ code and message come back.
03
Examples
Read the latest identified visitors
curl "https://api.superagnt.com/v1/connections/rb2b/profiles?limit=100" \
-H "Authorization: Bearer $AGNTDATA_API_KEY"Read visitors seen since a point in time
curl "https://api.superagnt.com/v1/connections/rb2b/profiles?since=2026-10-01T00:00:00Z&limit=100" \
-H "Authorization: Bearer $AGNTDATA_API_KEY"Fetch the next page
curl "https://api.superagnt.com/v1/connections/rb2b/profiles?since=2026-10-01T00:00:00Z&limit=100&cursor=$NEXT_CURSOR" \
-H "Authorization: Bearer $AGNTDATA_API_KEY"04
Sync
An RB2B sync copies the visitors RB2B identifies into tables in your workspace database and keeps them fresh, so agents read local tables instead of paging RB2B on every run. Turn it on from the Sync panel on the RB2B connection page in the superagnt app. The panel previews the rows and webhook events against your plan before anything is created. How syncs work in general: Vendor sync.
How updates arrive. Profiles are polled by last-seen time. Page views exist only from RB2B's webhook, because RB2B's API has no page views, so views sent while the webhook is off are lost.
Set up the webhook in RB2B. RB2B has no API for webhooks, so you paste the sync's webhook URL into RB2B yourself. Once the sync is on, the Sync panel shows the URL in a copyable field next to these steps (on a workspace MCP connection, agnt_sync_status returns it as ingest_url):
- Open the webhook settings. In RB2B, open Integrations, then Webhook.
- Paste the URL. Paste the URL from the Sync panel and save.
- Send every page view. Turn on Send repeat visitor data so every page view arrives, not just the first.
- Test it. Click Send a Test Event. The Sync panel shows it within a minute.
one webhook per account
RB2B allows one webhook per account. If yours already points at another tool, replacing it stops that tool's feed.
The Sync panel reports the webhook's health: waiting for the first event, receiving events, or no events since a given time while RB2B keeps identifying visitors, which can mean RB2B switched the webhook off. Re-enable it under Integrations → Webhook in RB2B. Polling keeps the profiles current meanwhile. Turning the sync off and on again issues a new URL to paste.
Plans and scope.
- RB2B's API needs the Pro or Pro+ plan. On a lower plan the sync is refused before anything is created, with the plan as the reason.
- RB2B serves at most 90 days of history, whatever the history setting says, and the preview says so.
- RB2B limits requests per key and per IP, so the sync paces itself to 40 a minute across every superagnt_ workspace, which leaves room for your agents' RB2B calls. Synced RB2B data stays in your own workspace database.
What a RB2B sync copies
A sync copies these tables into your workspace database and keeps them fresh, so an agent reads local rows instead of calling RB2B on every run. Turn tables on and off from the Sync panel on the connection. Every table also carries _raw, _hash, _synced_at and _deleted_at. How syncs work: Vendor sync.
beta
_raw column.| Table | What it holds | Default |
|---|---|---|
rb2b_profilesIdentified visitors | Every visitor RB2B identified, with their company and their latest visit. RB2B keeps 90 days on its API, so the sync starts with at most the last 90 days. | on |
rb2b_page_viewsPage views | One row per page view RB2B sends to the webhook (every visit when Send repeat visitor data is on). RB2B's API has no page views, so these exist only from the webhook, and views sent while it was off are lost. Kept for 90 days by default. | on |
0 tools, one per resource and risk
MCP servers and agents on the grouped surface list RB2B as these tools. Each takes an action, and the ones that work across record types an object. Every operation also keeps its own per-operation name, in the next table, which works on every server. How grouping works: Grouped tools.
| Tool | Risk | Actions |
|---|
All 1 operations
Each operation is a REST path under https://api.superagnt.com/v1/connections/rb2b and an MCP tool. The per-operation tool name is the one permissions, approvals and usage records use.
| Operation | MCP tool |
|---|---|
GET /profilesList identified website visitors | connection_rb2b_list_profilesgrouped servers list it under this name |