Skip to main content
Bkmark’s search is built to find the right bookmark fast — whether you remember the exact title, a word from the description, or just the general idea of what you’re looking for. Every plan includes full-text search, and Pro and Team users get an additional layer of AI-powered semantic understanding.

How search works

Full-text search (all plans)

Full-text search scans the title, description, and URL of every bookmark in your library. It is fast, always available, and works on every plan.
  • Exact and partial matches — results include bookmarks where your query terms appear as whole words or as stemmed variants. Searching typescript will also surface TypeScript and related forms.
  • Fuzzy fallback — if there are no exact matches, Bkmark automatically falls back to fuzzy matching so you still get relevant results even with typos or alternate spellings.
  • Fast — results appear in milliseconds regardless of how large your library is.

AI semantic search (Pro & Team)

AI semantic search requires a Pro or Team plan. On the Free plan, you get full-text search only.
Semantic search understands the meaning behind your query rather than just matching characters. You can search using natural language descriptions, and Bkmark will surface bookmarks that are conceptually related — even if they don’t share a single word with your query. Example: Searching for "how to speed up database queries" with semantic search can surface bookmarks about query optimization, indexing strategies, and caching — even if those pages never use the phrase “speed up.”

Exact search vs. semantic search — what’s the difference?

Full-text (all plans)Semantic search (Pro/Team)
How it worksMatches words and their stemsMatches meaning and concepts
Best forKnown terms, titles, URLsVague recollections, concepts, natural language
Typo toleranceYes (fuzzy fallback)Yes (intent is preserved)
SpeedVery fast (milliseconds)Fast (AI-assisted)
RequiresFree plan or abovePro or Team plan

Search from the app

Click the Search bar at the top of the sidebar (or press / from anywhere in the app) and start typing. Results update live as you type.

Search filters

Narrow your results using the filter controls next to the search bar:
FilterDescription
GroupShow only results inside a specific group
TagShow only results with a specific tag
TypeLimit results to link, note, code, or image
You can combine filters with your query — for example, search for "authentication" filtered to the Engineering group and the security tag.

Using the search API

You can query your library programmatically using the search endpoint.
curl "https://api.bkmark.it/api/v1/search?q=typescript+patterns" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Query parameters:
ParameterTypeDefaultDescription
qstringRequiredYour search query
cursorstringPagination cursor from a previous response
limitnumber20Results per page (1–100)
groupIdstringFilter by group UUID
tagIdstringFilter by tag UUID
Example response:
{
  "data": [
    {
      "id": "3f7a9c12-...",
      "url": "https://www.typescriptlang.org/docs/handbook/2/types-from-types.html",
      "title": "TypeScript Handbook: Creating Types from Types",
      "description": "A deep dive into mapped types, conditional types, and template literal types.",
      "type": "link",
      "isFavorite": false,
      "isArchived": false,
      "tags": [{ "id": "uuid", "name": "typescript", "color": "blue" }],
      "groups": [{ "id": "uuid", "name": "Engineering References" }],
      "createdAt": "2025-03-15T10:22:00.000Z",
      "updatedAt": "2025-03-15T10:22:00.000Z"
    }
  ],
  "nextCursor": "3f7a9c12-..."
}

Paginating results

Search uses cursor-based pagination. When a response includes a nextCursor value, pass it as the cursor parameter in your next request to fetch the following page. When nextCursor is null, you’ve reached the last page.
# Page 1
curl "https://api.bkmark.it/api/v1/search?q=design+systems&limit=20" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

# Page 2 — pass nextCursor from the previous response
curl "https://api.bkmark.it/api/v1/search?q=design+systems&limit=20&cursor=3f7a9c12-..." \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Tips for effective searching

Search by concept, not just title

On Pro or Team, try natural-language queries like "articles about building design systems in React" instead of guessing the exact title you used when saving.

Combine search with filters

Pair a short query with a group or tag filter to dramatically narrow results — especially useful when you have a large library with overlapping topics.

Use a few specific words

On full-text search, two or three specific words from the title or description work better than long sentences. Try "react server components" instead of "how to use react server components in next".

Try the URL or domain

Remember the site but not the article? Search for the domain name (e.g., "vercel.com" or "css-tricks") to surface all bookmarks from that source.