Get Recall Suggestion

Returns a bookmark suggestion based on the user’s saving history. Designed for daily “remember this?” prompts.
This endpoint is Pro-gated. Free users receive a response with gated: true and no bookmark data.
curl -H "Authorization: Bearer $ACCESS_TOKEN" \
  "https://api.unisave.io/v1/recall?utcOffset=420"
Query Parameters
ParamTypeRequiredDescription
utcOffsetintegerNoUser’s timezone offset from UTC in minutes. Range: -720 to 840. Default: 420 (UTC+7). Example: 420 for UTC+7 (Vietnam), 0 for UTC, -300 for UTC-5 (EST).
Response — Pro user 200
{
  "data": {
    "bookmark": {
      "clientBookmarkId": "abc-123",
      "url": "https://example.com/forgotten-gem",
      "title": "An Article You Saved 3 Months Ago",
      "summary": "A deep dive into distributed systems...",
      "saveWhy": "Reference for project research",
      "domain": "example.com",
      "thumbnailUrl": "https://example.com/thumb.jpg"
    },
    "gated": false
  }
}
Response — Free user (gated) 200
{
  "data": {
    "bookmark": null,
    "gated": true
  }
}
Response — No suggestion available 200
{
  "data": {
    "bookmark": null,
    "gated": false
  }
}
This happens when the user has no enriched bookmarks.

Selection Heuristics

The recall algorithm scores a pool of enriched bookmarks:
  • Mixes old and new — fetches from both oldest and newest enriched bookmarks to diversify suggestions
  • Favors unopened bookmarks — items never opened get a +10 score bonus
  • Context-aware tags — evening hours (17:00–23:00 local) boost recipe/food/cooking tags; weekends boost travel/gift/shopping tags
  • Text heuristic — title and description are scanned for contextual keywords matching time of day
  • Random from top 5 — final pick is random among the top 5 scored candidates to avoid repetition