Solana Transfers API
In this section we'll have a look at some examples using the Solana Transfers API.
This Solana API is part of our Early Access Program (EAP), which is intended for evaluation purposes.
This program allows you to test the data and its integration into your applications before full-scale implementation. Read more here
Subscribe to the latest NFT token transfers on Solana
Let's see an example of NFT token transfers using GraphQL Subscription (Webhook). In the following API, we will be subscribing to all NFT token transfers. You can run the query here
subscription {
Solana {
Transfers(where: {Transfer: {Currency: {Fungible: false}}}) {
Transfer {
Amount
AmountInUSD
Currency {
Name
MintAddress
Fungible
Symbol
Uri
}
Receiver {
Address
}
Sender {
Address
}
}
Transaction {
Signature
}
}
}
}
SPL Token Transfers API | Token transfers of a particular token on Solana
One of the most common types of transfers on Solana are SPL token transfers. Let's see an example to get the latest SPL token transfers using our API. Today we are taking an example of JUPITER token transfers. The contract address for the JUPITER token is JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN
. You can find the query here
subscription {
Solana {
Transfers(
where: {Transfer: {Currency: {MintAddress: {is: "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN"}}}}
) {
Transfer {
Currency {
MintAddress
Symbol
Name
Fungible
Native
}
Receiver {
Address
}
Sender {
Address
}
Amount
AmountInUSD
}
}
}
}
Sender is a particular address
This websocket retrieves transfers where the sender is a particular address 2g9NLWUM6bPm9xq2FBsb3MT3F3G5HDraGqZQEVzcCWTc
. For this subscription query we use where
keyword and in that we specify {Transfer: {Sender: {Address: {is: "2g9NLWUM6bPm9xq2FBsb3MT3F3G5HDraGqZQEVzcCWTc"}}}}
to get the desired data. You can find the query here
subscription {
Solana {
Transfers(
where: {Transfer: {Sender: {Address: {is: "2g9NLWUM6bPm9xq2FBsb3MT3F3G5HDraGqZQEVzcCWTc"}}}}
) {
Transaction {
Signature
}
Transfer {
Amount
AmountInUSD
Sender {
Address
}
Receiver {
Address
}
Currency {
Name
Symbol
MintAddress
}
}
}
}
}