sentdm 0.2.0 → 0.3.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 +10 -0
- data/README.md +96 -39
- data/lib/sentdm/client.rb +28 -36
- data/lib/sentdm/internal/type/base_model.rb +5 -5
- data/lib/sentdm/internal/type/enum.rb +25 -0
- data/lib/sentdm/models/api_error.rb +42 -0
- data/lib/sentdm/models/api_meta.rb +42 -0
- data/lib/sentdm/models/api_response_brand_with_kyc.rb +43 -0
- data/lib/sentdm/models/api_response_contact.rb +43 -0
- data/lib/sentdm/models/api_response_of_profile_detail.rb +43 -0
- data/lib/sentdm/models/api_response_of_user.rb +43 -0
- data/lib/sentdm/models/api_response_template.rb +43 -0
- data/lib/sentdm/models/api_response_webhook.rb +43 -0
- data/lib/sentdm/models/brand_create_params.rb +41 -0
- data/lib/sentdm/models/brand_data.rb +237 -0
- data/lib/sentdm/models/brand_delete_params.rb +27 -0
- data/lib/sentdm/models/brand_list_params.rb +14 -0
- data/lib/sentdm/models/brand_list_response.rb +43 -0
- data/lib/sentdm/models/brand_update_params.rb +41 -0
- data/lib/sentdm/models/brand_with_kyc.rb +335 -0
- data/lib/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rb +45 -0
- data/lib/sentdm/models/brands/base_dto.rb +32 -0
- data/lib/sentdm/models/brands/campaign_create_params.rb +43 -0
- data/lib/sentdm/models/brands/campaign_data.rb +123 -0
- data/lib/sentdm/models/brands/campaign_delete_params.rb +36 -0
- data/lib/sentdm/models/brands/campaign_list_params.rb +16 -0
- data/lib/sentdm/models/brands/campaign_list_response.rb +47 -0
- data/lib/sentdm/models/brands/campaign_update_params.rb +50 -0
- data/lib/sentdm/models/brands/messaging_use_case_us.rb +28 -0
- data/lib/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rb +30 -0
- data/lib/sentdm/models/brands/tcr_campaign_with_use_cases.rb +236 -0
- data/lib/sentdm/models/contact.rb +122 -0
- data/lib/sentdm/models/contact_create_params.rb +41 -0
- data/lib/sentdm/models/contact_delete_params.rb +27 -0
- data/lib/sentdm/models/contact_list_params.rb +28 -5
- data/lib/sentdm/models/contact_list_response.rb +46 -21
- data/lib/sentdm/models/{message_retrieve_params.rb → contact_retrieve_params.rb} +2 -2
- data/lib/sentdm/models/contact_update_params.rb +49 -0
- data/lib/sentdm/models/destination_country.rb +21 -0
- data/lib/sentdm/models/lookup_retrieve_phone_info_params.rb +14 -0
- data/lib/sentdm/models/lookup_retrieve_phone_info_response.rb +104 -0
- data/lib/sentdm/models/me_retrieve_params.rb +14 -0
- data/lib/sentdm/models/me_retrieve_response.rb +200 -0
- data/lib/sentdm/models/message_retrieve_activities_params.rb +14 -0
- data/lib/sentdm/models/message_retrieve_activities_response.rb +103 -0
- data/lib/sentdm/models/message_retrieve_status_params.rb +14 -0
- data/lib/sentdm/models/message_retrieve_status_response.rb +237 -0
- data/lib/sentdm/models/message_send_params.rb +88 -0
- data/lib/sentdm/models/message_send_response.rb +123 -0
- data/lib/sentdm/models/mutation_request.rb +20 -0
- data/lib/sentdm/models/pagination_meta.rb +80 -0
- data/lib/sentdm/models/profile_complete_params.rb +41 -0
- data/lib/sentdm/models/profile_complete_response.rb +8 -0
- data/lib/sentdm/models/profile_create_params.rb +122 -0
- data/lib/sentdm/models/profile_delete_params.rb +34 -0
- data/lib/sentdm/models/profile_detail.rb +200 -0
- data/lib/sentdm/models/profile_list_params.rb +14 -0
- data/lib/sentdm/models/profile_list_response.rb +57 -0
- data/lib/sentdm/models/profile_retrieve_params.rb +14 -0
- data/lib/sentdm/models/profile_settings.rb +66 -0
- data/lib/sentdm/models/profile_update_params.rb +169 -0
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rb +34 -0
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rb +40 -0
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rb +38 -0
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rb +81 -0
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rb +34 -0
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rb +39 -0
- data/lib/sentdm/models/tcr_brand_relationship.rb +18 -0
- data/lib/sentdm/models/tcr_vertical.rb +36 -0
- data/lib/sentdm/models/template.rb +90 -0
- data/lib/sentdm/models/template_create_params.rb +40 -19
- data/lib/sentdm/models/template_definition.rb +15 -255
- data/lib/sentdm/models/template_delete_params.rb +22 -1
- data/lib/sentdm/models/template_list_params.rb +9 -10
- data/lib/sentdm/models/template_list_response.rb +46 -21
- data/lib/sentdm/models/template_update_params.rb +73 -0
- data/lib/sentdm/models/user_invite_params.rb +57 -0
- data/lib/sentdm/models/user_list_params.rb +14 -0
- data/lib/sentdm/models/user_list_response.rb +57 -0
- data/lib/sentdm/models/user_remove_params.rb +34 -0
- data/lib/sentdm/models/user_response.rb +82 -0
- data/lib/sentdm/models/user_retrieve_params.rb +14 -0
- data/lib/sentdm/models/user_update_role_params.rb +49 -0
- data/lib/sentdm/models/webhook_create_params.rb +68 -0
- data/lib/sentdm/models/webhook_delete_params.rb +14 -0
- data/lib/sentdm/models/webhook_list_event_types_params.rb +14 -0
- data/lib/sentdm/models/webhook_list_event_types_response.rb +85 -0
- data/lib/sentdm/models/webhook_list_events_params.rb +32 -0
- data/lib/sentdm/models/webhook_list_events_response.rb +135 -0
- data/lib/sentdm/models/webhook_list_params.rb +38 -0
- data/lib/sentdm/models/webhook_list_response.rb +64 -0
- data/lib/sentdm/models/webhook_response.rb +87 -0
- data/lib/sentdm/models/webhook_retrieve_params.rb +14 -0
- data/lib/sentdm/models/webhook_rotate_secret_params.rb +30 -0
- data/lib/sentdm/models/webhook_rotate_secret_response.rb +56 -0
- data/lib/sentdm/models/webhook_test_params.rb +40 -0
- data/lib/sentdm/models/webhook_test_response.rb +62 -0
- data/lib/sentdm/models/webhook_toggle_status_params.rb +40 -0
- data/lib/sentdm/models/webhook_update_params.rb +68 -0
- data/lib/sentdm/models.rb +124 -10
- data/lib/sentdm/resources/brands/campaigns.rb +144 -0
- data/lib/sentdm/resources/brands.rb +128 -0
- data/lib/sentdm/resources/contacts.rb +111 -38
- data/lib/sentdm/resources/lookup.rb +35 -0
- data/lib/sentdm/resources/me.rb +34 -0
- data/lib/sentdm/resources/messages.rb +42 -77
- data/lib/sentdm/resources/profiles.rb +254 -0
- data/lib/sentdm/resources/templates.rb +94 -45
- data/lib/sentdm/resources/users.rb +158 -0
- data/lib/sentdm/resources/webhooks.rb +295 -0
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +94 -12
- data/rbi/sentdm/client.rbi +20 -25
- data/rbi/sentdm/models/api_error.rbi +66 -0
- data/rbi/sentdm/models/api_meta.rbi +69 -0
- data/rbi/sentdm/models/api_response_brand_with_kyc.rbi +74 -0
- data/rbi/sentdm/models/api_response_contact.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_profile_detail.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_user.rbi +74 -0
- data/rbi/sentdm/models/api_response_template.rbi +74 -0
- data/rbi/sentdm/models/api_response_webhook.rbi +74 -0
- data/rbi/sentdm/models/brand_create_params.rbi +68 -0
- data/rbi/sentdm/models/brand_data.rbi +266 -0
- data/rbi/sentdm/models/brand_delete_params.rbi +62 -0
- data/rbi/sentdm/models/brand_list_params.rbi +27 -0
- data/rbi/sentdm/models/brand_list_response.rbi +71 -0
- data/rbi/sentdm/models/brand_update_params.rbi +68 -0
- data/rbi/sentdm/models/brand_with_kyc.rbi +398 -0
- data/rbi/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rbi +83 -0
- data/rbi/sentdm/models/brands/base_dto.rbi +53 -0
- data/rbi/sentdm/models/brands/campaign_create_params.rbi +73 -0
- data/rbi/sentdm/models/brands/campaign_data.rbi +148 -0
- data/rbi/sentdm/models/brands/campaign_delete_params.rbi +78 -0
- data/rbi/sentdm/models/brands/campaign_list_params.rbi +29 -0
- data/rbi/sentdm/models/brands/campaign_list_response.rbi +82 -0
- data/rbi/sentdm/models/brands/campaign_update_params.rbi +79 -0
- data/rbi/sentdm/models/brands/messaging_use_case_us.rbi +69 -0
- data/rbi/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbi +52 -0
- data/rbi/sentdm/models/brands/tcr_campaign_with_use_cases.rbi +404 -0
- data/rbi/sentdm/models/contact.rbi +179 -0
- data/rbi/sentdm/models/contact_create_params.rbi +68 -0
- data/rbi/sentdm/models/contact_delete_params.rbi +62 -0
- data/rbi/sentdm/models/contact_list_params.rbi +26 -4
- data/rbi/sentdm/models/contact_list_response.rbi +91 -37
- data/rbi/sentdm/models/{message_retrieve_params.rbi → contact_retrieve_params.rbi} +2 -2
- data/rbi/sentdm/models/contact_update_params.rbi +73 -0
- data/rbi/sentdm/models/destination_country.rbi +32 -0
- data/rbi/sentdm/models/lookup_retrieve_phone_info_params.rbi +30 -0
- data/rbi/sentdm/models/lookup_retrieve_phone_info_response.rbi +183 -0
- data/rbi/sentdm/models/me_retrieve_params.rbi +27 -0
- data/rbi/sentdm/models/me_retrieve_response.rbi +314 -0
- data/rbi/sentdm/models/message_retrieve_activities_params.rbi +30 -0
- data/rbi/sentdm/models/message_retrieve_activities_response.rbi +234 -0
- data/rbi/sentdm/models/message_retrieve_status_params.rbi +27 -0
- data/rbi/sentdm/models/message_retrieve_status_response.rbi +434 -0
- data/rbi/sentdm/models/message_send_params.rbi +143 -0
- data/rbi/sentdm/models/message_send_response.rbi +231 -0
- data/rbi/sentdm/models/mutation_request.rbi +32 -0
- data/rbi/sentdm/models/pagination_meta.rbi +135 -0
- data/rbi/sentdm/models/profile_complete_params.rbi +65 -0
- data/rbi/sentdm/models/profile_complete_response.rbi +8 -0
- data/rbi/sentdm/models/profile_create_params.rbi +156 -0
- data/rbi/sentdm/models/profile_delete_params.rbi +59 -0
- data/rbi/sentdm/models/profile_detail.rbi +273 -0
- data/rbi/sentdm/models/profile_list_params.rbi +27 -0
- data/rbi/sentdm/models/profile_list_response.rbi +111 -0
- data/rbi/sentdm/models/profile_retrieve_params.rbi +27 -0
- data/rbi/sentdm/models/profile_settings.rbi +86 -0
- data/rbi/sentdm/models/profile_update_params.rbi +196 -0
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbi +56 -0
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbi +76 -0
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbi +79 -0
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbi +104 -0
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbi +60 -0
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbi +62 -0
- data/rbi/sentdm/models/tcr_brand_relationship.rbi +30 -0
- data/rbi/sentdm/models/tcr_vertical.rbi +41 -0
- data/rbi/sentdm/models/template.rbi +129 -0
- data/rbi/sentdm/models/template_create_params.rbi +47 -23
- data/rbi/sentdm/models/template_definition.rbi +74 -405
- data/rbi/sentdm/models/template_delete_params.rbi +36 -5
- data/rbi/sentdm/models/template_list_params.rbi +8 -10
- data/rbi/sentdm/models/template_list_response.rbi +91 -37
- data/rbi/sentdm/models/template_update_params.rbi +105 -0
- data/rbi/sentdm/models/user_invite_params.rbi +90 -0
- data/rbi/sentdm/models/user_list_params.rbi +27 -0
- data/rbi/sentdm/models/user_list_response.rbi +111 -0
- data/rbi/sentdm/models/user_remove_params.rbi +59 -0
- data/rbi/sentdm/models/user_response.rbi +118 -0
- data/rbi/sentdm/models/user_retrieve_params.rbi +27 -0
- data/rbi/sentdm/models/user_update_role_params.rbi +79 -0
- data/rbi/sentdm/models/webhook_create_params.rbi +102 -0
- data/rbi/sentdm/models/webhook_delete_params.rbi +27 -0
- data/rbi/sentdm/models/webhook_list_event_types_params.rbi +27 -0
- data/rbi/sentdm/models/webhook_list_event_types_response.rbi +206 -0
- data/rbi/sentdm/models/webhook_list_events_params.rbi +48 -0
- data/rbi/sentdm/models/webhook_list_events_response.rbi +263 -0
- data/rbi/sentdm/models/webhook_list_params.rbi +59 -0
- data/rbi/sentdm/models/webhook_list_response.rbi +126 -0
- data/rbi/sentdm/models/webhook_response.rbi +134 -0
- data/rbi/sentdm/models/webhook_retrieve_params.rbi +27 -0
- data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +67 -0
- data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +112 -0
- data/rbi/sentdm/models/webhook_test_params.rbi +66 -0
- data/rbi/sentdm/models/webhook_test_response.rbi +111 -0
- data/rbi/sentdm/models/webhook_toggle_status_params.rbi +66 -0
- data/rbi/sentdm/models/webhook_update_params.rbi +102 -0
- data/rbi/sentdm/models.rbi +125 -10
- data/rbi/sentdm/resources/brands/campaigns.rbi +108 -0
- data/rbi/sentdm/resources/brands.rbi +93 -0
- data/rbi/sentdm/resources/contacts.rbi +89 -26
- data/rbi/sentdm/resources/lookup.rbi +24 -0
- data/rbi/sentdm/resources/me.rbi +23 -0
- data/rbi/sentdm/resources/messages.rbi +41 -60
- data/rbi/sentdm/resources/profiles.rbi +238 -0
- data/rbi/sentdm/resources/templates.rbi +94 -41
- data/rbi/sentdm/resources/users.rbi +116 -0
- data/rbi/sentdm/resources/webhooks.rbi +218 -0
- data/sig/sentdm/client.rbs +11 -8
- data/sig/sentdm/models/api_error.rbs +39 -0
- data/sig/sentdm/models/api_meta.rbs +41 -0
- data/sig/sentdm/models/api_response_brand_with_kyc.rbs +39 -0
- data/sig/sentdm/models/api_response_contact.rbs +39 -0
- data/sig/sentdm/models/api_response_of_profile_detail.rbs +39 -0
- data/sig/sentdm/models/api_response_of_user.rbs +39 -0
- data/sig/sentdm/models/api_response_template.rbs +39 -0
- data/sig/sentdm/models/api_response_webhook.rbs +39 -0
- data/sig/sentdm/models/brand_create_params.rbs +36 -0
- data/sig/sentdm/models/brand_data.rbs +164 -0
- data/sig/sentdm/models/brand_delete_params.rbs +32 -0
- data/sig/sentdm/models/brand_list_params.rbs +14 -0
- data/sig/sentdm/models/brand_list_response.rbs +39 -0
- data/sig/sentdm/models/brand_update_params.rbs +36 -0
- data/sig/sentdm/models/brand_with_kyc.rbs +237 -0
- data/sig/sentdm/models/brands/api_response_tcr_campaign_with_use_cases.rbs +41 -0
- data/sig/sentdm/models/brands/base_dto.rbs +27 -0
- data/sig/sentdm/models/brands/campaign_create_params.rbs +42 -0
- data/sig/sentdm/models/brands/campaign_data.rbs +82 -0
- data/sig/sentdm/models/brands/campaign_delete_params.rbs +38 -0
- data/sig/sentdm/models/brands/campaign_list_params.rbs +17 -0
- data/sig/sentdm/models/brands/campaign_list_response.rbs +41 -0
- data/sig/sentdm/models/brands/campaign_update_params.rbs +47 -0
- data/sig/sentdm/models/brands/messaging_use_case_us.rbs +40 -0
- data/sig/sentdm/models/brands/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbs +27 -0
- data/sig/sentdm/models/brands/tcr_campaign_with_use_cases.rbs +285 -0
- data/sig/sentdm/models/{contact_list_item.rbs → contact.rbs} +31 -5
- data/sig/sentdm/models/contact_create_params.rbs +38 -0
- data/sig/sentdm/models/contact_delete_params.rbs +32 -0
- data/sig/sentdm/models/contact_list_params.rbs +19 -1
- data/sig/sentdm/models/contact_list_response.rbs +44 -31
- data/sig/sentdm/models/{message_retrieve_params.rbs → contact_retrieve_params.rbs} +2 -2
- data/sig/sentdm/models/contact_update_params.rbs +45 -0
- data/sig/sentdm/models/destination_country.rbs +19 -0
- data/sig/sentdm/models/lookup_retrieve_phone_info_params.rbs +15 -0
- data/sig/sentdm/models/lookup_retrieve_phone_info_response.rbs +102 -0
- data/sig/sentdm/models/me_retrieve_params.rbs +14 -0
- data/sig/sentdm/models/me_retrieve_response.rbs +162 -0
- data/sig/sentdm/models/message_retrieve_activities_params.rbs +15 -0
- data/sig/sentdm/models/message_retrieve_activities_response.rbs +105 -0
- data/sig/sentdm/models/message_retrieve_status_params.rbs +15 -0
- data/sig/sentdm/models/message_retrieve_status_response.rbs +224 -0
- data/sig/sentdm/models/message_send_params.rbs +79 -0
- data/sig/sentdm/models/message_send_response.rbs +108 -0
- data/sig/sentdm/models/mutation_request.rbs +15 -0
- data/sig/sentdm/models/pagination_meta.rbs +67 -0
- data/sig/sentdm/models/profile_complete_params.rbs +36 -0
- data/sig/sentdm/models/profile_complete_response.rbs +5 -0
- data/sig/sentdm/models/profile_create_params.rbs +96 -0
- data/sig/sentdm/models/profile_delete_params.rbs +32 -0
- data/sig/sentdm/models/profile_detail.rbs +168 -0
- data/sig/sentdm/models/profile_list_params.rbs +14 -0
- data/sig/sentdm/models/profile_list_response.rbs +53 -0
- data/sig/sentdm/models/profile_retrieve_params.rbs +15 -0
- data/sig/sentdm/models/profile_settings.rbs +50 -0
- data/sig/sentdm/models/profile_update_params.rbs +122 -0
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbs +24 -0
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbs +30 -0
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbs +38 -0
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbs +75 -0
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbs +32 -0
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbs +32 -0
- data/sig/sentdm/models/tcr_brand_relationship.rbs +22 -0
- data/sig/sentdm/models/tcr_vertical.rbs +58 -0
- data/sig/sentdm/models/{template_response_v2.rbs → template.rbs} +18 -31
- data/sig/sentdm/models/template_create_params.rbs +29 -6
- data/sig/sentdm/models/template_definition.rbs +20 -233
- data/sig/sentdm/models/template_delete_params.rbs +18 -3
- data/sig/sentdm/models/template_list_response.rbs +44 -31
- data/sig/sentdm/models/template_update_params.rbs +62 -0
- data/sig/sentdm/models/user_invite_params.rbs +56 -0
- data/sig/sentdm/models/user_list_params.rbs +14 -0
- data/sig/sentdm/models/user_list_response.rbs +53 -0
- data/sig/sentdm/models/user_remove_params.rbs +32 -0
- data/sig/sentdm/models/user_response.rbs +72 -0
- data/sig/sentdm/models/user_retrieve_params.rbs +15 -0
- data/sig/sentdm/models/user_update_role_params.rbs +49 -0
- data/sig/sentdm/models/webhook_create_params.rbs +70 -0
- data/sig/sentdm/models/webhook_delete_params.rbs +15 -0
- data/sig/sentdm/models/webhook_list_event_types_params.rbs +15 -0
- data/sig/sentdm/models/webhook_list_event_types_response.rbs +98 -0
- data/sig/sentdm/models/webhook_list_events_params.rbs +32 -0
- data/sig/sentdm/models/webhook_list_events_response.rbs +146 -0
- data/sig/sentdm/models/webhook_list_params.rbs +36 -0
- data/sig/sentdm/models/webhook_list_response.rbs +67 -0
- data/sig/sentdm/models/webhook_response.rbs +98 -0
- data/sig/sentdm/models/webhook_retrieve_params.rbs +15 -0
- data/sig/sentdm/models/webhook_rotate_secret_params.rbs +38 -0
- data/sig/sentdm/models/webhook_rotate_secret_response.rbs +51 -0
- data/sig/sentdm/models/webhook_test_params.rbs +38 -0
- data/sig/sentdm/models/webhook_test_response.rbs +55 -0
- data/sig/sentdm/models/webhook_toggle_status_params.rbs +38 -0
- data/sig/sentdm/models/webhook_update_params.rbs +70 -0
- data/sig/sentdm/models.rbs +118 -10
- data/sig/sentdm/resources/brands/campaigns.rbs +38 -0
- data/sig/sentdm/resources/brands.rbs +34 -0
- data/sig/sentdm/resources/contacts.rbs +28 -8
- data/sig/sentdm/resources/lookup.rbs +12 -0
- data/sig/sentdm/resources/{number_lookup.rbs → me.rbs} +2 -3
- data/sig/sentdm/resources/messages.rbs +12 -18
- data/sig/sentdm/resources/profiles.rbs +72 -0
- data/sig/sentdm/resources/templates.rbs +24 -4
- data/sig/sentdm/resources/users.rbs +41 -0
- data/sig/sentdm/resources/webhooks.rbs +80 -0
- metadata +284 -38
- data/lib/sentdm/models/contact_list_item.rb +0 -96
- data/lib/sentdm/models/contact_retrieve_by_phone_params.rb +0 -22
- data/lib/sentdm/models/contact_retrieve_id_params.rb +0 -22
- data/lib/sentdm/models/message_retrieve_response.rb +0 -227
- data/lib/sentdm/models/message_send_quick_message_params.rb +0 -34
- data/lib/sentdm/models/message_send_to_contact_params.rb +0 -46
- data/lib/sentdm/models/message_send_to_phone_params.rb +0 -47
- data/lib/sentdm/models/number_lookup_retrieve_params.rb +0 -20
- data/lib/sentdm/models/number_lookup_retrieve_response.rb +0 -83
- data/lib/sentdm/models/template_response_v2.rb +0 -100
- data/lib/sentdm/resources/number_lookup.rb +0 -37
- data/rbi/sentdm/models/contact_list_item.rbi +0 -144
- data/rbi/sentdm/models/contact_retrieve_by_phone_params.rbi +0 -40
- data/rbi/sentdm/models/contact_retrieve_id_params.rbi +0 -40
- data/rbi/sentdm/models/message_retrieve_response.rbi +0 -376
- data/rbi/sentdm/models/message_send_quick_message_params.rbi +0 -56
- data/rbi/sentdm/models/message_send_to_contact_params.rbi +0 -63
- data/rbi/sentdm/models/message_send_to_phone_params.rbi +0 -65
- data/rbi/sentdm/models/number_lookup_retrieve_params.rbi +0 -35
- data/rbi/sentdm/models/number_lookup_retrieve_response.rbi +0 -132
- data/rbi/sentdm/models/template_response_v2.rbi +0 -149
- data/rbi/sentdm/resources/number_lookup.rbi +0 -24
- data/sig/sentdm/models/contact_retrieve_by_phone_params.rbs +0 -23
- data/sig/sentdm/models/contact_retrieve_id_params.rbs +0 -20
- data/sig/sentdm/models/message_retrieve_response.rbs +0 -188
- data/sig/sentdm/models/message_send_quick_message_params.rbs +0 -28
- data/sig/sentdm/models/message_send_to_contact_params.rbs +0 -36
- data/sig/sentdm/models/message_send_to_phone_params.rbs +0 -36
- data/sig/sentdm/models/number_lookup_retrieve_params.rbs +0 -23
- data/sig/sentdm/models/number_lookup_retrieve_response.rbs +0 -78
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 7e9255fd572fb809acadb95d529be7670e1108067cb33622e50169d008fbdef0
|
|
4
|
+
data.tar.gz: 446bb1258628f0793cf4b657f940661dfb7abc792b4ed11d58ff061deb35c27d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 385856fe59775e07188fb9c1e1b820c24db38858ae29a9899122106a21555da3c583b7c62f58eeaf717fc1bdb8ddeab639980aa96796cfaa11696cafe4d6fc9e
|
|
7
|
+
data.tar.gz: '083c75a984c27b968a4edadba77fa4014c36650ae056d8c3c2d4cc8e05678ac7aba18548e61ac6923d8856579b0f49b29d17b2f6d187ce6ef5dcd0861ba252a6'
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.3.0 (2026-02-18)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.2.0...v0.3.0](https://github.com/sentdm/sent-dm-ruby/compare/v0.2.0...v0.3.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** manual updates ([e674172](https://github.com/sentdm/sent-dm-ruby/commit/e674172971f06d5616165303b01e6c0a24cf3744))
|
|
10
|
+
* **api:** manual updates ([6262e32](https://github.com/sentdm/sent-dm-ruby/commit/6262e327f30368608f29890d469c0352b9da80c8))
|
|
11
|
+
* **api:** manual updates ([33fff26](https://github.com/sentdm/sent-dm-ruby/commit/33fff2647eb26bde013600c8632b160a46f1eb73))
|
|
12
|
+
|
|
3
13
|
## 0.2.0 (2026-02-16)
|
|
4
14
|
|
|
5
15
|
Full Changelog: [v0.1.0...v0.2.0](https://github.com/sentdm/sent-dm-ruby/compare/v0.1.0...v0.2.0)
|
data/README.md
CHANGED
|
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
|
|
|
17
17
|
<!-- x-release-please-start-version -->
|
|
18
18
|
|
|
19
19
|
```ruby
|
|
20
|
-
gem "sentdm", "~> 0.
|
|
20
|
+
gem "sentdm", "~> 0.3.0"
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
<!-- x-release-please-end -->
|
|
@@ -29,17 +29,20 @@ require "bundler/setup"
|
|
|
29
29
|
require "sentdm"
|
|
30
30
|
|
|
31
31
|
sent_dm = Sentdm::Client.new(
|
|
32
|
-
api_key: ENV["SENT_DM_API_KEY"]
|
|
33
|
-
sender_id: ENV["SENT_DM_SENDER_ID"] # This is the default and can be omitted
|
|
32
|
+
api_key: ENV["SENT_DM_API_KEY"] # This is the default and can be omitted
|
|
34
33
|
)
|
|
35
34
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
response = sent_dm.messages.send_(
|
|
36
|
+
channel: ["sms", "whatsapp"],
|
|
37
|
+
template: {
|
|
38
|
+
id: "7ba7b820-9dad-11d1-80b4-00c04fd430c8",
|
|
39
|
+
name: "order_confirmation",
|
|
40
|
+
parameters: {name: "John Doe", order_id: "12345"}
|
|
41
|
+
},
|
|
42
|
+
to: ["+14155551234", "+14155555678"]
|
|
40
43
|
)
|
|
41
44
|
|
|
42
|
-
puts(
|
|
45
|
+
puts(response.data)
|
|
43
46
|
```
|
|
44
47
|
|
|
45
48
|
### Handling errors
|
|
@@ -48,10 +51,14 @@ When the library is unable to connect to the API, or if the API returns a non-su
|
|
|
48
51
|
|
|
49
52
|
```ruby
|
|
50
53
|
begin
|
|
51
|
-
message = sent_dm.messages.
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
54
|
+
message = sent_dm.messages.send_(
|
|
55
|
+
channel: ["sms"],
|
|
56
|
+
template: {
|
|
57
|
+
id: "7ba7b820-9dad-11d1-80b4-00c04fd430c8",
|
|
58
|
+
name: "order_confirmation",
|
|
59
|
+
parameters: {name: "John Doe", order_id: "12345"}
|
|
60
|
+
},
|
|
61
|
+
to: ["+14155551234"]
|
|
55
62
|
)
|
|
56
63
|
rescue Sentdm::Errors::APIConnectionError => e
|
|
57
64
|
puts("The server could not be reached")
|
|
@@ -95,10 +102,14 @@ sent_dm = Sentdm::Client.new(
|
|
|
95
102
|
)
|
|
96
103
|
|
|
97
104
|
# Or, configure per-request:
|
|
98
|
-
sent_dm.messages.
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
105
|
+
sent_dm.messages.send_(
|
|
106
|
+
channel: ["sms"],
|
|
107
|
+
template: {
|
|
108
|
+
id: "7ba7b820-9dad-11d1-80b4-00c04fd430c8",
|
|
109
|
+
name: "order_confirmation",
|
|
110
|
+
parameters: {name: "John Doe", order_id: "12345"}
|
|
111
|
+
},
|
|
112
|
+
to: ["+14155551234"],
|
|
102
113
|
request_options: {max_retries: 5}
|
|
103
114
|
)
|
|
104
115
|
```
|
|
@@ -114,10 +125,14 @@ sent_dm = Sentdm::Client.new(
|
|
|
114
125
|
)
|
|
115
126
|
|
|
116
127
|
# Or, configure per-request:
|
|
117
|
-
sent_dm.messages.
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
128
|
+
sent_dm.messages.send_(
|
|
129
|
+
channel: ["sms"],
|
|
130
|
+
template: {
|
|
131
|
+
id: "7ba7b820-9dad-11d1-80b4-00c04fd430c8",
|
|
132
|
+
name: "order_confirmation",
|
|
133
|
+
parameters: {name: "John Doe", order_id: "12345"}
|
|
134
|
+
},
|
|
135
|
+
to: ["+14155551234"],
|
|
121
136
|
request_options: {timeout: 5}
|
|
122
137
|
)
|
|
123
138
|
```
|
|
@@ -149,11 +164,15 @@ You can send undocumented parameters to any endpoint, and read undocumented resp
|
|
|
149
164
|
Note: the `extra_` parameters of the same name overrides the documented parameters.
|
|
150
165
|
|
|
151
166
|
```ruby
|
|
152
|
-
|
|
153
|
-
sent_dm.messages.
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
167
|
+
response =
|
|
168
|
+
sent_dm.messages.send_(
|
|
169
|
+
channel: ["sms"],
|
|
170
|
+
template: {
|
|
171
|
+
id: "7ba7b820-9dad-11d1-80b4-00c04fd430c8",
|
|
172
|
+
name: "order_confirmation",
|
|
173
|
+
parameters: {name: "John Doe", order_id: "12345"}
|
|
174
|
+
},
|
|
175
|
+
to: ["+14155551234"],
|
|
157
176
|
request_options: {
|
|
158
177
|
extra_query: {my_query_parameter: value},
|
|
159
178
|
extra_body: {my_body_parameter: value},
|
|
@@ -161,7 +180,7 @@ result =
|
|
|
161
180
|
}
|
|
162
181
|
)
|
|
163
182
|
|
|
164
|
-
puts(
|
|
183
|
+
puts(response[:my_undocumented_property])
|
|
165
184
|
```
|
|
166
185
|
|
|
167
186
|
#### Undocumented request params
|
|
@@ -199,10 +218,14 @@ This library provides comprehensive [RBI](https://sorbet.org/docs/rbi) definitio
|
|
|
199
218
|
You can provide typesafe request parameters like so:
|
|
200
219
|
|
|
201
220
|
```ruby
|
|
202
|
-
sent_dm.messages.
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
221
|
+
sent_dm.messages.send_(
|
|
222
|
+
channel: ["sms", "whatsapp"],
|
|
223
|
+
template: Sentdm::MessageSendParams::Template.new(
|
|
224
|
+
id: "7ba7b820-9dad-11d1-80b4-00c04fd430c8",
|
|
225
|
+
name: "order_confirmation",
|
|
226
|
+
parameters: {name: "John Doe", order_id: "12345"}
|
|
227
|
+
),
|
|
228
|
+
to: ["+14155551234", "+14155555678"]
|
|
206
229
|
)
|
|
207
230
|
```
|
|
208
231
|
|
|
@@ -210,19 +233,53 @@ Or, equivalently:
|
|
|
210
233
|
|
|
211
234
|
```ruby
|
|
212
235
|
# Hashes work, but are not typesafe:
|
|
213
|
-
sent_dm.messages.
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
236
|
+
sent_dm.messages.send_(
|
|
237
|
+
channel: ["sms", "whatsapp"],
|
|
238
|
+
template: {
|
|
239
|
+
id: "7ba7b820-9dad-11d1-80b4-00c04fd430c8",
|
|
240
|
+
name: "order_confirmation",
|
|
241
|
+
parameters: {name: "John Doe", order_id: "12345"}
|
|
242
|
+
},
|
|
243
|
+
to: ["+14155551234", "+14155555678"]
|
|
217
244
|
)
|
|
218
245
|
|
|
219
246
|
# You can also splat a full Params class:
|
|
220
|
-
params = Sentdm::
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
247
|
+
params = Sentdm::MessageSendParams.new(
|
|
248
|
+
channel: ["sms", "whatsapp"],
|
|
249
|
+
template: Sentdm::MessageSendParams::Template.new(
|
|
250
|
+
id: "7ba7b820-9dad-11d1-80b4-00c04fd430c8",
|
|
251
|
+
name: "order_confirmation",
|
|
252
|
+
parameters: {name: "John Doe", order_id: "12345"}
|
|
253
|
+
),
|
|
254
|
+
to: ["+14155551234", "+14155555678"]
|
|
255
|
+
)
|
|
256
|
+
sent_dm.messages.send_(**params)
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
### Enums
|
|
260
|
+
|
|
261
|
+
Since this library does not depend on `sorbet-runtime`, it cannot provide [`T::Enum`](https://sorbet.org/docs/tenum) instances. Instead, we provide "tagged symbols" instead, which is always a primitive at runtime:
|
|
262
|
+
|
|
263
|
+
```ruby
|
|
264
|
+
# :BASIC_ACCOUNT
|
|
265
|
+
puts(Sentdm::TcrBrandRelationship::BASIC_ACCOUNT)
|
|
266
|
+
|
|
267
|
+
# Revealed type: `T.all(Sentdm::TcrBrandRelationship, Symbol)`
|
|
268
|
+
T.reveal_type(Sentdm::TcrBrandRelationship::BASIC_ACCOUNT)
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
Enum parameters have a "relaxed" type, so you can either pass in enum constants or their literal value:
|
|
272
|
+
|
|
273
|
+
```ruby
|
|
274
|
+
Sentdm::BrandData.new(
|
|
275
|
+
brand_relationship: Sentdm::TcrBrandRelationship::BASIC_ACCOUNT,
|
|
276
|
+
# …
|
|
277
|
+
)
|
|
278
|
+
|
|
279
|
+
Sentdm::BrandData.new(
|
|
280
|
+
brand_relationship: :BASIC_ACCOUNT,
|
|
281
|
+
# …
|
|
224
282
|
)
|
|
225
|
-
sent_dm.messages.send_to_phone(**params)
|
|
226
283
|
```
|
|
227
284
|
|
|
228
285
|
## Versioning
|
data/lib/sentdm/client.rb
CHANGED
|
@@ -20,42 +20,38 @@ module Sentdm
|
|
|
20
20
|
# @return [String]
|
|
21
21
|
attr_reader :api_key
|
|
22
22
|
|
|
23
|
-
#
|
|
24
|
-
|
|
25
|
-
# @return [String]
|
|
26
|
-
attr_reader :sender_id
|
|
23
|
+
# @return [Sentdm::Resources::Webhooks]
|
|
24
|
+
attr_reader :webhooks
|
|
27
25
|
|
|
28
|
-
# @return [Sentdm::Resources::
|
|
29
|
-
attr_reader :
|
|
26
|
+
# @return [Sentdm::Resources::Users]
|
|
27
|
+
attr_reader :users
|
|
28
|
+
|
|
29
|
+
# @return [Sentdm::Resources::Templates]
|
|
30
|
+
attr_reader :templates
|
|
31
|
+
|
|
32
|
+
# @return [Sentdm::Resources::Profiles]
|
|
33
|
+
attr_reader :profiles
|
|
30
34
|
|
|
31
35
|
# @return [Sentdm::Resources::Messages]
|
|
32
36
|
attr_reader :messages
|
|
33
37
|
|
|
34
|
-
# @return [Sentdm::Resources::
|
|
35
|
-
attr_reader :
|
|
38
|
+
# @return [Sentdm::Resources::Lookup]
|
|
39
|
+
attr_reader :lookup
|
|
36
40
|
|
|
37
|
-
# @return [Sentdm::Resources::
|
|
38
|
-
attr_reader :
|
|
41
|
+
# @return [Sentdm::Resources::Contacts]
|
|
42
|
+
attr_reader :contacts
|
|
39
43
|
|
|
40
|
-
# @
|
|
41
|
-
|
|
42
|
-
# @return [Hash{String=>String}]
|
|
43
|
-
private def auth_headers
|
|
44
|
-
{**customer_api_key, **customer_sender_id}
|
|
45
|
-
end
|
|
44
|
+
# @return [Sentdm::Resources::Brands]
|
|
45
|
+
attr_reader :brands
|
|
46
46
|
|
|
47
|
-
# @
|
|
48
|
-
|
|
49
|
-
# @return [Hash{String=>String}]
|
|
50
|
-
private def customer_api_key
|
|
51
|
-
{"x-api-key" => @api_key}
|
|
52
|
-
end
|
|
47
|
+
# @return [Sentdm::Resources::Me]
|
|
48
|
+
attr_reader :me
|
|
53
49
|
|
|
54
50
|
# @api private
|
|
55
51
|
#
|
|
56
52
|
# @return [Hash{String=>String}]
|
|
57
|
-
private def
|
|
58
|
-
{"x-
|
|
53
|
+
private def auth_headers
|
|
54
|
+
{"x-api-key" => @api_key}
|
|
59
55
|
end
|
|
60
56
|
|
|
61
57
|
# Creates and returns a new client for interacting with the API.
|
|
@@ -64,10 +60,6 @@ module Sentdm
|
|
|
64
60
|
# `sk_test_*` keys for sandbox/testing. Pass via the `x-api-key` header. Defaults
|
|
65
61
|
# to `ENV["SENT_DM_API_KEY"]`
|
|
66
62
|
#
|
|
67
|
-
# @param sender_id [String, nil] Customer sender ID (UUID) identifying the customer account. Obtain this from
|
|
68
|
-
# your account settings. Pass via the `x-sender-id` header. Defaults to
|
|
69
|
-
# `ENV["SENT_DM_SENDER_ID"]`
|
|
70
|
-
#
|
|
71
63
|
# @param base_url [String, nil] Override the default base URL for the API, e.g.,
|
|
72
64
|
# `"https://api.example.com/v2/"`. Defaults to `ENV["SENT_DM_BASE_URL"]`
|
|
73
65
|
#
|
|
@@ -80,7 +72,6 @@ module Sentdm
|
|
|
80
72
|
# @param max_retry_delay [Float]
|
|
81
73
|
def initialize(
|
|
82
74
|
api_key: ENV["SENT_DM_API_KEY"],
|
|
83
|
-
sender_id: ENV["SENT_DM_SENDER_ID"],
|
|
84
75
|
base_url: ENV["SENT_DM_BASE_URL"],
|
|
85
76
|
max_retries: self.class::DEFAULT_MAX_RETRIES,
|
|
86
77
|
timeout: self.class::DEFAULT_TIMEOUT_IN_SECONDS,
|
|
@@ -92,12 +83,8 @@ module Sentdm
|
|
|
92
83
|
if api_key.nil?
|
|
93
84
|
raise ArgumentError.new("api_key is required, and can be set via environ: \"SENT_DM_API_KEY\"")
|
|
94
85
|
end
|
|
95
|
-
if sender_id.nil?
|
|
96
|
-
raise ArgumentError.new("sender_id is required, and can be set via environ: \"SENT_DM_SENDER_ID\"")
|
|
97
|
-
end
|
|
98
86
|
|
|
99
87
|
@api_key = api_key.to_s
|
|
100
|
-
@sender_id = sender_id.to_s
|
|
101
88
|
|
|
102
89
|
super(
|
|
103
90
|
base_url: base_url,
|
|
@@ -107,10 +94,15 @@ module Sentdm
|
|
|
107
94
|
max_retry_delay: max_retry_delay
|
|
108
95
|
)
|
|
109
96
|
|
|
110
|
-
@
|
|
111
|
-
@
|
|
97
|
+
@webhooks = Sentdm::Resources::Webhooks.new(client: self)
|
|
98
|
+
@users = Sentdm::Resources::Users.new(client: self)
|
|
112
99
|
@templates = Sentdm::Resources::Templates.new(client: self)
|
|
113
|
-
@
|
|
100
|
+
@profiles = Sentdm::Resources::Profiles.new(client: self)
|
|
101
|
+
@messages = Sentdm::Resources::Messages.new(client: self)
|
|
102
|
+
@lookup = Sentdm::Resources::Lookup.new(client: self)
|
|
103
|
+
@contacts = Sentdm::Resources::Contacts.new(client: self)
|
|
104
|
+
@brands = Sentdm::Resources::Brands.new(client: self)
|
|
105
|
+
@me = Sentdm::Resources::Me.new(client: self)
|
|
114
106
|
end
|
|
115
107
|
end
|
|
116
108
|
end
|
|
@@ -438,11 +438,11 @@ module Sentdm
|
|
|
438
438
|
# @return [Hash{Symbol=>Object}]
|
|
439
439
|
#
|
|
440
440
|
# @example
|
|
441
|
-
# # `
|
|
442
|
-
#
|
|
443
|
-
#
|
|
444
|
-
#
|
|
445
|
-
#
|
|
441
|
+
# # `api_error` is a `Sentdm::APIError`
|
|
442
|
+
# api_error => {
|
|
443
|
+
# code: code,
|
|
444
|
+
# details: details,
|
|
445
|
+
# doc_url: doc_url
|
|
446
446
|
# }
|
|
447
447
|
def deconstruct_keys(keys)
|
|
448
448
|
(keys || self.class.known_fields.keys)
|
|
@@ -15,6 +15,31 @@ module Sentdm
|
|
|
15
15
|
#
|
|
16
16
|
# We can therefore convert string values to Symbols, but can't convert other
|
|
17
17
|
# values safely.
|
|
18
|
+
#
|
|
19
|
+
# @example
|
|
20
|
+
# # `tcr_brand_relationship` is a `Sentdm::TcrBrandRelationship`
|
|
21
|
+
# case tcr_brand_relationship
|
|
22
|
+
# when Sentdm::TcrBrandRelationship::BASIC_ACCOUNT
|
|
23
|
+
# # ...
|
|
24
|
+
# when Sentdm::TcrBrandRelationship::MEDIUM_ACCOUNT
|
|
25
|
+
# # ...
|
|
26
|
+
# when Sentdm::TcrBrandRelationship::LARGE_ACCOUNT
|
|
27
|
+
# # ...
|
|
28
|
+
# else
|
|
29
|
+
# puts(tcr_brand_relationship)
|
|
30
|
+
# end
|
|
31
|
+
#
|
|
32
|
+
# @example
|
|
33
|
+
# case tcr_brand_relationship
|
|
34
|
+
# in :BASIC_ACCOUNT
|
|
35
|
+
# # ...
|
|
36
|
+
# in :MEDIUM_ACCOUNT
|
|
37
|
+
# # ...
|
|
38
|
+
# in :LARGE_ACCOUNT
|
|
39
|
+
# # ...
|
|
40
|
+
# else
|
|
41
|
+
# puts(tcr_brand_relationship)
|
|
42
|
+
# end
|
|
18
43
|
module Enum
|
|
19
44
|
include Sentdm::Internal::Type::Converter
|
|
20
45
|
include Sentdm::Internal::Util::SorbetRuntimeSupport
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class APIError < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute code
|
|
7
|
+
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
8
|
+
#
|
|
9
|
+
# @return [String, nil]
|
|
10
|
+
optional :code, String
|
|
11
|
+
|
|
12
|
+
# @!attribute details
|
|
13
|
+
# Additional validation error details (field-level errors)
|
|
14
|
+
#
|
|
15
|
+
# @return [Hash{Symbol=>Array<String>}, nil]
|
|
16
|
+
optional :details, Sentdm::Internal::Type::HashOf[Sentdm::Internal::Type::ArrayOf[String]], nil?: true
|
|
17
|
+
|
|
18
|
+
# @!attribute doc_url
|
|
19
|
+
# URL to documentation about this error
|
|
20
|
+
#
|
|
21
|
+
# @return [String, nil]
|
|
22
|
+
optional :doc_url, String, nil?: true
|
|
23
|
+
|
|
24
|
+
# @!attribute message
|
|
25
|
+
# Human-readable error message
|
|
26
|
+
#
|
|
27
|
+
# @return [String, nil]
|
|
28
|
+
optional :message, String
|
|
29
|
+
|
|
30
|
+
# @!method initialize(code: nil, details: nil, doc_url: nil, message: nil)
|
|
31
|
+
# Error information
|
|
32
|
+
#
|
|
33
|
+
# @param code [String] Machine-readable error code (e.g., "RESOURCE_001")
|
|
34
|
+
#
|
|
35
|
+
# @param details [Hash{Symbol=>Array<String>}, nil] Additional validation error details (field-level errors)
|
|
36
|
+
#
|
|
37
|
+
# @param doc_url [String, nil] URL to documentation about this error
|
|
38
|
+
#
|
|
39
|
+
# @param message [String] Human-readable error message
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
class APIMeta < Sentdm::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute request_id
|
|
7
|
+
# Unique identifier for this request (for tracing and support)
|
|
8
|
+
#
|
|
9
|
+
# @return [String, nil]
|
|
10
|
+
optional :request_id, String
|
|
11
|
+
|
|
12
|
+
# @!attribute response_time_ms
|
|
13
|
+
# Response time in milliseconds (optional)
|
|
14
|
+
#
|
|
15
|
+
# @return [Integer, nil]
|
|
16
|
+
optional :response_time_ms, Integer, nil?: true
|
|
17
|
+
|
|
18
|
+
# @!attribute timestamp
|
|
19
|
+
# Server timestamp when the response was generated
|
|
20
|
+
#
|
|
21
|
+
# @return [Time, nil]
|
|
22
|
+
optional :timestamp, Time
|
|
23
|
+
|
|
24
|
+
# @!attribute version
|
|
25
|
+
# API version used for this request
|
|
26
|
+
#
|
|
27
|
+
# @return [String, nil]
|
|
28
|
+
optional :version, String
|
|
29
|
+
|
|
30
|
+
# @!method initialize(request_id: nil, response_time_ms: nil, timestamp: nil, version: nil)
|
|
31
|
+
# Request and response metadata
|
|
32
|
+
#
|
|
33
|
+
# @param request_id [String] Unique identifier for this request (for tracing and support)
|
|
34
|
+
#
|
|
35
|
+
# @param response_time_ms [Integer, nil] Response time in milliseconds (optional)
|
|
36
|
+
#
|
|
37
|
+
# @param timestamp [Time] Server timestamp when the response was generated
|
|
38
|
+
#
|
|
39
|
+
# @param version [String] API version used for this request
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
# @see Sentdm::Resources::Brands#create
|
|
6
|
+
class APIResponseBrandWithKYC < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
# @!attribute data
|
|
8
|
+
# The response data (null if error)
|
|
9
|
+
#
|
|
10
|
+
# @return [Sentdm::Models::BrandWithKYC, nil]
|
|
11
|
+
optional :data, -> { Sentdm::BrandWithKYC }, nil?: true
|
|
12
|
+
|
|
13
|
+
# @!attribute error
|
|
14
|
+
# Error details (null if successful)
|
|
15
|
+
#
|
|
16
|
+
# @return [Sentdm::Models::APIError, nil]
|
|
17
|
+
optional :error, -> { Sentdm::APIError }, nil?: true
|
|
18
|
+
|
|
19
|
+
# @!attribute meta
|
|
20
|
+
# Metadata about the request and response
|
|
21
|
+
#
|
|
22
|
+
# @return [Sentdm::Models::APIMeta, nil]
|
|
23
|
+
optional :meta, -> { Sentdm::APIMeta }
|
|
24
|
+
|
|
25
|
+
# @!attribute success
|
|
26
|
+
# Indicates whether the request was successful
|
|
27
|
+
#
|
|
28
|
+
# @return [Boolean, nil]
|
|
29
|
+
optional :success, Sentdm::Internal::Type::Boolean
|
|
30
|
+
|
|
31
|
+
# @!method initialize(data: nil, error: nil, meta: nil, success: nil)
|
|
32
|
+
# Standard API response envelope for all v3 endpoints
|
|
33
|
+
#
|
|
34
|
+
# @param data [Sentdm::Models::BrandWithKYC, nil] The response data (null if error)
|
|
35
|
+
#
|
|
36
|
+
# @param error [Sentdm::Models::APIError, nil] Error details (null if successful)
|
|
37
|
+
#
|
|
38
|
+
# @param meta [Sentdm::Models::APIMeta] Metadata about the request and response
|
|
39
|
+
#
|
|
40
|
+
# @param success [Boolean] Indicates whether the request was successful
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
# @see Sentdm::Resources::Contacts#create
|
|
6
|
+
class APIResponseContact < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
# @!attribute data
|
|
8
|
+
# The response data (null if error)
|
|
9
|
+
#
|
|
10
|
+
# @return [Sentdm::Models::Contact, nil]
|
|
11
|
+
optional :data, -> { Sentdm::Contact }, nil?: true
|
|
12
|
+
|
|
13
|
+
# @!attribute error
|
|
14
|
+
# Error details (null if successful)
|
|
15
|
+
#
|
|
16
|
+
# @return [Sentdm::Models::APIError, nil]
|
|
17
|
+
optional :error, -> { Sentdm::APIError }, nil?: true
|
|
18
|
+
|
|
19
|
+
# @!attribute meta
|
|
20
|
+
# Metadata about the request and response
|
|
21
|
+
#
|
|
22
|
+
# @return [Sentdm::Models::APIMeta, nil]
|
|
23
|
+
optional :meta, -> { Sentdm::APIMeta }
|
|
24
|
+
|
|
25
|
+
# @!attribute success
|
|
26
|
+
# Indicates whether the request was successful
|
|
27
|
+
#
|
|
28
|
+
# @return [Boolean, nil]
|
|
29
|
+
optional :success, Sentdm::Internal::Type::Boolean
|
|
30
|
+
|
|
31
|
+
# @!method initialize(data: nil, error: nil, meta: nil, success: nil)
|
|
32
|
+
# Standard API response envelope for all v3 endpoints
|
|
33
|
+
#
|
|
34
|
+
# @param data [Sentdm::Models::Contact, nil] The response data (null if error)
|
|
35
|
+
#
|
|
36
|
+
# @param error [Sentdm::Models::APIError, nil] Error details (null if successful)
|
|
37
|
+
#
|
|
38
|
+
# @param meta [Sentdm::Models::APIMeta] Metadata about the request and response
|
|
39
|
+
#
|
|
40
|
+
# @param success [Boolean] Indicates whether the request was successful
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
# @see Sentdm::Resources::Profiles#create
|
|
6
|
+
class APIResponseOfProfileDetail < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
# @!attribute data
|
|
8
|
+
# The response data (null if error)
|
|
9
|
+
#
|
|
10
|
+
# @return [Sentdm::Models::ProfileDetail, nil]
|
|
11
|
+
optional :data, -> { Sentdm::ProfileDetail }, nil?: true
|
|
12
|
+
|
|
13
|
+
# @!attribute error
|
|
14
|
+
# Error details (null if successful)
|
|
15
|
+
#
|
|
16
|
+
# @return [Sentdm::Models::APIError, nil]
|
|
17
|
+
optional :error, -> { Sentdm::APIError }, nil?: true
|
|
18
|
+
|
|
19
|
+
# @!attribute meta
|
|
20
|
+
# Metadata about the request and response
|
|
21
|
+
#
|
|
22
|
+
# @return [Sentdm::Models::APIMeta, nil]
|
|
23
|
+
optional :meta, -> { Sentdm::APIMeta }
|
|
24
|
+
|
|
25
|
+
# @!attribute success
|
|
26
|
+
# Indicates whether the request was successful
|
|
27
|
+
#
|
|
28
|
+
# @return [Boolean, nil]
|
|
29
|
+
optional :success, Sentdm::Internal::Type::Boolean
|
|
30
|
+
|
|
31
|
+
# @!method initialize(data: nil, error: nil, meta: nil, success: nil)
|
|
32
|
+
# Standard API response envelope for all v3 endpoints
|
|
33
|
+
#
|
|
34
|
+
# @param data [Sentdm::Models::ProfileDetail, nil] The response data (null if error)
|
|
35
|
+
#
|
|
36
|
+
# @param error [Sentdm::Models::APIError, nil] Error details (null if successful)
|
|
37
|
+
#
|
|
38
|
+
# @param meta [Sentdm::Models::APIMeta] Metadata about the request and response
|
|
39
|
+
#
|
|
40
|
+
# @param success [Boolean] Indicates whether the request was successful
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
# @see Sentdm::Resources::Users#retrieve
|
|
6
|
+
class APIResponseOfUser < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
# @!attribute data
|
|
8
|
+
# The response data (null if error)
|
|
9
|
+
#
|
|
10
|
+
# @return [Sentdm::Models::UserResponse, nil]
|
|
11
|
+
optional :data, -> { Sentdm::UserResponse }, nil?: true
|
|
12
|
+
|
|
13
|
+
# @!attribute error
|
|
14
|
+
# Error details (null if successful)
|
|
15
|
+
#
|
|
16
|
+
# @return [Sentdm::Models::APIError, nil]
|
|
17
|
+
optional :error, -> { Sentdm::APIError }, nil?: true
|
|
18
|
+
|
|
19
|
+
# @!attribute meta
|
|
20
|
+
# Metadata about the request and response
|
|
21
|
+
#
|
|
22
|
+
# @return [Sentdm::Models::APIMeta, nil]
|
|
23
|
+
optional :meta, -> { Sentdm::APIMeta }
|
|
24
|
+
|
|
25
|
+
# @!attribute success
|
|
26
|
+
# Indicates whether the request was successful
|
|
27
|
+
#
|
|
28
|
+
# @return [Boolean, nil]
|
|
29
|
+
optional :success, Sentdm::Internal::Type::Boolean
|
|
30
|
+
|
|
31
|
+
# @!method initialize(data: nil, error: nil, meta: nil, success: nil)
|
|
32
|
+
# Standard API response envelope for all v3 endpoints
|
|
33
|
+
#
|
|
34
|
+
# @param data [Sentdm::Models::UserResponse, nil] The response data (null if error)
|
|
35
|
+
#
|
|
36
|
+
# @param error [Sentdm::Models::APIError, nil] Error details (null if successful)
|
|
37
|
+
#
|
|
38
|
+
# @param meta [Sentdm::Models::APIMeta] Metadata about the request and response
|
|
39
|
+
#
|
|
40
|
+
# @param success [Boolean] Indicates whether the request was successful
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|