Skip to content

Build creator public profile API with aggregated key stats #1009

Closed

Description

@Chucks1093

Summary

Expose a public creator profile endpoint aggregating stats across all their deployed keys — total volume, holder count, average rating, and deployed key list.

Scope

  • GET /creators/:wallet — profile with member since, total keys, total volume, avg rating
  • GET /creators/:wallet/keys — paginated list of deployed keys with status and price
  • Stats aggregated from key index on request with 5-minute cache
  • Verified badge flag derived from KYC status
  • Profile returns 404 for unregistered wallets

Acceptance Criteria

  • Stats aggregated correctly across all creator keys
  • Key list paginated correctly in deployment order
  • Verified flag derived correctly from KYC status
  • Cache refreshed every 5 minutes
  • 404 returned for unregistered wallet addresses

ETA

12 hours

Activity

  1. NaniteExplorer commented on Oct 15, 2026

    @NaniteExplorer

    @NaniteExplorer has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hi @Chucks1093,

    I'd like to take this up.

    I went through the requirements and took a look at how the server is structured. Since creator management and contract indexing are already part of the backend, I'd build on the existing services rather than introduce a separate flow for these endpoints.

    One thing I'd be careful about is how the stats are calculated. The profile totals should include all of a creator's deployed keys, regardless of which page of keys is being requested. For ratings, I'll also check how they're stored so the overall average is calculated correctly instead of simply averaging averages.

    Here's how I'd approach it:

    • Add GET /creators/:wallet with member-since date, total keys, volume, holder count, average rating, and verified status.
    • Add GET /creators/:wallet/keys with proper pagination, deployment-order sorting, and status/price information. I'll use a stable ordering so keys with matching timestamps don't cause inconsistent results.
    • Reuse the existing key index for aggregation and introduce wallet-specific caching with a 5-minute TTL, so repeated requests don't unnecessarily hit the database.
    • Derive the verified badge from the existing KYC status without exposing any private verification details.
    • Handle unregistered wallets with a proper 404, while keeping registered creators with no deployed keys as valid profiles with zero stats.

    I'll add tests for multiple-key aggregation, weighted rating calculations where applicable, pagination boundaries, KYC states, cache expiry, and unknown wallets.

    I'll also follow the project's existing response formats and error-handling conventions to keep the changes consistent with the rest of the API.

    The 12-hour estimate looks reasonable for a focused implementation, assuming the existing index exposes the required data. I'll flag any missing data or schema dependencies early rather than work around them with hardcoded values.

    Thanks!

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @NaniteExplorer to this issue.

  2. Masked18 commented on Oct 15, 2026

    @Masked18

    @Masked18 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hello Maintainer
    Please can you assign me this issue

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @Masked18 to this issue.

  3. AgentX010 commented on Oct 15, 2026

    @AgentX010

    @AgentX010 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    I can take this on. I've gone through the details and will provide a well-tested solution aligned with the project standards

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @AgentX010 to this issue.

  4. somotochukwu-dev commented on Oct 15, 2026

    @somotochukwu-dev

    @somotochukwu-dev has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hi
    Please assign this issue to me, I would really like to work on this issue thanks.

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @somotochukwu-dev to this issue.

  5. Xoft31 commented on Oct 15, 2026

    @Xoft31

    @Xoft31 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    I’ve taken the time to understand the issue and its intendefunctionalit. I’d be happy to work on this and provide an implementation that is cleanly integrated, properly tested, and considerate of existing functionality.

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @Xoft31 to this issue.

  6. taofeeq991 commented on Oct 15, 2026

    @taofeeq991

    @taofeeq991 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hi maintainer
    I’d love to help out with this issue. I’ve checked the current codebase/documentation and know exactly what needs to be updated to make this clearer. I will ensure everything aligns perfectly with your existing contribution guidelines.

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @taofeeq991 to this issue.

  7. Obito-2222 commented on Oct 15, 2026

    @Obito-2222

    @Obito-2222 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hi Maintainer,

    I’m interested in taking ownership of this issue and would appreciate the opportunity to work on it if it is still available. I’ve carefully reviewed the issue requirements and have a clear understanding of the scope, expected outcome, and implementation approach.

    I’m confident I can execute the task efficiently and deliver a clean, well-tested, and maintainable solution in accordance with the project’s standards and contribution guidelines. I’m also available to prioritize this issue and aim to have the implementation completed within 12 hours of being assigned.

    If the issue is still unassigned, I’d be grateful if you could assign it to me. I’m ready to get started immediately.

    Thank you for your time and consideration.

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @Obito-2222 to this issue.

  8. VictorEzenma commented on Oct 15, 2026

    @VictorEzenma
    Contributor

    @VictorEzenma has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hi maintainer, I would like to work on this issue

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @VictorEzenma to this issue.

  9. Schorlani07678 commented on Oct 15, 2026

    @Schorlani07678
    Contributor

    @Schorlani07678 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hi maintainer, I would love to work on this issue.

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @Schorlani07678 to this issue.

  10. Ajibose commented on Oct 15, 2026

    @Ajibose
    Contributor

    @Ajibose has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    can i work on this

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @Ajibose to this issue.

  11. drips-wave commented on Oct 15, 2026

    @drips-wave

    Congratulations, @VictorEzenma! 🎉 Your application was accepted by the repo's maintainers, and the issue is due on October 22, 2026.

    🧑‍💻 @VictorEzenma: Please resolve the issue such that the repo's maintainers have enough time to review your contribution before the due date. You'll earn Points for completing the issue on-time, which will make you eligible for a share of the Stellar Wave Program's reward pool.

    Warning

    When opening a PR, please link it to this issue to ensure it gets tracked accurately. Points are awarded when this issue is marked as completed by the maintainer.

    🤠 Repo maintainers: Please keep an eye on the contributor's progress and review their work before the due date. You can manage this issue, including adjusting its complexity and points, here.

    🌊 Happy Wave 🌊

  12. added a commit that references this issue on Oct 20, 2026
  13. grantfox-oss commented on Oct 20, 2026

    @grantfox-oss

    🎉 This issue has been marked as completed on GrantFox!

    @VictorEzenma's PR #1182 was approved and merged by @Chucks1093.

    🏆 @VictorEzenma: You earned 35 FoxPoints for this contribution! Your current tier: Explorer (618 total points). Track your full progress on GrantFox.

    👏 Great work, @VictorEzenma! Keep contributing to accesslayerorg.

  14. drips-wave commented on Oct 20, 2026

    @drips-wave

    This issue has been completed by @VictorEzenma as part of the Stellar Wave Program's 10th Wave 🥳

    😎 @VictorEzenma: You earned 200 Points for completing this issue! Once the Wave's rewards are finalized, you'll be eligible for a percentage of the Wave's reward pool based on the percentage of total points you've earned. Learn more here. You can also Leave a review to share your experience working on this issue.

    🧑‍💻 Repo maintainers: How'd the contributor do? Leave a review to share your experience working with them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Stellar WaveIssues in the Stellar wave program

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions