Wrapped API

Ship 2026 Wrapped in minutes

Build personalized year-in-review experiences that users love to share. Aggregate user activity, generate highlights, and create viral wrapped content.

SDKs for
NodeJSGoJava.NETPHPPythonRuby

Endpoints

Wrapped endpoints

Generate and retrieve year-in-review data. Trophy automatically aggregates user activity into shareable wrapped summaries.

GET/users/{id}/wrappedView Docs

Get a user's year-in-review wrapped data including activity breakdown, highlights, and comparisons.

Path Parameters

idstringrequired

The user's ID in your database.

Query Parameters

yearinteger

Year to get wrapped data for (default: 2026).

Response

userUser

The user's profile data.

activity.daysActivenumber

Total days the user was active during the year.

activity.mostActiveDayobject

The user's most active day with metrics, points, and achievements.

activity.entireYearobject

Full-year summary with metrics, points, achievements, and longest streak.

Example
import { TrophyApiClient } from '@trophyso/node';

const trophy = new TrophyApiClient({
  apiKey: 'YOUR_API_KEY'
});

// Fetch user's wrapped data
const wrapped = await trophy.users.wrapped("user-123", {
  year: 2026
});

// Response:
// { 
//   user: {...},
//   activity: {
//     daysActive: 156, 
//     weeksActive: 42,
//     monthsActive: 7,
//     mostActiveDay: {...},
//     mostActiveWeek: {...},
//     mostActiveMonth: {...},
//     entireYear: { 
//       metrics: {...},
//       points: {...},
//       achievements: [...],
//       leaderboards: {...},
//       longestStreak: {...} 
//     } 
//   } 
// }

Lightning-Fast Integration

Simple APIs You'll Love

Use our pre-built gamification API to effortlessly build engaging user experiences. Get a team that's 100% focused on engagement.

NodeJS
Go
Java
.NET
PHP
Python
Ruby
Type-safe SDKs.
We spend time worrying about abstractions and let you focus on what matters: building a great experience for your users.
Intuitive documentation.
Documentation built by developers for developers. Get started in minutes, not hours.
Effortless debugging.
Get to the root of the issue fast with detailed event logs and error messages.
// Build a wrapped experience

const wrapped = await trophy.users
  .wrapped(userId, { year: 2026 });

return (
  <WrappedCard
    daysActive={wrapped.activity.daysActive}
    longestStreak={wrapped.activity.entireYear.longestStreak}
    achievements={wrapped.activity.entireYear.achievements}
  />
);

Built for production workloads

Reliable infrastructure designed for performance at scale.

API Uptime
99.99%
Avg Response Time
<50ms
Integration Time
< 1 hour
API Calls / Month
10M+

Buy vs. Build

Why use Trophy for wrapped summaries?

Personalized year-in-review summaries require months of aggregated data, computed highlights, and the infrastructure to generate them all at once.

Integration Time

One API call returns a complete personalized summary for any user. No aggregation code needed.
Build
Build data aggregation pipelines, compute highlights and comparisons, handle incomplete data, and design summary templates. Expect 6-10 weeks.
Why does it matter?
Year-in-review summaries require aggregating months of historical data into meaningful highlights. Building the pipeline, computing percentiles, and handling edge cases is a project in itself.

Reliability

Trophy pre-computes summaries from event data already in the system. No data gaps or missing history.
Build
You must ensure complete data capture for the entire review period. Any gaps in your event pipeline mean missing or inaccurate summaries.
Why does it matter?
A wrapped summary that shows incorrect totals or missing highlights defeats the purpose. Users will notice if their stats don't match their experience.

Scalability

Trophy generates summaries for all users without infrastructure spikes or batch processing bottlenecks.
Build
Generating personalized summaries for your entire user base simultaneously creates massive compute spikes that require careful capacity planning.
Why does it matter?
Wrapped features typically launch on a single day, creating a thundering-herd problem. All summaries need to be ready at once, and all users access them at once.

Ongoing Maintenance

Summaries are generated automatically from your existing metric events. No annual engineering sprint required.
Build
Each year requires updating aggregation queries, adding new highlight types, and re-testing the pipeline — typically a multi-week annual project.
Why does it matter?
Wrapped features shouldn't be an annual fire drill. If generating summaries requires a dedicated engineering sprint every year, the cost compounds.

Feature Development

New summary types, comparison metrics, and presentation options are added regularly.
Build
Each new highlight type — top streaks, achievement rarity, peer comparisons — requires new aggregation logic and careful data modeling.
Why does it matter?
Users expect wrapped summaries to get better each year. The ability to add new highlight types without re-engineering your aggregation pipeline is key.

FAQ

Wrapped & Year in Review FAQ

Have a different question and can’t find the answer you’re looking for? Send us an email.

What is a Wrapped experience?
A Wrapped experience is a personalized year-in-review summary for each user — similar to Spotify Wrapped. It highlights their activity, achievements, streaks, and milestones over the year in a shareable format.
How do I build a year-in-review like Spotify Wrapped?
Trophy automatically aggregates all user activity throughout the year. Call the Wrapped API endpoint with a user ID and year, and you get back a complete summary — days active, most active periods, achievements earned, longest streak, and more. You just build the UI.
What data is included in the Wrapped response?
The response includes total days, weeks, and months active; the most active day, week, and month with detailed breakdowns; full-year totals for metrics, points, and achievements; leaderboard standings; and longest streak data.
Do I need to do anything special to enable Wrapped?
No. As long as you're sending metric events to Trophy throughout the year, the Wrapped data is generated automatically. Just call the API when you're ready to build your year-in-review experience.
Can users share their Wrapped recap?
Trophy provides the data — you design the shareable experience. Many teams build Wrapped pages or cards that users can screenshot or share via a link. The API gives you all the stats needed to create compelling, personalized content.
Can I build Wrapped experiences in React, React Native, or mobile apps?
Yes. Trophy's server-side SDKs (Node.js, Python, Go, Java, PHP, Ruby, .NET) fetch wrapped data from your backend. The API returns activity summaries, highlights, and stats that you can render in any frontend — React, React Native, Next.js, Swift, Kotlin, Flutter, or any other framework.

Gamification infrastructure that retains users

Boost retention and customer lifetime value. Try for free up to 100 MAUs.

Trophy