Primary tabs

Introduction to services

A "service" (such as accessing the database, sending email, or translating user interface text) can be defined by a module or Drupal core. Defining a service means giving it a name and designating a default class to provide the service; ideally, there should also be an interface that defines the methods that may be called. Services are collected into the Dependency Injection Container, and can be overridden to use different classes or different instantiation by modules. See the Services and Dependency Injection Container topic for details.

Some services have tags, which are defined in the service definition. Tags are used to define a group of related services, or to specify some aspect of how the service behaves. See the Service Tags topic for more information.

See also

Services and Dependency Injection Container

Service Tags

Namesort descending File Class Tags
http_kernel.controller.argument_resolver core/core.services.yml Symfony\Component\HttpKernel\Controller\ArgumentResolver
http_kernel_test.test_middleware core/modules/system/tests/modules/http_kernel_test/http_kernel_test.services.yml Drupal\http_kernel_test\HttpKernel\TestMiddleware http_middleware
http_kernel_test.test_middleware2 core/modules/system/tests/modules/http_kernel_test/http_kernel_test.services.yml Drupal\http_kernel_test\HttpKernel\TestMiddleware http_middleware
http_middleware.ajax_page_state core/core.services.yml Drupal\Core\StackMiddleware\AjaxPageState http_middleware
http_middleware.alter_content_middleware core/modules/system/tests/modules/http_middleware_test/http_middleware_test.services.yml Drupal\http_middleware_test\StackMiddleware\AlterContentMiddleware http_middleware
http_middleware.big_pipe core/modules/big_pipe/big_pipe.services.yml \Drupal\big_pipe\StackMiddleware\ContentLength http_middleware
http_middleware.content_length core/core.services.yml Drupal\Core\StackMiddleware\ContentLength http_middleware
http_middleware.cors core/core.services.yml Asm89\Stack\Cors http_middleware
http_middleware.kernel_pre_handle core/core.services.yml Drupal\Core\StackMiddleware\KernelPreHandle http_middleware
http_middleware.monkeys core/modules/system/tests/modules/error_service_test/error_service_test.services.yml Drupal\error_service_test\MonkeysInTheControlRoom http_middleware
http_middleware.negotiation core/core.services.yml Drupal\Core\StackMiddleware\NegotiationMiddleware http_middleware
http_middleware.page_cache core/modules/page_cache/page_cache.services.yml Drupal\page_cache\StackMiddleware\PageCache http_middleware
http_middleware.reverse_proxy core/core.services.yml Drupal\Core\StackMiddleware\ReverseProxyMiddleware http_middleware
http_middleware.session core/core.services.yml Drupal\Core\StackMiddleware\Session http_middleware
image.factory core/core.services.yml Drupal\Core\Image\ImageFactory
image.page_cache_response_policy.deny_private_image_style_download core/modules/image/image.services.yml Drupal\image\PageCache\DenyPrivateImageStyleDownload page_cache_response_policy
image.toolkit.manager core/core.services.yml Drupal\Core\ImageToolkit\ImageToolkitManager plugin_manager_cache_clear
image.toolkit.operation.manager core/core.services.yml Drupal\Core\ImageToolkit\ImageToolkitOperationManager plugin_manager_cache_clear
info_parser core/core.services.yml Drupal\Core\Extension\InfoParser
inline_block.usage core/modules/layout_builder/layout_builder.services.yml Drupal\layout_builder\InlineBlockUsage
install_profile_uninstall_validator core/core.services.yml Drupal\Core\Extension\InstallProfileUninstallValidator module_install.uninstall_validator
jsonapi.custom_query_parameter_names_validator.subscriber core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\EventSubscriber\JsonApiRequestValidator
jsonapi.entity_access_checker core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Access\EntityAccessChecker
jsonapi.entity_resource core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Controller\EntityResource
jsonapi.exception_subscriber core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\EventSubscriber\DefaultExceptionSubscriber
jsonapi.field_resolver core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Context\FieldResolver
jsonapi.file.uploader.field core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Controller\TemporaryJsonapiFileFieldUploader
jsonapi.file_upload core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Controller\FileUpload
jsonapi.include_resolver core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\IncludeResolver
jsonapi.maintenance_mode_subscriber core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\EventSubscriber\JsonapiMaintenanceModeSubscriber
jsonapi.normalization_cacher core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\EventSubscriber\ResourceObjectNormalizationCacher
jsonapi.resource_response.subscriber core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\EventSubscriber\ResourceResponseSubscriber
jsonapi.resource_response_validator.subscriber core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\EventSubscriber\ResourceResponseValidator
jsonapi.resource_type.repository core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\ResourceType\ResourceTypeRepository
jsonapi.resource_type.repository.jsonapi_test_field_aliasing core/modules/jsonapi/tests/modules/jsonapi_test_field_aliasing/jsonapi_test_field_aliasing.services.yml Drupal\jsonapi_test_field_aliasing\ResourceType\AliasingResourceTypeRepository
jsonapi.resource_version.route_enhancer core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Revisions\ResourceVersionRouteEnhancer route_enhancer
jsonapi.route_enhancer core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Routing\RouteEnhancer route_enhancer
jsonapi.route_filter.format_setter core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Routing\EarlyFormatSetter route_filter
jsonapi.serializer core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Serializer\Serializer
jsonapi.version_negotiator core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Revisions\VersionNegotiator service_collector
jsonapi.version_negotiator.default core/modules/jsonapi/jsonapi.services.yml Abstract
jsonapi.version_negotiator.id core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Revisions\VersionById jsonapi_version_negotiator
jsonapi.version_negotiator.rel core/modules/jsonapi/jsonapi.services.yml Drupal\jsonapi\Revisions\VersionByRel jsonapi_version_negotiator
jsonapi_test_normalizers_kernel.jsonapi_document_toplevel core/modules/jsonapi/tests/modules/jsonapi_test_normalizers_kernel/jsonapi_test_normalizers_kernel.services.yml Alias of serializer.normalizer.jsonapi_document_toplevel.jsonapi
jsonapi_test_resource_type_building.build_subscriber core/modules/jsonapi/tests/modules/jsonapi_test_resource_type_building/jsonapi_test_resource_type_building.services.yml Drupal\jsonapi_test_resource_type_building\EventSubscriber\ResourceTypeBuildEventSubscriber
keyvalue core/core.services.yml Drupal\Core\KeyValueStore\KeyValueFactory
keyvalue.database core/core.services.yml Drupal\Core\KeyValueStore\KeyValueDatabaseFactory
keyvalue.expirable core/core.services.yml Drupal\Core\KeyValueStore\KeyValueExpirableFactory
keyvalue.expirable.database core/core.services.yml Drupal\Core\KeyValueStore\KeyValueDatabaseExpirableFactory
language.config_factory_override core/modules/language/language.services.yml Drupal\language\Config\LanguageConfigFactoryOverride config.factory.override

Pages

Other projects