Match Signals
This endpoint allows you to retrieve derived esports match signals generated from collected source items.
Current signal types emitted by the fresh rule-based extractor are injury_news, discipline_news, lineup_news, and availability_news.
entity_type is currently team or match. market_direction is populated when a team-scoped positive or negative signal implies a home or away edge.
Filtering: This endpoint uses PostgREST filter syntax such as
eq.,gte.,lte., andorder=impact_score.desc.
Pagination: Use
offsetandlimitto page through signal rows.
Update Period: The endpoint is refreshed whenever the esports signals sync derives signals from fresh source items.
Recommended Calls: Filter by match_id, league_id, or signal_type and sort by impact_score or confidence_score.
Use Cases
Get high-confidence signals for a specific match_idhttps://signals.sportmicro.com/esports_match_signals?match_id=eq.{match_id}&confidence_score=gte.0.70&order=impact_score.desc
Get signals from a specific league_id and signal_typehttps://signals.sportmicro.com/esports_match_signals?league_id=eq.{league_id}&signal_type=eq.{signal_type}&limit=20
Query Parameters
- match_id string
The string match id from the sport-specific matches table.
Example: eq.500001 - league_id string
The league id attached to the derived signal.
Example: eq.560 - source_item_id string
The UUID of the source item that produced the signal.
Example: eq.fec726f0-715e-32af-7d38-d89dc3546400 - signal_type string
The derived signal type.
Example: eq.lineup_news - entity_type string
The scoped entity type emitted by the extractor.
Example: eq.team - entity_id string
The scoped entity id emitted by the extractor.
Example: eq.701 - market_direction string
The implied market direction when available.
Example: eq.home - sentiment string
The derived sentiment.
Example: eq.positive - confidence_score string
A PostgREST numeric filter, for example
gte.0.70.Example: gte.0.70 - order string
Sorting instruction such as
impact_score.desc.Example: impact_score.desc - offset string
Pagination offset.
Example: 0 - limit string
Pagination limit.
Example: 20
- 200
- application/json
- Schema
- Example (from schema)
Schema array
- id uuid
The UUID of the signal row.
- source_item_id uuid
The UUID of the source item that produced this signal.
- match_id text
The string match id from the sport-specific matches table.
- league_id bigint
The league id attached to the derived signal.
- signal_type text
The derived signal type.
- entity_type text
The scoped entity type emitted by the extractor.
- entity_id text
The scoped entity id emitted by the extractor.
- sentiment text
The derived sentiment.
- sentiment_score numeric(5,2)
Signed sentiment score derived from the signal.
- impact_score numeric(5,2)
Impact score derived from matched keywords.
- confidence_score numeric(5,2)
Confidence score derived from context strength.
- market_direction text
The implied home or away edge when a team-scoped signal suggests one.
- summary text
Human-readable signal summary.
- reason text
Human-readable reason containing matched keywords.
- tags jsonb
Keyword and context tags stored as JSON.
- metadata jsonb
Extractor metadata stored as JSON.
- created_at timestamp with time zone
The row creation timestamp.
- updated_at timestamp with time zone
The row update timestamp.
[
{
"id": "4dc16634-e438-8054-6cdd-8aa8ef7072dc",
"source_item_id": "fec726f0-715e-32af-7d38-d89dc3546400",
"match_id": "500001",
"league_id": 560,
"signal_type": "lineup_news",
"entity_type": "team",
"entity_id": "701",
"sentiment": "positive",
"sentiment_score": 0.68,
"impact_score": 0.68,
"confidence_score": 0.85,
"market_direction": "home",
"summary": "lineup news (positive) for T1 ahead of T1 vs Gen.G via @LCK",
"reason": "Matched keywords: starting five",
"tags": [
"starting_five",
"home_team"
],
"metadata": {
"source": "x",
"extractor": "rule-based-v1",
"search_query": "T1 Gen.G lineup update",
"matched_keywords": [
"starting five"
],
"strong_keywords": [
"starting five"
],
"source_url": "https://x.com/LCK/status/1919412345678901234",
"source_external_id": "1919412345678901234",
"author_handle": "LCK"
},
"created_at": "2026-05-08T14:35:21+00:00",
"updated_at": "2026-05-08T14:35:21+00:00"
}
]
Common filters
match_id=eq.{match_id}league_id=eq.{league_id}signal_type=eq.{signal_type}entity_type=eq.{entity_type}entity_id=eq.{entity_id}sentiment=eq.{sentiment}confidence_score=gte.{score}order=impact_score.desc
Current signal types
injury_newsdiscipline_newslineup_newsavailability_news
Notes
source_item_idjoins back tosignals.esports_source_items.id.metadata.extractoris currentlyrule-based-v1.market_directionis set when a team-scoped positive or negative signal implies a home or away edge and is otherwisenull.