1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
from typing import Optional
from pydantic import BaseModel
from openapi_pydantic.compat import PYDANTIC_V2, ConfigDict, Extra
_examples = [
{
"name": "API Support",
"url": "http://www.example.com/support",
"email": "support@example.com",
}
]
class Contact(BaseModel):
"""
Contact information for the exposed API.
"""
name: Optional[str] = None
"""
The identifying name of the contact person/organization.
"""
url: Optional[str] = None
"""
The URL pointing to the contact information.
MUST be in the form of a URL.
"""
email: Optional[str] = None
"""
The email address of the contact person/organization.
MUST be in the form of an email address.
"""
if PYDANTIC_V2:
model_config = ConfigDict(
extra="allow",
json_schema_extra={"examples": _examples},
)
else:
class Config:
extra = Extra.allow
schema_extra = {"examples": _examples}
|