Skip to main content
Donate to the Python Software Foundation or Purchase a PyCharm License to Benefit the PSF! Donate Now

Create somehow-RESTful HTTP APIs with Flask

Project description

Sorry, no documentation yet, this is totally pre-alpha quality.

I just needed something to implement somehow RESTful (or, to be precise, what I consider RESTful) API. I’ve looked around for a readily available solution, but didn’t found anything that suited my needs and desires. So I’ve wrote a hopefully reusable library to do it.

The work is in progress, and API is unstable and subject to various changes.

See feature list below for main points about this library.


What’s implemented:

  • Extensible (de)serialization for both input and output, with HTTP content-type negotiation.
  • Handling of GET and PATCH requests (object retrieval and modification)
  • Relatively flexible field-level permissions. Could be always supplemented by TastyPie-like hydration/dehydration methods.
  • SQLAlchemy model and collection views support. Best used with Flask-SQLAlchemy.
  • Simple pagination helper (pagination using “Range” request header).
  • Built-in helper for filtering SQLAlchemy collections.

What’s missing:

  • Better example.
  • Documentation. There are some docstrings in source code, but not much.
  • POST, PUT and DELETE requests (object creation and deletion).
  • Overriding negotiation using query string (i.e. ?format=json)
  • Nested resources.
  • Better test coverage.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
Flask-ToyBox-0.0.3.tar.gz (28.1 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page