Data.Page API

We also offer an API service. Automate your JSON to CSV conversions simply and on demand. You can also create a JSON to CSV export button very easily.

We allow 1 MB per day to be converted via the API for free (contact us if you need more than this). We would also appreciate it if you would mention us on your website if that is possible.

Register here to access the API:

required

After you have registered, the following illustrates how you would process an automatic conversion using PHP or C#:

Python Sample Code



from urllib.parse import urlencode
from urllib.request import Request, urlopen
import sys

email = '[email protected]'
input_filename =  'c:\\temp\\input.json'
output_filename = 'c:\\temp\\output.csv'

#read json
with open(input_filename) as json_file:
    json = json_file.read()
    api_url = 'https://data.page/api/getcsv'
    post_fields = {'email': email, 'json': json}
    request = Request(api_url, urlencode(post_fields).encode(),    headers={
        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36'
    })
    csv = urlopen(request).read().decode()

#write csv
with open(output_filename, "w") as f:
    f.write(csv)
    f.close()






PHP Sample Code


    $url = 'https://data.page/api/getcsv';
    $email = '[email protected]';
    $json = '{"test":true,"test2":false}';

    $postdata = http_build_query(
      array(
        'email' => $email,
        'json' => $json
      )
    );

    $opts = array(
      'http' => array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => $postdata
      )
    );
    $context  = stream_context_create($opts);
    $result = file_get_contents($url, false, $context);

    print $result;



PHP Sample Code - Alternative (using cURL)


    $email = '[email protected]';
    $json = '{"test":true,"test2":false}';

    $post = 'email=' . $email . '&json=' . $json;

    $ch = curl_init('https://data.page/api/getcsv');

    curl_setopt($ch, CURLOPT_POSTFIELDS, $post);

    $response = curl_exec($ch);

    curl_close($ch);

    echo $response;



Google Apps Script

Generate a CSV file in your Google Drive account. Contact us for more variations such as pulling data into your Google Sheets.

function myFunction() {

  var email ="[email protected]";

  var url="https://api.fiscaldata.treasury.gov/services/api/fiscal_service/v2/accounting/od/avg_interest_rates";
  var json = UrlFetchApp.fetch(url).getContentText();

  var options = {
    'method' : 'post',
    'contentType': 'application/x-www-form-urlencoded',
    'payload' : {
      email:email,
      json:json
    }
  };
  var resp=UrlFetchApp.fetch('https://data.page/api/getcsv', options);

  // Creates a new CSV file in your Google Drive account
  var fid=DriveApp.createFile(resp.getBlob());
  fid.setName("DataPage-output.csv");

}


C# Sample Code

    
    
    string email = "[email protected]";
    string json = "{\"test\":true,\"test2\":false}";
    using (var client = new HttpClient())
    {
    string url = "https://data.page/api/getcsv";
    var content = new FormUrlEncodedContent(new[]
    {
        new KeyValuePair<string, string>("email", email),
        new KeyValuePair<string, string>("json", json)
    });
    var result = client.PostAsync(url, content).Result;
    string csvContent = result.Content.ReadAsStringAsync().Result;
    Response.Write(csvContent);
    }
    


Raw cURL Sample Code (from a Linux Shell for example)

To convert an input.json file to output.csv

    
    curl -X POST https://data.page/api/getcsv -F [email protected] -F [email protected] -o output.csv
    

CSV to JSON

The API also has CSV to JSON functionality. This works the same way as JSON to CSV except:

  • The URL should be changed from https://data.page/api/getcsv to https://data.page/api/getjson
  • Just 2 parameters are passed in: email (your email address) and csv (the CSV string)

Here's a PHP sample for CSV to JSON:

    
    

     $email,
            'csv' => $csv
            )
        );

        $opts = array(
            'http' => array(
                'method'  => 'POST',
                'header'  => 'Content-type: application/x-www-form-urlencoded',
                'content' => $postdata
            )
        );

        $context  = stream_context_create($opts);

        $result = file_get_contents($url, false, $context);

        print $result;

    

Please contact us for further information

}