{ "info": { "author": "Anton Shabouta", "author_email": "zloyusr@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# OpenAPI v3 Tools\n\n[![Build Status](https://travis-ci.org/zloyuser/openapi-tools.svg?branch=master)](https://travis-ci.org/zloyuser/openapi-tools)\n[![PyPI](https://img.shields.io/pypi/v/openapi-tools.svg)](https://pypi.python.org/pypi/openapi-tools/)\n[![PyPI](https://img.shields.io/pypi/pyversions/openapi-tools.svg)](https://pypi.python.org/pypi/openapi-tools/)\n\nOpenAPI v3 object model and helpers.\n\n## Installation\n\n```shell\npip install openapitools\n```\n\n## Usage\n\n```python\nfrom openapitools import SpecificationBuilder, ComponentsBuilder, OperationBuilder, Schema\n\n\nclass Todo:\n id: int\n text: str\n done: False\n\n\ncomponents = ComponentsBuilder()\ncomponents.scheme(Todo.__name__, Schema.make(Todo))\n\nbuilder = SpecificationBuilder(components)\nbuilder.describe('TODO REST API', '1.0')\nbuilder.license('MIT')\nbuilder.contact('John Doe', 'https://example.com', 'john-doe@example.com')\n\nget_todo = OperationBuilder()\nget_todo.parameter('id', int, 'path')\nget_todo.describe('Get todo by ID')\nget_todo.tag('todo')\nget_todo.response(200, Todo)\n\nbuilder.operation('/todo/{id}', 'GET', get_todo)\n\nprint(builder.build())\n```\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/zloyuser/openapi-tools", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "openapitools", "package_url": "https://pypi.org/project/openapitools/", "platform": "", "project_url": "https://pypi.org/project/openapitools/", "project_urls": { "Homepage": "https://github.com/zloyuser/openapi-tools" }, "release_url": "https://pypi.org/project/openapitools/0.0.2/", "requires_dist": null, "requires_python": "", "summary": "OpenAPI v3 Object Model and Helpers", "version": "0.0.2" }, "last_serial": 3962218, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "93c5a87501c807a6cc498507a9bb6137", "sha256": "37de149303d878301d375d6bb17406065cd92dd10d66e481bcf378e7b72ab88b" }, "downloads": -1, "filename": "openapitools-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "93c5a87501c807a6cc498507a9bb6137", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6449, "upload_time": "2018-06-11T20:56:22", "url": "https://files.pythonhosted.org/packages/60/b8/fae7c10e02afa738cc39a0552b31f399ea0c5579f7454ab7c0fae07a3760/openapitools-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "23ab6266521ceba815e54115e5b57d87", "sha256": "032c53f75e830afa57fff34f6a7d7b95394b6a7dbbc987936b6f639a81aba98d" }, "downloads": -1, "filename": "openapitools-0.0.1.tar.gz", "has_sig": false, "md5_digest": "23ab6266521ceba815e54115e5b57d87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4950, "upload_time": "2018-06-11T20:56:23", "url": "https://files.pythonhosted.org/packages/91/40/d3ef3b1b8d648d30f79ec9348f694a9914c699eca867b0973446d3359f39/openapitools-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "17dcfdd244623014904e8ea9a68b73a0", "sha256": "c96aadf021e4fde7d2cbf1be57ff7aa29ad3ce80d8537564126288ae36b7c7e1" }, "downloads": -1, "filename": "openapitools-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "17dcfdd244623014904e8ea9a68b73a0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8113, "upload_time": "2018-06-14T17:32:59", "url": "https://files.pythonhosted.org/packages/96/29/bd66c45e4be70954a0fac2048576f24f4f6e530f65e425ae5221fc583e57/openapitools-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5f01a82493ed3c54fe109548d1227278", "sha256": "0c4c5b163e72c4a9e9ac823ac151b7681a4081fde0477e7872dc5ab783b2585a" }, "downloads": -1, "filename": "openapitools-0.0.2.tar.gz", "has_sig": false, "md5_digest": "5f01a82493ed3c54fe109548d1227278", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6199, "upload_time": "2018-06-14T17:33:00", "url": "https://files.pythonhosted.org/packages/6f/77/25bd0dfddc40eb461044761b5c28535faa7d4375b3aaf61570d116a9a24c/openapitools-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "17dcfdd244623014904e8ea9a68b73a0", "sha256": "c96aadf021e4fde7d2cbf1be57ff7aa29ad3ce80d8537564126288ae36b7c7e1" }, "downloads": -1, "filename": "openapitools-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "17dcfdd244623014904e8ea9a68b73a0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8113, "upload_time": "2018-06-14T17:32:59", "url": "https://files.pythonhosted.org/packages/96/29/bd66c45e4be70954a0fac2048576f24f4f6e530f65e425ae5221fc583e57/openapitools-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5f01a82493ed3c54fe109548d1227278", "sha256": "0c4c5b163e72c4a9e9ac823ac151b7681a4081fde0477e7872dc5ab783b2585a" }, "downloads": -1, "filename": "openapitools-0.0.2.tar.gz", "has_sig": false, "md5_digest": "5f01a82493ed3c54fe109548d1227278", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6199, "upload_time": "2018-06-14T17:33:00", "url": "https://files.pythonhosted.org/packages/6f/77/25bd0dfddc40eb461044761b5c28535faa7d4375b3aaf61570d116a9a24c/openapitools-0.0.2.tar.gz" } ] }