PHPackages                             check24/apitk-deprecation-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. check24/apitk-deprecation-bundle

ActiveSymfony-bundle

check24/apitk-deprecation-bundle
================================

This bundle provides deprecation functionality for RESTful APIs.

3.0.0(4y ago)12.4k2[1 PRs](https://github.com/byWulf/apitk-deprecation-bundle/pulls)MITPHPPHP ^7.4 || ^8.0

Since Jul 20Pushed 4y agoCompare

[ Source](https://github.com/byWulf/apitk-deprecation-bundle)[ Packagist](https://packagist.org/packages/check24/apitk-deprecation-bundle)[ RSS](/packages/check24-apitk-deprecation-bundle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (9)Dependencies (14)Versions (18)Used By (0)

apitk-deprecation-bundle
========================

[](#apitk-deprecation-bundle)

Overview
--------

[](#overview)

This bundle enables you to mark API endpoints as deprecated and inform the client about that.

Installation
------------

[](#installation)

Install the package via composer:

```
composer require check24/apitk-deprecation-bundle
```

Usage
-----

[](#usage)

### Deprecations

[](#deprecations)

You can mark actions as deprecated so developers can notice that they have to update their API call to a newer version or to use a whole other endpoint.

```
use Shopping\ApiTKDeprecationBundle\Annotation\Deprecated;

/**
 * Returns the users in the system.
 *
 * @Rest\Get("/v2/users")
 * @Rest\View()
 *
 * @Deprecated(removedAfter="2018-10-09", since="2018-07-01", description="use /v3/users instead")

 * @param User[] $users
 * @return User[]
 */
```

A notice is displayed inside the swagger documentation and a new response header `x-apitk-deprecated: use /v3/users instead`, `x-apitk-deprecated-removed-at: 2018-10-09` (if a date was set), `x-apitk-deprecated-since: 2018-07-01` (if a date was set) will be sent to the client.

All annotation arguments are optional, so feel free to use `@Deprecated` only. In this case all clients will receive a `x-apitk-deprecated: deprecated` response header. The header's value may be overridden by providing the `description` argument as shown above.

If you want to hide a certain endpoint from the docs, use the `hideFromDocs=true` parameter in the `Deprecated` annotation. The corresponding action then will not be shown.

### Class annotations

[](#class-annotations)

Since Version 1.0.6, it's possible to put `@Deprecated` annotations on a Controller's class to mark all containing endpoints as deprecated.
Please keep in mind that method annotations always override class annotations completely. No merging or whatsoever will be performed. When a controller class has a `@Deprecated` annotation, it's impossible to mark one or more methods of the controller as non-deprecated.

### Deprecation Logging

[](#deprecation-logging)

Since version 2.0.0, the apitk-deprecation-bundle will throw `E_USER_DEPRECATED` errors when a deprecated endpoint is called. This is useful when you're using APM tools like NewRelic and would like to be notified when deprecated endpoints are called.

Deprecation logging is active by default. You may deactivate it globally by creating a `config/packages/apitk_deprecation.yaml` containing:

```
apitk_deprecation:
  trigger_deprecations: false # default: true
```

You can also activate/deactivate deprecation logging for specific endpoints only:

```
/**
 * Always log deprecations for this route or class, ignoring global settings:
 * @Deprecated(description="use /v3/users instead", triggerDeprecation=true)
 *
 * Never log deprecations for this route or class, ignoring global settings:
 * @Deprecated(description="use /v3/users instead", triggerDeprecation=false)
 * ...
 */
```

###  Health Score

36

—

LowBetter than 81% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity19

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity76

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~93 days

Recently: every ~149 days

Total

14

Last Release

1642d ago

Major Versions

0.9.0 → 1.0.02018-08-16

1.0.6 → 2.0.02020-03-23

1.0.7 → 2.0.12020-03-23

2.3.0 → 3.0.02021-11-09

PHP version history (3 changes)0.9.0PHP ^7.1.3

2.2.0PHP ^7.1.3 || ^8.0

3.0.0PHP ^7.4 || ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/caaeaf0a1a74fef634f9eea17d585684d3758882c622ac42f8ef6973b1ef1910?d=identicon)[byWulf](/maintainers/byWulf)

![](https://www.gravatar.com/avatar/82e22e3d09adca0634ae909f6e3a8cbb82e193d6436ca7e304e2ff666097e58a?d=identicon)[ofeige](/maintainers/ofeige)

![](https://www.gravatar.com/avatar/f94057f8465d9062e73c8a219f4edb5b36612d624db53240b9c2c7b6616b6c55?d=identicon)[alexdo](/maintainers/alexdo)

---

Top Contributors

[![byWulf](https://avatars.githubusercontent.com/u/135651?v=4)](https://github.com/byWulf "byWulf (29 commits)")[![alexdo](https://avatars.githubusercontent.com/u/690188?v=4)](https://github.com/alexdo "alexdo (28 commits)")[![markuspoerschke](https://avatars.githubusercontent.com/u/1222377?v=4)](https://github.com/markuspoerschke "markuspoerschke (2 commits)")[![manjencic](https://avatars.githubusercontent.com/u/3406389?v=4)](https://github.com/manjencic "manjencic (1 commits)")

###  Code Quality

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/check24-apitk-deprecation-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/check24-apitk-deprecation-bundle/health.svg)](https://phpackages.com/packages/check24-apitk-deprecation-bundle)
```

###  Alternatives

[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)[scheb/2fa

Two-factor authentication for Symfony applications (please use scheb/2fa-bundle to install)

578630.7k1](/packages/scheb-2fa)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

7310.3k29](/packages/open-dxp-opendxp)[netgen/layouts-core

Netgen Layouts enables you to build and manage complex web pages in a simpler way and with less coding. This is the core of Netgen Layouts, its heart and soul.

3689.4k10](/packages/netgen-layouts-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
