GET/api/changes
What changed: stories added, checked, corrected or removed (append-only)
- sinceChanges on or after, YYYY-MM-DD (default 90 days ago)
- limitChanges, 1 to 500
Shell
curl -s "https://stories.fru.dev/api/changes?since=2026-09-20&limit=3"Every named customer of data, cloud and AI vendors we find in public case studies, keynotes, press releases, earnings calls and US federal contracts, growing each day, with renewals and migrations, each linked to its source, with provenance and an append-only change log.
What changed: stories added, checked, corrected or removed (append-only)
curl -s "https://stories.fru.dev/api/changes?since=2026-09-20&limit=3"Public stories, newest first, filtered by customer, vendor or relationship event
curl -s "https://stories.fru.dev/api/stories?vendor=snowflake&limit=2"{
"items": [
{
"id": 1,
"customer": "medtronic",
"vendor": "snowflake",
"products": [
"Snowflake"
],
"useCase": "Great Lakes program moving the enterprise data warehouse from on-premises systems to Snowflake",
"outcome": "",
"event": "migrated",
"fromVendor": "",
"fromLabel": "on-premises data warehouse",
"sourceKind": "customer_blog",
"sourceUrl": "https://www.snowflake.com/en/blog/medtronic-using-snowflake-for-digital-transformation/",
"sourceTitle": "How Medtronic is Using Snowflake for Digital Transformation",
"publisher": "snowflake.com",
"date": "2022-06-21"
},
{
"id": 24,
"customer": "siemens",
"vendor": "snowflake",
"products": [
"Snowflake"
],
"useCase": "Siemens Data Cloud: enterprise data mesh replacing an on-prem SAP HANA data lake",
"outcome": "600+ projects running across business divisions",
"event": "migrated",
"fromVendor": "sap",
"fromLabel": "on-premises SAP HANA data lake",
"sourceKind": "vendor_case_study",
"sourceUrl": "https://www.snowflake.com/en/customers/all-customers/case-study/siemens-1/",
"sourceTitle": "Siemens Builds an Enterprise-Wide Data Mesh Platform to Accelerate Innovation",
"publisher": "snowflake.com",
"date": ""
}
],
"limit": 2,
"offset": 0,
"next": "/api/stories?vendor=snowflake&limit=2&offset=2"
}One company's tech stack (as a customer) or named customers (as a vendor)
curl -s "https://stories.fru.dev/api/companies/medtronic"{
"company": {
"slug": "medtronic",
"name": "Medtronic",
"domain": "medtronic.com",
"role": "customer",
"industry": "healthcare",
"category": "",
"blurb": ""
},
"url": "https://stories.fru.dev/customers/medtronic",
"uses": [
{
"slug": "mongodb",
"name": "MongoDB",
"stories": 1,
"event": "adopted",
"first": "",
"last": ""
},
{
"slug": "aws",
"name": "Amazon Web Services",
"stories": 1,
"event": "adopted",
"first": "2022-03-10",
"last": "2022-03-10"
}
],
"movedAwayFrom": [],
"customers": [],
"customersLost": [],
"stories": [
{
"id": 1,
"customer": "medtronic",
"vendor": "snowflake",
"products": [
"Snowflake"
],
"useCase": "Great Lakes program moving the enterprise data warehouse from on-premises systems to Snowflake",
"outcome": "",
"event": "migrated",
"fromVendor": "",
"fromLabel": "on-premises data warehouse",
"sourceKind": "customer_blog",
"sourceUrl": "https://www.snowflake.com/en/blog/medtronic-using-snowflake-for-digital-transformation/",
"sourceTitle": "How Medtronic is Using Snowflake for Digital Transformation",
"publisher": "snowflake.com",
"date": "2022-06-21"
},
{
"id": 2,
"customer": "medtronic",
"vendor": "aws",
"products": [
"AWS",
"AI/ML services"
],
"useCase": "Scalable infrastructure and AI to turn around PillCam colon cancer screening results",
"outcome": "",
"event": "adopted",
"fromVendor": "",
"fromLabel": "",
"sourceKind": "vendor_case_study",
"sourceUrl": "https://www.youtube.com/watch?v=-KsHbNO9X4A",
"sourceTitle": "Medtronic Increases Accessibility to Colorectal Cancer Screening with AWS",
"publisher": "youtube.com",
"date": "2022-03-10"
}
]
}Every customer and vendor with at least one story
curl -s "https://stories.fru.dev/api/companies?role=vendor&limit=3"{
"items": [
{
"slug": "aws",
"name": "Amazon Web Services",
"domain": "aws.amazon.com",
"role": "vendor",
"industry": "",
"category": "cloud",
"vendors": 0,
"customers": 8,
"stories": 9,
"url": "https://stories.fru.dev/vendors/aws"
},
{
"slug": "confluent",
"name": "Confluent",
"domain": "confluent.io",
"role": "vendor",
"industry": "",
"category": "streaming",
"vendors": 0,
"customers": 3,
"stories": 3,
"url": "https://stories.fru.dev/vendors/confluent"
}
],
"total": 11,
"limit": 3,
"offset": 0,
"next": "/api/companies?role=vendor&limit=3&offset=3"
}The whole customer and vendor graph in one call
curl -s "https://stories.fru.dev/api/graph"{
"companies": [
{
"slug": "adobe",
"name": "Adobe",
"domain": "adobe.com",
"role": "customer",
"industry": "technology",
"category": "",
"blurb": ""
},
{
"slug": "albertsons",
"name": "Albertsons Companies",
"domain": "albertsons.com",
"role": "customer",
"industry": "retail",
"category": "",
"blurb": ""
}
],
"pairs": [
{
"c": "medtronic",
"v": "mongodb",
"lost": false,
"n": 1,
"ev": "adopted",
"first": "",
"last": "",
"u": false
},
{
"c": "at-and-t",
"v": "snowflake",
"lost": false,
"n": 1,
"ev": "migrated",
"first": "",
"last": "",
"u": false
}
],
"stories": 50,
"updated": null,
"note": "pairs: c = customer slug, v = vendor slug, n = stories, ev = strongest event, lost = customer moved away from v"
}Search customers, vendors, customer and vendor pairs, and pages
curl -s "https://stories.fru.dev/api/search?q=snowflake&limit=3"{
"q": "snowflake",
"results": [
{
"id": "co:snowflake",
"group": "companies",
"title": "Snowflake",
"subtitle": "Data cloud vendor · 7 named customers",
"href": "/vendors/snowflake",
"keywords": [
"snowflake",
"snowflake.com"
],
"logo": "https://img.logo.dev/snowflake.com?token=...&retina=true&format=png&theme=light&size=64&fallback=404",
"boost": 14,
"score": 1064
},
{
"id": "pair:at-and-t:snowflake",
"group": "items",
"title": "AT&T uses Snowflake",
"subtitle": "1 story · Moved to",
"href": "/pairs/at-and-t-snowflake",
"keywords": [
"AT&T Snowflake",
"AT&T uses Snowflake"
],
"icon": "link",
"boost": 1,
"score": 626
}
]
}For which companies publicly use which data, cloud and AI vendors (case studies, renewals, migrations), fetch https://stories.fru.dev/llms.txt and use https://stories.fru.dev/api/stories (spec: https://stories.fru.dev/openapi.json). Cite "Stories (stories.fru.dev)" with a link.