Skip to main content

A Python library for creating a RESTful API from an SQLite database using Flask.

Project description

SQLite2REST

SQLite2REST is a Python library that simplifies the process of creating a RESTful API from an SQLite database using the Flask web framework. It automatically reads the schema of an SQLite database and generates endpoints for each table, allowing for Create, Read, Update, and Delete (CRUD) operations. The library also generates an OpenAPI specification for the API.

Test status Documentation Status

Installation

You can install SQLite2REST using pip:

pip install sqlite2rest

Usage

You can use SQLite2REST from the command line by providing the path to your SQLite database:

sqlite2rest serve /path/to/database.db

This will start a Flask server with endpoints for each table in the database. For example, if your database has a table named users, you can access the records in this table at the /users endpoint.

You can also use the /openapi.yaml endpoint to get the OpenAPI specification for the API.

Endpoints

For each table in the database, the following endpoints are available:

  • GET /<table>: Get all records from the table.
  • GET /<table>/<id>: Returns the record with the given ID from the table.
  • POST /<table>: Create a new record in the table. The data for the record should be provided as JSON in the request body.
  • PUT /<table>/<id>: Update an existing record in the table. The data for the record should be provided as JSON in the request body.
  • DELETE /<table>/<id>: Delete an existing record from the table.

You can also generate an OpenAPI specification from an SQLite database:

sqlite2rest spec /path/to/database.db

Contributing

Contributions are welcome! Please feel free to submit a pull request.

License

SQLite2REST is licensed under the MIT license. See the LICENSE file for more details.

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

sqlite2rest-0.4.0.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

sqlite2rest-0.4.0-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file sqlite2rest-0.4.0.tar.gz.

File metadata

  • Download URL: sqlite2rest-0.4.0.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for sqlite2rest-0.4.0.tar.gz
Algorithm Hash digest
SHA256 8ce9adf7cf2f7daa099c5c2e695d7aeb88f2d08904a818c10bb1bd0a9d8e037c
MD5 d40c32824253fddb172c20de816a1f62
BLAKE2b-256 7a201dfef8122ea91eda61a1e83ae980593c33d524c7bee2ff1097c4a54d4f46

See more details on using hashes here.

File details

Details for the file sqlite2rest-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: sqlite2rest-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for sqlite2rest-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1c3decbf534b8d5c009035e577202fc805f219cd152b708c6127e95d3bda0a7d
MD5 f317956fc06bdb0ab6c9c5f6d890a71e
BLAKE2b-256 88ee9822549478f768dcb95b7c347b35002b6148e75ced84af8dbd355ac70e55

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