Weather API in JavaScript
Complete JavaScript integration guide for the Weather API. Copy the code below, add your RapidAPI key, and start building.
Prerequisites
- 1.Sign up for a free account on RapidAPI
- 2.Subscribe to the Weather API (free tier available)
- 3.Copy your
X-RapidAPI-Keyfrom the dashboard - 4.Install the dependency:
npm install node-fetch
Complete JavaScript Example
const url = "https://weather-by-helix-api.p.rapidapi.com/current?city=Berlin";
const response = await fetch(url, {
headers: {
"X-RapidAPI-Key": "YOUR_API_KEY",
"X-RapidAPI-Host": "weather-by-helix-api.p.rapidapi.com"
}
});
const { status, data } = await response.json();
console.log("Status:", status);
console.log("Result:", data);Response Format
All Helix-API endpoints return a consistent JSON envelope:
{
"status": "ok",
"data": { ... },
"meta": {
"request_id": "req_abc123",
"latency_ms": 42
}
}On errors, status becomes "error" and a message field explains what went wrong.
Error Handling
| Status | Meaning | Action |
|---|---|---|
200 | Success | Parse the response body normally |
400 | Bad request | Check your request parameters |
401 | Unauthorized | Verify your X-RapidAPI-Key header |
429 | Rate limited | Wait and retry with exponential backoff |
500 | Server error | Retry after a short delay |
JavaScript Best Practices
Works in Node.js and the browser
The fetch API works everywhere. In Node.js 18+, fetch is built-in — no packages needed to call the Weather API.
TypeScript types for safety
Define an interface for the API response. This gives you autocomplete and catches bugs at compile time.
AbortController for timeouts
Wrap your fetch call with an AbortController to set a timeout. This prevents your app from hanging on slow responses.
Cache responses when possible
Use a Map or Redis to cache responses for deterministic endpoints. This reduces API calls and speeds up your app.
Weather API Endpoints
/currentCurrent weather for a city or coordinates
/forecastDaily forecast for up to 16 days
Other Languages
View the Weather API integration guide in another language: