Obtain an API token for fetching weather forecast data from Deutscher Wetterdienst (DWD). Play around with the API using the options editor on this page, and grab the resulting link as an example format to use in your own application.

The Starter Plan has a super-simple pay-as-you-go pricing structure:

  • only £0.0001 per API call
  • 5000 free API calls per month
  • seven-day free trial

Click on the following button to subscribe to the Starter Plan and obtain a token for immediate use. Payment information is required even if you do not expect to use more than the free quota.

If you already have an existing API plan, then clicking above and entering your details again will retrieve and display your existing token; you will not be charged for a second token.

Options Editor

All available options are presented below (click on the arrow icon to expand). Each time a change is made to an option, a new API call is sent and the fetched data is presented in the Results panel below.

If you require an API token, see the separate panel on this page to obtain one. The demo API token only works for the default location.


Use the direct URL to make the API call. The result of this call is presented below.

Raw Options

You can also make changes to the options here by editing the values in the editor below and then clicking

Editor Options

Meteogram API

You might also be interested in the Meteogram API for fetching a fully-featured meteogram graphic for use on your own website or even in a widget on your mobile device.


This will update whenever the form changes to show validation errors if there are any.


You can change the schema by pasting a new version below and then clicking


// Set default options
JSONEditor.defaults.options.theme = 'bootstrap2';

// Initialize the editor
var editor = new JSONEditor(document.getElementById('editor_holder'),{
  schema: {
      type: 'object',
      properties: {
          name: { 'type': 'string' }

// Set the value
    name: 'John Smith'

// Get the value
var data = editor.getValue();
console.log(data.name); // 'John Smith'

// Validate
var errors = editor.validate();
if(errors.length) {
  // Not valid

// Listen for changes
editor.on('change',  function() {
  // Do something...