The API
Four endpoints, and the same four as MCP tools. Three are the ordinary half of a marketplace API — search the catalogue, search the pages that already rank, list your orders. The fourth is the one no other link marketplace can offer: every nightly reading taken on a link you bought. Not “delivered on 3 March”, but what the page carried last night — the link present, the rel it was published with, the anchor as it appears, whether the page is indexable — and the same for every night before it.
GET/api/v1/inventory
Search the catalogue. Every filter the browse page has, under the same names — so a search you narrowed in the browser can be pasted straight in.
curl -H "Authorization: Bearer $LB_KEY" \
"https://linkbourse.com/api/v1/inventory?topic=B2B%20SaaS&dr=40&links=1"GET/api/v1/pages
The pages publishers will insert a link into: the article, its traffic as they state it, the queries it ranks for, and what a link in it costs.
curl -H "Authorization: Bearer $LB_KEY" \
"https://linkbourse.com/api/v1/pages?q=agency%20crm&page_traffic=500"GET/api/v1/orders
Everything this account has bought or sold, with the guarantee each one carries.
curl -H "Authorization: Bearer $LB_KEY" https://linkbourse.com/api/v1/ordersGET/api/v1/orders/{ref}
One order and every reading taken on it: what the link was sold as, what the page carried each night, and which nights we could not read at all.
curl -H "Authorization: Bearer $LB_KEY" https://linkbourse.com/api/v1/orders/AM-4K2QX9What the answers look like
Success is { data, meta } and failure is { error: { message } }, on every endpoint. Numbers are integer minor units with the currency beside them, never a float. Nothing is cached: an answer about whether a link is still standing has to be today’s.
120 requests a minute per key, counted per key rather than per address — an agency behind one office IP running four integrations is four callers, and a scraper rotating addresses on one key is one.
From an assistant, in words
The same four things are exposed as MCP tools at /api/mcp, so an agency running link building out of Claude or any other MCP client can ask for them in words — “which of the links we bought for Northwind are still do-follow” — and have it answered from the readings rather than from a spreadsheet somebody maintains. It takes the same key, which means one credential, one rate limit and one revocation rather than a second place to leak.
{
"mcpServers": {
"linkbourse": {
"url": "https://linkbourse.com/api/mcp",
"headers": { "Authorization": "Bearer lb_live_…" }
}
}
}Four tools: search_sites, search_pages, list_orders and get_link_readings. All of them read; none of them can spend money, whatever the key allows.
A night we could not read
A reading carries unreadablewhen the page refused us — a 403, a timeout, a rate limit. It is not the same as the link being gone, it is never counted against the publisher, and the API says which it was rather than flattening both into “not found”. Settlement makes the same distinction, and an integration that ignored it would be building a case the marketplace itself refuses to act on.