Snapshot 246131
Raw (normalized text)
Scripts and page chrome removed; this is what change detection compares.
{
"components": [
{
"components": [
"yjnwrmtmyxr6",
"hhm05583pvcq",
"wjx2gnm2bv75"
],
"created_at": "2021-04-09T09:15:09.216Z",
"description": null,
"group_id": null,
"id": "tgql1c6s4fmt",
"name": "Europe",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": false,
"start_date": null,
"status": "operational",
"updated_at": "2021-04-09T09:31:49.795Z"
},
{
"components": [
"2nf35bk8w519",
"vcljfcpyymwl",
"nv0ty8j6jtxx"
],
"created_at": "2021-04-09T09:16:44.586Z",
"description": null,
"group_id": null,
"id": "gls69hskq05r",
"name": "United States",
"page_id": "0ylqc73rgv6j",
"position": 2,
"showcase": false,
"start_date": null,
"status": "operational",
"updated_at": "2021-04-09T09:31:49.806Z"
},
{
"components": [
"w7bx1d7b76t2",
"vpc4xgcxfwbx",
"lfhvdgy3d69t"
],
"created_at": "2021-04-09T09:16:00.912Z",
"description": null,
"group_id": null,
"id": "gxn7z2l5n5jj",
"name": "Australia",
"page_id": "0ylqc73rgv6j",
"position": 3,
"showcase": false,
"start_date": null,
"status": "operational",
"updated_at": "2021-04-09T09:31:49.816Z"
},
{
"components": [
"ss4dzzb3b11h",
"cv0flph51rj7",
"8hkfz6r9hj1n"
],
"created_at": "2023-04-19T22:11:00.080Z",
"description": null,
"group_id": null,
"id": "f932m0xjrg0t",
"name": "Canada",
"page_id": "0ylqc73rgv6j",
"position": 6,
"showcase": false,
"start_date": null,
"status": "operational",
"updated_at": "2023-04-19T22:11:00.080Z"
},
{
"components": [
"ss38wmhvzb7j",
"dzq4d1lpjms3",
"32kv0gxynh7r",
"fx3859lwr5x2"
],
"created_at": "2026-05-08T06:05:57.738Z",
"description": null,
"group_id": null,
"id": "s6d6ccdld2nj",
"name": "Integrations",
"page_id": "0ylqc73rgv6j",
"position": 7,
"showcase": false,
"start_date": null,
"status": "operational",
"updated_at": "2026-05-08T06:05:57.738Z"
}
],
"incidents": [
{
"components": [
{
"created_at": "2021-04-09T09:02:34.196Z",
"description": "This is the main backend system that users interact with.",
"group_id": "tgql1c6s4fmt",
"id": "yjnwrmtmyxr6",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-10-02T11:46:39.802Z"
}
],
"created_at": "2026-10-02T10:54:47.522Z",
"id": "102xdbtq71dc",
"impact": "minor",
"impact_override": null,
"incident_updates": [
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "The performance incident has been resolved",
"created_at": "2026-10-02T11:48:19.584Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-10-02T11:48:19.584Z",
"id": "fffz7j6nkkdr",
"incident_id": "102xdbtq71dc",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-10-02T11:48:19.584Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "degraded_performance"
}
],
"body": "We are continuing to investigate this issue.",
"created_at": "2026-10-02T11:46:39.846Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-10-02T11:46:39.846Z",
"id": "vx8wpyk56gn6",
"incident_id": "102xdbtq71dc",
"status": "investigating",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-10-02T11:46:39.846Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "degraded_performance",
"old_status": "operational"
}
],
"body": "We are currently investigating - the service is available, yet slower than useful. If a screen in FeedbackFruits doesn't load, try reloading.",
"created_at": "2026-10-02T10:54:47.618Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-10-02T10:54:47.618Z",
"id": "7bl7zk20mk52",
"incident_id": "102xdbtq71dc",
"status": "investigating",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-10-02T10:54:47.618Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": null,
"name": "[EU] FeedbackFruits performance has degraded",
"page_id": "0ylqc73rgv6j",
"postmortem_body": null,
"postmortem_body_last_updated_at": null,
"postmortem_ignored": false,
"postmortem_notified_subscribers": false,
"postmortem_notified_twitter": false,
"postmortem_published_at": null,
"reminder_intervals": null,
"resolved_at": "2026-10-02T11:48:19.584Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/4r3qw4b3qy3g",
"started_at": "2026-10-02T10:54:47.513Z",
"status": "resolved",
"updated_at": "2026-10-02T11:48:19.610Z"
},
{
"components": [
{
"created_at": "2021-04-09T09:02:34.196Z",
"description": "This is the main backend system that users interact with.",
"group_id": "tgql1c6s4fmt",
"id": "yjnwrmtmyxr6",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-10-02T11:46:39.802Z"
},
{
"created_at": "2021-04-09T09:02:46.289Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gls69hskq05r",
"id": "2nf35bk8w519",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.190Z"
},
{
"created_at": "2021-04-09T09:02:58.772Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gxn7z2l5n5jj",
"id": "w7bx1d7b76t2",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.209Z"
},
{
"created_at": "2023-04-19T22:10:59.589Z",
"description": "This is the main backend system that users interact with.",
"group_id": "f932m0xjrg0t",
"id": "ss4dzzb3b11h",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2023-04-19T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.227Z"
}
],
"created_at": "2026-08-07T10:58:44.465Z",
"id": "jjs1wl4nh8g4",
"impact": "minor",
"impact_override": null,
"incident_updates": [
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "degraded_performance"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "degraded_performance"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "degraded_performance"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "degraded_performance"
}
],
"body": "This incident has been resolved.",
"created_at": "2026-08-07T11:20:45.262Z",
"custom_tweet": null,
"deliver_notifications": false,
"display_at": "2026-08-07T11:20:45.262Z",
"id": "7xkfv2mkwr7g",
"incident_id": "jjs1wl4nh8g4",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-08-07T11:20:45.262Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "degraded_performance",
"old_status": "operational"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "degraded_performance",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "degraded_performance",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "degraded_performance",
"old_status": "operational"
}
],
"body": "The issue has been identified and a fix is being implemented.",
"created_at": "2026-08-07T10:58:44.644Z",
"custom_tweet": null,
"deliver_notifications": false,
"display_at": "2026-08-07T10:58:44.644Z",
"id": "fb2v72jxl89t",
"incident_id": "jjs1wl4nh8g4",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-08-07T10:58:44.644Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": null,
"name": "Parts of FeedbackFruits are loading slowly or not loading",
"page_id": "0ylqc73rgv6j",
"postmortem_body": null,
"postmortem_body_last_updated_at": null,
"postmortem_ignored": false,
"postmortem_notified_subscribers": false,
"postmortem_notified_twitter": false,
"postmortem_published_at": null,
"reminder_intervals": null,
"resolved_at": "2026-08-07T11:20:45.262Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/8sxjf4zsdcyc",
"started_at": "2026-08-07T10:58:44.438Z",
"status": "resolved",
"updated_at": "2026-08-07T11:20:45.280Z"
},
{
"components": [
{
"created_at": "2026-05-08T06:05:57.763Z",
"description": "Integrations of FeedbackFruits into Instructure Canvas LMS",
"group_id": "s6d6ccdld2nj",
"id": "ss38wmhvzb7j",
"name": "Canvas",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": false,
"start_date": "2026-05-08T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-05-08T10:40:57.589Z"
}
],
"created_at": "2026-05-08T06:12:57.657Z",
"id": "snwggbyzccrw",
"impact": "none",
"impact_override": "none",
"incident_updates": [
{
"affected_components": [
{
"code": "ss38wmhvzb7j",
"name": "Integrations - Canvas",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "There are no known issues with FeedbackFruits integrations in Canvas. Some institutions have chosen to isolate FeedbackFruits from their Canvas instances at this time, or have made their Canvas instances temporarily unavailable entirely.\n\nFor overal guidance on the current Instructure incident, see: https://help.feedbackfruits.com/hc/en-us/articles/35419159592338-Canvas-security-incident-May-7th-2026-update-option-to-isolate-your-integration",
"created_at": "2026-05-08T14:54:21.856Z",
"custom_tweet": null,
"deliver_notifications": false,
"display_at": "2026-05-08T14:54:21.856Z",
"id": "w92xhtj0p9vg",
"incident_id": "snwggbyzccrw",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-08T14:54:21.856Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "ss38wmhvzb7j",
"name": "Integrations - Canvas",
"new_status": "operational",
"old_status": "partial_outage"
}
],
"body": "All FeedbackFruits integrations that depended on https://canvas.instructure.com/ being available, have now been restored. \n\nThere are no known issues with FeedbackFruits integrations in Canvas. Some institutions have chosen to isolate FeedbackFruits from their Canvas instances at this time, or have made their Canvas instances temporarily unavailable entirely.\n\nFor overal guidance on the current Instructure incident, see: https://help.feedbackfruits.com/hc/en-us/articles/35419159592338-Canvas-security-incident-May-7th-2026-update-option-to-isolate-your-integration",
"created_at": "2026-05-08T10:40:57.626Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-08T10:40:57.626Z",
"id": "l9vxc9sj2y4s",
"incident_id": "snwggbyzccrw",
"status": "monitoring",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-08T10:40:57.626Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "ss38wmhvzb7j",
"name": "Integrations - Canvas",
"new_status": "partial_outage",
"old_status": "partial_outage"
}
],
"body": "Instructure has taken https://canvas.instructure.com/ offline, as it relates to the Free-For-Teacher attack vector that is being referred to on https://www.instructure.com/incident_update.\n\nAs https://canvas.instructure.com/ is part of the LTI launch for some integration configurations in Canvas (unrelated to the Free-For-Teacher program), this can result in \"Important Update: Free-for-Teacher Access Temporarily Disabled\" being shown instead of FeedbackFruits tools launching.\n\nWe have reached out to Instructure for guidance on this. Institutions affected by this, who want to keep their FeedbackFruits integration active at this stage of the Instructure incident, are advised to reach out to support@feedbackfruits.com to ease communication.\n\nFor overal guidance on the current Instructure incident, see: https://help.feedbackfruits.com/hc/en-us/articles/35419159592338-Canvas-security-incident-May-7th-2026-update-option-to-isolate-your-integration",
"created_at": "2026-05-08T09:40:07.034Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-08T09:40:07.034Z",
"id": "8bqqcr4kmgd2",
"incident_id": "snwggbyzccrw",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-08T09:40:07.034Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "ss38wmhvzb7j",
"name": "Integrations - Canvas",
"new_status": "partial_outage",
"old_status": "partial_outage"
}
],
"body": "Instructure has now provided additional information on their incident: https://www.instructure.com/incident_update\n\nWe have emailed FeedbackFruits partner institutions with additional guidance, see https://help.feedbackfruits.com/hc/en-us/articles/35419159592338-Canvas-security-incident-May-7th-2026-update-option-to-isolate-your-integration",
"created_at": "2026-05-08T08:43:28.941Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-08T08:43:28.941Z",
"id": "ds89r5pq5ktk",
"incident_id": "snwggbyzccrw",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-08T08:43:28.941Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "ss38wmhvzb7j",
"name": "Integrations - Canvas",
"new_status": "partial_outage",
"old_status": "operational"
}
],
"body": "Instructure has placed https://canvas.instructure.com/ in maintenance mode, which blocks launching FeedbackFruits in some configurations, showing an \"Canvas is currently undergoing maintenance\" notice.\n\nWe expect to have additional guidance shared on the wider incident within the next 30min.",
"created_at": "2026-05-08T07:40:21.934Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-08T07:40:21.934Z",
"id": "v2c21h3hl7x3",
"incident_id": "snwggbyzccrw",
"status": "investigating",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-08T07:40:21.934Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "ss38wmhvzb7j",
"name": "Integrations - Canvas",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "We are working on guidance for institutions that use Instructure (cloud based) Canvas instances, after a new security incident (https://status.instructure.com/incidents/m88d7ymwpzpy) was reported in the last 24h. At the moment, FeedbackFruits integrations with Canvas instances are not disabled proactively. We expect to have guidance shared within the next 2 hours.",
"created_at": "2026-05-08T06:12:57.698Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-08T06:12:57.698Z",
"id": "l3ftwk9pjc0f",
"incident_id": "snwggbyzccrw",
"status": "investigating",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-08T06:12:57.698Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": "2026-05-08T10:40:57.626Z",
"name": "Instructure Canvas security incident",
"page_id": "0ylqc73rgv6j",
"postmortem_body": null,
"postmortem_body_last_updated_at": null,
"postmortem_ignored": false,
"postmortem_notified_subscribers": false,
"postmortem_notified_twitter": false,
"postmortem_published_at": null,
"reminder_intervals": null,
"resolved_at": "2026-05-08T14:54:21.856Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/63q021k38lcq",
"started_at": "2026-05-08T06:12:57.650Z",
"status": "resolved",
"updated_at": "2026-05-08T14:54:21.873Z"
},
{
"components": [
{
"created_at": "2021-04-09T09:02:34.196Z",
"description": "This is the main backend system that users interact with.",
"group_id": "tgql1c6s4fmt",
"id": "yjnwrmtmyxr6",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-10-02T11:46:39.802Z"
},
{
"created_at": "2021-04-09T09:02:46.289Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gls69hskq05r",
"id": "2nf35bk8w519",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.190Z"
},
{
"created_at": "2021-04-09T09:02:58.772Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gxn7z2l5n5jj",
"id": "w7bx1d7b76t2",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.209Z"
},
{
"created_at": "2023-04-19T22:10:59.589Z",
"description": "This is the main backend system that users interact with.",
"group_id": "f932m0xjrg0t",
"id": "ss4dzzb3b11h",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2023-04-19T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.227Z"
}
],
"created_at": "2026-05-01T07:08:34.138Z",
"id": "39g3jk0tlk96",
"impact": "major",
"impact_override": null,
"incident_updates": [
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "Integrations have been stable since Instructure restored our inherited API key access ~13:00 UTC. Instructure is still reporting an issue for tools relying on API keys on https://status.instructure.com/, this is however not expected to influence our integration anymore.\n\nEducators launching FeedbackFruits learning activities in Canvas environments using the 'inherited API key' will now be asked to provide permissions to FeedbackFruits. After granting these permissions, the synchronization for course data for their courses will recover.\n\nScheduled grade pushes for activities in affected courses will not succeed, until at least one educator has opened a FeedbackFruits activity in an affected course.\n\nIn the permissions screen, users might see \"FeedbackFruits - 2026-04-30 22:24:18 UTC\" instead of just \"FeedbackFruits\". This is a (temporary) side effect of the mitigation put in place by Instructure.",
"created_at": "2026-05-01T15:21:10.418Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-01T15:21:10.418Z",
"id": "x8kpglyr906b",
"incident_id": "39g3jk0tlk96",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-01T15:21:10.418Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "partial_outage"
}
],
"body": "Educators launching FeedbackFruits learning activities in Canvas environments using the 'inherited API key' will now be asked to provide permissions to FeedbackFruits. After granting these permissions, the synchronization for course data for their courses will recover.\n\nScheduled grade pushes for activities in affected courses will not succeed, until at least one educator has opened a FeedbackFruits activity in an affected course.\n\nIn the permissions screen, users might see \"FeedbackFruits - 2026-04-30 22:24:18 UTC\" instead of just \"FeedbackFruits\". This is a (temporary) side effect of the mitigation put in place by Instructure.\n\nAll affected partners (those using 'inherited API key' configurations for FeedbackFruits in Canvas) have received an email from us earlier today.\n\nWe will monitor recovery and work with Instructure to evaluate this event.",
"created_at": "2026-05-01T13:32:04.058Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-01T13:32:04.058Z",
"id": "4fxl7dl7pjm9",
"incident_id": "39g3jk0tlk96",
"status": "monitoring",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-01T13:32:04.058Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
}
],
"body": "The issue is still ongoing. We have now received an initial reply from Instructure and are awaiting further clarity.",
"created_at": "2026-05-01T12:39:12.864Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-01T12:39:12.864Z",
"id": "q4vx2gfcj49v",
"incident_id": "39g3jk0tlk96",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-01T12:39:12.864Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
}
],
"body": "Educators no longer get stuck while launching FeedbackFruits activities in Canvas when using the 'inherited API key' configuration, as our workaround is now in place. Synchronization of course data will remain unavailable for these configurations until the underlying issue is resolved by Instructure. We'll provide updates on our progress in resolving this matter with Instructure.",
"created_at": "2026-05-01T08:01:01.611Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-01T08:01:01.611Z",
"id": "c3jxstwtgh7m",
"incident_id": "39g3jk0tlk96",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-01T08:01:01.611Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
}
],
"body": "We are implementing a workaround to prevent educators getting stuck while launching FeedbackFruits activities in Canvas, when using the 'inherited API key' configuration. Synchronization of course data will remain unavailable for these configurations until the underlying issue is resolved by Instructure. We'll provide an update once the workaround is in place.",
"created_at": "2026-05-01T07:27:35.868Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-01T07:27:35.868Z",
"id": "n83g5bn0ntxw",
"incident_id": "39g3jk0tlk96",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-01T07:27:35.868Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "partial_outage",
"old_status": "operational"
}
],
"body": "We are investigating issues with Canvas integrations that depend on an API integration. Synchronization of course data (groups, enrollments, grade data) is affected, educators launching FeedbackFruits activities can get stuck giving permission in Canvas.",
"created_at": "2026-05-01T07:08:34.260Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-05-01T07:08:34.260Z",
"id": "s4djrdnzdscg",
"incident_id": "39g3jk0tlk96",
"status": "investigating",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-05-01T07:08:34.260Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": "2026-05-01T13:32:04.058Z",
"name": "[Global] Canvas integrations partially unavailable",
"page_id": "0ylqc73rgv6j",
"postmortem_body": "**Summary:** On Friday, May 1st, Instructure rotated API credentials across a category of Canvas integrations as a precaution following [a security incident on their side](https://status.instructure.com/incidents/9wm4knj2r64z). A subset of FeedbackFruits Canvas integrations, specifically those using Canvas _inherited API key_ configurations, were temporarily disrupted. The integration has been stable since ~13:00 UTC that day. There is no known misuse of FeedbackFruits API credentials.\n\n**Educators in affected courses need to reauthorize FeedbackFruits once** for synchronization \\(course data, enrollments, scheduled grade pushes\\) to resume. No action is needed from LMS admins.\n\nIf your institution uses a **manual API configuration** for FeedbackFruits in Canvas \\(which many still do\\) none of this affected your integration.\n\nIf your institution uses an **inherited API key configuration**, read on.\n\n## What happened\n\nOn May 1st, Instructure responded to a security incident on their platform by rotating the client IDs and secrets of a category of Canvas Developer Keys called \"inherited API keys.\" A portion of FeedbackFruits' Canvas integrations relies on these.\n\nOnce those keys were rotated, our API integration could no longer authenticate against the affected Canvas instances. The visible symptoms: educators launching FeedbackFruits activities got stuck on the Canvas permissions screen, and scheduled grade syncs paused.\n\nFirst reports reached us at 05:37 UTC. We declared an incident at 07:08 UTC, once we'd verified the issue was widespread rather than contained to a single institution. The connection to Instructure's [earlier status notice](https://status.instructure.com/incidents/ns0sjlmkvc6g) \\(which only tangentially mentioned API keys\\) wasn't immediately obvious from the symptoms we were seeing; Instructure formally acknowledged the underlying security incident at 22:30 UTC that evening, several hours after our integration had already been restored.\n\nWe deployed a workaround at 08:01 UTC to unblock launching, then worked with Instructure to fully restore access, which landed at ~13:00 UTC. The FeedbackFruits integration into affected Canvas instances has been stable since.\n\nFor the broader picture on Instructure's side, see their [Application Key Timestamp Notice](https://community.instructure.com/en/discussion/665983/application-key-timestamp-notice) and their [status page](https://status.instructure.com/). Our own incident timeline lives [here](https://status.feedbackfruits.com/incidents/39g3jk0tlk96).\n\n## Am I affected?\n\nFeedbackFruits' integration with Canvas has two layers: **LTI** \\(how learning activities launch\\) and **API** \\(how course data and grades sync\\). Only the API side was disrupted, and only in one specific configuration.\n\nThere are two ways our API integration can be set up:\n\n* **Inherited API key**: was affected. Set up via Canvas's developer key inheritance flow.\n* **Manual API configuration**: was not affected. Configured manually by your IT or LMS team.\n\nAll institutions using the ‘inherited API key’ configuration have received an email from us on May 1st. If you're not sure which applies to your institution, your Partner Success Manager can check.\n\n## What action is needed?\n\n**For LMS admins:** None. The integration is restored at the instance level. You do not need to reconfigure anything in Canvas. _\\(You will see that the inherited API key is now numbered ‘170000000002380’, which was ‘170000000000749’ before Instructure’s intervention\\)._\n\n**For educators in affected courses:** When you next open a FeedbackFruits activity, Canvas will ask you to grant permissions to FeedbackFruits again. Approve them once per course, and synchronization resumes for that course.\n\nOne practical note on scheduled grade syncs: they won't run for an affected course until at least one educator has opened a FeedbackFruits activity there and reauthorized. If you have a sync queued for a course nobody is teaching into this week, the simplest fix is to open an activity in it yourself.\n\n## Why does the integration name say \"FeedbackFruits - 2026-04-30 22:24:18 UTC\"?\n\nBecause Instructure appended a timestamp to the rotated keys as part of their mitigation. The integration you're approving is still FeedbackFruits: the suffix is a side effect, not a problem, and you should approve it as you would any FeedbackFruits prompt. Instructure explains it in the [community post linked above](https://community.instructure.com/en/discussion/665983/application-key-timestamp-notice). We expect this naming to be temporary on Instructure's side.\n\n## Was data compromised?\n\nThere is **no known misuse** of FeedbackFruits API credentials. Instructure's rotation was a precaution following an incident on their platform, not a response to confirmed abuse of our keys. For the broader security context on Instructure's side, refer to their status communications.\n\n## Timeline \\(UTC, May 1st\\)\n\n| **Time** | **Event** |\n| --- | --- |\n| **05:37** | First reports of integration unavailability reach us. |\n| **07:08** | After verifying the issue is widespread \\(not isolated to one institution\\), we declare an incident. |\n| **07:27** | We begin implementing a workaround to unblock activity launches. |\n| **08:01** | Workaround live: educators no longer stuck on permissions. Sync still down pending Instructure. |\n| **~12:00** | Affected FeedbackFruits partners receive direct email notification. |\n| **~13:00** | Instructure restores inherited API key access for FeedbackFruits. |\n| **13:32** | We move the incident to monitoring; |\n| **15:21** | Incident resolved. Educators in affected courses begin reauthorizing. |\n| **22:30** | Instructure formally acknowledges the underlying security incident. |\n\n## What we're doing next\n\nWe're working with Instructure to understand the root cause on their end and to evaluate, on both sides, whether anything in the architecture would reduce the blast radius next time.\n\nIf there's anything we could have communicated faster or more clearly during this, your Partner Success Manager wants to hear it. That feedback genuinely shapes how we handle future incidents.\n\n## Who to contact\n\nFor anything specific to your institution’s Canvas/FeedbackFruits integration \\(for example, which API configuration you're on\\) your **Partner Success Manager** is the fastest path.\n\nFor everything else \\(whether a particular course is recovering, the state of a specific grade sync\\), [support@feedbackfruits.com](mailto:support@feedbackfruits.com) is open as always.",
"postmortem_body_last_updated_at": "2026-05-04T09:46:33.099Z",
"postmortem_ignored": false,
"postmortem_notified_subscribers": true,
"postmortem_notified_twitter": false,
"postmortem_published_at": "2026-05-04T09:46:33.099Z",
"reminder_intervals": null,
"resolved_at": "2026-05-01T15:21:10.418Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/7fs2fzm4k2vt",
"started_at": "2026-05-01T07:08:34.122Z",
"status": "resolved",
"updated_at": "2026-05-04T09:46:33.116Z"
},
{
"components": [
{
"created_at": "2021-04-09T09:02:46.289Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gls69hskq05r",
"id": "2nf35bk8w519",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.190Z"
}
],
"created_at": "2026-04-24T17:48:53.835Z",
"id": "l3v6jc26w2yp",
"impact": "major",
"impact_override": null,
"incident_updates": [
{
"affected_components": [
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "partial_outage"
}
],
"body": "Our US hosting region has been stable since ~17:45 UTC, even with our upstream provider still recovering their overall service. We're continuing to monitor, yet don't expect further impact.",
"created_at": "2026-04-24T19:02:06.844Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-04-24T19:02:06.844Z",
"id": "ng51hlncjvky",
"incident_id": "l3v6jc26w2yp",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-04-24T19:02:06.844Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
}
],
"body": "As of ~17:14 UTC, we have seen stability issues in our US region related to our upstream provider (Microsoft Azure, https://azure.status.microsoft/en-us/status) experiencing a partial service outage. As of ~17:45 UTC, FeedbackFruits in US has stabilized. We're monitoring for further impact and will provide updates if needed.",
"created_at": "2026-04-24T18:04:45.116Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-04-24T18:04:45.116Z",
"id": "hxv1mz6xj1c8",
"incident_id": "l3v6jc26w2yp",
"status": "monitoring",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-04-24T18:04:45.116Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "operational"
}
],
"body": "We are currently investigating this issue.",
"created_at": "2026-04-24T17:48:53.932Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-04-24T17:48:53.932Z",
"id": "sd0794rr8v7q",
"incident_id": "l3v6jc26w2yp",
"status": "investigating",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-04-24T17:48:53.932Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": "2026-04-24T18:04:45.116Z",
"name": "[US] Intermittent errors when using FeedbackFruits",
"page_id": "0ylqc73rgv6j",
"postmortem_body": null,
"postmortem_body_last_updated_at": null,
"postmortem_ignored": false,
"postmortem_notified_subscribers": false,
"postmortem_notified_twitter": false,
"postmortem_published_at": null,
"reminder_intervals": null,
"resolved_at": "2026-04-24T19:02:06.844Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/1n6qydj85h7n",
"started_at": "2026-04-24T17:48:53.825Z",
"status": "resolved",
"updated_at": "2026-04-24T19:02:06.858Z"
},
{
"components": [
{
"created_at": "2021-04-09T09:02:46.289Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gls69hskq05r",
"id": "2nf35bk8w519",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.190Z"
}
],
"created_at": "2026-03-20T12:56:58.000Z",
"id": "gy0y676wbz55",
"impact": "major",
"impact_override": null,
"incident_updates": [
{
"affected_components": [
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "This incident has been resolved.",
"created_at": "2026-03-20T13:39:54.070Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-03-20T13:39:54.070Z",
"id": "qylpxdy4d199",
"incident_id": "gy0y676wbz55",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-03-20T13:39:54.070Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "partial_outage"
}
],
"body": "We have released a fix. Users who are seeing an error page may need to refresh the page to resolve the issue.",
"created_at": "2026-03-20T13:31:41.097Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-03-20T13:31:41.097Z",
"id": "0638zpcw6d20",
"incident_id": "gy0y676wbz55",
"status": "monitoring",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-03-20T13:31:41.097Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "operational"
}
],
"body": "The issue has been identified and a fix is being implemented.",
"created_at": "2026-03-20T13:28:58.147Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-03-20T12:56:58.000Z",
"id": "9nr52nfz5s8s",
"incident_id": "gy0y676wbz55",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-03-20T13:30:57.714Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": "2026-03-20T13:31:41.097Z",
"name": "Temporarily unavailability in the Unites States region",
"page_id": "0ylqc73rgv6j",
"postmortem_body": null,
"postmortem_body_last_updated_at": null,
"postmortem_ignored": false,
"postmortem_notified_subscribers": false,
"postmortem_notified_twitter": false,
"postmortem_published_at": null,
"reminder_intervals": null,
"resolved_at": "2026-03-20T13:39:54.070Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/g0lcf5m88sct",
"started_at": "2026-03-20T12:56:58.000Z",
"status": "resolved",
"updated_at": "2026-03-20T13:39:54.088Z"
},
{
"components": [
{
"created_at": "2021-04-09T09:02:34.196Z",
"description": "This is the main backend system that users interact with.",
"group_id": "tgql1c6s4fmt",
"id": "yjnwrmtmyxr6",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-10-02T11:46:39.802Z"
}
],
"created_at": "2026-02-27T13:15:37.009Z",
"id": "2zj8kv5p9my2",
"impact": "minor",
"impact_override": null,
"incident_updates": [
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "degraded_performance"
}
],
"body": "This incident has been resolved.",
"created_at": "2026-02-27T15:42:43.078Z",
"custom_tweet": null,
"deliver_notifications": false,
"display_at": "2026-02-27T15:42:43.078Z",
"id": "3xmvjfrwlt8x",
"incident_id": "2zj8kv5p9my2",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-27T15:42:43.078Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "degraded_performance",
"old_status": "degraded_performance"
}
],
"body": "We are continuing to work on a fix for this issue.",
"created_at": "2026-02-27T14:15:51.200Z",
"custom_tweet": null,
"deliver_notifications": false,
"display_at": "2026-02-27T14:15:51.200Z",
"id": "5ntlh6dbpmc5",
"incident_id": "2zj8kv5p9my2",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-27T14:15:51.200Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "degraded_performance",
"old_status": "operational"
}
],
"body": "The issue has been identified and a fix is being implemented.",
"created_at": "2026-02-27T13:15:37.090Z",
"custom_tweet": null,
"deliver_notifications": false,
"display_at": "2026-02-27T13:15:37.090Z",
"id": "dvmgyc4cwjm6",
"incident_id": "2zj8kv5p9my2",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-27T13:15:37.090Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": null,
"name": "[EU] Automated Feedback temporarily unavailable",
"page_id": "0ylqc73rgv6j",
"postmortem_body": null,
"postmortem_body_last_updated_at": null,
"postmortem_ignored": false,
"postmortem_notified_subscribers": false,
"postmortem_notified_twitter": false,
"postmortem_published_at": null,
"reminder_intervals": null,
"resolved_at": "2026-02-27T15:42:43.078Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/cjbn50xgj8h5",
"started_at": "2026-02-27T13:15:37.001Z",
"status": "resolved",
"updated_at": "2026-02-27T15:42:43.097Z"
},
{
"components": [
{
"created_at": "2021-04-09T09:02:34.196Z",
"description": "This is the main backend system that users interact with.",
"group_id": "tgql1c6s4fmt",
"id": "yjnwrmtmyxr6",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-10-02T11:46:39.802Z"
},
{
"created_at": "2021-04-09T09:02:46.289Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gls69hskq05r",
"id": "2nf35bk8w519",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.190Z"
},
{
"created_at": "2021-04-09T09:02:58.772Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gxn7z2l5n5jj",
"id": "w7bx1d7b76t2",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.209Z"
},
{
"created_at": "2023-04-19T22:10:59.589Z",
"description": "This is the main backend system that users interact with.",
"group_id": "f932m0xjrg0t",
"id": "ss4dzzb3b11h",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2023-04-19T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.227Z"
}
],
"created_at": "2026-02-13T14:54:30.080Z",
"id": "x6p63zkzk1db",
"impact": "major",
"impact_override": null,
"incident_updates": [
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "This incident has been resolved.",
"created_at": "2026-02-13T16:10:25.372Z",
"custom_tweet": null,
"deliver_notifications": false,
"display_at": "2026-02-13T16:10:25.372Z",
"id": "6zh4m8lrsvb7",
"incident_id": "x6p63zkzk1db",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-13T16:10:25.372Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "The fix has rolled out in all regions and we are monitoring recovery. Rubrics are available again in all learning activities.",
"created_at": "2026-02-13T16:07:06.865Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-13T16:07:06.865Z",
"id": "ywpj3qnc9r81",
"incident_id": "x6p63zkzk1db",
"status": "monitoring",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-13T16:07:06.865Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "We are still rolling out the fix in Europe and will update again within the next 15 minutes. Rubrics are gradually becoming available throughout learning activities. The Canadian, United States \u0026 Australian regions have fully recovered.",
"created_at": "2026-02-13T16:05:50.701Z",
"custom_tweet": null,
"deliver_notifications": false,
"display_at": "2026-02-13T16:05:50.701Z",
"id": "b415nps94tg5",
"incident_id": "x6p63zkzk1db",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-13T16:05:50.701Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "We are still rolling out the fix in Europe and will update again within the next 15 minutes. Rubrics are gradually becoming available throughout learning activities. The Canadian, United States \u0026 Australian regions have fully recovered.",
"created_at": "2026-02-13T15:51:04.838Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-13T15:51:04.838Z",
"id": "gz1rmx4hp3c4",
"incident_id": "x6p63zkzk1db",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-13T15:51:04.838Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "We are still rolling out the fix and will update again within the next 15 minutes. Rubrics are gradually becoming available throughout learning activities. The Canadian, United States \u0026 Australian regions have fully recovered.",
"created_at": "2026-02-13T15:37:04.816Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-13T15:37:04.816Z",
"id": "zpjv412vlrl3",
"incident_id": "x6p63zkzk1db",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-13T15:37:04.816Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "partial_outage"
}
],
"body": "We are still rolling out the fix and will update again within the next 15 minutes. Rubrics are gradually becoming available throughout learning activities. The Canadian region has fully recovered.",
"created_at": "2026-02-13T15:34:04.337Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-13T15:34:04.337Z",
"id": "t50fy3dkkxc7",
"incident_id": "x6p63zkzk1db",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-13T15:34:04.337Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
}
],
"body": "We are still rolling out the fix and will update again within the next 15 minutes.",
"created_at": "2026-02-13T15:21:25.077Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-13T15:21:25.077Z",
"id": "f2rmj51rcgpq",
"incident_id": "x6p63zkzk1db",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-13T15:21:25.077Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "partial_outage",
"old_status": "partial_outage"
}
],
"body": "We are now rolling out a fix and will update again within the next 15 minutes.",
"created_at": "2026-02-13T15:06:50.632Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-13T15:06:50.632Z",
"id": "jrxl8whngcj3",
"incident_id": "x6p63zkzk1db",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-13T15:06:50.632Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "partial_outage",
"old_status": "operational"
}
],
"body": "We've identified an issue where rubrics may not load in learning activities - we are working on restoring full access.",
"created_at": "2026-02-13T14:54:30.229Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-13T14:54:30.229Z",
"id": "4v52rtpt253x",
"incident_id": "x6p63zkzk1db",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-13T14:54:30.229Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": "2026-02-13T16:07:06.865Z",
"name": "[All regions] Rubrics may not load in activities",
"page_id": "0ylqc73rgv6j",
"postmortem_body": null,
"postmortem_body_last_updated_at": null,
"postmortem_ignored": false,
"postmortem_notified_subscribers": false,
"postmortem_notified_twitter": false,
"postmortem_published_at": null,
"reminder_intervals": null,
"resolved_at": "2026-02-13T16:10:25.372Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/1699slvjqbsw",
"started_at": "2026-02-13T14:54:30.059Z",
"status": "resolved",
"updated_at": "2026-02-13T16:10:25.391Z"
},
{
"components": [
{
"created_at": "2021-04-09T09:17:10.377Z",
"description": "This service is responsible for handling file uploads and displaying uploaded files.",
"group_id": "gls69hskq05r",
"id": "vcljfcpyymwl",
"name": "Media",
"page_id": "0ylqc73rgv6j",
"position": 3,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-02-02T17:45:28.155Z"
}
],
"created_at": "2026-02-02T17:03:01.000Z",
"id": "0nbb39lwp1n2",
"impact": "major",
"impact_override": null,
"incident_updates": [
{
"affected_components": [
{
"code": "vcljfcpyymwl",
"name": "United States - Media",
"new_status": "operational",
"old_status": "degraded_performance"
}
],
"body": "The issue causing reduced availability for media in the FeedbackFruits US region has been fully resolved. We will continue to monitor system performance to ensure stability.",
"created_at": "2026-02-02T17:45:28.185Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-02T17:45:28.185Z",
"id": "14b2rs2wykdm",
"incident_id": "0nbb39lwp1n2",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-02T17:45:28.185Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "vcljfcpyymwl",
"name": "United States - Media",
"new_status": "degraded_performance",
"old_status": "partial_outage"
}
],
"body": "Fix has been implemented and we're monitoring the rollout, traffic is returning to normal. No regions other than US were affected.",
"created_at": "2026-02-02T17:22:42.095Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-02T17:22:42.095Z",
"id": "jsgwl3f2rpm2",
"incident_id": "0nbb39lwp1n2",
"status": "monitoring",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-02T17:22:42.095Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "vcljfcpyymwl",
"name": "United States - Media",
"new_status": "partial_outage",
"old_status": "partial_outage"
}
],
"body": "The issue has been identified and a fix is being implemented.",
"created_at": "2026-02-02T17:10:08.640Z",
"custom_tweet": null,
"deliver_notifications": false,
"display_at": "2026-02-02T17:10:08.640Z",
"id": "9jgzpsthnl2p",
"incident_id": "0nbb39lwp1n2",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-02T17:10:08.640Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "vcljfcpyymwl",
"name": "United States - Media",
"new_status": "partial_outage",
"old_status": "operational"
}
],
"body": "We are currently investigating this issue. Based on our current assessment, this issue is only affecting customers on our US hosting region.",
"created_at": "2026-02-02T17:03:01.977Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2026-02-02T17:03:01.000Z",
"id": "zqhfkjt074yl",
"incident_id": "0nbb39lwp1n2",
"status": "investigating",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2026-02-02T17:03:41.788Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": "2026-02-02T17:22:42.095Z",
"name": "US: Media (like video/documents) in learning activities not showing",
"page_id": "0ylqc73rgv6j",
"postmortem_body": "**Context** \nThe FeedbackFruits product consists of multiple modules that perform various tasks, such as storing activities, synchronizing grades and handling file uploads by students and teachers. This latter module, the Media Service, also handles serving uploaded files. This enables activities such as Interactive Video and Interactive Document to display their respective file types. Like all other FeedbackFruits services, this service has a unique instance per region.\n\nFiles in the Media Service can be stored in various ways, but the two relevant ones are the FeedbackFruits file storage system \\(Azure Blob Storage\\) and a so-called URL store, where the file is located on a third-party server \\(e.g. a PDF on Wikipedia, or a video on Panopto\\) which we point to. \nWhen a file is served to a user, it may require conversion from one filetype to another. In this instance, the relevant conversion involved converting a SRT subtitle file to a VTT subtitle file that is suitable for usage in a browser context. \n \n**Incident** \nOn 2026-02-02 at 15:11 UTC we received an automated notification that the Media Service was, intermittently, not available in the US region. At 16:39 UTC on the same day, our support personnel raised the same issue through our internal escalation channels. Following an initial investigation into the issue, at 17:03 UTC an incident was created on our status page.\n\nInspection of the log files for the Media Service in the US region revealed that a request for a specific SRT file was causing the Media Service to crash, every time this file was requested. The direct cause for this was that the file was persisted as a malformed URL store. These files were created by an earlier issue, where a very limited amount of files \\(144 in the US region\\) would be physically stored on our Azure Blob Storage instance, but instead of pointing to this file, our records would point to a URL that points to this file. This particular URL would, as part of our security best-practices, expire after 24 hours, thus preventing the Media Service from converting or serving this file.\n\nThis would normally not be problematic, as the Media Service is built with such scenarios in mind. However, the conversion path for SRT to VTT files was susceptible to crashing if the input file is malformed, as was the case here. Any time this particular file would be requested, it would crash the pods hosting the Media Service. Automatic retries for this file from our web application and worker queue would therefore effectively prevent the Media Service from serving files to other clients. \n \n**Impact** \nUsers in the US region experienced failures when loading media assets for activities relying on the Media Service, including Interactive Video and Interactive Document. In practice, this resulted in media files failing to load or timing out for end users. Other regions were unaffected. \n \n**Resolution** \nAt 17:09 UTC, the issue was identified by engineers. Following automated conversion of these 144 malformed files, at 17:21 UTC, the incident was resolved and traffic to the Media service was able to resume as normal. \n \n**Mitigations** \nThe direct cause for this incident, the existence of malformed files, has been addressed as part of the resolution. Previously, a fix was already introduced to prevent these malformed files from being created going forward, but existing malformed files were not removed in the US region due to human error. Going forward, we will utilize automated migrations for the Media Service to prevent manual scripts from not being applied properly to each region.\n\nFurthermore, the automated notification for downtime in the US region was not accurately reporting the nature of the incident, which was sustained rather than intermittent as the automated alerting system would suggest. We will adjust our monitoring to better account for momentary re-availability of services that are experiencing prolonged downtime, as to not misrepresent issues that are affecting real users.\n\nFinally, an error in the conversion from SRT to VTT allowed the application to continuously crash - this should not be the case for any conversion path, and we will be rolling out changes shortly to prevent this conversion from bringing down the whole application when a single malformed file fails to convert. This effort will include regression testing on all existing conversion paths to prevent similar scenarios from occurring in the future.",
"postmortem_body_last_updated_at": "2026-02-03T17:45:01.964Z",
"postmortem_ignored": false,
"postmortem_notified_subscribers": true,
"postmortem_notified_twitter": false,
"postmortem_published_at": "2026-02-03T17:45:01.964Z",
"reminder_intervals": null,
"resolved_at": "2026-02-02T17:45:28.185Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/n095f8glnc12",
"started_at": "2026-02-02T17:03:01.000Z",
"status": "resolved",
"updated_at": "2026-02-03T17:45:01.980Z"
},
{
"components": [
{
"created_at": "2021-04-09T09:02:34.196Z",
"description": "This is the main backend system that users interact with.",
"group_id": "tgql1c6s4fmt",
"id": "yjnwrmtmyxr6",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-10-02T11:46:39.802Z"
},
{
"created_at": "2021-04-09T09:02:46.289Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gls69hskq05r",
"id": "2nf35bk8w519",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.190Z"
},
{
"created_at": "2021-04-09T09:02:58.772Z",
"description": "This is the main backend system that users interact with.",
"group_id": "gxn7z2l5n5jj",
"id": "w7bx1d7b76t2",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.209Z"
},
{
"created_at": "2023-04-19T22:10:59.589Z",
"description": "This is the main backend system that users interact with.",
"group_id": "f932m0xjrg0t",
"id": "ss4dzzb3b11h",
"name": "API",
"page_id": "0ylqc73rgv6j",
"position": 1,
"showcase": true,
"start_date": "2023-04-19T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-08-07T11:20:45.227Z"
},
{
"created_at": "2021-04-09T09:15:35.756Z",
"description": "This service is responsible for handling file uploads and displaying uploaded files.",
"group_id": "tgql1c6s4fmt",
"id": "hhm05583pvcq",
"name": "Media",
"page_id": "0ylqc73rgv6j",
"position": 3,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2025-11-18T14:11:03.275Z"
},
{
"created_at": "2021-04-09T09:16:28.805Z",
"description": "This service is responsible for handling file uploads and displaying uploaded files.",
"group_id": "gxn7z2l5n5jj",
"id": "vpc4xgcxfwbx",
"name": "Media",
"page_id": "0ylqc73rgv6j",
"position": 3,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2025-11-18T14:11:03.287Z"
},
{
"created_at": "2021-04-09T09:17:10.377Z",
"description": "This service is responsible for handling file uploads and displaying uploaded files.",
"group_id": "gls69hskq05r",
"id": "vcljfcpyymwl",
"name": "Media",
"page_id": "0ylqc73rgv6j",
"position": 3,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2026-02-02T17:45:28.155Z"
},
{
"created_at": "2023-04-19T22:10:59.546Z",
"description": "This service is responsible for handling file uploads and displaying uploaded files.",
"group_id": "f932m0xjrg0t",
"id": "cv0flph51rj7",
"name": "Media",
"page_id": "0ylqc73rgv6j",
"position": 3,
"showcase": true,
"start_date": "2023-04-19T00:00:00.000Z",
"status": "operational",
"updated_at": "2025-11-18T14:11:03.310Z"
},
{
"created_at": "2022-06-21T07:02:12.462Z",
"description": null,
"group_id": "tgql1c6s4fmt",
"id": "wjx2gnm2bv75",
"name": "UI",
"page_id": "0ylqc73rgv6j",
"position": 4,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2025-11-18T14:11:03.321Z"
},
{
"created_at": "2022-06-21T07:03:15.652Z",
"description": null,
"group_id": "gls69hskq05r",
"id": "nv0ty8j6jtxx",
"name": "UI",
"page_id": "0ylqc73rgv6j",
"position": 4,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2025-11-18T14:11:03.334Z"
},
{
"created_at": "2022-06-21T07:03:38.492Z",
"description": null,
"group_id": "gxn7z2l5n5jj",
"id": "lfhvdgy3d69t",
"name": "UI",
"page_id": "0ylqc73rgv6j",
"position": 4,
"showcase": true,
"start_date": "2021-04-09T00:00:00.000Z",
"status": "operational",
"updated_at": "2025-11-18T14:11:03.346Z"
},
{
"created_at": "2023-04-19T22:10:59.549Z",
"description": null,
"group_id": "f932m0xjrg0t",
"id": "8hkfz6r9hj1n",
"name": "UI",
"page_id": "0ylqc73rgv6j",
"position": 4,
"showcase": true,
"start_date": "2023-04-19T00:00:00.000Z",
"status": "operational",
"updated_at": "2025-11-18T14:11:03.357Z"
}
],
"created_at": "2025-11-18T12:26:04.202Z",
"id": "v9q5jrgc1sgm",
"impact": "major",
"impact_override": null,
"incident_updates": [
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "s6bjv236s6ld",
"name": "Europe - Accounts",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "hhm05583pvcq",
"name": "Europe - Media",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "wjx2gnm2bv75",
"name": "Europe - UI",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "jrxnjg00xs0t",
"name": "Australia - Accounts",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "vpc4xgcxfwbx",
"name": "Australia - Media",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "lfhvdgy3d69t",
"name": "Australia - UI",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "wlsn9s8ygswz",
"name": "United States - Accounts",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "vcljfcpyymwl",
"name": "United States - Media",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "nv0ty8j6jtxx",
"name": "United States - UI",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "v6qbqm5qjhsd",
"name": "Canada - Accounts",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "cv0flph51rj7",
"name": "Canada - Media",
"new_status": "operational",
"old_status": "operational"
},
{
"code": "8hkfz6r9hj1n",
"name": "Canada - UI",
"new_status": "operational",
"old_status": "operational"
}
],
"body": "Cloudflare has fully restored normal network operations. The upstream disruptions that caused regional unavailability have been addressed, and all affected services are functioning as expected. We will continue routine monitoring, but no further impact is anticipated.",
"created_at": "2025-11-18T15:59:52.071Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2025-11-18T15:59:52.071Z",
"id": "3pghvsxrrxg6",
"incident_id": "v9q5jrgc1sgm",
"status": "resolved",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2025-11-18T15:59:52.071Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "s6bjv236s6ld",
"name": "Europe - Accounts",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "hhm05583pvcq",
"name": "Europe - Media",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "wjx2gnm2bv75",
"name": "Europe - UI",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "jrxnjg00xs0t",
"name": "Australia - Accounts",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "vpc4xgcxfwbx",
"name": "Australia - Media",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "lfhvdgy3d69t",
"name": "Australia - UI",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "wlsn9s8ygswz",
"name": "United States - Accounts",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "vcljfcpyymwl",
"name": "United States - Media",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "nv0ty8j6jtxx",
"name": "United States - UI",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "v6qbqm5qjhsd",
"name": "Canada - Accounts",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "cv0flph51rj7",
"name": "Canada - Media",
"new_status": "operational",
"old_status": "partial_outage"
},
{
"code": "8hkfz6r9hj1n",
"name": "Canada - UI",
"new_status": "operational",
"old_status": "partial_outage"
}
],
"body": "The Cloudflare network is recovering and access to the FeedbackFruits application and API has been restored. Our team will continue to work with Cloudflare to ensure full availability.",
"created_at": "2025-11-18T14:11:03.382Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2025-11-18T14:11:03.382Z",
"id": "788l88ll577l",
"incident_id": "v9q5jrgc1sgm",
"status": "monitoring",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2025-11-18T14:11:03.382Z",
"wants_twitter_update": false
},
{
"affected_components": [
{
"code": "yjnwrmtmyxr6",
"name": "Europe - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "s6bjv236s6ld",
"name": "Europe - Accounts",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "hhm05583pvcq",
"name": "Europe - Media",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "wjx2gnm2bv75",
"name": "Europe - UI",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "w7bx1d7b76t2",
"name": "Australia - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "jrxnjg00xs0t",
"name": "Australia - Accounts",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "vpc4xgcxfwbx",
"name": "Australia - Media",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "lfhvdgy3d69t",
"name": "Australia - UI",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "2nf35bk8w519",
"name": "United States - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "wlsn9s8ygswz",
"name": "United States - Accounts",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "vcljfcpyymwl",
"name": "United States - Media",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "nv0ty8j6jtxx",
"name": "United States - UI",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "ss4dzzb3b11h",
"name": "Canada - API",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "v6qbqm5qjhsd",
"name": "Canada - Accounts",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "cv0flph51rj7",
"name": "Canada - Media",
"new_status": "partial_outage",
"old_status": "operational"
},
{
"code": "8hkfz6r9hj1n",
"name": "Canada - UI",
"new_status": "partial_outage",
"old_status": "operational"
}
],
"body": "We are aware of widespread network disruptions originating from Cloudflare’s global infrastructure, one of our third-party service providers. These upstream issues are causing intermittent unavailability for FeedbackFruits users in several regions. Our team is actively monitoring the situation and coordinating with Cloudflare to assess the impact and confirm remediation timelines.\n\nFurther updates will be shared as more information becomes available.",
"created_at": "2025-11-18T12:26:04.558Z",
"custom_tweet": null,
"deliver_notifications": true,
"display_at": "2025-11-18T12:26:04.558Z",
"id": "419m5tpwp66b",
"incident_id": "v9q5jrgc1sgm",
"status": "identified",
"tweet_id": null,
"twitter_updated_at": null,
"updated_at": "2025-11-18T12:26:04.558Z",
"wants_twitter_update": false
}
],
"metadata": {},
"monitoring_at": "2025-11-18T14:11:03.382Z",
"name": "Cloudflare service issues",
"page_id": "0ylqc73rgv6j",
"postmortem_body": null,
"postmortem_body_last_updated_at": null,
"postmortem_ignored": false,
"postmortem_notified_subscribers": false,
"postmortem_notified_twitter": false,
"postmortem_published_at": null,
"reminder_intervals": null,
"resolved_at": "2025-11-18T15:59:52.071Z",
"scheduled_auto_completed": false,
"scheduled_auto_in_progress": false,
"scheduled_for": null,
"scheduled_remind_prior": false,
"scheduled_reminded_at": null,
"scheduled_until": null,
"shortlink": "https://stspg.io/81nwkk77dgd5",
"started_at": "2025-11-18T12:26:04.164Z",
"status": "resolved",
"updated_at": "2025-11-18T15:59:52.092Z"
}
],
"page": {
"id": "0ylqc73rgv6j",
"name": "FeedbackFruits",
"url": "https://status.feedbackfruits.com"
},
"status": {
"description": "All Systems Operational",
"indicator": "none"
}
}