Models¶
These models are used for argument and return value validation. They are based on the pydantic package.
Definitions¶
- class avatars.models.ApiKey[source]¶
Response model for an API key.
- created_at: Annotated[datetime, Field(title='Created At')] [Required]¶
- expires_at: Annotated[datetime, Field(title='Expires At')] [Required]¶
- id: Annotated[UUID, Field(title='Id')] [Required]¶
- last_used_at: Annotated[datetime | None, Field(title='Last Used At')] = None¶
- name: Annotated[str, Field(title='Name')] [Required]¶
- revoked_at: Annotated[datetime | None, Field(title='Revoked At')] = None¶
- class avatars.models.ApiKeyWithPlaintext[source]¶
API Key response model that includes the secret for creation.
- created_at: Annotated[datetime, Field(title='Created At')] [Required]¶
- expires_at: Annotated[datetime, Field(title='Expires At')] [Required]¶
- id: Annotated[UUID, Field(title='Id')] [Required]¶
- last_used_at: Annotated[datetime | None, Field(title='Last Used At')] = None¶
- name: Annotated[str, Field(title='Name')] [Required]¶
- plaintext: Annotated[str, Field(title='Plaintext')] [Required]¶
- revoked_at: Annotated[datetime | None, Field(title='Revoked At')] = None¶
- class avatars.models.CompatibilityStatus(*values)[source]¶
- compatible = 'compatible'¶
- incompatible = 'incompatible'¶
- unknown = 'unknown'¶
- class avatars.models.ExpirationDays(*values)[source]¶
Expiration preset in days (choose from 30/60/120/365)
- integer_30 = 30¶
- integer_60 = 60¶
- integer_120 = 120¶
- integer_365 = 365¶
- class avatars.models.CreateApiKeyRequest[source]¶
Request body for creating an API key.
- expiration_days: Annotated[ExpirationDays, Field(description='Expiration preset in days (choose from 30/60/120/365)', title='Expiration Days')] [Required]¶
Expiration preset in days (choose from 30/60/120/365)
- name: Annotated[str, Field(description='Human-readable label for the API key', max_length=255, min_length=1, title='Name')] [Required]¶
Human-readable label for the API key
- Constraints:
min_length = 1
max_length = 255
- class avatars.models.CreateApiKeyResponse[source]¶
Response for API key creation.
- api_key: ApiKeyWithPlaintext [Required]¶
- message: Annotated[str, Field(title='Message')] [Required]¶
- class avatars.models.CreditsInfo[source]¶
- credits: Annotated[int | None, Field(title='Credits')] = None¶
- is_credit_enabled: Annotated[bool, Field(title='Is Credit Enabled')] [Required]¶
- class avatars.models.FeatureScope(*values)[source]¶
- avatar_parameters = 'avatar_parameters'¶
- single_table = 'single_table'¶
- multi_table = 'multi_table'¶
- time_series = 'time_series'¶
- report = 'report'¶
- geolocalization = 'geolocalization'¶
- privacy_assessment = 'privacy_assessment'¶
- differential_privacy = 'differential_privacy'¶
- class avatars.models.FeaturesInfo[source]¶
- feature_scopes: Annotated[List[FeatureScope], Field(title='Feature Scopes')] [Required]¶
- class avatars.models.FileCredentials[source]¶
- access_key_id: Annotated[str, Field(title='Access Key Id')] [Required]¶
- jwt_token: Annotated[str | None, Field(title='Jwt Token')] = ''¶
- secret_access_key: Annotated[str, Field(title='Secret Access Key')] [Required]¶
- class avatars.models.ForgottenPasswordRequest[source]¶
- email: Annotated[str, Field(title='Email')] [Required]¶
- class avatars.models.JobCreateRequest[source]¶
- depends_on: Annotated[List[str] | None, Field(title='Depends On')] = []¶
- parameters_name: Annotated[str, Field(title='Parameters Name')] [Required]¶
- set_name: Annotated[UUID, Field(title='Set Name')] [Required]¶
- class avatars.models.JobCreateResponse[source]¶
- Location: Annotated[str, Field(title='Location')] [Required]¶
- name: Annotated[str, Field(title='Name')] [Required]¶
- class avatars.models.JobKind(*values)[source]¶
- standard = 'standard'¶
- privacy_metrics = 'privacy_metrics'¶
- signal_metrics = 'signal_metrics'¶
- report = 'report'¶
- advice = 'advice'¶
- class avatars.models.JobResponse[source]¶
- created_at: Annotated[datetime, Field(title='Created At')] [Required]¶
- done: Annotated[bool, Field(title='Done')] [Required]¶
- exception: Annotated[str, Field(title='Exception')] [Required]¶
- name: Annotated[str, Field(title='Name')] [Required]¶
- parameters_name: Annotated[str, Field(title='Parameters Name')] [Required]¶
- progress: Annotated[float | None, Field(title='Progress')] = None¶
- set_name: Annotated[UUID, Field(title='Set Name')] [Required]¶
- status: Annotated[str, Field(title='Status')] [Required]¶
- class avatars.models.JobWithDisplayNameResponse[source]¶
- created_at: Annotated[datetime, Field(title='Created At')] [Required]¶
- display_name: Annotated[str, Field(title='Display Name')] [Required]¶
- done: Annotated[bool, Field(title='Done')] [Required]¶
- exception: Annotated[str, Field(title='Exception')] [Required]¶
- name: Annotated[str, Field(title='Name')] [Required]¶
- parameters_name: Annotated[str, Field(title='Parameters Name')] [Required]¶
- progress: Annotated[float | None, Field(title='Progress')] = None¶
- set_name: Annotated[UUID, Field(title='Set Name')] [Required]¶
- status: Annotated[str, Field(title='Status')] [Required]¶
- class avatars.models.LoginResponse[source]¶
- access_token: Annotated[str, Field(title='Access Token')] [Required]¶
- refresh_token: Annotated[str | None, Field(title='Refresh Token')] = None¶
- token_type: Annotated[str, Field(title='Token Type')] [Required]¶
- class avatars.models.ResetPasswordRequest[source]¶
- email: Annotated[str, Field(title='Email')] [Required]¶
- new_password: Annotated[str, Field(title='New Password')] [Required]¶
- new_password_repeated: Annotated[str, Field(title='New Password Repeated')] [Required]¶
- token: Annotated[UUID, Field(title='Token')] [Required]¶
- class avatars.models.ResourceSetResponse[source]¶
- display_name: Annotated[str, Field(title='Display Name')] [Required]¶
- set_name: Annotated[UUID, Field(title='Set Name')] [Required]¶
- class avatars.models.ValidationError[source]¶
- loc: Annotated[List[str | int], Field(title='Location')] [Required]¶
- msg: Annotated[str, Field(title='Message')] [Required]¶
- type: Annotated[str, Field(title='Error Type')] [Required]¶
- class avatars.models.GrantType[source]¶
- root: Annotated[str, Field(pattern='^password$', title='Grant Type')] [Required]¶
- Constraints:
pattern = ^password$
- class avatars.models.Login[source]¶
- client_id: Annotated[str | None, Field(title='Client Id')] = None¶
- client_secret: Annotated[str | None, Field(title='Client Secret')] = None¶
- password: Annotated[str, Field(title='Password')] [Required]¶
- scope: Annotated[str | None, Field(title='Scope')] = ''¶
- username: Annotated[str, Field(title='Username')] [Required]¶
- class avatars.models.CompatibilityResponse[source]¶
- message: Annotated[str, Field(title='Message')] [Required]¶
- most_recent_compatible_client: Annotated[str | None, Field(title='Most Recent Compatible Client')] = None¶
- status: CompatibilityStatus [Required]¶
- class avatars.models.CreateUser[source]¶
Create a user, either with an email, or a username.
The choice will depend on how your server is setup.
- email: Annotated[str | None, Field(title='Email')] = None¶
- password: Annotated[str | None, Field(title='Password')] = None¶
- username: Annotated[str | None, Field(title='Username')] = None¶
- class avatars.models.FileAccess[source]¶
- credentials: FileCredentials [Required]¶
- url: Annotated[str, Field(title='Url')] [Required]¶
- class avatars.models.HTTPValidationError[source]¶
- detail: Annotated[List[ValidationError] | None, Field(title='Detail')] = None¶
- class avatars.models.JobResponseList[source]¶
- jobs: Annotated[List[JobWithDisplayNameResponse], Field(title='Jobs')] [Required]¶
- class avatars.models.User[source]¶
- email: Annotated[str | None, Field(title='Email')] = None¶
- id: Annotated[UUID, Field(title='Id')] [Required]¶
- organization_id: Annotated[UUID, Field(title='Organization Id')] [Required]¶
- username: Annotated[str | None, Field(title='Username')] = None¶
- class avatar_yaml.models.parameters.AlignmentMethod(*values)[source]¶
Bases:
str,Enum- SPECIFIED = 'specified'¶
- MAX = 'max'¶
- MIN = 'min'¶
- MEAN = 'mean'¶
- class avatar_yaml.models.parameters.ExcludeVariablesMethod(*values)[source]¶
Bases:
str,EnumThe method to exclude column.
- ROW_ORDER = 'row_order'¶
SENSITIVE The excluded column will be linked to the original row order. This is a violation of privacy.
- COORDINATE_SIMILARITY = 'coordinate_similarity'¶
The excluded column will be linked by individual similarity.
- class avatar_yaml.models.parameters.ImputeMethod(*values)[source]¶
Bases:
str,Enum- KNN = 'knn'¶
- MODE = 'mode'¶
- MEDIAN = 'median'¶
- MEAN = 'mean'¶
- FAST_KNN = 'fast_knn'¶
- class avatar_yaml.models.parameters.ProjectionType(*values)[source]¶
Bases:
str,Enum- FPCA = 'fpca'¶
- FLATTEN = 'flatten'¶
- class avatar_yaml.models.schema.ColumnType(*values)[source]¶
Bases:
StrEnum- INT = 'int'¶
- BOOL = 'bool'¶
- CATEGORY = 'category'¶
- NUMERIC = 'float'¶
- DATETIME = 'datetime'¶
- DATETIME_TZ = 'datetime_tz'¶
- class avatar_yaml.models.schema.LinkMethod(*values)[source]¶
Bases:
StrEnumAvailable assignment methods to link a child to its parent table after the anonymization.
- LINEAR_SUM_ASSIGNMENT = 'linear_sum_assignment'¶
Assign using the linear sum assignment algorithm. This method is a good privacy and utility trade-off. The algorithm consumes lots of resources.
- MINIMUM_DISTANCE_ASSIGNMENT = 'minimum_distance_assignment'¶
Assign using the minimum distance assignment algorithm. This method assigns the closest child to the parent. It is an acceptable privacy and utility trade-off. This algorithm consumes less resources than the linear sum assignment.
- SENSITIVE_ORIGINAL_ORDER_ASSIGNMENT = 'sensitive_original_order_assignment'¶
Assign the child to the parent using the original order. WARNING!!! This method is a HIGH PRIVACY BREACH as it keeps the original order to assign the child to the parent. This method isn’t recommended for privacy reasons but consumes less resources than the other methods.
- TIME_SERIES = 'time_series'¶
Specific assignment method for time series data. It is used to link time series data to the parent table.