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,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class MessageChannelOptions < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute country
|
|
7
|
+
# Recipient country this entry is meant for (ISO 3166-1 alpha-2, e.g. US).
|
|
8
|
+
# Optional. Accepted and stored, not acted on yet.
|
|
9
|
+
#
|
|
10
|
+
# @return [String, nil]
|
|
11
|
+
optional :country, String, nil?: true
|
|
12
|
+
|
|
13
|
+
# @!attribute from
|
|
14
|
+
# Sender numbers in E.164. Each must be an active sender on your account for this
|
|
15
|
+
# channel. That is account state rather than request shape, so it is decided per
|
|
16
|
+
# message: the request is accepted with 202 and a message naming an unusable
|
|
17
|
+
# number is recorded BLOCKED with error code BUSINESS_029.
|
|
18
|
+
#
|
|
19
|
+
# @return [Array<String>, nil]
|
|
20
|
+
optional :from, Sentdm::Internal::Type::ArrayOf[String], nil?: true
|
|
21
|
+
|
|
22
|
+
# @!attribute strategy
|
|
23
|
+
# How to pick a number from From, e.g. sticky or geo. Optional. Accepted and
|
|
24
|
+
# stored, not acted on yet.
|
|
25
|
+
#
|
|
26
|
+
# @return [String, nil]
|
|
27
|
+
optional :strategy, String, nil?: true
|
|
28
|
+
|
|
29
|
+
# @!method initialize(country: nil, from: nil, strategy: nil)
|
|
30
|
+
# Some parameter documentations has been truncated, see
|
|
31
|
+
# {Sentdm::Models::MessageChannelOptions} for more details.
|
|
32
|
+
#
|
|
33
|
+
# One entry of a channel's list in Channels, e.g. {"country": "US", "from":
|
|
34
|
+
# ["+15559990002", "+15559990003"], "strategy": "sticky"}.
|
|
35
|
+
#
|
|
36
|
+
# @param country [String, nil] Recipient country this entry is meant for (ISO 3166-1 alpha-2, e.g. US). Optiona
|
|
37
|
+
#
|
|
38
|
+
# @param from [Array<String>, nil] Sender numbers in E.164. Each must be an active sender on your account for this
|
|
39
|
+
#
|
|
40
|
+
# @param strategy [String, nil] How to pick a number from From, e.g. sticky or geo. Optional. Accepted
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class MessageHeaderMedia < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute type
|
|
7
|
+
# "image", "video" or "document" — taken from the header's media variable.
|
|
8
|
+
#
|
|
9
|
+
# @return [String, nil]
|
|
10
|
+
optional :type, String
|
|
11
|
+
|
|
12
|
+
# @!attribute url
|
|
13
|
+
# The https URL the caller supplied for this send. Never the template's stored
|
|
14
|
+
# props.sample, which is Meta's expiring header_handle rather than what was
|
|
15
|
+
# delivered.
|
|
16
|
+
#
|
|
17
|
+
# @return [String, nil]
|
|
18
|
+
optional :url, String
|
|
19
|
+
|
|
20
|
+
# @!method initialize(type: nil, url: nil)
|
|
21
|
+
# Some parameter documentations has been truncated, see
|
|
22
|
+
# {Sentdm::Models::MessageHeaderMedia} for more details.
|
|
23
|
+
#
|
|
24
|
+
# The media asset that rode a message's header, recorded as sent.
|
|
25
|
+
#
|
|
26
|
+
# @param type [String] "image", "video" or "document" — taken from the header's media variable.
|
|
27
|
+
#
|
|
28
|
+
# @param url [String] The https URL the caller supplied for this send. Never the template's stored
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class MessageMedia < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute media_type
|
|
7
|
+
# One of MmsMediaTypes when the content type is known. Advisory — a reader should
|
|
8
|
+
# trust the fetched object's own Content-Type.
|
|
9
|
+
#
|
|
10
|
+
# @return [String, nil]
|
|
11
|
+
optional :media_type, String, api_name: :mediaType, nil?: true
|
|
12
|
+
|
|
13
|
+
# @!attribute mime_type
|
|
14
|
+
# Content type as the provider declared it. Null when it declared none.
|
|
15
|
+
#
|
|
16
|
+
# @return [String, nil]
|
|
17
|
+
optional :mime_type, String, api_name: :mimeType, nil?: true
|
|
18
|
+
|
|
19
|
+
# @!attribute size_bytes
|
|
20
|
+
# Size as the provider declared it. Never measured here — nothing downloads the
|
|
21
|
+
# file.
|
|
22
|
+
#
|
|
23
|
+
# @return [Integer, nil]
|
|
24
|
+
optional :size_bytes, Integer, api_name: :sizeBytes, nil?: true
|
|
25
|
+
|
|
26
|
+
# @!attribute source_hash_sha256
|
|
27
|
+
# Inbound only: the SHA-256 the provider declared alongside the attachment, when
|
|
28
|
+
# it declared one. Relayed to the customer so they can verify what they fetch
|
|
29
|
+
# matches what the carrier said it sent. It is the only integrity signal available
|
|
30
|
+
# on an attachment nobody here has read.
|
|
31
|
+
#
|
|
32
|
+
# @return [String, nil]
|
|
33
|
+
optional :source_hash_sha256, String, api_name: :sourceHashSha256, nil?: true
|
|
34
|
+
|
|
35
|
+
# @!attribute url
|
|
36
|
+
# Where the file lives. Outbound: the URL the customer gave us and the carrier
|
|
37
|
+
# fetched. Inbound: the URL the carrier hosts it at, relayed unchanged.
|
|
38
|
+
#
|
|
39
|
+
# @return [String, nil]
|
|
40
|
+
optional :url, String, nil?: true
|
|
41
|
+
|
|
42
|
+
# @!method initialize(media_type: nil, mime_type: nil, size_bytes: nil, source_hash_sha256: nil, url: nil)
|
|
43
|
+
# Some parameter documentations has been truncated, see
|
|
44
|
+
# {Sentdm::Models::MessageMedia} for more details.
|
|
45
|
+
#
|
|
46
|
+
# One attachment on a message, in either direction — and in both, a URL somebody
|
|
47
|
+
# else hosts.
|
|
48
|
+
#
|
|
49
|
+
# Outbound: the customer supplied a public URL and we handed it to the carrier.
|
|
50
|
+
# Inbound: the carrier hosts the file and we record where. sent.dm never holds the
|
|
51
|
+
# bytes, so there is no key, no expiry bookkeeping and nothing minted per read —
|
|
52
|
+
# what is stored is what is served.
|
|
53
|
+
#
|
|
54
|
+
# An inbound link expires on the carrier's own schedule and is unauthenticated.
|
|
55
|
+
# That is the customer's to manage, and it is documented where they will see it
|
|
56
|
+
# rather than only here — a recipient who needs an attachment to outlive that
|
|
57
|
+
# window copies it on receipt.
|
|
58
|
+
#
|
|
59
|
+
# Storing a presigned URL is the specific mistake this shape still avoids:
|
|
60
|
+
# M260826130000 and M260826140000 exist because RCS assets were stored as signed
|
|
61
|
+
# URLs and went stale. Nothing here is signed.
|
|
62
|
+
#
|
|
63
|
+
# @param media_type [String, nil] One of MmsMediaTypes when the content type is known. Advisory — a reader should
|
|
64
|
+
#
|
|
65
|
+
# @param mime_type [String, nil] Content type as the provider declared it. Null when it declared none.
|
|
66
|
+
#
|
|
67
|
+
# @param size_bytes [Integer, nil] Size as the provider declared it. Never measured here — nothing downloads the fi
|
|
68
|
+
#
|
|
69
|
+
# @param source_hash_sha256 [String, nil] Inbound only: the SHA-256 the provider declared alongside the attachment, when i
|
|
70
|
+
#
|
|
71
|
+
# @param url [String, nil] Where the file lives. Outbound: the URL the customer gave us and the carrier fet
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class MessageRecipient < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute body
|
|
7
|
+
# Resolved template body for this recipient's channel, or null when the channel is
|
|
8
|
+
# auto-detected.
|
|
9
|
+
#
|
|
10
|
+
# @return [String, nil]
|
|
11
|
+
optional :body, String, nil?: true
|
|
12
|
+
|
|
13
|
+
# @!attribute channel
|
|
14
|
+
# Channel this message will be sent on — sms, whatsapp — or null to auto-detect.
|
|
15
|
+
#
|
|
16
|
+
# @return [String, nil]
|
|
17
|
+
optional :channel, String, nil?: true
|
|
18
|
+
|
|
19
|
+
# @!attribute message_id
|
|
20
|
+
# Identifier for tracking this recipient's message.
|
|
21
|
+
#
|
|
22
|
+
# @return [String, nil]
|
|
23
|
+
optional :message_id, String
|
|
24
|
+
|
|
25
|
+
# @!attribute to
|
|
26
|
+
# Phone number in E.164 format.
|
|
27
|
+
#
|
|
28
|
+
# @return [String, nil]
|
|
29
|
+
optional :to, String
|
|
30
|
+
|
|
31
|
+
# @!method initialize(body: nil, channel: nil, message_id: nil, to: nil)
|
|
32
|
+
# Some parameter documentations has been truncated, see
|
|
33
|
+
# {Sentdm::Models::MessageRecipient} for more details.
|
|
34
|
+
#
|
|
35
|
+
# What one recipient of a send got, as the API reports it.
|
|
36
|
+
#
|
|
37
|
+
# @param body [String, nil] Resolved template body for this recipient's channel, or null when the channel is
|
|
38
|
+
#
|
|
39
|
+
# @param channel [String, nil] Channel this message will be sent on — sms, whatsapp — or null to auto-detect.
|
|
40
|
+
#
|
|
41
|
+
# @param message_id [String] Identifier for tracking this recipient's message.
|
|
42
|
+
#
|
|
43
|
+
# @param to [String] Phone number in E.164 format.
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
@@ -40,10 +40,10 @@ module Sentdm
|
|
|
40
40
|
# decided per message, so each affected message is recorded BLOCKED with error
|
|
41
41
|
# code BUSINESS_029 and reported on GET /v3/messages and the status webhook.
|
|
42
42
|
#
|
|
43
|
-
# @return [Hash{Symbol=>Array<Sentdm::Models::
|
|
43
|
+
# @return [Hash{Symbol=>Array<Sentdm::Models::MessageChannelOptions>}, nil]
|
|
44
44
|
optional :channels,
|
|
45
45
|
-> {
|
|
46
|
-
Sentdm::Internal::Type::HashOf[Sentdm::Internal::Type::ArrayOf[Sentdm::
|
|
46
|
+
Sentdm::Internal::Type::HashOf[Sentdm::Internal::Type::ArrayOf[Sentdm::MessageChannelOptions]]
|
|
47
47
|
},
|
|
48
48
|
nil?: true
|
|
49
49
|
|
|
@@ -102,8 +102,8 @@ module Sentdm
|
|
|
102
102
|
# SDK-style template reference: resolve by ID or by name, with optional
|
|
103
103
|
# parameters.
|
|
104
104
|
#
|
|
105
|
-
# @return [Sentdm::Models::
|
|
106
|
-
optional :template, -> { Sentdm::
|
|
105
|
+
# @return [Sentdm::Models::TemplateRef, nil]
|
|
106
|
+
optional :template, -> { Sentdm::TemplateRef }, nil?: true
|
|
107
107
|
|
|
108
108
|
# @!attribute text
|
|
109
109
|
# Plain-text (free-form) message body. Provide either Template or this.
|
|
@@ -133,7 +133,7 @@ module Sentdm
|
|
|
133
133
|
#
|
|
134
134
|
# @param channel [Array<String>, nil] Channels to broadcast on, e.g. ["whatsapp", "sms"].
|
|
135
135
|
#
|
|
136
|
-
# @param channels [Hash{Symbol=>Array<Sentdm::Models::
|
|
136
|
+
# @param channels [Hash{Symbol=>Array<Sentdm::Models::MessageChannelOptions>}, nil] Which of your own numbers to send from, keyed by channel, each channel holding a
|
|
137
137
|
#
|
|
138
138
|
# @param media_urls [Array<String>, nil] Attachments for this send, as publicly fetchable https URLs. Used by the MMS cha
|
|
139
139
|
#
|
|
@@ -143,7 +143,7 @@ module Sentdm
|
|
|
143
143
|
#
|
|
144
144
|
# @param subject [String, nil] Subject line for this send, overriding the template's. MMS only; ignored on ever
|
|
145
145
|
#
|
|
146
|
-
# @param template [Sentdm::Models::
|
|
146
|
+
# @param template [Sentdm::Models::TemplateRef, nil] SDK-style template reference: resolve by ID or by name, with optional parameters
|
|
147
147
|
#
|
|
148
148
|
# @param text [String, nil] Plain-text (free-form) message body. Provide either Template or this.
|
|
149
149
|
#
|
|
@@ -154,90 +154,6 @@ module Sentdm
|
|
|
154
154
|
# @param x_profile_id [String]
|
|
155
155
|
#
|
|
156
156
|
# @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
|
|
157
|
-
|
|
158
|
-
class Channel < Sentdm::Internal::Type::BaseModel
|
|
159
|
-
# @!attribute country
|
|
160
|
-
# Recipient country this entry is meant for (ISO 3166-1 alpha-2, e.g. US).
|
|
161
|
-
# Optional. Accepted and stored, not acted on yet.
|
|
162
|
-
#
|
|
163
|
-
# @return [String, nil]
|
|
164
|
-
optional :country, String, nil?: true
|
|
165
|
-
|
|
166
|
-
# @!attribute from
|
|
167
|
-
# Sender numbers in E.164. Each must be an active sender on your account for this
|
|
168
|
-
# channel. That is account state rather than request shape, so it is decided per
|
|
169
|
-
# message: the request is accepted with 202 and a message naming an unusable
|
|
170
|
-
# number is recorded BLOCKED with error code BUSINESS_029.
|
|
171
|
-
#
|
|
172
|
-
# @return [Array<String>, nil]
|
|
173
|
-
optional :from, Sentdm::Internal::Type::ArrayOf[String], nil?: true
|
|
174
|
-
|
|
175
|
-
# @!attribute strategy
|
|
176
|
-
# How to pick a number from From, e.g. sticky or geo. Optional. Accepted and
|
|
177
|
-
# stored, not acted on yet.
|
|
178
|
-
#
|
|
179
|
-
# @return [String, nil]
|
|
180
|
-
optional :strategy, String, nil?: true
|
|
181
|
-
|
|
182
|
-
# @!method initialize(country: nil, from: nil, strategy: nil)
|
|
183
|
-
# Some parameter documentations has been truncated, see
|
|
184
|
-
# {Sentdm::Models::MessageSendParams::Channel} for more details.
|
|
185
|
-
#
|
|
186
|
-
# One entry of a channel's list in Channels, e.g. {"country": "US", "from":
|
|
187
|
-
# ["+15559990002", "+15559990003"], "strategy": "sticky"}.
|
|
188
|
-
#
|
|
189
|
-
# @param country [String, nil] Recipient country this entry is meant for (ISO 3166-1 alpha-2, e.g. US). Optiona
|
|
190
|
-
#
|
|
191
|
-
# @param from [Array<String>, nil] Sender numbers in E.164. Each must be an active sender on your account for this
|
|
192
|
-
#
|
|
193
|
-
# @param strategy [String, nil] How to pick a number from From, e.g. sticky or geo. Optional. Accepted
|
|
194
|
-
end
|
|
195
|
-
|
|
196
|
-
class Template < Sentdm::Internal::Type::BaseModel
|
|
197
|
-
# @!attribute id
|
|
198
|
-
# Template ID (mutually exclusive with name)
|
|
199
|
-
#
|
|
200
|
-
# @return [String, nil]
|
|
201
|
-
optional :id, String, nil?: true
|
|
202
|
-
|
|
203
|
-
# @!attribute name
|
|
204
|
-
# Template name (mutually exclusive with id)
|
|
205
|
-
#
|
|
206
|
-
# @return [String, nil]
|
|
207
|
-
optional :name, String, nil?: true
|
|
208
|
-
|
|
209
|
-
# @!attribute parameters
|
|
210
|
-
# Template variable parameters for personalization, keyed by variable name.
|
|
211
|
-
#
|
|
212
|
-
# Every variable the template declares is required; GET /v3/templates/{id} lists
|
|
213
|
-
# them. Supplying a key the template does not declare is ignored.
|
|
214
|
-
#
|
|
215
|
-
# Media headers. A template whose header is an image (designed in WhatsApp Manager
|
|
216
|
-
# and imported into Sent) declares a reserved header_image key. Its value is a
|
|
217
|
-
# publicly reachable https URL that Meta fetches at send time — Sent does not host
|
|
218
|
-
# the asset, and the sample approved with the template is not reused. The key is
|
|
219
|
-
# derived from the header's media type, so header_video and header_document follow
|
|
220
|
-
# the same shape when those formats ship.
|
|
221
|
-
#
|
|
222
|
-
# "parameters": { "header_image": "https://cdn.example.com/banner.jpg", "name":
|
|
223
|
-
# "John Doe" }
|
|
224
|
-
#
|
|
225
|
-
# @return [Hash{Symbol=>String}, nil]
|
|
226
|
-
optional :parameters, Sentdm::Internal::Type::HashOf[String], nil?: true
|
|
227
|
-
|
|
228
|
-
# @!method initialize(id: nil, name: nil, parameters: nil)
|
|
229
|
-
# Some parameter documentations has been truncated, see
|
|
230
|
-
# {Sentdm::Models::MessageSendParams::Template} for more details.
|
|
231
|
-
#
|
|
232
|
-
# SDK-style template reference: resolve by ID or by name, with optional
|
|
233
|
-
# parameters.
|
|
234
|
-
#
|
|
235
|
-
# @param id [String, nil] Template ID (mutually exclusive with name)
|
|
236
|
-
#
|
|
237
|
-
# @param name [String, nil] Template name (mutually exclusive with id)
|
|
238
|
-
#
|
|
239
|
-
# @param parameters [Hash{Symbol=>String}, nil] Template variable parameters for personalization, keyed by variable name.
|
|
240
|
-
end
|
|
241
157
|
end
|
|
242
158
|
end
|
|
243
159
|
end
|
|
@@ -18,8 +18,8 @@ module Sentdm
|
|
|
18
18
|
# carried scheduled_at is a ScheduledSendMessageResponse, and the endpoint decides
|
|
19
19
|
# which of the two to answer with. From always returns this type.
|
|
20
20
|
#
|
|
21
|
-
# @return [Sentdm::Models::
|
|
22
|
-
optional :data, -> { Sentdm::
|
|
21
|
+
# @return [Sentdm::Models::MessageSendResult, nil]
|
|
22
|
+
optional :data, -> { Sentdm::MessageSendResult }, nil?: true
|
|
23
23
|
|
|
24
24
|
# @!attribute error
|
|
25
25
|
# Error information
|
|
@@ -45,105 +45,13 @@ module Sentdm
|
|
|
45
45
|
#
|
|
46
46
|
# Standard API response envelope for all v3 endpoints
|
|
47
47
|
#
|
|
48
|
-
# @param data [Sentdm::Models::
|
|
48
|
+
# @param data [Sentdm::Models::MessageSendResult, nil] The result of a multi-recipient send.
|
|
49
49
|
#
|
|
50
50
|
# @param error [Sentdm::Models::ErrorDetail, nil] Error information
|
|
51
51
|
#
|
|
52
52
|
# @param meta [Sentdm::Models::APIMeta] Request and response metadata
|
|
53
53
|
#
|
|
54
54
|
# @param success [Boolean] Indicates whether the request was successful
|
|
55
|
-
|
|
56
|
-
# @see Sentdm::Models::MessageSendResponse#data
|
|
57
|
-
class Data < Sentdm::Internal::Type::BaseModel
|
|
58
|
-
# @!attribute recipients
|
|
59
|
-
#
|
|
60
|
-
# @return [Array<Sentdm::Models::MessageSendResponse::Data::Recipient>, nil]
|
|
61
|
-
optional :recipients, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::MessageSendResponse::Data::Recipient] }
|
|
62
|
-
|
|
63
|
-
# @!attribute status
|
|
64
|
-
# QUEUED: the batch is accepted. A request that carried scheduled_at is QUEUED
|
|
65
|
-
# here too; each message moves to SCHEDULED once it is held, as GET
|
|
66
|
-
# /v3/messages/{id} and the message.scheduled webhook report.
|
|
67
|
-
#
|
|
68
|
-
# @return [String, nil]
|
|
69
|
-
optional :status, String
|
|
70
|
-
|
|
71
|
-
# @!attribute template_id
|
|
72
|
-
#
|
|
73
|
-
# @return [String, nil]
|
|
74
|
-
optional :template_id, String
|
|
75
|
-
|
|
76
|
-
# @!attribute template_name
|
|
77
|
-
#
|
|
78
|
-
# @return [String, nil]
|
|
79
|
-
optional :template_name, String
|
|
80
|
-
|
|
81
|
-
# @!method initialize(recipients: nil, status: nil, template_id: nil, template_name: nil)
|
|
82
|
-
# Some parameter documentations has been truncated, see
|
|
83
|
-
# {Sentdm::Models::MessageSendResponse::Data} for more details.
|
|
84
|
-
#
|
|
85
|
-
# The result of a multi-recipient send.
|
|
86
|
-
#
|
|
87
|
-
# Declared here rather than in the service layer. POST /v3/messages used to
|
|
88
|
-
# publish MessageSendResult — a type in Common.Services.Messaging.Contracts — so
|
|
89
|
-
# the public contract was whatever the send service happened to return, and
|
|
90
|
-
# changing that service for an internal reason changed the API. The service keeps
|
|
91
|
-
# its result; this is what a caller sees, and the mapping between them is a
|
|
92
|
-
# decision the endpoint makes.
|
|
93
|
-
#
|
|
94
|
-
# The shape of an immediate send: it never has a scheduled_at key. A send that
|
|
95
|
-
# carried scheduled_at is a ScheduledSendMessageResponse, and the endpoint decides
|
|
96
|
-
# which of the two to answer with. From always returns this type.
|
|
97
|
-
#
|
|
98
|
-
# @param recipients [Array<Sentdm::Models::MessageSendResponse::Data::Recipient>]
|
|
99
|
-
#
|
|
100
|
-
# @param status [String] QUEUED: the batch is accepted. A request that carried scheduled_at is QUEUED
|
|
101
|
-
#
|
|
102
|
-
# @param template_id [String]
|
|
103
|
-
#
|
|
104
|
-
# @param template_name [String]
|
|
105
|
-
|
|
106
|
-
class Recipient < Sentdm::Internal::Type::BaseModel
|
|
107
|
-
# @!attribute body
|
|
108
|
-
# Resolved template body for this recipient's channel, or null when the channel is
|
|
109
|
-
# auto-detected.
|
|
110
|
-
#
|
|
111
|
-
# @return [String, nil]
|
|
112
|
-
optional :body, String, nil?: true
|
|
113
|
-
|
|
114
|
-
# @!attribute channel
|
|
115
|
-
# Channel this message will be sent on — sms, whatsapp — or null to auto-detect.
|
|
116
|
-
#
|
|
117
|
-
# @return [String, nil]
|
|
118
|
-
optional :channel, String, nil?: true
|
|
119
|
-
|
|
120
|
-
# @!attribute message_id
|
|
121
|
-
# Identifier for tracking this recipient's message.
|
|
122
|
-
#
|
|
123
|
-
# @return [String, nil]
|
|
124
|
-
optional :message_id, String
|
|
125
|
-
|
|
126
|
-
# @!attribute to
|
|
127
|
-
# Phone number in E.164 format.
|
|
128
|
-
#
|
|
129
|
-
# @return [String, nil]
|
|
130
|
-
optional :to, String
|
|
131
|
-
|
|
132
|
-
# @!method initialize(body: nil, channel: nil, message_id: nil, to: nil)
|
|
133
|
-
# Some parameter documentations has been truncated, see
|
|
134
|
-
# {Sentdm::Models::MessageSendResponse::Data::Recipient} for more details.
|
|
135
|
-
#
|
|
136
|
-
# What one recipient of a send got, as the API reports it.
|
|
137
|
-
#
|
|
138
|
-
# @param body [String, nil] Resolved template body for this recipient's channel, or null when the channel is
|
|
139
|
-
#
|
|
140
|
-
# @param channel [String, nil] Channel this message will be sent on — sms, whatsapp — or null to auto-detect.
|
|
141
|
-
#
|
|
142
|
-
# @param message_id [String] Identifier for tracking this recipient's message.
|
|
143
|
-
#
|
|
144
|
-
# @param to [String] Phone number in E.164 format.
|
|
145
|
-
end
|
|
146
|
-
end
|
|
147
55
|
end
|
|
148
56
|
end
|
|
149
57
|
end
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class MessageSendResult < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute recipients
|
|
7
|
+
#
|
|
8
|
+
# @return [Array<Sentdm::Models::MessageRecipient>, nil]
|
|
9
|
+
optional :recipients, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::MessageRecipient] }
|
|
10
|
+
|
|
11
|
+
# @!attribute status
|
|
12
|
+
# QUEUED: the batch is accepted. A request that carried scheduled_at is QUEUED
|
|
13
|
+
# here too; each message moves to SCHEDULED once it is held, as GET
|
|
14
|
+
# /v3/messages/{id} and the message.scheduled webhook report.
|
|
15
|
+
#
|
|
16
|
+
# @return [String, nil]
|
|
17
|
+
optional :status, String
|
|
18
|
+
|
|
19
|
+
# @!attribute template_id
|
|
20
|
+
#
|
|
21
|
+
# @return [String, nil]
|
|
22
|
+
optional :template_id, String
|
|
23
|
+
|
|
24
|
+
# @!attribute template_name
|
|
25
|
+
#
|
|
26
|
+
# @return [String, nil]
|
|
27
|
+
optional :template_name, String
|
|
28
|
+
|
|
29
|
+
# @!method initialize(recipients: nil, status: nil, template_id: nil, template_name: nil)
|
|
30
|
+
# Some parameter documentations has been truncated, see
|
|
31
|
+
# {Sentdm::Models::MessageSendResult} for more details.
|
|
32
|
+
#
|
|
33
|
+
# The result of a multi-recipient send.
|
|
34
|
+
#
|
|
35
|
+
# Declared here rather than in the service layer. POST /v3/messages used to
|
|
36
|
+
# publish MessageSendResult — a type in Common.Services.Messaging.Contracts — so
|
|
37
|
+
# the public contract was whatever the send service happened to return, and
|
|
38
|
+
# changing that service for an internal reason changed the API. The service keeps
|
|
39
|
+
# its result; this is what a caller sees, and the mapping between them is a
|
|
40
|
+
# decision the endpoint makes.
|
|
41
|
+
#
|
|
42
|
+
# The shape of an immediate send: it never has a scheduled_at key. A send that
|
|
43
|
+
# carried scheduled_at is a ScheduledSendMessageResponse, and the endpoint decides
|
|
44
|
+
# which of the two to answer with. From always returns this type.
|
|
45
|
+
#
|
|
46
|
+
# @param recipients [Array<Sentdm::Models::MessageRecipient>]
|
|
47
|
+
#
|
|
48
|
+
# @param status [String] QUEUED: the batch is accepted. A request that carried scheduled_at is QUEUED
|
|
49
|
+
#
|
|
50
|
+
# @param template_id [String]
|
|
51
|
+
#
|
|
52
|
+
# @param template_name [String]
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class MessageStatusEvent < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute status
|
|
7
|
+
#
|
|
8
|
+
# @return [String]
|
|
9
|
+
required :status, String
|
|
10
|
+
|
|
11
|
+
# @!attribute timestamp
|
|
12
|
+
#
|
|
13
|
+
# @return [Time]
|
|
14
|
+
required :timestamp, Time
|
|
15
|
+
|
|
16
|
+
# @!attribute description
|
|
17
|
+
#
|
|
18
|
+
# @return [String, nil]
|
|
19
|
+
optional :description, String, nil?: true
|
|
20
|
+
|
|
21
|
+
# @!attribute reason
|
|
22
|
+
# A human-readable sentence for reason_code. Omitted whenever reason_code is.
|
|
23
|
+
#
|
|
24
|
+
# @return [String, nil]
|
|
25
|
+
optional :reason, String, nil?: true
|
|
26
|
+
|
|
27
|
+
# @!attribute reason_code
|
|
28
|
+
# Why the message reached this status, as a stable platform code such as
|
|
29
|
+
# DELIVERY_007. Present on FAILED, FILTERED and BLOCKED events; omitted on every
|
|
30
|
+
# status that needs no explanation. Same wire name and vocabulary as on the
|
|
31
|
+
# activities list and the webhook.
|
|
32
|
+
#
|
|
33
|
+
# @return [String, nil]
|
|
34
|
+
optional :reason_code, String, nil?: true
|
|
35
|
+
|
|
36
|
+
# @!method initialize(status:, timestamp:, description: nil, reason: nil, reason_code: nil)
|
|
37
|
+
# Some parameter documentations has been truncated, see
|
|
38
|
+
# {Sentdm::Models::MessageStatusEvent} for more details.
|
|
39
|
+
#
|
|
40
|
+
# Represents a status change event in a message's lifecycle (v3)
|
|
41
|
+
#
|
|
42
|
+
# @param status [String]
|
|
43
|
+
#
|
|
44
|
+
# @param timestamp [Time]
|
|
45
|
+
#
|
|
46
|
+
# @param description [String, nil]
|
|
47
|
+
#
|
|
48
|
+
# @param reason [String, nil] A human-readable sentence for reason_code. Omitted whenever reason_code is.
|
|
49
|
+
#
|
|
50
|
+
# @param reason_code [String, nil] Why the message reached this status, as a stable platform code such as
|
|
51
|
+
# DELIVERY\_
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class MmsMarket < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute country
|
|
7
|
+
# ISO-3166 alpha-2 of the market.
|
|
8
|
+
#
|
|
9
|
+
# @return [String, nil]
|
|
10
|
+
optional :country, String, nil?: true
|
|
11
|
+
|
|
12
|
+
# @!attribute number_type
|
|
13
|
+
# The sender type the market sends from, mirroring the SMS sender.
|
|
14
|
+
#
|
|
15
|
+
# @return [String, nil]
|
|
16
|
+
optional :number_type, String, nil?: true
|
|
17
|
+
|
|
18
|
+
# @!attribute sender_value
|
|
19
|
+
# The sending number. Null while the market is still being provisioned.
|
|
20
|
+
#
|
|
21
|
+
# @return [String, nil]
|
|
22
|
+
optional :sender_value, String, nil?: true
|
|
23
|
+
|
|
24
|
+
# @!attribute status
|
|
25
|
+
# Where this market's MMS sender stands. Read-only.
|
|
26
|
+
#
|
|
27
|
+
# @return [String, nil]
|
|
28
|
+
optional :status, String, nil?: true
|
|
29
|
+
|
|
30
|
+
# @!method initialize(country: nil, number_type: nil, sender_value: nil, status: nil)
|
|
31
|
+
# One market the profile can send MMS in.
|
|
32
|
+
#
|
|
33
|
+
# Deliberately not SmsMarketState: an MMS market carries no compliance of its own.
|
|
34
|
+
# It is the same number, carrier and registration as the SMS market on it in that
|
|
35
|
+
# country — MMS files nothing separately — so a compliance block here would always
|
|
36
|
+
# be null and would invite the question of what an MMS market owes. It owes what
|
|
37
|
+
# the SMS market owes, reported there.
|
|
38
|
+
#
|
|
39
|
+
# @param country [String, nil] ISO-3166 alpha-2 of the market.
|
|
40
|
+
#
|
|
41
|
+
# @param number_type [String, nil] The sender type the market sends from, mirroring the SMS sender.
|
|
42
|
+
#
|
|
43
|
+
# @param sender_value [String, nil] The sending number. Null while the market is still being provisioned.
|
|
44
|
+
#
|
|
45
|
+
# @param status [String, nil] Where this market's MMS sender stands. Read-only.
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class NumberLookupResult < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute carrier_name
|
|
7
|
+
#
|
|
8
|
+
# @return [String, nil]
|
|
9
|
+
optional :carrier_name, String, nil?: true
|
|
10
|
+
|
|
11
|
+
# @!attribute country_code
|
|
12
|
+
#
|
|
13
|
+
# @return [String, nil]
|
|
14
|
+
optional :country_code, String, nil?: true
|
|
15
|
+
|
|
16
|
+
# @!attribute is_ported
|
|
17
|
+
#
|
|
18
|
+
# @return [Boolean, nil]
|
|
19
|
+
optional :is_ported, Sentdm::Internal::Type::Boolean, nil?: true
|
|
20
|
+
|
|
21
|
+
# @!attribute is_valid
|
|
22
|
+
#
|
|
23
|
+
# @return [Boolean, nil]
|
|
24
|
+
optional :is_valid, Sentdm::Internal::Type::Boolean
|
|
25
|
+
|
|
26
|
+
# @!attribute is_voip
|
|
27
|
+
#
|
|
28
|
+
# @return [Boolean, nil]
|
|
29
|
+
optional :is_voip, Sentdm::Internal::Type::Boolean, nil?: true
|
|
30
|
+
|
|
31
|
+
# @!attribute line_type
|
|
32
|
+
#
|
|
33
|
+
# @return [String, nil]
|
|
34
|
+
optional :line_type, String, nil?: true
|
|
35
|
+
|
|
36
|
+
# @!attribute mobile_country_code
|
|
37
|
+
#
|
|
38
|
+
# @return [String, nil]
|
|
39
|
+
optional :mobile_country_code, String, nil?: true
|
|
40
|
+
|
|
41
|
+
# @!attribute mobile_network_code
|
|
42
|
+
#
|
|
43
|
+
# @return [String, nil]
|
|
44
|
+
optional :mobile_network_code, String, nil?: true
|
|
45
|
+
|
|
46
|
+
# @!attribute phone_number
|
|
47
|
+
#
|
|
48
|
+
# @return [String, nil]
|
|
49
|
+
optional :phone_number, String
|
|
50
|
+
|
|
51
|
+
# @!method initialize(carrier_name: nil, country_code: nil, is_ported: nil, is_valid: nil, is_voip: nil, line_type: nil, mobile_country_code: nil, mobile_network_code: nil, phone_number: nil)
|
|
52
|
+
# @param carrier_name [String, nil]
|
|
53
|
+
# @param country_code [String, nil]
|
|
54
|
+
# @param is_ported [Boolean, nil]
|
|
55
|
+
# @param is_valid [Boolean]
|
|
56
|
+
# @param is_voip [Boolean, nil]
|
|
57
|
+
# @param line_type [String, nil]
|
|
58
|
+
# @param mobile_country_code [String, nil]
|
|
59
|
+
# @param mobile_network_code [String, nil]
|
|
60
|
+
# @param phone_number [String]
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|