Solana RPC endpoint avec ERPC | Documentation
Endpoint RPC Solana
Utilisez cette URL comme RPC endpoint Solana pour vos appels Solana RPC HTTP et vos abonnements WebSocket. Ajoutez votre API key au paramètre
api-key.text
https://edge.erpc.global?api-key=<YOUR_API_KEY>https://edge.erpc.global?api-key=<YOUR_API_KEY>Exemples d'utilisation
Voici un exemple de requête HTTP.
bash
curl https://edge.erpc.global?api-key=<YOUR_API_KEY> --header 'Content-Type: application/json' --data '{
"jsonrpc":"2.0","id":1,
"method":"getBlockHeight"
}'curl https://edge.erpc.global?api-key=<YOUR_API_KEY> --header 'Content-Type: application/json' --data '{
"jsonrpc":"2.0","id":1,
"method":"getBlockHeight"
}'Voici un exemple d'abonnement WebSocket. L'hôte est le même qu'en HTTP.
text
wss://edge.erpc.global?api-key=<YOUR_API_KEY>wss://edge.erpc.global?api-key=<YOUR_API_KEY>bash
# Example: subscribe to slot updates
wscat -c "wss://edge.erpc.global?api-key=<YOUR_API_KEY>"
# After connected, send:
{"jsonrpc":"2.0","id":1,"method":"slotSubscribe"}# Example: subscribe to slot updates
wscat -c "wss://edge.erpc.global?api-key=<YOUR_API_KEY>"
# After connected, send:
{"jsonrpc":"2.0","id":1,"method":"slotSubscribe"}Vous pouvez obtenir et vérifier votre API key dans le Dashboard ERPC: Dashboard ERPC
Si vous avez besoin d'une latence plus faible que WebSocket, considérez Geyser gRPC ou ShredStream. Vous pouvez discuter des détails avec nous via le Dashboard ERPC.
History Access
Ajoutez
history=true à l'URL edge.erpc.global d'une requête HTTP pour rechercher des blocs et transactions plus anciens ; la valeur doit être exactement true, en minuscules. À l'exception de getTransactionsForAddress, une requête sans history=true est traitée à partir de la plage récente que détient chaque nœud ; l'option s'applique à ces méthodes :getBlockgetBlockTimegetBlocksgetBlocksWithLimitgetTransaction, y comprisgetParsedTransactiongetSignaturesForAddressgetSignatureStatuses, lorsquesearchTransactionHistoryvauttruegetTransactionsForAddress, lorsquetransactionDetailsvaut"full"(History Access requis)
Placez l'API key et l'option dans l'URL sous forme de paramètres de requête :
text
https://edge.erpc.global?api-key=<YOUR_API_KEY>&history=truehttps://edge.erpc.global?api-key=<YOUR_API_KEY>&history=trueOu envoyez
Authorization: Bearer <YOUR_API_KEY> comme en-tête, avec l'option dans l'URL :text
https://edge.erpc.global?history=truehttps://edge.erpc.global?history=trueVoici un exemple de requête HTTP qui utilise History Access.
bash
curl 'https://edge.erpc.global?history=true' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc":"2.0","id":1,
"method":"getBlock",
"params":[<SLOT>,{"maxSupportedTransactionVersion":1}]
}'curl 'https://edge.erpc.global?history=true' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc":"2.0","id":1,
"method":"getBlock",
"params":[<SLOT>,{"maxSupportedTransactionVersion":1}]
}'Pour toutes les méthodes sauf
getTransactionsForAddress en mode "full" :- Chaque appel traité par History Access coûte 640 jetons de plus que son prix habituel :
getBlockcoûte 42 + 640 = 682. - Le supplément s'applique aussi à un résultat
null, vide ou partiel de History Access. Une recherche échouée n'entraîne aucun supplément. - Un appel traité à partir de données récentes conserve son prix habituel, même avec
history=true. - Un batch compte chaque appel séparément ;
getSignatureStatusescompte une fois par appel, et non par signature. - Laissez
history=truede côté pour le polling des transactions récentes : le supplément s'applique à chaquenullqui y est renvoyé.
Les allocations gratuites, y compris celles du forfait Free, ont une limite pour History Access. Le forfait Free est limité à une requête avec History Access toutes les 10 secondes.
Un appel
getTransactionsForAddress avec transactionDetails défini sur "full" relève de History Access, que les transactions soient récentes ou anciennes :- L'appel exige
history=truedans l'URLedge.erpc.global. Une requête sans cette option est refusée avec l'erreur History Access (code-32011) et n'entraîne aucun frais. - Avec
history=true, l'appel coûte 420 + 640 × N jetons : son prix habituel de 420, plus 640 pour chacune des N transactions récupérées, récentes ou anciennes. Une ligne sans transaction n'est pas comptée. - L'appel doit être envoyé comme requête distincte. Un batch qui le contient est refusé, avec ou sans
history=true: chaque appel du batch reçoit l'erreur-32600et le messageThis request is not available in a mixed JSON-RPC batch. Please send it as a separate request., et aucun n'est envoyé.
Le mode
signatures, par défaut, n'exige pas history=true et n'entraîne aucun supplément. Pour interroger régulièrement une adresse en quête de nouvelles transactions, utilisez le mode signatures et récupérez celles dont vous avez besoin avec getTransaction.Une recherche de blocs ou de transactions plus anciens peut prendre beaucoup plus de temps qu'une requête ordinaire, parfois plusieurs secondes. History Access est une option distincte qui sépare ces recherches des requêtes ordinaires, afin que celles-ci restent rapides.
Sans
history=true, une requête getBlock ou getBlockTime portant sur un slot plus ancien peut renvoyer cette erreur :json
{
"jsonrpc": "2.0",
"error": {
"code": -32011,
"message": "This request needs history access. Add history=true to the endpoint URL.",
"data": {
"erpcCode": "ERPC_HISTORY_OPTION_REQUIRED"
}
},
"id": 1
}{
"jsonrpc": "2.0",
"error": {
"code": -32011,
"message": "This request needs history access. Add history=true to the endpoint URL.",
"data": {
"erpcCode": "ERPC_HISTORY_OPTION_REQUIRED"
}
},
"id": 1
}getTransaction, getParsedTransaction et getSignatureStatuses (avec searchTransactionHistory: true) renvoient null pour une signature plus ancienne que ce que détient le nœud, tandis que getSignaturesForAddress, getBlocks et getBlocksWithLimit renvoient un résultat vide ou partiel.Une requête avec
history=true peut renvoyer ces messages :This plan has reached its limit for history access. Add a paid plan to use tokens for history access.— affiché lorsqu'une allocation, comme celle du forfait Free, atteint sa limite.History access is unavailable while your token balance is low. Add tokens.— affiché avec un forfait payant lorsque le solde de jetons est faible.On the Free plan, history access is limited to one request per 10 seconds. Slow down or use a paid plan.— affiché avec le forfait Free lorsque les requêtes avec History Access arrivent trop vite.
Méthodes Solana RPC et documentation
Pour la liste complète des méthodes, paramètres et spécifications d'abonnement, veuillez consulter la documentation officielle. Elle couvre à la fois l'utilisation HTTP et WebSocket.






