{ "info": { "author": "Florent Pigout", "author_email": "florent@toopy.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3.6" ], "description": "Mypasswords API\n===============\n\n.. image:: https://travis-ci.org/toopy/mypasswords-api.svg?branch=master\n :target: https://travis-ci.org/toopy/mypasswords-api\n\nAPI for your passwords.\n\n\nInstall\n-------\n\nThis python project requires `python 3.6`, otherwise the `pip install` should\nwork fine:\n\n.. code:: bash\n\n $ pip install mypasswords-api\n\n\nUsage\n-----\n\nBy default we can run the server as `python` module as follow:\n\n.. code:: bash\n\n $ mypasswords_api 127.0.0.1:8000\n ======== Running on http://127.0.0.1:8000 ========\n (Press CTRL+C to quit)\n\n\nIt will start an `aiohttp` instance with the `asyncio`, or `uvloop` (if\ninstalled), event loop.\n\n\nSettings\n--------\n\nTo handle settings we use `simple-settings` composition behavior. By default\nthe base settings module will try to obtain values from the current environment:\n\n.. code:: bash\n\n $ MYPASSWORDS_PER_PAGE=100 PG_HOST=localhost mypasswords_api 127.0.0.1:8000\n\n\nAPI\n---\n\nCreate\n^^^^^^\n\n.. code:: bash\n\n $ http POST http://127.0.0.1:8000/passwords login=toopy password=abcd1234 site=github.com\n HTTP/1.1 201 Created\n Content-Length: 110\n Content-Type: application/json; charset=utf-8\n Date: Sat, 09 Sep 2017 08:59:37 GMT\n Server: Python/3.6 aiohttp/2.2.0\n X-API-Version: 0.1.0.dev0\n\n {\n \"id\": \"0753c165-0400-4e1f-b79c-8998d4987daf\",\n \"login\": \"toopy\",\n \"password\": \"abcd1234\",\n \"site\": \"github.com\"\n }\n\n\nUpdate\n^^^^^^\n\n.. code:: bash\n\n $ http PUT http://127.0.0.1:8000/passwords/0753c165-0400-4e1f-b79c-8998d4987daf login=toopy password=1234abcd site=github.com\n HTTP/1.1 200 OK\n Content-Length: 76\n Content-Type: application/json; charset=utf-8\n Date: Sat, 09 Sep 2017 09:05:47 GMT\n Server: Python/3.6 aiohttp/2.2.0\n X-API-Version: 0.1.0.dev0\n\n {\n \"id\": null,\n \"login\": \"toopy\",\n \"password\": \"1234abcd\",\n \"site\": \"github.com\"\n }\n\n\nList\n^^^^\n\n.. code:: bash\n\n $ http GET \"http://127.0.0.1:8000/passwords?direction=desc&order_by=site&page1&per_page=2\"\n HTTP/1.1 200 OK\n Content-Length: 212\n Content-Type: application/json; charset=utf-8\n Date: Sat, 09 Sep 2017 09:23:43 GMT\n Server: Python/3.6 aiohttp/2.2.0\n X-API-Version: 0.1.0.dev0\n X-Next-Link: /passwords?direction=desc&order_by=site&page=1&per_page=2\n\n [\n {\n \"id\": \"f4a59e0f-f1ff-4bc7-8757-203fc4b0aff7\",\n \"login\": \"toopy\",\n \"password\": null,\n \"site\": \"twitter.com\"\n },\n {\n \"id\": \"7ef3130f-7844-49c6-a46c-2f6960cae697\",\n \"login\": \"toopy\",\n \"password\": null,\n \"site\": \"slack.com\"\n }\n ]\n\n\nSearch\n^^^^^^\n\n.. code:: bash\n\n $ http GET \"http://127.0.0.1:8000/passwords?q=git\"\n HTTP/1.1 200 OK\n Content-Length: 106\n Content-Type: application/json; charset=utf-8\n Date: Sat, 09 Sep 2017 09:46:26 GMT\n Server: Python/3.6 aiohttp/2.2.0\n X-API-Version: 0.1.0.dev0\n\n [\n {\n \"id\": \"0753c165-0400-4e1f-b79c-8998d4987daf\",\n \"login\": \"toopy\",\n \"password\": null,\n \"site\": \"github.com\"\n }\n ]\n\n\n\nGet\n^^^\n\n.. code:: bash\n\n $ http GET http://127.0.0.1:8000/passwords/7ef3130f-7844-49c6-a46c-2f6960cae697\n HTTP/1.1 200 OK\n Content-Length: 109\n Content-Type: application/json; charset=utf-8\n Date: Sat, 09 Sep 2017 09:24:33 GMT\n Server: Python/3.6 aiohttp/2.2.0\n X-API-Version: 0.1.0.dev0\n\n {\n \"id\": \"7ef3130f-7844-49c6-a46c-2f6960cae697\",\n \"login\": \"toopy\",\n \"password\": \"1234abcd\",\n \"site\": \"slack.com\"\n }\n\n\nHead\n^^^^\n\n.. code:: bash\n\n $ http HEAD http://127.0.0.1:8000/passwords/7ef3130f-7844-49c6-a46c-2f6960cae697\n HTTP/1.1 200 OK\n Content-Length: 0\n Content-Type: application/json\n Date: Sat, 09 Sep 2017 09:24:46 GMT\n Server: Python/3.6 aiohttp/2.2.0\n X-API-Version: 0.1.0.dev0\n\n\nDelete\n^^^^^^\n\n.. code:: bash\n\n $ http DELETE http://127.0.0.1:8000/passwords/7ef3130f-7844-49c6-a46c-2f6960cae697\n HTTP/1.1 204 No Content\n Content-Length: 2\n Content-Type: application/json; charset=utf-8\n Date: Sat, 09 Sep 2017 09:46:55 GMT\n Server: Python/3.6 aiohttp/2.2.0\n X-API-Version: 0.1.0.dev0\n\n\nLicense\n-------\n\nMIT License", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/toopy/mypasswords-api", "keywords": "api,passwords", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "mypasswords-api", "package_url": "https://pypi.org/project/mypasswords-api/", "platform": "", "project_url": "https://pypi.org/project/mypasswords-api/", "project_urls": { "Homepage": "https://gitlab.com/toopy/mypasswords-api" }, "release_url": "https://pypi.org/project/mypasswords-api/0.4.0/", "requires_dist": null, "requires_python": "", "summary": "\"API for your passwords.\"", "version": "0.4.0" }, "last_serial": 4270053, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "ba7826d38da250f01b9e757d3916d23c", "sha256": "6b70cf0ebb6b000ccd9cf1ecab41e91648cec556ab66a6c7a58dc2cbcc33fccf" }, "downloads": -1, "filename": "mypasswords_api-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ba7826d38da250f01b9e757d3916d23c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13418, "upload_time": "2017-09-09T11:22:25", "url": "https://files.pythonhosted.org/packages/56/d6/750cc5f4bd8257095038e60916843c36324211ff2df2a97f7c2a8cdc3f69/mypasswords_api-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "45e2ed49ca28712ecd65eef6dad68c6a", "sha256": "51352dca9cf8b86ffa4f88064e7d3ef323cc8653605fcae41799e9cfa71905ed" }, "downloads": -1, "filename": "mypasswords-api-0.1.0.tar.gz", "has_sig": false, "md5_digest": "45e2ed49ca28712ecd65eef6dad68c6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9464, "upload_time": "2017-09-09T11:22:23", "url": "https://files.pythonhosted.org/packages/8f/51/6f5ac6d0a547b83a9728dd4d876dac9b1e2c6329442400ddde793b3a74c3/mypasswords-api-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "c75f4978ece34d10765db51ca09ce2e0", "sha256": "80fb8d0874b9d2d21b11cf4496d500b33df4d75fc0c809a9c20278ad4061de23" }, "downloads": -1, "filename": "mypasswords_api-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c75f4978ece34d10765db51ca09ce2e0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11342, "upload_time": "2018-07-10T08:09:22", "url": "https://files.pythonhosted.org/packages/be/f0/f16029db9e158c030a974ddf66dbf7c3d41b54b291fd7d1192e3375435ee/mypasswords_api-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e9d2eed97d836ec27716229704f2828b", "sha256": "b5eb4ee3f864e240b74560f49e0510db5c17471dcf741587f277cc7f1edce4c9" }, "downloads": -1, "filename": "mypasswords-api-0.2.0.tar.gz", "has_sig": false, "md5_digest": "e9d2eed97d836ec27716229704f2828b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9659, "upload_time": "2018-07-10T08:09:20", "url": "https://files.pythonhosted.org/packages/49/1a/697936aa654e59ca850bc744e55ac6bdf80ee86b8351544cad7fb8dfa9fa/mypasswords-api-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "205d1523f4bf6bcad35aff699b847bcf", "sha256": "a9d7ed29ca67b48e7514b39e6a6a4b05091e252aeb119b5b4e1635859592115f" }, "downloads": -1, "filename": "mypasswords_api-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "205d1523f4bf6bcad35aff699b847bcf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11388, "upload_time": "2018-07-10T21:58:59", "url": "https://files.pythonhosted.org/packages/e5/cd/381c76057756dc443b7c7d4b9348a87db529de8b97c700827dfc3222c55a/mypasswords_api-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eb313999cdcf34f91cc26ee68feeeb95", "sha256": "a9d08ed8e91e84b9994d903d7b2a38d7244d08953e79a3596af02677ecbfb1a1" }, "downloads": -1, "filename": "mypasswords-api-0.3.0.tar.gz", "has_sig": false, "md5_digest": "eb313999cdcf34f91cc26ee68feeeb95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9727, "upload_time": "2018-07-10T21:58:57", "url": "https://files.pythonhosted.org/packages/91/86/89c9310dcf4c8473fa5acb3363f44817deeb0f99980fd5865754e49024a0/mypasswords-api-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "1d5f740559c8cf3be3aa8e5ebe93b2a3", "sha256": "a51b646d449a9afe26c12e391d1b64a6f6406f96ab04adb724cad21130ab5f79" }, "downloads": -1, "filename": "mypasswords_api-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1d5f740559c8cf3be3aa8e5ebe93b2a3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11854, "upload_time": "2018-09-13T20:56:52", "url": "https://files.pythonhosted.org/packages/cb/3a/c7d41d70c9f69b8138813b0f26d801a2f5398f25a7a79a3d8f977217d209/mypasswords_api-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "756e1840e95998dbc4fa71ec4dfa6bfd", "sha256": "fe4200d593e340dc039a88452f8ece367202ffcb76b20f7a4c002d9530458bdb" }, "downloads": -1, "filename": "mypasswords-api-0.4.0.tar.gz", "has_sig": false, "md5_digest": "756e1840e95998dbc4fa71ec4dfa6bfd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9919, "upload_time": "2018-09-13T20:56:50", "url": "https://files.pythonhosted.org/packages/86/98/63ee4bbec66bcb001108d05d53fc828daa21933c528d377d946d9151f865/mypasswords-api-0.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1d5f740559c8cf3be3aa8e5ebe93b2a3", "sha256": "a51b646d449a9afe26c12e391d1b64a6f6406f96ab04adb724cad21130ab5f79" }, "downloads": -1, "filename": "mypasswords_api-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1d5f740559c8cf3be3aa8e5ebe93b2a3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11854, "upload_time": "2018-09-13T20:56:52", "url": "https://files.pythonhosted.org/packages/cb/3a/c7d41d70c9f69b8138813b0f26d801a2f5398f25a7a79a3d8f977217d209/mypasswords_api-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "756e1840e95998dbc4fa71ec4dfa6bfd", "sha256": "fe4200d593e340dc039a88452f8ece367202ffcb76b20f7a4c002d9530458bdb" }, "downloads": -1, "filename": "mypasswords-api-0.4.0.tar.gz", "has_sig": false, "md5_digest": "756e1840e95998dbc4fa71ec4dfa6bfd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9919, "upload_time": "2018-09-13T20:56:50", "url": "https://files.pythonhosted.org/packages/86/98/63ee4bbec66bcb001108d05d53fc828daa21933c528d377d946d9151f865/mypasswords-api-0.4.0.tar.gz" } ] }