Labor-dispute reputation watch
Notify communications when a confirmed company or subsidiary entity receives new labor-dispute coverage.
criteria.search is semantic content matching; company names are resolved separately to terminal entity IDs. A coverage match does not prove the company caused, led, or was materially affected by the dispute. The Monitor does not score sentiment; tone and Share of Voice are separate QU-backed follow-up calls. volume_spike is deferred; the public trigger is new_matches.
GET /api/v2/search?q=Apple%20Inc&type=organization&limit=10
# Present candidates and replace $apple only after selection.
GET /api/v2/search?q=Beats%20Electronics&type=organization&limit=10
# Present candidates and replace $beats only after selection.
GET /api/v2/search?q=Claris%20International&type=organization&limit=10
# Present candidates and replace $claris only after selection.
POST /api/v2/monitors # specification 1 of 1
{
"name": "Company labor-dispute coverage",
"description": "Coverage intake across one confirmed parent/subsidiary set, narrowed to labor disputes.",
"subject": {
"type": "entity",
"entity_ids": [
"$apple",
"$beats",
"$claris"
],
"match": "coverage"
},
"criteria": {
"data": "events_and_stories",
"search": "labor dispute, strike, union action, worker protest",
"countries": [],
"family_filters": {
"cameoplus": {
"domains": [
"ECONOMIC",
"DEMOGRAPHIC"
],
"subcategories": []
},
"conflict": {
"categories": [
"Protests"
],
"subcategories": []
},
"story": {
"categories": [
"cameoplus_economic",
"cameoplus_demographic"
]
}
},
"fatalities_only": false,
"collapse_duplicates": true
},
"trigger": {
"type": "new_matches"
},
"schedule": {
"cadence": "daily",
"timezone": "America/Los_Angeles",
"daily_hour": 8
},
"delivery": {
"email": true
}
}Expected notification result
Email summarizes the same run. Signed webhooks use this typed Constitution fixture; total, included, and truncation are explicit.
[
{
"name": "story",
"payload": {
"schema_version": "1",
"id": "evt_demo_story_001",
"type": "monitor.triggered",
"created_at": "2026-08-24T12:00:00.000Z",
"monitor": {
"id": "mon_demo_company",
"name": "Company coverage watch"
},
"run": {
"id": "run_demo_story_001",
"scheduled_for": "2026-08-24T12:00:00.000Z",
"window_start": "2026-08-24T11:00:00.000Z",
"window_end": "2026-08-24T12:00:00.000Z",
"cadence": "hourly"
},
"trigger": {
"type": "new_matches",
"total_matches": 1,
"included_matches": 1,
"truncated": false,
"next_cursor": "eyJvIjowfQ"
},
"data": {
"matches": [
{
"kind": "story",
"item": {
"id": "story-demo-002",
"url": "https://example.com/stories/story-demo-002",
"title": "Manufacturer announces a new regional facility",
"story_date": "2026-08-24",
"updated_at": "2026-08-24T11:05:00.000Z",
"processed_at": "2026-08-24T11:05:00.000Z",
"category": "Economy and business",
"category_code": "economy_business",
"subcategory": null,
"geo": {
"country": "Germany",
"region": "Western Europe",
"continent": "Europe",
"admin1": "Saxony",
"location": "Dresden",
"latitude": 51.0504,
"longitude": 13.7373,
"geo_precision": 1,
"geo_precision_label": "city"
},
"geo_provenance": null,
"geo_context": {
"location_country": "Germany",
"actor_origin_countries": [
"Germany"
]
},
"metrics": {
"significance": 0.57,
"article_count": 6,
"linked_event_count": 0,
"max_linked_event_significance": 0,
"civilian_targeting_event_count": 0
},
"has_events": false,
"has_fatalities": null,
"has_civilian_targeting": false,
"fatalities": null,
"linked_events": [],
"entity_refs": [
{
"id": "e_demo_manufacturer",
"name": "Example Manufacturer"
}
],
"matched_categories": [],
"top_articles": [
{
"url": "https://example.com/news/demo-story-002",
"title": "Manufacturer plans regional facility",
"domain": "example.com",
"rank": 1
}
],
"language_breakdown": [
{
"language": "English",
"count": 4
},
{
"language": "German",
"count": 2
}
],
"top_language": "English",
"search_score": null
}
}
]
},
"links": {
"monitor": "https://gdeltcloud.com/monitors/mon_demo_company",
"run": "https://gdeltcloud.com/monitors/mon_demo_company/runs/run_demo_story_001",
"matches": "https://gdeltcloud.com/api/v2/monitors/mon_demo_company/runs/run_demo_story_001/matches"
}
}
},
{
"name": "mixed",
"payload": {
"schema_version": "1",
"id": "evt_demo_mixed_001",
"type": "monitor.triggered",
"created_at": "2026-08-24T12:00:00.000Z",
"monitor": {
"id": "mon_demo_region",
"name": "Regional risk watch"
},
"run": {
"id": "run_demo_mixed_001",
"scheduled_for": "2026-08-24T12:00:00.000Z",
"window_start": "2026-08-24T11:00:00.000Z",
"window_end": "2026-08-24T12:00:00.000Z",
"cadence": "hourly"
},
"trigger": {
"type": "new_matches",
"total_matches": 2,
"included_matches": 2,
"truncated": false,
"next_cursor": "eyJvIjowfQ"
},
"data": {
"matches": [
{
"kind": "event",
"family": "cameoplus",
"item": {
"id": "cameoplus:demo-event-003",
"url": null,
"primary_story_url": null,
"family": "cameoplus",
"title": "Regulator opens a formal inquiry",
"title_source": "coder_title",
"summary": null,
"event_date": "2026-08-24",
"observed_at": null,
"event_date_basis": "publication_day_inference",
"event_date_evidence": null,
"coded_at": "2026-08-24T11:00:00.000Z",
"updated_at": "2026-08-24T11:00:00.000Z",
"processed_at": "2026-08-24T11:00:00.000Z",
"category": "Legal and regulatory",
"subcategory": "LR01",
"subcategory_label": "Regulatory Action",
"taxonomy_status": "coded",
"domain": "LEGAL",
"event_code": "LR01",
"geo": {
"country": "Singapore",
"region": "South-eastern Asia",
"continent": "Asia",
"admin1": null,
"location": "Singapore",
"latitude": 1.3521,
"longitude": 103.8198,
"geo_precision": 1,
"geo_precision_label": "city"
},
"geo_context": {
"location_country": "Singapore",
"actor_origin_countries": [
"Singapore"
]
},
"actors": [
{
"name": "Regulator",
"country": "Singapore",
"role": "source",
"primary": true
},
{
"name": "Operator",
"country": null,
"role": "target",
"primary": true
}
],
"metrics": {
"significance": 0.66,
"severity_tier": "moderate",
"goldstein_scale": null,
"magnitude": 0.5,
"systemic_importance": 0.59,
"propagation_potential": 0.46,
"market_sensitivity": 0.63,
"confidence": 0.9,
"article_count": 3,
"evidence_source_count": 2,
"supporting_story_count": 1
},
"has_fatalities": null,
"fatalities": null,
"fatalities_basis": null,
"fatalities_corroboration": null,
"fatalities_evidence": null,
"fatalities_supporting_source_count": null,
"injured": null,
"civilians_killed": null,
"civilians_injured": null,
"civilian_targeting": null,
"civilian_targeting_label": null,
"story_refs": [],
"entity_refs": [],
"top_articles": [],
"language_breakdown": [],
"top_language": null,
"search_score": null,
"incident": {
"uid": "cameoplus:demo-event-003",
"resolution": "unadjudicated",
"confidence": null
}
}
},
{
"kind": "story",
"item": {
"id": "story-demo-003",
"url": null,
"title": "Industry groups respond to inquiry",
"story_date": "2026-08-24",
"updated_at": "2026-08-24T11:10:00.000Z",
"processed_at": "2026-08-24T11:10:00.000Z",
"category": "Economy and business",
"category_code": "economy_business",
"subcategory": null,
"geo": {
"country": "Singapore",
"region": "South-eastern Asia",
"continent": "Asia",
"admin1": null,
"location": "Singapore",
"latitude": 1.3521,
"longitude": 103.8198,
"geo_precision": 1,
"geo_precision_label": "city"
},
"geo_provenance": null,
"geo_context": {
"location_country": "Singapore",
"actor_origin_countries": [
"Singapore"
]
},
"metrics": {
"significance": 0.51,
"article_count": 5,
"linked_event_count": 1,
"max_linked_event_significance": 0.66,
"civilian_targeting_event_count": 0
},
"has_events": true,
"has_fatalities": null,
"has_civilian_targeting": false,
"fatalities": null,
"linked_events": [
{
"id": "cameoplus:demo-event-003",
"title": "Regulator opens a formal inquiry"
}
],
"entity_refs": [],
"matched_categories": [
{
"code": "LEGAL",
"label": "Legal and regulatory"
}
],
"top_articles": [],
"language_breakdown": [],
"top_language": null,
"search_score": null
}
}
]
},
"links": {
"monitor": "https://gdeltcloud.com/monitors/mon_demo_region",
"run": "https://gdeltcloud.com/monitors/mon_demo_region/runs/run_demo_mixed_001",
"matches": "https://gdeltcloud.com/api/v2/monitors/mon_demo_region/runs/run_demo_mixed_001/matches"
}
}
},
{
"name": "truncated",
"payload": {
"schema_version": "1",
"id": "evt_demo_truncated_001",
"type": "monitor.triggered",
"created_at": "2026-08-24T12:00:00.000Z",
"monitor": {
"id": "mon_demo_high_volume",
"name": "High-volume country watch"
},
"run": {
"id": "run_demo_truncated_001",
"scheduled_for": "2026-08-24T12:00:00.000Z",
"window_start": "2026-08-24T11:00:00.000Z",
"window_end": "2026-08-24T12:00:00.000Z",
"cadence": "hourly"
},
"trigger": {
"type": "new_matches",
"total_matches": 37,
"included_matches": 1,
"truncated": true,
"next_cursor": "eyJvIjowfQ"
},
"data": {
"matches": [
{
"kind": "story",
"item": {
"id": "story-demo-truncated",
"url": null,
"title": "Representative result from a larger run",
"story_date": "2026-08-24",
"updated_at": null,
"processed_at": null,
"category": null,
"category_code": null,
"subcategory": null,
"geo": {
"country": "Brazil",
"region": "South America",
"continent": "South America",
"admin1": null,
"location": null,
"latitude": null,
"longitude": null,
"geo_precision": null,
"geo_precision_label": null
},
"geo_provenance": null,
"geo_context": {
"location_country": "Brazil",
"actor_origin_countries": []
},
"metrics": {
"significance": 0.42,
"article_count": 2,
"linked_event_count": 0,
"max_linked_event_significance": 0,
"civilian_targeting_event_count": 0
},
"has_events": false,
"has_fatalities": null,
"has_civilian_targeting": false,
"fatalities": null,
"linked_events": [],
"entity_refs": [],
"matched_categories": [],
"top_articles": [],
"language_breakdown": [],
"top_language": null,
"search_score": null
}
}
]
},
"links": {
"monitor": "https://gdeltcloud.com/monitors/mon_demo_high_volume",
"run": "https://gdeltcloud.com/monitors/mon_demo_high_volume/runs/run_demo_truncated_001",
"matches": "https://gdeltcloud.com/api/v2/monitors/mon_demo_high_volume/runs/run_demo_truncated_001/matches"
}
}
}
]The stored Monitor specification
All three views use this same public API object.
{
"name": "Company labor-dispute coverage",
"description": "Coverage intake across one confirmed parent/subsidiary set, narrowed to labor disputes.",
"subject": {
"type": "entity",
"entity_ids": [
"$apple",
"$beats",
"$claris"
],
"match": "coverage"
},
"criteria": {
"data": "events_and_stories",
"search": "labor dispute, strike, union action, worker protest",
"countries": [],
"family_filters": {
"cameoplus": {
"domains": [
"ECONOMIC",
"DEMOGRAPHIC"
],
"subcategories": []
},
"conflict": {
"categories": [
"Protests"
],
"subcategories": []
},
"story": {
"categories": [
"cameoplus_economic",
"cameoplus_demographic"
]
}
},
"fatalities_only": false,
"collapse_duplicates": true
},
"trigger": {
"type": "new_matches"
},
"schedule": {
"cadence": "daily",
"timezone": "America/Los_Angeles",
"daily_hour": 8
},
"delivery": {
"email": true
}
}After the notification
Scheduled checks cost 0 QU. Investigation and application calls use QU.
Execute the run replay_requests and read Story evidence and source URLs.
Call the entity tone endpoint for the confirmed company IDs and relevant time window.
Call /api/v2/share-of-voice for parent/competitor comparison using the same labor-dispute topic.