Skip to content

Repository

The content Repository is where all your content is stored.

Services: Public API

The Public API exposes Symfony services for all of its Repository services.

Service ID Type
ezpublish.api.service.bookmark Ibexa\Contracts\Core\Repository\BookmarkService
ezpublish.api.service.content Ibexa\Contracts\Core\Repository\ContentService
ezpublish.api.service.content_type Ibexa\Contracts\Core\Repository\ContentTypeService
ezpublish.api.service.field_type Ibexa\Contracts\Core\Repository\FieldTypeService
ezpublish.api.service.language Ibexa\Contracts\Core\Repository\LanguageService
ezpublish.api.service.location Ibexa\Contracts\Core\Repository\LocationService
ezpublish.api.service.notification Ibexa\Contracts\Core\Repository\NotificationService
ezpublish.api.service.object_state Ibexa\Contracts\Core\Repository\ObjectStateService
ezpublish.api.service.role Ibexa\Contracts\Core\Repository\RoleService
ezpublish.api.service.search Ibexa\Contracts\Core\Repository\SearchService
ezpublish.api.service.section Ibexa\Contracts\Core\Repository\SectionService
ezpublish.api.service.trash Ibexa\Contracts\Core\Repository\TrashService
ezpublish.api.service.url Ibexa\Contracts\Core\Repository\URLService
ezpublish.api.service.url_alias Ibexa\Contracts\Core\Repository\URLAliasService
ezpublish.api.service.url_wildcard Ibexa\Contracts\Core\Repository\URLWildcardService
ezpublish.api.service.user Ibexa\Contracts\Core\Repository\UserService
ezpublish.api.service.user_preference Ibexa\Contracts\Core\Repository\UserPreferenceService

API

Every Public API Service interface and value object defined in Ibexa\Contracts\Core\Repository namespace strictly follows Semantic Versioning backward compatibility (BC) promise for API consumers. It means that every usage of API (API call) is guaranteed to work between minor releases.

What can change between minor releases is the API method signature. Because of that, implementation of API interfaces by third party packages (except for the ones implemented with built-in bundles) is not directly supported. API method signatures should not change between bug-fix releases (e.g. from 2.5.1 to 2.5.2).

You should always check full list of changes for each release in corresponding release notes.

SPI

Ibexa DXP SPI is a Service Provider Interface which defines contracts for implementing various parts of the system, including:

  • persistence layer (SPI\Persistence)
  • custom Field Types
  • custom Limitations
  • limited portions of IO
  • image variation handling
  • Search Engine layer for custom Search Engine implementations (e.g. Legacy search engine, Solr search engine and Elasticsearch)

Caution

Due to technical limitations, backward compatibility promise to any third party implementations of these interfaces applies only to minor versions. It means that interfaces, especially related to SPI\Persistence handlers, can change between minor releases.