Turn any Google sheet into an API instantly, for free.

Power websites, apps, or whatever you like, all from a spreadsheet. Changes to your spreadsheet update your API in realtime. Neat.


First publish your Google sheet to the web by going to File > Publish to the web...

Choose the tab you want, then select Comma-separated values (.csv) as the export format

Then paste the URL you get given into the box above, then hit return. Done!

Voila! Your 'Sheety API' is ready 👌

Your API endpoint is now live at:


Prototype quicker

Quickly put experiences together that retrieve data from a remote source, without faffing around with backends.

Collaborate faster

Power elements on your website with the ease and simplicity of a spreadsheet. Add collaborators by sharing the sheet!

Connect anyway you like

As Sheety returns standard JSON / XML, you can connect to your spreadsheet anyway you like. Change the Content-Type header to switch between XML and JSON.

JS / HTML Example

A simple example of retrieving and then displaying a list of items from a sheet.

<title>UK Theme Parks</title>
<script type="text/javascript" src=""></script>
<script type="text/javascript" src=""></script>
<script type="text/javascript">
	$.getJSON('', function(data) {
		var template = Handlebars.compile($('#item-template').html())
<script id="item-template" type="text/x-handlebars-template">
	{{#each this}}
		<li><a href="{{website}}">{{name}}</a></li>
<div id="items">Loading theme parks...</div>

Frequently asked questions

Why did you build Sheety?

I work on a lot of throw away things, and often need a quick and dirty backend to power whatever the hell it is. Spreadsheets are easy to make and share with others, and so Sheety was born.

Can I rely on Sheety for anything important?

Are you f*****g insane!? Yeh sure why not – just don't use it for a nuclear power plant or anything like that. I'm using it in production for a few things, so if it breaks for me, it breaks for you. And I don't want it to break. So go for it! And if this doesn't sound like an SLA, that's because it isn't.

My changes in the spreadsheet aren't showing?

Google can take up to a couple of minutes to republish changes.

It'd be cool if you could also do PUT requests to update the sheet?

Yeh that'd be cool.

Hey did you know 'Sheety API' sounds like 'Shitty API'?

I don't get it?

Sheety is so useful! And free! Can I make a donation?

If you're finding Sheety useful, donations to help keep the service going are most welcome

Make donation