← All Posts

CSV API: Turn Any Spreadsheet Into a REST API in Seconds

Visit Project ↗

The Problem

I kept running into the same friction: I had data in a spreadsheet and needed a quick API to power a prototype, internal tool, or static site. Every time, the options were the same — spin up a database, write a schema, build CRUD endpoints, deploy it somewhere. For a quick prototype, that's way too much overhead.

So I built CSV API — upload a CSV, confirm your columns, and instantly get a fully functional REST API.

How It Works

The process is deliberately simple:

  • Upload a CSV or Excel file. The system automatically detects column names and infers data types (integer, float, boolean, date, string).
  • Confirm the schema. Review the detected types, optionally rename columns, and hit confirm.
  • Query. Your API is live with filtering, sorting, pagination, and even natural language queries.
Authentication uses API keys via Bearer headers or query parameters. Every dataset gets auto-generated OpenAPI documentation with an interactive Swagger UI. CORS headers are enabled out of the box for frontend apps.

Natural Language Queries

One of the features I'm most proud of is the natural language query support. Instead of crafting filter parameters manually, you can ask questions in plain English like 'Which rows have a status of active?' and the system translates that into the appropriate filters. This makes it incredibly accessible for non-technical users.

Built With Rails and Hotwire

The service runs on Ruby on Rails with Hotwire for the dashboard experience. Stimulus controllers handle the interactive elements like inline row editing, column type confirmation, and live API previews. The whole thing feels snappy without shipping a JavaScript bundle.

The Business Model

CSV API offers a generous free tier (3 datasets, 500 rows, 100 requests/hour) with paid tiers scaling up from $9/month for the Starter plan to $79/month for Scale with unlimited datasets and 200K+ rows. This portfolio site actually uses CSV API to store and serve its project data — dogfooding at its finest.

Try It

Head to csv-api.com, upload a CSV, and have a working API in under a minute. No credit card required.