openapi: 3.1.0 info: title: Stormglass Astronomy Weather API description: Stormglass provides a global marine and weather API delivering high-resolution forecasts, historical data, and environmental measurements for any coordinate on Earth. The API supports weather point forecasts, marine data, tidal information, solar and astronomical data, biological oceanographic data, and elevation data. Commonly used for maritime navigation, renewable energy forecasting, outdoor activity planning, and environmental monitoring. version: v2 contact: name: Stormglass Support url: https://stormglass.io/contact termsOfService: https://stormglass.io/terms-and-conditions/ servers: - url: https://api.stormglass.io/v2 description: Stormglass API v2 security: - apiKeyAuth: [] tags: - name: Weather description: Point weather forecasts and historical weather data paths: /weather/point: get: operationId: getWeatherPoint summary: Get Weather Point Forecast description: Retrieve hourly weather forecast data for a single coordinate. Returns atmospheric and marine weather parameters including temperature, wind, waves, swell, and precipitation from multiple data sources. tags: - Weather parameters: - name: lat in: query required: true schema: type: number format: float description: Latitude of the desired coordinate - name: lng in: query required: true schema: type: number format: float description: Longitude of the desired coordinate - name: params in: query required: true schema: type: string description: Comma-separated list of parameters to retrieve. E.g. airTemperature,windSpeed,waveHeight - name: start in: query required: false schema: type: string description: Timestamp in UTC for first forecast hour. UNIX format or URL-encoded ISO format. - name: end in: query required: false schema: type: string description: Timestamp in UTC for last forecast hour. UNIX format or URL-encoded ISO format. - name: source in: query required: false schema: type: string description: Specify a single source or comma-separated list of sources. E.g. noaa or dwd,noaa responses: '200': description: Hourly weather data returned successfully. content: application/json: schema: $ref: '#/components/schemas/WeatherPointResponse' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/QuotaExceeded' '422': $ref: '#/components/responses/UnprocessableEntity' components: responses: QuotaExceeded: description: Daily quota exceeded or payment required. content: application/json: schema: $ref: '#/components/schemas/Error' Unauthorized: description: Authentication failed. Check your API key. content: application/json: schema: $ref: '#/components/schemas/Error' UnprocessableEntity: description: Invalid parameters in the request. content: application/json: schema: $ref: '#/components/schemas/Error' schemas: SourceValue: type: object description: A weather parameter value from a specific source additionalProperties: type: number format: float MetaData: type: object description: Metadata about the API request including quota information properties: cost: type: integer description: Number of API credits consumed by this request dailyQuota: type: integer description: Your daily API call quota requestCount: type: integer description: Total number of API calls made today lat: type: number format: float description: Latitude of the requested coordinate lng: type: number format: float description: Longitude of the requested coordinate params: type: array items: type: string description: List of parameters returned start: type: string description: Start timestamp of the returned data end: type: string description: End timestamp of the returned data WeatherPointResponse: type: object properties: hours: type: array items: $ref: '#/components/schemas/WeatherHour' description: Hourly weather data meta: $ref: '#/components/schemas/MetaData' Error: type: object properties: errors: type: object additionalProperties: type: string WeatherHour: type: object description: Hourly weather data for one time interval properties: time: type: string description: Timestamp in UTC for this data point airTemperature: $ref: '#/components/schemas/SourceValue' windSpeed: $ref: '#/components/schemas/SourceValue' windDirection: $ref: '#/components/schemas/SourceValue' gust: $ref: '#/components/schemas/SourceValue' humidity: $ref: '#/components/schemas/SourceValue' pressure: $ref: '#/components/schemas/SourceValue' cloudCover: $ref: '#/components/schemas/SourceValue' precipitation: $ref: '#/components/schemas/SourceValue' waveHeight: $ref: '#/components/schemas/SourceValue' waveDirection: $ref: '#/components/schemas/SourceValue' wavePeriod: $ref: '#/components/schemas/SourceValue' swellHeight: $ref: '#/components/schemas/SourceValue' swellDirection: $ref: '#/components/schemas/SourceValue' swellPeriod: $ref: '#/components/schemas/SourceValue' waterTemperature: $ref: '#/components/schemas/SourceValue' currentSpeed: $ref: '#/components/schemas/SourceValue' currentDirection: $ref: '#/components/schemas/SourceValue' visibility: $ref: '#/components/schemas/SourceValue' seaLevel: $ref: '#/components/schemas/SourceValue' securitySchemes: apiKeyAuth: type: apiKey in: header name: Authorization description: API key obtained from your Stormglass account dashboard externalDocs: description: Stormglass API Documentation url: https://docs.stormglass.io/