Close
    logoCloudomation Docs

    TaskXMLRPC

    class tasks.task_xmlrpc.TaskXMLRPC

    Call a XMLRPC service.

    Inputs

    NameTypeDefaultDescription
    argslistNonePositional arguments for function call
    funcstrThe function to call on the remote
    kwargsdictNoneKeyword arguments for function call
    urlstr

    Outputs

    NameTypeDefaultDescription
    loglist
    resultobject
    execution_idintThe ID of the task execution
    messagestrThe ended message for the task. If the task ended with an error, the message will contain information about what went wrong
    statusstrThe ended status for the task. Either "success" or "error".

    Constants

    input_list = ['args', 'func', 'kwargs', 'url']output_list = ['log', 'result']version = 1

    Methods

    run ()

    Example

    import flow_api
    def handler(system: flow_api.System, this: flow_api.Execution):
    db = <your odoo database name>
    api = <your odoo xmlrpc url>
    userid = <your odoo user id>
    password = <your odoo password>
    products = this.task(
    'XMLRPC',
    url=f'{api}/object',
    func='execute_kw',
    args=[
    db,
    userid,
    password,
    'product.product',
    'search_read',
    [[['type','=', 'product']]],
    {
    'fields': [
    'code',
    'name',
    'categ_id',
    ]
    },
    ],
    ).get('output_value').get('result')

    The example above will call a odoo xmlrpc API

    log:
    - Start
    - 'Connecting to <your odoo xmlrpc url>/object'
    - Calling execute_kw

    The result will be a list of json objects

    result:
    - id: 15
    code: DESK0004
    name: Customizable Desk
    categ_id:
    - 8
    - All / Saleable / Office Furniture
    - id: 16
    code: DESK0005
    name: Customizable Desk
    categ_id:
    - 8
    - All / Saleable / Office Furniture
    Previous
    TaskVAULT
    Next — Reference
    REST API