diff --git a/jsonapi.services.yml b/jsonapi.services.yml
index 221c2bf..580096b 100644
--- a/jsonapi.services.yml
+++ b/jsonapi.services.yml
@@ -1,79 +1,84 @@
 services:
+  jsonapi.serializer_do_not_use_removal_imminent:
+    class: Drupal\jsonapi\Serializer\Serializer
+    calls:
+      - [setFallbackNormalizer, ['@serializer']]
+    arguments: [{  }, {  }]
   serializer.normalizer.sort.jsonapi:
     class: Drupal\jsonapi\Normalizer\SortNormalizer
     arguments: ['@jsonapi.field_resolver']
     tags:
-      - { name: normalizer }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.offset_page.jsonapi:
     class: Drupal\jsonapi\Normalizer\OffsetPageNormalizer
     tags:
-      - { name: normalizer }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.entity_condition.jsonapi:
     class: Drupal\jsonapi\Normalizer\EntityConditionNormalizer
     tags:
-      - { name: normalizer }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.entity_condition_group.jsonapi:
     class: Drupal\jsonapi\Normalizer\EntityConditionGroupNormalizer
     tags:
-      - { name: normalizer }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.filter.jsonapi:
     class: Drupal\jsonapi\Normalizer\FilterNormalizer
     arguments: ['@jsonapi.field_resolver', '@serializer.normalizer.entity_condition.jsonapi', '@serializer.normalizer.entity_condition_group.jsonapi']
     tags:
-      - { name: normalizer }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.http_exception.jsonapi:
     class: Drupal\jsonapi\Normalizer\HttpExceptionNormalizer
     arguments: ['@current_user']
     tags:
-      - { name: normalizer, priority: 1 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.unprocessable_entity_exception.jsonapi:
     class: Drupal\jsonapi\Normalizer\UnprocessableHttpEntityExceptionNormalizer
     arguments: ['@current_user']
     tags:
-      - { name: normalizer, priority: 2 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent, priority: 1 }
   serializer.normalizer.entity_access_exception.jsonapi:
     class: Drupal\jsonapi\Normalizer\EntityAccessDeniedHttpExceptionNormalizer
     arguments: ['@current_user']
     tags:
-      - { name: normalizer, priority: 2 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent, priority: 1 }
   serializer.normalizer.entity_reference_item.jsonapi:
     class: Drupal\jsonapi\Normalizer\RelationshipItemNormalizer
     arguments: ['@jsonapi.resource_type.repository', '@serializer.normalizer.jsonapi_document_toplevel.jsonapi',]
     tags:
-      - { name: normalizer, priority: 21 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.field_item.jsonapi:
     class: Drupal\jsonapi\Normalizer\FieldItemNormalizer
     tags:
-      - { name: normalizer, priority: 21 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.field.jsonapi:
     class: Drupal\jsonapi\Normalizer\FieldNormalizer
     tags:
-      - { name: normalizer, priority: 21 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.relationship.jsonapi:
     class: Drupal\jsonapi\Normalizer\RelationshipNormalizer
     arguments: ['@jsonapi.resource_type.repository', '@jsonapi.link_manager']
     tags:
-      - { name: normalizer, priority: 21 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.entity.jsonapi:
     class: Drupal\jsonapi\Normalizer\ContentEntityNormalizer
     arguments: ['@jsonapi.link_manager', '@jsonapi.resource_type.repository', '@entity_type.manager']
     tags:
-      - { name: normalizer, priority: 21 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.config_entity.jsonapi:
     class: Drupal\jsonapi\Normalizer\ConfigEntityNormalizer
     arguments: ['@jsonapi.link_manager', '@jsonapi.resource_type.repository', '@entity_type.manager']
     tags:
-      - { name: normalizer, priority: 21 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent }
   serializer.normalizer.jsonapi_document_toplevel.jsonapi:
     class: Drupal\jsonapi\Normalizer\JsonApiDocumentTopLevelNormalizer
     arguments: ['@jsonapi.link_manager', '@jsonapi.current_context', '@entity_type.manager', '@jsonapi.resource_type.repository', '@jsonapi.field_resolver']
     tags:
-      - { name: normalizer, priority: 22 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent, priority: 1 }
   serializer.normalizer.entity_reference_field.jsonapi:
     class: Drupal\jsonapi\Normalizer\EntityReferenceFieldNormalizer
     arguments: ['@jsonapi.link_manager', '@entity_field.manager', '@plugin.manager.field.field_type', '@jsonapi.resource_type.repository', '@entity.repository']
     tags:
-      - { name: normalizer, priority: 31 }
+      - { name: jsonapi_normalizer_do_not_use_removal_imminent, priority: 1 }
   serializer.encoder.jsonapi:
     class: Drupal\jsonapi\Encoder\JsonEncoder
     tags:
@@ -113,7 +118,7 @@ services:
     class: Drupal\jsonapi\EventSubscriber\DefaultExceptionSubscriber
     tags:
       - { name: event_subscriber }
-    arguments: ['@serializer', '%serializer.formats%']
+    arguments: ['@jsonapi.serializer_do_not_use_removal_imminent', '%serializer.formats%']
   jsonapi.http_middleware.format_setter:
     class: Drupal\jsonapi\StackMiddleware\FormatSetter
     tags:
@@ -123,7 +128,7 @@ services:
 
   jsonapi.entity.to_jsonapi:
     class: Drupal\jsonapi\EntityToJsonApi
-    arguments: ['@serializer', '@jsonapi.resource_type.repository', '@current_user']
+    arguments: ['@jsonapi.serializer_do_not_use_removal_imminent', '@jsonapi.resource_type.repository', '@current_user']
 
   logger.channel.jsonapi:
     parent: logger.channel_base
@@ -132,7 +137,7 @@ services:
   # Event subscribers.
   jsonapi.resource_response.subscriber:
     class: Drupal\jsonapi\EventSubscriber\ResourceResponseSubscriber
-    arguments: ['@serializer', '@renderer', '@logger.channel.jsonapi', '@module_handler', '@app.root']
+    arguments: ['@jsonapi.serializer_do_not_use_removal_imminent', '@renderer', '@logger.channel.jsonapi', '@module_handler', '@app.root']
     calls:
       - [setValidator, []]
       - [setSchemaFactory, ['@?schemata.schema_factory']] # This is only injected when the service is available.
diff --git a/src/Controller/RequestHandler.php b/src/Controller/RequestHandler.php
index 3eb4d9a..d0e301a 100644
--- a/src/Controller/RequestHandler.php
+++ b/src/Controller/RequestHandler.php
@@ -51,7 +51,7 @@ class RequestHandler implements ContainerAwareInterface, ContainerInjectionInter
 
     // Deserialize incoming data if available.
     /* @var \Symfony\Component\Serializer\SerializerInterface $serializer */
-    $serializer = $this->container->get('serializer');
+    $serializer = $this->container->get('jsonapi.serializer_do_not_use_removal_imminent');
     /* @var \Drupal\jsonapi\Context\CurrentContext $current_context */
     $current_context = $this->container->get('jsonapi.current_context');
     $current_context->reset();
diff --git a/src/DependencyInjection/Compiler/RegisterSerializationClassesCompilerPass.php b/src/DependencyInjection/Compiler/RegisterSerializationClassesCompilerPass.php
new file mode 100644
index 0000000..a9239a8
--- /dev/null
+++ b/src/DependencyInjection/Compiler/RegisterSerializationClassesCompilerPass.php
@@ -0,0 +1,92 @@
+<?php
+
+namespace Drupal\jsonapi\DependencyInjection\Compiler;
+
+use Drupal\serialization\RegisterSerializationClassesCompilerPass as DrupalRegisterSerializationClassesCompilerPass;
+use Symfony\Component\DependencyInjection\Reference;
+use Symfony\Component\DependencyInjection\ContainerBuilder;
+
+/**
+ * Adds services tagged JSON API-only normalizers to the Serializer.
+ *
+ * Services tagged with 'jsonapi_normalizer_do_not_use_removal_imminent' will be
+ * added to the JSON API serializer. As should be clear by the service tag,
+ * *no* extensions should provide these services. They will not work in the
+ * future. The proper way to affect JSON API output is to implement DataType
+ * level normalizers and/or implement computed entity fields.
+ *
+ * @see jsonapi.api.php
+ *
+ * @internal
+ */
+class RegisterSerializationClassesCompilerPass extends DrupalRegisterSerializationClassesCompilerPass {
+
+  /**
+   * The service ID.
+   *
+   * @const string
+   */
+  const OVERRIDDEN_SERVICE_ID = 'jsonapi.serializer_do_not_use_removal_imminent';
+
+  /**
+   * The service tag that only JSON API normalizers should use.
+   *
+   * @const string
+   */
+  const OVERRIDDEN_SERVICE_TAG = 'jsonapi_normalizer_do_not_use_removal_imminent';
+
+  /**
+   * Adds services to the JSON API Serializer.
+   *
+   * This code is copied from the class parent with two modifications. The
+   * service id has been changed and the service tag has been updated.
+   *
+   * ID: 'serializer' -> 'jsonapi.serializer_do_not_use_removal_imminent'
+   * Tag: 'normalizer' -> 'jsonapi_normalizer_do_not_use_removal_imminent'
+   *
+   * @param \Symfony\Component\DependencyInjection\ContainerBuilder $container
+   *   The container to process.
+   */
+  public function process(ContainerBuilder $container) {
+    $definition = $container->getDefinition(static::OVERRIDDEN_SERVICE_ID);
+
+    // Retrieve registered Normalizers and Encoders from the container.
+    foreach ($container->findTaggedServiceIds(static::OVERRIDDEN_SERVICE_TAG) as $id => $attributes) {
+      // If there is a BC key present, pass this to determine if the normalizer
+      // should be skipped.
+      if (isset($attributes[0]['bc']) && $this->normalizerBcSettingIsEnabled($attributes[0]['bc'], $attributes[0]['bc_config_name'])) {
+        continue;
+      }
+
+      $priority = isset($attributes[0]['priority']) ? $attributes[0]['priority'] : 0;
+      $normalizers[$priority][] = new Reference($id);
+    }
+    foreach ($container->findTaggedServiceIds('encoder') as $id => $attributes) {
+      $priority = isset($attributes[0]['priority']) ? $attributes[0]['priority'] : 0;
+      $encoders[$priority][] = new Reference($id);
+    }
+
+    // Add the registered Normalizers and Encoders to the Serializer.
+    if (!empty($normalizers)) {
+      $definition->replaceArgument(0, $this->sort($normalizers));
+    }
+    if (!empty($encoders)) {
+      $definition->replaceArgument(1, $this->sort($encoders));
+    }
+
+    // Find all serialization formats known.
+    $formats = [];
+    $format_providers = [];
+    foreach ($container->findTaggedServiceIds('encoder') as $service_id => $attributes) {
+      $format = $attributes[0]['format'];
+      $formats[] = $format;
+
+      if ($provider_tag = $container->getDefinition($service_id)->getTag('_provider')) {
+        $format_providers[$format] = $provider_tag[0]['provider'];
+      }
+    }
+    $container->setParameter(static::OVERRIDDEN_SERVICE_ID . '.formats', $formats);
+    $container->setParameter(static::OVERRIDDEN_SERVICE_ID . '.format_providers', $format_providers);
+  }
+
+}
diff --git a/src/EntityToJsonApi.php b/src/EntityToJsonApi.php
index c7365e7..8280b1b 100644
--- a/src/EntityToJsonApi.php
+++ b/src/EntityToJsonApi.php
@@ -7,8 +7,8 @@ use Drupal\Core\Session\AccountProxyInterface;
 use Drupal\Core\Cache\CacheableMetadata;
 use Drupal\jsonapi\Resource\JsonApiDocumentTopLevel;
 use Drupal\jsonapi\ResourceType\ResourceTypeRepositoryInterface;
+use Drupal\jsonapi\Serializer\Serializer;
 use Symfony\Component\HttpFoundation\Request;
-use Symfony\Component\Serializer\Serializer;
 
 /**
  * Simplifies the process of generating a JSON API version of an entity.
@@ -27,7 +27,7 @@ class EntityToJsonApi {
   /**
    * Serializer object.
    *
-   * @var \Symfony\Component\Serializer\Serializer
+   * @var \Drupal\jsonapi\Serializer\Serializer
    */
   protected $serializer;
 
@@ -39,7 +39,7 @@ class EntityToJsonApi {
   /**
    * EntityToJsonApi constructor.
    *
-   * @param \Symfony\Component\Serializer\Serializer $serializer
+   * @param \Drupal\jsonapi\Serializer\Serializer $serializer
    *   The serializer.
    * @param \Drupal\Core\Session\AccountProxyInterface $current_user
    *   The currently logged in user.
diff --git a/src/JsonapiServiceProvider.php b/src/JsonapiServiceProvider.php
index f801059..c2cf9b3 100644
--- a/src/JsonapiServiceProvider.php
+++ b/src/JsonapiServiceProvider.php
@@ -5,6 +5,7 @@ namespace Drupal\jsonapi;
 use Drupal\Core\DependencyInjection\ContainerBuilder;
 use Drupal\Core\DependencyInjection\ServiceModifierInterface;
 use Drupal\Core\DependencyInjection\ServiceProviderInterface;
+use Drupal\jsonapi\DependencyInjection\Compiler\RegisterSerializationClassesCompilerPass;
 use Drupal\jsonapi\DependencyInjection\Compiler\RemoveJsonapiFormatCompilerPass;
 use Symfony\Component\DependencyInjection\Compiler\PassConfig;
 
@@ -35,6 +36,7 @@ class JsonapiServiceProvider implements ServiceModifierInterface, ServiceProvide
    * {@inheritdoc}
    */
   public function register(ContainerBuilder $container) {
+    $container->addCompilerPass(new RegisterSerializationClassesCompilerPass());
     $container->addCompilerPass(new RemoveJsonapiFormatCompilerPass(), PassConfig::TYPE_REMOVE);
   }
 
diff --git a/src/Serializer/Serializer.php b/src/Serializer/Serializer.php
new file mode 100644
index 0000000..49844a1
--- /dev/null
+++ b/src/Serializer/Serializer.php
@@ -0,0 +1,114 @@
+<?php
+
+namespace Drupal\jsonapi\Serializer;
+
+use Drupal\Core\Entity\EntityInterface;
+use Drupal\Core\Field\FieldItemInterface;
+use Drupal\Core\Field\FieldItemListInterface;
+use Drupal\jsonapi\Normalizer\Relationship;
+use Drupal\jsonapi\Normalizer\RelationshipItem;
+use Drupal\jsonapi\Resource\JsonApiDocumentTopLevel;
+use Symfony\Component\HttpKernel\Exception\HttpException;
+use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
+use Symfony\Component\Serializer\Serializer as SymfonySerializer;
+
+/**
+ * Overrides the Symfony serializer to cordon off our incompatible normalizers.
+ *
+ * This service is for *internal* use only. It is not suitable for *any* reuse.
+ * Backwards compatibility is in no way guaranteed and will almost certainly be
+ * broken in the future.
+ *
+ * @link https://www.drupal.org/project/jsonapi/issues/2923779#comment-12407443
+ *
+ * @internal
+ */
+final class Serializer extends SymfonySerializer {
+
+  /**
+   * A normalizer to fall back on when JSON API cannot normalize an object.
+   *
+   * @var \Symfony\Component\Serializer\Normalizer\NormalizerInterface|\Symfony\Component\Serializer\Normalizer\DenormalizerInterface
+   */
+  protected $fallbackNormalizer;
+
+  /**
+   * Adds a secondary normalizer.
+   *
+   * This normalizer will be attempted when JSON API has no applicable
+   * normalizer.
+   *
+   * @param \Symfony\Component\Serializer\Normalizer\NormalizerInterface $normalizer
+   *   The secondary normalizer.
+   */
+  public function setFallbackNormalizer(NormalizerInterface $normalizer) {
+    $this->fallbackNormalizer = $normalizer;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function normalize($data, $format = NULL, array $context = []) {
+    if ($this->selfSupportsNormalization($data, $format)) {
+      return parent::normalize($data, $format, $context);
+    }
+    return $this->fallbackNormalizer->normalize($data, $format, $context);
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function denormalize($data, $type, $format = NULL, array $context = []) {
+    if ($this->selfSupportsDenormalization($data, $type, $format)) {
+      return parent::denormalize($data, $type, $format, $context);
+    }
+    return $this->fallbackNormalizer->denormalize($data, $type, $format, $context);
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function supportsNormalization($data, $format = NULL) {
+    return $this->selfSupportsNormalization($data, $format) || $this->fallbackNormalizer->supportsNormalization($data, $format);
+  }
+
+  /**
+   * Checks whether this class alone supports normalization.
+   *
+   * @param mixed $data
+   *   Data to normalize.
+   * @param string $format
+   *   The format being (de-)serialized from or into.
+   *
+   * @return bool
+   *   Whether this class supports normalization for the given data.
+   */
+  private function selfSupportsNormalization($data, $format = NULL) {
+    return parent::supportsNormalization($data, $format);
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function supportsDenormalization($data, $type, $format = NULL) {
+    return $this->selfSupportsDenormalization($data, $type, $format) || $this->fallbackNormalizer->supportsDenormalization($data, $type, $format);
+  }
+
+  /**
+   * Checks whether this class alone supports denormalization.
+   *
+   * @param mixed $data
+   *   Data to denormalize from.
+   * @param string $type
+   *   The class to which the data should be denormalized.
+   * @param string $format
+   *   The format being deserialized from.
+   *
+   * @return bool
+   *   Whether this class supports normalization for the given data and type.
+   */
+  private function selfSupportsDenormalization($data, $type, $format = NULL) {
+    return parent::supportsDenormalization($data, $type, $format);
+  }
+
+}
\ No newline at end of file
diff --git a/tests/src/Kernel/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php b/tests/src/Kernel/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php
index 3de27fa..5de5dfd 100644
--- a/tests/src/Kernel/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php
+++ b/tests/src/Kernel/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php
@@ -214,7 +214,7 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
     $response = new ResourceResponse();
     $normalized = $this
       ->container
-      ->get('serializer.normalizer.jsonapi_document_toplevel.jsonapi')
+      ->get('jsonapi.serializer_do_not_use_removal_imminent')
       ->normalize(
         new JsonApiDocumentTopLevel($this->node),
         'api_json',
@@ -313,7 +313,7 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
     $response = new ResourceResponse();
     $normalized = $this
       ->container
-      ->get('serializer.normalizer.jsonapi_document_toplevel.jsonapi')
+      ->get('jsonapi.serializer_do_not_use_removal_imminent')
       ->normalize(
         $document_wrapper->reveal(),
         'api_json',
@@ -352,7 +352,7 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
     $response = new ResourceResponse();
     $normalized = $this
       ->container
-      ->get('serializer.normalizer.jsonapi_document_toplevel.jsonapi')
+      ->get('jsonapi.serializer_do_not_use_removal_imminent')
       ->normalize(
         $document_wrapper->reveal(),
         'api_json',
@@ -394,7 +394,7 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
     $response = new ResourceResponse();
     $normalized = $this
       ->container
-      ->get('serializer')
+      ->get('jsonapi.serializer_do_not_use_removal_imminent')
       ->serialize(
         new BadRequestHttpException('Lorem'),
         'api_json',
@@ -430,7 +430,7 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
     $response = new ResourceResponse();
     $normalized = $this
       ->container
-      ->get('serializer.normalizer.jsonapi_document_toplevel.jsonapi')
+      ->get('jsonapi.serializer_do_not_use_removal_imminent')
       ->normalize($document_wrapper->reveal(), 'api_json', [
         'request' => $request,
         'resource_type' => $resource_type,
@@ -458,8 +458,8 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
     list($request, $resource_type) = $this->generateProphecies('node', 'article', 'id');
     $node = $this
       ->container
-      ->get('serializer.normalizer.jsonapi_document_toplevel.jsonapi')
-      ->denormalize(Json::decode($payload), JsonApiDocumentTopLevelNormalizer::class, 'api_json', [
+      ->get('jsonapi.serializer_do_not_use_removal_imminent')
+      ->denormalize(Json::decode($payload), JsonApiDocumentTopLevel::class, 'api_json', [
         'request' => $request,
         'resource_type' => $resource_type,
       ]);
@@ -528,8 +528,8 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
       $this->container->get('request_stack')->push($request);
       $node = $this
         ->container
-        ->get('serializer.normalizer.jsonapi_document_toplevel.jsonapi')
-        ->denormalize(Json::decode($payload), JsonApiDocumentTopLevelNormalizer::class, 'api_json', [
+        ->get('jsonapi.serializer_do_not_use_removal_imminent')
+        ->denormalize(Json::decode($payload), JsonApiDocumentTopLevel::class, 'api_json', [
           'request' => $request,
           'resource_type' => $resource_type,
         ]);
@@ -593,8 +593,8 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
     list($request, $resource_type) = $this->generateProphecies('node', 'article');
     $this->container->get('request_stack')->push($request);
     try {
-      $this->container->get('serializer.normalizer.jsonapi_document_toplevel.jsonapi')
-        ->denormalize(Json::decode($payload), JsonApiDocumentTopLevelNormalizer::class, 'api_json', [
+      $this->container->get('jsonapi.serializer_do_not_use_removal_imminent')
+        ->denormalize(Json::decode($payload), JsonApiDocumentTopLevel::class, 'api_json', [
           'request' => $request,
           'resource_type' => $resource_type,
         ]);
@@ -612,8 +612,8 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
     list($request, $resource_type) = $this->generateProphecies('node', 'article');
     $this->container->get('request_stack')->push($request);
     try {
-      $this->container->get('serializer.normalizer.jsonapi_document_toplevel.jsonapi')
-        ->denormalize(Json::decode($payload), JsonApiDocumentTopLevelNormalizer::class, 'api_json', [
+      $this->container->get('jsonapi.serializer_do_not_use_removal_imminent')
+        ->denormalize(Json::decode($payload), JsonApiDocumentTopLevel::class, 'api_json', [
           'request' => $request,
           'resource_type' => $resource_type,
         ]);
@@ -719,7 +719,7 @@ class JsonApiDocumentTopLevelNormalizerTest extends JsonapiKernelTestBase {
     $request_stack = $this->container->get('request_stack');
     $request_stack->push($request);
     $this->container->set('request_stack', $request_stack);
-    $this->container->get('serializer');
+    $this->container->get('jsonapi.serializer_do_not_use_removal_imminent');
 
     return [$request, $resource_type];
   }
