This question has been flagged

Hi,


I'm trying to test a webhook to communicate with airtable. The server actions is well performed but there's an error, here's the stack trace:


Erreur:

Odoo Server Error


Traceback (most recent call last):

  File "/home/odoo/src/odoo/13.0/odoo/tools/safe_eval.py", line 354, in safe_eval

    return unsafe_eval(c, globals_dict, locals_dict)

  File "", line 24, in <module>

  File "/home/odoo/src/odoo/13.0/odoo/addons/base/models/ir_actions.py", line 481, in log

    """, (self.env.uid, 'server', self._cr.dbname, __name__, level, message, "action", action.id, action.name))

  File "/home/odoo/src/odoo/13.0/odoo/sql_db.py", line 173, in wrapper

    return f(self, *args, **kwargs)

  File "/home/odoo/src/odoo/13.0/odoo/sql_db.py", line 250, in execute

    res = self._obj.execute(query, params)

psycopg2.ProgrammingError: can't adapt type 'Response'


During handling of the above exception, another exception occurred:


Traceback (most recent call last):

  File "/home/odoo/src/odoo/13.0/odoo/http.py", line 624, in _handle_exception

    return super(JsonRequest, self)._handle_exception(exception)

  File "/home/odoo/src/odoo/13.0/odoo/http.py", line 310, in _handle_exception

    raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])

  File "/home/odoo/src/odoo/13.0/odoo/tools/pycompat.py", line 14, in reraise

    raise value

  File "/home/odoo/src/odoo/13.0/odoo/http.py", line 669, in dispatch

    result = self._call_function(**self.params)

  File "/home/odoo/src/odoo/13.0/odoo/http.py", line 350, in _call_function

    return checked_call(self.db, *args, **kwargs)

  File "/home/odoo/src/odoo/13.0/odoo/service/model.py", line 94, in wrapper

    return f(dbname, *args, **kwargs)

  File "/home/odoo/src/odoo/13.0/odoo/http.py", line 339, in checked_call

    result = self.endpoint(*a, **kw)

  File "/home/odoo/src/odoo/13.0/odoo/http.py", line 915, in __call__

    return self.method(*args, **kw)

  File "/home/odoo/src/odoo/13.0/odoo/http.py", line 515, in response_wrap

    response = f(*args, **kw)

  File "/home/odoo/src/odoo/13.0/addons/web/controllers/main.py", line 1673, in run

    result = request.env['ir.actions.server'].browse([action_id]).run()

  File "/home/odoo/src/odoo/13.0/odoo/addons/base/models/ir_actions.py", line 537, in run

    res = func(action, eval_context=eval_context)

  File "/home/odoo/src/odoo/13.0/odoo/addons/base/models/ir_actions.py", line 422, in run_action_code_multi

    safe_eval(action.sudo().code.strip(), eval_context, mode="exec", nocopy=True)  # nocopy allows to return 'action'

  File "/home/odoo/src/odoo/13.0/odoo/tools/safe_eval.py", line 377, in safe_eval

    pycompat.reraise(ValueError, ValueError('%s: "%s" while evaluating\n%r' % (ustr(type(e)), ustr(e), expr)), exc_info[2])

  File "/home/odoo/src/odoo/13.0/odoo/tools/pycompat.py", line 13, in reraise

    raise value.with_traceback(tb)

  File "/home/odoo/src/odoo/13.0/odoo/tools/safe_eval.py", line 354, in safe_eval

    return unsafe_eval(c, globals_dict, locals_dict)

  File "", line 24, in <module>

  File "/home/odoo/src/odoo/13.0/odoo/addons/base/models/ir_actions.py", line 481, in log

    """, (self.env.uid, 'server', self._cr.dbname, __name__, level, message, "action", action.id, action.name))

  File "/home/odoo/src/odoo/13.0/odoo/sql_db.py", line 173, in wrapper

    return f(self, *args, **kwargs)

  File "/home/odoo/src/odoo/13.0/odoo/sql_db.py", line 250, in execute

    res = self._obj.execute(query, params)

ValueError: <class 'psycopg2.ProgrammingError'>: "can't adapt type 'Response'" while evaluating

'# Available variables:\n#  - env: Odoo Environment on which the action is triggered\n#  - model: Odoo Model of the record on which the action is triggered; is a void recordset\n#  - record: record on which the action is triggered; may be void\n#  - records: recordset of all records on which the action is triggered in multi-mode; may be void\n#  - time, datetime, dateutil, timezone: useful Python libraries\n#  - float_compare: Odoo function to compare floats based on specific precisions\n#  - log: log(message, level=\'info\'): logging function to record debug information in ir.logging table\n#  - Warning: Warning Exception to use with raise\n# To return an action, assign: action = {...}\n\nrecord.message_post(body="message HELLO WORLD")\n\nheaders = {"Content-Type": "application/json", "Accept": "application/json", "Catch-Control": "no-cache"}\n\nlog(\'log\', level=\'info\')\n\nurl = "https://hooks.airtable.com/workflows/v1/genericWebhook/appP2tDAd8sFVrivW/wfl9IMpWGVsXRXbDZ/wtrVri2ivnehn1X8c"\n\njson_data = {\'name\' : \'test\'}\n\nresponse = requests.get(url, data={}, headers=headers)\n\nlog(response)'


record.message_post(body="message HELLO WORLD")

headers = {"Content-Type": "application/json", "Accept": "application/json", "Catch-Control": "no-cache"}

log('log', level='info')

url = "https://hooks.airtable.com/workflows/v1/genericWebhook/appP2tDAd8sFVrivW/wfl9IMpWGVsXRXbDZ/wtrVri2ivnehn1X8c"

json_data = {'name' : 'test'}

response = requests.get(url, data={}, headers=headers)

log(response)


Any help would be welcome since this is conditioning the roadmap forwarding of my enterprise, I'm a developer.


Thanks !



Avatar
Discard

Hi, did you find the solution for this error?