{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/bigdata/main/json-schema/bigdata-public-get-holdings-overview-response-schema.json", "title": "PublicGetHoldingsOverviewResponse", "x-generated": "2026-10-20", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/bigdata-structured_data.json#/components/schemas/PublicGetHoldingsOverviewResponse", "properties": { "results": { "anyOf": [ { "$ref": "#/$defs/PublicGetHoldingsOverviewResult" }, { "$ref": "#/$defs/EmptyResponse" } ], "title": "Results" }, "errors": { "anyOf": [ { "items": { "$ref": "#/$defs/ErrorDetail" }, "type": "array" }, { "type": "null" } ], "title": "Errors" }, "metadata": { "$ref": "#/$defs/PublicHoldingsRequestMetadata" }, "sources": { "items": { "$ref": "#/$defs/Source" }, "type": "array", "title": "Sources", "description": "The content catalog sources the response was built from, one entry per source. Empty when no catalog source contributed." }, "usage": { "anyOf": [ { "$ref": "#/$defs/Usage" }, { "type": "null" } ], "description": "Tokens the request consumed, per content tier. Present only for API keys billed in tokens." } }, "type": "object", "required": [ "results", "metadata" ], "$defs": { "EmptyResponse": { "properties": {}, "type": "object", "title": "EmptyResponse" }, "ErrorDetail": { "properties": { "message": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Message" } }, "type": "object", "title": "ErrorDetail" }, "HoldingStatus": { "type": "string", "enum": [ "new", "increased", "maintained", "reduced", "closed" ], "title": "HoldingStatus" }, "PublicGetHoldingsOverviewResult": { "properties": { "holdings": { "items": { "$ref": "#/$defs/PublicHolding" }, "type": "array", "title": "Holdings", "description": "List of holdings in the portfolio." }, "quarter_return": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Quarter Return", "description": "The quarter return percentage." }, "aum": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Aum", "description": "Assets under management." }, "aum_last": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Aum Last", "description": "Assets under management in the last period." }, "aum_change": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Aum Change", "description": "Change in assets under management." }, "aum_change_percent": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Aum Change Percent", "description": "Percentage change in assets under management." }, "aum_top_10": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Aum Top 10", "description": "Assets under management in top 10 holdings." }, "aum_top_10_as_percent_of_aum": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Aum Top 10 As Percent Of Aum", "description": "Top 10 holdings as percentage of total AUM." }, "capital_flow": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Capital Flow", "description": "Capital flow amount." }, "capital_flow_as_percent_of_aum": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Capital Flow As Percent Of Aum", "description": "Capital flow as percentage of AUM." }, "etfs_percent": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Etfs Percent", "description": "Percentage of portfolio in ETFs." }, "turnover_percent": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Turnover Percent", "description": "Portfolio turnover percentage." }, "holdings_count": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Holdings Count", "description": "Number of holdings." }, "holdings_last": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Holdings Last", "description": "Number of holdings in the last period." }, "holdings_change": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Holdings Change", "description": "Change in number of holdings." }, "new_positions": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "New Positions", "description": "Number of new positions." }, "new_positions_last": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "New Positions Last", "description": "Number of new positions in the last period." }, "new_positions_change": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "New Positions Change", "description": "Change in number of new positions." }, "closed_positions": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Closed Positions", "description": "Number of closed positions." }, "closed_positions_last": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Closed Positions Last", "description": "Number of closed positions in the last period." }, "closed_positions_change": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Closed Positions Change", "description": "Change in number of closed positions." }, "increased_positions": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Increased Positions", "description": "Number of increased positions." }, "increased_positions_last": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Increased Positions Last", "description": "Number of increased positions in the last period." }, "increased_positions_change": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Increased Positions Change", "description": "Change in number of increased positions." }, "reduced_positions": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Reduced Positions", "description": "Number of reduced positions." }, "reduced_positions_last": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Reduced Positions Last", "description": "Number of reduced positions in the last period." }, "reduced_positions_change": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Reduced Positions Change", "description": "Change in number of reduced positions." }, "sector_composition": { "anyOf": [ { "items": { "$ref": "#/$defs/PublicSectorComposition" }, "type": "array" }, { "type": "null" } ], "title": "Sector Composition", "description": "Sector composition breakdown of the portfolio." }, "top_transactions": { "anyOf": [ { "$ref": "#/$defs/PublicTopTransactions" }, { "type": "null" } ], "description": "Top buys and sells transactions for the portfolio." } }, "type": "object", "required": [ "holdings" ], "title": "PublicGetHoldingsOverviewResult", "description": "Result object containing holdings list and portfolio summary data." }, "PublicHolding": { "properties": { "rank": { "type": "integer", "title": "Rank", "description": "The rank of the holding in the portfolio." }, "rp_entity_id": { "anyOf": [ { "type": "string", "maxLength": 6, "minLength": 6 }, { "type": "null" } ], "title": "Rp Entity Id", "description": "RavenPack's internal entity identifier for the stock." }, "ticker": { "type": "string", "title": "Ticker", "description": "The ticker symbol of the stock." }, "name": { "type": "string", "title": "Name", "description": "The name of the stock." }, "active": { "type": "boolean", "title": "Active", "description": "Whether the stock is active." }, "market_value": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Market Value", "description": "The market value of the holding." }, "status": { "$ref": "#/$defs/HoldingStatus", "description": "The status of the holding." }, "portfolio_weight": { "type": "number", "title": "Portfolio Weight", "description": "The portfolio weight of the holding.", "default": 0 }, "shares": { "anyOf": [ { "type": "integer" }, { "type": "number" }, { "type": "null" } ], "title": "Shares", "description": "The number of shares held." }, "shares_last": { "anyOf": [ { "type": "integer" }, { "type": "number" }, { "type": "null" } ], "title": "Shares Last", "description": "The number of shares held in the last period." }, "shares_change": { "anyOf": [ { "type": "integer" }, { "type": "number" }, { "type": "null" } ], "title": "Shares Change", "description": "The change in the number of shares held." }, "shares_change_percent": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Shares Change Percent", "description": "The percentage change in the number of shares held." }, "capital_flow": { "anyOf": [ { "type": "integer" }, { "type": "number" }, { "type": "null" } ], "title": "Capital Flow", "description": "The capital flow of the holding." } }, "type": "object", "required": [ "rank", "rp_entity_id", "ticker", "name", "active", "status" ], "title": "PublicHolding", "description": "Model for a single holding in the portfolio." }, "PublicHoldingsRequestMetadata": { "properties": { "request_id": { "type": "string", "title": "Request Id" }, "timestamp": { "type": "string", "title": "Timestamp" }, "rp_entity_id": { "anyOf": [ { "type": "string", "maxLength": 6, "minLength": 6, "description": "Bigdata uses the RavenPack Entity identifier (RP_Entity_ID) to uniquely reference entities such as companies. This identifier is a 6-character alphanumeric code (letters and numbers only). Example: Alphabet Inc. (`4A6F00`)" }, { "type": "null" } ], "title": "Rp Entity Id" }, "fund_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Fund Name" }, "fiscal_year": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Fiscal Year" }, "fiscal_quarter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Fiscal Quarter" } }, "type": "object", "required": [ "request_id" ], "title": "PublicHoldingsRequestMetadata", "description": "Metadata for the request. Includes the backend request." }, "PublicSectorComposition": { "properties": { "sector": { "additionalProperties": { "type": "string" }, "type": "object", "title": "Sector" }, "percent": { "type": "number", "title": "Percent" } }, "type": "object", "required": [ "sector", "percent" ], "title": "PublicSectorComposition" }, "PublicTopTransactions": { "properties": { "buys": { "items": { "$ref": "#/$defs/PublicHolding" }, "type": "array", "title": "Buys", "description": "List of top buys." }, "sells": { "items": { "$ref": "#/$defs/PublicHolding" }, "type": "array", "title": "Sells", "description": "List of top sells." } }, "type": "object", "required": [ "buys", "sells" ], "title": "PublicTopTransactions", "description": "Model for top buys and sells transactions." }, "Source": { "properties": { "id": { "type": "string", "title": "Id", "description": "Content catalog identifier of the source." }, "name": { "type": "string", "title": "Name", "description": "Catalog name of the dataset the data came from." } }, "type": "object", "required": [ "id", "name" ], "title": "Source", "description": "A content catalog source that contributed data to a structured-data response." }, "Usage": { "additionalProperties": { "type": "integer" }, "type": "object", "title": "Usage", "description": "Public structured-data usage for a request, aggregated per content tier.\n\nA flat object keyed per content tier, where each key is derived from the\ncontent tier identifier by dropping the ``content-`` prefix and appending\n``_tokens`` (e.g. ``corporate-fundamentals`` ->\n``corporate_fundamentals_tokens``). It is sparse: only tiers with non-zero\ntokens appear, and an absent key means zero tokens for that tier." } } }