{ "info": { "author": "Fatih K\u0131l\u0131\u00e7", "author_email": "m.fatihklc0@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8" ], "description": "# AnyAPI\n\n![Travis (.org)](https://img.shields.io/travis/FKLC/AnyAPI.svg?style=flat-square)\n![PyPI - Downloads](https://img.shields.io/pypi/dm/anyapi.svg?style=flat-square)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/AnyAPI.svg?style=flat-square)\n![GitHub release](https://img.shields.io/github/release/FKLC/AnyAPI.svg?style=flat-square)\n![GitHub](https://img.shields.io/github/license/FKLC/AnyAPI.svg?style=flat-square)\n![Code Climate maintainability](https://img.shields.io/codeclimate/maintainability/FKLC/AnyAPI.svg?style=flat-square)\n\nAnyAPI is a library that helps you to write any API wrappers with ease and in pythonic way.\n\n### Features\n\n- Have better looking code using dynamic method calls.\n- Filters to help you to modify request, raise errors or log requests instead of writing functions everywhere.\n- Scoped calls to raise errors and take action if necessary.\n- Automatic retrying if the condition met with what you passed.\n- Built-in rate limit proxy changer. (you can write your own proxy handler)\n- Since it is built on top of requests anything compatible with it is compatible with AnyAPI.\n\nBut most importantly in AnyAPI almost everything is modular!\n\n---\n\n### Examples\n\nMaking GET request to https://httpbin.org/anything/endpoint\n\n```python\nfrom anyapi import AnyAPI\n\n\nbase_url = 'https://httpbin.org'\napi = AnyAPI(base_url)\n\napi.anything.endpoint.GET()\n```\n\nAs you can see dots are pretended as slash and at the end you should put dot and HTTP method you want to use in capital letters.\n\n---\n\nSetting header before every request\n\n```python\nimport datetime\nfrom anyapi import AnyAPI\n\n\ndef set_date_as_header(kwargs):\n now = datetime.datetime.now()\n kwargs['headers'].update({'date': now.strftime('%B %d %Y')})\n\n return kwargs\n\napi = AnyAPI('https://httpbin.org')\napi._filter_request.append(set_date_as_header)\n\nprint(api.anything.endpoint.GET().json())\n# output\n{\n 'args': {},\n 'data': '',\n 'files': {},\n 'form': {},\n 'headers': {\n 'Accept-Encoding': 'identity',\n 'Connection': 'close',\n 'Date': 'January 16 2019',\n 'Host': 'httpbin.org'\n },\n 'json': None,\n 'method': 'GET',\n 'origin': 'XX.XX.XX.XX',\n 'url': 'https://httpbin.org/anything/endpoint'\n}\n```\n\nAs you can see filter worked as expected and set `Date` header.\n\n---\n\nChanging proxy automatically after they reach their rate limit\n\n```python\nfrom anyapi import AnyAPI\nfrom anyapi.proxy_handlers import RateLimitProxy\n\nproxy_configuration = {\n 'default': proxy0,\n 'proxies': [proxy0, proxy1, proxy2,....], # don't forget to add default proxy!\n 'paths': {\n '/anything': rate_limit0,\n '/anything/endpoint': rate_limit1\n }\n}\n\napi = AnyAPI('https://httpbin.org', proxy_configuration=proxy_configuration, proxy_handler=RateLimitProxy)\n\nfor i in range(10):\n print(api.anything.endpoint.GET().json())\n```\n\nIf you check output of the all them you can see proxy changes when it reaches limit.\n\n### This library is not a new thing\n\nThere is a lot of libraries you can find out there for example [Uplink](https://github.com/prkumar/uplink/), [Hammock](https://github.com/kadirpekel/hammock) and many more...\n\n---\n\n## Installation\n\nLibrary on PyPI so just run\n\n```console\npip install anyapi\n```\n\n# To learn more about AnyAPI check [wiki page](https://github.com/FKLC/AnyAPI/wiki/)\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/FKLC/AnyAPI", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "anyapi", "package_url": "https://pypi.org/project/anyapi/", "platform": "", "project_url": "https://pypi.org/project/anyapi/", "project_urls": { "Homepage": "https://github.com/FKLC/AnyAPI" }, "release_url": "https://pypi.org/project/anyapi/1.1.701/", "requires_dist": [ "requests", "AttributeRouter (==1.0.0)" ], "requires_python": "", "summary": "An API Wrapper For Every API", "version": "1.1.701" }, "last_serial": 5316345, "releases": { "1.0.7": [ { "comment_text": "", "digests": { "md5": "4c1d87e2e280199f739f6cd3a52e0fc8", "sha256": "f6ab5aa45270b2531676797111d5fef287ccaf450a5f7e7214c07db54a005350" }, "downloads": -1, "filename": "anyapi-1.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "4c1d87e2e280199f739f6cd3a52e0fc8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3673, "upload_time": "2019-01-19T12:22:29", "url": "https://files.pythonhosted.org/packages/b7/a2/bd96d7e253423f9b32e782494db1be2d8a1db73fa47dd314964c9992f821/anyapi-1.0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "28f19e2401bbae17ab41fca57ba84ba6", "sha256": "739c7da351417aa18fdda6ac916c5466ee95042568ec1cfc4969c2f5ebd38658" }, "downloads": -1, "filename": "anyapi-1.0.7.tar.gz", "has_sig": false, "md5_digest": "28f19e2401bbae17ab41fca57ba84ba6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2804, "upload_time": "2019-01-19T12:22:31", "url": "https://files.pythonhosted.org/packages/fc/90/f8429ca8f48659cf6c5ba1c2026aa66113ee90bb53f57f30058baf365db8/anyapi-1.0.7.tar.gz" } ], "1.0.8": [ { "comment_text": "", "digests": { "md5": "fc78241d4705ac66dd251f5c0c642b63", "sha256": "db7eb9c3f84e1d70d487d584077547ba5b51799f83684a0db23b0c88a4e4dff6" }, "downloads": -1, "filename": "anyapi-1.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "fc78241d4705ac66dd251f5c0c642b63", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4380, "upload_time": "2019-01-19T17:56:13", "url": "https://files.pythonhosted.org/packages/ab/2f/62ccc4aab251a1a130f4c5a46b540d97343060d3882e87dc57b16128b171/anyapi-1.0.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e2d0f702483e38effde5bd4bdb54dec1", "sha256": "1fc77d923915f2f457bfc293bb80ec53e04805822b123aed258bec2e088696e8" }, "downloads": -1, "filename": "anyapi-1.0.8.tar.gz", "has_sig": false, "md5_digest": "e2d0f702483e38effde5bd4bdb54dec1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3496, "upload_time": "2019-01-19T17:56:14", "url": "https://files.pythonhosted.org/packages/98/99/8069d02577071dcfe4fdcd69ac704898f9b4155ca61888f89f27428673b5/anyapi-1.0.8.tar.gz" } ], "1.0.9": [ { "comment_text": "", "digests": { "md5": "46254919a3e45202f33cc193c04056e4", "sha256": "b902db253e979c032978255367c80dcade3201aab8ca6e47750551bab7819c2b" }, "downloads": -1, "filename": "anyapi-1.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "46254919a3e45202f33cc193c04056e4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4852, "upload_time": "2019-01-19T22:59:45", "url": "https://files.pythonhosted.org/packages/fe/fd/19871525e2d032a940d1e301091716a193f51bd5fb01ba2a976548fc4483/anyapi-1.0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "76ab66474337b1ce49a6c7c119ee80b9", "sha256": "8965b55f1bf5f24beab2a85def72ee48929ae37a665231ab71f11a04f8307dd4" }, "downloads": -1, "filename": "anyapi-1.0.9.tar.gz", "has_sig": false, "md5_digest": "76ab66474337b1ce49a6c7c119ee80b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4028, "upload_time": "2019-01-19T22:59:46", "url": "https://files.pythonhosted.org/packages/8c/3f/7941da1bc84adb99f3224b882441222b7a721c6c234b13dd5cbe3bc9743d/anyapi-1.0.9.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "6d5b742e3457427c525920f2437b75bd", "sha256": "b046ab9379e19e8e4f432ad38b19d942de56d686cae0d35caa65faa260b446bb" }, "downloads": -1, "filename": "anyapi-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "6d5b742e3457427c525920f2437b75bd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4924, "upload_time": "2019-01-20T06:40:19", "url": "https://files.pythonhosted.org/packages/38/89/97fff6cdad4fb489d5c586a2b3be6e49062f257c653f96d73fb6443aae7f/anyapi-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "966944864bff97e94adfeb5456cc8ea7", "sha256": "ac058b83667308edb4c2b3b4a7b3e8f3c1bf15b0b5f805918fef4d8409181785" }, "downloads": -1, "filename": "anyapi-1.1.0.tar.gz", "has_sig": false, "md5_digest": "966944864bff97e94adfeb5456cc8ea7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4099, "upload_time": "2019-01-20T06:40:21", "url": "https://files.pythonhosted.org/packages/f1/f3/d70709a5dd57507cc480afffc07f769d5e3e0d87a23d7878ad2afff9b5d5/anyapi-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "1b99656bacd2187326f2a6503834c2b8", "sha256": "25d56235ee121bffa44e01b0a096d2dec6630cd8e447ec1f35f7d2523e7abfbb" }, "downloads": -1, "filename": "anyapi-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1b99656bacd2187326f2a6503834c2b8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4939, "upload_time": "2019-01-24T09:17:34", "url": "https://files.pythonhosted.org/packages/36/6a/f89914666f8e89c829a1ebb14ae524709534a39b77b40d99ee05998ee497/anyapi-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8326f3d62bc92c62276847bc363cc66c", "sha256": "634d805a94a865afea5c05e90aaf5a5b0e787b75fd696896eb94617897fd61c6" }, "downloads": -1, "filename": "anyapi-1.1.1.tar.gz", "has_sig": false, "md5_digest": "8326f3d62bc92c62276847bc363cc66c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4114, "upload_time": "2019-01-24T09:17:36", "url": "https://files.pythonhosted.org/packages/60/19/3574a31dd604364103ccc05a8e2a69d8205dd84717e38cfafb3553d29345/anyapi-1.1.1.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "48c4310004d45dd93e823fdaf82f23f9", "sha256": "fb8f6ac549ca6e800ab14cedfbd6040f5ae4a85d271ab152f4bcc932d722cbf5" }, "downloads": -1, "filename": "anyapi-1.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "48c4310004d45dd93e823fdaf82f23f9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4663, "upload_time": "2019-03-14T20:33:15", "url": "https://files.pythonhosted.org/packages/af/cf/1b9333fadca0dfeea7b424c44bc7038c5bc76e7b06f3f815d418201d5673/anyapi-1.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "811fde8328b81d67299edc17f44f72eb", "sha256": "b8c65dbfd322cb6d2dcfc42ab126f017a4f1114d2ce8df6f5699dc1e1e42eebb" }, "downloads": -1, "filename": "anyapi-1.1.3.tar.gz", "has_sig": false, "md5_digest": "811fde8328b81d67299edc17f44f72eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3853, "upload_time": "2019-03-14T20:33:16", "url": "https://files.pythonhosted.org/packages/71/b1/10b361256de28595bd574d1978d9345e68dacd50572de4b277717586d4f4/anyapi-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "be85c5c7fc04fa3f22236adbc40db354", "sha256": "299a59b2f582349bb460f215eecb23fd0ee498a131fb759e7519cc03ce4e7cfb" }, "downloads": -1, "filename": "anyapi-1.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "be85c5c7fc04fa3f22236adbc40db354", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5062, "upload_time": "2019-03-16T11:33:39", "url": "https://files.pythonhosted.org/packages/57/43/61749e24ffa448b4e3aa73680c8c7a5b7a7afe1eb79afa5d54bb1a079bac/anyapi-1.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e21126758b467d79c7620c306f1d197e", "sha256": "48f61573388a32ab8dd8a6825b6b6081d4ab80b5e054d8f622e0ea62a2f5fee9" }, "downloads": -1, "filename": "anyapi-1.1.4.tar.gz", "has_sig": false, "md5_digest": "e21126758b467d79c7620c306f1d197e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3708, "upload_time": "2019-03-16T11:33:41", "url": "https://files.pythonhosted.org/packages/25/b1/e3618f545c42f1af6b40a4b997c22170be82cb07e59be2fb278e593f5275/anyapi-1.1.4.tar.gz" } ], "1.1.401": [ { "comment_text": "", "digests": { "md5": "d3b108c3b60e3dda9d2dc54db4cf4076", "sha256": "93d23d828dced93d85949fa92af6c12336c4d23b1e563b29ca2a5e98a867b12e" }, "downloads": -1, "filename": "anyapi-1.1.401-py3-none-any.whl", "has_sig": false, "md5_digest": "d3b108c3b60e3dda9d2dc54db4cf4076", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5091, "upload_time": "2019-03-22T19:16:36", "url": "https://files.pythonhosted.org/packages/ba/d1/488e2b1472ada7f4f727d5e31b2c7dd864ccd3bb86a9293e73a7ed098d82/anyapi-1.1.401-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "35f4a03e8e2e34bcebdcc88ce5640849", "sha256": "aac047130815dec0cb760ec6be86db578387cf03b7b12bac3101a0844d610107" }, "downloads": -1, "filename": "anyapi-1.1.401.tar.gz", "has_sig": false, "md5_digest": "35f4a03e8e2e34bcebdcc88ce5640849", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3715, "upload_time": "2019-03-22T19:16:37", "url": "https://files.pythonhosted.org/packages/64/31/b979296308fd6b213868caaa0c33179f2efe27434bbf73ccb42cf009d38c/anyapi-1.1.401.tar.gz" } ], "1.1.5": [ { "comment_text": "", "digests": { "md5": "1eb8996adf84bba990b1e734a4c91769", "sha256": "d2ca08b63736dec18e730e0e0a4869ad6d8b325738a8a5b3d540e7b782f1d557" }, "downloads": -1, "filename": "anyapi-1.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "1eb8996adf84bba990b1e734a4c91769", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5078, "upload_time": "2019-04-23T20:42:08", "url": "https://files.pythonhosted.org/packages/f3/37/6d00c037052c3b85b12298e294bf305c7a4a00afa19195396045423fd347/anyapi-1.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6a2806aa81f475eb1e96cd941213e293", "sha256": "a21723b770e77a17d4013ff7b1678b8e13c1478efeedbac5ca3425f3bf3ea619" }, "downloads": -1, "filename": "anyapi-1.1.5.tar.gz", "has_sig": false, "md5_digest": "6a2806aa81f475eb1e96cd941213e293", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3719, "upload_time": "2019-04-23T20:42:09", "url": "https://files.pythonhosted.org/packages/8b/be/549069545176619d69a56ea13ba3b48f26d6aeda4ad30b42777a66ea94e9/anyapi-1.1.5.tar.gz" } ], "1.1.501": [ { "comment_text": "", "digests": { "md5": "27af1b6d8bf97ed367ef6c99a12f2413", "sha256": "25bb5cc8d0dd9b72e581b8f0cc1e97d4664d6287857615283fea9365455b2e9a" }, "downloads": -1, "filename": "anyapi-1.1.501-py3-none-any.whl", "has_sig": false, "md5_digest": "27af1b6d8bf97ed367ef6c99a12f2413", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5224, "upload_time": "2019-04-27T12:46:46", "url": "https://files.pythonhosted.org/packages/0c/9a/0a581d6d097f115f457265b617f4d6f1dd1067f31eca1ba36cad513c42ee/anyapi-1.1.501-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8322885baea73b035e848969ff16f77d", "sha256": "9ccbf9aca0da1c092977ade8bb2276268d0c584ffa0c255101ddaa18681ad732" }, "downloads": -1, "filename": "anyapi-1.1.501.tar.gz", "has_sig": false, "md5_digest": "8322885baea73b035e848969ff16f77d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3933, "upload_time": "2019-04-27T12:46:49", "url": "https://files.pythonhosted.org/packages/ac/3a/3961e87c7e44fa2a488af17c8cfe3a318d9a0c71eb72cddbafc4762addef/anyapi-1.1.501.tar.gz" } ], "1.1.503": [ { "comment_text": "", "digests": { "md5": "6b564127424bf2e14451fec9ef635b69", "sha256": "a6d254a3ae5e970e139161656d80ef4a08a3326e67c84ebc55c9d6d53a660533" }, "downloads": -1, "filename": "anyapi-1.1.503-py3-none-any.whl", "has_sig": false, "md5_digest": "6b564127424bf2e14451fec9ef635b69", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4883, "upload_time": "2019-05-01T14:27:14", "url": "https://files.pythonhosted.org/packages/56/8c/a5a85bd161c4b43b25dda24cbc29fb411ae93d8386a85132fa0d1315d177/anyapi-1.1.503-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "09a1dea43cef1b48d4a70631eb1730ba", "sha256": "d93bfa0b2a7fcce5ac7f30d921f53dc7f7759d2ea2c26ee75dae26cabd92fc1a" }, "downloads": -1, "filename": "anyapi-1.1.503.tar.gz", "has_sig": false, "md5_digest": "09a1dea43cef1b48d4a70631eb1730ba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3780, "upload_time": "2019-05-01T14:27:15", "url": "https://files.pythonhosted.org/packages/52/ed/d1855895931bd022b12c4daaafdcfa0d7db968c9813ded16088fc4f5a54f/anyapi-1.1.503.tar.gz" } ], "1.1.6": [ { "comment_text": "", "digests": { "md5": "de017191c42d95791b09648093139cf9", "sha256": "81d85168b6413cdefc9b22190ecbf4eb61bd017c78e64726137e54585ffbbfdc" }, "downloads": -1, "filename": "anyapi-1.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "de017191c42d95791b09648093139cf9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5305, "upload_time": "2019-05-05T15:55:07", "url": "https://files.pythonhosted.org/packages/f2/82/a6058dca0e3a90be5c761d0adef4ff8f1c49c2653ce3926b6b16dbfc3fab/anyapi-1.1.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fd00071915760e1f38455679a9865209", "sha256": "274a418a8fdfad194a31a506dba7403acfbf2a878943c7ddfe798752ab5a23ea" }, "downloads": -1, "filename": "anyapi-1.1.6.tar.gz", "has_sig": false, "md5_digest": "fd00071915760e1f38455679a9865209", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4128, "upload_time": "2019-05-05T15:55:09", "url": "https://files.pythonhosted.org/packages/df/2b/6c07e1a8cef89e4bd684c347fb6dc352c458beed50625daa2c7b36535730/anyapi-1.1.6.tar.gz" } ], "1.1.601": [ { "comment_text": "", "digests": { "md5": "28103c29443690e41b48245e36568732", "sha256": "34b31db8b49dd816f6dcafbcc2cec0c5e7ce7f4695d092f60dea5e52dec61fc0" }, "downloads": -1, "filename": "anyapi-1.1.601-py3-none-any.whl", "has_sig": false, "md5_digest": "28103c29443690e41b48245e36568732", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5330, "upload_time": "2019-05-05T16:00:06", "url": "https://files.pythonhosted.org/packages/48/93/7eb8c618f47a4f7838c8c83f2a5a79cd6a6949820832af833f9cbee147f1/anyapi-1.1.601-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b7dc891c2fae7fe2335ef83fa804609c", "sha256": "dfb4ace3fb8b8df92395020acd635893a43fdcc4dcf7f03ceb82316301980dbd" }, "downloads": -1, "filename": "anyapi-1.1.601.tar.gz", "has_sig": false, "md5_digest": "b7dc891c2fae7fe2335ef83fa804609c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4135, "upload_time": "2019-05-05T16:00:08", "url": "https://files.pythonhosted.org/packages/ef/a0/c329d412652a29da814080b4a2873865a9e854f9ca46f1bd1234da901a61/anyapi-1.1.601.tar.gz" } ], "1.1.602": [ { "comment_text": "", "digests": { "md5": "4c8b914a5b66fd976c92cc12eec389ce", "sha256": "472bb6e04c77d59f88652f82a49a7b695b17b7a36a562ff80e6d71a659545eda" }, "downloads": -1, "filename": "anyapi-1.1.602-py3-none-any.whl", "has_sig": false, "md5_digest": "4c8b914a5b66fd976c92cc12eec389ce", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5335, "upload_time": "2019-05-05T17:54:34", "url": "https://files.pythonhosted.org/packages/86/e5/3f03925d031a32602b4ad2ff85a88d07e9a71eca35ee09b1e5944dac1c31/anyapi-1.1.602-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d229662977cf28b92c6990f49442a2ca", "sha256": "f85bcc909f2b2379fdd4338eb830d3c5067087348229cc6a501e95a2a25ccfb0" }, "downloads": -1, "filename": "anyapi-1.1.602.tar.gz", "has_sig": false, "md5_digest": "d229662977cf28b92c6990f49442a2ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4120, "upload_time": "2019-05-05T17:54:36", "url": "https://files.pythonhosted.org/packages/7d/05/4f84d307bbd6cdaad90dfeb5b7fee1170c120f8b4c376d675b8cb26f95f9/anyapi-1.1.602.tar.gz" } ], "1.1.701": [ { "comment_text": "", "digests": { "md5": "ac97e597b9d9efcd772c8f4804c6eb8e", "sha256": "6ca6748faf92486fbd74e7158f806a7fc12379d8a03657999cf275f1ef07af40" }, "downloads": -1, "filename": "anyapi-1.1.701-py3-none-any.whl", "has_sig": false, "md5_digest": "ac97e597b9d9efcd772c8f4804c6eb8e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5355, "upload_time": "2019-05-25T12:54:30", "url": "https://files.pythonhosted.org/packages/70/ca/bec53d6205effab031a8262a2b2a3a78a38ed2b8435296828610583415a6/anyapi-1.1.701-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "12927028218d320f4f557c1b100e05b4", "sha256": "48c4b1225874c06aa0dff9d1b0b2d71a720a81417d57d42fbbdcbd268dfb2f2f" }, "downloads": -1, "filename": "anyapi-1.1.701.tar.gz", "has_sig": false, "md5_digest": "12927028218d320f4f557c1b100e05b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4158, "upload_time": "2019-05-25T12:54:32", "url": "https://files.pythonhosted.org/packages/76/26/580f2974346559177b60b0103d751f69ab66cdd4bb1282953a2880411a11/anyapi-1.1.701.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ac97e597b9d9efcd772c8f4804c6eb8e", "sha256": "6ca6748faf92486fbd74e7158f806a7fc12379d8a03657999cf275f1ef07af40" }, "downloads": -1, "filename": "anyapi-1.1.701-py3-none-any.whl", "has_sig": false, "md5_digest": "ac97e597b9d9efcd772c8f4804c6eb8e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5355, "upload_time": "2019-05-25T12:54:30", "url": "https://files.pythonhosted.org/packages/70/ca/bec53d6205effab031a8262a2b2a3a78a38ed2b8435296828610583415a6/anyapi-1.1.701-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "12927028218d320f4f557c1b100e05b4", "sha256": "48c4b1225874c06aa0dff9d1b0b2d71a720a81417d57d42fbbdcbd268dfb2f2f" }, "downloads": -1, "filename": "anyapi-1.1.701.tar.gz", "has_sig": false, "md5_digest": "12927028218d320f4f557c1b100e05b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4158, "upload_time": "2019-05-25T12:54:32", "url": "https://files.pythonhosted.org/packages/76/26/580f2974346559177b60b0103d751f69ab66cdd4bb1282953a2880411a11/anyapi-1.1.701.tar.gz" } ] }