@@ -81,13 +81,14 @@ pub struct FeedResponseV3 {
8181 pub schedule : String ,
8282 /// Power-of-ten exponent. Scale the `price` mantissa value by `10^exponent` to get the decimal representation.
8383 /// Example: `-8`
84- pub exponent : i32 ,
84+ pub exponent : i16 ,
8585 /// Funding rate interval. Only applies to feeds with instrument type `funding_rate`.
8686 /// Example: `10`
87- pub update_interval : DurationUs ,
87+ #[ serde( skip_serializing_if = "Option::is_none" ) ]
88+ pub update_interval : Option < DurationUs > ,
8889 /// The minimum number of publishers contributing component prices to the aggregate price.
8990 /// Example: `3`
90- pub min_publishers : u32 ,
91+ pub min_publishers : u16 ,
9192 /// Status of the feed.
9293 /// Example: `"active"`
9394 pub state : SymbolState ,
@@ -98,7 +99,7 @@ pub struct FeedResponseV3 {
9899 /// CoinMarketCap asset identifier.
99100 /// Example: `"123"`
100101 #[ serde( skip_serializing_if = "Option::is_none" ) ]
101- pub cmc_id : Option < String > ,
102+ pub cmc_id : Option < u32 > ,
102103 /// Pythnet feed identifier. 32 bytes, represented in hex.
103104 /// Example: `"e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43"`
104105 pub pythnet_id : String ,
@@ -166,11 +167,11 @@ mod tests {
166167 source : "pyth" . to_string ( ) ,
167168 schedule : "America/New_York;O,O,O,O,O,O,O;" . to_string ( ) ,
168169 exponent : -8 ,
169- update_interval : DurationUs :: from_secs_u32 ( 10 ) ,
170+ update_interval : Some ( DurationUs :: from_secs_u32 ( 10 ) ) ,
170171 min_publishers : 3 ,
171172 state : SymbolState :: Stable ,
172173 asset_type : "crypto" . to_string ( ) ,
173- cmc_id : Some ( "1" . to_string ( ) ) ,
174+ cmc_id : Some ( 1 ) ,
174175 pythnet_id : "e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43"
175176 . to_string ( ) ,
176177 nasdaq_symbol : None ,
0 commit comments