{"id":13734487,"url":"https://github.com/tinyerp/odooly","last_synced_at":"2025-05-08T10:31:58.022Z","repository":{"id":34481857,"uuid":"160363690","full_name":"tinyerp/odooly","owner":"tinyerp","description":"Python library and CLI to interact with Odoo and OpenERP.","archived":false,"fork":false,"pushed_at":"2024-03-05T13:40:15.000Z","size":539,"stargazers_count":61,"open_issues_count":16,"forks_count":31,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-08-03T03:03:41.668Z","etag":null,"topics":["cli","erppeek","json-rpc","odoo","odoo-tooling","odoo11","odoo12","odoo13","openerp","python","xml-rpc"],"latest_commit_sha":null,"homepage":"https://odooly.rtfd.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tinyerp.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGES.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-04T13:42:26.000Z","updated_at":"2024-08-03T03:03:43.103Z","dependencies_parsed_at":"2024-08-03T03:13:50.327Z","dependency_job_id":null,"html_url":"https://github.com/tinyerp/odooly","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tinyerp%2Fodooly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tinyerp%2Fodooly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tinyerp%2Fodooly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tinyerp%2Fodooly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tinyerp","download_url":"https://codeload.github.com/tinyerp/odooly/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224720964,"owners_count":17358485,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","erppeek","json-rpc","odoo","odoo-tooling","odoo11","odoo12","odoo13","openerp","python","xml-rpc"],"created_at":"2024-08-03T03:00:56.404Z","updated_at":"2024-11-15T02:32:45.738Z","avatar_url":"https://github.com/tinyerp.png","language":"Python","funding_links":[],"categories":["Clients","Tools"],"sub_categories":[],"readme":"=========================================================\nOdooly, a versatile tool for browsing Odoo / OpenERP data\n=========================================================\n\nDownload and install the latest release::\n\n    pip install -U odooly\n\n.. contents::\n   :local:\n   :backlinks: top\n\nDocumentation and tutorial: http://odooly.readthedocs.org\n\nCI tests: https://app.travis-ci.com/github/tinyerp/odooly\n\n\nOverview\n--------\n\nOdooly carries three completing uses:\n\n(1) with command line arguments\n(2) as an interactive shell\n(3) as a client library\n\n\nKey features:\n\n- provides an API very close to the Odoo API, through JSON-RPC and XML-RPC\n- compatible with OpenERP 6.1 through Odoo 15.0\n- single executable ``odooly.py``, no external dependency\n- helpers for ``search``, for data model introspection, etc...\n- simplified syntax for search ``domain`` and ``fields``\n- full API accessible on the ``Client.env`` environment\n- the module can be imported and used as a library: ``from odooly import Client``\n- supports Python 3.5 and above, and Python 2.7\n\n\n\n.. _command-line:\n\nCommand line arguments\n----------------------\n\nThere are few arguments to query Odoo models from the command line.\nAlthough it is quite limited::\n\n    $ odooly --help\n\n    Usage: odooly.py [options] [search_term_or_id [search_term_or_id ...]]\n\n    Inspect data on Odoo objects.  Use interactively or query a model (-m) and\n    pass search terms or ids as positional parameters after the options.\n\n    Options:\n      --version             show program's version number and exit\n      -h, --help            show this help message and exit\n      -l, --list            list sections of the configuration\n      --env=ENV             read connection settings from the given section\n      -c CONFIG, --config=CONFIG\n                            specify alternate config file (default: 'odooly.ini')\n      --server=SERVER       full URL of the server (default:\n                            http://localhost:8069/xmlrpc)\n      -d DB, --db=DB        database\n      -u USER, --user=USER  username\n      -p PASSWORD, --password=PASSWORD\n                            password, or it will be requested on login\n      -m MODEL, --model=MODEL\n                            the type of object to find\n      -f FIELDS, --fields=FIELDS\n                            restrict the output to certain fields (multiple\n                            allowed)\n      -i, --interact        use interactively; default when no model is queried\n      -v, --verbose         verbose\n    $ #\n\n\nExample::\n\n    $ odooly -d demo -m res.partner -f name -f lang 1\n    \"name\",\"lang\"\n    \"Your Company\",\"en_US\"\n\n::\n\n    $ odooly -d demo -m res.groups -f full_name 'id \u003e 0'\n    \"full_name\"\n    \"Administration / Access Rights\"\n    \"Administration / Configuration\"\n    \"Human Resources / Employee\"\n    \"Usability / Multi Companies\"\n    \"Usability / Extended View\"\n    \"Usability / Technical Features\"\n    \"Sales Management / User\"\n    \"Sales Management / Manager\"\n    \"Partner Manager\"\n\n\n\n.. _interactive-mode:\n\nInteractive use\n---------------\n\nEdit ``odooly.ini`` and declare the environment(s)::\n\n    [DEFAULT]\n    scheme = http\n    host = localhost\n    port = 8069\n    database = odoo\n    username = admin\n\n    [demo]\n    username = demo\n    password = demo\n    protocol = xmlrpc\n\n    [demo_jsonrpc]\n    username = demo\n    password = demo\n    protocol = jsonrpc\n\n    [local]\n    scheme = local\n    options = -c /path/to/odoo-server.conf --without-demo all\n\n\nConnect to the Odoo server::\n\n    odooly --list\n    odooly --env demo\n\n\nThis is a sample session::\n\n    \u003e\u003e\u003e env['res.users']\n    \u003cModel 'res.users'\u003e\n    \u003e\u003e\u003e env['res.users'].search_count()\n    4\n    \u003e\u003e\u003e crons = env['ir.cron'].with_context(active_test=False).search([])\n    \u003e\u003e\u003e crons.read('active name')\n    [{'active': True, 'id': 5, 'name': 'Calendar: Event Reminder'},\n     {'active': False, 'id': 4, 'name': 'Mail: Fetchmail Service'}]\n    \u003e\u003e\u003e #\n    \u003e\u003e\u003e env.modules('delivery')\n    {'uninstalled': ['delivery', 'website_sale_delivery']}\n    \u003e\u003e\u003e env.upgrade('base')\n    1 module(s) selected\n    42 module(s) to process:\n      to upgrade    account\n      to upgrade    account_chart\n      to upgrade    account_tax_include\n      to upgrade    base\n      ...\n    \u003e\u003e\u003e #\n\n\n.. note::\n\n   Use the ``--verbose`` switch to see what happens behind the scene.\n   Lines are truncated at 79 chars.  Use ``-vv`` or ``-vvv`` to print\n   more.\n\n\n.. note::\n\n   To preserve the history of commands when closing the session, first\n   create an empty file in your home directory:\n   ``touch ~/.odooly_history``\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftinyerp%2Fodooly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftinyerp%2Fodooly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftinyerp%2Fodooly/lists"}