50 lines
1.4 KiB
Python
50 lines
1.4 KiB
Python
"""
|
|
Account records request and response models.
|
|
"""
|
|
|
|
from typing import TYPE_CHECKING, Dict, Any
|
|
from pydantic import BaseModel, Field, RootModel
|
|
from ApiEvents.base_request_model import BaseRequestModel
|
|
|
|
if TYPE_CHECKING:
|
|
from ApiValidations.Request import (
|
|
InsertAccountRecord,
|
|
UpdateAccountRecord,
|
|
ListOptions,
|
|
)
|
|
|
|
|
|
class AddressUpdateRequest(RootModel[Dict[str, Any]]):
|
|
"""Request model for address update."""
|
|
model_config = {
|
|
"json_schema_extra": {
|
|
"example": {
|
|
"street": "123 Main St",
|
|
"city": "Example City",
|
|
"country": "Example Country"
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
class AddressUpdateResponse(BaseModel):
|
|
"""Response model for address update."""
|
|
address_uu_id: str = Field(..., description="UUID of the updated address")
|
|
data: Dict[str, Any] = Field(..., description="Updated address data")
|
|
function_code: str = Field(..., description="Function code for the endpoint")
|
|
|
|
|
|
class InsertAccountRecordRequestModel(BaseRequestModel["InsertAccountRecord"]):
|
|
"""Request model for inserting account records."""
|
|
pass
|
|
|
|
|
|
class UpdateAccountRecordRequestModel(BaseRequestModel["UpdateAccountRecord"]):
|
|
"""Request model for updating account records."""
|
|
pass
|
|
|
|
|
|
class ListOptionsRequestModel(BaseRequestModel["ListOptions"]):
|
|
"""Request model for list options."""
|
|
pass
|