Live Power Cuts

This resource view is not available at the moment. Click here for more information.

Download resource

Integrate this resource

Access this data via a web API. Further information in the CKAN API guide (opens in new tab).

Endpoints

The Data API can be accessed via the following actions of the CKAN action API.

Create
https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_create

Update / Insert
https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_upsert

Query
https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_search

Querying
First 5 results:
https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_search?resource_id=292f788f-4339-455b-8cc0-153e14509d4d&limit=5

Results containing 'jones':
https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_search?resource_id=292f788f-4339-455b-8cc0-153e14509d4d&q=jones

Examples
  
    curl -X POST 'https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_search' \
      -H "Content-Type: application/json" \
      -d '{
        "resource_id": "292f788f-4339-455b-8cc0-153e14509d4d",
        "limit": 5,
        "q": "jones"
      }'
  
  
    using System;
    using System.Net.Http;
    using System.Text;
    using System.Text.Json;
    using System.Threading.Tasks;

    var data = new {
      resource_id = "292f788f-4339-455b-8cc0-153e14509d4d", // the resource id
      limit = 5, // get 5 results
      q = "jones" // query for 'jones'
    };

    var url = "https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_search";

    using var client = new HttpClient();
    var json = JsonSerializer.Serialize(data);
    var content = new StringContent(json, Encoding.UTF8, "application/json");

    try {
      var response = await client.PostAsync(url, content);
      response.EnsureSuccessStatusCode();
      var responseBody = await response.Content.ReadAsStringAsync();
      var result = JsonSerializer.Deserialize<JsonElement>(responseBody);
      Console.WriteLine($"Total results found: {result.GetProperty("result").GetProperty("total")}");
    } catch (HttpRequestException e) {
      Console.WriteLine($"Error fetching data: {e.Message}");
    }
  
  
    const data = {
      resource_id: '292f788f-4339-455b-8cc0-153e14509d4d', // the resource id
      limit: 5, // get 5 results
      q: 'jones' // query for 'jones'
    };

    const url = new URL('https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_search');
    Object.keys(data).forEach(key => url.searchParams.append(key, data[key]));

    fetch(url)
      .then(response => response.json())
      .then(result => {
        console.log('Total results found: ' + result.result.total);
      })
      .catch(error => {
        console.error('Error fetching data:', error);
      });
  
  
    import urllib.request
    import urllib.error
    import json

    url = 'https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_search?resource_id=292f788f-4339-455b-8cc0-153e14509d4d&limit=5&q=title:jones'  
    
    try:
        with urllib.request.urlopen(url) as response:
            data = json.loads(response.read().decode('utf-8'))
            print(f"Total results found: {data['result']['total']}")
    except urllib.error.URLError as e:
        print(f"Error fetching data: {e}")
  
  
    $data = [
      'resource_id' => '292f788f-4339-455b-8cc0-153e14509d4d', // the resource id
      'limit' => 5, // get 5 results
      'q' => 'jones' // query for 'jones'
    ];

    $url = 'https://connecteddata.nationalgrid.co.uk/api/3/action/datastore_search';

    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
    curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);

    $response = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);

    if ($httpCode === 200) {
      $result = json_decode($response, true);
      echo "Total results found: " . $result['result']['total'];
    } else {
      echo "Error fetching data: HTTP " . $httpCode;
    }
  

Data Dictionary

Data Dictionary: Column definitions and metadata for this resource
Column Type Label Description Example
Category text Not provided- Not provided- Not provided-
Confirmed Off numeric Not provided- Not provided- Not provided-
ETR timestamp Not provided- Not provided- Not provided-
Incident ID text Not provided- Not provided- Not provided-
Location Latitude numeric Not provided- Not provided- Not provided-
Location Longitude numeric Not provided- Not provided- Not provided-
Planned text Not provided- Not provided- Not provided-
Postcodes text Not provided- Not provided- Not provided-
Predicted Off numeric Not provided- Not provided- Not provided-
Region text Not provided- Not provided- Not provided-
Resource Status text Not provided- Not provided- Not provided-
Restored numeric Not provided- Not provided- Not provided-
Start Time timestamp Not provided- Not provided- Not provided-
Status text Not provided- Not provided- Not provided-
Upload Date timestamp Not provided- Not provided- Not provided-
Voltage text Not provided- Not provided- Not provided-