{ "info": { "author": "Gracjan Orzechowski", "author_email": "orzechowski.gracjan@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Flask", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet :: WWW/HTTP", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Application Frameworks" ], "description": "# Flask-RESTly\n\n[![Build Status](https://travis-ci.org/gorzechowski/flask-restly.svg?branch=master)](https://travis-ci.org/gorzechowski/flask-restly)\n[![Latest version](https://img.shields.io/pypi/v/flask-restly.svg)](https://pypi.org/project/flask-restly)\n[![Python versions](https://img.shields.io/pypi/pyversions/flask-restly.svg)](https://pypi.org/project/flask-restly)\n[![Coverage Status](https://coveralls.io/repos/github/gorzechowski/flask-restly/badge.svg?branch=master)](https://coveralls.io/github/gorzechowski/flask-restly?branch=master)\n\n## Quick start\n\n```\npip install flask-restly\n```\n\nBy default `flask-restly` uses JSON serializer.\n\n```python\nfrom flask import Flask\nfrom flask_restly import FlaskRestly\nfrom flask_restly.decorator import resource, get, delete\n\n\napp = Flask(__name__)\n\nrest = FlaskRestly(app)\nrest.init_app(app)\n\n\n@resource(name='employees')\nclass EmployeesResource:\n @get('/')\n def get_employee(self, id):\n return dict(id=int(id))\n\n @get('/')\n def get_employees(self):\n return dict(entites=[\n dict(id=1),\n dict(id=2)\n ])\n\n @delete('/')\n def delete_employee(self, **kwargs):\n return\n\n\nwith app.app_context():\n EmployeesResource()\n\nif __name__ == \"__main__\":\n app.run(host='127.0.0.1', port=5001, debug=True)\n```\n\n```bash\n$ python main.py\n* Serving Flask app \"main\" (lazy loading)\n* Environment: production\n WARNING: Do not use the development server in a production environment.\n Use a production WSGI server instead.\n* Debug mode: on\n* Restarting with stat\n* Debugger is active!\n* Debugger PIN: 210-167-642\n* Running on http://127.0.0.1:5001/ (Press CTRL+C to quit)\n```\n\n## Features\n\n* Decorators-based routing\n* JSON and Protobuf built-in serialization\n* Custom serializer support\n* Authorization and authentication decorators\n* Automatic REST-like response codes\n* API versioning\n* Rating limits\n\n## Todo\n\n* HATEOAS/HAL\n\n## Usage\n\nPlease see [examples](/examples) for more details.\n\n### Settings\n\n| Name | Default value |\n| -----------------------------------------------------------: | :--------------------------- |\n| RESTLY_SERIALIZER: `` | flask_restly.serializer.json |\n| RESTLY_API_PREFIX: `` | /api/rest |\n| RESTLY_PROTOBUF_MIMETYPE: `` | application/x-protobuf |\n| RESTLY_RATE_LIMIT_REQUESTS_AMOUNT: `` | 100 |\n| RESTLY_RATE_LIMIT_WINDOW_SECONDS: `` | 60 |\n\n### Docs\n\n* [Authentication](/docs/Authentication.md)\n* [Authorization](/docs/Authorization.md)\n* [Decorators](/docs/Decorators.md)\n* [Exceptions](/docs/Exceptions.md)\n* [Protobuf](/docs/Protobuf.md)\n* [RateLimits](/docs/RateLimits.md)\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/gorzechowski/flask-restly", "keywords": "flask api rest", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "flask-restly", "package_url": "https://pypi.org/project/flask-restly/", "platform": "", "project_url": "https://pypi.org/project/flask-restly/", "project_urls": { "Homepage": "https://github.com/gorzechowski/flask-restly" }, "release_url": "https://pypi.org/project/flask-restly/1.0.1/", "requires_dist": [ "flask (>=1.0)", "wrapt (>=1.0)" ], "requires_python": "", "summary": "Build a REST API with Flask", "version": "1.0.1" }, "last_serial": 5164655, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "0fa05535934b0b60db241ce5135fa5fc", "sha256": "166faacce6dedd3f0871e17618e95967b860c95cbee918aeffa3231cea1dc580" }, "downloads": -1, "filename": "flask_restly-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0fa05535934b0b60db241ce5135fa5fc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8967, "upload_time": "2018-10-11T14:50:46", "url": "https://files.pythonhosted.org/packages/b4/c4/11258537ed1ac65bb5b8e9d46531c61e5bb9acd2b7746f728afbe676c8af/flask_restly-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "65b50aa39412807dfa9fa698ccb897e3", "sha256": "a855facd2df720cc0e753b8cbca8f34e02bac9e9e78f396535d3793a62709a5d" }, "downloads": -1, "filename": "flask-restly-0.1.0.tar.gz", "has_sig": false, "md5_digest": "65b50aa39412807dfa9fa698ccb897e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4401, "upload_time": "2018-10-11T14:50:48", "url": "https://files.pythonhosted.org/packages/2f/7c/718f8c198e58fa62ef5334d2143ea35a7c93b07e403dbd68eff69ac475a8/flask-restly-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "4739737c36506096078dff5daaed89e0", "sha256": "b46bd93aea05976b5e109c8595631023e4b836bf1538bbebed4699780a9f530b" }, "downloads": -1, "filename": "flask_restly-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4739737c36506096078dff5daaed89e0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8995, "upload_time": "2018-10-12T13:11:07", "url": "https://files.pythonhosted.org/packages/93/6e/bfd09ae54942359a5c037a855a2478dad95f7f349ae8fee48cfc77c8897e/flask_restly-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "194d90e5909fa31d3dba64c78cbcbd13", "sha256": "d68f70f86416d2b871f43065e0c63dbacefeabd82c0600484ba99ada842543fa" }, "downloads": -1, "filename": "flask-restly-0.1.1.tar.gz", "has_sig": false, "md5_digest": "194d90e5909fa31d3dba64c78cbcbd13", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4432, "upload_time": "2018-10-12T13:11:08", "url": "https://files.pythonhosted.org/packages/e3/f1/ba10ede9ddf717a6e897c8e5187857838c1957f8ccf8f580d2c13396ca64/flask-restly-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "d56a1ba7496069c8827197e09dfa42e8", "sha256": "85064ca08ac8c4c67e6787dae0405c20c46b4b06d6cedafc7ab832e718ec49f3" }, "downloads": -1, "filename": "flask_restly-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "d56a1ba7496069c8827197e09dfa42e8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9798, "upload_time": "2018-10-16T18:30:34", "url": "https://files.pythonhosted.org/packages/c1/35/3dcdb620d7e36428df2320a4b623b1a7c3bb2c16eb1e07809d24e75de64e/flask_restly-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e7aa9c02af21fb8b3ccd9a71e13faaea", "sha256": "6a5775a43f7a3d80fcaa9d9027aadf98ec61ba3f4a5c96d87853ba60b512c5e2" }, "downloads": -1, "filename": "flask-restly-0.2.0.tar.gz", "has_sig": false, "md5_digest": "e7aa9c02af21fb8b3ccd9a71e13faaea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4809, "upload_time": "2018-10-16T18:30:36", "url": "https://files.pythonhosted.org/packages/7d/7c/cebd0b0ee402c76df674a7320c9063055101fe13751d04401eb677b039ad/flask-restly-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "8d70552ec73611557254689e213e2c7c", "sha256": "e8df7a3b206a6491ed6e471c88c8c1732c5dc86078e85c7f21b8a2ae9a09ca7b" }, "downloads": -1, "filename": "flask_restly-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8d70552ec73611557254689e213e2c7c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12022, "upload_time": "2018-10-25T10:24:36", "url": "https://files.pythonhosted.org/packages/24/e1/d0a1bb762a369d04df07f2e1ef47029f49f2744c7ddfe6f3dc2aff718b82/flask_restly-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bf0483568a6dd111601fa3bb0d2aee92", "sha256": "7377c13eacc78e6994563d93cfd33bf5d7b87b27e605d890a18ece4344d7f34c" }, "downloads": -1, "filename": "flask-restly-0.3.0.tar.gz", "has_sig": false, "md5_digest": "bf0483568a6dd111601fa3bb0d2aee92", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7232, "upload_time": "2018-10-25T10:24:38", "url": "https://files.pythonhosted.org/packages/bd/c7/7cd0fc46a4580e5f90609879c681c4a8d7bd202fc2b2d90b267ff80c4bfb/flask-restly-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "6f6dc56341defcbabb56d1368f1d1e87", "sha256": "3e5008378ff1cc9bc6cfef794f8f9e88dadb024e8d1f9f83c82cc46507d2e771" }, "downloads": -1, "filename": "flask_restly-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6f6dc56341defcbabb56d1368f1d1e87", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12463, "upload_time": "2018-10-25T15:58:27", "url": "https://files.pythonhosted.org/packages/60/6f/8a7a6a0267a7b150d96c70c9bfc4aba72f5204f37aa9d72bd26a426fae42/flask_restly-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "117f8b53e437fc73cf3926bc59f94e34", "sha256": "434dba0cf44c963e25c42ba30f6fffc6c21a778e8ea01a72a81caeb708467301" }, "downloads": -1, "filename": "flask-restly-0.3.1.tar.gz", "has_sig": false, "md5_digest": "117f8b53e437fc73cf3926bc59f94e34", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7447, "upload_time": "2018-10-25T15:58:28", "url": "https://files.pythonhosted.org/packages/e4/83/390807f686bd08902599b7fa58502be900e38af2e5f68eb6963dbe4599dd/flask-restly-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "b21dbe49f13599f9db3657dfb234d30b", "sha256": "84fd20cee9fc1f00c5c0e301b3d16eb3431b5056e299d92e970eee9fc66f5abe" }, "downloads": -1, "filename": "flask_restly-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b21dbe49f13599f9db3657dfb234d30b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12280, "upload_time": "2018-10-26T07:11:08", "url": "https://files.pythonhosted.org/packages/3c/54/34f4d748b8af76d77423a31aba3f080f1d0b017f41ccef1393a9f30ec21b/flask_restly-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c6c7454921d2f8e03bf3bb369db76992", "sha256": "0aedf3094b56860abeb1c455ed8d1511d7a174fd06b409a42c371901308e62a6" }, "downloads": -1, "filename": "flask-restly-0.4.0.tar.gz", "has_sig": false, "md5_digest": "c6c7454921d2f8e03bf3bb369db76992", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8532, "upload_time": "2018-10-26T07:11:10", "url": "https://files.pythonhosted.org/packages/82/21/d6d60d2ac26cfa95c5f04d3d72ae41780db1953e70b08dc3be26918d5217/flask-restly-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "1a2a5157c2709747b0f18fe7668db2bd", "sha256": "efcb175049e849270e365c96f7e7b9e71353f91ffce8d8ca66c8cf35839bc043" }, "downloads": -1, "filename": "flask_restly-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "1a2a5157c2709747b0f18fe7668db2bd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12656, "upload_time": "2018-10-30T14:53:09", "url": "https://files.pythonhosted.org/packages/08/65/80f21947c66bd4d517c4874041da60b77a79d72db1239a6360c52f0484b5/flask_restly-0.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9a3d7365b4ce985cd62dcf871a395cd1", "sha256": "9a6474ae3f1b17b2097e7474385269209a4e811f5c41da0a7680046ba8afb5ee" }, "downloads": -1, "filename": "flask-restly-0.5.0.tar.gz", "has_sig": false, "md5_digest": "9a3d7365b4ce985cd62dcf871a395cd1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8934, "upload_time": "2018-10-30T14:53:11", "url": "https://files.pythonhosted.org/packages/7e/c7/2ed99596889a22dc83d3349f5c059ef85753fe1ce0afda9fc8cda7662d17/flask-restly-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "1cbbe2e31f270686967c3a65282eb01a", "sha256": "c8326d956966036e44f35322b6e3d7707b1f9ec39189f7fa68533350918350d2" }, "downloads": -1, "filename": "flask_restly-0.5.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1cbbe2e31f270686967c3a65282eb01a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12667, "upload_time": "2018-11-08T11:33:47", "url": "https://files.pythonhosted.org/packages/92/21/a12136b9e6ee062862f99743dfb1cf42a219579b6831fc7dd8ecca423ff9/flask_restly-0.5.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f34b377d157a39b63202f8074da7a8fd", "sha256": "57b864556eab5bed2392c9bd7a6a2e5b815b24ea859a66238e95f9dad3df15ed" }, "downloads": -1, "filename": "flask-restly-0.5.1.tar.gz", "has_sig": false, "md5_digest": "f34b377d157a39b63202f8074da7a8fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9012, "upload_time": "2018-11-08T11:33:48", "url": "https://files.pythonhosted.org/packages/d2/3b/316348fdf891912d9354edc4deffe963067a6f76a73a43f48c762cb09f9f/flask-restly-0.5.1.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "5ccd2ff933c11fa4bb749097f4d3ce1f", "sha256": "99628e431f9ebaf802939ca01463f1a6d06463d53e9ea30c340f72b947b1f381" }, "downloads": -1, "filename": "flask_restly-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5ccd2ff933c11fa4bb749097f4d3ce1f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15334, "upload_time": "2018-12-10T10:24:59", "url": "https://files.pythonhosted.org/packages/bd/70/8fa7c0bcd1f4dd5339acca84978491f18a27fa4da4f341e21da4644a036e/flask_restly-0.6.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6b070cb70fe8a4b2ca470ff720c38b6e", "sha256": "c07e4081b3cc07c02d6f02ab8b285db1ed0d2abbcf0bebddfae280c6c8a7ebac" }, "downloads": -1, "filename": "flask-restly-0.6.0.tar.gz", "has_sig": false, "md5_digest": "6b070cb70fe8a4b2ca470ff720c38b6e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10462, "upload_time": "2018-12-10T10:25:01", "url": "https://files.pythonhosted.org/packages/4e/17/9aff5a813d2ff5a952ba51522ac8ed3fe64ac524c6a507e52e0282d1aed9/flask-restly-0.6.0.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "56db2d91255a616f346f19ac9c392a78", "sha256": "90be7d464d266ebff2b7477f53101764d2c3cbb0fc9f8c783d33d600e1652d1e" }, "downloads": -1, "filename": "flask_restly-0.7.0-py3-none-any.whl", "has_sig": false, "md5_digest": "56db2d91255a616f346f19ac9c392a78", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15709, "upload_time": "2019-01-03T13:08:26", "url": "https://files.pythonhosted.org/packages/c8/76/e473af20a57b67dfe3c26f194e1ab3debb8b16ca5a64513ae56c3c6edb49/flask_restly-0.7.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2b86d6518c3a79da39bda362195230ef", "sha256": "bc273749a828f706b2c0339bf69bb70af74d7fb02bfc38fe2e50705e46345a11" }, "downloads": -1, "filename": "flask-restly-0.7.0.tar.gz", "has_sig": false, "md5_digest": "2b86d6518c3a79da39bda362195230ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10733, "upload_time": "2019-01-03T13:08:27", "url": "https://files.pythonhosted.org/packages/3c/d5/a513df2677572cc5b0810d697b0df5aa60568d6891fffa3e7cff3d180f24/flask-restly-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "53e3f01f8a269914e6853233a1d977c0", "sha256": "e95cd6b96bdd74894341d4708bffb32242773cfa8aff8b74dc42b3c6d582e36a" }, "downloads": -1, "filename": "flask_restly-0.7.1-py3-none-any.whl", "has_sig": false, "md5_digest": "53e3f01f8a269914e6853233a1d977c0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15757, "upload_time": "2019-02-22T10:05:57", "url": "https://files.pythonhosted.org/packages/28/aa/9b52d572854f833e9a16a3200c8d89524a76072af8396ed76e4a390a78cb/flask_restly-0.7.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "af76d98eba18665e87fc86c7f327c3d7", "sha256": "05bdc8a3b21a21fe9d8665ba258761e0d3300c5a9c8cfcdff58cf319eb5b896c" }, "downloads": -1, "filename": "flask-restly-0.7.1.tar.gz", "has_sig": false, "md5_digest": "af76d98eba18665e87fc86c7f327c3d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10775, "upload_time": "2019-02-22T10:05:59", "url": "https://files.pythonhosted.org/packages/b4/c6/2a87cfbd15b8ed5b65343db9ba9f48a8a53eb6678ab29a40f340b49e1c1f/flask-restly-0.7.1.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "602f37dd0ee2f12f8f7213abedc8c6b9", "sha256": "abe675da00b284c40aa4f13d771f03952dd7b5017d21b60184b8c815133e540a" }, "downloads": -1, "filename": "flask_restly-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "602f37dd0ee2f12f8f7213abedc8c6b9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17245, "upload_time": "2019-04-12T15:59:18", "url": "https://files.pythonhosted.org/packages/9b/7a/6bfcfcb23a609ff2bc4e2385907b557968bcd0d056dfad6dc0943fd9a3cf/flask_restly-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6c6563b72aed4dd0d15d753d722979bd", "sha256": "99ffce515b48c9fc00872698ce9356b0f7bc886fc85407369dc023d9d8be8d6d" }, "downloads": -1, "filename": "flask-restly-1.0.0.tar.gz", "has_sig": false, "md5_digest": "6c6563b72aed4dd0d15d753d722979bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12393, "upload_time": "2019-04-12T15:59:20", "url": "https://files.pythonhosted.org/packages/31/62/37dfc3c1786a99b671ef50470052dd01ce3b6f3d7f58b18b5dea973b1b21/flask-restly-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "45d81dbcb1eafd2bc7a88a7ed2c67adb", "sha256": "6eed09d82cd987f9ccdf16049dfc98700f37f131ec9ee1f8256e754eba065927" }, "downloads": -1, "filename": "flask_restly-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "45d81dbcb1eafd2bc7a88a7ed2c67adb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17352, "upload_time": "2019-04-19T12:41:49", "url": "https://files.pythonhosted.org/packages/ed/fa/12f94baf95dbdee4e6919e66831148faa9d2632aa642f57306cf9415126a/flask_restly-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4d84b4ece09187354ede373713a845e7", "sha256": "603453af6afe28449bf0bb850d0426a3d9adb80be2badc8528e76dbf35771895" }, "downloads": -1, "filename": "flask-restly-1.0.1.tar.gz", "has_sig": false, "md5_digest": "4d84b4ece09187354ede373713a845e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12661, "upload_time": "2019-04-19T12:41:50", "url": "https://files.pythonhosted.org/packages/63/e5/b8f0bd1cd8942ed581236c710445facea6ad422598f39f650a81893de4e7/flask-restly-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "45d81dbcb1eafd2bc7a88a7ed2c67adb", "sha256": "6eed09d82cd987f9ccdf16049dfc98700f37f131ec9ee1f8256e754eba065927" }, "downloads": -1, "filename": "flask_restly-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "45d81dbcb1eafd2bc7a88a7ed2c67adb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17352, "upload_time": "2019-04-19T12:41:49", "url": "https://files.pythonhosted.org/packages/ed/fa/12f94baf95dbdee4e6919e66831148faa9d2632aa642f57306cf9415126a/flask_restly-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4d84b4ece09187354ede373713a845e7", "sha256": "603453af6afe28449bf0bb850d0426a3d9adb80be2badc8528e76dbf35771895" }, "downloads": -1, "filename": "flask-restly-1.0.1.tar.gz", "has_sig": false, "md5_digest": "4d84b4ece09187354ede373713a845e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12661, "upload_time": "2019-04-19T12:41:50", "url": "https://files.pythonhosted.org/packages/63/e5/b8f0bd1cd8942ed581236c710445facea6ad422598f39f650a81893de4e7/flask-restly-1.0.1.tar.gz" } ] }