SkyTool API Documentation
Integrate SkyTool's powerful APIs into your applications. Access weather data, utility services, and gaming features with our comprehensive REST API.
Introduction
The SkyTool Weather API provides real-time weather data and forecasts for any location worldwide. All API endpoints return JSON responses.
Base URL: https://api.skytool.xyz/v1/weather
Authentication
All API requests require an API key sent in the request header:
Authorization: Bearer YOUR_API_KEY
Endpoints
Get current weather data for a specific location.
Parameters
| Parameter |
Type |
Required |
Description |
| lat |
number |
Yes |
Latitude coordinate |
| lon |
number |
Yes |
Longitude coordinate |
| units |
string |
No |
Units of measurement (metric/imperial) |
{
"location": {
"city": "New York",
"country": "US",
"lat": 40.7128,
"lon": -74.0060
},
"weather": {
"temperature": 22.5,
"feels_like": 23.1,
"humidity": 65,
"conditions": "Partly Cloudy",
"icon": "partly-cloudy-day",
"wind_speed": 3.2,
"wind_direction": 180,
"pressure": 1012,
"visibility": 10
},
"units": "metric",
"timestamp": 1634567890
}
Response Codes
200 OK
400 Bad Request
401 Unauthorized
429 Too Many Requests
Get weather forecast for the next 5 days with 3-hour intervals.
Parameters
| Parameter |
Type |
Required |
Description |
| lat |
number |
Yes |
Latitude coordinate |
| lon |
number |
Yes |
Longitude coordinate |
| units |
string |
No |
Units of measurement (metric/imperial) |
| cnt |
number |
No |
Number of timestamps to return (max 40) |
Rate Limits
The Weather API is limited to 100 requests per hour per API key.
If you exceed this limit, you'll receive a 429 Too Many Requests response.
Utilities API
The SkyTool Utilities API provides various utility services including text processing, conversions, and more.
Base URL: https://api.skytool.xyz/v1/utils
Endpoints
Summarize long text content into a shorter version while preserving key information.
Parameters
| Parameter |
Type |
Required |
Description |
| text |
string |
Yes |
The text content to summarize |
| length |
string |
No |
Desired summary length (short/medium/long) |
POST https://api.skytool.xyz/v1/utils/text/summarize
Content-Type: application/json
{
"text": "Long text content goes here...",
"length": "medium"
}
Convert between different currencies using real-time exchange rates.
Parameters
| Parameter |
Type |
Required |
Description |
| amount |
number |
Yes |
The amount to convert |
| from |
string |
Yes |
Source currency code (e.g. USD) |
| to |
string |
Yes |
Target currency code (e.g. EUR) |
POST https://api.skytool.xyz/v1/utils/convert/currency
Content-Type: application/json
{
"amount": 100,
"from": "USD",
"to": "EUR"
}
Gaming API
The SkyTool Gaming API provides access to game statistics, leaderboards, player profiles, and more for integrated games.
Base URL: https://api.skytool.xyz/v1/gaming
Endpoints
Get detailed information about a specific player including stats, achievements, and game progress.
Parameters
| Parameter |
Type |
Required |
Description |
| playerId |
string |
Yes |
Unique player identifier |
| game |
string |
No |
Filter stats for specific game |
GET https://api.skytool.xyz/v1/gaming/player/abc123def456
{
"player": {
"id": "abc123def456",
"username": "SkyGamer",
"avatar": "https://skytool.xyz/avatars/abc123def456.png",
"level": 42,
"xp": 12500,
"joined": "2022-05-15T10:30:00Z"
},
"stats": {
"total_games": 156,
"wins": 98,
"losses": 58,
"win_rate": 62.8
},
"achievements": [
{
"id": "first_win",
"name": "First Blood",
"description": "Win your first game",
"earned": "2022-05-16T08:45:00Z"
},
{
"id": "level_20",
"name": "Veteran",
"description": "Reach level 20",
"earned": "2022-07-22T14:30:00Z"
}
],
"recent_games": [
{
"game_id": "xyz789",
"game_name": "SkyRacer",
"result": "win",
"score": 2450,
"played_at": "2023-01-10T16:45:00Z"
}
]
}
Retrieve leaderboard data for a specific game or across all games.
Parameters
| Parameter |
Type |
Required |
Description |
| game |
string |
No |
Game identifier to filter leaderboard |
| limit |
number |
No |
Number of entries to return (default: 10, max: 100) |
| offset |
number |
No |
Offset for pagination |
{
"leaderboard": [
{
"rank": 1,
"player_id": "topgamer123",
"username": "ProGamer",
"avatar": "https://skytool.xyz/avatars/topgamer123.png",
"score": 9850,
"level": 78
},
{
"rank": 2,
"player_id": "skyplayer456",
"username": "SkyMaster",
"avatar": "https://skytool.xyz/avatars/skyplayer456.png",
"score": 8720,
"level": 65
}
],
"total_players": 12500,
"game": "skyracer"
}
Record a game event (match start/end, achievement earned, etc.) for analytics and tracking.
Parameters
| Parameter |
Type |
Required |
Description |
| player_id |
string |
Yes |
Unique player identifier |
| game_id |
string |
Yes |
Game identifier |
| event_type |
string |
Yes |
Type of event (match_start, match_end, achievement, etc.) |
| event_data |
object |
No |
Additional event-specific data |
POST https://api.skytool.xyz/v1/gaming/game/event
Content-Type: application/json
{
"player_id": "abc123def456",
"game_id": "skyracer",
"event_type": "match_end",
"event_data": {
"result": "win",
"score": 2450,
"duration": 325,
"opponents": ["player789", "player012"]
}
}
Rate Limits
The Gaming API has different rate limits depending on the endpoint:
- Player data: 500 requests/hour
- Leaderboards: 200 requests/hour
- Game events: 1000 requests/hour