Module adcp.types.generated_poc.collection.base_collection_source
Classes
class BaseCollectionSource (root: RootModelRootType = PydanticUndefined, **data)-
Expand source code
class BaseCollectionSource( RootModel[BaseCollectionSource1 | BaseCollectionSource2 | BaseCollectionSource3] ): root: Annotated[ BaseCollectionSource1 | BaseCollectionSource2 | BaseCollectionSource3, Field( description='A source of collections for a collection list. Supports three selection patterns: distribution identifiers (cross-publisher), publisher-specific collection IDs, or publisher-specific genres.', discriminator='selection_type', title='Base Collection Source', ), ] def __getattr__(self, name: str) -> Any: """Proxy attribute access to the wrapped type.""" if name.startswith('_'): raise AttributeError(name) return getattr(self.root, name)Usage Documentation
A Pydantic
BaseModelfor the root object of the model.Attributes
root- The root object of the model.
__pydantic_root_model__- Whether the model is a RootModel.
__pydantic_private__- Private fields in the model.
__pydantic_extra__- Extra fields in the model.
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.Ancestors
- pydantic.root_model.RootModel[Union[BaseCollectionSource1, BaseCollectionSource2, BaseCollectionSource3]]
- pydantic.root_model.RootModel
- pydantic.main.BaseModel
- typing.Generic
Class variables
var model_configvar root : BaseCollectionSource1 | BaseCollectionSource2 | BaseCollectionSource3
class BaseCollectionSource1 (**data: Any)-
Expand source code
class BaseCollectionSource1(AdCPBaseModel): model_config = ConfigDict( extra='forbid', ) selection_type: Annotated[ Literal['distribution_ids'], Field( description='Discriminator indicating selection by platform-independent distribution identifiers' ), ] identifiers: Annotated[ list[Identifier], Field( description='Platform-independent identifiers (imdb_id, gracenote_id, eidr_id, etc.). Each identifier uniquely identifies a collection across all publishers.', min_length=1, ), ]Base model for AdCP types with spec-compliant serialization.
Defaults to
extra='ignore'so that unknown fields from newer spec versions are silently dropped rather than causing validation errors. Generated types whose schemas setadditionalProperties: trueoverride this withextra='allow'in their ownmodel_config. Consumers who want strict validation can override withextra='forbid'.Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.Ancestors
- AdCPBaseModel
- pydantic.main.BaseModel
Class variables
var identifiers : list[Identifier]var model_configvar selection_type : Literal['distribution_ids']
Inherited members
class BaseCollectionSource2 (**data: Any)-
Expand source code
class BaseCollectionSource2(AdCPBaseModel): model_config = ConfigDict( extra='forbid', ) selection_type: Annotated[ Literal['publisher_collections'], Field( description='Discriminator indicating selection by specific collection IDs within a publisher' ), ] publisher_domain: Annotated[ str, Field( description="Domain where publisher's adagents.json is hosted", pattern='^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$', ), ] collection_ids: Annotated[ list[str], Field( description="Specific collection IDs from the publisher's adagents.json", min_length=1 ), ]Base model for AdCP types with spec-compliant serialization.
Defaults to
extra='ignore'so that unknown fields from newer spec versions are silently dropped rather than causing validation errors. Generated types whose schemas setadditionalProperties: trueoverride this withextra='allow'in their ownmodel_config. Consumers who want strict validation can override withextra='forbid'.Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.Ancestors
- AdCPBaseModel
- pydantic.main.BaseModel
Class variables
var collection_ids : list[str]var model_configvar publisher_domain : strvar selection_type : Literal['publisher_collections']
Inherited members
class BaseCollectionSource3 (**data: Any)-
Expand source code
class BaseCollectionSource3(AdCPBaseModel): model_config = ConfigDict( extra='forbid', ) selection_type: Annotated[ Literal['publisher_genres'], Field(description='Discriminator indicating selection by genre within a publisher'), ] publisher_domain: Annotated[ str, Field( description="Domain where publisher's adagents.json is hosted", pattern='^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$', ), ] genres: Annotated[ list[str], Field( description="Genre values to match against the publisher's collections", min_length=1 ), ] genre_taxonomy: Annotated[ genre_taxonomy_1.GenreTaxonomy, Field( description="Taxonomy for the genre values. Required so sellers can interpret genre strings unambiguously. Use 'custom' for free-form values negotiated out of band." ), ]Base model for AdCP types with spec-compliant serialization.
Defaults to
extra='ignore'so that unknown fields from newer spec versions are silently dropped rather than causing validation errors. Generated types whose schemas setadditionalProperties: trueoverride this withextra='allow'in their ownmodel_config. Consumers who want strict validation can override withextra='forbid'.Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.Ancestors
- AdCPBaseModel
- pydantic.main.BaseModel
Class variables
var genre_taxonomy : GenreTaxonomyvar genres : list[str]var model_configvar publisher_domain : strvar selection_type : Literal['publisher_genres']
Inherited members
class Identifier (**data: Any)-
Expand source code
class Identifier(AdCPBaseModel): model_config = ConfigDict( extra='forbid', ) type: Annotated[ distribution_identifier_type.DistributionIdentifierType, Field(description='Type of distribution identifier'), ] value: Annotated[str, Field(description='The identifier value')]Base model for AdCP types with spec-compliant serialization.
Defaults to
extra='ignore'so that unknown fields from newer spec versions are silently dropped rather than causing validation errors. Generated types whose schemas setadditionalProperties: trueoverride this withextra='allow'in their ownmodel_config. Consumers who want strict validation can override withextra='forbid'.Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.Ancestors
- AdCPBaseModel
- pydantic.main.BaseModel
Class variables
var model_configvar type : DistributionIdentifierTypevar value : str
Inherited members