syntax = "proto3";

package worldmonitor.market.v1;

import "sebuf/http/annotations.proto";
import "worldmonitor/market/v1/market_quote.proto";

// ListMarketQuotesRequest specifies which stock/index symbols to retrieve.
message ListMarketQuotesRequest {
  // Ticker symbols to retrieve (e.g., ["AAPL", "^GSPC"]). Empty returns defaults.
  repeated string symbols = 1 [(sebuf.http.query) = { name: "symbols" }];
}

// ListMarketQuotesResponse contains stock and index quotes.
message ListMarketQuotesResponse {
  // The list of market quotes.
  repeated MarketQuote quotes = 1;

  // True when the Finnhub API key is not configured and stock quotes were skipped.
  bool finnhub_skipped = 2;

  // Human-readable reason when Finnhub was skipped (e.g., "FINNHUB_API_KEY not configured").
  string skip_reason = 3;

  // True when the upstream API rate-limited the request.
  bool rate_limited = 4;
}
