sentdm 0.45.0 → 0.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -0
- data/README.md +11 -11
- data/lib/sentdm/client.rb +66 -0
- data/lib/sentdm/internal/sender_profiles_page.rb +140 -0
- data/lib/sentdm/internal/type/enum.rb +11 -11
- data/lib/sentdm/models/account.rb +173 -0
- data/lib/sentdm/models/account_channels.rb +39 -0
- data/lib/sentdm/models/account_profile.rb +86 -0
- data/lib/sentdm/models/account_rcs_channel.rb +26 -0
- data/lib/sentdm/models/account_sms_channel.rb +26 -0
- data/lib/sentdm/models/account_whatsapp_channel.rb +35 -0
- data/lib/sentdm/models/api_response_of_account.rb +48 -0
- data/lib/sentdm/models/api_response_of_cancelled_message.rb +43 -0
- data/lib/sentdm/models/api_response_of_channels_state.rb +48 -0
- data/lib/sentdm/models/api_response_of_compliance_requirements.rb +47 -0
- data/lib/sentdm/models/api_response_of_contacts_list.rb +42 -0
- data/lib/sentdm/models/api_response_of_message.rb +51 -0
- data/lib/sentdm/models/api_response_of_message_activities.rb +43 -0
- data/lib/sentdm/models/api_response_of_number_lookup_result.rb +43 -0
- data/lib/sentdm/models/api_response_of_profile_completion_accepted.rb +47 -0
- data/lib/sentdm/models/api_response_of_profile_completion_result.rb +47 -0
- data/lib/sentdm/models/api_response_of_profiles_list.rb +43 -0
- data/lib/sentdm/models/api_response_of_sender_profile.rb +54 -0
- data/lib/sentdm/models/api_response_of_sender_profiles_list.rb +42 -0
- data/lib/sentdm/models/api_response_of_templates_list.rb +42 -0
- data/lib/sentdm/models/api_response_of_users_list.rb +43 -0
- data/lib/sentdm/models/api_response_of_webhook_event_types_list.rb +43 -0
- data/lib/sentdm/models/api_response_of_webhook_events_list.rb +42 -0
- data/lib/sentdm/models/{webhook_rotate_secret_response.rb → api_response_of_webhook_secret.rb} +4 -17
- data/lib/sentdm/models/{webhook_test_response.rb → api_response_of_webhook_test.rb} +4 -23
- data/lib/sentdm/models/api_response_of_webhooks_list.rb +42 -0
- data/lib/sentdm/models/billing_contact.rb +35 -0
- data/lib/sentdm/models/brand_business.rb +96 -0
- data/lib/sentdm/models/brand_business_info.rb +3 -20
- data/lib/sentdm/models/brand_compliance.rb +75 -0
- data/lib/sentdm/models/brand_contact.rb +56 -0
- data/lib/sentdm/models/brand_with_kyc.rb +129 -0
- data/lib/sentdm/models/cancelled_message.rb +28 -0
- data/lib/sentdm/models/channel_event_payload.rb +3 -114
- data/lib/sentdm/models/channel_list_params.rb +20 -0
- data/lib/sentdm/models/channel_score.rb +35 -0
- data/lib/sentdm/models/channels/api_response_of_list_of_sms_market.rb +45 -0
- data/lib/sentdm/models/channels/api_response_of_rcs_agent.rb +60 -0
- data/lib/sentdm/models/channels/api_response_of_sms_market.rb +54 -0
- data/lib/sentdm/models/channels/api_response_of_whatsapp_channel.rb +47 -0
- data/lib/sentdm/models/channels/market_compliance.rb +409 -0
- data/lib/sentdm/models/channels/rc_create_params.rb +260 -0
- data/lib/sentdm/models/channels/rcs_address.rb +43 -0
- data/lib/sentdm/models/channels/rcs_agent.rb +278 -0
- data/lib/sentdm/models/channels/sms_create_params.rb +173 -0
- data/lib/sentdm/models/channels/sms_list_params.rb +22 -0
- data/lib/sentdm/models/channels/sms_market.rb +158 -0
- data/lib/sentdm/models/channels/sms_number.rb +41 -0
- data/lib/sentdm/models/channels/sms_number_request.rb +33 -0
- data/lib/sentdm/models/channels/sms_retrieve_params.rb +34 -0
- data/lib/sentdm/models/channels/sms_update_params.rb +64 -0
- data/lib/sentdm/models/channels/supplied_compliance.rb +89 -0
- data/lib/sentdm/models/channels/supplied_document.rb +35 -0
- data/lib/sentdm/models/channels/whatsapp_channel.rb +109 -0
- data/lib/sentdm/models/channels/whatsapp_create_params.rb +65 -0
- data/lib/sentdm/models/channels_state.rb +89 -0
- data/lib/sentdm/models/compliance_attachment_template.rb +36 -0
- data/lib/sentdm/models/compliance_requirement.rb +112 -0
- data/lib/sentdm/models/compliance_requirements.rb +98 -0
- data/lib/sentdm/models/compliance_retrieve_requirements_params.rb +52 -0
- data/lib/sentdm/models/compliance_setup_step.rb +78 -0
- data/lib/sentdm/models/contact_message_summary.rb +3 -34
- data/lib/sentdm/models/contacts_list.rb +26 -0
- data/lib/sentdm/models/conversation_messages_list.rb +3 -430
- data/lib/sentdm/models/entity_type.rb +18 -0
- data/lib/sentdm/models/inbound_media.rb +53 -0
- data/lib/sentdm/models/inbound_message_event_payload.rb +3 -53
- data/lib/sentdm/models/link_event.rb +79 -0
- data/lib/sentdm/models/link_event_payload.rb +211 -0
- data/lib/sentdm/models/message.rb +168 -0
- data/lib/sentdm/models/message_activities.rb +34 -0
- data/lib/sentdm/models/message_activity.rb +105 -0
- data/lib/sentdm/models/message_body.rb +79 -0
- data/lib/sentdm/models/message_button.rb +33 -0
- data/lib/sentdm/models/message_cancel_params.rb +32 -0
- data/lib/sentdm/models/message_channel_options.rb +43 -0
- data/lib/sentdm/models/message_header_media.rb +31 -0
- data/lib/sentdm/models/message_media.rb +74 -0
- data/lib/sentdm/models/message_recipient.rb +46 -0
- data/lib/sentdm/models/message_send_params.rb +6 -90
- data/lib/sentdm/models/message_send_response.rb +3 -95
- data/lib/sentdm/models/message_send_result.rb +55 -0
- data/lib/sentdm/models/message_status_event.rb +54 -0
- data/lib/sentdm/models/mms_market.rb +48 -0
- data/lib/sentdm/models/number_lookup_result.rb +63 -0
- data/lib/sentdm/models/pagination_cursors.rb +27 -0
- data/lib/sentdm/models/pagination_meta.rb +3 -27
- data/lib/sentdm/models/profile_completion_accepted.rb +20 -0
- data/lib/sentdm/models/profile_completion_result.rb +31 -0
- data/lib/sentdm/models/profile_detail.rb +6 -408
- data/lib/sentdm/models/profiles/brand_campaign.rb +3 -15
- data/lib/sentdm/models/profiles_list.rb +26 -0
- data/lib/sentdm/models/sender_profile.rb +138 -0
- data/lib/sentdm/models/sender_profile_billing.rb +21 -0
- data/lib/sentdm/models/sender_profile_billing_request.rb +33 -0
- data/lib/sentdm/models/sender_profile_channels.rb +90 -0
- data/lib/sentdm/models/sender_profile_create_params.rb +116 -0
- data/lib/sentdm/models/sender_profile_delete_params.rb +20 -0
- data/lib/sentdm/models/sender_profile_list_params.rb +30 -0
- data/lib/sentdm/models/sender_profile_rcs.rb +209 -0
- data/lib/sentdm/models/sender_profile_retrieve_params.rb +20 -0
- data/lib/sentdm/models/sender_profile_sms.rb +106 -0
- data/lib/sentdm/models/sender_profile_update_params.rb +71 -0
- data/lib/sentdm/models/sender_profile_whatsapp.rb +61 -0
- data/lib/sentdm/models/sender_profiles_list.rb +26 -0
- data/lib/sentdm/models/tcr_brand_identity_status.rb +17 -0
- data/lib/sentdm/models/tcr_brand_status.rb +16 -0
- data/lib/sentdm/models/tcr_campaign_status.rb +16 -0
- data/lib/sentdm/models/template_body.rb +3 -70
- data/lib/sentdm/models/template_header.rb +3 -37
- data/lib/sentdm/models/template_header_location.rb +38 -0
- data/lib/sentdm/models/template_media_item.rb +34 -0
- data/lib/sentdm/models/template_mms_body_content.rb +49 -0
- data/lib/sentdm/models/template_ref.rb +51 -0
- data/lib/sentdm/models/template_variable.rb +3 -64
- data/lib/sentdm/models/template_variable_props.rb +65 -0
- data/lib/sentdm/models/templates_list.rb +26 -0
- data/lib/sentdm/models/users_list.rb +26 -0
- data/lib/sentdm/models/voice/call.rb +3 -54
- data/lib/sentdm/models/voice/call_leg.rb +58 -0
- data/lib/sentdm/models/webhook_create_params.rb +3 -25
- data/lib/sentdm/models/webhook_delivery.rb +160 -0
- data/lib/sentdm/models/webhook_event_types_list.rb +26 -0
- data/lib/sentdm/models/webhook_events_list.rb +26 -0
- data/lib/sentdm/models/webhook_response.rb +3 -28
- data/lib/sentdm/models/webhook_secret.rb +15 -0
- data/lib/sentdm/models/webhook_sender_profile.rb +29 -0
- data/lib/sentdm/models/webhook_sender_profile_config.rb +27 -0
- data/lib/sentdm/models/webhook_test.rb +21 -0
- data/lib/sentdm/models/webhook_update_params.rb +3 -25
- data/lib/sentdm/models/webhooks_list.rb +26 -0
- data/lib/sentdm/models.rb +188 -0
- data/lib/sentdm/resources/channels/rcs.rb +177 -0
- data/lib/sentdm/resources/channels/sms.rb +417 -0
- data/lib/sentdm/resources/channels/whatsapp.rb +106 -0
- data/lib/sentdm/resources/channels.rb +162 -0
- data/lib/sentdm/resources/compliance.rb +127 -0
- data/lib/sentdm/resources/conversations.rb +4 -4
- data/lib/sentdm/resources/me.rb +2 -2
- data/lib/sentdm/resources/messages.rb +71 -6
- data/lib/sentdm/resources/numbers.rb +2 -2
- data/lib/sentdm/resources/profiles.rb +4 -4
- data/lib/sentdm/resources/sender_profiles.rb +463 -0
- data/lib/sentdm/resources/users.rb +2 -2
- data/lib/sentdm/resources/webhooks.rb +10 -10
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +120 -11
- data/rbi/sentdm/client.rbi +64 -0
- data/rbi/sentdm/internal/sender_profiles_page.rbi +122 -0
- data/rbi/sentdm/models/account.rbi +242 -0
- data/rbi/sentdm/models/account_channels.rbi +66 -0
- data/rbi/sentdm/models/account_profile.rbi +116 -0
- data/rbi/sentdm/models/account_rcs_channel.rbi +45 -0
- data/rbi/sentdm/models/account_sms_channel.rbi +45 -0
- data/rbi/sentdm/models/account_whatsapp_channel.rbi +58 -0
- data/rbi/sentdm/models/api_response_of_account.rbi +78 -0
- data/rbi/sentdm/models/{webhook_rotate_secret_response.rbi → api_response_of_cancelled_message.rbi} +6 -41
- data/rbi/sentdm/models/api_response_of_channels_state.rbi +78 -0
- data/rbi/sentdm/models/api_response_of_compliance_requirements.rbi +81 -0
- data/rbi/sentdm/models/api_response_of_contacts_list.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_message.rbi +84 -0
- data/rbi/sentdm/models/api_response_of_message_activities.rbi +77 -0
- data/rbi/sentdm/models/{webhook_test_response.rbi → api_response_of_number_lookup_result.rbi} +9 -43
- data/rbi/sentdm/models/api_response_of_profile_completion_accepted.rbi +83 -0
- data/rbi/sentdm/models/{profile_complete_response.rbi → api_response_of_profile_completion_result.rbi} +6 -52
- data/rbi/sentdm/models/api_response_of_profiles_list.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_sender_profile.rbi +90 -0
- data/rbi/sentdm/models/api_response_of_sender_profiles_list.rbi +77 -0
- data/rbi/sentdm/models/api_response_of_templates_list.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_users_list.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_webhook_event_types_list.rbi +79 -0
- data/rbi/sentdm/models/api_response_of_webhook_events_list.rbi +77 -0
- data/rbi/sentdm/models/api_response_of_webhook_secret.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_webhook_test.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_webhooks_list.rbi +74 -0
- data/rbi/sentdm/models/billing_contact.rbi +49 -0
- data/rbi/sentdm/models/brand_business.rbi +115 -0
- data/rbi/sentdm/models/brand_business_info.rbi +3 -49
- data/rbi/sentdm/models/brand_compliance.rbi +108 -0
- data/rbi/sentdm/models/brand_contact.rbi +78 -0
- data/rbi/sentdm/models/brand_with_kyc.rbi +167 -0
- data/rbi/sentdm/models/cancelled_message.rbi +37 -0
- data/rbi/sentdm/models/channel_event_payload.rbi +4 -204
- data/rbi/sentdm/models/channel_list_params.rbi +38 -0
- data/rbi/sentdm/models/channel_score.rbi +56 -0
- data/rbi/sentdm/models/channels/api_response_of_list_of_sms_market.rbi +76 -0
- data/rbi/sentdm/models/channels/api_response_of_rcs_agent.rbi +103 -0
- data/rbi/sentdm/models/channels/api_response_of_sms_market.rbi +93 -0
- data/rbi/sentdm/models/channels/api_response_of_whatsapp_channel.rbi +85 -0
- data/rbi/sentdm/models/channels/market_compliance.rbi +770 -0
- data/rbi/sentdm/models/channels/rc_create_params.rbi +397 -0
- data/rbi/sentdm/models/channels/rcs_address.rbi +62 -0
- data/rbi/sentdm/models/channels/rcs_agent.rbi +320 -0
- data/rbi/sentdm/models/channels/sms_create_params.rbi +291 -0
- data/rbi/sentdm/models/channels/sms_list_params.rbi +40 -0
- data/rbi/sentdm/models/channels/sms_market.rbi +247 -0
- data/rbi/sentdm/models/channels/sms_number.rbi +60 -0
- data/rbi/sentdm/models/channels/sms_number_request.rbi +48 -0
- data/rbi/sentdm/models/channels/sms_retrieve_params.rbi +56 -0
- data/rbi/sentdm/models/channels/sms_update_params.rbi +93 -0
- data/rbi/sentdm/models/channels/supplied_compliance.rbi +140 -0
- data/rbi/sentdm/models/channels/supplied_document.rbi +57 -0
- data/rbi/sentdm/models/channels/whatsapp_channel.rbi +172 -0
- data/rbi/sentdm/models/channels/whatsapp_create_params.rbi +104 -0
- data/rbi/sentdm/models/channels_state.rbi +151 -0
- data/rbi/sentdm/models/compliance_attachment_template.rbi +56 -0
- data/rbi/sentdm/models/compliance_requirement.rbi +149 -0
- data/rbi/sentdm/models/compliance_requirements.rbi +165 -0
- data/rbi/sentdm/models/compliance_retrieve_requirements_params.rbi +79 -0
- data/rbi/sentdm/models/compliance_setup_step.rbi +115 -0
- data/rbi/sentdm/models/contact_message_summary.rbi +4 -69
- data/rbi/sentdm/models/contacts_list.rbi +50 -0
- data/rbi/sentdm/models/conversation_messages_list.rbi +4 -669
- data/rbi/sentdm/models/entity_type.rbi +23 -0
- data/rbi/sentdm/models/inbound_media.rbi +76 -0
- data/rbi/sentdm/models/inbound_message_event_payload.rbi +3 -85
- data/rbi/sentdm/models/link_event.rbi +128 -0
- data/rbi/sentdm/models/link_event_payload.rbi +279 -0
- data/rbi/sentdm/models/message.rbi +214 -0
- data/rbi/sentdm/models/message_activities.rbi +63 -0
- data/rbi/sentdm/models/message_activity.rbi +145 -0
- data/rbi/sentdm/models/message_body.rbi +104 -0
- data/rbi/sentdm/models/message_button.rbi +52 -0
- data/rbi/sentdm/models/message_cancel_params.rbi +59 -0
- data/rbi/sentdm/models/message_channel_options.rbi +65 -0
- data/rbi/sentdm/models/message_header_media.rbi +44 -0
- data/rbi/sentdm/models/message_media.rbi +95 -0
- data/rbi/sentdm/models/message_recipient.rbi +70 -0
- data/rbi/sentdm/models/message_send_params.rbi +7 -155
- data/rbi/sentdm/models/message_send_response.rbi +4 -163
- data/rbi/sentdm/models/message_send_result.rbi +85 -0
- data/rbi/sentdm/models/message_status_event.rbi +70 -0
- data/rbi/sentdm/models/mms_market.rbi +66 -0
- data/rbi/sentdm/models/number_lookup_result.rbi +89 -0
- data/rbi/sentdm/models/pagination_cursors.rbi +42 -0
- data/rbi/sentdm/models/pagination_meta.rbi +4 -43
- data/rbi/sentdm/models/profile_completion_accepted.rbi +33 -0
- data/rbi/sentdm/models/profile_completion_result.rbi +43 -0
- data/rbi/sentdm/models/profile_detail.rbi +8 -621
- data/rbi/sentdm/models/profiles/brand_campaign.rbi +3 -45
- data/rbi/sentdm/models/profiles_list.rbi +50 -0
- data/rbi/sentdm/models/sender_profile.rbi +204 -0
- data/rbi/sentdm/models/sender_profile_billing.rbi +34 -0
- data/rbi/sentdm/models/sender_profile_billing_request.rbi +46 -0
- data/rbi/sentdm/models/sender_profile_channels.rbi +163 -0
- data/rbi/sentdm/models/sender_profile_create_params.rbi +190 -0
- data/rbi/sentdm/models/sender_profile_delete_params.rbi +35 -0
- data/rbi/sentdm/models/sender_profile_list_params.rbi +57 -0
- data/rbi/sentdm/models/sender_profile_rcs.rbi +211 -0
- data/rbi/sentdm/models/sender_profile_retrieve_params.rbi +35 -0
- data/rbi/sentdm/models/sender_profile_sms.rbi +156 -0
- data/rbi/sentdm/models/sender_profile_update_params.rbi +96 -0
- data/rbi/sentdm/models/sender_profile_whatsapp.rbi +83 -0
- data/rbi/sentdm/models/sender_profiles_list.rbi +54 -0
- data/rbi/sentdm/models/tcr_brand_identity_status.rbi +27 -0
- data/rbi/sentdm/models/tcr_brand_status.rbi +20 -0
- data/rbi/sentdm/models/tcr_campaign_status.rbi +23 -0
- data/rbi/sentdm/models/template_body.rbi +6 -114
- data/rbi/sentdm/models/template_header.rbi +4 -53
- data/rbi/sentdm/models/template_header_location.rbi +47 -0
- data/rbi/sentdm/models/template_media_item.rbi +51 -0
- data/rbi/sentdm/models/template_mms_body_content.rbi +73 -0
- data/rbi/sentdm/models/template_ref.rbi +79 -0
- data/rbi/sentdm/models/template_variable.rbi +4 -80
- data/rbi/sentdm/models/template_variable_props.rbi +81 -0
- data/rbi/sentdm/models/templates_list.rbi +50 -0
- data/rbi/sentdm/models/users_list.rbi +50 -0
- data/rbi/sentdm/models/voice/call.rbi +3 -86
- data/rbi/sentdm/models/voice/call_leg.rbi +90 -0
- data/rbi/sentdm/models/webhook_create_params.rbi +4 -49
- data/rbi/sentdm/models/webhook_delivery.rbi +211 -0
- data/rbi/sentdm/models/webhook_event_types_list.rbi +54 -0
- data/rbi/sentdm/models/webhook_events_list.rbi +52 -0
- data/rbi/sentdm/models/webhook_response.rbi +4 -50
- data/rbi/sentdm/models/webhook_secret.rbi +24 -0
- data/rbi/sentdm/models/webhook_sender_profile.rbi +46 -0
- data/rbi/sentdm/models/webhook_sender_profile_config.rbi +44 -0
- data/rbi/sentdm/models/webhook_test.rbi +32 -0
- data/rbi/sentdm/models/webhook_update_params.rbi +4 -49
- data/rbi/sentdm/models/webhooks_list.rbi +50 -0
- data/rbi/sentdm/models.rbi +197 -0
- data/rbi/sentdm/resources/channels/rcs.rbi +208 -0
- data/rbi/sentdm/resources/channels/sms.rbi +437 -0
- data/rbi/sentdm/resources/channels/whatsapp.rbi +108 -0
- data/rbi/sentdm/resources/channels.rbi +149 -0
- data/rbi/sentdm/resources/compliance.rbi +121 -0
- data/rbi/sentdm/resources/conversations.rbi +2 -10
- data/rbi/sentdm/resources/me.rbi +1 -1
- data/rbi/sentdm/resources/messages.rbi +64 -7
- data/rbi/sentdm/resources/numbers.rbi +1 -1
- data/rbi/sentdm/resources/profiles.rbi +2 -2
- data/rbi/sentdm/resources/sender_profiles.rbi +461 -0
- data/rbi/sentdm/resources/users.rbi +1 -1
- data/rbi/sentdm/resources/webhooks.rbi +6 -12
- data/sig/sentdm/client.rbs +4 -0
- data/sig/sentdm/internal/sender_profiles_page.rbs +80 -0
- data/sig/sentdm/models/account.rbs +111 -0
- data/sig/sentdm/models/account_channels.rbs +38 -0
- data/sig/sentdm/models/account_profile.rbs +68 -0
- data/sig/sentdm/models/account_rcs_channel.rbs +17 -0
- data/sig/sentdm/models/account_sms_channel.rbs +17 -0
- data/sig/sentdm/models/account_whatsapp_channel.rbs +28 -0
- data/sig/sentdm/models/api_response_of_account.rbs +39 -0
- data/sig/sentdm/models/api_response_of_cancelled_message.rbs +39 -0
- data/sig/sentdm/models/api_response_of_channels_state.rbs +39 -0
- data/sig/sentdm/models/api_response_of_compliance_requirements.rbs +39 -0
- data/sig/sentdm/models/api_response_of_contacts_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_message.rbs +39 -0
- data/sig/sentdm/models/api_response_of_message_activities.rbs +39 -0
- data/sig/sentdm/models/api_response_of_number_lookup_result.rbs +39 -0
- data/sig/sentdm/models/api_response_of_profile_completion_accepted.rbs +39 -0
- data/sig/sentdm/models/api_response_of_profile_completion_result.rbs +39 -0
- data/sig/sentdm/models/api_response_of_profiles_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_sender_profile.rbs +39 -0
- data/sig/sentdm/models/api_response_of_sender_profiles_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_templates_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_users_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhook_event_types_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhook_events_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhook_secret.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhook_test.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhooks_list.rbs +39 -0
- data/sig/sentdm/models/billing_contact.rbs +30 -0
- data/sig/sentdm/models/brand_business.rbs +70 -0
- data/sig/sentdm/models/brand_business_info.rbs +4 -23
- data/sig/sentdm/models/brand_compliance.rbs +56 -0
- data/sig/sentdm/models/brand_contact.rbs +47 -0
- data/sig/sentdm/models/brand_with_kyc.rbs +93 -0
- data/sig/sentdm/models/cancelled_message.rbs +15 -0
- data/sig/sentdm/models/channel_event_payload.rbs +4 -56
- data/sig/sentdm/models/channel_list_params.rbs +25 -0
- data/sig/sentdm/models/channel_score.rbs +32 -0
- data/sig/sentdm/models/channels/api_response_of_list_of_sms_market.rbs +41 -0
- data/sig/sentdm/models/channels/api_response_of_rcs_agent.rbs +41 -0
- data/sig/sentdm/models/channels/api_response_of_sms_market.rbs +41 -0
- data/sig/sentdm/models/channels/api_response_of_whatsapp_channel.rbs +43 -0
- data/sig/sentdm/models/channels/market_compliance.rbs +338 -0
- data/sig/sentdm/models/channels/rc_create_params.rbs +242 -0
- data/sig/sentdm/models/channels/rcs_address.rbs +42 -0
- data/sig/sentdm/models/channels/rcs_agent.rbs +181 -0
- data/sig/sentdm/models/channels/sms_create_params.rbs +116 -0
- data/sig/sentdm/models/channels/sms_list_params.rbs +27 -0
- data/sig/sentdm/models/channels/sms_market.rbs +85 -0
- data/sig/sentdm/models/channels/sms_number.rbs +28 -0
- data/sig/sentdm/models/channels/sms_number_request.rbs +17 -0
- data/sig/sentdm/models/channels/sms_retrieve_params.rbs +36 -0
- data/sig/sentdm/models/channels/sms_update_params.rbs +63 -0
- data/sig/sentdm/models/channels/supplied_compliance.rbs +32 -0
- data/sig/sentdm/models/channels/supplied_document.rbs +30 -0
- data/sig/sentdm/models/channels/whatsapp_channel.rbs +78 -0
- data/sig/sentdm/models/channels/whatsapp_create_params.rbs +56 -0
- data/sig/sentdm/models/channels_state.rbs +55 -0
- data/sig/sentdm/models/compliance_attachment_template.rbs +26 -0
- data/sig/sentdm/models/compliance_requirement.rbs +76 -0
- data/sig/sentdm/models/compliance_requirements.rbs +66 -0
- data/sig/sentdm/models/compliance_retrieve_requirements_params.rbs +43 -0
- data/sig/sentdm/models/compliance_setup_step.rbs +62 -0
- data/sig/sentdm/models/contact_message_summary.rbs +6 -35
- data/sig/sentdm/models/contacts_list.rbs +31 -0
- data/sig/sentdm/models/conversation_messages_list.rbs +5 -312
- data/sig/sentdm/models/entity_type.rbs +22 -0
- data/sig/sentdm/models/inbound_media.rbs +35 -0
- data/sig/sentdm/models/inbound_message_event_payload.rbs +4 -36
- data/sig/sentdm/models/link_event.rbs +44 -0
- data/sig/sentdm/models/link_event_payload.rbs +106 -0
- data/sig/sentdm/models/message.rbs +130 -0
- data/sig/sentdm/models/message_activities.rbs +38 -0
- data/sig/sentdm/models/message_activity.rbs +66 -0
- data/sig/sentdm/models/message_body.rbs +52 -0
- data/sig/sentdm/models/message_button.rbs +34 -0
- data/sig/sentdm/models/message_cancel_params.rbs +38 -0
- data/sig/sentdm/models/message_channel_options.rbs +26 -0
- data/sig/sentdm/models/message_header_media.rbs +19 -0
- data/sig/sentdm/models/message_media.rbs +40 -0
- data/sig/sentdm/models/message_recipient.rbs +34 -0
- data/sig/sentdm/models/message_send_params.rbs +8 -54
- data/sig/sentdm/models/message_send_response.rbs +4 -77
- data/sig/sentdm/models/message_send_result.rbs +45 -0
- data/sig/sentdm/models/message_status_event.rbs +40 -0
- data/sig/sentdm/models/mms_market.rbs +35 -0
- data/sig/sentdm/models/number_lookup_result.rbs +64 -0
- data/sig/sentdm/models/pagination_cursors.rbs +15 -0
- data/sig/sentdm/models/pagination_meta.rbs +4 -16
- data/sig/sentdm/models/profile_completion_accepted.rbs +15 -0
- data/sig/sentdm/models/profile_completion_result.rbs +19 -0
- data/sig/sentdm/models/profile_detail.rbs +8 -315
- data/sig/sentdm/models/profiles/brand_campaign.rbs +4 -16
- data/sig/sentdm/models/profiles_list.rbs +31 -0
- data/sig/sentdm/models/sender_profile.rbs +76 -0
- data/sig/sentdm/models/sender_profile_billing.rbs +15 -0
- data/sig/sentdm/models/sender_profile_billing_request.rbs +15 -0
- data/sig/sentdm/models/sender_profile_channels.rbs +30 -0
- data/sig/sentdm/models/sender_profile_create_params.rbs +78 -0
- data/sig/sentdm/models/sender_profile_delete_params.rbs +20 -0
- data/sig/sentdm/models/sender_profile_list_params.rbs +32 -0
- data/sig/sentdm/models/sender_profile_rcs.rbs +150 -0
- data/sig/sentdm/models/sender_profile_retrieve_params.rbs +20 -0
- data/sig/sentdm/models/sender_profile_sms.rbs +40 -0
- data/sig/sentdm/models/sender_profile_update_params.rbs +62 -0
- data/sig/sentdm/models/sender_profile_whatsapp.rbs +16 -0
- data/sig/sentdm/models/sender_profiles_list.rbs +31 -0
- data/sig/sentdm/models/tcr_brand_identity_status.rbs +17 -0
- data/sig/sentdm/models/tcr_brand_status.rbs +15 -0
- data/sig/sentdm/models/tcr_campaign_status.rbs +15 -0
- data/sig/sentdm/models/template_body.rbs +4 -43
- data/sig/sentdm/models/template_header.rbs +4 -31
- data/sig/sentdm/models/template_header_location.rbs +30 -0
- data/sig/sentdm/models/template_media_item.rbs +17 -0
- data/sig/sentdm/models/template_mms_body_content.rbs +28 -0
- data/sig/sentdm/models/template_ref.rbs +26 -0
- data/sig/sentdm/models/template_variable.rbs +4 -51
- data/sig/sentdm/models/template_variable_props.rbs +50 -0
- data/sig/sentdm/models/templates_list.rbs +29 -0
- data/sig/sentdm/models/users_list.rbs +31 -0
- data/sig/sentdm/models/voice/call.rbs +4 -49
- data/sig/sentdm/models/voice/call_leg.rbs +50 -0
- data/sig/sentdm/models/webhook_create_params.rbs +4 -28
- data/sig/sentdm/models/webhook_delivery.rbs +99 -0
- data/sig/sentdm/models/webhook_event_types_list.rbs +31 -0
- data/sig/sentdm/models/webhook_events_list.rbs +31 -0
- data/sig/sentdm/models/webhook_response.rbs +4 -28
- data/sig/sentdm/models/webhook_secret.rbs +15 -0
- data/sig/sentdm/models/webhook_sender_profile.rbs +27 -0
- data/sig/sentdm/models/webhook_sender_profile_config.rbs +27 -0
- data/sig/sentdm/models/webhook_test.rbs +19 -0
- data/sig/sentdm/models/webhook_update_params.rbs +4 -28
- data/sig/sentdm/models/webhooks_list.rbs +31 -0
- data/sig/sentdm/models.rbs +188 -0
- data/sig/sentdm/resources/channels/rcs.rbs +41 -0
- data/sig/sentdm/resources/channels/sms.rbs +44 -0
- data/sig/sentdm/resources/channels/whatsapp.rbs +18 -0
- data/sig/sentdm/resources/channels.rbs +11 -0
- data/sig/sentdm/resources/compliance.rbs +15 -0
- data/sig/sentdm/resources/conversations.rbs +2 -2
- data/sig/sentdm/resources/me.rbs +1 -1
- data/sig/sentdm/resources/messages.rbs +12 -4
- data/sig/sentdm/resources/numbers.rbs +1 -1
- data/sig/sentdm/resources/profiles.rbs +2 -2
- data/sig/sentdm/resources/sender_profiles.rbs +44 -0
- data/sig/sentdm/resources/users.rbs +1 -1
- data/sig/sentdm/resources/webhooks.rbs +6 -6
- metadata +362 -35
- data/lib/sentdm/models/me_retrieve_response.rb +0 -409
- data/lib/sentdm/models/message_retrieve_activities_response.rb +0 -175
- data/lib/sentdm/models/message_retrieve_status_response.rb +0 -477
- data/lib/sentdm/models/number_lookup_response.rb +0 -104
- data/lib/sentdm/models/profile_complete_response.rb +0 -74
- data/lib/sentdm/models/profile_list_response.rb +0 -65
- data/lib/sentdm/models/user_list_response.rb +0 -65
- data/lib/sentdm/models/webhook_list_event_types_response.rb +0 -65
- data/lib/sentdm/models/webhook_list_events_response.rb +0 -445
- data/rbi/sentdm/models/me_retrieve_response.rbi +0 -705
- data/rbi/sentdm/models/message_retrieve_activities_response.rbi +0 -319
- data/rbi/sentdm/models/message_retrieve_status_response.rbi +0 -765
- data/rbi/sentdm/models/number_lookup_response.rbi +0 -166
- data/rbi/sentdm/models/profile_list_response.rbi +0 -128
- data/rbi/sentdm/models/user_list_response.rbi +0 -128
- data/rbi/sentdm/models/webhook_list_event_types_response.rbi +0 -142
- data/rbi/sentdm/models/webhook_list_events_response.rbi +0 -647
- data/sig/sentdm/models/me_retrieve_response.rbs +0 -306
- data/sig/sentdm/models/message_retrieve_activities_response.rbs +0 -137
- data/sig/sentdm/models/message_retrieve_status_response.rbs +0 -341
- data/sig/sentdm/models/number_lookup_response.rbs +0 -100
- data/sig/sentdm/models/profile_complete_response.rbs +0 -55
- data/sig/sentdm/models/profile_list_response.rbs +0 -67
- data/sig/sentdm/models/user_list_response.rbs +0 -67
- data/sig/sentdm/models/webhook_list_event_types_response.rbs +0 -67
- data/sig/sentdm/models/webhook_list_events_response.rbs +0 -243
- data/sig/sentdm/models/webhook_rotate_secret_response.rbs +0 -51
- data/sig/sentdm/models/webhook_test_response.rbs +0 -55
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class SenderProfileUpdateParams < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
extend Sentdm::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Sentdm::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(Sentdm::SenderProfileUpdateParams, Sentdm::Internal::AnyHash)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig { returns(String) }
|
|
15
|
+
attr_accessor :id
|
|
16
|
+
|
|
17
|
+
sig { returns(T.nilable(String)) }
|
|
18
|
+
attr_accessor :description
|
|
19
|
+
|
|
20
|
+
sig { returns(T.nilable(String)) }
|
|
21
|
+
attr_reader :name
|
|
22
|
+
|
|
23
|
+
sig { params(name: String).void }
|
|
24
|
+
attr_writer :name
|
|
25
|
+
|
|
26
|
+
# Who is notified about this profile's events: ORGANIZATION, SENDER_PROFILE, or
|
|
27
|
+
# ORGANIZATION_AND_SENDER_PROFILE. Cannot be cleared — a supplied value must be
|
|
28
|
+
# one of those.
|
|
29
|
+
sig { returns(T.nilable(String)) }
|
|
30
|
+
attr_accessor :notifications
|
|
31
|
+
|
|
32
|
+
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
33
|
+
# for testing integrations without actual execution
|
|
34
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
35
|
+
attr_reader :sandbox
|
|
36
|
+
|
|
37
|
+
sig { params(sandbox: T::Boolean).void }
|
|
38
|
+
attr_writer :sandbox
|
|
39
|
+
|
|
40
|
+
sig { returns(T.nilable(String)) }
|
|
41
|
+
attr_accessor :short_name
|
|
42
|
+
|
|
43
|
+
sig { returns(T.nilable(String)) }
|
|
44
|
+
attr_reader :idempotency_key
|
|
45
|
+
|
|
46
|
+
sig { params(idempotency_key: String).void }
|
|
47
|
+
attr_writer :idempotency_key
|
|
48
|
+
|
|
49
|
+
sig do
|
|
50
|
+
params(
|
|
51
|
+
id: String,
|
|
52
|
+
description: T.nilable(String),
|
|
53
|
+
name: String,
|
|
54
|
+
notifications: T.nilable(String),
|
|
55
|
+
sandbox: T::Boolean,
|
|
56
|
+
short_name: T.nilable(String),
|
|
57
|
+
idempotency_key: String,
|
|
58
|
+
request_options: Sentdm::RequestOptions::OrHash
|
|
59
|
+
).returns(T.attached_class)
|
|
60
|
+
end
|
|
61
|
+
def self.new(
|
|
62
|
+
id:,
|
|
63
|
+
description: nil,
|
|
64
|
+
name: nil,
|
|
65
|
+
# Who is notified about this profile's events: ORGANIZATION, SENDER_PROFILE, or
|
|
66
|
+
# ORGANIZATION_AND_SENDER_PROFILE. Cannot be cleared — a supplied value must be
|
|
67
|
+
# one of those.
|
|
68
|
+
notifications: nil,
|
|
69
|
+
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
70
|
+
# for testing integrations without actual execution
|
|
71
|
+
sandbox: nil,
|
|
72
|
+
short_name: nil,
|
|
73
|
+
idempotency_key: nil,
|
|
74
|
+
request_options: {}
|
|
75
|
+
)
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
sig do
|
|
79
|
+
override.returns(
|
|
80
|
+
{
|
|
81
|
+
id: String,
|
|
82
|
+
description: T.nilable(String),
|
|
83
|
+
name: String,
|
|
84
|
+
notifications: T.nilable(String),
|
|
85
|
+
sandbox: T::Boolean,
|
|
86
|
+
short_name: T.nilable(String),
|
|
87
|
+
idempotency_key: String,
|
|
88
|
+
request_options: Sentdm::RequestOptions
|
|
89
|
+
}
|
|
90
|
+
)
|
|
91
|
+
end
|
|
92
|
+
def to_hash
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
end
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class SenderProfileWhatsapp < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(Sentdm::SenderProfileWhatsapp, Sentdm::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# The Meta phone-number id this profile sends from. Must already be registered
|
|
12
|
+
# under WabaId.
|
|
13
|
+
#
|
|
14
|
+
# Optional. Omit it to attach the account now and settle the number later: the
|
|
15
|
+
# channel reads as ACTION_NEEDED with CHANNEL_007, and the profile's WhatsApp
|
|
16
|
+
# messages fail until a number is named. They do not fall back to the
|
|
17
|
+
# organization's account. Nothing picks one on your behalf.
|
|
18
|
+
sig { returns(T.nilable(String)) }
|
|
19
|
+
attr_accessor :phone_number_id
|
|
20
|
+
|
|
21
|
+
# WhatsApp Business Account id — one of the accounts shared into your
|
|
22
|
+
# organization. Required: the organization holds one per client, and nothing but
|
|
23
|
+
# the caller says which belongs to this profile.
|
|
24
|
+
sig { returns(T.nilable(String)) }
|
|
25
|
+
attr_accessor :waba_id
|
|
26
|
+
|
|
27
|
+
# The profile's own WhatsApp Business Account, named by the two identifiers the
|
|
28
|
+
# organization cannot answer for you.
|
|
29
|
+
#
|
|
30
|
+
# No mode: a profile's WABA is its own or it has none. Sharing the organization's
|
|
31
|
+
# would mean sharing its inbox and its throughput, which makes the two
|
|
32
|
+
# indistinguishable to a recipient — so inheriting is not offered rather than
|
|
33
|
+
# refused.
|
|
34
|
+
#
|
|
35
|
+
# Everything derivable is derived. Whenever this block is present, the solution
|
|
36
|
+
# the account arrived through, the client business portfolio that owns it, the
|
|
37
|
+
# access token and that token's expiry are all resolved from the organization by
|
|
38
|
+
# IPartnerSolutionService.ResolveAccountCredentialsAsync — the first two off the
|
|
39
|
+
# org's shared-account listing, the token minted against the org's own solution.
|
|
40
|
+
# They were previously asked for and are no longer accepted: solution_id and
|
|
41
|
+
# owner_business_id are Meta's answer about provenance, so taking them from the
|
|
42
|
+
# caller let a request assert a partnership Meta disagreed with, and the listing
|
|
43
|
+
# has to be consulted regardless because it is what proves the account is one this
|
|
44
|
+
# organization may reach.
|
|
45
|
+
#
|
|
46
|
+
# No access token, and there never was one here: it is minted per client business
|
|
47
|
+
# portfolio and rotates roughly every sixty days, so a pasted value would be stale
|
|
48
|
+
# before it was useful. Asking a customer to mint a System User token in Meta
|
|
49
|
+
# Business Manager is skilled work in a console they were never meant to see, and
|
|
50
|
+
# it would say nothing about which solution the account came from or when it is
|
|
51
|
+
# revoked.
|
|
52
|
+
sig do
|
|
53
|
+
params(
|
|
54
|
+
phone_number_id: T.nilable(String),
|
|
55
|
+
waba_id: T.nilable(String)
|
|
56
|
+
).returns(T.attached_class)
|
|
57
|
+
end
|
|
58
|
+
def self.new(
|
|
59
|
+
# The Meta phone-number id this profile sends from. Must already be registered
|
|
60
|
+
# under WabaId.
|
|
61
|
+
#
|
|
62
|
+
# Optional. Omit it to attach the account now and settle the number later: the
|
|
63
|
+
# channel reads as ACTION_NEEDED with CHANNEL_007, and the profile's WhatsApp
|
|
64
|
+
# messages fail until a number is named. They do not fall back to the
|
|
65
|
+
# organization's account. Nothing picks one on your behalf.
|
|
66
|
+
phone_number_id: nil,
|
|
67
|
+
# WhatsApp Business Account id — one of the accounts shared into your
|
|
68
|
+
# organization. Required: the organization holds one per client, and nothing but
|
|
69
|
+
# the caller says which belongs to this profile.
|
|
70
|
+
waba_id: nil
|
|
71
|
+
)
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
sig do
|
|
75
|
+
override.returns(
|
|
76
|
+
{ phone_number_id: T.nilable(String), waba_id: T.nilable(String) }
|
|
77
|
+
)
|
|
78
|
+
end
|
|
79
|
+
def to_hash
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
end
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class SenderProfilesList < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(Sentdm::SenderProfilesList, Sentdm::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Pagination metadata for list responses
|
|
12
|
+
sig { returns(T.nilable(Sentdm::PaginationMeta)) }
|
|
13
|
+
attr_reader :pagination
|
|
14
|
+
|
|
15
|
+
sig { params(pagination: Sentdm::PaginationMeta::OrHash).void }
|
|
16
|
+
attr_writer :pagination
|
|
17
|
+
|
|
18
|
+
# The sender_profiles on this page.
|
|
19
|
+
sig { returns(T.nilable(T::Array[Sentdm::SenderProfile])) }
|
|
20
|
+
attr_reader :sender_profiles
|
|
21
|
+
|
|
22
|
+
sig do
|
|
23
|
+
params(sender_profiles: T::Array[Sentdm::SenderProfile::OrHash]).void
|
|
24
|
+
end
|
|
25
|
+
attr_writer :sender_profiles
|
|
26
|
+
|
|
27
|
+
# A paginated list of sender profiles.
|
|
28
|
+
sig do
|
|
29
|
+
params(
|
|
30
|
+
pagination: Sentdm::PaginationMeta::OrHash,
|
|
31
|
+
sender_profiles: T::Array[Sentdm::SenderProfile::OrHash]
|
|
32
|
+
).returns(T.attached_class)
|
|
33
|
+
end
|
|
34
|
+
def self.new(
|
|
35
|
+
# Pagination metadata for list responses
|
|
36
|
+
pagination: nil,
|
|
37
|
+
# The sender_profiles on this page.
|
|
38
|
+
sender_profiles: nil
|
|
39
|
+
)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
sig do
|
|
43
|
+
override.returns(
|
|
44
|
+
{
|
|
45
|
+
pagination: Sentdm::PaginationMeta,
|
|
46
|
+
sender_profiles: T::Array[Sentdm::SenderProfile]
|
|
47
|
+
}
|
|
48
|
+
)
|
|
49
|
+
end
|
|
50
|
+
def to_hash
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
module TcrBrandIdentityStatus
|
|
6
|
+
extend Sentdm::Internal::Type::Enum
|
|
7
|
+
|
|
8
|
+
TaggedSymbol =
|
|
9
|
+
T.type_alias { T.all(Symbol, Sentdm::TcrBrandIdentityStatus) }
|
|
10
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
11
|
+
|
|
12
|
+
SELF_DECLARED =
|
|
13
|
+
T.let(:SELF_DECLARED, Sentdm::TcrBrandIdentityStatus::TaggedSymbol)
|
|
14
|
+
UNVERIFIED =
|
|
15
|
+
T.let(:UNVERIFIED, Sentdm::TcrBrandIdentityStatus::TaggedSymbol)
|
|
16
|
+
VERIFIED = T.let(:VERIFIED, Sentdm::TcrBrandIdentityStatus::TaggedSymbol)
|
|
17
|
+
VETTED_VERIFIED =
|
|
18
|
+
T.let(:VETTED_VERIFIED, Sentdm::TcrBrandIdentityStatus::TaggedSymbol)
|
|
19
|
+
|
|
20
|
+
sig do
|
|
21
|
+
override.returns(T::Array[Sentdm::TcrBrandIdentityStatus::TaggedSymbol])
|
|
22
|
+
end
|
|
23
|
+
def self.values
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
module TcrBrandStatus
|
|
6
|
+
extend Sentdm::Internal::Type::Enum
|
|
7
|
+
|
|
8
|
+
TaggedSymbol = T.type_alias { T.all(Symbol, Sentdm::TcrBrandStatus) }
|
|
9
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
10
|
+
|
|
11
|
+
ACTIVE = T.let(:ACTIVE, Sentdm::TcrBrandStatus::TaggedSymbol)
|
|
12
|
+
INACTIVE = T.let(:INACTIVE, Sentdm::TcrBrandStatus::TaggedSymbol)
|
|
13
|
+
SUSPENDED = T.let(:SUSPENDED, Sentdm::TcrBrandStatus::TaggedSymbol)
|
|
14
|
+
|
|
15
|
+
sig { override.returns(T::Array[Sentdm::TcrBrandStatus::TaggedSymbol]) }
|
|
16
|
+
def self.values
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
module TcrCampaignStatus
|
|
6
|
+
extend Sentdm::Internal::Type::Enum
|
|
7
|
+
|
|
8
|
+
TaggedSymbol = T.type_alias { T.all(Symbol, Sentdm::TcrCampaignStatus) }
|
|
9
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
10
|
+
|
|
11
|
+
SENT_CREATED =
|
|
12
|
+
T.let(:SENT_CREATED, Sentdm::TcrCampaignStatus::TaggedSymbol)
|
|
13
|
+
ACTIVE = T.let(:ACTIVE, Sentdm::TcrCampaignStatus::TaggedSymbol)
|
|
14
|
+
EXPIRED = T.let(:EXPIRED, Sentdm::TcrCampaignStatus::TaggedSymbol)
|
|
15
|
+
|
|
16
|
+
sig do
|
|
17
|
+
override.returns(T::Array[Sentdm::TcrCampaignStatus::TaggedSymbol])
|
|
18
|
+
end
|
|
19
|
+
def self.values
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -13,10 +13,12 @@ module Sentdm
|
|
|
13
13
|
# this slot MMS renders the shared or SMS body, so it is only needed for
|
|
14
14
|
# MMS-specific copy, a subject or attachments. When present it replaces that body
|
|
15
15
|
# on MMS rather than adding to it.
|
|
16
|
-
sig { returns(T.nilable(Sentdm::
|
|
16
|
+
sig { returns(T.nilable(Sentdm::TemplateMmsBodyContent)) }
|
|
17
17
|
attr_reader :mms
|
|
18
18
|
|
|
19
|
-
sig
|
|
19
|
+
sig do
|
|
20
|
+
params(mms: T.nilable(Sentdm::TemplateMmsBodyContent::OrHash)).void
|
|
21
|
+
end
|
|
20
22
|
attr_writer :mms
|
|
21
23
|
|
|
22
24
|
# The shared body, used for every channel. One half of the choice described above.
|
|
@@ -67,7 +69,7 @@ module Sentdm
|
|
|
67
69
|
# the copy, but cannot stand alone.
|
|
68
70
|
sig do
|
|
69
71
|
params(
|
|
70
|
-
mms: T.nilable(Sentdm::
|
|
72
|
+
mms: T.nilable(Sentdm::TemplateMmsBodyContent::OrHash),
|
|
71
73
|
multi_channel: T.nilable(Sentdm::TemplateBodyContent::OrHash),
|
|
72
74
|
rcs: T.nilable(Sentdm::TemplateBodyContent::OrHash),
|
|
73
75
|
sms: T.nilable(Sentdm::TemplateBodyContent::OrHash),
|
|
@@ -99,7 +101,7 @@ module Sentdm
|
|
|
99
101
|
sig do
|
|
100
102
|
override.returns(
|
|
101
103
|
{
|
|
102
|
-
mms: T.nilable(Sentdm::
|
|
104
|
+
mms: T.nilable(Sentdm::TemplateMmsBodyContent),
|
|
103
105
|
multi_channel: T.nilable(Sentdm::TemplateBodyContent),
|
|
104
106
|
rcs: T.nilable(Sentdm::TemplateBodyContent),
|
|
105
107
|
sms: T.nilable(Sentdm::TemplateBodyContent),
|
|
@@ -109,116 +111,6 @@ module Sentdm
|
|
|
109
111
|
end
|
|
110
112
|
def to_hash
|
|
111
113
|
end
|
|
112
|
-
|
|
113
|
-
class Mms < Sentdm::Models::TemplateBodyContent
|
|
114
|
-
OrHash =
|
|
115
|
-
T.type_alias do
|
|
116
|
-
T.any(Sentdm::TemplateBody::Mms, Sentdm::Internal::AnyHash)
|
|
117
|
-
end
|
|
118
|
-
|
|
119
|
-
# Attachments carried by every send on this template, in order. A per-send
|
|
120
|
-
# media_urls on the request replaces this list rather than adding to it, so a
|
|
121
|
-
# template can hold a default creative and a caller can still send something
|
|
122
|
-
# recipient-specific.
|
|
123
|
-
sig { returns(T.nilable(T::Array[Sentdm::TemplateBody::Mms::Media])) }
|
|
124
|
-
attr_accessor :media
|
|
125
|
-
|
|
126
|
-
# MMS subject line. Optional — most handsets render it above the body, some ignore
|
|
127
|
-
# it entirely. Deliberately its own field rather than riding TemplateHeader: the
|
|
128
|
-
# header is authored once and shared across every channel, and carries Meta's
|
|
129
|
-
# 60-character cap plus its no-newline, no-emoji text rules, none of which
|
|
130
|
-
# describe an MMS subject.
|
|
131
|
-
sig { returns(T.nilable(String)) }
|
|
132
|
-
attr_accessor :subject
|
|
133
|
-
|
|
134
|
-
# MMS-specific content — subject, text and attachments.
|
|
135
|
-
#
|
|
136
|
-
# Like Rcs, an override that cannot stand on its own: a template still needs a
|
|
137
|
-
# MultiChannel body or the Sms + Whatsapp pair to be deliverable at all. Without
|
|
138
|
-
# this slot MMS renders the shared or SMS body, so it is only needed for
|
|
139
|
-
# MMS-specific copy, a subject or attachments. When present it replaces that body
|
|
140
|
-
# on MMS rather than adding to it.
|
|
141
|
-
sig do
|
|
142
|
-
params(
|
|
143
|
-
media:
|
|
144
|
-
T.nilable(T::Array[Sentdm::TemplateBody::Mms::Media::OrHash]),
|
|
145
|
-
subject: T.nilable(String)
|
|
146
|
-
).returns(T.attached_class)
|
|
147
|
-
end
|
|
148
|
-
def self.new(
|
|
149
|
-
# Attachments carried by every send on this template, in order. A per-send
|
|
150
|
-
# media_urls on the request replaces this list rather than adding to it, so a
|
|
151
|
-
# template can hold a default creative and a caller can still send something
|
|
152
|
-
# recipient-specific.
|
|
153
|
-
media: nil,
|
|
154
|
-
# MMS subject line. Optional — most handsets render it above the body, some ignore
|
|
155
|
-
# it entirely. Deliberately its own field rather than riding TemplateHeader: the
|
|
156
|
-
# header is authored once and shared across every channel, and carries Meta's
|
|
157
|
-
# 60-character cap plus its no-newline, no-emoji text rules, none of which
|
|
158
|
-
# describe an MMS subject.
|
|
159
|
-
subject: nil
|
|
160
|
-
)
|
|
161
|
-
end
|
|
162
|
-
|
|
163
|
-
sig do
|
|
164
|
-
override.returns(
|
|
165
|
-
{
|
|
166
|
-
media: T.nilable(T::Array[Sentdm::TemplateBody::Mms::Media]),
|
|
167
|
-
subject: T.nilable(String)
|
|
168
|
-
}
|
|
169
|
-
)
|
|
170
|
-
end
|
|
171
|
-
def to_hash
|
|
172
|
-
end
|
|
173
|
-
|
|
174
|
-
class Media < Sentdm::Internal::Type::BaseModel
|
|
175
|
-
OrHash =
|
|
176
|
-
T.type_alias do
|
|
177
|
-
T.any(Sentdm::TemplateBody::Mms::Media, Sentdm::Internal::AnyHash)
|
|
178
|
-
end
|
|
179
|
-
|
|
180
|
-
# One of MmsMediaTypes. Advisory: the carrier reads the Content-Type off the
|
|
181
|
-
# fetched object, not this field. It exists so an authoring UI can render the
|
|
182
|
-
# right preview and so a reviewer can see what was intended.
|
|
183
|
-
sig { returns(T.nilable(String)) }
|
|
184
|
-
attr_accessor :media_type
|
|
185
|
-
|
|
186
|
-
# Publicly fetchable https URL. The carrier's MMSC fetches this at send time, so
|
|
187
|
-
# it has to stay reachable and unauthenticated for the life of the send —
|
|
188
|
-
# including retries and a DLQ replay — which is why a presigned URL is not a valid
|
|
189
|
-
# value here.
|
|
190
|
-
sig { returns(T.nilable(String)) }
|
|
191
|
-
attr_reader :url
|
|
192
|
-
|
|
193
|
-
sig { params(url: String).void }
|
|
194
|
-
attr_writer :url
|
|
195
|
-
|
|
196
|
-
# One attachment on an MMS template body.
|
|
197
|
-
sig do
|
|
198
|
-
params(media_type: T.nilable(String), url: String).returns(
|
|
199
|
-
T.attached_class
|
|
200
|
-
)
|
|
201
|
-
end
|
|
202
|
-
def self.new(
|
|
203
|
-
# One of MmsMediaTypes. Advisory: the carrier reads the Content-Type off the
|
|
204
|
-
# fetched object, not this field. It exists so an authoring UI can render the
|
|
205
|
-
# right preview and so a reviewer can see what was intended.
|
|
206
|
-
media_type: nil,
|
|
207
|
-
# Publicly fetchable https URL. The carrier's MMSC fetches this at send time, so
|
|
208
|
-
# it has to stay reachable and unauthenticated for the life of the send —
|
|
209
|
-
# including retries and a DLQ replay — which is why a presigned URL is not a valid
|
|
210
|
-
# value here.
|
|
211
|
-
url: nil
|
|
212
|
-
)
|
|
213
|
-
end
|
|
214
|
-
|
|
215
|
-
sig do
|
|
216
|
-
override.returns({ media_type: T.nilable(String), url: String })
|
|
217
|
-
end
|
|
218
|
-
def to_hash
|
|
219
|
-
end
|
|
220
|
-
end
|
|
221
|
-
end
|
|
222
114
|
end
|
|
223
115
|
end
|
|
224
116
|
end
|
|
@@ -31,13 +31,11 @@ module Sentdm
|
|
|
31
31
|
# component is just {"type":"header","format":"location"} — so these values exist
|
|
32
32
|
# for Sent: a preview, and the default a StaticResource header falls back to at
|
|
33
33
|
# send.
|
|
34
|
-
sig { returns(T.nilable(Sentdm::
|
|
34
|
+
sig { returns(T.nilable(Sentdm::TemplateHeaderLocation)) }
|
|
35
35
|
attr_reader :location
|
|
36
36
|
|
|
37
37
|
sig do
|
|
38
|
-
params(
|
|
39
|
-
location: T.nilable(Sentdm::TemplateHeader::Location::OrHash)
|
|
40
|
-
).void
|
|
38
|
+
params(location: T.nilable(Sentdm::TemplateHeaderLocation::OrHash)).void
|
|
41
39
|
end
|
|
42
40
|
attr_writer :location
|
|
43
41
|
|
|
@@ -78,7 +76,7 @@ module Sentdm
|
|
|
78
76
|
params(
|
|
79
77
|
template: String,
|
|
80
78
|
example_url: T.nilable(String),
|
|
81
|
-
location: T.nilable(Sentdm::
|
|
79
|
+
location: T.nilable(Sentdm::TemplateHeaderLocation::OrHash),
|
|
82
80
|
static_resource: T::Boolean,
|
|
83
81
|
type: T.nilable(String),
|
|
84
82
|
variables: T.nilable(T::Array[Sentdm::TemplateVariable::OrHash])
|
|
@@ -136,7 +134,7 @@ module Sentdm
|
|
|
136
134
|
{
|
|
137
135
|
template: String,
|
|
138
136
|
example_url: T.nilable(String),
|
|
139
|
-
location: T.nilable(Sentdm::
|
|
137
|
+
location: T.nilable(Sentdm::TemplateHeaderLocation),
|
|
140
138
|
static_resource: T::Boolean,
|
|
141
139
|
type: T.nilable(String),
|
|
142
140
|
variables: T.nilable(T::Array[Sentdm::TemplateVariable])
|
|
@@ -145,53 +143,6 @@ module Sentdm
|
|
|
145
143
|
end
|
|
146
144
|
def to_hash
|
|
147
145
|
end
|
|
148
|
-
|
|
149
|
-
class Location < Sentdm::Internal::Type::BaseModel
|
|
150
|
-
OrHash =
|
|
151
|
-
T.type_alias do
|
|
152
|
-
T.any(Sentdm::TemplateHeader::Location, Sentdm::Internal::AnyHash)
|
|
153
|
-
end
|
|
154
|
-
|
|
155
|
-
sig { returns(String) }
|
|
156
|
-
attr_accessor :address
|
|
157
|
-
|
|
158
|
-
sig { returns(String) }
|
|
159
|
-
attr_accessor :latitude
|
|
160
|
-
|
|
161
|
-
sig { returns(String) }
|
|
162
|
-
attr_accessor :longitude
|
|
163
|
-
|
|
164
|
-
sig { returns(String) }
|
|
165
|
-
attr_accessor :name
|
|
166
|
-
|
|
167
|
-
# The map pin a location header drops. Meta wants none of this at creation — the
|
|
168
|
-
# component is just {"type":"header","format":"location"} — so these values exist
|
|
169
|
-
# for Sent: a preview, and the default a StaticResource header falls back to at
|
|
170
|
-
# send.
|
|
171
|
-
sig do
|
|
172
|
-
params(
|
|
173
|
-
address: String,
|
|
174
|
-
latitude: String,
|
|
175
|
-
longitude: String,
|
|
176
|
-
name: String
|
|
177
|
-
).returns(T.attached_class)
|
|
178
|
-
end
|
|
179
|
-
def self.new(address:, latitude:, longitude:, name:)
|
|
180
|
-
end
|
|
181
|
-
|
|
182
|
-
sig do
|
|
183
|
-
override.returns(
|
|
184
|
-
{
|
|
185
|
-
address: String,
|
|
186
|
-
latitude: String,
|
|
187
|
-
longitude: String,
|
|
188
|
-
name: String
|
|
189
|
-
}
|
|
190
|
-
)
|
|
191
|
-
end
|
|
192
|
-
def to_hash
|
|
193
|
-
end
|
|
194
|
-
end
|
|
195
146
|
end
|
|
196
147
|
end
|
|
197
148
|
end
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class TemplateHeaderLocation < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(Sentdm::TemplateHeaderLocation, Sentdm::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
sig { returns(String) }
|
|
12
|
+
attr_accessor :address
|
|
13
|
+
|
|
14
|
+
sig { returns(String) }
|
|
15
|
+
attr_accessor :latitude
|
|
16
|
+
|
|
17
|
+
sig { returns(String) }
|
|
18
|
+
attr_accessor :longitude
|
|
19
|
+
|
|
20
|
+
sig { returns(String) }
|
|
21
|
+
attr_accessor :name
|
|
22
|
+
|
|
23
|
+
# The map pin a location header drops. Meta wants none of this at creation — the
|
|
24
|
+
# component is just {"type":"header","format":"location"} — so these values exist
|
|
25
|
+
# for Sent: a preview, and the default a StaticResource header falls back to at
|
|
26
|
+
# send.
|
|
27
|
+
sig do
|
|
28
|
+
params(
|
|
29
|
+
address: String,
|
|
30
|
+
latitude: String,
|
|
31
|
+
longitude: String,
|
|
32
|
+
name: String
|
|
33
|
+
).returns(T.attached_class)
|
|
34
|
+
end
|
|
35
|
+
def self.new(address:, latitude:, longitude:, name:)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
sig do
|
|
39
|
+
override.returns(
|
|
40
|
+
{ address: String, latitude: String, longitude: String, name: String }
|
|
41
|
+
)
|
|
42
|
+
end
|
|
43
|
+
def to_hash
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class TemplateMediaItem < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(Sentdm::TemplateMediaItem, Sentdm::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# One of MmsMediaTypes. Advisory: the carrier reads the Content-Type off the
|
|
12
|
+
# fetched object, not this field. It exists so an authoring UI can render the
|
|
13
|
+
# right preview and so a reviewer can see what was intended.
|
|
14
|
+
sig { returns(T.nilable(String)) }
|
|
15
|
+
attr_accessor :media_type
|
|
16
|
+
|
|
17
|
+
# Publicly fetchable https URL. The carrier's MMSC fetches this at send time, so
|
|
18
|
+
# it has to stay reachable and unauthenticated for the life of the send —
|
|
19
|
+
# including retries and a DLQ replay — which is why a presigned URL is not a valid
|
|
20
|
+
# value here.
|
|
21
|
+
sig { returns(T.nilable(String)) }
|
|
22
|
+
attr_reader :url
|
|
23
|
+
|
|
24
|
+
sig { params(url: String).void }
|
|
25
|
+
attr_writer :url
|
|
26
|
+
|
|
27
|
+
# One attachment on an MMS template body.
|
|
28
|
+
sig do
|
|
29
|
+
params(media_type: T.nilable(String), url: String).returns(
|
|
30
|
+
T.attached_class
|
|
31
|
+
)
|
|
32
|
+
end
|
|
33
|
+
def self.new(
|
|
34
|
+
# One of MmsMediaTypes. Advisory: the carrier reads the Content-Type off the
|
|
35
|
+
# fetched object, not this field. It exists so an authoring UI can render the
|
|
36
|
+
# right preview and so a reviewer can see what was intended.
|
|
37
|
+
media_type: nil,
|
|
38
|
+
# Publicly fetchable https URL. The carrier's MMSC fetches this at send time, so
|
|
39
|
+
# it has to stay reachable and unauthenticated for the life of the send —
|
|
40
|
+
# including retries and a DLQ replay — which is why a presigned URL is not a valid
|
|
41
|
+
# value here.
|
|
42
|
+
url: nil
|
|
43
|
+
)
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
sig { override.returns({ media_type: T.nilable(String), url: String }) }
|
|
47
|
+
def to_hash
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|