{ "info": { "author": "Jonatas Renan", "author_email": "jonatasrenan@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "# A developer friedly iTOP API Lib for Python3\n\n- Support all extensions;\n- Chained methods;\n- Data manipulation with NoSQL similar style;\n- Creation and updates objects containing lookup fields;\n- Parallel methods;\n\n## Install\n pip install itoptop\n\n## Usage\n >>> from itoptop import Itop\n >>> url = 'https://itop_server_name/webservices/rest.php'\n >>> ver = '1.3'\n >>> usr = 'user'\n >>> pwd = 'password'\n >>> data_model = 'path/to/datamodel.xml' # default is itop_folder/data/datamodel-production.xml\n\n### With Data Model\n >>> itop = Itop(url, ver, usr, pwd, data_model)\nGet id from Organization which code is SOMECODE\n\n >>> query = {'code': 'SOMECODE'}\n >>> projection = ['id']\n >>> result = itop.Organization.find(query, projection)\n '1'\n\nInsert list of person\n\n >>> object_list = [\n >>> {'name': 'NAME', 'first_name': 'FIRST_NAME', 'org_name': 'My Company/Department'},\n >>> {'name': 'NAME', 'first_name': 'OTHER_NAME', 'org_name': 'My Company/Department'}\n >>> ]\n >>> itop.Person.insert(object_list)\n [\n {\n 'email': '',\n 'employee_number': '',\n 'finalclass': 'Person',\n 'first_name': 'FIRST_NAME',\n 'friendlyname': 'FIRST_NAME NAME',\n 'function': '',\n 'id': '3',\n (...)\n 'org_id': '1',\n 'org_id_friendlyname': 'My Company/Department',\n 'org_id_obsolescence_flag': '',\n 'org_name': 'My Company/Department',\n },\n {\n 'email': '',\n 'employee_number': '',\n 'finalclass': 'Person',\n 'first_name': 'OTHER_NAME',\n 'friendlyname': 'OTHER_NAME NAME',\n 'function': '',\n 'id': '2',\n (...)\n 'org_id': '1',\n 'org_id_friendlyname': 'My Company/Department',\n 'org_id_obsolescence_flag': '',\n 'org_name': 'My Company/Department',\n }\n ]\n\nUpdate field first_name to FIRST_NAME and Organization relationship to My Company/Department in person where name is NAME\n\n >>> query= {'name': 'NAME'}\n >>> update = {'first_name': 'FIRST_NAME', 'org_name': 'My Company/Department'}\n >>> itop.Person.update(query, update, multi=True, upsert=True)\n [\n {\n 'email': '',\n 'employee_number': '',\n 'finalclass': 'Person',\n 'first_name': 'FIRST_NAME',\n 'friendlyname': 'FIRST_NAME NAME',\n 'function': '',\n 'id': '3',\n (...)\n 'org_id': '1',\n 'org_id_friendlyname': 'My Company/Department',\n 'org_id_obsolescence_flag': '',\n 'org_name': 'My Company/Department',\n },\n {\n 'email': '',\n 'employee_number': '',\n 'finalclass': 'Person',\n 'first_name': 'FIRST_NAME',\n 'friendlyname': 'OTHER_NAME NAME',\n 'function': '',\n 'id': '2',\n (...)\n 'org_id': '1',\n 'org_id_friendlyname': 'My Company/Department',\n 'org_id_obsolescence_flag': '',\n 'org_name': 'My Company/Department',\n }\n ]\n\n\nRemove all persons which Name is NAME and First Name is FIRST_NAME\n\n >>> result = itop.Person.remove({'name': 'NAME', 'first_name': 'FIRST_NAME'})\n [\n {'friendlyname': 'FIRST_NAME NAME', 'id': '2'},\n {'friendlyname': 'FIRST_NAME NAME', 'id': '3'}\n ]\n\n### Without Data Model\n >>> itop = Itop(uri, ver, usr, pwd)\nGet id from Organization which code is SOMECODE\n\n >>> query = {'code': 'SOMECODE'}\n >>> projection = ['id']\n >>> result = itop.schema('Organization).find(query, projection)\n\nInsert list of person\n\n >>> object_list = [\n >>> {'name': 'NAME', 'first_name': 'FIRST_NAME', 'org_id': 1},\n >>> {'name': 'NAME', 'first_name': 'OTHER_NAME', 'org_id': 1}\n >>> ]\n >>> result = itop.schema('Person').insert(object_list)\n\nUpdate field first_name to FIRST_NAME and org_id to 2 of objects in person where name is NAME\n\n >>> query= {'name': 'NAME'}\n >>> update = {'first_name': 'FIRST_NAME', 'org_id': 1}\n >>> result = itop.schema('Person').update(query, update, multi=True, upsert=True)\n\nRemove all persons which Name is NAME and First Name is FIRST_NAME\n\n >>> result = itop.schema('Person').remove({'name': 'NAME', 'first_name': 'FIRST_NAME'})\n\n## Contributing\nPull requests for new features, bug fixes, and suggestions are welcome!\n\n## License\nGNU General Public License v3 (GPLv3)", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jonatasrenan/itoptop/", "keywords": "itop api concurrent datamodel", "license": "", "maintainer": "", "maintainer_email": "", "name": "itoptop", "package_url": "https://pypi.org/project/itoptop/", "platform": "", "project_url": "https://pypi.org/project/itoptop/", "project_urls": { "Homepage": "https://github.com/jonatasrenan/itoptop/" }, "release_url": "https://pypi.org/project/itoptop/1.0.8/", "requires_dist": null, "requires_python": "", "summary": "iTOP API Python Lib", "version": "1.0.8" }, "last_serial": 3847743, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "03024641a3bdc70a9559376b0bc1840f", "sha256": "1f5faa9fa417f608c38188ad1a18ac4c76f565460d0b68e51fda7248c2ba1bf4" }, "downloads": -1, "filename": "itoptop-1.0.0.tar.gz", "has_sig": false, "md5_digest": "03024641a3bdc70a9559376b0bc1840f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18306, "upload_time": "2018-04-19T20:34:49", "url": "https://files.pythonhosted.org/packages/51/77/58bac6282387e2605d7fdfe1401b772bbe339c9deff36c306be895a0cc31/itoptop-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "4a49a81c547e6ae2c75201a4961aab1a", "sha256": "b11473059e1930dbbfed35b1aabd59eb8401e6fc89c57fa32a9667feec71b8a9" }, "downloads": -1, "filename": "itoptop-1.0.1.tar.gz", "has_sig": false, "md5_digest": "4a49a81c547e6ae2c75201a4961aab1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18306, "upload_time": "2018-04-19T21:12:32", "url": "https://files.pythonhosted.org/packages/df/1a/159cca9eeab44d05e69e4458ffacc6da2b84baf3546646bdcf58da5ba672/itoptop-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "b250c7a9bb839176ff3c62c7cb4ed848", "sha256": "23c2a409057a40a981c5cd6c0896aa1283ac86534aef67cc459f3f134986fede" }, "downloads": -1, "filename": "itoptop-1.0.2.tar.gz", "has_sig": false, "md5_digest": "b250c7a9bb839176ff3c62c7cb4ed848", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18890, "upload_time": "2018-04-24T12:36:20", "url": "https://files.pythonhosted.org/packages/e7/ea/234d62049209142bbce67c059a5488707b414868fac1aac633f5a7385a7f/itoptop-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "606922d1e3c9644d01d28122a6df31cf", "sha256": "d646a67a8651eb43423b9cdf4121994e5e7422ccbb7d28623fb5b45eb833868a" }, "downloads": -1, "filename": "itoptop-1.0.3.tar.gz", "has_sig": false, "md5_digest": "606922d1e3c9644d01d28122a6df31cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18921, "upload_time": "2018-04-24T13:16:47", "url": "https://files.pythonhosted.org/packages/1c/84/9c6beea9da3a1a2956ad970ba9b8266b41c17eb76b226c16062143473742/itoptop-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "1885e8f5f6c79a2e35793c9d8d772e57", "sha256": "6189f746521a7a107e77d3a618a1c798adf344899f7def64f9c86e7980f256cd" }, "downloads": -1, "filename": "itoptop-1.0.4.tar.gz", "has_sig": false, "md5_digest": "1885e8f5f6c79a2e35793c9d8d772e57", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18922, "upload_time": "2018-04-25T21:45:19", "url": "https://files.pythonhosted.org/packages/d8/a6/1ba9de48a4467059fa8065d20261cfccf149306aeb39abdfa6376e004835/itoptop-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "b05f9aafeaf5d896e01bd4e13941c686", "sha256": "dcae0c64514b2ec3e3136569422fd525aed34d8eba225b5187f1c712b270da58" }, "downloads": -1, "filename": "itoptop-1.0.5.tar.gz", "has_sig": false, "md5_digest": "b05f9aafeaf5d896e01bd4e13941c686", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19081, "upload_time": "2018-05-02T20:03:55", "url": "https://files.pythonhosted.org/packages/ff/8d/9e3b9b69103b7b5416f87ed2a8ae5c029b1092f840f8afb3fe397a30bf14/itoptop-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "1124057d810a5d232131b9a464f5dc92", "sha256": "6523cfaeadd963c1e1183b2fd08e23a92e3a1ccfd4e6cb1be08976080cc55059" }, "downloads": -1, "filename": "itoptop-1.0.6.tar.gz", "has_sig": false, "md5_digest": "1124057d810a5d232131b9a464f5dc92", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19405, "upload_time": "2018-05-03T13:10:24", "url": "https://files.pythonhosted.org/packages/61/5a/96159d26df91e66c2d14e52833e6f9c95a5398277daed6cf39c647ad1882/itoptop-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "eeb0b78b213cf80a37b51aef09c0f752", "sha256": "50bfb62c4db18ddb28e428da9ff0196975cd97aa6cd9d365b4653bc59ea55b15" }, "downloads": -1, "filename": "itoptop-1.0.7.tar.gz", "has_sig": false, "md5_digest": "eeb0b78b213cf80a37b51aef09c0f752", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19427, "upload_time": "2018-05-08T12:25:21", "url": "https://files.pythonhosted.org/packages/c6/b9/8f90e0294b27c3e24c504d6e7d5ab845d4d6fe83587f7fc6f28c165afcfd/itoptop-1.0.7.tar.gz" } ], "1.0.8": [ { "comment_text": "", "digests": { "md5": "9781fe1ace11b7efcfe59aa2a44824c0", "sha256": "35ee23f03cce1334a216032edc9829791e66820405fbc173cd8e4e14c3353e65" }, "downloads": -1, "filename": "itoptop-1.0.8.tar.gz", "has_sig": false, "md5_digest": "9781fe1ace11b7efcfe59aa2a44824c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19428, "upload_time": "2018-05-09T14:43:21", "url": "https://files.pythonhosted.org/packages/d2/22/0db044d854ebbeb77794a9082e6bf762f124f64356d0b3d733d386d33448/itoptop-1.0.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9781fe1ace11b7efcfe59aa2a44824c0", "sha256": "35ee23f03cce1334a216032edc9829791e66820405fbc173cd8e4e14c3353e65" }, "downloads": -1, "filename": "itoptop-1.0.8.tar.gz", "has_sig": false, "md5_digest": "9781fe1ace11b7efcfe59aa2a44824c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19428, "upload_time": "2018-05-09T14:43:21", "url": "https://files.pythonhosted.org/packages/d2/22/0db044d854ebbeb77794a9082e6bf762f124f64356d0b3d733d386d33448/itoptop-1.0.8.tar.gz" } ] }