Custom apps for cloud users [extend ERPNext with microservices]

Hi @revant_one,

I’ve managed to validate the “Social Login Keys” on the server. I just needed to increase the number of gunicorn workers (Bench is in Production Mode)…

If anyone is interested: https://discuss.frappe.io/t/how-to-increase-number-of-gunicorns-workers

Now I encounter another issue when trying to access the upstream document from my custom app (with an expired token):

Traceback (most recent call last):
  File "/home/frappe/frappe-bench/apps/frappe/frappe/app.py", line 62, in application
    response = frappe.api.handle()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/api.py", line 53, in handle
    return frappe.handler.handle()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/handler.py", line 22, in handle
    data = execute_cmd(cmd)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/handler.py", line 53, in execute_cmd
    return frappe.call(method, **frappe.form_dict)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/__init__.py", line 923, in call
    return fn(*args, **newargs)
  File "/home/frappe/frappe-bench/apps/erpnext_connector/erpnext_connector/api.py", line 14, in login_via_frappe
    info = get_info_via_oauth("frappe", code, json.loads)
  File "/home/frappe/frappe-bench/apps/erpnext_connector/erpnext_connector/account_manager.py", line 25, in get_info_via_oauth
    session = flow.get_auth_session(**args)
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/rauth/service.py", line 556, in get_auth_session
    session = self.get_session(self.get_access_token(method, **kwargs))
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/rauth/service.py", line 542, in get_access_token
    access_token, = process_token_request(r, decoder, key)
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/rauth/service.py", line 24, in process_token_request
    raise KeyError(PROCESS_TOKEN_ERROR.format(key=bad_key, raw=r.content))
KeyError: 'Decoder failed to handle access_token with data as returned by provider. A different decoder may be needed. Provider returned: {"error":"unsupported_grant_type"}'

Here is my app advanced setup:

So grant_type is identical to the one hard-coded in the connector:
image

And token setup in erpnext_connector:

Do you know if I’m missing something again ? :slight_smile:

1 Like