curl --request POST \
--url https://api.datadash.xyz/api/v1/market-holders/active \
--header 'Content-Type: application/json' \
--data '
{
"eventId": {
"operator": "in",
"value": [
27185
]
},
"orderBy": [
{
"direction": "desc",
"field": "currentValue"
}
],
"page": {
"limit": 50,
"offset": 0
}
}
'import requests
url = "https://api.datadash.xyz/api/v1/market-holders/active"
payload = {
"eventId": {
"operator": "in",
"value": [27185]
},
"orderBy": [
{
"direction": "desc",
"field": "currentValue"
}
],
"page": {
"limit": 50,
"offset": 0
}
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
eventId: {operator: 'in', value: [27185]},
orderBy: [{direction: 'desc', field: 'currentValue'}],
page: {limit: 50, offset: 0}
})
};
fetch('https://api.datadash.xyz/api/v1/market-holders/active', 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://api.datadash.xyz/api/v1/market-holders/active",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'eventId' => [
'operator' => 'in',
'value' => [
27185
]
],
'orderBy' => [
[
'direction' => 'desc',
'field' => 'currentValue'
]
],
'page' => [
'limit' => 50,
'offset' => 0
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.datadash.xyz/api/v1/market-holders/active"
payload := strings.NewReader("{\n \"eventId\": {\n \"operator\": \"in\",\n \"value\": [\n 27185\n ]\n },\n \"orderBy\": [\n {\n \"direction\": \"desc\",\n \"field\": \"currentValue\"\n }\n ],\n \"page\": {\n \"limit\": 50,\n \"offset\": 0\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.datadash.xyz/api/v1/market-holders/active")
.header("Content-Type", "application/json")
.body("{\n \"eventId\": {\n \"operator\": \"in\",\n \"value\": [\n 27185\n ]\n },\n \"orderBy\": [\n {\n \"direction\": \"desc\",\n \"field\": \"currentValue\"\n }\n ],\n \"page\": {\n \"limit\": 50,\n \"offset\": 0\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.datadash.xyz/api/v1/market-holders/active")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"eventId\": {\n \"operator\": \"in\",\n \"value\": [\n 27185\n ]\n },\n \"orderBy\": [\n {\n \"direction\": \"desc\",\n \"field\": \"currentValue\"\n }\n ],\n \"page\": {\n \"limit\": 50,\n \"offset\": 0\n }\n}"
response = http.request(request)
puts response.read_body[
{
"currentValue": 123,
"invested": 123,
"outcomes": 123,
"pnlPercentage": 123,
"tokenMetadata": [
{
"avgBuyingPrice": "<string>",
"invested": "<string>",
"isYesToken": "<string>",
"marketClosed": "<string>",
"marketId": "<string>",
"pnlPercentage": "<string>",
"tokenName": "<string>",
"totalPnl": "<string>",
"total_bought_shares": "<string>",
"unrealizedPnl": "<string>",
"volume": "<string>"
}
],
"totalPnl": 123,
"user": {
"bio": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"displayName": "<string>",
"pnl": 123,
"profileImageUrl": "<string>",
"pseudonym": "<string>",
"rank": 123,
"userId": "<string>",
"verifiedBadge": true,
"xUsername": "<string>"
}
}
]{
"code": "<string>",
"message": "<string>"
}{
"code": "<string>",
"message": "<string>"
}Active Market Holder
User-level holders of currently-held (active) market positions.
curl --request POST \
--url https://api.datadash.xyz/api/v1/market-holders/active \
--header 'Content-Type: application/json' \
--data '
{
"eventId": {
"operator": "in",
"value": [
27185
]
},
"orderBy": [
{
"direction": "desc",
"field": "currentValue"
}
],
"page": {
"limit": 50,
"offset": 0
}
}
'import requests
url = "https://api.datadash.xyz/api/v1/market-holders/active"
payload = {
"eventId": {
"operator": "in",
"value": [27185]
},
"orderBy": [
{
"direction": "desc",
"field": "currentValue"
}
],
"page": {
"limit": 50,
"offset": 0
}
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
eventId: {operator: 'in', value: [27185]},
orderBy: [{direction: 'desc', field: 'currentValue'}],
page: {limit: 50, offset: 0}
})
};
fetch('https://api.datadash.xyz/api/v1/market-holders/active', 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://api.datadash.xyz/api/v1/market-holders/active",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'eventId' => [
'operator' => 'in',
'value' => [
27185
]
],
'orderBy' => [
[
'direction' => 'desc',
'field' => 'currentValue'
]
],
'page' => [
'limit' => 50,
'offset' => 0
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.datadash.xyz/api/v1/market-holders/active"
payload := strings.NewReader("{\n \"eventId\": {\n \"operator\": \"in\",\n \"value\": [\n 27185\n ]\n },\n \"orderBy\": [\n {\n \"direction\": \"desc\",\n \"field\": \"currentValue\"\n }\n ],\n \"page\": {\n \"limit\": 50,\n \"offset\": 0\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.datadash.xyz/api/v1/market-holders/active")
.header("Content-Type", "application/json")
.body("{\n \"eventId\": {\n \"operator\": \"in\",\n \"value\": [\n 27185\n ]\n },\n \"orderBy\": [\n {\n \"direction\": \"desc\",\n \"field\": \"currentValue\"\n }\n ],\n \"page\": {\n \"limit\": 50,\n \"offset\": 0\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.datadash.xyz/api/v1/market-holders/active")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"eventId\": {\n \"operator\": \"in\",\n \"value\": [\n 27185\n ]\n },\n \"orderBy\": [\n {\n \"direction\": \"desc\",\n \"field\": \"currentValue\"\n }\n ],\n \"page\": {\n \"limit\": 50,\n \"offset\": 0\n }\n}"
response = http.request(request)
puts response.read_body[
{
"currentValue": 123,
"invested": 123,
"outcomes": 123,
"pnlPercentage": 123,
"tokenMetadata": [
{
"avgBuyingPrice": "<string>",
"invested": "<string>",
"isYesToken": "<string>",
"marketClosed": "<string>",
"marketId": "<string>",
"pnlPercentage": "<string>",
"tokenName": "<string>",
"totalPnl": "<string>",
"total_bought_shares": "<string>",
"unrealizedPnl": "<string>",
"volume": "<string>"
}
],
"totalPnl": 123,
"user": {
"bio": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"displayName": "<string>",
"pnl": 123,
"profileImageUrl": "<string>",
"pseudonym": "<string>",
"rank": 123,
"userId": "<string>",
"verifiedBadge": true,
"xUsername": "<string>"
}
}
]{
"code": "<string>",
"message": "<string>"
}{
"code": "<string>",
"message": "<string>"
}Body
Event ID.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Filters to apply, combined with AND. Use a group for OR.
1A single field condition. in/notIn take an array of values; matches/notMatches take one search term.
- Numeric
- ID
- Wallet address
- User Profile Lookup
- User Tag Profile Lookup
- Group
Show child attributes
Show child attributes
Sort keys in priority order; the first is the primary sort. Defaults to the table's configured ranking when omitted.
Show child attributes
Show child attributes
Response
List of Active Market Holder rows
current invested value
Cost basis of the currently-held shares.
Number of distinct token outcomes
Open PnL as percentage of the held cost basis
Nested token-level position details as JSON
Show child attributes
Show child attributes
Open (unrealized) PnL of the currently-held shares
Resolved User row.
Show child attributes
Show child attributes