sinch.domains.sms.models.v1.shared package

class sinch.domains.sms.models.v1.shared.AddKeyword(
*,
first_word: Annotated[str, Strict(strict=True)],
second_word: Annotated[str, Strict(strict=True)] | None = None,
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • first_word (Annotated[str, Strict(strict=True)])

  • second_word (Annotated[str, Strict(strict=True)] | None)

  • extra_data (Any)

first_word: Annotated[str, Strict(strict=True)]
second_word: Annotated[str, Strict(strict=True)] | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.AutoUpdate(
*,
to: Annotated[str, Strict(strict=True)],
add: AddKeyword | None = None,
remove: RemoveKeyword | None = None,
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
to: Annotated[str, Strict(strict=True)]
add: AddKeyword | None
remove: RemoveKeyword | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.BinaryRequest(
*,
to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)],
from_: Annotated[str, Strict(strict=True)] | None = None,
body: Annotated[str, Strict(strict=True)],
udh: Annotated[str, Strict(strict=True)],
type: Annotated[str, Strict(strict=True)] | None = 'mt_binary',
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None = None,
send_at: datetime | None = None,
expire_at: datetime | None = None,
callback_url: Annotated[str, Strict(strict=True)] | None = None,
client_reference: Annotated[str, Strict(strict=True)] | None = None,
feedback_enabled: Annotated[bool, Strict(strict=True)] | None = None,
from_ton: Annotated[int, Strict(strict=True)] | None = None,
from_npi: Annotated[int, Strict(strict=True)] | None = None,
**extra_data: Any,
)[source]

Bases: BaseConfigModel

Parameters:
  • to (Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)])

  • from_ (Annotated[str, Strict(strict=True)] | None)

  • body (Annotated[str, Strict(strict=True)])

  • udh (Annotated[str, Strict(strict=True)])

  • type (Annotated[str, Strict(strict=True)] | None)

  • delivery_report (Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)] | None)

  • send_at (datetime | None)

  • expire_at (datetime | None)

  • callback_url (Annotated[str, Strict(strict=True)] | None)

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • feedback_enabled (Annotated[bool, Strict(strict=True)] | None)

  • from_ton (Annotated[int, Strict(strict=True)] | None)

  • from_npi (Annotated[int, Strict(strict=True)] | None)

  • extra_data (Any)

to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)]
from_: Annotated[str, Strict(strict=True)] | None
body: Annotated[str, Strict(strict=True)]
udh: Annotated[str, Strict(strict=True)]
type: Annotated[str, Strict(strict=True)] | None
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None
send_at: datetime | None
expire_at: datetime | None
event_destination_target: Annotated[str, Strict(strict=True)] | None
client_reference: Annotated[str, Strict(strict=True)] | None
feedback_enabled: Annotated[bool, Strict(strict=True)] | None
from_ton: Annotated[int, Strict(strict=True)] | None
from_npi: Annotated[int, Strict(strict=True)] | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.BinaryResponse(
*,
id: Annotated[str, Strict(strict=True)] | None = None,
to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None = None,
from_: Annotated[str, Strict(strict=True)] | None = None,
canceled: Annotated[bool, Strict(strict=True)] | None = None,
body: Annotated[str, Strict(strict=True)] | None = None,
udh: Annotated[str, Strict(strict=True)] | None = None,
type: Literal['mt_binary'],
created_at: datetime | None = None,
modified_at: datetime | None = None,
delivery_report: Annotated[str, Strict(strict=True)] | None = None,
send_at: datetime | None = None,
expire_at: datetime | None = None,
callback_url: Annotated[str, Strict(strict=True)] | None = None,
client_reference: Annotated[str, Strict(strict=True)] | None = None,
feedback_enabled: Annotated[bool, Strict(strict=True)] | None = None,
from_ton: Annotated[int, Strict(strict=True)] | None = None,
from_npi: Annotated[int, Strict(strict=True)] | None = None,
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • id (Annotated[str, Strict(strict=True)] | None)

  • to (Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None)

  • from_ (Annotated[str, Strict(strict=True)] | None)

  • canceled (Annotated[bool, Strict(strict=True)] | None)

  • body (Annotated[str, Strict(strict=True)] | None)

  • udh (Annotated[str, Strict(strict=True)] | None)

  • type (Literal['mt_binary'])

  • created_at (datetime | None)

  • modified_at (datetime | None)

  • delivery_report (Annotated[str, Strict(strict=True)] | None)

  • send_at (datetime | None)

  • expire_at (datetime | None)

  • callback_url (Annotated[str, Strict(strict=True)] | None)

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • feedback_enabled (Annotated[bool, Strict(strict=True)] | None)

  • from_ton (Annotated[int, Strict(strict=True)] | None)

  • from_npi (Annotated[int, Strict(strict=True)] | None)

  • extra_data (Any)

id: Annotated[str, Strict(strict=True)] | None
to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None
from_: Annotated[str, Strict(strict=True)] | None
canceled: Annotated[bool, Strict(strict=True)] | None
body: Annotated[str, Strict(strict=True)] | None
udh: Annotated[str, Strict(strict=True)] | None
type: Literal['mt_binary']
created_at: datetime | None
modified_at: datetime | None
delivery_report: Annotated[str, Strict(strict=True)] | None
send_at: datetime | None
expire_at: datetime | None
event_destination_target: Annotated[str, Strict(strict=True)] | None
client_reference: Annotated[str, Strict(strict=True)] | None
feedback_enabled: Annotated[bool, Strict(strict=True)] | None
from_ton: Annotated[int, Strict(strict=True)] | None
from_npi: Annotated[int, Strict(strict=True)] | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.DryRunPerRecipientDetails(
*,
recipient: Annotated[str, Strict(strict=True)],
body: Annotated[str, Strict(strict=True)],
number_of_parts: Annotated[int, Strict(strict=True)],
encoding: Literal['GSM', 'UNICODE'] | Annotated[str, Strict(strict=True)],
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • recipient (Annotated[str, Strict(strict=True)])

  • body (Annotated[str, Strict(strict=True)])

  • number_of_parts (Annotated[int, Strict(strict=True)])

  • encoding (Literal['GSM', 'UNICODE'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)])

  • extra_data (Any)

recipient: Annotated[str, Strict(strict=True)]
body: Annotated[str, Strict(strict=True)]
number_of_parts: Annotated[int, Strict(strict=True)]
encoding: Literal['GSM', 'UNICODE'] | Annotated[str, Strict(strict=True)]
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.MediaBody(
*,
subject: Annotated[str, Strict(strict=True)] | None = None,
message: Annotated[str, Strict(strict=True)] | None = None,
url: Annotated[str, Strict(strict=True)],
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • subject (Annotated[str, Strict(strict=True)] | None)

  • message (Annotated[str, Strict(strict=True)] | None)

  • url (Annotated[str, Strict(strict=True)])

  • extra_data (Any)

subject: Annotated[str, Strict(strict=True)] | None
message: Annotated[str, Strict(strict=True)] | None
url: Annotated[str, Strict(strict=True)]
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.MediaRequest(
*,
to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)],
from_: Annotated[str, Strict(strict=True)] | None = None,
body: MediaBody,
parameters: Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None = None,
type: Annotated[str, Strict(strict=True)] | None = 'mt_media',
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None = None,
send_at: datetime | None = None,
expire_at: datetime | None = None,
callback_url: Annotated[str, Strict(strict=True)] | None = None,
client_reference: Annotated[str, Strict(strict=True)] | None = None,
feedback_enabled: Annotated[bool, Strict(strict=True)] | None = None,
strict_validation: Annotated[bool, Strict(strict=True)] | None = None,
**extra_data: Any,
)[source]

Bases: BaseConfigModel

Parameters:
  • to (Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)])

  • from_ (Annotated[str, Strict(strict=True)] | None)

  • body (MediaBody)

  • parameters (Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None)

  • type (Annotated[str, Strict(strict=True)] | None)

  • delivery_report (Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)] | None)

  • send_at (datetime | None)

  • expire_at (datetime | None)

  • callback_url (Annotated[str, Strict(strict=True)] | None)

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • feedback_enabled (Annotated[bool, Strict(strict=True)] | None)

  • strict_validation (Annotated[bool, Strict(strict=True)] | None)

  • extra_data (Any)

to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)]
from_: Annotated[str, Strict(strict=True)] | None
body: MediaBody
parameters: Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None
type: Annotated[str, Strict(strict=True)] | None
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None
send_at: datetime | None
expire_at: datetime | None
event_destination_target: Annotated[str, Strict(strict=True)] | None
client_reference: Annotated[str, Strict(strict=True)] | None
feedback_enabled: Annotated[bool, Strict(strict=True)] | None
strict_validation: Annotated[bool, Strict(strict=True)] | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.MediaResponse(
*,
id: Annotated[str, Strict(strict=True)] | None = None,
to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None = None,
from_: Annotated[str, Strict(strict=True)] | None = None,
canceled: Annotated[bool, Strict(strict=True)] | None = None,
body: MediaBody | None = None,
parameters: Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None = None,
type: Literal['mt_media'],
created_at: datetime | None = None,
modified_at: datetime | None = None,
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None = None,
send_at: datetime | None = None,
expire_at: datetime | None = None,
callback_url: Annotated[str, Strict(strict=True)] | None = None,
client_reference: Annotated[str, Strict(strict=True)] | None = None,
feedback_enabled: Annotated[bool, Strict(strict=True)] | None = None,
strict_validation: Annotated[bool, Strict(strict=True)] | None = None,
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • id (Annotated[str, Strict(strict=True)] | None)

  • to (Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None)

  • from_ (Annotated[str, Strict(strict=True)] | None)

  • canceled (Annotated[bool, Strict(strict=True)] | None)

  • body (MediaBody | None)

  • parameters (Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None)

  • type (Literal['mt_media'])

  • created_at (datetime | None)

  • modified_at (datetime | None)

  • delivery_report (Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)] | None)

  • send_at (datetime | None)

  • expire_at (datetime | None)

  • callback_url (Annotated[str, Strict(strict=True)] | None)

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • feedback_enabled (Annotated[bool, Strict(strict=True)] | None)

  • strict_validation (Annotated[bool, Strict(strict=True)] | None)

  • extra_data (Any)

id: Annotated[str, Strict(strict=True)] | None
to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None
from_: Annotated[str, Strict(strict=True)] | None
canceled: Annotated[bool, Strict(strict=True)] | None
body: MediaBody | None
parameters: Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None
type: Literal['mt_media']
created_at: datetime | None
modified_at: datetime | None
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None
send_at: datetime | None
expire_at: datetime | None
event_destination_target: Annotated[str, Strict(strict=True)] | None
client_reference: Annotated[str, Strict(strict=True)] | None
feedback_enabled: Annotated[bool, Strict(strict=True)] | None
strict_validation: Annotated[bool, Strict(strict=True)] | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.MessageDeliveryStatus(
*,
code: Literal[400, 401, 402, 403, 404, 405, 406, 407, 408, 410, 411, 412, 413, 414, 415, 416, 417, 418] | Annotated[int, Strict(strict=True)],
count: Annotated[int, Strict(strict=True)],
recipients: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None = None,
status: Literal['QUEUED', 'DISPATCHED', 'ABORTED', 'CANCELLED', 'FAILED', 'DELIVERED', 'EXPIRED', 'REJECTED', 'DELETED', 'UNKNOWN'] | Annotated[str, Strict(strict=True)],
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • code (Literal[400, 401, 402, 403, 404, 405, 406, 407, 408, 410, 411, 412, 413, 414, 415, 416, 417, 418] | ~typing.Annotated[int, ~pydantic.types.Strict(strict=True)])

  • count (Annotated[int, Strict(strict=True)])

  • recipients (Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None)

  • status (Literal['QUEUED', 'DISPATCHED', 'ABORTED', 'CANCELLED', 'FAILED', 'DELIVERED', 'EXPIRED', 'REJECTED', 'DELETED', 'UNKNOWN'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)])

  • extra_data (Any)

code: Literal[400, 401, 402, 403, 404, 405, 406, 407, 408, 410, 411, 412, 413, 414, 415, 416, 417, 418] | Annotated[int, Strict(strict=True)]
count: Annotated[int, Strict(strict=True)]
recipients: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None
status: Literal['QUEUED', 'DISPATCHED', 'ABORTED', 'CANCELLED', 'FAILED', 'DELIVERED', 'EXPIRED', 'REJECTED', 'DELETED', 'UNKNOWN'] | Annotated[str, Strict(strict=True)]
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.RemoveKeyword(
*,
first_word: Annotated[str, Strict(strict=True)],
second_word: Annotated[str, Strict(strict=True)] | None = None,
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • first_word (Annotated[str, Strict(strict=True)])

  • second_word (Annotated[str, Strict(strict=True)] | None)

  • extra_data (Any)

first_word: Annotated[str, Strict(strict=True)]
second_word: Annotated[str, Strict(strict=True)] | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.TextRequest(
*,
to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)],
from_: Annotated[str, Strict(strict=True)] | None = None,
parameters: Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None = None,
body: Annotated[str, Strict(strict=True)],
type: Annotated[str, Strict(strict=True)] | None = 'mt_text',
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None = None,
send_at: datetime | None = None,
expire_at: datetime | None = None,
callback_url: Annotated[str, Strict(strict=True)] | None = None,
client_reference: Annotated[str, Strict(strict=True)] | None = None,
feedback_enabled: Annotated[bool, Strict(strict=True)] | None = None,
flash_message: Annotated[bool, Strict(strict=True)] | None = None,
max_number_of_message_parts: Annotated[int, Strict(strict=True)] | None = None,
truncate_concat: Annotated[bool, Strict(strict=True)] | None = None,
from_ton: Annotated[int, Strict(strict=True)] | None = None,
from_npi: Annotated[int, Strict(strict=True)] | None = None,
**extra_data: Any,
)[source]

Bases: BaseConfigModel

Parameters:
  • to (Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)])

  • from_ (Annotated[str, Strict(strict=True)] | None)

  • parameters (Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None)

  • body (Annotated[str, Strict(strict=True)])

  • type (Annotated[str, Strict(strict=True)] | None)

  • delivery_report (Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)] | None)

  • send_at (datetime | None)

  • expire_at (datetime | None)

  • callback_url (Annotated[str, Strict(strict=True)] | None)

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • feedback_enabled (Annotated[bool, Strict(strict=True)] | None)

  • flash_message (Annotated[bool, Strict(strict=True)] | None)

  • max_number_of_message_parts (Annotated[int, Strict(strict=True)] | None)

  • truncate_concat (Annotated[bool, Strict(strict=True)] | None)

  • from_ton (Annotated[int, Strict(strict=True)] | None)

  • from_npi (Annotated[int, Strict(strict=True)] | None)

  • extra_data (Any)

to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)]
from_: Annotated[str, Strict(strict=True)] | None
parameters: Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None
body: Annotated[str, Strict(strict=True)]
type: Annotated[str, Strict(strict=True)] | None
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None
send_at: datetime | None
expire_at: datetime | None
event_destination_target: Annotated[str, Strict(strict=True)] | None
client_reference: Annotated[str, Strict(strict=True)] | None
feedback_enabled: Annotated[bool, Strict(strict=True)] | None
flash_message: Annotated[bool, Strict(strict=True)] | None
max_number_of_message_parts: Annotated[int, Strict(strict=True)] | None
truncate_concat: Annotated[bool, Strict(strict=True)] | None
from_ton: Annotated[int, Strict(strict=True)] | None
from_npi: Annotated[int, Strict(strict=True)] | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.TextResponse(
*,
id: Annotated[str, Strict(strict=True)] | None = None,
to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None = None,
from_: Annotated[str, Strict(strict=True)] | None = None,
canceled: Annotated[bool, Strict(strict=True)] | None = None,
parameters: Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None = None,
body: Annotated[str, Strict(strict=True)] | None = None,
type: Literal['mt_text'],
created_at: datetime | None = None,
modified_at: datetime | None = None,
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None = None,
send_at: datetime | None = None,
expire_at: datetime | None = None,
callback_url: Annotated[str, Strict(strict=True)] | None = None,
client_reference: Annotated[str, Strict(strict=True)] | None = None,
feedback_enabled: Annotated[bool, Strict(strict=True)] | None = None,
flash_message: Annotated[bool, Strict(strict=True)] | None = None,
truncate_concat: Annotated[bool, Strict(strict=True)] | None = None,
max_number_of_message_parts: Annotated[int, Strict(strict=True)] | None = None,
from_ton: Annotated[int, Strict(strict=True)] | None = None,
from_npi: Annotated[int, Strict(strict=True)] | None = None,
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • id (Annotated[str, Strict(strict=True)] | None)

  • to (Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None)

  • from_ (Annotated[str, Strict(strict=True)] | None)

  • canceled (Annotated[bool, Strict(strict=True)] | None)

  • parameters (Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None)

  • body (Annotated[str, Strict(strict=True)] | None)

  • type (Literal['mt_text'])

  • created_at (datetime | None)

  • modified_at (datetime | None)

  • delivery_report (Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)] | None)

  • send_at (datetime | None)

  • expire_at (datetime | None)

  • callback_url (Annotated[str, Strict(strict=True)] | None)

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • feedback_enabled (Annotated[bool, Strict(strict=True)] | None)

  • flash_message (Annotated[bool, Strict(strict=True)] | None)

  • truncate_concat (Annotated[bool, Strict(strict=True)] | None)

  • max_number_of_message_parts (Annotated[int, Strict(strict=True)] | None)

  • from_ton (Annotated[int, Strict(strict=True)] | None)

  • from_npi (Annotated[int, Strict(strict=True)] | None)

  • extra_data (Any)

id: Annotated[str, Strict(strict=True)] | None
to: Annotated[list[Annotated[str, Strict(strict=True)]], Len(min_length=0, max_length=None)] | None
from_: Annotated[str, Strict(strict=True)] | None
canceled: Annotated[bool, Strict(strict=True)] | None
parameters: Dict[Annotated[str, Strict(strict=True)], Dict[Annotated[str, Strict(strict=True)], Annotated[str, Strict(strict=True)]]] | None
body: Annotated[str, Strict(strict=True)] | None
type: Literal['mt_text']
created_at: datetime | None
modified_at: datetime | None
delivery_report: Literal['none', 'summary', 'full', 'per_recipient', 'per_recipient_final'] | Annotated[str, Strict(strict=True)] | None
send_at: datetime | None
expire_at: datetime | None
event_destination_target: Annotated[str, Strict(strict=True)] | None
client_reference: Annotated[str, Strict(strict=True)] | None
feedback_enabled: Annotated[bool, Strict(strict=True)] | None
flash_message: Annotated[bool, Strict(strict=True)] | None
truncate_concat: Annotated[bool, Strict(strict=True)] | None
max_number_of_message_parts: Annotated[int, Strict(strict=True)] | None
from_ton: Annotated[int, Strict(strict=True)] | None
from_npi: Annotated[int, Strict(strict=True)] | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.BaseMOMessage(
*,
from_: Annotated[str, Strict(strict=True)],
id: Annotated[str, Strict(strict=True)],
received_at: datetime,
to: Annotated[str, Strict(strict=True)],
client_reference: Annotated[str, Strict(strict=True)] | None = None,
operator_id: Annotated[str, Strict(strict=True)] | None = None,
sent_at: datetime | None = None,
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • from_ (Annotated[str, Strict(strict=True)])

  • id (Annotated[str, Strict(strict=True)])

  • received_at (datetime)

  • to (Annotated[str, Strict(strict=True)])

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • operator_id (Annotated[str, Strict(strict=True)] | None)

  • sent_at (datetime | None)

  • extra_data (Any)

from_: Annotated[str, Strict(strict=True)]
id: Annotated[str, Strict(strict=True)]
received_at: datetime
to: Annotated[str, Strict(strict=True)]
client_reference: Annotated[str, Strict(strict=True)] | None
operator_id: Annotated[str, Strict(strict=True)] | None
sent_at: datetime | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.MOTextMessage(
*,
from_: Annotated[str, Strict(strict=True)],
id: Annotated[str, Strict(strict=True)],
received_at: datetime,
to: Annotated[str, Strict(strict=True)],
client_reference: Annotated[str, Strict(strict=True)] | None = None,
operator_id: Annotated[str, Strict(strict=True)] | None = None,
sent_at: datetime | None = None,
body: Annotated[str, Strict(strict=True)],
type: Literal['mo_text'],
**extra_data: Any,
)[source]

Bases: BaseMOMessage

Parameters:
  • from_ (Annotated[str, Strict(strict=True)])

  • id (Annotated[str, Strict(strict=True)])

  • received_at (datetime)

  • to (Annotated[str, Strict(strict=True)])

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • operator_id (Annotated[str, Strict(strict=True)] | None)

  • sent_at (datetime | None)

  • body (Annotated[str, Strict(strict=True)])

  • type (Literal['mo_text'])

  • extra_data (Any)

body: Annotated[str, Strict(strict=True)]
type: Literal['mo_text']
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.MOBinaryMessage(
*,
from_: Annotated[str, Strict(strict=True)],
id: Annotated[str, Strict(strict=True)],
received_at: datetime,
to: Annotated[str, Strict(strict=True)],
client_reference: Annotated[str, Strict(strict=True)] | None = None,
operator_id: Annotated[str, Strict(strict=True)] | None = None,
sent_at: datetime | None = None,
body: Annotated[str, Strict(strict=True)],
type: Literal['mo_binary'],
udh: Annotated[str, Strict(strict=True)],
**extra_data: Any,
)[source]

Bases: BaseMOMessage

Parameters:
  • from_ (Annotated[str, Strict(strict=True)])

  • id (Annotated[str, Strict(strict=True)])

  • received_at (datetime)

  • to (Annotated[str, Strict(strict=True)])

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • operator_id (Annotated[str, Strict(strict=True)] | None)

  • sent_at (datetime | None)

  • body (Annotated[str, Strict(strict=True)])

  • type (Literal['mo_binary'])

  • udh (Annotated[str, Strict(strict=True)])

  • extra_data (Any)

body: Annotated[str, Strict(strict=True)]
type: Literal['mo_binary']
udh: Annotated[str, Strict(strict=True)]
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.MOMediaItem(
*,
url: Annotated[str, Strict(strict=True)] | None = None,
content_type: Annotated[str, Strict(strict=True)],
status: Literal['Uploaded', 'Failed'] | Annotated[str, Strict(strict=True)],
code: Annotated[int, Strict(strict=True)],
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • url (Annotated[str, Strict(strict=True)] | None)

  • content_type (Annotated[str, Strict(strict=True)])

  • status (Literal['Uploaded', 'Failed'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)])

  • code (Annotated[int, Strict(strict=True)])

  • extra_data (Any)

url: Annotated[str, Strict(strict=True)] | None
content_type: Annotated[str, Strict(strict=True)]
status: Literal['Uploaded', 'Failed'] | Annotated[str, Strict(strict=True)]
code: Annotated[int, Strict(strict=True)]
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.MOMediaBody(
*,
subject: Annotated[str, Strict(strict=True)] | None = None,
message: Annotated[str, Strict(strict=True)] | None = None,
media: Annotated[list[MOMediaItem], Len(min_length=0, max_length=None)] | None = None,
**extra_data: Any,
)[source]

Bases: SnakeCaseExtrasModel

Parameters:
  • subject (Annotated[str, Strict(strict=True)] | None)

  • message (Annotated[str, Strict(strict=True)] | None)

  • media (Annotated[list[MOMediaItem], Len(min_length=0, max_length=None)] | None)

  • extra_data (Any)

subject: Annotated[str, Strict(strict=True)] | None
message: Annotated[str, Strict(strict=True)] | None
media: Annotated[list[MOMediaItem], Len(min_length=0, max_length=None)] | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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

class sinch.domains.sms.models.v1.shared.MOMediaMessage(
*,
from_: Annotated[str, Strict(strict=True)],
id: Annotated[str, Strict(strict=True)],
received_at: datetime,
to: Annotated[str, Strict(strict=True)],
client_reference: Annotated[str, Strict(strict=True)] | None = None,
operator_id: Annotated[str, Strict(strict=True)] | None = None,
sent_at: datetime | None = None,
body: MOMediaBody,
type: Literal['mo_media'],
**extra_data: Any,
)[source]

Bases: BaseMOMessage

Parameters:
  • from_ (Annotated[str, Strict(strict=True)])

  • id (Annotated[str, Strict(strict=True)])

  • received_at (datetime)

  • to (Annotated[str, Strict(strict=True)])

  • client_reference (Annotated[str, Strict(strict=True)] | None)

  • operator_id (Annotated[str, Strict(strict=True)] | None)

  • sent_at (datetime | None)

  • body (MOMediaBody)

  • type (Literal['mo_media'])

  • extra_data (Any)

body: MOMediaBody
type: Literal['mo_media']
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

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