Aperçu
Le SDK est un SDK unique SDK utiliser les API Quicknode depuis le langage que vous utilisez déjà : Rust, Python, Node.js et Ruby.
Utilisez-le pour créer des workflows Quicknode , des services opérationnels, des scripts et agents IA nécessitant un accès typé à :
- Admin API: Gérez les points de terminaison, l'utilisation, la facturation, les équipes, endpoint , les limites de débit, les journaux, les métriques et les balises de compte.
- RPC: Effectuez des appels JSON-RPC sur la chaîne vers n'importe quel réseau pris en charge sans avoir à configurer de endpoint.
- Streams: Créer, mettre à jour, suspendre, activer, tester et supprimer Streams.
- Webhooks: Créez et gérez des abonnements aux webhooks à partir des modèles Quicknode .
- Base de données clé-valeur: Stockage et récupération d'ensembles et de listes pour l'état de l'application, les filtres de flux, les listes de surveillance, les curseurs et agent .
- SQL Explorer: Exécutez des requêtes SQL sur des données de blockchain indexées et récupérez les schémas des tables.
Guide complet destiné aux développeurs et aux agents le SDK:
Quand utiliser le SDK?
Utilisez le SDK vous souhaitez disposer d'un client unique et cohérent pour les API Quicknode , en particulier lorsque votre application ou agent coordonner plusieurs produits au sein d'un même flux de travail.
Parmi les processus courants, on peut citer :
- Créez ou gérez des points de terminaison à l'aide de Admin API.
- Effectuez des appels JSON-RPC sur la chaîne vers n'importe quel réseau pris en charge.
- Créez un flux et transmettez des données filtrées sur la blockchain vers une destination Webhook.
- Enregistrer l'état de traitement ou les listes de surveillance dans un magasin clé-valeur.
- Créez webhooks modèles et gérez leur cycle de vie.
- Exécutez des requêtes SQL sur des données de blockchain indexées à l'aide de SQL Explorer.
- Créez agent de compilation capables de vérifier l'état des comptes, de provisionner des ressources et de nettoyer l'infrastructure de test.
Colis
| Langue | Colis | Installer |
|---|---|---|
| Node.js / TypeScript | sdk | npm installsdk |
| Python | sdk | pip installsdk |
| Rouille | sdk | cargo addsdk rust |
| Ruby | quicknode | gem install quicknode |
Prise en charge des plateformes
Le SDK autour d'un noyau Rust partagé, avec des liaisons pour des langages spécifiques. Ce noyau est compilé en bibliothèques natives pour chaque plateforme prise en charge, ce qui vous garantit des performances prévisibles et un faible encombrement en termes de dépendances. En contrepartie, nous publions des binaires destinés à un ensemble spécifique de cibles, plutôt que de permettre l'exécution dans tous les environnements pris en charge par nos langages hôtes.
Cibles prises en charge
Des modules natifs précompilés sont disponibles pour :
| Plateforme | Objectifs |
|---|---|
| Linux (glibc) | x86_64, aarch64 sous glibc 2.17+ (manylinux2014) |
| Linux (musl) | x86_64, aarch64 sur Alpine et d'autres distributions musl |
| macOS | Apple Silicon (arm64) |
Les binaires glibc pour Linux sont compilés avec la version 2.17 de glibc ; ils sont donc compatibles avec toutes les distributions publiées à partir de 2014, notamment RHEL 7 et versions ultérieures, Ubuntu 14.04 et versions ultérieures, Debian 8 et versions ultérieures, Amazon Linux 2 et versions ultérieures, SLES 12 et versions ultérieures, ainsi que Fedora 19 et versions ultérieures.
Non pris en charge
- Navigateurs: le SDK pas compatible avec les navigateurs. Il utilise un noyau Rust via des liaisons natives, qui nécessitent Node.js ou un autre environnement d'exécution prenant en charge les extensions natives. Les paquets standard des navigateurs ne peuvent pas charger ces liaisons.
- Windows: aucun binaire précompilé n'est disponible. WSL2 fonctionne et constitue la solution recommandée pour les développeurs Windows.
- Intel macOS: Apple Silicon uniquement.
- Anciennes distributions Linux: versions antérieures à la version minimale requise pour glibc : RHEL/CentOS 6 (glibc 2.12), Debian 7 (glibc 2.13), Ubuntu 12.04 (glibc 2.15), SLES 11 (glibc 2.11).
Sur une plateforme non prise en charge, l'importation du SDK rapidement au moment du chargement, avec une erreur indiquant la liste des cibles disponibles. L'échec se manifeste lors de l'installation ou de l'importation, et non lors du premier appel.
Clients du produit
Compilez le SDK , puis utilisez les clients du produit mis à disposition à partir de cette configuration partagée.
| Client | Objectif | API REST |
|---|---|---|
admin | Points de terminaison, équipes, utilisation, journaux, facturation, indicateurs, sécurité et limites de débit | https://api.quicknode.com/v0/ |
rpc | Appels JSON-RPC sur la chaîne vers n'importe quel réseau pris en charge via Tooling Access | endpoint d'accès à l'outil de gestion des comptes |
streams | Streams , mises à jour et cycle de vie Streams , ainsi que tests des filtres | https://api.quicknode.com/streams/rest/v1/ |
webhooks | Modèles de webhooks, destinations, cycle de vie et statistiques | https://api.quicknode.com/webhooks/rest/v1/ |
kvstore | Ensembles et listes pour l'état persistant | https://api.quicknode.com/kv/rest/v1/ |
sql | Requêtes SQL sur des données de blockchain indexées | https://api.quicknode.com/sql/rest/v1/ |
Le point SDK du SDK est QuicknodeSdk dans chaque implémentation de langage. Ruby l'expose sous la forme QuicknodeSdk::SDK.
Méthodes de SQL Explorer
Le sql Le client propose deux méthodes :
query(sql, clusterId): Exécute une requête SQL sur des données de blockchain indexées. Renvoie les lignes de type spécifié ainsi que les statistiques de la requête (crédits, nombre de lignes parcourues, nombre d'octets lus).getSchema(clusterId): Récupérer le schéma d'une table pour un cluster.
const qn = new QuicknodeSdk();
// Run a SQL query
const resp = await qn.sql.query(
"SELECT action_type, user FROM hyperliquid_system_actions LIMIT 3",
"hyperliquid-core-mainnet"
);
console.log(`${resp.rows} rows, ${resp.credits} credits`);
// Get the schema for a cluster
const schema = await qn.sql.getSchema("hyperliquid-core-mainnet");
Authentification
Créez une clé API dans le Quicknode, puis configurez le SDK le QN_SDK__API_KEY variable d'environnement.
export QN_SDK__API_KEY="VOTRE_CLÉ_API"
Le SDK prend SDK en charge la modification de l'URL de base pour le développement local, les environnements de préproduction et agent :
| Variable d'environnement | Par défaut |
|---|---|
QN_SDK__ADMIN__BASE_URL | https://api.quicknode.com/v0/ |
QN_SDK__STREAMS__BASE_URL | https://api.quicknode.com/streams/rest/v1/ |
QN_SDK__WEBHOOKS__BASE_URL | https://api.quicknode.com/webhooks/rest/v1/ |
QN_SDK__KVSTORE__BASE_URL | https://api.quicknode.com/kv/rest/v1/ |
QN_SDK__SQL__BASE_URL | https://api.quicknode.com/sql/rest/v1/ |
QN_SDK__HTTP__TIMEOUT_SECS | 30 |
Pour les agents
Le SDK conçu pour être utile tant aux utilisateurs qu'agents. Agents initialiser un SDK , réutiliser les mêmes informations d'identification pour tous les clients du produit et s'appuyer sur des entrées et des réponses de méthodes typées, plutôt que de composer des appels REST bruts pour chaque workflow.
Prochaines étapes
- Commencez par consulter le guide de démarrage rapide pour installer et configurer le SDK.
- Consultez les exemples d'utilisation pour découvrir les workflows liés à Admin API, à l'accès RPC et aux outils, Streams, Webhooks et au magasin clé-valeur.
- Pour connaître endpoint complet endpoint , consultez la documentation de l'API du produit : Admin API, Streams, Webhooks, le magasin clé-valeur et l'explorateur SQL.
Nous ❤️ vos commentaires
Faites-nous part de vos commentaires concernant les méthodes manquantes, la nomenclature, les exemples et agent afin que nous puissions continuer à améliorer le SDK.