{"openapi":"3.1.0","info":{"title":"MarketBeat Adapter API","version":"0.2.0","description":"MarketBeat adapter contract for bluedoor.\n\nMarketBeat-backed routes for autocomplete, company pages, ratings, dividends, news, and calendars.\n\nMarketBeat source API for bluedoor Financial Data.\nRetail-facing signal layer for dividends, analyst-adjacent tables, and attention data.\nCoverage: Dividends; Earnings estimates; Insider and congressional trades; Trending and sentiment lists.\nGenerated from the live source contract and representative live API responses on 2026-06-07T01:36:46.154Z.","x-bluedoor-adapter":{"slug":"marketbeat","source_id":"mbfin","upstream":"marketbeat.com","docs_url":"https://bluedoor.sh/adapters/marketbeat/docs"}},"servers":[{"url":"https://api.bluedoor.sh/adapters/marketbeat","description":"bluedoor adapter namespace"},{"url":"https://api.mbfin.bluedoor.sh","description":"Current source API host"}],"externalDocs":{"description":"MarketBeat adapter docs","url":"https://bluedoor.sh/adapters/marketbeat/docs"},"tags":[{"name":"Dividends"},{"name":"Earnings"},{"name":"News"}],"paths":{"/v1/13f-holdings":{"get":{"operationId":"mbfin_get_13f_holdings","summary":"13F holdings","parameters":[{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_13f_holdingsResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"thirteenf_holdings","tables":[{"row_count":100,"rows":[{"Company":"BlackRock","Holdings_Value":"$5.72T","__of_Holdings":"50,651","Reporting_Period_End_Date":"3/31/2026","Filing_Date":"5/13/2026","View":""},{"Company":"Vanguard Capital Management LLC","Holdings_Value":"$4.00T","__of_Holdings":"3,982","Reporting_Period_End_Date":"3/31/2026","Filing_Date":"5/15/2026","View":""},{"Company":"Vanguard Capital Management LLC","Holdings_Value":"$4.00T","__of_Holdings":"3,982","Reporting_Period_End_Date":"3/31/2026","Filing_Date":"5/8/2026","View":""}]}],"meta":{"table_count":1,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns 13F holdings with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/13f-holdings","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:46.471Z"}},"/v1/analyst-ratings":{"get":{"operationId":"mbfin_get_analyst_ratings","summary":"Analyst ratings","parameters":[{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_analyst_ratingsResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"analyst_ratings_list","tables":[{"row_count":293,"rows":[{"Company":"AAL Anglo American","Action":"Target Raised by","Brokerage":"Berenberg Bank Subscribe to MarketBeat All Access for the firm's recommendation accuracy rating","Analyst":"","Current_Price":"GBX 3,974 -2.3%","Price_Target":"GBX 4,000 &#x279D; GBX 4,200","Rating":"Buy","Details":""},{"Company":"AAPL Apple","Action":"Reiterated by","Brokerage":"Wedbush Subscribe to MarketBeat All Access for the firm's recommendation accuracy rating","Analyst":"Dan Ives Subscribe to MarketBeat All Access for the analyst's recommendation accuracy rating","Current_Price":"$307.34 -1.2%","Price_Target":"$400.00","Rating":"Outperform","Details":""},{"Company":"ABNB Airbnb","Action":"Initiated by","Brokerage":"CICC Research Subscribe to MarketBeat All Access for the firm's recommendation accuracy rating","Analyst":"","Current_Price":"$133.54 -0.1%","Price_Target":"$165.00","Rating":"Outperform","Details":""}]}],"meta":{"table_count":1,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns analyst ratings with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/analyst-ratings","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:47.472Z"}},"/v1/autocomplete":{"get":{"operationId":"mbfin_get_autocomplete","summary":"Autocomplete","parameters":[{"name":"q","in":"query","required":false,"schema":{"type":"string"},"example":"AAPL","description":"Query parameter `q`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_autocompleteResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"autocomplete","query":"AAPL","matches":[{"exchange":"NASDAQ","symbol":"AAPL","label":"Apple Inc.","category":"Companies"},{"exchange":"NASDAQ","symbol":"AAPB","label":"GraniteShares 2x Long AAPL Daily ETF","category":"Companies"},{"exchange":"BATS","symbol":"AAPW","label":"Roundhill AAPL WeeklyPay ETF","category":"Companies"}]}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns autocomplete with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/autocomplete?q=AAPL","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:47.833Z"}},"/v1/congress-trades":{"get":{"operationId":"mbfin_get_congress_trades","summary":"Congress trades","parameters":[{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_congress_tradesResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"congress_trades","tables":[{"row_count":200,"rows":[{"Member_of_Congress":"Christian D. Menefee House (D-TX)","Company":"PINS Pinterest","Current_Price":"$21.36 -1.1%","Trade_Data":"Sale $15,001 - $50,000","Date_Filed":"6/1/2026","Date_Traded":"5/28/2026","Price_After_Trade":"+3.3%"},{"Member_of_Congress":"Josh Gottheimer House (D-NJ)","Company":"ABT Abbott Laboratories","Current_Price":"$91.20 +0.5%","Trade_Data":"Sale $1,001 - $15,000","Date_Filed":"6/3/2026","Date_Traded":"5/27/2026","Price_After_Trade":"+6.4%"},{"Member_of_Congress":"Josh Gottheimer House (D-NJ)","Company":"INTU Intuit","Current_Price":"$296.76 -1.7%","Trade_Data":"Sale $1,001 - $15,000","Date_Filed":"6/3/2026","Date_Traded":"5/22/2026","Price_After_Trade":"-7.2%"}]}],"meta":{"table_count":1,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns congress trades with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/congress-trades","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:48.492Z"}},"/v1/dividend-yields":{"get":{"operationId":"mbfin_get_dividend_yields","summary":"Yields","tags":["Dividends"],"parameters":[{"name":"exchange","in":"query","required":false,"schema":{"type":"string"},"example":"NASDAQ","description":"Query parameter `exchange`."},{"name":"symbol","in":"query","required":false,"schema":{"type":"string"},"example":"AAPL","description":"Query parameter `symbol`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_dividend_yieldsResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"dividend_yields","symbol":"AAPL","exchange":"NASDAQ","rows":[{"ActualDate":"08/17/2023","Date":"08/15/2023","Period":"QUARTERLY","Yield":0.5,"col_4":null},{"ActualDate":"11/16/2023","Date":"11/15/2023","Period":"QUARTERLY","Yield":0.54,"col_4":null},{"ActualDate":"02/15/2024","Date":"02/15/2024","Period":"QUARTERLY","Yield":0.51,"col_4":null}],"meta":{"row_count":12,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns yields with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/dividend-yields?exchange=NASDAQ&symbol=AAPL","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:48.993Z"}},"/v1/dividends":{"get":{"operationId":"mbfin_get_dividends","summary":"History","tags":["Dividends"],"parameters":[{"name":"exchange","in":"query","schema":{"type":"string"}},{"name":"symbol","in":"query","schema":{"type":"string"}},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_dividendsResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"dividends","symbol":"AAPL","exchange":"NASDAQ","rows":[{"ActualDate":"08/17/2023","Date":"08/15/2023","Period":"QUARTERLY","Amount":0.24,"Currency":"$"},{"ActualDate":"11/16/2023","Date":"11/15/2023","Period":"QUARTERLY","Amount":0.24,"Currency":"$"},{"ActualDate":"02/15/2024","Date":"02/15/2024","Period":"QUARTERLY","Amount":0.24,"Currency":"$"}],"meta":{"row_count":12,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns history with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/dividends?exchange=NASDAQ&symbol=AAPL","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:49.306Z"}},"/v1/earnings-estimates":{"get":{"operationId":"mbfin_get_earnings_estimates","summary":"Estimates","tags":["Earnings"],"parameters":[{"name":"exchange","in":"query","required":false,"schema":{"type":"string"},"example":"NASDAQ","description":"Query parameter `exchange`."},{"name":"symbol","in":"query","required":false,"schema":{"type":"string"},"example":"MSFT","description":"Query parameter `symbol`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_earnings_estimatesResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"earnings_estimates","symbol":"MSFT","exchange":"NASDAQ","rows":[{"RowNumber":1,"Quarter":"Q2-23","QuarterDate":"5/15/2023","ActualEarningsDate":"5/15/2023","Currency":"$","MinEstimate":2.13,"MaxEstimate":2.76,"Average":2.33,"Actual":2.69,"AverageOrActual":2.69,"col_10":null},{"RowNumber":2,"Quarter":"Q3-23","QuarterDate":"8/15/2023","ActualEarningsDate":"8/15/2023","Currency":"$","MinEstimate":2.15,"MaxEstimate":2.52,"Average":2.25,"Actual":2.99,"AverageOrActual":2.99,"col_10":null},{"RowNumber":3,"Quarter":"Q4-23","QuarterDate":"11/15/2023","ActualEarningsDate":"11/15/2023","Currency":"$","MinEstimate":2.47,"MaxEstimate":2.73,"Average":2.56,"Actual":2.93,"AverageOrActual":2.93,"col_10":null}],"meta":{"row_count":18,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns estimates with event, estimate, and company fields from the upstream data shape.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/earnings-estimates?exchange=NASDAQ&symbol=MSFT","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:49.742Z"}},"/v1/earnings-revenue":{"get":{"operationId":"mbfin_get_earnings_revenue","summary":"Revenue","tags":["Earnings"],"parameters":[{"name":"exchange","in":"query","required":false,"schema":{"type":"string"},"example":"NASDAQ","description":"Query parameter `exchange`."},{"name":"symbol","in":"query","required":false,"schema":{"type":"string"},"example":"AAPL","description":"Query parameter `symbol`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_earnings_revenueResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"earnings_revenue","symbol":"AAPL","exchange":"NASDAQ","rows":[{"RowNumber":1,"Quarter":"Q1-23","QuarterDate":"2/15/2023","ActualEarningsDate":"2/15/2023","Currency":"$","Actual":94836000000,"Consensus":92840200000,"col_7":null},{"RowNumber":2,"Quarter":"Q2-23","QuarterDate":"5/15/2023","ActualEarningsDate":"5/15/2023","Currency":"$","Actual":81797000000,"Consensus":81794920000,"col_7":null},{"RowNumber":3,"Quarter":"Q3-23","QuarterDate":"8/15/2023","ActualEarningsDate":"8/15/2023","Currency":"$","Actual":89498000000,"Consensus":89343840000,"col_7":null}],"meta":{"row_count":12,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns revenue with event, estimate, and company fields from the upstream data shape.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/earnings-revenue?exchange=NASDAQ&symbol=AAPL","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:50.042Z"}},"/v1/fda-calendar":{"get":{"operationId":"mbfin_get_fda_calendar","summary":"FDA calendar","parameters":[{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_fda_calendarResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"fda_calendar","tables":[{"row_count":100,"rows":[{"Main_Company":"CLYM Climb Bio","Current_Price":"$10.55 -3.3%","30-Day_Price_Change":"-11.4%","Drug":"CLYM116 for IgAN","Status":"Phase 1","Event":"6/5/2026 - Data Climb Bio, Inc. announced translational pharmacometric modeling and initial Phase 1 safety data for&hellip; Full Summary"},{"Main_Company":"BCDA BioCardia","Current_Price":"$1.03 +12.1%","30-Day_Price_Change":"-5.5%","Drug":"CardiAMP Designed to be a comprehensive biotherapeutic heart failure solution","Status":"","Event":"6/5/2026 - FDA Meeting BioCardia®, Inc. announced receipt of FDA minutes from its Q-Sub Meeting with FDA Center for Biologi&hellip; Full Summary"},{"Main_Company":"PHAR Pharming Group","Current_Price":"$12.62 +1.2%","30-Day_Price_Change":"+5.1%","Drug":"Leniolisib Activated phosphoinositide 3-kinase delta (PI3Kδ) syndrome (APDS)","Status":"","Event":"6/4/2026 - FDA Accepted Pharming Group announced that the U.S. Food and Drug Administration (FDA) has accepted its resubmitt&hellip; Full Summary"}]}],"meta":{"table_count":1,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns FDA calendar with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/fda-calendar","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:50.886Z"}},"/v1/insider-trades":{"get":{"operationId":"mbfin_get_insider_trades","summary":"Insider trades","parameters":[{"name":"exchange","in":"query","required":false,"schema":{"type":"string"},"example":"NYSE","description":"Query parameter `exchange`."},{"name":"symbol","in":"query","required":false,"schema":{"type":"string"},"example":"JPM","description":"Query parameter `symbol`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_insider_tradesResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"insider_trades","symbol":"JPM","exchange":"NYSE","rows":[{"ActualDate":"04/01/2023","Date":"05/15/2023","AmountBought":0,"AmountSold":19858275,"Currency":"$"},{"ActualDate":"07/01/2023","Date":"08/15/2023","AmountBought":0,"AmountSold":1301706,"Currency":"$"},{"ActualDate":"10/01/2023","Date":"11/15/2023","AmountBought":0,"AmountSold":5158880,"Currency":"$"}],"meta":{"row_count":13,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns insider trades with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/insider-trades?exchange=NYSE&symbol=JPM","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:51.298Z"}},"/v1/marketbeat-trending":{"get":{"operationId":"mbfin_get_marketbeat_trending","summary":"Trending stocks","parameters":[{"name":"exchange","in":"query","required":false,"schema":{"type":"string"},"example":"NASDAQ","description":"Query parameter `exchange`."},{"name":"symbol","in":"query","required":false,"schema":{"type":"string"},"example":"AAPL","description":"Query parameter `symbol`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_marketbeat_trendingResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"marketbeat_trending","symbol":"AAPL","exchange":"NASDAQ","rows":[{"Date":"01/17/2026","NVDA":259,"MSFT":330,"MU":217,"AMZN":438,"AAPL":264},{"Date":"01/24/2026","NVDA":245,"MSFT":449,"MU":222,"AMZN":424,"AAPL":304},{"Date":"01/31/2026","NVDA":281,"MSFT":383,"MU":205,"AMZN":411,"AAPL":207}],"meta":{"row_count":20,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns trending stocks with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/marketbeat-trending?exchange=NASDAQ&symbol=AAPL","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:53.050Z"}},"/v1/media-mentions":{"get":{"operationId":"mbfin_get_media_mentions","summary":"Media mentions","tags":["News"],"parameters":[{"name":"exchange","in":"query","required":false,"schema":{"type":"string"},"example":"NASDAQ","description":"Query parameter `exchange`."},{"name":"symbol","in":"query","required":false,"schema":{"type":"string"},"example":"AAPL","description":"Query parameter `symbol`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_media_mentionsResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"media_mentions","symbol":"AAPL","exchange":"NASDAQ","rows":[{"Date":"01/17/2026","NVDA":1,"MOVE":1,"MSFT":7,"AMZN":3,"ON":2},{"Date":"01/24/2026","NVDA":2,"MOVE":7,"MSFT":18,"AMZN":6,"ON":0},{"Date":"01/31/2026","NVDA":1,"MOVE":1,"MSFT":2,"AMZN":20,"ON":0}],"meta":{"row_count":20,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns media mentions with headline, timestamp, symbol, and source fields where available.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/media-mentions?exchange=NASDAQ&symbol=AAPL","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:56.401Z"}},"/v1/news-sentiment":{"get":{"operationId":"mbfin_get_news_sentiment","summary":"Sentiment","tags":["News"],"parameters":[{"name":"exchange","in":"query","required":false,"schema":{"type":"string"},"example":"NASDAQ","description":"Query parameter `exchange`."},{"name":"symbol","in":"query","required":false,"schema":{"type":"string"},"example":"AAPL","description":"Query parameter `symbol`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_news_sentimentResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"news_sentiment","symbol":"AAPL","exchange":"NASDAQ","rows":[{"Date":"03/28/2026","VeryPositiveNews":0,"PositiveNews":0,"NeutralNews":0,"NegativeNews":0,"VeryNegativeNews":0,"TotalNews":0},{"Date":"04/04/2026","VeryPositiveNews":0,"PositiveNews":0,"NeutralNews":0,"NegativeNews":0,"VeryNegativeNews":0,"TotalNews":0},{"Date":"04/11/2026","VeryPositiveNews":0,"PositiveNews":0,"NeutralNews":0,"NegativeNews":0,"VeryNegativeNews":0,"TotalNews":0}],"meta":{"row_count":11,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns sentiment with headline, timestamp, symbol, and source fields where available.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/news-sentiment?exchange=NASDAQ&symbol=AAPL","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:56.734Z"}},"/v1/reddit-trending":{"get":{"operationId":"mbfin_get_reddit_trending","summary":"Reddit trending","parameters":[{"name":"exchange","in":"query","required":false,"schema":{"type":"string"},"example":"NASDAQ","description":"Query parameter `exchange`."},{"name":"symbol","in":"query","required":false,"schema":{"type":"string"},"example":"AAPL","description":"Query parameter `symbol`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_reddit_trendingResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"reddit_trending","symbol":"AAPL","exchange":"NASDAQ","rows":[{"Date":"01/09/2023","GME":2064,"CMSQF":205,"AMZN":85,"GOOG":58,"META":0},{"Date":"01/16/2023","GME":1713,"CMSQF":259,"AMZN":49,"GOOG":42,"META":3},{"Date":"01/23/2023","GME":594,"CMSQF":68,"AMZN":44,"GOOG":125,"META":16}],"meta":{"row_count":16,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns reddit trending with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/reddit-trending?exchange=NASDAQ&symbol=AAPL","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:58.937Z"}},"/v1/sec-filings":{"get":{"operationId":"mbfin_get_sec_filings","summary":"SEC filings","parameters":[{"name":"exchange","in":"query","required":false,"schema":{"type":"string"},"example":"NASDAQ","description":"Query parameter `exchange`."},{"name":"symbol","in":"query","required":false,"schema":{"type":"string"},"example":"AAPL","description":"Query parameter `symbol`."},{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_sec_filingsResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"sec_filings","symbol":"AAPL","exchange":"NASDAQ","rows":[{"ActualDate":"04/01/2023","Date":"02/15/2023","AmountBought":12754647602.8,"AmountSold":6833647284,"Currency":"$"},{"ActualDate":"07/01/2023","Date":"05/15/2023","AmountBought":13263796426.23,"AmountSold":8634420925.76,"Currency":"$"},{"ActualDate":"10/01/2023","Date":"08/15/2023","AmountBought":6783181830.75,"AmountSold":11186045926.77,"Currency":"$"}],"meta":{"row_count":13,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns SEC filings with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/sec-filings?exchange=NASDAQ&symbol=AAPL","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:36:59.382Z"}},"/v1/stock-buybacks":{"get":{"operationId":"mbfin_get_stock_buybacks","summary":"Stock buybacks","parameters":[{"name":"x-mbfin-contact","in":"header","required":false,"schema":{"type":"string","format":"email"},"description":"Optional contact email for higher public rate limits and support diagnostics."},{"name":"authorization","in":"header","required":false,"schema":{"type":"string","example":"Bearer <key>"},"description":"Optional API-key authorization for higher-volume access tiers."}],"security":[{},{"ContactEmail":[]},{"BearerAuth":[]},{"MbfinApiKey":[]}],"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/mbfin_get_stock_buybacksResponse"},"examples":{"live":{"summary":"Live response","value":{"contract":"stock_buybacks","tables":[{"row_count":202,"rows":[{"Company":"HERE Quantasing Group","Current_Price":"$1.78 -24.9%","Date":"6/5/2026","Percent_of_Shares":"","Buyback_Amount":"$0.00","Offer_Type":"Open Market","Buyback_Type":"","52-Week_Range":"$1.71 - $15.64","Indicator_s_":"News Coverage Gap Down High Trading Volume"},{"Company":"FCN FTI Consulting","Current_Price":"$159.76 +2.3%","Date":"6/5/2026","Percent_of_Shares":"7.9%","Buyback_Amount":"$370 million","Offer_Type":"Open Market","Buyback_Type":"Additional","52-Week_Range":"$140.84 - $189.30","Indicator_s_":"News Coverage Positive News Gap Up"},{"Company":"NU NU","Current_Price":"$11.97 -1.3%","Date":"6/4/2026","Percent_of_Shares":"","Buyback_Amount":"$0.00","Offer_Type":"Open Market","Buyback_Type":"","52-Week_Range":"$11.20 - $18.98","Indicator_s_":"Analyst Forecast Options Volume"}]}],"meta":{"table_count":1,"status":"ok"}}}}}}},"400":{"description":"Bad request. A required parameter is missing, malformed, or outside the supported range.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 400 error","value":{"ok":false,"error":{"code":"bad_request","message":"Required query parameter is missing or invalid."}}}}}}},"401":{"description":"Unauthorized. API-key authenticated tiers use an Authorization bearer token.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 401 error","value":{"ok":false,"error":{"code":"unauthorized","message":"A valid API key is required for this tier."}}}}}}},"404":{"description":"Not found. The requested route, resource, or symbol could not be resolved.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 404 error","value":{"ok":false,"error":{"code":"not_found","message":"The requested resource was not found."}}}}}}},"405":{"description":"Method not allowed. Source API routes are documented as HTTP GET unless otherwise specified.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 405 error","value":{"ok":false,"error":{"code":"method_not_allowed","message":"This route does not support the requested HTTP method."}}}}}}},"429":{"description":"Rate limited. Retry after the limit reset or include the documented contact/API-key headers.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 429 error","value":{"ok":false,"error":{"code":"rate_limited","message":"Too many requests. Retry after the rate-limit reset."}}}}}}},"502":{"description":"Upstream source error. The source service rejected or failed the upstream request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 502 error","value":{"ok":false,"error":{"code":"upstream_error","message":"The upstream source returned an error."}}}}}}},"503":{"description":"Service unavailable. The source API or an upstream dependency is temporarily unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 503 error","value":{"ok":false,"error":{"code":"service_unavailable","message":"The service is temporarily unavailable."}}}}}}},"504":{"description":"Upstream timeout. The upstream source did not return within the source API timeout window.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"},"examples":{"default":{"summary":"HTTP 504 error","value":{"ok":false,"error":{"code":"upstream_timeout","message":"The upstream source timed out."}}}}}}}},"description":"Returns stock buybacks with source-native fields and identifiers.","x-source-api":"mbfin","x-source-name":"MarketBeat","x-source-upstream":"marketbeat.com","x-docs-example-url":"https://api.mbfin.bluedoor.sh/v1/stock-buybacks","x-docs-example-status":200,"x-docs-captured-at":"2026-06-07T01:37:00.160Z"}}},"components":{"securitySchemes":{"ContactEmail":{"type":"apiKey","in":"header","name":"X-Mbfin-Contact"},"BearerAuth":{"type":"http","scheme":"bearer","description":"API keys are available by emailing sam@bluedoor.sh."},"MbfinApiKey":{"type":"apiKey","in":"header","name":"X-Mbfin-Key"}},"schemas":{"ErrorEnvelope":{"type":"object","additionalProperties":true,"properties":{"ok":{"type":"boolean","example":false},"error":{"type":"object","additionalProperties":true,"properties":{"code":{"type":"string"},"message":{"type":"string"}}},"meta":{"type":"object","additionalProperties":true}}},"mbfin_get_13f_holdingsResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"tables":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"Company":{"type":"string"},"Holdings_Value":{"type":"string"},"__of_Holdings":{"type":"string"},"Reporting_Period_End_Date":{"type":"string"},"Filing_Date":{"type":"string"},"View":{"type":"string"}},"required":["Company","Filing_Date","Holdings_Value","Reporting_Period_End_Date","View","__of_Holdings"]}}},"required":["row_count","rows"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"table_count":{"type":"integer"},"status":{"type":"string"}},"required":["status","table_count"]}},"required":["contract","meta","tables"]},"mbfin_get_analyst_ratingsResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"tables":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"Company":{"type":"string"},"Action":{"type":"string"},"Brokerage":{"type":"string"},"Analyst":{"type":"string"},"Current_Price":{"type":"string"},"Price_Target":{"type":"string"},"Rating":{"type":"string"},"Details":{"type":"string"}},"required":["Action","Analyst","Brokerage","Company","Current_Price","Details","Price_Target","Rating"]}}},"required":["row_count","rows"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"table_count":{"type":"integer"},"status":{"type":"string"}},"required":["status","table_count"]}},"required":["contract","meta","tables"]},"mbfin_get_autocompleteResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"query":{"type":"string"},"matches":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"exchange":{"type":"string"},"symbol":{"type":"string"},"label":{"type":"string"},"category":{"type":"string"}},"required":["category","exchange","label","symbol"]}}},"required":["contract","matches","query"]},"mbfin_get_congress_tradesResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"tables":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"Member_of_Congress":{"type":"string"},"Company":{"type":"string"},"Current_Price":{"type":"string"},"Trade_Data":{"type":"string"},"Date_Filed":{"type":"string"},"Date_Traded":{"type":"string"},"Price_After_Trade":{"type":"string"}},"required":["Company","Current_Price","Date_Filed","Date_Traded","Member_of_Congress","Price_After_Trade","Trade_Data"]}}},"required":["row_count","rows"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"table_count":{"type":"integer"},"status":{"type":"string"}},"required":["status","table_count"]}},"required":["contract","meta","tables"]},"mbfin_get_dividend_yieldsResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"ActualDate":{"type":"string"},"Date":{"type":"string"},"Period":{"type":"string"},"Yield":{"type":"number"},"col_4":{"nullable":true}},"required":["ActualDate","Date","Period","Yield","col_4"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_dividendsResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"ActualDate":{"type":"string"},"Date":{"type":"string"},"Period":{"type":"string"},"Amount":{"type":"number"},"Currency":{"type":"string"}},"required":["ActualDate","Amount","Currency","Date","Period"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_earnings_estimatesResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"RowNumber":{"type":"integer"},"Quarter":{"type":"string"},"QuarterDate":{"type":"string"},"ActualEarningsDate":{"oneOf":[{"type":"string"},{"nullable":true}]},"Currency":{"type":"string"},"MinEstimate":{"type":"number"},"MaxEstimate":{"type":"number"},"Average":{"type":"number"},"Actual":{"oneOf":[{"type":"number"},{"nullable":true}]},"AverageOrActual":{"type":"number"},"col_10":{"nullable":true}},"required":["Actual","ActualEarningsDate","Average","AverageOrActual","Currency","MaxEstimate","MinEstimate","Quarter","QuarterDate","RowNumber","col_10"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_earnings_revenueResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"RowNumber":{"type":"integer"},"Quarter":{"type":"string"},"QuarterDate":{"type":"string"},"ActualEarningsDate":{"type":"string"},"Currency":{"type":"string"},"Actual":{"type":"integer"},"Consensus":{"type":"integer"},"col_7":{"nullable":true}},"required":["Actual","ActualEarningsDate","Consensus","Currency","Quarter","QuarterDate","RowNumber","col_7"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_fda_calendarResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"tables":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"Main_Company":{"type":"string"},"Current_Price":{"type":"string"},"30-Day_Price_Change":{"type":"string"},"Drug":{"type":"string"},"Status":{"type":"string"},"Event":{"type":"string"}},"required":["30-Day_Price_Change","Current_Price","Drug","Event","Main_Company","Status"]}}},"required":["row_count","rows"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"table_count":{"type":"integer"},"status":{"type":"string"}},"required":["status","table_count"]}},"required":["contract","meta","tables"]},"mbfin_get_insider_tradesResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"ActualDate":{"type":"string"},"Date":{"type":"string"},"AmountBought":{"type":"integer"},"AmountSold":{"type":"integer"},"Currency":{"type":"string"}},"required":["ActualDate","AmountBought","AmountSold","Currency","Date"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_marketbeat_trendingResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"Date":{"type":"string"},"NVDA":{"type":"integer"},"MSFT":{"type":"integer"},"MU":{"type":"integer"},"AMZN":{"type":"integer"},"AAPL":{"type":"integer"}},"required":["AAPL","AMZN","Date","MSFT","MU","NVDA"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_media_mentionsResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"Date":{"type":"string"},"NVDA":{"type":"integer"},"MOVE":{"type":"integer"},"MSFT":{"type":"integer"},"AMZN":{"type":"integer"},"ON":{"type":"integer"}},"required":["AMZN","Date","MOVE","MSFT","NVDA","ON"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_news_sentimentResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"Date":{"type":"string"},"VeryPositiveNews":{"type":"integer"},"PositiveNews":{"type":"integer"},"NeutralNews":{"type":"integer"},"NegativeNews":{"type":"integer"},"VeryNegativeNews":{"type":"integer"},"TotalNews":{"type":"integer"}},"required":["Date","NegativeNews","NeutralNews","PositiveNews","TotalNews","VeryNegativeNews","VeryPositiveNews"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_reddit_trendingResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"Date":{"type":"string"},"GME":{"type":"integer"},"CMSQF":{"type":"integer"},"AMZN":{"type":"integer"},"GOOG":{"type":"integer"},"META":{"type":"integer"}},"required":["AMZN","CMSQF","Date","GME","GOOG","META"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_sec_filingsResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"symbol":{"type":"string"},"exchange":{"type":"string"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"ActualDate":{"type":"string"},"Date":{"type":"string"},"AmountBought":{"oneOf":[{"type":"number"},{"type":"integer"}]},"AmountSold":{"oneOf":[{"type":"integer"},{"type":"number"}]},"Currency":{"type":"string"}},"required":["ActualDate","AmountBought","AmountSold","Currency","Date"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"status":{"type":"string"}},"required":["row_count","status"]}},"required":["contract","exchange","meta","rows","symbol"]},"mbfin_get_stock_buybacksResponse":{"type":"object","additionalProperties":true,"properties":{"contract":{"type":"string"},"tables":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"row_count":{"type":"integer"},"rows":{"type":"array","items":{"type":"object","additionalProperties":true,"properties":{"Company":{"type":"string"},"Current_Price":{"type":"string"},"Date":{"type":"string"},"Percent_of_Shares":{"type":"string"},"Buyback_Amount":{"type":"string"},"Offer_Type":{"type":"string"},"Buyback_Type":{"type":"string"},"52-Week_Range":{"type":"string"},"Indicator_s_":{"type":"string"}},"required":["52-Week_Range","Buyback_Amount","Buyback_Type","Company","Current_Price","Date","Indicator_s_","Offer_Type","Percent_of_Shares"]}}},"required":["row_count","rows"]}},"meta":{"type":"object","additionalProperties":true,"properties":{"table_count":{"type":"integer"},"status":{"type":"string"}},"required":["status","table_count"]}},"required":["contract","meta","tables"]}}},"x-generated-at":"2026-06-07T01:36:46.154Z","x-source-api":"mbfin","x-source-base-url":"https://api.mbfin.bluedoor.sh"}