A competitor signal entity
Type-specific fields on BaseNode
observed_atstringISO date-time the move was observed. @example "2026-06-10"
signal_typeenumKind of move. `feature_launch` = shipped a feature. `pricing_change` = a plan or tier change. `acquisition` / `partnership` / `market_entry` = strategic moves.
summarystringOne-line factual summary of the move (what shipped, not marketing copy).
impactenumExpected impact on our position.
last_updatedstringProvenance: ISO date-time this record was last observed or refreshed. @example "2026-06-13"
sourcestringProvenance: where this was observed. A changelog, pricing, or docs URL, an analyst report, or a research note. @example "https://www.contentful.com/changelog/"
confidenceassessmentProvenance: how sure we are, on the canonical confidence_5 scale. Carries both a numeric value and a high / medium / low label.
observed_bystringProvenance: agent or routine id that last wrote this. Absent when hand-authored, the signal that a human (not a poller) is the last writer. @example "competitor-watch-agent"
idstringrequiredUnique identifier (UUID)
typeNodeTyperequiredDiscriminator for the entity type
titlestringrequiredDisplay name
descriptionstringOptional detailed description
statusstringLifecycle status
tagsstring[]Freeform tags for filtering
3 edge types connected to this entity.
competitor_emits_competitor_signalcompetitor_signal_maps_to_featurecompetitor_signal_surfaces_opportunity