diff --git a/pynest/nest/lib/hl_api_types.py b/pynest/nest/lib/hl_api_types.py index 24cdfadd09..a05a31557c 100644 --- a/pynest/nest/lib/hl_api_types.py +++ b/pynest/nest/lib/hl_api_types.py @@ -1286,6 +1286,8 @@ def serialize_data(data): if isinstance(data, (numpy.ndarray, NodeCollection)): return data.tolist() + if isinstance(data, (numpy.integer)): + return int(data) elif isinstance(data, SynapseCollection): # Get full information from SynapseCollection return serialize_data(data.get()) diff --git a/pynest/nest/server/hl_api_server.py b/pynest/nest/server/hl_api_server.py index 6a5d92d9aa..1faadc9428 100644 --- a/pynest/nest/server/hl_api_server.py +++ b/pynest/nest/server/hl_api_server.py @@ -277,7 +277,7 @@ def route_exec(): if EXEC_CALL_ENABLED: args, kwargs = get_arguments(request) response = do_call("exec", args, kwargs) - return jsonify(response) + return jsonify(nest.serialize_data(response)) else: flask.abort( 403, @@ -307,7 +307,7 @@ def route_api_call(call): args, kwargs = get_arguments(request) log("route_api_call", f"call={call}, args={args}, kwargs={kwargs}") response = api_client(call, args, kwargs) - return jsonify(response) + return jsonify(nest.serialize_data(response)) # ----------------------