Skip to main content

Create somehow-RESTful HTTP APIs with Flask

Project description

https://secure.travis-ci.org/drdaeman/flask-toybox.png?branch=master

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.

Features

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.

Source Distribution

Flask-ToyBox-0.0.3.tar.gz (28.1 kB view details)

Uploaded Source

File details

Details for the file Flask-ToyBox-0.0.3.tar.gz.

File metadata

File hashes

Hashes for Flask-ToyBox-0.0.3.tar.gz
Algorithm Hash digest
SHA256 e82bb40211a1d59e573b286ca1aa8c47771f38f4b51c9b3203f0a1945b1fe186
MD5 ec2b431a487936ff9ddbb23c1e988e7d
BLAKE2b-256 fdbd3d4c239d6c8fb7fd58431812c1c1bd1d24f7852353869016869d44cf2737

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page