GraphQL Playground
Interactive testing environment with pre-built queries and mutations for all API endpoints.
Quick Access
GraphQL Endpoint
POST /public/graphql
Main GraphQL API endpoint for all queries and mutations
Q Pre-built Queries
Ready-to-use GraphQL queries for common operations.
Get Device Information
query GetDeviceInfo($deviceId: String!) {
device(deviceId: $deviceId) {
id
device_id
device_type
device_manufacturer
device_model
os_name
os_version
total_memory_mb
battery_level
is_rooted
is_emulator
last_seen_at
created_at
}
}
Variables:
{
"deviceId": "device_abc123"
}
Get Session Information
query GetSessionInfo($sessionId: String!) {
session(sessionId: $sessionId) {
id
session_id
user_id
device_id
started_at
last_activity_at
request_count
is_active
device {
device_type
device_manufacturer
os_name
}
}
}
Variables:
{
"sessionId": "session_def456"
}
Get Request Logs
query GetRequestLogs($limit: Int, $offset: Int) {
requestLogs(limit: $limit, offset: $offset) {
id
request_id
endpoint
method
http_code
response_time_ms
created_at
device {
device_id
device_type
}
network {
network_type
connection_speed_mbps
}
}
}
Variables:
{
"limit": 10,
"offset": 0
}
Get API Statistics
query GetApiStatistics {
statistics {
total_requests
successful_requests
failed_requests
average_response_time_ms
unique_devices
active_sessions
requests_today
error_rate
}
}
Network Analysis
query GetNetworkAnalysis($ipAddress: String!) {
networkAnalysis(ipAddress: $ipAddress) {
ip_address
network_type
connection_quality
latency_ms
is_vpn
is_proxy
risk_score
security_flags
location {
country
city
region
latitude
longitude
}
}
}
Variables:
{
"ipAddress": "192.168.1.100"
}
M Pre-built Mutations
Ready-to-use GraphQL mutations for data modification.
Log API Call
mutation LogApiCall($metadata: MetadataInput!, $response: ResponseInput!) {
logApiCall(metadata: $metadata, response: $response) {
id
request_id
success
http_code
response_time_ms
created_at
}
}
Variables:
{
"metadata": {
"device_id": "device_abc123",
"user_id": "user_xyz789",
"session_id": "session_def456",
"device_type": "mobile",
"os_name": "Android",
"os_version": "14",
"app_version": "1.0.0",
"network_type": "wifi",
"latitude": 40.7128,
"longitude": -74.0060
},
"response": {
"success": true,
"http_code": 200,
"response_time_ms": 150
}
}
Create Session
mutation CreateSession($userId: String!, $deviceId: String!) {
createSession(userId: $userId, deviceId: $deviceId) {
id
session_id
user_id
device_id
started_at
is_active
}
}
Variables:
{
"userId": "user_xyz789",
"deviceId": "device_abc123"
}
Update Device Information
mutation UpdateDevice($deviceId: String!, $deviceData: DeviceInput!) {
updateDevice(deviceId: $deviceId, deviceData: $deviceData) {
id
device_id
device_type
device_manufacturer
device_model
os_version
battery_level
updated_at
}
}
Variables:
{
"deviceId": "device_abc123",
"deviceData": {
"battery_level": 90,
"os_version": "14.1",
"total_memory_mb": 8192
}
}
Perform Security Check
mutation SecurityCheck($metadata: SecurityInput!) {
securityCheck(metadata: $metadata) {
security_score
risk_level
is_vpn_detected
is_proxy_detected
fingerprint_match
anomaly_detected
security_flags
recommendations
}
}
Variables:
{
"metadata": {
"device_id": "device_abc123",
"ip_address": "192.168.1.100",
"device_fingerprint": "fp_abc123xyz",
"latitude": 40.7128,
"longitude": -74.0060,
"user_agent": "Mozilla/5.0..."
}
}
Integration Examples
cURL Example
curl -X POST http://your-domain.com/public/graphql \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{
"query": "query GetDeviceInfo($deviceId: String!) { device(deviceId: $deviceId) { id device_id device_type os_name } }",
"variables": {
"deviceId": "device_abc123"
}
}'
JavaScript/Fetch Example
const response = await fetch('http://your-domain.com/public/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_TOKEN'
},
body: JSON.stringify({
query: `
query GetDeviceInfo($deviceId: String!) {
device(deviceId: $deviceId) {
id
device_id
device_type
os_name
}
}
`,
variables: {
deviceId: 'device_abc123'
}
})
});
const data = await response.json();
console.log(data);
Android/Kotlin Example
val client = OkHttpClient()
val mediaType = "application/json".toMediaType()
val body = """
{
"query": "query GetDeviceInfo($deviceId: String!) { device(deviceId: $deviceId) { id device_id device_type } }",
"variables": {
"deviceId": "device_abc123"
}
}
""".trimIndent().toRequestBody(mediaType)
val request = Request.Builder()
.url("http://your-domain.com/public/graphql")
.post(body)
.addHeader("Authorization", "Bearer YOUR_TOKEN")
.build()
val response = client.newCall(request).execute()
val data = response.body?.string()