Master vocabulary for API deprecation: lifecycle phases, HTTP deprecation headers, migration guides, consumer notification strategy, and breaking change announcements. Intermediate
0 / 26 completed
1 / 26
An API team is planning to retire the v1 /auth/token endpoint. Which sequence correctly describes the standard API deprecation lifecycle?
Option B describes the industry-standard deprecation lifecycle. Skipping phases creates consumer trust problems and potential business and contractual damage for external APIs:
Phase
What happens
Consumer action
1. Announcement
Deprecation notice published: changelog, email, dashboard banner, API docs updated
Begin planning migration
2. Soft deprecation
Endpoint still works; Deprecation header added to responses; warnings in developer console
Sunset header added to responses; final notices sent
Complete migration before the date
4. Hard removal
Endpoint returns 410 Gone or is removed from routing
Any remaining integrations break — migration window has closed
Timeline guidance: For widely-used public APIs, 6–12 months between announcement and hard removal is standard. For internal APIs with known consumers, 90 days is often sufficient. For APIs with large enterprise customers or SLA obligations, longer timelines and direct migration support may be required.
2 / 26
An API starts returning two response headers: Deprecation: Sat, 01 Jan 2026 00:00:00 GMT and Sunset: Sat, 01 Jul 2026 00:00:00 GMT.
What information do these headers communicate to API clients and their tooling?
Option D correctly describes both headers. The Deprecation and Sunset headers are defined in IETF drafts (draft-dalal-deprecation-header and RFC 8594) and are specifically designed for machine-readable deprecation signalling:
Header
Value format
Meaning
Deprecation
HTTP-date or true
This endpoint is deprecated as of this date. Begin migration.
Sunset
HTTP-date
This endpoint will be removed on or after this date. Hard deadline.
Link (companion)
rel="deprecation" or rel="successor-version"
Link to documentation about the deprecation or the replacement endpoint
Why headers beat documentation alone: Deprecation headers can be parsed programmatically — API observability tools (Datadog, New Relic, custom dashboards) can automatically detect when a service makes calls to a deprecated endpoint and alert the owning team. This is far more effective than expecting developers to read changelogs proactively.
3 / 26
A deprecation notice for the v1/orders endpoint includes a link to a "migration guide." What must a migration guide contain to be genuinely useful to API consumers?
Option A describes the complete migration guide standard. A migration guide is a separate deliverable from the API reference — it is a step-by-step transition document, not a specification replacement.
Migration guide section
What it must answer
Overview of changes
What changed and why — gives consumers context for the migration scope
Field mapping table
Old field name → New field name / Removed (no replacement) / Consolidated into X
Code examples
Before/after code in the languages most commonly used to call the API
Auth changes
If authentication or scopes changed, the migration of auth is often the hardest part
Timeline
Exact dates for each deprecation phase; no ambiguity
Support channel
Where to ask questions: Slack channel, support email, office hours
Why pointing to the reference doc is insufficient: Consumers already know the v2 reference doc exists. What they need is the delta — specifically what they need to change in their existing integration. A good migration guide takes 80% of the work out of migration planning.
4 / 26
A public API with 5,000 registered third-party developers is being deprecated. Which notification strategy is most appropriate?
Option C describes the multi-channel approach required for a public API deprecation at scale. No single communication channel reaches all developers:
Channel
Who it reaches
Coverage gap if omitted
Direct email to registered devs
Developers who provided an email on signup
Developers who don't monitor changelog or HTTP headers
Changelog / release notes
Developers who actively monitor changelogs
Most developers don't check changelogs proactively
Developer dashboard banner
Developers who log in to the portal
Developers using only API keys without portal access
HTTP deprecation headers
Automated monitoring tools in developer systems
Teams without automated API monitoring
High-usage consumer support: Developers with thousands of daily API calls should receive proactive outreach — an account manager contact or dedicated Slack channel. A large enterprise consumer breaking after sunset can create significant business impact for both parties.
5 / 26
An API team is renaming the required request field customer_id to account_id in the POST /orders endpoint. Which announcement phrase most accurately communicates the impact to consumer engineering teams?
Option B is the correct announcement format for a breaking change. It contains every element a developer team's engineer needs to act on immediately:
Element
Example in Option B
Why it's required
Breaking change label
"Breaking change:"
Engineers scan changelogs for this keyword — it must be prominent
Specific change
"'customer_id' renamed to 'account_id' in POST /orders"
Engineers need to know exactly what changed to assess their specific integration
Failure mode
"will receive 400 Bad Request"
Engineers need to know what their integration will do if they don't act
Effective date
"after [date]"
Gives a clear deadline for sprint planning and prioritisation
Action required
"update your integration to use 'account_id'"
Removes ambiguity about what the developer must actually do
Migration guide link
"See migration guide at [link]"
Points to detailed instructions without requiring the announcement to be exhaustive
6 / 26
Reviewer: 'Okay, I've spotted a potential issue with the upcoming changes to the /users/{user_id}/profile endpoint. The documentation states it will be marked as deprecated in three months, but there's no mention of what happens to existing user profiles at that point. Should we add a clear message to the PR describing the data migration process and any potential downtime impacts?',
Which response would best address this reviewer's concern during the code review discussion?
This scenario highlights the importance of proactive communication during API deprecation. Option A is too vague and doesn't address the reviewer's specific concern about data handling. Option B acknowledges the problem but deflects responsibility without offering concrete information. Option C provides a technically accurate but potentially alarming description of the future state, which isn't helpful for guiding development decisions. Option D introduces unnecessary complexity (rollback plans) that isn't central to the immediate communication need – the key is to outline *what* will happen with existing data.
7 / 26
Team Lead: 'Okay, the team's been working on the PaymentGateway.v1 API. We're planning to officially deprecate it in six months and switch to the new PaymentGateway.v2 which offers improved security and performance. However, I've noticed several client apps still heavily rely on this endpoint for processing payments. What's the MOST effective way to communicate this change proactively to our developer community?',
Which of the following actions should the team prioritize?
The best approach is option 1 because proactive communication involving multiple channels is crucial for successful API deprecation. Simply sending an email won't be sufficient; a comprehensive strategy including a detailed notice on the portal, migration guides, and targeted outreach to key clients demonstrates commitment and provides developers with the necessary resources to adapt. Options 2, 3, and 4 are all inadequate – they lack the breadth of communication needed for a significant API change impacting a diverse developer base. A phased approach is vital to minimize disruption.
8 / 26
During a Slack discussion about the upcoming deprecation of the /v1/products endpoint, a developer asks: 'What's the best way to let our users know we're changing things and what they need to do?' Here are some options:
A. 'Just remove the endpoint – it's self-explanatory!'
B. 'We'll send an email announcing the change, but no need for anything more detailed.'
C. 'Let's create a comprehensive API deprecation notice outlining the new endpoint, migration steps, and potential downtime impacts, along with clear documentation updates.'
D. 'Don't worry about it; most developers will figure it out eventually.'
The correct response (C) reflects best practices for API deprecation communication. A comprehensive notice should detail the new endpoint, provide migration instructions, and clearly outline any potential downtime or breaking changes – this minimizes disruption and allows developers to proactively adapt their integrations. Options A and D are dismissive and irresponsible; B lacks sufficient detail and could lead to significant integration issues. This approach demonstrates proactive support and reduces the risk of developer frustration.
9 / 26
Reviewer: 'I've reviewed the PR for the /v1/users/{user_id}/profile endpoint deprecation. The description mentions 'sunset' but doesn't detail how existing user profiles will be handled – will their data be archived, deleted, or migrated? This is a critical omission that could lead to significant disruption.' Which of the following responses best addresses this reviewer's concern and ensures clarity for developers?
This question tests understanding of proactive communication during an API deprecation. The reviewer's concern highlights a crucial gap in documentation – the handling of existing data. Option C directly addresses this by proposing a clear explanation and mitigation strategy within the PR description, demonstrating best practice for transparency and minimizing disruption for consumers. Options A and B are evasive and fail to provide developers with necessary information, while option D is dismissive and irresponsible.
10 / 26
Reviewer: 'Okay, I've spotted a potential issue with the upcoming changes to the /users/{user_id}/profile endpoint. The documentation states it will be marked as deprecated in three months, but there's no mention of what happens to existing user profiles at that point. Should we add a clear message to the PR describing the data migration process and any potential downtime impacts?',
Which response would best address this reviewer's concern during the code review discussion?
This scenario highlights the importance of proactive communication during API deprecation. Option A is too vague and doesn't address the reviewer's specific concern about data handling. Option B acknowledges the problem but deflects responsibility without offering concrete information. Option C provides a technically accurate but potentially alarming description of the future state, which isn't helpful for guiding development decisions. Option D introduces unnecessary complexity (rollback plans) that isn't central to the immediate communication need – the key is to outline *what* will happen with existing data.
11 / 26
Team Lead: 'Okay, the team's been working on the PaymentGateway.v1 API. We're planning to officially deprecate it in six months and switch to the new PaymentGateway.v2 which offers improved security and performance. However, I've noticed several client apps still heavily rely on this endpoint for processing payments. What's the MOST effective way to communicate this change proactively to our developer community?',
Which of the following actions should the team prioritize?
The best approach is option 1 because proactive communication involving multiple channels is crucial for successful API deprecation. Simply sending an email won't be sufficient; a comprehensive strategy including a detailed notice on the portal, migration guides, and targeted outreach to key clients demonstrates commitment and provides developers with the necessary resources to adapt. Options 2, 3, and 4 are all inadequate – they lack the breadth of communication needed for a significant API change impacting a diverse developer base. A phased approach is vital to minimize disruption.
12 / 26
During a Slack discussion about the upcoming deprecation of the /v1/products endpoint, a developer asks: 'What's the best way to let our users know we're changing things and what they need to do?' Here are some options:
A. 'Just remove the endpoint – it's self-explanatory!'
B. 'We'll send an email announcing the change, but no need for anything more detailed.'
C. 'Let's create a comprehensive API deprecation notice outlining the new endpoint, migration steps, and potential downtime impacts, along with clear documentation updates.'
D. 'Don't worry about it; most developers will figure it out eventually.'
The correct response (C) reflects best practices for API deprecation communication. A comprehensive notice should detail the new endpoint, provide migration instructions, and clearly outline any potential downtime or breaking changes – this minimizes disruption and allows developers to proactively adapt their integrations. Options A and D are dismissive and irresponsible; B lacks sufficient detail and could lead to significant integration issues. This approach demonstrates proactive support and reduces the risk of developer frustration.
13 / 26
Reviewer: 'I've reviewed the PR for the /v1/users/{user_id}/profile endpoint deprecation. The description mentions 'sunset' but doesn't detail how existing user profiles will be handled – will their data be archived, deleted, or migrated? This is a critical omission that could lead to significant disruption.' Which of the following responses best addresses this reviewer's concern and ensures clarity for developers?
This question tests understanding of proactive communication during an API deprecation. The reviewer's concern highlights a crucial gap in documentation – the handling of existing data. Option C directly addresses this by proposing a clear explanation and mitigation strategy within the PR description, demonstrating best practice for transparency and minimizing disruption for consumers. Options A and B are evasive and fail to provide developers with necessary information, while option D is dismissive and irresponsible.
14 / 26
Reviewer: 'Okay, I've spotted a potential issue with the upcoming changes to the /users/{user_id}/profile endpoint. The documentation states it will be marked as deprecated in three months, but there's no mention of what happens to existing user profiles at that point. Should we add a clear message to the PR describing the data migration process and any potential downtime impacts?',
Which response would best address this reviewer's concern during the code review discussion?
This scenario highlights the importance of proactive communication during API deprecation. Option A is too vague and doesn't address the reviewer's specific concern about data handling. Option B acknowledges the problem but deflects responsibility without offering concrete information. Option C provides a technically accurate but potentially alarming description of the future state, which isn't helpful for guiding development decisions. Option D introduces unnecessary complexity (rollback plans) that isn't central to the immediate communication need – the key is to outline *what* will happen with existing data.
15 / 26
Team Lead: 'Okay, the team's been working on the PaymentGateway.v1 API. We're planning to officially deprecate it in six months and switch to the new PaymentGateway.v2 which offers improved security and performance. However, I've noticed several client apps still heavily rely on this endpoint for processing payments. What's the MOST effective way to communicate this change proactively to our developer community?',
Which of the following actions should the team prioritize?
The best approach is option 1 because proactive communication involving multiple channels is crucial for successful API deprecation. Simply sending an email won't be sufficient; a comprehensive strategy including a detailed notice on the portal, migration guides, and targeted outreach to key clients demonstrates commitment and provides developers with the necessary resources to adapt. Options 2, 3, and 4 are all inadequate – they lack the breadth of communication needed for a significant API change impacting a diverse developer base. A phased approach is vital to minimize disruption.
16 / 26
During a Slack discussion about the upcoming deprecation of the /v1/products endpoint, a developer asks: 'What's the best way to let our users know we're changing things and what they need to do?' Here are some options:
A. 'Just remove the endpoint – it's self-explanatory!'
B. 'We'll send an email announcing the change, but no need for anything more detailed.'
C. 'Let's create a comprehensive API deprecation notice outlining the new endpoint, migration steps, and potential downtime impacts, along with clear documentation updates.'
D. 'Don't worry about it; most developers will figure it out eventually.'
The correct response (C) reflects best practices for API deprecation communication. A comprehensive notice should detail the new endpoint, provide migration instructions, and clearly outline any potential downtime or breaking changes – this minimizes disruption and allows developers to proactively adapt their integrations. Options A and D are dismissive and irresponsible; B lacks sufficient detail and could lead to significant integration issues. This approach demonstrates proactive support and reduces the risk of developer frustration.
17 / 26
Reviewer: 'I've reviewed the PR for the /v1/users/{user_id}/profile endpoint deprecation. The description mentions 'sunset' but doesn't detail how existing user profiles will be handled – will their data be archived, deleted, or migrated? This is a critical omission that could lead to significant disruption.' Which of the following responses best addresses this reviewer's concern and ensures clarity for developers?
This question tests understanding of proactive communication during an API deprecation. The reviewer's concern highlights a crucial gap in documentation – the handling of existing data. Option C directly addresses this by proposing a clear explanation and mitigation strategy within the PR description, demonstrating best practice for transparency and minimizing disruption for consumers. Options A and B are evasive and fail to provide developers with necessary information, while option D is dismissive and irresponsible.
18 / 26
Reviewer: 'Okay, I've spotted a potential issue with the upcoming changes to the /users/{user_id}/profile endpoint. The documentation states it will be marked as deprecated in three months, but there's no mention of what happens to existing user profiles at that point. Should we add a clear message to the PR describing the data migration process and any potential downtime impacts?',
Which response would best address this reviewer's concern during the code review discussion?
This scenario highlights the importance of proactive communication during API deprecation. Option A is too vague and doesn't address the reviewer's specific concern about data handling. Option B acknowledges the problem but deflects responsibility without offering concrete information. Option C provides a technically accurate but potentially alarming description of the future state, which isn't helpful for guiding development decisions. Option D introduces unnecessary complexity (rollback plans) that isn't central to the immediate communication need – the key is to outline *what* will happen with existing data.
19 / 26
Team Lead: 'Okay, the team's been working on the PaymentGateway.v1 API. We're planning to officially deprecate it in six months and switch to the new PaymentGateway.v2 which offers improved security and performance. However, I've noticed several client apps still heavily rely on this endpoint for processing payments. What's the MOST effective way to communicate this change proactively to our developer community?',
Which of the following actions should the team prioritize?
The best approach is option 1 because proactive communication involving multiple channels is crucial for successful API deprecation. Simply sending an email won't be sufficient; a comprehensive strategy including a detailed notice on the portal, migration guides, and targeted outreach to key clients demonstrates commitment and provides developers with the necessary resources to adapt. Options 2, 3, and 4 are all inadequate – they lack the breadth of communication needed for a significant API change impacting a diverse developer base. A phased approach is vital to minimize disruption.
20 / 26
During a Slack discussion about the upcoming deprecation of the /v1/products endpoint, a developer asks: 'What's the best way to let our users know we're changing things and what they need to do?' Here are some options:
A. 'Just remove the endpoint – it's self-explanatory!'
B. 'We'll send an email announcing the change, but no need for anything more detailed.'
C. 'Let's create a comprehensive API deprecation notice outlining the new endpoint, migration steps, and potential downtime impacts, along with clear documentation updates.'
D. 'Don't worry about it; most developers will figure it out eventually.'
The correct response (C) reflects best practices for API deprecation communication. A comprehensive notice should detail the new endpoint, provide migration instructions, and clearly outline any potential downtime or breaking changes – this minimizes disruption and allows developers to proactively adapt their integrations. Options A and D are dismissive and irresponsible; B lacks sufficient detail and could lead to significant integration issues. This approach demonstrates proactive support and reduces the risk of developer frustration.
21 / 26
Reviewer: 'I've reviewed the PR for the /v1/users/{user_id}/profile endpoint deprecation. The description mentions 'sunset' but doesn't detail how existing user profiles will be handled – will their data be archived, deleted, or migrated? This is a critical omission that could lead to significant disruption.' Which of the following responses best addresses this reviewer's concern and ensures clarity for developers?
This question tests understanding of proactive communication during an API deprecation. The reviewer's concern highlights a crucial gap in documentation – the handling of existing data. Option C directly addresses this by proposing a clear explanation and mitigation strategy within the PR description, demonstrating best practice for transparency and minimizing disruption for consumers. Options A and B are evasive and fail to provide developers with necessary information, while option D is dismissive and irresponsible.
22 / 26
Reviewer: 'This PR mentions the /users/{user_id}/profile endpoint will be marked as 'deprecated' in three months. However, it doesn't specify what happens to existing user profile data after deprecation—will it be archived, deleted, or migrated? It's crucial for users to understand this transition.' What is the BEST action to take next?
The key here is proactive communication. Simply noting 'deprecated' isn't enough; users need to know what *will* happen to their data. Option A is insufficient because it ignores the crucial data handling aspect. Option B is incorrect as confidence shouldn't be assumed based on incomplete information. Option D is too reactive – flagging for immediate attention might be appropriate later, but a targeted question here is more effective.
23 / 26
Sarah (a junior developer) posts in the #api-updates Slack channel: 'Hey team, just noticed we're deprecating the /products/{product_id} endpoint. Is there a migration guide?' Considering Sarah's experience level, what is the MOST helpful response to provide?
Sarah's question highlights a lack of clarity. Option A is unhelpful because it doesn't provide details. Option B assumes she understands the documentation. Option D jumps straight into technical reasons without addressing her immediate need for guidance. Offering the draft guide and inviting questions demonstrates support and ensures she gets the information she needs.
24 / 26
The API returns the following response for a deprecated endpoint:
HTTP/1.1 200 OK
Content-Type: application/json
{
"status": "deprecated",
"message": "This endpoint will no longer be available after January 1st, 2024."
} Which of the following statements best describes how this response should be used to inform developers?
The API response itself is a factual statement. However, it needs context for developers. Option A is too technical; the language isn't accessible for all users. Option B correctly highlights the key information: status and deadline. Options C and D assume actions that aren't necessarily part of the response's purpose.
25 / 26
You are updating the PR description for a change to the /users/{user_id}/profile endpoint. The existing description states: 'This endpoint is being updated to improve performance.' What additional information should you include in the description to ensure effective API deprecation communication?
The original description is too vague. 'Performance improvements' doesn't convey the crucial information that the endpoint is being *deprecated*. Option B provides a critical element – a timeline – which is essential for users to plan their migration. Options C and D are helpful, but the primary need at this stage is clear communication about the deprecation itself.
26 / 26
During a daily stand-up, you're updating the team on progress regarding the /v1/products endpoint deprecation. You state: 'We've implemented the changes and marked the endpoint as deprecated.' What further clarification should you provide to ensure everyone understands the implications?
The initial statement is incomplete. Knowing that the endpoint has been marked as deprecated isn't sufficient information for team members. Providing a timeline (Option B) sets expectations and allows developers to plan accordingly. Options C and D are valuable details but secondary to establishing a concrete removal date.
What will I practice in "API Deprecation Communication | API Design Language Exercises"?
This is an API Design Language exercise set. It walks through 26 scenario-based multiple-choice questions built around real usage of API Design Language terminology that IT professionals encounter on the job.
Is this exercise free to use?
Yes. Every exercise on CoderSlingo, including this one, is free to complete with no account, sign-up, or paywall.
How many questions are in this exercise?
This set contains 26 questions. Each one shows immediate feedback and a detailed explanation after you answer, so you learn the correct usage right away rather than waiting for a final score.
Do I need prior experience to complete this exercise?
No prior experience is required. Each question includes a full explanation covering the reasoning behind the correct answer, so the exercise itself teaches the API Design Language vocabulary as you go.
Can I retry the exercise if I get questions wrong?
Yes — use the "Try again" button on the results screen to reset your answers and go through all the questions again. There is no limit on attempts.
Is my progress saved?
Your answers and score for the current session are tracked in the browser as you go. No account or login is needed, and there is nothing to install.
What if I don't understand a term used in a question?
Read the explanation shown after you answer each question — it breaks down the correct term in plain English with a real-world example. You can also check the site Glossary for quick definitions.
How is this different from reading a blog article on the topic?
Exercises like this one are interactive drills that test and reinforce specific vocabulary through multiple-choice questions, while blog articles explain concepts in prose. Practising here after reading builds active recall, not just passive recognition.
Where can I find more API Design Language exercises?
See the API Design Language exercises hub for the full set of related pages, or browse all exercise categories from the main Exercises index.
Can I use this exercise to prepare for a technical interview?
Yes — API Design Language vocabulary comes up often in technical discussions and interviews. Pair this exercise with our dedicated Interview Preparation section for role-specific practice.