I would not change anything in the status code to be backward compatible. I would add a "Warning" header in the response :
Warning: 299 - "Deprecated API"
You can also specify the "-" with the "Agent" that emits the warning, and be more explicit in the warn-text :
Warning: 299 api.blazingFrog.com "Deprecated API: use betterapi.blazingFrog.com instead. Old API maintained until 2015-06-02"
Warning header is specified here: https://www.rfc-editor.org/rfc/rfc7234#section-5.5. Warn-code 299 is generic, "Deprecated" is not standard.
You have to tell your API clients to log the HTTP warnings and monitor it.
I've never used it until now, but when my company will be more mature in Rest API I will integrate it.
Edit (2019-04-25): As @Harry Wood mentioned it, the Warning header is in a chapter related to caching in the documentation. However, the RFC is clear Warnings can be used for other purposes, both cache-related and otherwise.
If you prefer an alternate method, this draft https://datatracker.ietf.org/doc/html/draft-dalal-deprecation-header-00 suggests a new header "Deprecation".
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…