How to use the data

From the catalog
to your project.

Build something useful with the data. Try a project below, open a real file, or make your first API request. You can do all three before buying a pass.

Preview before you buy. No account needed.

Try a real fileFree download

U.S. states

Open it in a spreadsheet to see the columns and try sorting or filtering the records.

Three example records from the States dataset
State nameAbbreviation
AlabamaAL
AlaskaAK
ArizonaAZ
Download States as CSV

The complete dataset, without a pass. See what’s included and where it came from.

Pick something you want to make

Start a project with a free dataset.

These are project ideas you can try yourself. The starter files are free in full, with no account or pass key needed. Free request limits apply.

Students & new developers JSON

Build a searchable state list.

Fetch the States JSON, display the records, and add a search box for names or abbreviations. Show when records are loading, when a search finds nothing, and when a request fails.

You’ll have: a small project that shows how you work with real API data.

Developers & internal tools API

Add a state dropdown to a form.

Request the States dataset and use its names and abbreviations for a dropdown in an internal form. Save a local copy so the application does not need to call the API every time the form opens.

You’ll have: a reusable dropdown without typing each state by hand.

Teachers & homeschool families CSV

Chart the discovery of the elements.

Open Chemical Elements in Excel or Google Sheets. Look at the discovery fields, set aside entries without a numeric year, then group dated discoveries by century and make a chart. Discuss why some records may have no discovery date and what you would need to find out before explaining the gap.

You’ll have: a lesson that combines science, history, and spreadsheet skills.

Developers & data projects XML / ZIP

Import an XML file into your project.

Download States as XML and map the records into your own application or database. Check the actual field names and structure in the file before writing your import.

When you need more: the Data Pass includes category ZIPs in CSV, JSON, or XML, with a separate file for each dataset and a README containing source references.

These examples help you try the formats. For your own project, check which records a dataset includes and where they came from.

Ready for a different subject? Browse the catalog, try a sample, and get the Data Pass when you need the complete dataset.

For spreadsheets and everyday work

Your first download

  1. Find the right list.

    Browse the catalog or search for a subject. Check the preview, description, and sources to see whether the dataset covers what you need.

  2. Try it in your project.

    Use the free file links below the preview. You get up to 10 records from most datasets, so you can check the fields and format before buying a pass.

  3. Download the complete dataset.

    For a dataset that needs a pass, open Already have a pass? under Get the data. Paste the key from your purchase email, choose a format, and select Download complete dataset.

CSV

For Excel, Google Sheets, and other spreadsheet tools.

JSON

For applications, scripts, and web projects.

XML

For applications and import tools that require XML.

Keep leading zeros: import codes as text when zeros at the start are part of the value. Otherwise, a spreadsheet may turn a code such as 001 into 1.

What’s free, and what a pass adds

States, U.S. Presidents, and Chemical Elements are free in full. Other datasets provide a fixed sample of up to 10 records. If a whole dataset fits within that limit, you get all of it.

A complete download contains every record currently held in that dataset. Some records may still be missing or out of date, so check its description and sources for the years and records included.

When you need the whole list

One pass includes every dataset and collection.

Download complete datasets, whole categories and every collection, and make more API requests per day. Your key works across the catalog for 365 days.

One payment. No subscription or automatic renewal.

Data Pass $69for 365 days

Get the Data Pass

Free or paid, you can use the data in any project, including products and services you sell. Just don't pass on the datasets themselves; the terms explain what that means.

For applications and scripts

Make your first API request.

Start with States. It is free in full, so you can try the request without a key. Choose a format and open the result, or copy the URL into your own code.

GET
https://mysafeinfo.com/api/data/states?format=json

The dataset name is the last part of its page address: /content/datasets/states becomes /api/data/states. This URL returns JSON unless you choose another format.

Collections work a little differently: /api/collections/{name} returns a ZIP of files in the format you choose, and People has its own route, /api/people. Each collection page shows how to download it.

API parameters and examples
ParameterWhat it doesExample
formatChoose json, xml, or csv.format=csv
formattingUse indented or none for JSON and XML.formatting=none
rowsLimit the number of returned records.rows=5
sortSort by a field; add desc for descending order.sort=President desc
randomShuffle the available records.random=true
pagesize, pagenumberSplit the available records into pages, starting at page 1.pagesize=5&pagenumber=2
downloadReturn the result as an attachment.download=true
fullRequire complete access; return an error instead of a sample when a paid key is needed.full=true

Use the original field names from an API response or downloaded file. Column headings in the preview include spaces to make them easier to read: Airport name may be AirportName in a request.

For example, request five Presidents in descending order. Without a pass, sorting, paging, and randomization stay within the available free records; they cannot retrieve records outside the free sample.

Using the older /api/data?list={dataset} route? It defaults to XML. Set format explicitly to choose another format.

Already have a pass?

Your key arrives by email after payment. Keep that email: the download form does not save your key. You can use the same key for file downloads, category ZIPs, and API requests.

In your application, send it in the Authorization header. Add full=true when you need the complete dataset, so a missing key produces an error instead of a sample.

Example · download a complete CSV with curl
curl -H "Authorization: Bearer YOUR_KEY" \
  "https://mysafeinfo.com/api/data/nobelwinners?format=csv&full=true" \
  -o nobelwinners.csv

Keep your key private. Store it on your server or in your local environment. Do not put it in a URL, a public repository, or browser code. Replace YOUR_KEY in the example with your own key.

Expiry date and where the key goes

Dataset responses from /api/data made with your key include an X-Key-Expires header with the date your pass ends (yyyy-MM-dd). Send the key only in the Authorization header; a key in the URL is not accepted.

Download a category in one ZIP.

Need several datasets on the same subject? Choose a category and a file format, then use your Data Pass key to download them together. The ZIP contains a separate file for each dataset and a README with dataset links and source references.

Open category downloads
Download a category through the API
curl -H "Authorization: Bearer YOUR_KEY" \
  "https://mysafeinfo.com/api/bundles/History?format=csv" \
  -o history.zip

Use a category name from the catalog and URL-encode spaces. Choose csv, json, or xml.

Each ZIP counts as one request toward your daily limit, and you can download up to 10 ZIPs a minute. A ZIP holds up to 64 MB of data, so download a larger category one dataset at a time.

Limits & troubleshooting

Every file download and API request counts toward a daily limit.

Free

50 a day, shared by everyone on the same internet connection

Data Pass

2,500 a day, for your key alone

Why do I only get 10 records?

Without a pass, most datasets give you a 10-record sample. To get every record, paste your pass key under Already have a pass? on the dataset page. In your own code, send the key in the Authorization header, as shown in Use your pass key.

My pass key isn’t working.

Copy the whole key from your purchase email, with no spaces before or after it, and check that your pass hasn’t ended. A pass lasts 365 days from purchase.

In code, a problem with the key returns an error status and a short message explaining it.

The API says a dataset wasn’t found.

Use the last part of the dataset’s page address. For /content/datasets/states, the name is states.

I reached a limit.

The daily limit resets within 24 hours. There are also per-minute limits: 30 requests a minute free, 60 with a pass, and 10 category or collection ZIPs a minute. If you hit one of those, wait a minute and try again.

In code, a limit returns HTTP 429 with a Retry-After header that says how many seconds to wait.

Still stuck? Get in touch with the dataset name and what happened. Please leave your pass key out of the message.