Authentication
All API requests require an API key sent as a Bearer token in the Authorization header:
Authorization: Bearer lgg_your_api_key_here
Generate API keys in your Account Settings under API Keys. Keys are available on Plus and Premium plans.
Base URL
https://www.linkagogo.com/api/v1
Rate Limits
| Plan | Requests / day / key | Max keys |
|---|---|---|
| Plus | 5,000 | 3 |
| Premium | 10,000 | 5 |
When the limit is exceeded, the API returns 429 Too Many Requests with a Retry-After: 86400 header.
Response Format
All responses are JSON. Errors return:
{"detail": "Error message here"}
Endpoints
User
Returns the authenticated user's profile.
Bookmarks
List bookmarks with optional filtering and pagination.
| Parameter | Type | Description |
|---|---|---|
folder_id | int | Filter by folder |
q | string | Full-text search (title, URL, keywords, comments) |
favorite | bool | Filter favorites only |
sort | string | title_asc, date_desc, visit_date_desc, visit_count_desc, rating_desc |
page | int | Page number (default 1) |
page_size | int | Items per page (default 50, max 200) |
Get a single bookmark by ID.
Create a new bookmark. If title is omitted or empty, LinkaGoGo auto-fetches the page title.
{
"url": "https://example.com",
"title": "Example Site",
"folder_id": 0,
"keywords": "example test",
"comments": "",
"rating": 0,
"is_favorite": false
}
Update a bookmark. All fields are required (full replacement).
Partially update a bookmark. Only include the fields you want to change.
{"title": "New Title", "keywords": "updated tags"}
Delete a bookmark.
Move multiple bookmarks to a folder.
{"ids": [123, 456], "folder_id": 789}
Add or remove keyword tags on multiple bookmarks.
{"ids": [123, 456], "add": ["python", "tutorial"], "remove": ["misc"]}
Account
Get account statistics (bookmark count, folder count, favorites, tags, date range).
List bookmarks with active reminders that are due.
Folders
List all folders (flat array with folder_id for parent).
Create a new folder.
{"name": "My Folder", "folder_id": 0}
Create a folder path, auto-creating intermediate folders. Returns the leaf folder.
{"path": "Dev/Python/Libraries"}
Update a folder (rename, move, toggle public).
Delete a folder and its contents.
Import & Export
Export all bookmarks as XBEL XML. (Plus+)
Export all bookmarks as Netscape HTML.
Import bookmarks from an XBEL XML file (multipart upload or raw XML body). (Plus+)
Import bookmarks from a Netscape HTML file (multipart upload or raw HTML body). Supports Chrome, Firefox, and Safari export formats. (Plus+)
Example: curl
# List bookmarks
curl -H "Authorization: Bearer lgg_your_key" \
https://www.linkagogo.com/api/v1/urls
# Create a bookmark
curl -X POST -H "Authorization: Bearer lgg_your_key" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com","title":"Example"}' \
https://www.linkagogo.com/api/v1/urls
# Search bookmarks
curl -H "Authorization: Bearer lgg_your_key" \
"https://www.linkagogo.com/api/v1/urls?q=python&sort=date_desc"
Example: JavaScript
const API_KEY = 'lgg_your_key';
const BASE = 'https://www.linkagogo.com/api/v1';
const resp = await fetch(`${BASE}/urls?q=javascript`, {
headers: { 'Authorization': `Bearer ${API_KEY}` },
});
const data = await resp.json();
console.log(data.bookmarks);