curl --request GET \
--url https://snapchain-api.neynar.com/v1/reactionsByCast \
--header 'x-api-key: <api-key>'import requests
url = "https://snapchain-api.neynar.com/v1/reactionsByCast"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://snapchain-api.neynar.com/v1/reactionsByCast', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://snapchain-api.neynar.com/v1/reactionsByCast",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://snapchain-api.neynar.com/v1/reactionsByCast"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://snapchain-api.neynar.com/v1/reactionsByCast")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://snapchain-api.neynar.com/v1/reactionsByCast")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"messages": [
{
"hash": "0xd2b1ddc6c88e865a33cb1a565e0058d757042974",
"hashScheme": "HASH_SCHEME_BLAKE3",
"signature": "aSDinaTvuI8gbWludGxpZnk=",
"signatureScheme": "SIGNATURE_SCHEME_ED25519",
"signer": "<string>",
"data": {
"type": "MESSAGE_TYPE_CAST_ADD",
"fid": 2,
"timestamp": 48994466,
"network": "FARCASTER_NETWORK_MAINNET",
"reactionBody": {
"type": "Like",
"targetCastId": {
"fid": 2,
"hash": "0x03aff391a6eb1772b20b4ead9a89f732be75fe27"
},
"targetUrl": "https://www.example.com/article"
}
}
}
],
"nextPageToken": "AuzO1V0DtaItCwwa10X6YsfStlynsGWT"
}{
"errCode": "<string>",
"presentable": true,
"name": "<string>",
"code": 123,
"details": "<string>",
"metadata": {
"errcode": [
"<string>"
]
}
}On cast
Retrieve all reactions (likes or recasts) on a specific cast in the Farcaster network. The cast is identified by its creator’s FID and unique hash. This endpoint helps track engagement metrics and user interactions with specific content.
curl --request GET \
--url https://snapchain-api.neynar.com/v1/reactionsByCast \
--header 'x-api-key: <api-key>'import requests
url = "https://snapchain-api.neynar.com/v1/reactionsByCast"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://snapchain-api.neynar.com/v1/reactionsByCast', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://snapchain-api.neynar.com/v1/reactionsByCast",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://snapchain-api.neynar.com/v1/reactionsByCast"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://snapchain-api.neynar.com/v1/reactionsByCast")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://snapchain-api.neynar.com/v1/reactionsByCast")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"messages": [
{
"hash": "0xd2b1ddc6c88e865a33cb1a565e0058d757042974",
"hashScheme": "HASH_SCHEME_BLAKE3",
"signature": "aSDinaTvuI8gbWludGxpZnk=",
"signatureScheme": "SIGNATURE_SCHEME_ED25519",
"signer": "<string>",
"data": {
"type": "MESSAGE_TYPE_CAST_ADD",
"fid": 2,
"timestamp": 48994466,
"network": "FARCASTER_NETWORK_MAINNET",
"reactionBody": {
"type": "Like",
"targetCastId": {
"fid": 2,
"hash": "0x03aff391a6eb1772b20b4ead9a89f732be75fe27"
},
"targetUrl": "https://www.example.com/article"
}
}
}
],
"nextPageToken": "AuzO1V0DtaItCwwa10X6YsfStlynsGWT"
}{
"errCode": "<string>",
"presentable": true,
"name": "<string>",
"code": 123,
"details": "<string>",
"metadata": {
"errcode": [
"<string>"
]
}
}Query Parameters
The FID of the cast's creator. Required to uniquely identify the cast that received the reactions. Must be used in conjunction with target_hash. Farcaster ID (FID). A unique identifier assigned to each user in the Farcaster network. This number is permanent and cannot be changed. FIDs are assigned sequentially when users register on the network.
x >= 11
The unique hash identifier of the cast that received the reactions. This is a 40-character hexadecimal string prefixed with '0x' that uniquely identifies the cast within the creator's posts. Must be used with target_fid.
^0x[0-9a-fA-F]{40}$"0xfec8fd3546e1f46cf5ad10a4ff9f5d53a3bbe9be"
Type of interaction a user can have with content on the Farcaster network.
- Like: Express appreciation for the target content. Similar to "likes" or "favorites" on other platforms.
- Recast: Share the target content with the user's followers, similar to a "retweet" or "reblog". Helps increase content visibility.
Like, Recast "Like"
Response
The requested Reactions.
Base64-encoded pagination token for fetching the next page of results. An empty value indicates there are no more pages to return. Used in conjunction with the pageSize parameter to implement pagination across large result sets.
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$"AuzO1V0DtaItCwwa10X6YsfStlynsGWT"
Was this page helpful?