GraphQL Request Samples
You can find examples of how to query the endpoint in different programming languages below:
Python
import requests
import json
url = "https://api.diadata.org/graphql/query"
query = """
{
GetFeed(
Filter: "mair",
BlockSizeSeconds: 480,
BlockShiftSeconds: 480,
StartTime: 1690449575,
EndTime: 1690535975,
FeedSelection: [
{
Address: "0x6B175474E89094C44Da98b954EedeAC495271d0F",
Blockchain:"Ethereum",
Exchangepairs:[],
},
],
)
{
Name
Time
Value
Address
Pools
Pairs
}
}
"""
headers = {
"Content-Type": "application/json"
}
data = {
"query": query
}
response = requests.post(url, headers=headers, data=json.dumps(data))
if response.status_code == 200:
# Print the response content
print(response.json())
else:
print("Request failed with status code:", response.status_code)
GO
package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
)
func main() {
url := "https://api.diadata.org/graphql/query"
query := `
GetFeed(
Filter: "mair",
BlockSizeSeconds: 480,
BlockShiftSeconds: 480,
StartTime: 1690449575,
EndTime: 1690535975,
FeedSelection: [
{
Address: "0x6B175474E89094C44Da98b954EedeAC495271d0F",
Blockchain:"Ethereum",
Exchangepairs:[],
},
],
)
{
Name
Time
Value
Address
Pools
Pairs
}
}
`
requestBody, err := json.Marshal(map[string]string{
"query": query,
})
if err != nil {
fmt.Println("Failed to create request body:", err)
return
}
response, err := http.Post(url, "application/json", bytes.NewBuffer(requestBody))
if err != nil {
fmt.Println("Request failed:", err)
return
}
defer response.Body.Close()
if response.StatusCode == http.StatusOK {
var data map[string]interface{}
err = json.NewDecoder(response.Body).Decode(&data)
if err != nil {
fmt.Println("Failed to decode response JSON:", err)
return
}
fmt.Println(data)
} else {
fmt.Println("Request failed with status code:", response.StatusCode)
}
}
JavaScript
const axios = require('axios');
const url = 'https://api.diadata.org/graphql/query';
const query = `
{
GetFeed(
Filter: "mair",
BlockSizeSeconds: 480,
BlockShiftSeconds: 480,
StartTime: 1690449575,
EndTime: 1690535975,
FeedSelection: [
{
Address: "0x6B175474E89094C44Da98b954EedeAC495271d0F",
Blockchain:"Ethereum",
Exchangepairs:[],
},
],
)
{
Name
Time
Value
Address
Pools
Pairs
}
} }
`;
const data = {
query: query
};
axios.post(url, data)
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error('Request failed:', error.message);
});
Node
const fetch = require('node-fetch');
const url = 'https://api.diadata.org/graphql/query';
const query = `
{
GetFeed(
Filter: "mair",
BlockSizeSeconds: 480,
BlockShiftSeconds: 480,
StartTime: 1690449575,
EndTime: 1690535975,
FeedSelection: [
{
Address: "0x6B175474E89094C44Da98b954EedeAC495271d0F",
Blockchain:"Ethereum",
Exchangepairs:[],
},
],
)
{
Name
Time
Value
Address
Pools
Pairs
}
}
`;
const data = JSON.stringify({ query });
fetch(url, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: data
})
.then(response => response.json())
.then(data => {
console.log(data);
})
.catch(error => {
console.error('Request failed:', error);
});
Rust
use reqwest;
use serde_json::json;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let url = "https://api.diadata.org/graphql/query";
let query = r#"
{
{
GetFeed(
Filter: "mair",
BlockSizeSeconds: 480,
BlockShiftSeconds: 480,
StartTime: 1690449575,
EndTime: 1690535975,
FeedSelection: [
{
Address: "0x6B175474E89094C44Da98b954EedeAC495271d0F",
Blockchain:"Ethereum",
Exchangepairs:[],
},
],
)
{
Name
Time
Value
Address
Pools
Pairs
}
}
"#;
let data = json!({
"query": query,
});
let client = reqwest::Client::new();
let response = client
.post(url)
.json(&data)
.send()
.await?;
if response.status().is_success() {
let body = response.text().await?;
println!("{}", body);
} else {
println!("Request failed with status code: {}", response.status());
}
Ok(())
}
PHP
<?php
$url = 'https://api.diadata.org/graphql/query';
$query = '
{
GetFeed(
Filter: "mair",
BlockSizeSeconds: 480,
BlockShiftSeconds: 480,
StartTime: 1690449575,
EndTime: 1690535975,
FeedSelection: [
{
Address: "0x6B175474E89094C44Da98b954EedeAC495271d0F",
Blockchain:"Ethereum",
Exchangepairs:[],
},
],
)
{
Name
Time
Value
Address
Pools
Pairs
}
}
';
$data = array(
'query' => $query
);
$options = array(
CURLOPT_URL => $url,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode($data),
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
CURLOPT_RETURNTRANSFER => true
);
$ch = curl_init();
curl_setopt_array($ch, $options);
$response = curl_exec($ch);
if (curl_errno($ch)) {
echo 'Request failed with error: ' . curl_error($ch);
} else {
echo $response;
}
curl_close($ch);
?>