20#ifndef ORES_ANALYTICS_MESSAGING_PRICING_MODEL_CONFIG_PROTOCOL_HPP
21#define ORES_ANALYTICS_MESSAGING_PRICING_MODEL_CONFIG_PROTOCOL_HPP
25#include <boost/uuid/uuid.hpp>
26#include "ores.analytics.api/domain/pricing_model_config.hpp"
28namespace ores::analytics::messaging {
30struct get_pricing_model_configs_request {
31 using response_type =
struct get_pricing_model_configs_response;
32 static constexpr std::string_view nats_subject =
33 "analytics.v1.pricing_model_configs.list";
36struct get_pricing_model_configs_response {
37 std::vector<ores::analytics::domain::pricing_model_config> configs;
38 int total_available_count = 0;
43struct save_pricing_model_config_request {
44 using response_type =
struct save_pricing_model_config_response;
45 static constexpr std::string_view nats_subject =
46 "analytics.v1.pricing_model_configs.save";
50struct save_pricing_model_config_response {
55struct delete_pricing_model_config_request {
56 using response_type =
struct delete_pricing_model_config_response;
57 static constexpr std::string_view nats_subject =
58 "analytics.v1.pricing_model_configs.delete";
59 std::vector<boost::uuids::uuid> ids;
62struct delete_pricing_model_config_response {
67struct get_pricing_model_config_history_request {
68 using response_type =
struct get_pricing_model_config_history_response;
69 static constexpr std::string_view nats_subject =
70 "analytics.v1.pricing_model_configs.history";
71 boost::uuids::uuid id;
74struct get_pricing_model_config_history_response {
75 std::vector<ores::analytics::domain::pricing_model_config> configs;
Named, versioned pricing model configuration header.
Definition pricing_model_config.hpp:41