{ "info": { "author": "Oliver Ortlieb", "author_email": "oliver@voodoomfg.co", "bugtrack_url": null, "classifiers": [], "description": "#Voodoo API\n\n## Example\n\n from voodooapi import API\n\n shipping_info = {\n \"name\": \"Oliver Ortlieb\",\n \"street1\": \"320 2nd Ave\",\n \"street2\": \"#5\",\n \"city\": \"New York\",\n \"state\": \"NY\",\n \"zip\": \"10003\",\n \"country\": \"USA\"\n }\n\n api_key = \"your-api-key-goes-here\"\n\n api = API(api_key)\n\n file_url = \"https://mydomain.com/somefile.stl\"\n qty = 1\n\n materials = api.get_materials()\n\n khaki = [m[\"color\"] for m in materials if m[\"color\"] == \"Khaki\"]\n\n material_id = khaki[\"id\"]\n\n quote = api.upload_and_quote_model(file_url, qty, material_id, shipping_info)\n\n print \"Price is $%.2f.\" % (quote[\"quote\"][\"total\"])\n purchase = (raw_input(\"Would you like to complete the purchase? (y/n)\").lower() == 'y')\n\n if purchase:\n order = api.confirm_order(quote[\"quote_id\"])\n print order\n print \"Purchase completed.\"\n\n\n## Classes\n## API\n\n\n###API(api_key)\n\nCreates an API instance that uses the given api key. You should provide a correct API key or the API will not work.\n\n###API.get_materials()\n\nReturns a list of available materials for printing.\n\nExample response:\n\n # Truncated example showing the structure of the response\n [{u'color': u'True Red', u'type': u'PLA', u'id': 1},\n {u'color': u'True Brown', u'type': u'PLA', u'id': 2},\n ...]\n # End of response\n\n\n###API.create_model(file_url):\n\nCreates a model on the Voodoo servers representing the model provided by file_url. The Voodoo servers will download the file before providing a response.\n\nExample response:\n\n {u'user_id': 1,\n u'deletedAt': None,\n u'file_uri':\n u'3c911686-4bbe-4fb7-b08e-354e88f1274b.stl',\n u'volume': 263703.684920517,\n u'updatedAt':u'2015-06-15T15:23:21.122Z',\n u'y': 63.9124984741211,\n u'x': 155.777496337891,\n u'z': 110.86499786377,\n u'id': 25,\n u'createdAt': u'2015-06-15T15:23:21.122Z'}\n\n###API.create_order(order_items, shipping_info):\nCreates an order request on the server and returns a quote for that order, along with a quote id used to confirm the order. The purchase is not completed until the confirm_order method is executed with the appropriate quote_id.\n\nExample usage:\n\n # Order items is a list of dictionaries with the keys:\n # { \"material\": material_id, \"id\": model_id, \"qty\": number }\n order_items = {'material': 34, 'id': 25, 'qty': 1\n\n # Shipping info is a dictionary with the keys:\n shipping_info = {\n 'city': 'Test city,\n 'name': 'Test name',\n 'zip': '12345',\n 'street1': '123 Test Rd',\n 'street2': '#1', # optional!\n 'state': 'AK',\n 'country': 'USA'\n }\n\n print API.create_order(order_items, shipping_info)\n # Response\n {\n u'quote':\n {u'items': 263814.55,\n u'total': 290196.01,\n u'tax': 26381.46,\n u'shipping': 0},\n u'quote_id': u'123456',\n u'shipping':\n {u'city': u'New York',\n u'name': u'Oliver Ortlieb',\n u'zip': u'10003',\n u'street1': u'320 2nd Ave',\n u'street2': u'#5',\n u'state': u'NY',\n u'country': u'USA'},\n u'order_items': [\n {u'material': 34, u'id': 25, u'qty': 1}\n ]\n }\n\n\n\n###API.confirm_order(quote_id):\nConfirms the order given by quote_id. Prior to calling this method, no order will be printed and no money will be charged.\n\nResponse is the same as create_order.\n\n###API.upload_and_quote_model(file_url, qty, material, shipping_info):\nCreates a model for file_url and quotes it for the given quantity, material, and target shipping address. Returns the same response as create_order.\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "UNKNOWN", "keywords": null, "license": "LICENSE.txt", "maintainer": null, "maintainer_email": null, "name": "voodoo-api", "package_url": "https://pypi.org/project/voodoo-api/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/voodoo-api/", "project_urls": { "Download": "UNKNOWN", "Homepage": "UNKNOWN" }, "release_url": "https://pypi.org/project/voodoo-api/0.1.7/", "requires_dist": null, "requires_python": null, "summary": "Programmatic fulfillment API for Voodoo Manufacturing", "version": "0.1.7" }, "last_serial": 1592799, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "33ebbd68b44c8e23e1eb840cef4d0831", "sha256": "93e7647afffdf30bed4f295e8fa4e73d6de569fdc022b828cc2c900d445a2219" }, "downloads": -1, "filename": "voodoo-api-0.1.0.tar.gz", "has_sig": false, "md5_digest": "33ebbd68b44c8e23e1eb840cef4d0831", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1126, "upload_time": "2015-06-15T14:55:32", "url": "https://files.pythonhosted.org/packages/47/98/f6c6a61ebbec6d74e38eeda303a5c6296481a12f4004d1ed48000b1292c5/voodoo-api-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "d4d97083854d5d7911cf87d3815f3e3e", "sha256": "e14c797653807ea8820df622d2e6a78cf2b53f4e83510ce7844f7f8712eb7ee5" }, "downloads": -1, "filename": "voodoo-api-0.1.1.tar.gz", "has_sig": false, "md5_digest": "d4d97083854d5d7911cf87d3815f3e3e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1125, "upload_time": "2015-06-15T15:00:08", "url": "https://files.pythonhosted.org/packages/f1/43/c8b798a98f19f8dcc6bb647f7a552654df0d00a383a93c52b6250459b756/voodoo-api-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "4fd93628744634f9d4e7c0415b59534d", "sha256": "fddfd4520dc24baefbeee05533dea986b876c8207031fda01a2ccc984e835c49" }, "downloads": -1, "filename": "voodoo-api-0.1.2.tar.gz", "has_sig": false, "md5_digest": "4fd93628744634f9d4e7c0415b59534d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1151, "upload_time": "2015-06-15T15:02:08", "url": "https://files.pythonhosted.org/packages/9e/83/db5e9bf6c8889613a91529bbe8aa3505447789a3cc92bc25e62759832bbb/voodoo-api-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "9cff9c43f53ec17a103dabce6110c954", "sha256": "429f3d404fde4fc4033d4a3785119649dca4ee8b4c253074c1dae2795da5a942" }, "downloads": -1, "filename": "voodoo-api-0.1.3.tar.gz", "has_sig": false, "md5_digest": "9cff9c43f53ec17a103dabce6110c954", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1130, "upload_time": "2015-06-15T15:04:17", "url": "https://files.pythonhosted.org/packages/b6/d7/b24d25bb71fa5efe1aedaa09fa18bc1b6ba448ce55c380ca1b6041ccc429/voodoo-api-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "f57d8b222fdfd3b6976be4f8709c9ec1", "sha256": "142926e4b11c19f536179a0f6b11dd295ce5423ee567222a2653b275698868ad" }, "downloads": -1, "filename": "voodoo-api-0.1.4.tar.gz", "has_sig": false, "md5_digest": "f57d8b222fdfd3b6976be4f8709c9ec1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1130, "upload_time": "2015-06-15T15:07:26", "url": "https://files.pythonhosted.org/packages/16/11/13da485aaf09572e8ecab8ed2f79165a2c14ae511dafc0045a72e45c3ace/voodoo-api-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "5ae56b69b20a59b5f91df3a6113ec5c2", "sha256": "13d67a16b73e357288f6da1693cfa69c5478dbac6eeb2bb5af0e7476acffb00a" }, "downloads": -1, "filename": "voodoo-api-0.1.5.tar.gz", "has_sig": false, "md5_digest": "5ae56b69b20a59b5f91df3a6113ec5c2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1131, "upload_time": "2015-06-15T15:08:53", "url": "https://files.pythonhosted.org/packages/11/70/bb3caaeb77fc32b5ff2e32ff9ff613d439ab343bdf4807b90d305922c0f2/voodoo-api-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "1d816fb3a6cd58940ec3bcc87a5be35e", "sha256": "7a80e17aa383d866dc934b78bc8a1d9b16f5adec6d7195060c6de1a40027907b" }, "downloads": -1, "filename": "voodoo-api-0.1.6.tar.gz", "has_sig": false, "md5_digest": "1d816fb3a6cd58940ec3bcc87a5be35e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2646, "upload_time": "2015-06-15T15:36:45", "url": "https://files.pythonhosted.org/packages/22/09/c72f5d2b1a0c07c41ca9ca93803a387e47b474290ad4ad854ff8a9619fad/voodoo-api-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "bf8c5ed2f12173463f4a6b64f342b184", "sha256": "19426d0866d645f9414a1b394c6b68f8e23081f57560d2f078dc7b5119e1ef7d" }, "downloads": -1, "filename": "voodoo-api-0.1.7.tar.gz", "has_sig": false, "md5_digest": "bf8c5ed2f12173463f4a6b64f342b184", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2621, "upload_time": "2015-06-15T15:39:00", "url": "https://files.pythonhosted.org/packages/02/9a/9286f13f2ef1c3b2d139f0bfd119d3bc086233e4d41b917b7b46dc7e8a31/voodoo-api-0.1.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bf8c5ed2f12173463f4a6b64f342b184", "sha256": "19426d0866d645f9414a1b394c6b68f8e23081f57560d2f078dc7b5119e1ef7d" }, "downloads": -1, "filename": "voodoo-api-0.1.7.tar.gz", "has_sig": false, "md5_digest": "bf8c5ed2f12173463f4a6b64f342b184", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2621, "upload_time": "2015-06-15T15:39:00", "url": "https://files.pythonhosted.org/packages/02/9a/9286f13f2ef1c3b2d139f0bfd119d3bc086233e4d41b917b7b46dc7e8a31/voodoo-api-0.1.7.tar.gz" } ] }