arbor_imago.schemas package

Submodules

arbor_imago.schemas.api module

class arbor_imago.schemas.api.DetailOnlyResponse(*, detail: str)[source]

Bases: BaseModel

detail: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.api.IsAvailableResponse(*, available: bool)[source]

Bases: BaseModel

available: bool
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.api.NotFoundResponse(*, detail: str)[source]

Bases: DetailOnlyResponse

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

arbor_imago.schemas.api_key module

class arbor_imago.schemas.api_key.ApiKeyAdminAvailable(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)], user_id: str)[source]

Bases: ApiKeyAvailable

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

user_id: str
class arbor_imago.schemas.api_key.ApiKeyAdminCreate(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)], expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'], user_id: str)[source]

Bases: ApiKeyCreate, BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

user_id: str
class arbor_imago.schemas.api_key.ApiKeyAdminUpdate(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)] | None = None, expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'] | None = None)[source]

Bases: ApiKeyUpdate, BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.api_key.ApiKeyAvailable(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)])[source]

Bases: BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)]
class arbor_imago.schemas.api_key.ApiKeyCreate(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)], expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'])[source]

Bases: ApiKeyImport

expiry: Annotated[datetime, 'The datetime at which the auth credential will expire']
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)]
class arbor_imago.schemas.api_key.ApiKeyExport(*, id: str, user_id: str, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)], issued: Annotated[datetime, 'The datetime at which the auth credential was issued'], expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'])[source]

Bases: BaseModel

expiry: Annotated[datetime, 'The datetime at which the auth credential will expire']
id: str
issued: Annotated[datetime, 'The datetime at which the auth credential was issued']
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)]
user_id: str
class arbor_imago.schemas.api_key.ApiKeyImport[source]

Bases: BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.api_key.ApiKeyPrivate(*, id: str, user_id: str, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)], issued: Annotated[datetime, 'The datetime at which the auth credential was issued'], expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'])[source]

Bases: ApiKeyExport

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.api_key.ApiKeyPublic(*, id: str, user_id: str, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)], issued: Annotated[datetime, 'The datetime at which the auth credential was issued'], expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'])[source]

Bases: ApiKeyExport

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.api_key.ApiKeyUpdate(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)] | None = None, expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'] | None = None)[source]

Bases: ApiKeyImport

expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'] | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=None)] | None

arbor_imago.schemas.api_key_scope module

class arbor_imago.schemas.api_key_scope.ApiKeyScopeAdminCreate(*, api_key_id: str, scope_id: int)[source]

Bases: BaseModel

api_key_id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

scope_id: int
class arbor_imago.schemas.api_key_scope.ApiKeyScopeAdminUpdate[source]

Bases: BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

arbor_imago.schemas.auth_credential module

class arbor_imago.schemas.auth_credential.JwtPayload[source]

Bases: Generic[TSub], TypedDict

exp: Annotated[float, 'The datetime at which the auth credential will expire']
iat: Annotated[float, 'The datetime at which the auth credential was issued']
sub: TSub
type: Literal['access_token', 'api_key', 'otp', 'sign_up']
class arbor_imago.schemas.auth_credential.Type(*values)[source]

Bases: Enum

ACCESS_TOKEN = 'access_token'
API_KEY = 'api_key'
OTP = 'otp'
SIGN_UP = 'sign_up'

arbor_imago.schemas.file module

class arbor_imago.schemas.file.FileAdminCreate(*, stem: str, suffix: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None)] | None, gallery_id: str, size: int | None)[source]

Bases: FileCreate

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.file.FileAdminUpdate(*, stem: str | None = None, gallery_id: str | None = None)[source]

Bases: FileUpdate

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.file.FileCreate(*, stem: str, suffix: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None)] | None, gallery_id: str, size: int | None)[source]

Bases: FileImport

gallery_id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

size: int | None
stem: str
suffix: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None)] | None
class arbor_imago.schemas.file.FileExport(*, id: str, stem: str, suffix: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None)] | None, size: int)[source]

Bases: BaseModel

id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

size: int
stem: str
suffix: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=None, max_length=None, pattern=None)] | None
class arbor_imago.schemas.file.FileImport[source]

Bases: BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.file.FileUpdate(*, stem: str | None = None, gallery_id: str | None = None)[source]

Bases: FileImport

gallery_id: str | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

stem: str | None

arbor_imago.schemas.gallery module

class arbor_imago.schemas.gallery.GalleryAdminAvailable(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))], parent_id: str | None = None, date: date | None = None, user_id: str)[source]

Bases: GalleryAvailable

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

user_id: str
class arbor_imago.schemas.gallery.GalleryAdminCreate(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))], visibility_level: int, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None = None, date: date | None = None, user_id: str, parent_id: str | None = None)[source]

Bases: _CreateBase

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

parent_id: str | None
user_id: str
class arbor_imago.schemas.gallery.GalleryAdminUpdate(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))] | None = None, user_id: str | None = None, visibility_level: int | None = None, parent_id: str | None = None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None = None, date: date | None = None)[source]

Bases: GalleryUpdate

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.gallery.GalleryAvailable(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))], parent_id: str | None = None, date: date | None = None)[source]

Bases: BaseModel

date: date | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))]
parent_id: str | None
class arbor_imago.schemas.gallery.GalleryCreate(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))], visibility_level: int, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None = None, date: date | None = None, parent_id: str)[source]

Bases: _CreateBase

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

parent_id: str
class arbor_imago.schemas.gallery.GalleryExport(*, id: str, user_id: str, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))], parent_id: str | None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None, date: date | None)[source]

Bases: BaseModel

date: date | None
description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None
id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))]
parent_id: str | None
user_id: str
class arbor_imago.schemas.gallery.GalleryImport[source]

Bases: BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.gallery.GalleryPrivate(*, id: str, user_id: str, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))], parent_id: str | None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None, date: date | None, visibility_level: int)[source]

Bases: GalleryExport

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

visibility_level: int
class arbor_imago.schemas.gallery.GalleryPublic(*, id: str, user_id: str, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))], parent_id: str | None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None, date: date | None)[source]

Bases: GalleryExport

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.gallery.GalleryUpdate(*, name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))] | None = None, user_id: str | None = None, visibility_level: int | None = None, parent_id: str | None = None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None = None, date: date | None = None)[source]

Bases: GalleryImport

date: date | None
description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=256, pattern=re.compile('^(?!\\d{4}-\\d{2}-\\d{2} ).*'))] | None
parent_id: str | None
user_id: str | None
visibility_level: int | None

arbor_imago.schemas.gallery_permission module

class arbor_imago.schemas.gallery_permission.GalleryPermissionAdminCreate(*, gallery_id: str, user_id: str, permission_level: int)[source]

Bases: GalleryPermissionImport

gallery_id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

permission_level: int
user_id: str
class arbor_imago.schemas.gallery_permission.GalleryPermissionAdminUpdate(*, permission_level: int | None = None)[source]

Bases: GalleryPermissionImport

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

permission_level: int | None
class arbor_imago.schemas.gallery_permission.GalleryPermissionExport(*, gallery_id: str, user_id: str, permission_level: int)[source]

Bases: BaseModel

gallery_id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

permission_level: int
user_id: str
class arbor_imago.schemas.gallery_permission.GalleryPermissionImport[source]

Bases: BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.gallery_permission.GalleryPermissionPublic(*, gallery_id: str, user_id: str, permission_level: int)[source]

Bases: GalleryPermissionExport

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.gallery_permission.Private(*, gallery_id: str, user_id: str, permission_level: int)[source]

Bases: GalleryPermissionExport

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

arbor_imago.schemas.image_file_metadata module

class arbor_imago.schemas.image_file_metadata.ImageFileMetadataAdminCreate(*, file_id: str, version_id: str, scale: Annotated[int | None, Ge(ge=1), Le(le=99)] = None)[source]

Bases: ImageFileMetadataCreate

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.image_file_metadata.ImageFileMetadataAdminUpdate(*, file_id: str)[source]

Bases: ImageFileMetadataUpdate

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.image_file_metadata.ImageFileMetadataCreate(*, file_id: str, version_id: str, scale: Annotated[int | None, Ge(ge=1), Le(le=99)] = None)[source]

Bases: ImageFileMetadataImport

file_id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

scale: int | None
version_id: str
class arbor_imago.schemas.image_file_metadata.ImageFileMetadataExport[source]

Bases: object

file_id: str
scale: int | None
version_id: str
class arbor_imago.schemas.image_file_metadata.ImageFileMetadataImport[source]

Bases: BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.image_file_metadata.ImageFileMetadataUpdate(*, file_id: str)[source]

Bases: ImageFileMetadataImport

file_id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

arbor_imago.schemas.image_version module

class arbor_imago.schemas.image_version.ImageVersionAdminCreate(*, base_name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=240, pattern=re.compile('^(?!.*_).+$'))] | None = None, parent_id: str | None = None, version: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=re.compile('^(?!\\d{2}$).+$'))] | None = None, datetime: datetime | None = None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None = None, gallery_id: str, aspect_ratio: float | None = None, average_color: str | None = None)[source]

Bases: ImageVersionCreate

aspect_ratio: float | None
average_color: str | None
gallery_id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.image_version.ImageVersionAdminUpdate(*, base_name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=240, pattern=re.compile('^(?!.*_).+$'))] | None = None, parent_id: str | None = None, version: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=re.compile('^(?!\\d{2}$).+$'))] | None = None, datetime: datetime | None = None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None = None, id: str)[source]

Bases: ImageVersionUpdate

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.image_version.ImageVersionCreate(*, base_name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=240, pattern=re.compile('^(?!.*_).+$'))] | None = None, parent_id: str | None = None, version: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=re.compile('^(?!\\d{2}$).+$'))] | None = None, datetime: datetime | None = None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None = None)[source]

Bases: ImageVersionImport

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.image_version.ImageVersionExport(*, id: str, base_name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=240, pattern=re.compile('^(?!.*_).+$'))] | None, parent_id: str | None, version: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=re.compile('^(?!\\d{2}$).+$'))] | None, datetime: datetime | None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None, aspect_ratio: float | None, average_color: str | None)[source]

Bases: BaseModel

aspect_ratio: float | None
average_color: str | None
base_name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=240, pattern=re.compile('^(?!.*_).+$'))] | None
datetime: datetime | None
description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None
id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

parent_id: str | None
version: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=re.compile('^(?!\\d{2}$).+$'))] | None
class arbor_imago.schemas.image_version.ImageVersionImport(*, base_name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=240, pattern=re.compile('^(?!.*_).+$'))] | None = None, parent_id: str | None = None, version: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=re.compile('^(?!\\d{2}$).+$'))] | None = None, datetime: datetime | None = None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None = None)[source]

Bases: BaseModel

base_name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=240, pattern=re.compile('^(?!.*_).+$'))] | None
datetime: datetime | None
description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

parent_id: str | None
version: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=re.compile('^(?!\\d{2}$).+$'))] | None
class arbor_imago.schemas.image_version.ImageVersionUpdate(*, base_name: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=240, pattern=re.compile('^(?!.*_).+$'))] | None = None, parent_id: str | None = None, version: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=None, max_length=None, pattern=re.compile('^(?!\\d{2}$).+$'))] | None = None, datetime: datetime | None = None, description: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=0, max_length=20000, pattern=None)] | None = None, id: str)[source]

Bases: ImageVersionImport

id: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

arbor_imago.schemas.order_by module

class arbor_imago.schemas.order_by.OrderBy(*, field: T, ascending: bool)[source]

Bases: BaseModel, Generic

ascending: bool
field: T
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

arbor_imago.schemas.otp module

class arbor_imago.schemas.otp.OTPAdminCreate(*, user_id: str, hashed_code: str, expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'])[source]

Bases: BaseModel

expiry: Annotated[datetime, 'The datetime at which the auth credential will expire']
hashed_code: str
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

user_id: str
class arbor_imago.schemas.otp.OTPAdminUpdate[source]

Bases: BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

arbor_imago.schemas.pagination module

class arbor_imago.schemas.pagination.Pagination(*, limit: int, offset: int)[source]

Bases: BaseModel

limit: int
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

offset: int

arbor_imago.schemas.sign_up module

class arbor_imago.schemas.sign_up.SignUpAdminCreate(*, email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)], expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'])[source]

Bases: BaseModel

email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)]
expiry: Annotated[datetime, 'The datetime at which the auth credential will expire']
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

arbor_imago.schemas.user module

class arbor_imago.schemas.user.UserAdminCreate(*, phone_number: str | None = None, username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None = None, password: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=64, pattern=None)] | None = None, email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)], user_role_id: int = 1)[source]

Bases: UserCreate

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

user_role_id: int
class arbor_imago.schemas.user.UserAdminUpdate(*, phone_number: str | None = None, username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None = None, password: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=64, pattern=None)] | None = None, email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)] | None = None, user_role_id: int | None = None)[source]

Bases: UserUpdate

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

user_role_id: int | None
class arbor_imago.schemas.user.UserCreate(*, phone_number: str | None = None, username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None = None, password: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=64, pattern=None)] | None = None, email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)])[source]

Bases: UserImport

email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)]
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.user.UserExport(*, id: str, username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None = None)[source]

Bases: FromAttributes

id: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None
class arbor_imago.schemas.user.UserImport(*, phone_number: str | None = None, username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None = None, password: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=64, pattern=None)] | None = None)[source]

Bases: BaseModel

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

password: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=64, pattern=None)] | None
phone_number: str | None
username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None
class arbor_imago.schemas.user.UserPrivate(*, id: str, username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None = None, email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)], user_role_id: int)[source]

Bases: UserExport

email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)]
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

user_role_id: int
class arbor_imago.schemas.user.UserPublic(*, id: str, username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None = None)[source]

Bases: UserExport

model_config: ClassVar[ConfigDict] = {'from_attributes': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.user.UserUpdate(*, phone_number: str | None = None, username: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=True, strict=None, min_length=3, max_length=20, pattern=re.compile('^[a-zA-Z0-9_.-]+$'))] | None = None, password: Annotated[str, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=64, pattern=None)] | None = None, email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)] | None = None)[source]

Bases: UserImport

email: Annotated[EmailStr, StringConstraints(strip_whitespace=None, to_upper=None, to_lower=None, strict=None, min_length=1, max_length=254, pattern=None)] | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

arbor_imago.schemas.user_access_token module

class arbor_imago.schemas.user_access_token.UserAccessTokenAdminCreate(*, expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'], user_id: str)[source]

Bases: BaseModel

expiry: Annotated[datetime, 'The datetime at which the auth credential will expire']
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

user_id: str
class arbor_imago.schemas.user_access_token.UserAccessTokenAdminUpdate(*, expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'])[source]

Bases: BaseModel

expiry: Annotated[datetime, 'The datetime at which the auth credential will expire']
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.user_access_token.UserAccessTokenExport[source]

Bases: FromAttributes

model_config: ClassVar[ConfigDict] = {'from_attributes': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class arbor_imago.schemas.user_access_token.UserAccessTokenPrivate(*, id: str, expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'], user_id: str)[source]

Bases: UserAccessTokenExport

expiry: Annotated[datetime, 'The datetime at which the auth credential will expire']
id: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

user_id: str
class arbor_imago.schemas.user_access_token.UserAccessTokenPublic(*, id: str, expiry: Annotated[datetime, 'The datetime at which the auth credential will expire'])[source]

Bases: UserAccessTokenExport

expiry: Annotated[datetime, 'The datetime at which the auth credential will expire']
id: str
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Module contents

class arbor_imago.schemas.FromAttributes[source]

Bases: BaseModel

class Config[source]

Bases: object

from_attributes = True
model_config: ClassVar[ConfigDict] = {'from_attributes': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].