{ "info": { "author": "Dan Loewenherz", "author_email": "dan@lionheartsw.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP :: Dynamic Content :: CGI Tools/Libraries", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "python-restmapper\n=================\n\n|CI Status| |Version|\n\nRestMapper takes the pain out of integrating with RESTful APIs. It\nremoves all of the complexity with writing API-specific code, and lets\nyou focus all your energy on the important stuff. Here\u2019s a quick example\n(using Twitter):\n\n.. code:: pycon\n\n Twitter = RestMapper(\"https://api.twitter.com/1.1/{path}.json\")\n auth = OAuth1('YOUR_APP_KEY', 'YOUR_APP_SECRET', 'USER_OAUTH_TOKEN', 'USER_OAUTH_TOKEN_SECRET')\n twitter = Twitter(auth=auth)\n response = twitter.statuses.mentions_timeline()\n\nWhoa, easy, right? This will call\nhttps://api.twitter.com/1.1/statuses/mentions_timeline.json,\nauthenticate the request using OAuth1, and return the response as JSON.\nThe great thing is that there\u2019s not much else you need to learn to\nintegrate with any other API. You just plug in the base URL format,\nprovide any optional authentication handlers (that requests provides),\nand then just start making API calls.\n\nSee\n`requests-cloudkit `__\nfor an example of an authentication handler working with Apple\u2019s\nCloudKit which is compatible right out of the box with RestMapper.\n\nInstallation\n------------\n\nRestMapper is available for download through the Python Package Index\n(PyPi). You can install it right away using pip or easy_install.\n\n::\n\n pip install restmapper\n\nUsage\n-----\n\nThe first thing you need to do is generate a base RestMapper object that\nwill allow you to instantiate a connection with a remote API.\n\n.. code:: pycon\n\n >>> Twitter = RestMapper(\"https://api.twitter.com/1.1/{path}.json\")\n\n``{path}`` is just a placeholder for the rest of the path. You\u2019ll\nspecify this later when making API calls.\n\nTwitter\u2019s API is protected by OAuth1, so the next step is to provide\nauthentication. When integrating with any other API, any\n`requests-compatible `__\nauth object can be provided.\n\n.. code:: pycon\n\n >>> from requests_oauthlib import OAuth1\n >>> auth = OAuth1('YOUR_APP_KEY', 'YOUR_APP_SECRET', 'USER_OAUTH_TOKEN', 'USER_OAUTH_TOKEN_SECRET')\n >>> twitter = Twitter(auth=auth)\n\nNow you can start making calls. The API object\u2019s attributes and\nproperties map one-to-one with the API you\u2019re integrating with. E.g.,\nthe below:\n\n.. code:: pycon\n\n >>> response = twitter.statuses.mentions_timeline()\n\n\u2026will request\nhttps://api.twitter.com/1.1/statuses/mentions_timeline.json. The path\nimplied by the attribute syntax is inserted right where the ``path``\nplaceholder is in the ``Twitter`` object\u2019s instantiation earlier.\n\nIf you want to pass in body data for a POST, provide a single argument\nto the call to the API, and specify \u201cPOST\u201d as the first attribute. I.e.\n\n.. code:: pycon\n\n >>> twitter.POST.my.request(data)\n\nPATCH, PUT, GET, and POST are all supported. GET is currently the\ndefault.\n\nMiscellaneous\n~~~~~~~~~~~~~\n\nBy default, python-restmapper will return parsed JSON objects. If you\u2019d\nlike the raw response object for a request, just pass in\n``parse_response=False`` as an argument to the API object.\n\nSupport\n-------\n\nIf you like this library, or need help implementing it, send us an\nemail: hi@lionheartsw.com.\n\n.. _license-licenselicense-badgelicense-url:\n\nLicense |License|\n-----------------\n\nApache License, Version 2.0. See `LICENSE `__ for details.\n\n.. raw:: html\n\n \n\n.. raw:: html\n\n \n\n.. |CI Status| image:: https://img.shields.io/travis/lionheart/python-restmapper.svg?style=flat\n :target: https://github.com/lionheart/python-restmapper/blob/master/https://travis-ci.org/lionheart/restmapper.py\n.. |Version| image:: https://img.shields.io/pypi/v/restmapper.svg?style=flat\n :target: https://github.com/lionheart/python-restmapper/blob/master/https://pypi.python.org/pypi/restmapper\n.. |License| image:: http://img.shields.io/pypi/l/restmapper.svg?style=flat\n :target: https://github.com/lionheart/python-restmapper/blob/master/LICENSE\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/lionheart/python-restmapper", "keywords": "restmapper", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "restmapper", "package_url": "https://pypi.org/project/restmapper/", "platform": "", "project_url": "https://pypi.org/project/restmapper/", "project_urls": { "Homepage": "https://github.com/lionheart/python-restmapper" }, "release_url": "https://pypi.org/project/restmapper/2.0.1/", "requires_dist": [ "requests (>=2.0.0)" ], "requires_python": "", "summary": "RestMapper takes the pain out of integrating with RESTful APIs", "version": "2.0.1" }, "last_serial": 3811464, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "7597d3cd499f79a9e79f061cd8962be5", "sha256": "f606b5f6aa82ebee9a0f485d621708413ef1f857238d9ad58251f0f08aa0eb84" }, "downloads": -1, "filename": "restmapper-0.0.1.tar.gz", "has_sig": true, "md5_digest": "7597d3cd499f79a9e79f061cd8962be5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3285, "upload_time": "2015-04-14T15:05:51", "url": "https://files.pythonhosted.org/packages/e5/77/27aa1edbcae227cacb868fa92b4ecf6ff2b302913e3757331c726856d0f7/restmapper-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "d528595dbb6fdf6276d63cf8c515bb83", "sha256": "0d7829eebe4efac3e9b6df648fb4e036b676904e137f66d64f05334f54784c6a" }, "downloads": -1, "filename": "restmapper-0.0.2.tar.gz", "has_sig": true, "md5_digest": "d528595dbb6fdf6276d63cf8c515bb83", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3787, "upload_time": "2015-04-14T15:31:37", "url": "https://files.pythonhosted.org/packages/92/20/bdc9bae41e8f5acb3b2c3ff664622085c1452be7793cc35be123c931085c/restmapper-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "053427276b53b2cf3bceb47a1e145c7d", "sha256": "2a83c74ebddaee8ea85f4a7d0144d5f0109efde8363ca3306fe55e363b56a56c" }, "downloads": -1, "filename": "restmapper-0.0.3.tar.gz", "has_sig": true, "md5_digest": "053427276b53b2cf3bceb47a1e145c7d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4272, "upload_time": "2015-04-15T22:10:22", "url": "https://files.pythonhosted.org/packages/5a/58/17747b7139d060c47259466d573a49fdcc622c2f0dd1236b2183e5002e57/restmapper-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "6325f65dd581f28747de99cdeb6a4f43", "sha256": "32c1e99477429f20f056160fa3988085ab5203c046859131c03a1ef753b6df7b" }, "downloads": -1, "filename": "restmapper-0.0.4.tar.gz", "has_sig": true, "md5_digest": "6325f65dd581f28747de99cdeb6a4f43", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4257, "upload_time": "2015-05-25T20:49:41", "url": "https://files.pythonhosted.org/packages/24/8b/6ead0f35911f8dacd8beaa697bf1c9194104a6d5bc4660e9a927d9b510a5/restmapper-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "6d9b07805a414231d56c09ee770e1e29", "sha256": "814da609ef6757f33104402a22ed2f729101f52145dfc2beb55a134a40726fc9" }, "downloads": -1, "filename": "restmapper-0.0.5.tar.gz", "has_sig": true, "md5_digest": "6d9b07805a414231d56c09ee770e1e29", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4246, "upload_time": "2015-05-25T20:59:21", "url": "https://files.pythonhosted.org/packages/b7/a8/f924cd1e27921decf5e529fa2b6e5ee3b57787ab35f2682f812c83ab3e3f/restmapper-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "f34ede66616ccf2a7853c8d6722eed4a", "sha256": "e856cd0483d6f43c5e3f895adfce8f2ff402f1d3c29f9547cea1e3522f5345b1" }, "downloads": -1, "filename": "restmapper-0.0.6.tar.gz", "has_sig": true, "md5_digest": "f34ede66616ccf2a7853c8d6722eed4a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4095, "upload_time": "2015-05-25T21:21:53", "url": "https://files.pythonhosted.org/packages/9c/ac/1b6cc706e8024e57f4623a0c7f33542f054610e11baca269126b0d93048d/restmapper-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "db7b737880534576b9f828ce6dcdc5a7", "sha256": "18cc8956ca3aa12b7db2643723dbad8bf13e88d25b3c52737e808876b94f2179" }, "downloads": -1, "filename": "restmapper-0.0.7.tar.gz", "has_sig": true, "md5_digest": "db7b737880534576b9f828ce6dcdc5a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4115, "upload_time": "2015-05-25T21:23:37", "url": "https://files.pythonhosted.org/packages/67/7a/de1e671003cc179c63e5e4dcfb5eae0137b3a4148c9a95ae86333585f4c2/restmapper-0.0.7.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "ad787dfedb91b8e3c38812aaf7d4ba8f", "sha256": "90a63c2f6e5560bba25fe61cd43d861acd5b79f51a9d68de3a51c75a33d50d8e" }, "downloads": -1, "filename": "restmapper-0.1.0.tar.gz", "has_sig": true, "md5_digest": "ad787dfedb91b8e3c38812aaf7d4ba8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4368, "upload_time": "2015-09-08T00:08:45", "url": "https://files.pythonhosted.org/packages/e6/ec/4efa69c75e111f4684a1be5b2685654989056c5dd21a1f9c70dfff9f2a56/restmapper-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "325896da71effe243a37a672508c43b6", "sha256": "0d5f16ffa5e770bdb034d79c50586c80ba2c42e0f71deb266e14722855fa45a1" }, "downloads": -1, "filename": "restmapper-0.1.1.tar.gz", "has_sig": true, "md5_digest": "325896da71effe243a37a672508c43b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4485, "upload_time": "2016-05-29T14:58:11", "url": "https://files.pythonhosted.org/packages/a7/34/bb89667fb8113dbb6b2dba889a782f8f7b606843039e6933d2c6eccf8ff7/restmapper-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "c96bcb3d0b2096886bbd37fd0151f98d", "sha256": "4573a4f3fb0fe6a44ee2fc353f6f279ab77111f12de0a2178ac7d99395975a87" }, "downloads": -1, "filename": "restmapper-0.1.2.tar.gz", "has_sig": true, "md5_digest": "c96bcb3d0b2096886bbd37fd0151f98d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4517, "upload_time": "2016-05-29T15:29:38", "url": "https://files.pythonhosted.org/packages/8a/41/dcccadd4c0f69ed34445a1462263dfaf256e479635595164304b2a4aeaf3/restmapper-0.1.2.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "3e7317c833d60d59bd626d5093b01bf0", "sha256": "9d8fad74d218351a9203b0fa3264f8f5420598b244b200c36ba807b7a40fe2f7" }, "downloads": -1, "filename": "restmapper-1.0.0.tar.gz", "has_sig": true, "md5_digest": "3e7317c833d60d59bd626d5093b01bf0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4571, "upload_time": "2016-05-29T15:41:55", "url": "https://files.pythonhosted.org/packages/33/87/266333ce8ce4786ad7a7eed1b12c613385f96f4e3550df9ca68b2dc73d47/restmapper-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "d8f241868f5ff0b38ae3e52e9c6f2dc7", "sha256": "05faeabe1b668328dba4eb3064b5f9545b9b7024d3d3c35e50fa0e799bf984e4" }, "downloads": -1, "filename": "restmapper-1.0.1.tar.gz", "has_sig": true, "md5_digest": "d8f241868f5ff0b38ae3e52e9c6f2dc7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4574, "upload_time": "2016-05-29T15:51:32", "url": "https://files.pythonhosted.org/packages/6a/72/8d72b1f4fa687074c98642548577d55315f2b656452f5ee7fc4df50815da/restmapper-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "15022822ff7a1aa26f1c1d09e5130b63", "sha256": "495145211242c3e18ec5256b1ed95b0ff60216cb08e0d65574ef81d495be223a" }, "downloads": -1, "filename": "restmapper-1.0.2.tar.gz", "has_sig": true, "md5_digest": "15022822ff7a1aa26f1c1d09e5130b63", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4744, "upload_time": "2016-05-29T15:54:18", "url": "https://files.pythonhosted.org/packages/8f/b4/642ce8bdbb83362c9349d6809d603329d1fb1f802147854b4a78f91b8f82/restmapper-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "0735319d8b7305d87a77436e422dc8e1", "sha256": "d8e62c45ff19331522d18f99a6a3729c7f9cc5b0932f28429d68159fe6a6ba62" }, "downloads": -1, "filename": "restmapper-1.0.3.tar.gz", "has_sig": true, "md5_digest": "0735319d8b7305d87a77436e422dc8e1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4734, "upload_time": "2016-05-29T18:42:16", "url": "https://files.pythonhosted.org/packages/94/df/7209b3a9646d0befbc754f36d624f45e823c2ea7d088dd4e2cbfcba73791/restmapper-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "92d6c5f178769e0ad6363587dc9918cf", "sha256": "8e25795bc6c3f80795bc660451a9351a3e27f1a86aa33b8f678b9e7aa666866a" }, "downloads": -1, "filename": "restmapper-1.0.4.tar.gz", "has_sig": true, "md5_digest": "92d6c5f178769e0ad6363587dc9918cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5057, "upload_time": "2017-08-11T14:26:51", "url": "https://files.pythonhosted.org/packages/0e/13/f24a2a213a818a57936ca91d23c2031e6d2c05f4b80ab4a9acc4b5ce1325/restmapper-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "260b21c054c1bb62071e84d5efac2da9", "sha256": "9b86c48479d84a64f7b23fadcb0cbdfa8b01ff38c8ae2b4286b8696eb270f9a3" }, "downloads": -1, "filename": "restmapper-1.0.5.tar.gz", "has_sig": true, "md5_digest": "260b21c054c1bb62071e84d5efac2da9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5059, "upload_time": "2017-08-12T20:55:35", "url": "https://files.pythonhosted.org/packages/fb/36/4fa27c32eb1da78c809a89deb92278cc22991b7b75f78833aa232ef1dea8/restmapper-1.0.5.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "e083d0edfcead5caf9a3290d298ab5de", "sha256": "99158dd05e6a20e9b705df469654bf72649b0e2a2c96bf8541e062cf5cce0069" }, "downloads": -1, "filename": "restmapper-2.0.0.tar.gz", "has_sig": true, "md5_digest": "e083d0edfcead5caf9a3290d298ab5de", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5060, "upload_time": "2017-08-17T16:29:20", "url": "https://files.pythonhosted.org/packages/ad/a1/86e8bf56acd8b434626d71de81a1974559e576ac34aa516aebb8d035f7f2/restmapper-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "6845585f89e4ea414effb835ceaa6989", "sha256": "e755ab1de1b23e181ec057c3b1a86973e43f0c4510703817f6d5c95a1d58a348" }, "downloads": -1, "filename": "restmapper-2.0.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "6845585f89e4ea414effb835ceaa6989", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8658, "upload_time": "2018-04-26T18:40:25", "url": "https://files.pythonhosted.org/packages/18/d9/5e31e076a311b09adb5783616ffcad74834c25350a9d5cfd710f87afdcd3/restmapper-2.0.1-py2.py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6845585f89e4ea414effb835ceaa6989", "sha256": "e755ab1de1b23e181ec057c3b1a86973e43f0c4510703817f6d5c95a1d58a348" }, "downloads": -1, "filename": "restmapper-2.0.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "6845585f89e4ea414effb835ceaa6989", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8658, "upload_time": "2018-04-26T18:40:25", "url": "https://files.pythonhosted.org/packages/18/d9/5e31e076a311b09adb5783616ffcad74834c25350a9d5cfd710f87afdcd3/restmapper-2.0.1-py2.py3-none-any.whl" } ] }