curl --request GET \
--url https://gdeltcloud.com/api/v2/situations/{story_id}/stories \
--header 'Authorization: Bearer <token>'import requests
url = "https://gdeltcloud.com/api/v2/situations/{story_id}/stories"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://gdeltcloud.com/api/v2/situations/{story_id}/stories', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": []
}List a Situation's stories
Independently paginated stories over current servable membership. Summary and pagination totals cover all matching members, never a graph sample. Article counts sum member Story counts, not unique URLs. Date filters select member reporting dates; Event occurrence dates remain separate.
curl --request GET \
--url https://gdeltcloud.com/api/v2/situations/{story_id}/stories \
--header 'Authorization: Bearer <token>'import requests
url = "https://gdeltcloud.com/api/v2/situations/{story_id}/stories"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://gdeltcloud.com/api/v2/situations/{story_id}/stories', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": []
}Authorizations
GDELT Cloud API key. Send as Authorization: Bearer gdelt_sk_....
Path Parameters
A stored Situation UID (sit_…). Published as story_id for path compatibility with /api/v2/situations/{story_id}, which accepts either; the member lists accept only the UID — a Story id is refused.
Query Parameters
Retained edition identifier from get_situation_editions. Pins the published snapshot; use it instead of as_of. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.
Latest edition published at or before this UTC ISO timestamp. No reconstruction before retention began. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.
Optional version from the preceding page scope. A changed scope returns 409 instead of silently mixing pages. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.
Optional earliest member reporting date. Omit both dates for the full servable membership. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.
Optional latest member reporting date. No implicit first200-member truncation. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.
Number of records to return on this page; pagination describes how to continue. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.
1 <= x <= 100Number of records to skip before this page.
x >= 0Up to eight comma-separated retained Story IDs. Requires edition_id or as_of, cannot be combined with date_start or date_end, and returns complete frozen records in edition order. Offset and limit paginate that selected set. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

