{std::string("/v1/" #api_name "/" #call_name), \
[api_handle](string, string body, url_response_callback cb) mutable { \
try { \
body = parse_params<std::string, http_params_types::no_params>(body); \
INVOKE \
} catch (...) { \
http_plugin::handle_exception(#api_name, #call_name, body, cb); \
} \
}}
stores null, int64, uint64, double, bool, string, std::vector<variant>, and variant_object's.
12#define CALL_WITH_400(api_name, api_handle, call_name, INVOKE, http_response_code) \
13{std::string("/v1/" #api_name "/" #call_name), \
14 [api_handle](string, string body, url_response_callback cb) mutable { \
15 try { \
16 body = parse_params<std::string, http_params_types::no_params>(body); \
17 INVOKE \
18 cb(http_response_code, fc::variant(result)); \
19 } catch (...) { \
20 http_plugin::handle_exception(#api_name, #call_name, body, cb); \
21 } \
22 }}