Connecting with an SDK
CSPR.cloud offers Mainnet and Testnet access to Casper nodes. This guide demonstrates how to authenticate using an access token across various programming languages.
Endpoints
Connect to CSPR.cloud nodes using the following endpoints:
Mainnet
Service Type
URL
Casper Node RPC API
Casper Node SSE API
Testnet
Service Type
URL
Casper Node RPC API
Casper Node SSE API
Remember, all endpoints require authorization. Learn how to obtain an access token here.
SDK examples
RPC examples
import {HTTPTransport} from '@open-rpc/client-js';
import casperSDK from 'casper-js-sdk';
const {CasperServiceByJsonRPC} = casperSDK;
const {CasperClient} = casperSDK;
class CustomCasperClient extends CasperServiceByJsonRPC {
constructor(url, options) {
super(url);
const transport = new HTTPTransport(url, options);
this.client.requestManager.transports = [transport];
}
}
const customCasperClient = new CustomCasperClient("https://node.testnet.cspr.cloud/rpc", {
headers: {
"Authorization": "55f79117-fc4d-4d60-9956-65423f39a06a"
}
});
const casperClient = new CasperClient("");
casperClient.nodeClient = customCasperClient;
(async function () {
const result = await casperClient.nodeClient.getStatus();
console.log({result});
const deploy = await casperClient.getDeploy("88461218a5e972fcda1d764d7cc4edb2e0c3a538123b97890d484f43c55935f5");
console.log({deploy});
})();
SSE examples
package main
import (
"context"
"fmt"
"time"
"github.com/make-software/casper-go-sdk/sse"
)
func main() {
sseClient := sse.NewClient("https://node-sse.testnet.cspr.cloud/events/main")
sseClient.Streamer.Connection.Headers = map[string]string{"Authorization": "Your-Access-Token"}
sseClient.RegisterHandler(sse.APIVersionEventType, func(ctx context.Context, event sse.RawEvent) error {
data, _ := event.ParseAsAPIVersionEvent()
fmt.Println(data.APIVersion)
return nil
})
ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second)
defer cancel()
sseClient.Start(ctx, -1)
}
Last updated