OpenAPI Specification
openapi: 3.1.0
info:
title: Xweather Weather Air Quality Tropical API
description: The Xweather Weather API provides real-time and historical weather data including current conditions, forecasts, severe weather alerts, lightning data, air quality, maritime weather, and more. Backed by Vaisala, Xweather delivers science-backed hyper-local weather intelligence through a RESTful interface. Authentication uses a client ID and client secret passed as query parameters or HTTP headers.
version: 1.0.0
contact:
name: Xweather Support
url: https://www.xweather.com/support
termsOfService: https://www.xweather.com/legal/terms
servers:
- url: https://data.api.xweather.com
description: Xweather Weather API base URL
security:
- clientAuth: []
tags:
- name: Tropical
description: Tropical cyclone and hurricane data
paths:
/tropical/cyclones:
get:
operationId: listTropicalCyclones
summary: List Tropical Cyclones
description: Returns active and archive information on global tropical cyclones including category, track, and intensity data.
tags:
- Tropical
parameters:
- name: client_id
in: query
required: true
schema:
type: string
description: Your Xweather API client ID.
- name: client_secret
in: query
required: true
schema:
type: string
description: Your Xweather API client secret.
- name: filter
in: query
required: false
schema:
type: string
enum:
- active
- archive
description: Filter by active or archive cyclones.
- name: limit
in: query
required: false
schema:
type: integer
description: Maximum number of cyclones to return.
responses:
'200':
description: Tropical cyclone data
content:
application/json:
schema:
$ref: '#/components/schemas/TropicalCyclonesResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
components:
schemas:
TropicalCyclonesResponse:
allOf:
- $ref: '#/components/schemas/ApiResponse'
- type: object
properties:
response:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
basin:
type: string
category:
type: string
status:
type: string
ApiResponse:
type: object
properties:
success:
type: boolean
description: Whether the request was successful.
error:
$ref: '#/components/schemas/ApiError'
required:
- success
ApiError:
type: object
properties:
code:
type: string
description: Error code string.
example: invalid_client
description:
type: string
description: Human-readable error description.
example: Invalid client ID or secret.
responses:
Unauthorized:
description: Unauthorized - invalid client ID or secret
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
BadRequest:
description: Bad request - invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
securitySchemes:
clientAuth:
type: apiKey
in: query
name: client_id
description: Xweather uses client_id and client_secret query parameters for authentication. Both are required on every request.