[Developer Competition] YAM Community API
🇫🇷 Version francophone en deuxième partie de message
Summary
I propose the development of a YAM Community API, an off-chain indexing service that will store and expose all past and present YAM events. This API will help the community developers, enabling them to easily retrieve transaction history for reporting, statistics, dashboards, and other applications.
Objective
Currently, there is no built-in way to access past transactions or historical data about offers on YAM. External solutions like The Graph exist but they are often not easily flexible and not always reliable. This project aims to solve that issue by creating a fully indexed API that records all YAM-related events and transactions, making them easily accessible to the community.
By providing this API, developers will no longer need to worry about how to retrieve historical YAM data. Instead, they can focus on building valuable applications such as analytics tools, portfolio trackers, automated reporting systems, and more.
How it works?
The YAM Community API will be a publicly available web service (access might be limited to developers that have requested a token like the existing realtokens community API). Developers and users will be able to query this YAM Community API to retrieve detailed information about past YAM transactions and events.
- The API will continuously index and store all YAM transactions, ensuring a complete and accurate historical record.
- It will be off-chain, meaning that it does not rely on the YAM smart contracts but instead maintains a dedicated database to store the indexed data.
- Developers will be able to query the API via simple endpoints to retrieve transaction history, past/present offers, and other relevant YAM data.
Application Architecture
The application will be structured into three main components:
Transaction Indexing Module
A dedicated module responsible for tracking and indexing all YAM transactions and events. This ensures that past offers and historical transaction data remain accessible, unlike the YAM on-chain smart contract that only retains the current status of any offers.
Data Retrieval Engine
This module will process queries efficiently, allowing users to fetch historical YAM data based on filters such as wallet address, realtokens address, time range, and transaction type.
Public API
A set of well-documented API endpoints that developers can use to integrate YAM transaction history into their applications, dashboards, or reports.
Available Endpoints
The YAM Community API will provide the following endpoints to facilitate access to historical transaction data and offer-related events:
Note: The following endpoints provide an overview of the planned API functionality. Some adjustments may be made during development to account for technical considerations or community feedback from forum discussions.
Retrieve all events for a specific offer ID
Returns the complete event history (creation, purchases, updates, deletions) associated with a given offer ID.
Retrieve all events for a specific seller within a given time frame
Returns all recorded events for any offer linked to a seller over a specified period. Optionally, results can be filtered by event type (offer creation, modification, or deletion).
Retrieve all offer IDs associated with a specific seller within a given time frame
Returns the IDs list of all offers created by a seller during the specified period.
Retrieve all active offer IDs for a given seller
Returns the ID list of all currently active offers from a seller. Active offers are those that have not been sold out or deleted.
Retrieve all events (creation, modification, purchase, deletion) for active offers of a given seller
Returns the history of all modifications and status changes for currently active offers associated with a seller.
Retrieve all purchase events for a specific buyer within a given time frame
Returns a list of all transactions where a given buyer has purchased RealTokens during the specified period.
Retrieve all purchase events for a specific RealToken within a given time frame
Returns all purchase transactions related to a particular RealToken over the specified period.
Development timeline
The development timeline for this project aligns with the competition requirements, with an estimated completion time of 1 to 2 months. The initial version will focus on indexing transactions and exposing essential endpoints for data retrieval. Additional endpoints could be implemented based on community feedback and developer needs.
About Me
As a frequent RealToken investor passionate about blockchain and tech, I understand the challenges of tracking YAM transactions and historical data. This API is something that I wish existed, and I’m excited to build it for the community.
One of my previous projects includes developing the Telegram bot The YAMSaleNotifyBot, which has sent over 10,000 notifications to RealToken users keeping them informed whenever one of their YAM offers has been bought. I am committed to enhancing the RealToken and YAM ecosystem by building tools that improve transparency and usability.
Additionally, I am an application engineer working in a Belgian tech company, which allows me to bring professional expertise to the development of reliable and efficient solutions for the community.
=====================================================
🇫🇷 [Concours pour développeurs] API Communautaire YAM
Résumé
Je propose le développement d'une API Communautaire YAM, un service d'indexation off-chain qui stockera et exposera tous les événements passés du YAM. Cette API facilitera le travail des développeurs de la communauté en leur permettant de récupérer facilement l’historique des transactions pour des besoins de reporting, statistiques, tableaux de bord, et autres applications.
Objectif
Actuellement, il n’existe aucun moyen simple d’accéder aux données historiques aux actuelles du YAM. Des solutions externes comme The Graph existent, mais elles sont souvent peu flexibles et pas toujours fiables.
Ce projet vise à résoudre ce problème en créant une API qui enregistre tous les événements et transactions liés au YAM, les rendant facilement accessibles à la communauté.
Grâce à cette API, les développeurs n’auront plus à se soucier de la récupération des données du YAM (données historiques ou offres en cours). Ils pourront se concentrer sur la création d’outils utiles tels que des outils d’analyse, des trackers de portefeuille, des systèmes de reporting automatisés, etc.
Comment ça fonctionne ?
L’API Communautaire YAM sera un service web accessible publiquement (l’accès pourrait être limité aux développeurs ayant demandé un token, comme pour l’API communautaire de RealTokens). Les développeurs et utilisateurs pourront interroger cette API pour obtenir des informations détaillées sur les transactions et événements passés du YAM.
- L’API indexera et stockera en continu toutes les transactions YAM, garantissant un enregistrement complet et précis de l’historique.
- Elle fonctionnera hors-chaîne, c’est-à -dire sans dépendre directement des smart contracts YAM, en maintenant une base de données dédiée.
- Les développeurs pourront interroger l’API via des endpoints simples pour récupérer l’historique des transactions, les offres passées/actuelles, et d’autres données pertinentes.
Architecture de l'application
L’application sera structurée autour de trois composants principaux :
Module d’indexation des transactions
Un module dédié au suivi et à l’indexation de toutes les transactions et événements YAM. Il garantit que les offres passées et les données historiques restent accessibles, contrairement au smart contract YAM on-chain qui ne conserve que l’état actuel.
Moteur de récupération des données
Ce module traitera les requêtes efficacement, permettant aux utilisateurs d’obtenir les données historiques en fonction de filtres (adresse de portefeuille, adresse RealToken, plage temporelle, type de transaction, etc.).
API publique
Une série d’endpoints bien documentés que les développeurs pourront utiliser pour intégrer l’historique YAM dans leurs applications, dashboards ou rapports.
Endpoints disponibles
L’API Communautaire YAM proposera les endpoints suivants pour faciliter l’accès aux données historiques de transactions et événements liés aux offres :
Remarque : ces endpoints donnent une vue d’ensemble des fonctionnalités prévues. Certains ajustements pourront être faits pendant le développement selon les contraintes techniques ou les retours de la communauté sur le forum.
Récupérer tous les événements pour un offer ID spécifique
Retourne l’historique complet (création, achats, modifications, suppressions) associé à un offer ID donné.
Récupérer tous les événements d’un vendeur donné sur une période donnée
Retourne tous les événements enregistrés liés à un vendeur sur une période spécifiée. Filtrage possible par type d’événement (création, modification, suppression).
Récupérer tous les offers ID associés à un vendeur sur une période donnée
Retourne la liste des offers ID créées par un vendeur pendant la période spécifiée.
Récupérer tous les offers ID actives d’un vendeur
Retourne la liste des offres actuellement actives (ni sold-out, ni supprimées) d’un vendeur.
Récupérer tous les événements pour les offres actives d’un vendeur
Retourne l’historique des modifications et changements de statut des offres actives d’un vendeur.
Récupérer tous les achats d’un acheteur sur une période donnée
Retourne la liste des transactions où un acheteur a acquis des RealTokens durant la période spécifiée.
Récupérer tous les achats d’un RealToken sur une période donnée
Retourne toutes les transactions d’achat concernant un RealToken donné sur une période définie.
Calendrier de développement
Le calendrier de développement respecte les exigences du concours, avec une durée estimée de 1 à 2 mois. La version initiale se concentrera sur l’indexation des transactions et la mise à disposition des endpoints essentiels. Des endpoints supplémentaires pourraient être ajoutés selon les retours de la communauté et les besoins des développeurs.
Ă€ propos de moi
En tant qu’investisseur régulier dans l’écosystème RealT et passionné par la blockchain et la tech, je comprends les difficultés pour suivre les transactions YAM et accéder à des données historiques fiables. Cette API est un outil que j’aurais aimé avoir, et je suis enthousiaste à l’idée de la construire pour la communauté.
L’un de mes projets précédents est le développement du bot Telegram The YAMSaleNotifyBot, qui a envoyé plus de 10 000 notifications aux utilisateurs de RealToken pour les informer quand une de leurs offres YAM avait été achetée.
Je suis également ingénieur d’application dans une entreprise tech en Belgique, ce qui me permet d’apporter une expertise professionnelle au développement de solutions fiables et efficaces pour la communauté.