{
  "name": "RIPv1 API Deprecation Calendar",
  "url": "https://ripv1.com",
  "updated": "2026-07-25",
  "count": 77,
  "deprecations": [
    {
      "vendor": "OpenAI",
      "api": "OpenAI API",
      "subject": "Assistants API (beta)",
      "announced": "2025-08-26",
      "sunset": "2026-08-26",
      "migration_target": "Responses API and Conversations API",
      "source_url": "https://developers.openai.com/api/docs/deprecations",
      "notes": "Full API surface shutdown one year after deprecation announcement."
    },
    {
      "vendor": "OpenAI",
      "api": "OpenAI API",
      "subject": "Videos API and sora-2 models",
      "announced": "2026-03-24",
      "sunset": "2026-09-24",
      "migration_target": "No replacement",
      "source_url": "https://developers.openai.com/api/docs/deprecations",
      "notes": "No recommended replacement listed."
    },
    {
      "vendor": "OpenAI",
      "api": "OpenAI API",
      "subject": "gpt-3.5-turbo-0125, gpt-4-0613, o1-2024-12-17, o3-mini-2025-01-31",
      "announced": "2026-04-22",
      "sunset": "2026-10-23",
      "migration_target": "gpt-5.6-terra / gpt-5.6-sol",
      "source_url": "https://developers.openai.com/api/docs/deprecations",
      "notes": "Batch retirement of legacy GPT and o-series models."
    },
    {
      "vendor": "OpenAI",
      "api": "OpenAI API",
      "subject": "GPT-5 and o3 snapshots (gpt-5-2025-08-07, o3-2025-04-16)",
      "announced": "2026-06-11",
      "sunset": "2026-12-11",
      "migration_target": "gpt-5.6-sol, gpt-5.6-terra, gpt-5.6-luna",
      "source_url": "https://developers.openai.com/api/docs/deprecations",
      "notes": ""
    },
    {
      "vendor": "OpenAI",
      "api": "OpenAI API",
      "subject": "Reusable prompts (v1/prompts API), Evals platform, Agent Builder",
      "announced": "2026-06-03",
      "sunset": "2026-11-30",
      "migration_target": "Application code; Agents SDK / ChatKit for Agent Builder",
      "source_url": "https://developers.openai.com/api/docs/deprecations",
      "notes": "Three platform features share the same shutdown date."
    },
    {
      "vendor": "OpenAI",
      "api": "OpenAI API",
      "subject": "gpt-image-1-mini and gpt-image-1.5 models",
      "announced": "2026-06-02",
      "sunset": "2026-12-01",
      "migration_target": "gpt-image-2",
      "source_url": "https://developers.openai.com/api/docs/deprecations",
      "notes": ""
    },
    {
      "vendor": "OpenAI",
      "api": "OpenAI API",
      "subject": "Legacy audio/realtime models (gpt-realtime, gpt-audio, gpt-4o-audio)",
      "announced": "2026-07-20",
      "sunset": "2027-01-20",
      "migration_target": "gpt-realtime-2.1, gpt-audio-1.5",
      "source_url": "https://developers.openai.com/api/docs/deprecations",
      "notes": "Most recently announced deprecation on the page."
    },
    {
      "vendor": "OpenAI",
      "api": "OpenAI API",
      "subject": "dall-e-2 and dall-e-3 models",
      "announced": "2025-11-14",
      "sunset": "2026-05-12",
      "migration_target": "gpt-image-2, gpt-image-1, or gpt-image-1-mini",
      "source_url": "https://developers.openai.com/api/docs/deprecations",
      "notes": ""
    },
    {
      "vendor": "OpenAI",
      "api": "OpenAI API",
      "subject": "gpt-5.2-chat-latest and gpt-5.3-chat-latest",
      "announced": "2026-05-08",
      "sunset": "2026-08-10",
      "migration_target": "gpt-5.6-sol",
      "source_url": "https://developers.openai.com/api/docs/deprecations",
      "notes": ""
    },
    {
      "vendor": "Anthropic",
      "api": "Claude API",
      "subject": "claude-opus-4-1-20250805 (Claude Opus 4.1)",
      "announced": "2026-06-05",
      "sunset": "2026-08-05",
      "migration_target": "claude-opus-4-8",
      "source_url": "https://platform.claude.com/docs/en/docs/about-claude/model-deprecations",
      "notes": "Currently deprecated; retirement upcoming."
    },
    {
      "vendor": "Anthropic",
      "api": "Claude API",
      "subject": "claude-sonnet-4-20250514 and claude-opus-4-20250514",
      "announced": "2026-04-14",
      "sunset": "2026-06-15",
      "migration_target": "claude-sonnet-4-6 / claude-opus-4-8",
      "source_url": "https://platform.claude.com/docs/en/docs/about-claude/model-deprecations",
      "notes": "Retired June 15, 2026."
    },
    {
      "vendor": "Anthropic",
      "api": "Claude API",
      "subject": "claude-3-haiku-20240307 (Claude Haiku 3)",
      "announced": "2026-02-19",
      "sunset": "2026-04-20",
      "migration_target": "claude-haiku-4-5-20251001",
      "source_url": "https://platform.claude.com/docs/en/docs/about-claude/model-deprecations",
      "notes": ""
    },
    {
      "vendor": "Anthropic",
      "api": "Claude API",
      "subject": "claude-3-7-sonnet-20250219 and claude-3-5-haiku-20241022",
      "announced": "2025-10-28",
      "sunset": "2026-02-19",
      "migration_target": "claude-sonnet-4-6 / claude-haiku-4-5-20251001",
      "source_url": "https://platform.claude.com/docs/en/docs/about-claude/model-deprecations",
      "notes": "Sonnet 3.7 announced 2025-10-28; Haiku 3.5 announced 2025-12-19; both retired 2026-02-19."
    },
    {
      "vendor": "Anthropic",
      "api": "Claude API",
      "subject": "claude-3-opus-20240229 (Claude Opus 3)",
      "announced": "2025-06-30",
      "sunset": "2026-01-05",
      "migration_target": "claude-opus-4-8",
      "source_url": "https://platform.claude.com/docs/en/docs/about-claude/model-deprecations",
      "notes": ""
    },
    {
      "vendor": "Anthropic",
      "api": "Claude API",
      "subject": "claude-3-5-sonnet-20240620 and claude-3-5-sonnet-20241022",
      "announced": "2025-08-13",
      "sunset": "2025-10-28",
      "migration_target": "claude-sonnet-4-6",
      "source_url": "https://platform.claude.com/docs/en/docs/about-claude/model-deprecations",
      "notes": ""
    },
    {
      "vendor": "Anthropic",
      "api": "Claude API",
      "subject": "Sampling parameters temperature, top_p, top_k (Claude Opus 4.7 and later)",
      "announced": null,
      "sunset": "TBD",
      "migration_target": "Omit parameters; use prompting to guide behavior",
      "source_url": "https://platform.claude.com/docs/en/docs/about-claude/model-deprecations",
      "notes": "Non-default values return a 400 error on Claude 4.7+ models."
    },
    {
      "vendor": "Google AI",
      "api": "Gemini API",
      "subject": "gemini-2.5-pro, gemini-2.5-flash, gemini-2.5-flash-lite",
      "announced": null,
      "sunset": "2026-10-16",
      "migration_target": "gemini-3.1-pro-preview / gemini-3.6-flash / gemini-3.1-flash-lite",
      "source_url": "https://ai.google.dev/gemini-api/docs/deprecations",
      "notes": "Listed shutdown dates are earliest possible dates."
    },
    {
      "vendor": "Google AI",
      "api": "Gemini API",
      "subject": "Gemini 2.0 stable models (gemini-2.0-flash, gemini-2.0-flash-001, gemini-2.0-flash-lite, gemini-2.0-flash-lite-001)",
      "announced": null,
      "sunset": "2026-06-01",
      "migration_target": "gemini-3.5-flash or gemini-3.1-flash-lite",
      "source_url": "https://ai.google.dev/gemini-api/docs/changelog",
      "notes": "Discontinued June 1, 2026 per changelog."
    },
    {
      "vendor": "Google AI",
      "api": "Gemini API",
      "subject": "gemini-3.1-flash-lite",
      "announced": null,
      "sunset": "2027-05-07",
      "migration_target": "gemini-3.5-flash-lite",
      "source_url": "https://ai.google.dev/gemini-api/docs/deprecations",
      "notes": ""
    },
    {
      "vendor": "Google AI",
      "api": "Gemini API",
      "subject": "text-embedding-004",
      "announced": null,
      "sunset": "2026-01-14",
      "migration_target": "gemini-embedding-2",
      "source_url": "https://ai.google.dev/gemini-api/docs/deprecations",
      "notes": "Model originally released April 9, 2024."
    },
    {
      "vendor": "Google AI",
      "api": "Gemini API",
      "subject": "Veo 2.0 and Veo 3.0 video models (veo-2.0-generate-001, veo-3.0-generate-001)",
      "announced": "2026-06-15",
      "sunset": "2026-06-30",
      "migration_target": "Veo 3.1 preview/GA models",
      "source_url": "https://ai.google.dev/gemini-api/docs/deprecations",
      "notes": ""
    },
    {
      "vendor": "Google AI",
      "api": "Gemini API",
      "subject": "Gemini 1.5 models (gemini-1.5-pro, gemini-1.5-flash, gemini-1.5-flash-8b)",
      "announced": null,
      "sunset": "2025-09-29",
      "migration_target": "Gemini 2.x/3.x models",
      "source_url": "https://ai.google.dev/gemini-api/docs/changelog",
      "notes": "Shutdown noted in changelog; no replacement named in the entry."
    },
    {
      "vendor": "Kubernetes",
      "api": "Kubernetes API",
      "subject": "flowcontrol.apiserver.k8s.io/v1beta3 (FlowSchema, PriorityLevelConfiguration) removed in v1.32",
      "announced": null,
      "sunset": "TBD",
      "migration_target": "flowcontrol.apiserver.k8s.io/v1",
      "source_url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
      "notes": "No calendar dates stated on page; removal tied to the v1.32 release. nominalConcurrencyShares only defaults to 30 when unspecified."
    },
    {
      "vendor": "Kubernetes",
      "api": "Kubernetes API",
      "subject": "flowcontrol.apiserver.k8s.io/v1beta2 (FlowSchema, PriorityLevelConfiguration) removed in v1.29",
      "announced": null,
      "sunset": "TBD",
      "migration_target": "flowcontrol.apiserver.k8s.io/v1 (or v1beta3)",
      "source_url": "https://kubernetes.io/docs/reference/using-api/deprecation-guide/",
      "notes": "No calendar dates stated on page; spec.limited.assuredConcurrencyShares renamed to nominalConcurrencyShares."
    },
    {
      "vendor": "AWS",
      "api": "AWS Lambda runtimes",
      "subject": "Node.js 18 runtime (nodejs18.x)",
      "announced": null,
      "sunset": "2025-09-01",
      "migration_target": "nodejs22.x or nodejs24.x runtime",
      "source_url": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html",
      "notes": "Function create blocked Feb 1, 2027; update blocked Mar 3, 2027."
    },
    {
      "vendor": "AWS",
      "api": "AWS Lambda runtimes",
      "subject": "Python 3.9 runtime (python3.9)",
      "announced": null,
      "sunset": "2025-12-15",
      "migration_target": "python3.13 or python3.14 runtime",
      "source_url": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html",
      "notes": "Function create blocked Feb 1, 2027; update blocked Mar 3, 2027."
    },
    {
      "vendor": "AWS",
      "api": "AWS Lambda runtimes",
      "subject": "Node.js 20 runtime (nodejs20.x)",
      "announced": null,
      "sunset": "2026-04-30",
      "migration_target": "nodejs22.x or nodejs24.x runtime",
      "source_url": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html",
      "notes": "Function create blocked Feb 1, 2027; update blocked Mar 3, 2027."
    },
    {
      "vendor": "AWS",
      "api": "AWS Lambda runtimes",
      "subject": "OS-only runtime provided.al2 (Amazon Linux 2)",
      "announced": null,
      "sunset": "2026-07-31",
      "migration_target": "provided.al2023 runtime",
      "source_url": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html",
      "notes": "Amazon Linux 2 reaches end of life June 30, 2026; create blocked Feb 1, 2027."
    },
    {
      "vendor": "AWS",
      "api": "AWS Lambda runtimes",
      "subject": "Python 3.10 runtime (python3.10, Amazon Linux 2)",
      "announced": null,
      "sunset": "2026-10-31",
      "migration_target": "python3.13 or python3.14 runtime (Amazon Linux 2023)",
      "source_url": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html",
      "notes": "Function create blocked Feb 1, 2027; update blocked Mar 3, 2027."
    },
    {
      "vendor": "AWS",
      "api": "AWS Lambda runtimes",
      "subject": ".NET 8 runtime (dotnet8)",
      "announced": null,
      "sunset": "2026-11-10",
      "migration_target": "dotnet10 runtime",
      "source_url": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html",
      "notes": ".NET 9 container-only runtime deprecates the same day; dotnet8 create blocked Feb 1, 2027."
    },
    {
      "vendor": "AWS",
      "api": "AWS Lambda runtimes",
      "subject": "Java 8 (java8.al2), Java 11 (java11), and Java 17 (java17) runtimes on Amazon Linux 2",
      "announced": null,
      "sunset": "2027-06-30",
      "migration_target": "java21 or java25 runtime (Amazon Linux 2023); AL2023-based Java 8/11/17 runtimes planned before end of July 2026",
      "source_url": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html",
      "notes": "Python 3.11 (AL2) shares the same Jun 30, 2027 deprecation date."
    },
    {
      "vendor": "AWS",
      "api": "AWS SDK for JavaScript",
      "subject": "AWS SDK for JavaScript v2",
      "announced": "2024-03-06",
      "sunset": "2025-09-08",
      "migration_target": "AWS SDK for JavaScript v3",
      "source_url": "https://aws.amazon.com/blogs/developer/announcing-end-of-support-for-aws-sdk-for-javascript-v2/",
      "notes": "Entered maintenance mode Sep 8, 2024 (critical fixes and security updates only)."
    },
    {
      "vendor": "AWS",
      "api": "AWS SDK for Java",
      "subject": "AWS SDK for Java v1.x",
      "announced": "2024-01-12",
      "sunset": "2025-12-31",
      "migration_target": "AWS SDK for Java v2.x",
      "source_url": "https://aws.amazon.com/blogs/developer/announcing-end-of-support-for-aws-sdk-for-java-v1-x-on-december-31-2025/",
      "notes": "Entered maintenance mode Jul 31, 2024."
    },
    {
      "vendor": "AWS",
      "api": "AWS SDK for Go",
      "subject": "AWS SDK for Go v1",
      "announced": "2024-01-12",
      "sunset": "2025-07-31",
      "migration_target": "AWS SDK for Go v2",
      "source_url": "https://aws.amazon.com/blogs/developer/announcing-end-of-support-for-aws-sdk-for-go-v1-on-july-31-2025/",
      "notes": "Maintenance mode Jul 31, 2024 to Jul 30, 2025; no updates after end-of-support."
    },
    {
      "vendor": "Microsoft Azure",
      "api": "Azure Public IP addresses",
      "subject": "Basic SKU public IP addresses",
      "announced": null,
      "sunset": "2025-09-30",
      "migration_target": "Standard SKU public IP addresses",
      "source_url": "https://learn.microsoft.com/en-us/azure/virtual-network/ip-services/public-ip-basic-upgrade-guidance",
      "notes": "Basic IPs remain operational post-retirement but unsupported and without SLA."
    },
    {
      "vendor": "Microsoft Azure",
      "api": "Azure Load Balancer",
      "subject": "Basic SKU Load Balancer",
      "announced": null,
      "sunset": "2025-09-30",
      "migration_target": "Standard Load Balancer",
      "source_url": "https://learn.microsoft.com/en-us/azure/load-balancer/load-balancer-basic-upgrade-guidance",
      "notes": "Remains operational post-retirement but unsupported and without SLA; automated PowerShell upgrade scripts provided."
    },
    {
      "vendor": "Microsoft Azure",
      "api": "Azure Application Gateway",
      "subject": "Application Gateway V1 (including WAF on V1)",
      "announced": null,
      "sunset": "2026-04-28",
      "migration_target": "Application Gateway V2",
      "source_url": "https://learn.microsoft.com/en-us/azure/application-gateway/retirement-faq",
      "notes": "After Apr 28, 2026 Microsoft blocks the data path and deletes remaining V1 resources; no patches, support, or SLA."
    },
    {
      "vendor": "Microsoft Azure",
      "api": "Azure Front Door",
      "subject": "Azure Front Door (classic) tier",
      "announced": null,
      "sunset": "2027-03-31",
      "migration_target": "Azure Front Door Standard or Premium",
      "source_url": "https://learn.microsoft.com/en-us/azure/frontdoor/classic-retirement-faq",
      "notes": "No new classic resources since Apr 1, 2025; managed certificates unsupported since Aug 15, 2025; zero-downtime migration tool available."
    },
    {
      "vendor": "Atlassian",
      "api": "Jira Cloud platform REST API",
      "subject": "Workflow transition properties API set",
      "announced": "2025-03-30",
      "sunset": "2026-07-13",
      "migration_target": "Bulk get workflows and Bulk update workflows APIs",
      "source_url": "https://developer.atlassian.com/cloud/jira/platform/changelog/",
      "notes": "Removed from the public API on Jul 13, 2026."
    },
    {
      "vendor": "Atlassian",
      "api": "Jira Cloud webhooks (workflow post functions)",
      "subject": "workflowId field in Connect workflow post function and Trigger-a-Webhook post function payloads",
      "announced": "2026-07-19",
      "sunset": "2027-07-31",
      "migration_target": "workflowEntityId (or workflowName)",
      "source_url": "https://developer.atlassian.com/changelog/",
      "notes": "Field currently returns a placeholder value; removal any time after Jul 31, 2027."
    },
    {
      "vendor": "Slack",
      "api": "Slack Web API",
      "subject": "files.upload method",
      "announced": "2024-04",
      "sunset": "2025-11-12",
      "migration_target": "files.getUploadURLExternal + files.completeUploadExternal (SDK helpers: uploadV2, files_upload_v2)",
      "source_url": "https://docs.slack.dev/changelog/2024-04-a-better-way-to-upload-files-is-here-to-stay",
      "notes": "Apps created after May 16, 2024 could not call files.upload; method fully unavailable Nov 12, 2025."
    },
    {
      "vendor": "Slack",
      "api": "Slack platform (classic apps)",
      "subject": "Classic apps and legacy custom integration bots",
      "announced": "2024-09",
      "sunset": "TBD",
      "migration_target": "Modern Slack apps (granular-permission apps)",
      "source_url": "https://docs.slack.dev/changelog",
      "notes": "New classic apps can no longer be created; scheduled deprecation paused as of December 2025, existing classic apps keep functioning."
    },
    {
      "vendor": "Meta",
      "api": "Graph API",
      "subject": "Graph API v18.0 (released 2023-09-12)",
      "announced": null,
      "sunset": "2026-01-26",
      "migration_target": "Graph API v22.0 or later",
      "source_url": "https://developers.facebook.com/docs/graph-api/changelog/versions",
      "notes": "Expiration date from Meta's official version table; recently passed."
    },
    {
      "vendor": "Meta",
      "api": "Graph API",
      "subject": "Graph API v19.0 (released 2024-01-23)",
      "announced": null,
      "sunset": "2026-05-21",
      "migration_target": "Graph API v22.0 or later",
      "source_url": "https://developers.facebook.com/docs/graph-api/changelog/versions",
      "notes": "Expiration date from Meta's official version table; recently passed."
    },
    {
      "vendor": "Meta",
      "api": "Graph API",
      "subject": "Graph API v20.0 (released 2024-05-21)",
      "announced": null,
      "sunset": "2026-09-24",
      "migration_target": "Graph API v22.0 or later (v25.0 is current)",
      "source_url": "https://developers.facebook.com/docs/graph-api/changelog/versions",
      "notes": "Upcoming sunset; v21.0+ expiration dates still listed as TBD."
    },
    {
      "vendor": "Meta",
      "api": "Marketing API",
      "subject": "Marketing API v23.0 (released 2025-05-29)",
      "announced": null,
      "sunset": "2026-06-09",
      "migration_target": "Marketing API v24.0 or v25.0",
      "source_url": "https://developers.facebook.com/docs/graph-api/changelog/versions",
      "notes": "Marketing API versions expire faster than Graph API; recently passed."
    },
    {
      "vendor": "Meta",
      "api": "Marketing API",
      "subject": "Marketing API v24.0 (released 2025-10-08)",
      "announced": null,
      "sunset": "2026-10-06",
      "migration_target": "Marketing API v25.0",
      "source_url": "https://developers.facebook.com/docs/graph-api/changelog/versions",
      "notes": "Upcoming sunset per Meta's official version table."
    },
    {
      "vendor": "Shopify",
      "api": "Admin/Storefront APIs (all versioned APIs)",
      "subject": "API version 2025-07 (released 2025-07-01)",
      "announced": "2025-07",
      "sunset": "2026-07-16",
      "migration_target": "API version 2026-07 or later",
      "source_url": "https://shopify.dev/docs/api/usage/versioning",
      "notes": "Accessible until 2026-07-16 15:00 UTC; retired versions auto-fall-forward to oldest supported version."
    },
    {
      "vendor": "Shopify",
      "api": "Admin/Storefront APIs (all versioned APIs)",
      "subject": "API version 2025-10 (released 2025-10-01)",
      "announced": "2025-10",
      "sunset": "2026-10-16",
      "migration_target": "API version 2026-07 or later",
      "source_url": "https://shopify.dev/docs/api/usage/versioning",
      "notes": "Quarterly versions supported minimum 12 months; accessible until 2026-10-16 15:00 UTC."
    },
    {
      "vendor": "Shopify",
      "api": "Admin/Storefront APIs (all versioned APIs)",
      "subject": "API version 2026-01 (released 2026-01-01)",
      "announced": "2026-01",
      "sunset": "2027-01-16",
      "migration_target": "API version 2026-07 or later",
      "source_url": "https://shopify.dev/docs/api/usage/versioning",
      "notes": "Accessible until 2027-01-16 15:00 UTC."
    },
    {
      "vendor": "Shopify",
      "api": "REST Admin API",
      "subject": "REST Admin API (entire API surface, legacy as of 2024-10-01)",
      "announced": "2024-10-01",
      "sunset": "TBD",
      "migration_target": "GraphQL Admin API",
      "source_url": "https://shopify.dev/docs/api/admin-rest",
      "notes": "Legacy since 2024-10-01; from 2025-04-01 all new public apps must use GraphQL Admin API exclusively; no removal date set."
    },
    {
      "vendor": "Stripe",
      "api": "Payments",
      "subject": "SOFORT payment method (standalone)",
      "announced": null,
      "sunset": "2025-03-31",
      "migration_target": "Klarna Pay Now, SEPA Direct Debit, Pay By Bank, or Bank Transfers",
      "source_url": "https://docs.stripe.com/payments/sofort",
      "notes": "Discontinued as of 2025-03-31; integrations must remove sofort from payment_method_types to avoid failures."
    },
    {
      "vendor": "Stripe",
      "api": "Payments",
      "subject": "giropay payment method",
      "announced": null,
      "sunset": "2024-06-30",
      "migration_target": "Alternative payment methods via Checkout/Elements dynamic payment methods",
      "source_url": "https://docs.stripe.com/payments/giropay",
      "notes": "Financial partners discontinued giropay; no new onboarding or transactions after 2024-06-30."
    },
    {
      "vendor": "Stripe",
      "api": "Billing/Invoicing API",
      "subject": "Legacy usage-based billing and Upcoming Invoice API methods",
      "announced": null,
      "sunset": "2025-03-31",
      "migration_target": "Create Preview Invoice API and current usage-based billing (Meters)",
      "source_url": "https://docs.stripe.com/changelog",
      "notes": "Removed as of API version 2025-03-31.basil; version-gated breaking change, accounts pinned to older API versions unaffected until upgrade."
    },
    {
      "vendor": "Stripe",
      "api": "Stripe.js / Checkout",
      "subject": "redirectToCheckout method",
      "announced": null,
      "sunset": "2025-09-30",
      "migration_target": "Current Checkout Session integration (server-created session URL)",
      "source_url": "https://docs.stripe.com/changelog",
      "notes": "Removed as of API version 2025-09-30.clover; version-gated breaking change."
    },
    {
      "vendor": "Twilio",
      "api": "Programmable Chat",
      "subject": "Programmable Chat API (entire product)",
      "announced": "2021-01-25",
      "sunset": "2022-07-25",
      "migration_target": "Twilio Conversations API",
      "source_url": "https://www.twilio.com/en-us/changelog/programmable-chat-end-of-life-notice",
      "notes": "Official EOL notice: sunset 2022-07-25; docs still direct remaining users to Conversations migration guide."
    },
    {
      "vendor": "Twilio",
      "api": "Authy API",
      "subject": "Authy API (2FA API, closed to new customers)",
      "announced": null,
      "sunset": "TBD",
      "migration_target": "Twilio Verify v2 API",
      "source_url": "https://www.twilio.com/docs/authy/api",
      "notes": "Support for SMS/Voice-only customers ended 2022-11; TOTP/Push customers active before 2023-03-01 remain supported; full deprecation announced but no final EOL date published."
    },
    {
      "vendor": "Salesforce",
      "api": "Salesforce Platform SOAP/REST API",
      "subject": "Platform API versions 21.0 through 30.0",
      "announced": null,
      "sunset": "TBD",
      "migration_target": "API versions 31.0+ (latest is 67.0, Summer '26)",
      "source_url": "https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/api_eol_soap.htm",
      "notes": "Retired and unavailable as of the Summer '25 release; calls now return 500:UNSUPPORTED_API_VERSION."
    },
    {
      "vendor": "Salesforce",
      "api": "Salesforce Platform SOAP API",
      "subject": "SOAP API login() call",
      "announced": null,
      "sunset": "TBD",
      "migration_target": "OAuth 2.0 flows for authentication",
      "source_url": "https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/api_eol_soap.htm",
      "notes": "Scheduled for retirement in Summer '27; login() remains supported in API versions 62.0-64.0 for a minimum of two years after each version's release."
    },
    {
      "vendor": "Google (Maps Platform)",
      "api": "Maps JavaScript API",
      "subject": "Heatmap Layer (visualization library)",
      "announced": "2025-05-27",
      "sunset": "2026-05",
      "migration_target": "deck.gl HeatmapLayer",
      "source_url": "https://developers.google.com/maps/deprecations",
      "notes": "Listed as an active deprecation on the Maps Platform deprecations page."
    },
    {
      "vendor": "Google (Maps Platform)",
      "api": "Maps JavaScript API",
      "subject": "KML Layer",
      "announced": "2026-04-30",
      "sunset": "TBD",
      "migration_target": "Upload KML data as a dataset and use data-driven styling, or third-party libraries",
      "source_url": "https://developers.google.com/maps/deprecations",
      "notes": "Deprecated April 30, 2026; sunset date not yet announced."
    },
    {
      "vendor": "Google (Maps Platform)",
      "api": "Maps JavaScript API",
      "subject": "google.maps.Marker class",
      "announced": "2024-02",
      "sunset": "TBD",
      "migration_target": "google.maps.marker.AdvancedMarkerElement",
      "source_url": "https://developers.google.com/maps/deprecations",
      "notes": "Google commits to at least 12 months' notice before discontinuation."
    },
    {
      "vendor": "Google (Maps Platform)",
      "api": "Maps SDK for Android",
      "subject": "Legacy map renderer",
      "announced": "2024-03-04",
      "sunset": "2025-04",
      "migration_target": "Latest renderer (rolled out automatically)",
      "source_url": "https://developers.google.com/maps/deprecations",
      "notes": ""
    },
    {
      "vendor": "Google (Maps Platform)",
      "api": "Maps JavaScript API",
      "subject": "Drawing Library",
      "announced": "2025-08",
      "sunset": "2026-05",
      "migration_target": "Third-party drawing libraries",
      "source_url": "https://developers.google.com/maps/deprecations",
      "notes": "Listed under completed discontinuations; discontinued May 2026."
    },
    {
      "vendor": "Google (Maps Platform)",
      "api": "Google Maps Platform",
      "subject": "Legacy cloud-based maps styling",
      "announced": "2024-03-18",
      "sunset": "2025-03-25",
      "migration_target": "Current cloud-based maps styling",
      "source_url": "https://developers.google.com/maps/deprecations",
      "notes": ""
    },
    {
      "vendor": "Google (Maps Platform)",
      "api": "Places API",
      "subject": "Obsolete place IDs",
      "announced": "2021-03-16",
      "sunset": "2025-01-13",
      "migration_target": "Refresh place IDs periodically",
      "source_url": "https://developers.google.com/maps/deprecations",
      "notes": "Discontinuation completed January 13, 2025."
    },
    {
      "vendor": "Google (Cloud)",
      "api": "Container Registry",
      "subject": "Container Registry (gcr.io) service",
      "announced": null,
      "sunset": "2025-03-18",
      "migration_target": "Artifact Registry",
      "source_url": "https://docs.cloud.google.com/artifact-registry/docs/transition/prepare-gcr-shutdown",
      "notes": "Effective March 18, 2025 Container Registry is shut down and writing images is unavailable; existing gcr.io URLs served via Artifact Registry keep working."
    },
    {
      "vendor": "Google (Workspace)",
      "api": "Google Workspace (IMAP/POP/SMTP/CalDAV/CardDAV, Google Sync)",
      "subject": "Less Secure Apps, Google Sync, and password-only (basic) authentication",
      "announced": "2023-09",
      "sunset": "2024-09-30",
      "migration_target": "OAuth 2.0 / Sign in with Google (e.g. Outlook with OAuth, Google Workspace Sync for Microsoft Outlook)",
      "source_url": "https://workspaceupdates.googleblog.com/2023/09/winding-down-google-sync-and-less-secure-apps-support.html",
      "notes": "LSA admin settings removed June 15, 2024; post updates extended final LSA disablement to March 14, 2025 and May 1, 2025 for remaining cases."
    },
    {
      "vendor": "GitHub",
      "api": "GitHub REST API",
      "subject": "REST API calendar version 2022-11-28",
      "announced": null,
      "sunset": "2028-03-10",
      "migration_target": "REST API version 2026-03-10",
      "source_url": "https://docs.github.com/en/rest/about-the-rest-api/api-versions",
      "notes": "Versions are supported 24 months after a newer version releases; after end of support, requests return 410 Gone."
    },
    {
      "vendor": "GitHub",
      "api": "GitHub Models",
      "subject": "GitHub Models (playground, model catalog, inference API, BYOK)",
      "announced": "2026-07-01",
      "sunset": "2026-07-30",
      "migration_target": "Microsoft Foundry (model catalog) or GitHub Copilot (AI workflows)",
      "source_url": "https://github.blog/changelog/2026-07-01-github-models-is-being-fully-retired-on-july-30-2026",
      "notes": "Closed to new customers June 16, 2026; brownouts on July 16 and July 23, 2026."
    },
    {
      "vendor": "GitHub",
      "api": "npm",
      "subject": "Granular access tokens configured to bypass 2FA",
      "announced": "2026-07-08",
      "sunset": "2026-08",
      "migration_target": "Trusted publishing (OIDC) or staged publishing with human 2FA approval",
      "source_url": "https://github.blog/changelog/2026-07-08-npm-install-time-security-and-gat-bypass2fa-deprecation",
      "notes": "Early August 2026: bypass tokens lose sensitive account/package/org management actions; around January 2027 they also lose direct publishing."
    },
    {
      "vendor": "GitHub",
      "api": "GitHub Copilot",
      "subject": "Copilot Billing Preview app",
      "announced": "2026-07-07",
      "sunset": "2026-08-03",
      "migration_target": "Built-in AI usage page, budgets, usage reports, and billing API in GitHub billing settings",
      "source_url": "https://github.blog/changelog/2026-07-07-copilot-billing-preview-app-will-be-retired-on-august-3",
      "notes": ""
    },
    {
      "vendor": "GitHub",
      "api": "GitHub Copilot",
      "subject": "Gemini 2.5 Pro and Gemini 3 Flash models",
      "announced": "2026-07-02",
      "sunset": "2026-07-31",
      "migration_target": "Gemini 3.1 Pro and Gemini 3.5 Flash",
      "source_url": "https://github.blog/changelog/2026-07-02-upcoming-deprecation-of-gemini-2-5-pro-and-gemini-3-flash",
      "notes": "Deprecated across all GitHub Copilot experiences."
    },
    {
      "vendor": "Plaid",
      "api": "Plaid Link iOS SDK",
      "subject": "LinkKit iOS SDK versions 5.x and earlier",
      "announced": "2026-06-16",
      "sunset": "TBD",
      "migration_target": "iOS SDK 6.x or 7.x",
      "source_url": "https://plaid.com/docs/changelog/",
      "notes": "Officially deprecated per Plaid's mobile SDK lifecycle; LinkKit 7 also drops CocoaPods distribution (noted July 2, 2026)."
    },
    {
      "vendor": "Plaid",
      "api": "Transactions / Enrich",
      "subject": "Legacy category and category_id fields",
      "announced": null,
      "sunset": "2025-05-20",
      "migration_target": "personal_finance_category field",
      "source_url": "https://plaid.com/docs/changelog/",
      "notes": "Fields removed per changelog entry dated May 20, 2025."
    },
    {
      "vendor": "Plaid",
      "api": "Plaid Link",
      "subject": "Modular Link (Europe-only Link mode)",
      "announced": null,
      "sunset": "2025-12-03",
      "migration_target": "Standard Plaid Link (native SDKs or Hosted Link)",
      "source_url": "https://plaid.com/docs/changelog/",
      "notes": "Support ended per changelog entry dated December 3, 2025; webview-based integration modes were closed to new customers April 24, 2025."
    },
    {
      "vendor": "Plaid",
      "api": "Plaid Check (Consumer Report)",
      "subject": "Identity data fields outside the Base Report",
      "announced": "2025-03",
      "sunset": "2025-06-30",
      "migration_target": "Base Report identity data",
      "source_url": "https://plaid.com/docs/changelog/",
      "notes": "Changelog of March 1, 2025 states identity data is provided in the Base Report only, with removal deadline June 30, 2025."
    }
  ]
}