{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/bigdata/json-schema/bigdata-time-series-sentiment-response-schema.json",
  "title": "TimeSeriesSentimentResponse",
  "description": "Public API response for time series sentiment query.",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/bigdata-market-data-api-openapi.yml#/components/schemas/TimeSeriesSentimentResponse",
  "properties": {
    "results": {
      "$ref": "#/$defs/TimeSeriesSentimentResults",
      "description": "Sentiment time series results"
    },
    "errors": {
      "items": {
        "$ref": "#/$defs/ErrorDetail"
      },
      "type": "array",
      "title": "Errors",
      "description": "List of errors encountered while fetching data."
    },
    "metadata": {
      "$ref": "#/$defs/Metadata",
      "description": "Request metadata including request ID and timestamp."
    },
    "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": {
    "ErrorDetail": {
      "properties": {
        "message": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Message"
        }
      },
      "type": "object",
      "title": "ErrorDetail"
    },
    "Metadata": {
      "properties": {
        "request_id": {
          "type": "string",
          "title": "Request Id"
        },
        "timestamp": {
          "type": "string",
          "title": "Timestamp"
        }
      },
      "type": "object",
      "required": [
        "request_id"
      ],
      "title": "Metadata"
    },
    "SentimentDataPoint": {
      "properties": {
        "date": {
          "type": "string",
          "title": "Date",
          "description": "Date in YYYY-MM-DD format"
        },
        "daily_sentiment": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "title": "Daily Sentiment",
          "description": "The daily mean event sentiment represents the weighted average sentiment of all events detected on the same day for a given entity. Each event's sentiment is weighted by its relevance and novelty using a quadratic function. The sentiment score ranges from -1 (negative sentiment) to 1 (positive sentiment). This sentiment is enhanced by considering the entity sentiment from documents without events. Sentiment from subsidiaries is also added at parent level. Use-case: Captures the overall tone of news and events for a company on a given day, ranging from very negative to very positive."
        },
        "sentiment_pressure": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sentiment Pressure",
          "description": "The Z-score of the 90-days moving average of the daily sentiment normalized to [-1,1] using a sigmoid function. Absolute values over 0.9 can be considered abnormal, which approximately matches 3 standard deviations. A year is considered for z-standardization. Use-case: Measures how sentiment over the last 90 days compares to recent history, highlighting unusually strong positive or negative sentiment trends."
        },
        "abnormal_media_attention": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "title": "Abnormal Media Attention",
          "description": "The Z-score of the daily volume of media events for a company normalized to [-1,1] using a sigmoid function, indicating abnormal media attention. Absolute values over 0.9 can be considered abnormal, which approximately matches 3 standard deviations. Use-case: Indicates whether a company is receiving more or less media attention than usual, based on recent trends."
        }
      },
      "type": "object",
      "required": [
        "date"
      ],
      "title": "SentimentDataPoint",
      "description": "Individual sentiment data for a specific date."
    },
    "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."
    },
    "TimeSeriesSentimentResults": {
      "properties": {
        "name": {
          "type": "string",
          "title": "Name",
          "description": "Company name"
        },
        "id": {
          "type": "string",
          "title": "Id",
          "description": "RP entity identifier"
        },
        "values": {
          "items": {
            "$ref": "#/$defs/SentimentDataPoint"
          },
          "type": "array",
          "title": "Values",
          "description": "List of sentiment data points"
        }
      },
      "type": "object",
      "required": [
        "name",
        "id",
        "values"
      ],
      "title": "TimeSeriesSentimentResults",
      "description": "Results container for time series sentiment data."
    },
    "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."
    }
  }
}