שילוב Reservoir NFT Aggregator: API, SDK, מקרי שימוש
מפתחים שבונים שווקי NFT או מעקבי תיקים חייבים לשלב עם מספר פלטפורמות. כל אחת — OpenSea, Blur, X2Y2 — כוללת API משלה, פורמטי הזמנות ומגבלות קצב. תחזוקת N אינטגרציות היא מורכבת: בסיס הקוד גדל, זמן הדיבוג עולה, ועלויות התמיכה עולות. Reservoir פותר זאת עם API יחיד. במקום שש APIs שונות, אתה מקבל פרוטוקול אחד עם מצבי קריאה וכתיבה. עם ניסיון של למעלה מ-5 שנים ויותר מ-20 פרויקטים מוצלחים של NFT ו-DeFi, אנחנו מומחים בשילוב Reservoir. אנו מבטיחים הגדרת רישום נכונה, רכישות חוצות-שווקים ונתונים בזמן אמת. Reservoir מפחית את זמן האינטגרציה פי 3-4 בהשוואה לקריאות ישירות ל-API של כל שוק. צור קשר כדי לדון בפרויקט שלך. עלות אינטגרציה מותאמת אישית טיפוסית היא $30,000–$60,000; אינטגרציה מבוססת Reservoir עולה $5,000–$15,000 — חיסכון של 75% בתקציב. שוק הלקוחות שלנו השיק אגרגטור תוך 3 שבועות במקום חודשיים, וחסך 60% זמן. חיסכון בתשתית בעת מעבר מצומת מתארח עצמי ל-API בענן מסתכם ב-$500–$2,000 לחודש.
מה Reservoir באמת מספק
שני מצבים: קריאה בלבד (נתוני אוסף, מחירים, פעילות) וכתיבה (יצירת הזמנות, ביצוע עסקאות). רוב הפרויקטים מתחילים בקריאה, אבל הערך האמיתי טמון באינטגרציית כתיבה.
מצב קריאה מכסה:
- מחירי רצפה, עומק הצעות/מכירות
- נתוני בעלות לכל טוקן
- היסטוריית מכירות, העברות, מינטים
- סטטיסטיקות ברמת תכונה (מחירי תכונות נדירות)
- אירועים בזמן אמת דרך WebSocket (מעבד 1000+ אירועים/שנייה)
מצב כתיבה (דרך SDK):
- רישומים בו-זמנית במספר שווקים
- רכישות חוצות-שווקים (חיפוש אוטומטי של המחיר הטוב ביותר)
- הצעות לאוסף והצעות לתכונות
- Sweep — רכישת מספר NFTs בעסקה אחת
שילוב Reservoir SDK
import { createClient } from "@reservoir0x/reservoir-sdk";
import { createWalletClient, http } from "viem";
import { mainnet } from "viem/chains";
const client = createClient({
chains: [
{
id: 1,
baseApiUrl: "https://api.reservoir.tools",
active: true,
},
],
apiKey: process.env.RESERVOIR_API_KEY,
});
// получить floor price коллекции
const { data } = await fetch(
`https://api.reservoir.tools/collections/v7?id=${collectionAddress}`,
{
headers: {
"x-api-key": process.env.RESERVOIR_API_KEY,
},
}
).then((r) => r.json());
const floorPrice = data.collections[0].floorAsk.price.amount.native;
// выполнить покупку через SDK
await client.actions.buyToken({
items: [
{
token: `${contractAddress}:${tokenId}`,
quantity: 1,
},
],
wallet: walletClient,
onProgress: (steps) => console.log(steps),
});
שווקים ורשתות נתמכים
| שוק | ספר הזמנות | נדרשת אימות |
|---|---|---|
| OpenSea | Seaport | לא (מפתח API) |
| Blur | Blur | כן (טוקן חד-פעמי) |
| LooksRare | LooksRare | לא |
| X2Y2 | X2Y2 | לא |
| Reservoir | משלו | לא |
Reservoir עובד על Ethereum, Polygon, Arbitrum, Optimism, Base, Zora (10+ בלוקצ'יינים בסך הכל). בעת יצירת רישום, ציין את הפרמטר import { createClient } from "@reservoir0x/reservoir-sdk"; import { createWalletClient, http } from "viem"; import { mainnet } from "viem/chains"; const client = createClient({ chains: [{ id: 1, baseApiUrl: "https://api.reservoir.tools", active: true }], apiKey: process.env.RESERVOIR_API_KEY, }); // получить floor price коллекции const { data } = await fetch( `https://api.reservoir.tools/collections/v7?id=${collectionAddress}`, { headers: { "x-api-key": process.env.RESERVOIR_API_KEY } } ).then(r => r.json()); const floorPrice = data.collections[0].floorAsk.price.amount.native; // выполнить покупку через SDK await client.actions.buyToken({ items: [{ token: `${contractAddress}:${tokenId}`, quantity: 1 }], wallet: walletClient, onProgress: (steps) => console.log(steps), }); :
await client.actions.listToken({
listings: [
{
token: `${contract}:${tokenId}`,
weiPrice: parseEther("0.5").toString(),
orderbook: "reservoir", // или "opensea", "blur", "looks-rare"
orderKind: "seaport-v1.5",
expirationTime: Math.floor(Date.now() / 1000) + 86400 * 7,
},
],
wallet: walletClient,
}); שילוב SDK שלב-אחר-שלב ב-5 צעדים
- התקן את החבילה:
orderbook - קבל מפתח API מה-Reservoir Dashboard
- צור לקוח עם המפתח וציין את הרשת (לדוגמה, Ethereum mainnet)
- השתמש במתודות קריאה:
await client.actions.listToken({ listings: [{ token: `${contract}:${tokenId}`, weiPrice: parseEther("0.5").toString(), orderbook: "reservoir", // или "opensea", "blur", "looks-rare" orderKind: "seaport-v1.5", expirationTime: Math.floor(Date.now() / 1000) + 86400 * 7, }], wallet: walletClient, });,npm install @reservoir0x/reservoir-sdk,getCollections - לפעולות כתיבה, חבר ארנק דרך
getTokensאוgetSalesוקרא ל-viemאוwagmi
היתרון המרכזי של מצב כתיבה
מצב כתיבה מאפשר יצירת רישומים חוצי-שווקים, ביצוע רכישות וניהול הזמנות דרך SDK יחיד. זה מפחית את הקוד פי 5 בהשוואה לקריאות ישירות ל-API של כל שוק. לדוגמה, אינטגרציה מותאמת אישית טיפוסית עולה $30,000–$60,000, בעוד אינטגרציה מבוססת Reservoir עולה $5,000–$15,000, חוסכת 75% מהתקציב. הניסיון שלנו: שוק לקוחות השיק אגרגטור תוך 3 שבועות במקום חודשיים, וחסך 60% זמן. חיסכון בתשתית בעת מעבר מצומת מתארח עצמי ל-API בענן מסתכם ב-$500–$2,000 לחודש. Reservoir SDK יעיל פי 5 מניהול מספר APIs בנפרד.
מקרי שימוש טיפוסיים לאינטגרציה
- שוק NFT עם אגרגציה — הצג רישומים מכל הפלטפורמות; משתמשים קונים דרך ממשק המשתמש שלנו. מודל הכנסה: עמלה על גבי עמלת Reservoir. אנו משתמשים ב-Reservoir SDK + חוזה חכם מותאם עם הוק עמלה.
- מעקב תיקים — השתמש ב-Ownership API כדי לשלוף NFTs של משתמשים עם מחירים עדכניים במקום קריאות ישירות ל-APIs בודדים.
- מתאם נדירות + מחיר — שלב סטטיסטיקות תכונות עם נתוני נדירות כדי להעריך ערך הוגן של טוקן.
- יצירת שוק אוטומטי — בוטים עם הצעות לאוסף המבוססות על אסטרטגיות אלגוריתמיות דרך SDK.
WebSocket לנתונים בזמן אמת
import { WebSocket } from "ws";
const ws = new WebSocket("wss://ws.reservoir.tools?api_key=YOUR_KEY");
ws.on("open", () => {
ws.send(
JSON.stringify({
type: "subscribe",
event: "sale.created",
filters: { contract: collectionAddress },
})
);
});
ws.on("message", (data) => {
const event = JSON.parse(data.toString());
handleRealtimeEvent(event);
}); טעויות אינטגרציה נפוצות
buyTokenשגוי עבור ספר ההזמנות שנבחר: השתמש ב-listTokenעבור OpenSea,import { WebSocket } from "ws"; const ws = new WebSocket("wss://ws.reservoir.tools?api_key=YOUR_KEY"); ws.on("open", () => { ws.send(JSON.stringify({ type: "subscribe", event: "sale.created", filters: { contract: collectionAddress } })); }); ws.on("message", (data) => { const event = JSON.parse(data.toString()); handleRealtimeEvent(event); });עבור Blur.- פגות רישום: תמיד הגדר
orderKindבשניות. - שגיאת אימות Blur: קבל טוקן פעם אחת דרך
seaport-v1.5ואחסן בקונפיג. - חריגה ממגבלת קצב: התוכנית החינמית היא 50 בקשות/שנייה; לייצור, שדרג לתוכנית בתשלום.
הגדרת מפתח API ומגבלות קצב
התוכנית החינמית מספקת 50 בקשות/שנייה — מספיק לסטארטאפ. עומסי ייצור דורשים תוכנית בתשלום. פעולות כתיבה דורשות מפתח API עם הרשאות מתאימות; החשבון חייב להיות מאומת. תיעוד Reservoir ממליץ על תוכניות בתשלום לפרויקטים עם תעבורה גבוהה.
צומת מתארח עצמי: Reservoir הוא קוד פתוח; אתה יכול לפרוס מופע משלך לשליטה מלאה ובקשות בלתי מוגבלות. דורש סנכרון דרך צומת Ethereum (מומלץ Erigon). זה רלוונטי לפרויקטים בעומס גבוה.
מה כלול בעבודה
| שלב | לוח זמנים |
|---|---|
| ניתוח דרישות והגדרת API | 1-2 ימים |
| שילוב מתודות קריאה | 3-5 ימים |
| יישום פעולות כתיבה | 5-10 ימים |
| חיבור WebSocket | 2-3 ימים |
| פריסת צומת (אופציונלי) | 5-7 ימים |
| בדיקות ותיעוד | 3-5 ימים |
נעריך את הפרויקט שלך — צור קשר לייעוץ. הזמן אינטגרציה סוהר וקבל אחריות לאיכות.







