Start here. This is the direct spoken answer to practice first.
Why this question matters
Investigate and mitigate API failures caused by a slow or failing downstream dependency. It matters in real backend work because the team needs observability, ownership, and rollback room to recover without guessing. The practical angle is dependency isolation, timeout strategy, retry judgment, graceful degradation, observability, and incident mitigation, tied to a concrete production decision.
Suppose an order POST times out while calling a payment provider, and the provider log shows the request reached it but our API received no response. I treat the payment outcome as unknown, not failed. I stop automatic retries with new identities, preserve the provider request id and local operation id, and return or expose a pending state while the service queries or reconciles the authoritative provider outcome.