Build on your bookmarks with the AgentMash API
Search and read the posts you saved on X, LinkedIn, Instagram, Reddit, YouTube and the web from your own scripts and apps. Four read-only endpoints, JSON in and out.
Base URL
curl "https://agentmash.ai/api/v1/saves?q=pricing&limit=5" \
-H "Authorization: Bearer am_live_YOUR_KEY"
const res = await fetch("https://agentmash.ai/api/v1/saves?q=pricing&limit=5", {
headers: { Authorization: "Bearer " + process.env.AGENTMASH_API_KEY },
});
if (!res.ok) throw new Error((await res.json()).error.message);
const { saves } = await res.json();
console.log(saves.map((s) => s.url));
import os, requests
res = requests.get(
"https://agentmash.ai/api/v1/saves",
params={"q": "pricing", "limit": 5},
headers={"Authorization": "Bearer " + os.environ["AGENTMASH_API_KEY"]},
)
res.raise_for_status()
for save in res.json()["saves"]:
print(save["url"]){
"total": 42,
"has_more": true,
"saves": [
{
"id": "3f1c2d4e-5a6b-4c7d-8e9f-0a1b2c3d4e5f",
"platform": "x",
"kind": "post",
"url": "https://x.com/example/status/1",
"author": "Example Author",
"author_handle": "example",
"title": null,
"text": "Pricing pages work best when...",
"posted_at": "2026-10-12T09:30:00Z",
"saved_at": "2026-10-20T14:02:11Z"
}
]
}Authentication
Send your key as a Bearer token on every request.
Bearer API keys
Send Authorization: Bearer am_live_.... Create a key on the Agents and API page.
Hashed at rest
AgentMash stores a SHA-256 hash of each key, so the key is shown once. Revoke a key any time and it stops working.
One error shape
Every error is JSON with a code and a message.
{ "error": { "code": "unauthorized", "message": "Send Authorization: Bearer am_live_..." } }REST API v1 endpoints
All four routes are read-only and return JSON. Results come only from your own saves.
GET /api/v1/savesSearch and list your saves. Without q it lists newest first.
Parameters: q, platform, kind, author, collection_id, days, limit (1 to 50, default 20), offset
curl "https://agentmash.ai/api/v1/saves?q=pricing&platform=x&days=30&limit=5" \
-H "Authorization: Bearer am_live_YOUR_KEY"{
"total": 42,
"has_more": true,
"saves": [
{
"id": "3f1c2d4e-5a6b-4c7d-8e9f-0a1b2c3d4e5f",
"platform": "x",
"kind": "post",
"url": "https://x.com/example/status/1",
"author": "Example Author",
"author_handle": "example",
"title": null,
"text": "Pricing pages work best when...",
"posted_at": "2026-10-12T09:30:00Z",
"saved_at": "2026-10-20T14:02:11Z"
}
]
}GET /api/v1/saves/:idRead one save by UUID, with full text, transcript, stats, links, quoted post, media and collections.
Parameters: id (UUID path parameter)
curl "https://agentmash.ai/api/v1/saves/3f1c2d4e-5a6b-4c7d-8e9f-0a1b2c3d4e5f" \
-H "Authorization: Bearer am_live_YOUR_KEY"{
"save": {
"id": "3f1c2d4e-5a6b-4c7d-8e9f-0a1b2c3d4e5f",
"platform": "youtube",
"kind": "video",
"url": "https://youtube.com/watch?v=abc",
"text": "Full description of the video...",
"transcript": "Full transcript text...",
"stats": { "view_count": 18204, "like_count": 912 },
"links": [],
"quoted": null,
"media": [{ "type": "video", "url": "https://...", "width": 1280, "height": 720, "duration_s": 612 }],
"collections": [{ "id": "9b2e...", "name": "Launch ideas" }]
}
}GET /api/v1/collectionsList your collections with id, name, source and save_count.
Parameters: No parameters
curl "https://agentmash.ai/api/v1/collections" \
-H "Authorization: Bearer am_live_YOUR_KEY"{
"collections": [
{ "id": "9b2e7c1a-0d4f-4b8a-9c3e-1f2a3b4c5d6e", "name": "Launch ideas", "source": "x", "save_count": 18 }
]
}GET /api/v1/sourcesCount your saves and see which platforms you have imported.
Parameters: No parameters
curl "https://agentmash.ai/api/v1/sources" \
-H "Authorization: Bearer am_live_YOUR_KEY"{
"total_saves": 312,
"sources": [
{ "platform": "x", "count": 188 },
{ "platform": "linkedin", "count": 124 }
]
}Plans and usage limits
API calls and MCP tool calls share one monthly count.
Free
- One platform
- Up to 300 saves, and syncing stops there
- Full-text search
- 50 API and agent calls a month
Pro
Use code LAUNCH50 for 50% off forever, for the first 100 users. Normally $12 / month or $99 / year.
- All 6 platforms
- Unlimited saves
- Hybrid semantic and full-text search
- Video transcripts
- Unlimited API and agent calls
Questions, answered
How do I authenticate to the AgentMash API?
Create an API key on the Agents and API page and send it as an Authorization: Bearer header on every request. Keys start with am_live_ and AgentMash stores only a SHA-256 hash, so a key is shown once.
Is the API read-only?
Yes. The v1 endpoints list and search your saves, read one save, list collections and list sources. Nothing in the API can post, change or delete a save.
What does an error look like?
Every error is JSON in one shape: an error object with a code and a message. A missing or wrong key returns 401, and the Free plan limit returns 402.
What are the usage limits?
The Free plan includes 50 API and agent calls a month. Pro has unlimited API and agent calls. API calls and MCP tool calls share the same monthly count.
Should I use the API or the MCP server?
Use the REST API for scripts, apps and automations. Use the MCP server when you want Claude, ChatGPT, Cursor or another AI app to search your saves for you.
Make your bookmarks programmable.
Create a key in a minute, then make your first call.