Source code for sinch.domains.sms.models.v1.shared.binary_request

from typing import Optional
from datetime import datetime
from pydantic import Field, StrictBool, StrictStr, conlist, StrictInt
from sinch.domains.sms.models.v1.types import (
    DeliveryReportType,
)
from sinch.domains.sms.models.v1.internal.base import (
    BaseModelConfigurationRequest,
)


[docs] class BinaryRequest(BaseModelConfigurationRequest): to: conlist(StrictStr) = Field( default=..., description="A list of phone numbers and group IDs that will receive the batch. [More info](https://community.sinch.com/t5/Glossary/MSISDN/ta-p/7628).", ) from_: Optional[StrictStr] = Field( default=None, alias="from", description="Sender number. Must be valid phone number, short code or alphanumeric. Required if Automatic Default Originator not configured.", ) body: StrictStr = Field( default=..., description="The message content Base64 encoded. Max 140 bytes including `udh`.", ) udh: StrictStr = Field( default=..., description="The UDH header of a binary message HEX encoded. Max 140 bytes including the `body`.", ) type: Optional[StrictStr] = Field( default="mt_binary", description="SMS in [binary](https://community.sinch.com/t5/Glossary/Binary-SMS/ta-p/7470) format.", ) delivery_report: Optional[DeliveryReportType] = None send_at: Optional[datetime] = Field( default=None, description="If set in the future the message will be delayed until `send_at` occurs. Must be before `expire_at`. If set in the past, messages will be sent immediately. Formatted as [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601). For example: `YYYY-MM-DDThh:mm:ss.SSSZ`.", ) expire_at: Optional[datetime] = Field( default=None, description="If set, the system will stop trying to deliver the message at this point. Must be after `send_at`. Default and max is 3 days after `send_at`. Formatted as [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601). For example: `YYYY-MM-DDThh:mm:ss.SSSZ`.", ) event_destination_target: Optional[StrictStr] = Field( default=None, alias="callback_url", description="Override the *default* callback URL for this batch. Must be a valid URL. Learn how to set a default callback URL [here](https://community.sinch.com/t5/SMS/How-do-I-assign-a-callback-URL-to-an-SMS-service-plan/ta-p/8414).", ) client_reference: Optional[StrictStr] = Field( default=None, description="The client identifier of a batch message. If set, the identifier will be added in the delivery report/callback of this batch.", ) feedback_enabled: Optional[StrictBool] = Field( default=None, description="If set to true then [feedback](/docs/sms/api-reference/sms/tag/Batches/#tag/Batches/operation/deliveryFeedback) is expected after successful delivery.", ) from_ton: Optional[StrictInt] = Field( default=None, description="The type of number for the sender number. Use to override the automatic detection.", ) from_npi: Optional[StrictInt] = Field( default=None, description="Number Plan Indicator for the sender number. Use to override the automatic detection.", )