sentdm 0.18.0 → 0.19.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 +13 -0
- data/README.md +1 -31
- data/lib/sentdm/internal/transport/base_client.rb +2 -0
- data/lib/sentdm/internal/type/base_model.rb +5 -5
- data/lib/sentdm/internal/type/enum.rb +0 -25
- data/lib/sentdm/models/contact_create_response.rb +236 -0
- data/lib/sentdm/models/contact_delete_params.rb +16 -2
- data/lib/sentdm/models/contact_list_response.rb +278 -12
- data/lib/sentdm/models/contact_retrieve_response.rb +236 -0
- data/lib/sentdm/models/contact_update_params.rb +4 -16
- data/lib/sentdm/models/contact_update_response.rb +236 -0
- data/lib/sentdm/models/me_retrieve_response.rb +204 -12
- data/lib/sentdm/models/message_retrieve_activities_response.rb +74 -6
- data/lib/sentdm/models/message_retrieve_status_response.rb +87 -7
- data/lib/sentdm/models/message_send_params.rb +2 -2
- data/lib/sentdm/models/message_send_response.rb +74 -6
- data/lib/sentdm/models/number_lookup_response.rb +74 -6
- data/lib/sentdm/models/profile_complete_response.rb +74 -6
- data/lib/sentdm/models/profile_create_params.rb +423 -9
- data/lib/sentdm/models/profile_create_response.rb +781 -0
- data/lib/sentdm/models/profile_delete_params.rb +16 -2
- data/lib/sentdm/models/profile_list_response.rb +753 -9
- data/lib/sentdm/models/profile_retrieve_response.rb +783 -0
- data/lib/sentdm/models/profile_update_params.rb +423 -9
- data/lib/sentdm/models/profile_update_response.rb +781 -0
- data/lib/sentdm/models/profiles/campaign_create_params.rb +165 -3
- data/lib/sentdm/models/profiles/campaign_create_response.rb +459 -0
- data/lib/sentdm/models/profiles/campaign_delete_params.rb +17 -2
- data/lib/sentdm/models/profiles/campaign_list_response.rb +420 -9
- data/lib/sentdm/models/profiles/campaign_update_params.rb +165 -3
- data/lib/sentdm/models/profiles/campaign_update_response.rb +459 -0
- data/lib/sentdm/models/template_create_params.rb +889 -3
- data/lib/sentdm/models/template_create_response.rb +197 -0
- data/lib/sentdm/models/template_list_response.rb +242 -12
- data/lib/sentdm/models/template_retrieve_response.rb +197 -0
- data/lib/sentdm/models/template_update_params.rb +889 -3
- data/lib/sentdm/models/template_update_response.rb +197 -0
- data/lib/sentdm/models/user_invite_response.rb +189 -0
- data/lib/sentdm/models/user_list_response.rb +154 -9
- data/lib/sentdm/models/user_remove_params.rb +16 -2
- data/lib/sentdm/models/user_retrieve_response.rb +189 -0
- data/lib/sentdm/models/user_update_role_response.rb +189 -0
- data/lib/sentdm/models/webhook_create_response.rb +204 -0
- data/lib/sentdm/models/webhook_list_event_types_response.rb +118 -9
- data/lib/sentdm/models/webhook_list_events_response.rb +153 -9
- data/lib/sentdm/models/webhook_list_response.rb +247 -12
- data/lib/sentdm/models/webhook_retrieve_response.rb +204 -0
- data/lib/sentdm/models/webhook_rotate_secret_params.rb +17 -2
- data/lib/sentdm/models/webhook_rotate_secret_response.rb +74 -6
- data/lib/sentdm/models/webhook_test_response.rb +74 -6
- data/lib/sentdm/models/webhook_toggle_status_response.rb +204 -0
- data/lib/sentdm/models/webhook_update_response.rb +204 -0
- data/lib/sentdm/models.rb +0 -77
- data/lib/sentdm/resources/contacts.rb +8 -10
- data/lib/sentdm/resources/profiles/campaigns.rb +6 -6
- data/lib/sentdm/resources/profiles.rb +12 -12
- data/lib/sentdm/resources/templates.rb +8 -8
- data/lib/sentdm/resources/users.rb +6 -6
- data/lib/sentdm/resources/webhooks.rb +8 -8
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +18 -40
- data/rbi/sentdm/models/contact_create_response.rbi +390 -0
- data/rbi/sentdm/models/contact_delete_params.rbi +19 -2
- data/rbi/sentdm/models/contact_list_response.rbi +505 -16
- data/rbi/sentdm/models/contact_retrieve_response.rbi +392 -0
- data/rbi/sentdm/models/contact_update_params.rbi +4 -20
- data/rbi/sentdm/models/contact_update_response.rbi +390 -0
- data/rbi/sentdm/models/me_retrieve_response.rbi +335 -16
- data/rbi/sentdm/models/message_retrieve_activities_response.rbi +154 -8
- data/rbi/sentdm/models/message_retrieve_status_response.rbi +171 -11
- data/rbi/sentdm/models/message_send_params.rbi +4 -4
- data/rbi/sentdm/models/message_send_response.rbi +135 -8
- data/rbi/sentdm/models/number_lookup_response.rbi +135 -8
- data/rbi/sentdm/models/profile_complete_response.rbi +137 -8
- data/rbi/sentdm/models/profile_create_params.rbi +810 -12
- data/rbi/sentdm/models/profile_create_response.rbi +1439 -0
- data/rbi/sentdm/models/profile_delete_params.rbi +19 -2
- data/rbi/sentdm/models/profile_list_response.rbi +1400 -14
- data/rbi/sentdm/models/profile_retrieve_response.rbi +1443 -0
- data/rbi/sentdm/models/profile_update_params.rbi +810 -12
- data/rbi/sentdm/models/profile_update_response.rbi +1439 -0
- data/rbi/sentdm/models/profiles/campaign_create_params.rbi +289 -4
- data/rbi/sentdm/models/profiles/campaign_create_response.rbi +814 -0
- data/rbi/sentdm/models/profiles/campaign_delete_params.rbi +14 -1
- data/rbi/sentdm/models/profiles/campaign_list_response.rbi +733 -11
- data/rbi/sentdm/models/profiles/campaign_update_params.rbi +289 -4
- data/rbi/sentdm/models/profiles/campaign_update_response.rbi +814 -0
- data/rbi/sentdm/models/template_create_params.rbi +1701 -4
- data/rbi/sentdm/models/template_create_response.rbi +339 -0
- data/rbi/sentdm/models/template_list_response.rbi +454 -16
- data/rbi/sentdm/models/template_retrieve_response.rbi +345 -0
- data/rbi/sentdm/models/template_update_params.rbi +1701 -4
- data/rbi/sentdm/models/template_update_response.rbi +339 -0
- data/rbi/sentdm/models/user_invite_response.rbi +323 -0
- data/rbi/sentdm/models/user_list_response.rbi +271 -14
- data/rbi/sentdm/models/user_remove_params.rbi +19 -2
- data/rbi/sentdm/models/user_retrieve_response.rbi +323 -0
- data/rbi/sentdm/models/user_update_role_response.rbi +328 -0
- data/rbi/sentdm/models/webhook_create_response.rbi +348 -0
- data/rbi/sentdm/models/webhook_list_event_types_response.rbi +247 -12
- data/rbi/sentdm/models/webhook_list_events_response.rbi +314 -12
- data/rbi/sentdm/models/webhook_list_response.rbi +462 -16
- data/rbi/sentdm/models/webhook_retrieve_response.rbi +350 -0
- data/rbi/sentdm/models/webhook_rotate_secret_params.rbi +14 -1
- data/rbi/sentdm/models/webhook_rotate_secret_response.rbi +148 -8
- data/rbi/sentdm/models/webhook_test_response.rbi +135 -8
- data/rbi/sentdm/models/webhook_toggle_status_response.rbi +366 -0
- data/rbi/sentdm/models/webhook_update_response.rbi +348 -0
- data/rbi/sentdm/models.rbi +0 -77
- data/rbi/sentdm/resources/contacts.rbi +5 -12
- data/rbi/sentdm/resources/messages.rbi +2 -2
- data/rbi/sentdm/resources/profiles/campaigns.rbi +4 -4
- data/rbi/sentdm/resources/profiles.rbi +13 -9
- data/rbi/sentdm/resources/templates.rbi +6 -5
- data/rbi/sentdm/resources/users.rbi +3 -3
- data/rbi/sentdm/resources/webhooks.rbi +4 -4
- data/sig/sentdm/models/contact_create_response.rbs +209 -0
- data/sig/sentdm/models/contact_delete_params.rbs +10 -6
- data/sig/sentdm/models/contact_list_response.rbs +256 -20
- data/sig/sentdm/models/contact_retrieve_response.rbs +209 -0
- data/sig/sentdm/models/contact_update_params.rbs +0 -5
- data/sig/sentdm/models/contact_update_response.rbs +209 -0
- data/sig/sentdm/models/me_retrieve_response.rbs +176 -18
- data/sig/sentdm/models/message_retrieve_activities_response.rbs +71 -9
- data/sig/sentdm/models/message_retrieve_status_response.rbs +95 -13
- data/sig/sentdm/models/message_send_response.rbs +71 -9
- data/sig/sentdm/models/number_lookup_response.rbs +71 -9
- data/sig/sentdm/models/profile_complete_response.rbs +71 -9
- data/sig/sentdm/models/profile_create_params.rbs +363 -12
- data/sig/sentdm/models/profile_create_response.rbs +662 -0
- data/sig/sentdm/models/profile_delete_params.rbs +10 -6
- data/sig/sentdm/models/profile_list_response.rbs +645 -15
- data/sig/sentdm/models/profile_retrieve_response.rbs +662 -0
- data/sig/sentdm/models/profile_update_params.rbs +363 -12
- data/sig/sentdm/models/profile_update_response.rbs +662 -0
- data/sig/sentdm/models/profiles/campaign_create_params.rbs +138 -4
- data/sig/sentdm/models/profiles/campaign_create_response.rbs +424 -0
- data/sig/sentdm/models/profiles/campaign_delete_params.rbs +15 -8
- data/sig/sentdm/models/profiles/campaign_list_response.rbs +396 -13
- data/sig/sentdm/models/profiles/campaign_update_params.rbs +138 -4
- data/sig/sentdm/models/profiles/campaign_update_response.rbs +424 -0
- data/sig/sentdm/models/template_create_params.rbs +853 -6
- data/sig/sentdm/models/template_create_response.rbs +177 -0
- data/sig/sentdm/models/template_list_response.rbs +225 -19
- data/sig/sentdm/models/template_retrieve_response.rbs +177 -0
- data/sig/sentdm/models/template_update_params.rbs +851 -4
- data/sig/sentdm/models/template_update_response.rbs +177 -0
- data/sig/sentdm/models/user_invite_response.rbs +170 -0
- data/sig/sentdm/models/user_list_response.rbs +151 -15
- data/sig/sentdm/models/user_remove_params.rbs +10 -6
- data/sig/sentdm/models/user_retrieve_response.rbs +170 -0
- data/sig/sentdm/models/user_update_role_response.rbs +170 -0
- data/sig/sentdm/models/webhook_create_response.rbs +201 -0
- data/sig/sentdm/models/webhook_list_event_types_response.rbs +130 -15
- data/sig/sentdm/models/webhook_list_events_response.rbs +142 -14
- data/sig/sentdm/models/webhook_list_response.rbs +248 -20
- data/sig/sentdm/models/webhook_retrieve_response.rbs +201 -0
- data/sig/sentdm/models/webhook_rotate_secret_params.rbs +17 -8
- data/sig/sentdm/models/webhook_rotate_secret_response.rbs +71 -9
- data/sig/sentdm/models/webhook_test_response.rbs +71 -9
- data/sig/sentdm/models/webhook_toggle_status_response.rbs +201 -0
- data/sig/sentdm/models/webhook_update_response.rbs +201 -0
- data/sig/sentdm/models.rbs +0 -68
- data/sig/sentdm/resources/contacts.rbs +3 -4
- data/sig/sentdm/resources/profiles/campaigns.rbs +4 -4
- data/sig/sentdm/resources/profiles.rbs +9 -9
- data/sig/sentdm/resources/templates.rbs +5 -5
- data/sig/sentdm/resources/users.rbs +3 -3
- data/sig/sentdm/resources/webhooks.rbs +4 -4
- metadata +56 -122
- data/lib/sentdm/models/api_meta.rb +0 -34
- data/lib/sentdm/models/api_response_of_contact.rb +0 -46
- data/lib/sentdm/models/api_response_of_profile_detail.rb +0 -43
- data/lib/sentdm/models/api_response_of_user.rb +0 -43
- data/lib/sentdm/models/api_response_template.rb +0 -43
- data/lib/sentdm/models/api_response_webhook.rb +0 -43
- data/lib/sentdm/models/billing_contact_info.rb +0 -47
- data/lib/sentdm/models/brands_brand_data.rb +0 -38
- data/lib/sentdm/models/contact_response.rb +0 -136
- data/lib/sentdm/models/destination_country.rb +0 -21
- data/lib/sentdm/models/error_detail.rb +0 -42
- data/lib/sentdm/models/mutation_request.rb +0 -20
- data/lib/sentdm/models/pagination_meta.rb +0 -80
- data/lib/sentdm/models/payment_details.rb +0 -44
- data/lib/sentdm/models/profile_detail.rb +0 -605
- data/lib/sentdm/models/profile_settings.rb +0 -66
- data/lib/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rb +0 -45
- data/lib/sentdm/models/profiles/base_dto.rb +0 -32
- data/lib/sentdm/models/profiles/campaign_data.rb +0 -123
- data/lib/sentdm/models/profiles/messaging_use_case_us.rb +0 -28
- data/lib/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rb +0 -29
- data/lib/sentdm/models/profiles/tcr_campaign_with_use_cases.rb +0 -236
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rb +0 -34
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rb +0 -40
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rb +0 -38
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rb +0 -81
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rb +0 -34
- data/lib/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rb +0 -39
- data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rb +0 -116
- data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rb +0 -75
- data/lib/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rb +0 -58
- data/lib/sentdm/models/tcr_brand_relationship.rb +0 -18
- data/lib/sentdm/models/tcr_vertical.rb +0 -36
- data/lib/sentdm/models/template.rb +0 -90
- data/lib/sentdm/models/template_body_content.rb +0 -27
- data/lib/sentdm/models/template_definition.rb +0 -66
- data/lib/sentdm/models/template_variable.rb +0 -80
- data/lib/sentdm/models/user_response.rb +0 -82
- data/lib/sentdm/models/webhook_event_type.rb +0 -45
- data/lib/sentdm/models/webhook_response.rb +0 -95
- data/rbi/sentdm/models/api_meta.rbi +0 -55
- data/rbi/sentdm/models/api_response_of_contact.rbi +0 -74
- data/rbi/sentdm/models/api_response_of_profile_detail.rbi +0 -74
- data/rbi/sentdm/models/api_response_of_user.rbi +0 -74
- data/rbi/sentdm/models/api_response_template.rbi +0 -74
- data/rbi/sentdm/models/api_response_webhook.rbi +0 -74
- data/rbi/sentdm/models/billing_contact_info.rbi +0 -65
- data/rbi/sentdm/models/brands_brand_data.rbi +0 -104
- data/rbi/sentdm/models/contact_response.rbi +0 -195
- data/rbi/sentdm/models/destination_country.rbi +0 -32
- data/rbi/sentdm/models/error_detail.rbi +0 -66
- data/rbi/sentdm/models/mutation_request.rbi +0 -32
- data/rbi/sentdm/models/pagination_meta.rbi +0 -135
- data/rbi/sentdm/models/payment_details.rbi +0 -59
- data/rbi/sentdm/models/profile_detail.rbi +0 -874
- data/rbi/sentdm/models/profile_settings.rbi +0 -86
- data/rbi/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rbi +0 -83
- data/rbi/sentdm/models/profiles/base_dto.rbi +0 -53
- data/rbi/sentdm/models/profiles/campaign_data.rbi +0 -148
- data/rbi/sentdm/models/profiles/messaging_use_case_us.rbi +0 -73
- data/rbi/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbi +0 -51
- data/rbi/sentdm/models/profiles/tcr_campaign_with_use_cases.rbi +0 -410
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbi +0 -56
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbi +0 -76
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbi +0 -72
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbi +0 -104
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbi +0 -57
- data/rbi/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbi +0 -59
- data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rbi +0 -180
- data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rbi +0 -95
- data/rbi/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rbi +0 -81
- data/rbi/sentdm/models/tcr_brand_relationship.rbi +0 -30
- data/rbi/sentdm/models/tcr_vertical.rbi +0 -41
- data/rbi/sentdm/models/template.rbi +0 -129
- data/rbi/sentdm/models/template_body_content.rbi +0 -43
- data/rbi/sentdm/models/template_definition.rbi +0 -164
- data/rbi/sentdm/models/template_variable.rbi +0 -120
- data/rbi/sentdm/models/user_response.rbi +0 -118
- data/rbi/sentdm/models/webhook_event_type.rbi +0 -74
- data/rbi/sentdm/models/webhook_response.rbi +0 -140
- data/sig/sentdm/models/api_meta.rbs +0 -27
- data/sig/sentdm/models/api_response_of_contact.rbs +0 -39
- data/sig/sentdm/models/api_response_of_profile_detail.rbs +0 -39
- data/sig/sentdm/models/api_response_of_user.rbs +0 -39
- data/sig/sentdm/models/api_response_template.rbs +0 -39
- data/sig/sentdm/models/api_response_webhook.rbs +0 -39
- data/sig/sentdm/models/billing_contact_info.rbs +0 -30
- data/sig/sentdm/models/brands_brand_data.rbs +0 -30
- data/sig/sentdm/models/contact_response.rbs +0 -116
- data/sig/sentdm/models/destination_country.rbs +0 -19
- data/sig/sentdm/models/error_detail.rbs +0 -39
- data/sig/sentdm/models/mutation_request.rbs +0 -15
- data/sig/sentdm/models/pagination_meta.rbs +0 -67
- data/sig/sentdm/models/payment_details.rbs +0 -30
- data/sig/sentdm/models/profile_detail.rbs +0 -474
- data/sig/sentdm/models/profile_settings.rbs +0 -50
- data/sig/sentdm/models/profiles/api_response_of_tcr_campaign_with_use_cases.rbs +0 -41
- data/sig/sentdm/models/profiles/base_dto.rbs +0 -27
- data/sig/sentdm/models/profiles/campaign_data.rbs +0 -82
- data/sig/sentdm/models/profiles/messaging_use_case_us.rbs +0 -40
- data/sig/sentdm/models/profiles/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_campaigns_campaign_use_case_data.rbs +0 -27
- data/sig/sentdm/models/profiles/tcr_campaign_with_use_cases.rbs +0 -285
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_authentication_config.rbs +0 -24
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_body.rbs +0 -30
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button.rbs +0 -32
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_button_props.rbs +0 -75
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_footer.rbs +0 -30
- data/sig/sentdm/models/sent_dm_services_common_contracts_poc_os_template_header.rbs +0 -30
- data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_business_info.rbs +0 -89
- data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_compliance_info.rbs +0 -55
- data/sig/sentdm/models/sent_dm_services_endpoints_customer_ap_iv3_contracts_requests_brands_brand_contact_info.rbs +0 -45
- data/sig/sentdm/models/tcr_brand_relationship.rbs +0 -22
- data/sig/sentdm/models/tcr_vertical.rbs +0 -58
- data/sig/sentdm/models/template.rbs +0 -79
- data/sig/sentdm/models/template_body_content.rbs +0 -30
- data/sig/sentdm/models/template_definition.rbs +0 -45
- data/sig/sentdm/models/template_variable.rbs +0 -84
- data/sig/sentdm/models/user_response.rbs +0 -72
- data/sig/sentdm/models/webhook_event_type.rbs +0 -51
- data/sig/sentdm/models/webhook_response.rbs +0 -103
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Sentdm
|
|
4
|
-
module Models
|
|
5
|
-
class BillingContactInfo < Sentdm::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(Sentdm::BillingContactInfo, Sentdm::Internal::AnyHash)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# Email address where invoices will be sent (required)
|
|
12
|
-
sig { returns(String) }
|
|
13
|
-
attr_accessor :email
|
|
14
|
-
|
|
15
|
-
# Full name of the billing contact or company (required)
|
|
16
|
-
sig { returns(String) }
|
|
17
|
-
attr_accessor :name
|
|
18
|
-
|
|
19
|
-
# Billing address (optional). Free-form text including street, city, state, postal
|
|
20
|
-
# code, and country.
|
|
21
|
-
sig { returns(T.nilable(String)) }
|
|
22
|
-
attr_accessor :address
|
|
23
|
-
|
|
24
|
-
# Phone number for the billing contact (optional)
|
|
25
|
-
sig { returns(T.nilable(String)) }
|
|
26
|
-
attr_accessor :phone
|
|
27
|
-
|
|
28
|
-
# Billing contact information for a profile. Required when billing_model is
|
|
29
|
-
# "profile" or "profile_and_organization".
|
|
30
|
-
sig do
|
|
31
|
-
params(
|
|
32
|
-
email: String,
|
|
33
|
-
name: String,
|
|
34
|
-
address: T.nilable(String),
|
|
35
|
-
phone: T.nilable(String)
|
|
36
|
-
).returns(T.attached_class)
|
|
37
|
-
end
|
|
38
|
-
def self.new(
|
|
39
|
-
# Email address where invoices will be sent (required)
|
|
40
|
-
email:,
|
|
41
|
-
# Full name of the billing contact or company (required)
|
|
42
|
-
name:,
|
|
43
|
-
# Billing address (optional). Free-form text including street, city, state, postal
|
|
44
|
-
# code, and country.
|
|
45
|
-
address: nil,
|
|
46
|
-
# Phone number for the billing contact (optional)
|
|
47
|
-
phone: nil
|
|
48
|
-
)
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
sig do
|
|
52
|
-
override.returns(
|
|
53
|
-
{
|
|
54
|
-
email: String,
|
|
55
|
-
name: String,
|
|
56
|
-
address: T.nilable(String),
|
|
57
|
-
phone: T.nilable(String)
|
|
58
|
-
}
|
|
59
|
-
)
|
|
60
|
-
end
|
|
61
|
-
def to_hash
|
|
62
|
-
end
|
|
63
|
-
end
|
|
64
|
-
end
|
|
65
|
-
end
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Sentdm
|
|
4
|
-
module Models
|
|
5
|
-
class BrandsBrandData < Sentdm::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(Sentdm::BrandsBrandData, Sentdm::Internal::AnyHash)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# Compliance and TCR information for brand registration
|
|
12
|
-
sig do
|
|
13
|
-
returns(
|
|
14
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandComplianceInfo
|
|
15
|
-
)
|
|
16
|
-
end
|
|
17
|
-
attr_reader :compliance
|
|
18
|
-
|
|
19
|
-
sig do
|
|
20
|
-
params(
|
|
21
|
-
compliance:
|
|
22
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandComplianceInfo::OrHash
|
|
23
|
-
).void
|
|
24
|
-
end
|
|
25
|
-
attr_writer :compliance
|
|
26
|
-
|
|
27
|
-
# Contact information for brand KYC
|
|
28
|
-
sig do
|
|
29
|
-
returns(
|
|
30
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandContactInfo
|
|
31
|
-
)
|
|
32
|
-
end
|
|
33
|
-
attr_reader :contact
|
|
34
|
-
|
|
35
|
-
sig do
|
|
36
|
-
params(
|
|
37
|
-
contact:
|
|
38
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandContactInfo::OrHash
|
|
39
|
-
).void
|
|
40
|
-
end
|
|
41
|
-
attr_writer :contact
|
|
42
|
-
|
|
43
|
-
# Business details and address for brand KYC
|
|
44
|
-
sig do
|
|
45
|
-
returns(
|
|
46
|
-
T.nilable(
|
|
47
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandBusinessInfo
|
|
48
|
-
)
|
|
49
|
-
)
|
|
50
|
-
end
|
|
51
|
-
attr_reader :business
|
|
52
|
-
|
|
53
|
-
sig do
|
|
54
|
-
params(
|
|
55
|
-
business:
|
|
56
|
-
T.nilable(
|
|
57
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandBusinessInfo::OrHash
|
|
58
|
-
)
|
|
59
|
-
).void
|
|
60
|
-
end
|
|
61
|
-
attr_writer :business
|
|
62
|
-
|
|
63
|
-
# Brand and KYC data grouped into contact, business, and compliance sections
|
|
64
|
-
sig do
|
|
65
|
-
params(
|
|
66
|
-
compliance:
|
|
67
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandComplianceInfo::OrHash,
|
|
68
|
-
contact:
|
|
69
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandContactInfo::OrHash,
|
|
70
|
-
business:
|
|
71
|
-
T.nilable(
|
|
72
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandBusinessInfo::OrHash
|
|
73
|
-
)
|
|
74
|
-
).returns(T.attached_class)
|
|
75
|
-
end
|
|
76
|
-
def self.new(
|
|
77
|
-
# Compliance and TCR information for brand registration
|
|
78
|
-
compliance:,
|
|
79
|
-
# Contact information for brand KYC
|
|
80
|
-
contact:,
|
|
81
|
-
# Business details and address for brand KYC
|
|
82
|
-
business: nil
|
|
83
|
-
)
|
|
84
|
-
end
|
|
85
|
-
|
|
86
|
-
sig do
|
|
87
|
-
override.returns(
|
|
88
|
-
{
|
|
89
|
-
compliance:
|
|
90
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandComplianceInfo,
|
|
91
|
-
contact:
|
|
92
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandContactInfo,
|
|
93
|
-
business:
|
|
94
|
-
T.nilable(
|
|
95
|
-
Sentdm::SentDmServicesEndpointsCustomerApIv3ContractsRequestsBrandsBrandBusinessInfo
|
|
96
|
-
)
|
|
97
|
-
}
|
|
98
|
-
)
|
|
99
|
-
end
|
|
100
|
-
def to_hash
|
|
101
|
-
end
|
|
102
|
-
end
|
|
103
|
-
end
|
|
104
|
-
end
|
|
@@ -1,195 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Sentdm
|
|
4
|
-
module Models
|
|
5
|
-
class ContactResponse < Sentdm::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(Sentdm::ContactResponse, Sentdm::Internal::AnyHash)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# Unique identifier for the contact
|
|
12
|
-
sig { returns(T.nilable(String)) }
|
|
13
|
-
attr_reader :id
|
|
14
|
-
|
|
15
|
-
sig { params(id: String).void }
|
|
16
|
-
attr_writer :id
|
|
17
|
-
|
|
18
|
-
# Comma-separated list of available messaging channels (e.g., "sms,whatsapp")
|
|
19
|
-
sig { returns(T.nilable(String)) }
|
|
20
|
-
attr_reader :available_channels
|
|
21
|
-
|
|
22
|
-
sig { params(available_channels: String).void }
|
|
23
|
-
attr_writer :available_channels
|
|
24
|
-
|
|
25
|
-
# Consent status by channel. Keys: "sms", "whatsapp". Values: "opted_in",
|
|
26
|
-
# "opted_out". All channels will have the same status because consent is global
|
|
27
|
-
# across channels. A STOP on any channel opts out of all channels; a START opts in
|
|
28
|
-
# to all.
|
|
29
|
-
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
30
|
-
attr_accessor :channel_consent
|
|
31
|
-
|
|
32
|
-
# Country calling code (e.g., 1 for US/Canada)
|
|
33
|
-
sig { returns(T.nilable(String)) }
|
|
34
|
-
attr_reader :country_code
|
|
35
|
-
|
|
36
|
-
sig { params(country_code: String).void }
|
|
37
|
-
attr_writer :country_code
|
|
38
|
-
|
|
39
|
-
# When the contact was created
|
|
40
|
-
sig { returns(T.nilable(Time)) }
|
|
41
|
-
attr_reader :created_at
|
|
42
|
-
|
|
43
|
-
sig { params(created_at: Time).void }
|
|
44
|
-
attr_writer :created_at
|
|
45
|
-
|
|
46
|
-
# Default messaging channel to use (e.g., "sms" or "whatsapp")
|
|
47
|
-
sig { returns(T.nilable(String)) }
|
|
48
|
-
attr_reader :default_channel
|
|
49
|
-
|
|
50
|
-
sig { params(default_channel: String).void }
|
|
51
|
-
attr_writer :default_channel
|
|
52
|
-
|
|
53
|
-
# Phone number in E.164 format (e.g., +1234567890)
|
|
54
|
-
sig { returns(T.nilable(String)) }
|
|
55
|
-
attr_reader :format_e164
|
|
56
|
-
|
|
57
|
-
sig { params(format_e164: String).void }
|
|
58
|
-
attr_writer :format_e164
|
|
59
|
-
|
|
60
|
-
# Phone number in international format (e.g., +1 234-567-890)
|
|
61
|
-
sig { returns(T.nilable(String)) }
|
|
62
|
-
attr_reader :format_international
|
|
63
|
-
|
|
64
|
-
sig { params(format_international: String).void }
|
|
65
|
-
attr_writer :format_international
|
|
66
|
-
|
|
67
|
-
# Phone number in national format (e.g., (234) 567-890)
|
|
68
|
-
sig { returns(T.nilable(String)) }
|
|
69
|
-
attr_reader :format_national
|
|
70
|
-
|
|
71
|
-
sig { params(format_national: String).void }
|
|
72
|
-
attr_writer :format_national
|
|
73
|
-
|
|
74
|
-
# Phone number in RFC 3966 format (e.g., tel:+1-234-567-890)
|
|
75
|
-
sig { returns(T.nilable(String)) }
|
|
76
|
-
attr_reader :format_rfc
|
|
77
|
-
|
|
78
|
-
sig { params(format_rfc: String).void }
|
|
79
|
-
attr_writer :format_rfc
|
|
80
|
-
|
|
81
|
-
# Whether this is an inherited contact (read-only)
|
|
82
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
83
|
-
attr_reader :is_inherited
|
|
84
|
-
|
|
85
|
-
sig { params(is_inherited: T::Boolean).void }
|
|
86
|
-
attr_writer :is_inherited
|
|
87
|
-
|
|
88
|
-
# Whether the contact has opted out of messaging
|
|
89
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
90
|
-
attr_reader :opt_out
|
|
91
|
-
|
|
92
|
-
sig { params(opt_out: T::Boolean).void }
|
|
93
|
-
attr_writer :opt_out
|
|
94
|
-
|
|
95
|
-
# Phone number in original format
|
|
96
|
-
sig { returns(T.nilable(String)) }
|
|
97
|
-
attr_reader :phone_number
|
|
98
|
-
|
|
99
|
-
sig { params(phone_number: String).void }
|
|
100
|
-
attr_writer :phone_number
|
|
101
|
-
|
|
102
|
-
# ISO 3166-1 alpha-2 country code (e.g., US, CA, GB)
|
|
103
|
-
sig { returns(T.nilable(String)) }
|
|
104
|
-
attr_reader :region_code
|
|
105
|
-
|
|
106
|
-
sig { params(region_code: String).void }
|
|
107
|
-
attr_writer :region_code
|
|
108
|
-
|
|
109
|
-
# When the contact was last updated
|
|
110
|
-
sig { returns(T.nilable(Time)) }
|
|
111
|
-
attr_accessor :updated_at
|
|
112
|
-
|
|
113
|
-
# Contact response for v3 API Uses snake_case for JSON property names
|
|
114
|
-
sig do
|
|
115
|
-
params(
|
|
116
|
-
id: String,
|
|
117
|
-
available_channels: String,
|
|
118
|
-
channel_consent: T.nilable(T::Hash[Symbol, String]),
|
|
119
|
-
country_code: String,
|
|
120
|
-
created_at: Time,
|
|
121
|
-
default_channel: String,
|
|
122
|
-
format_e164: String,
|
|
123
|
-
format_international: String,
|
|
124
|
-
format_national: String,
|
|
125
|
-
format_rfc: String,
|
|
126
|
-
is_inherited: T::Boolean,
|
|
127
|
-
opt_out: T::Boolean,
|
|
128
|
-
phone_number: String,
|
|
129
|
-
region_code: String,
|
|
130
|
-
updated_at: T.nilable(Time)
|
|
131
|
-
).returns(T.attached_class)
|
|
132
|
-
end
|
|
133
|
-
def self.new(
|
|
134
|
-
# Unique identifier for the contact
|
|
135
|
-
id: nil,
|
|
136
|
-
# Comma-separated list of available messaging channels (e.g., "sms,whatsapp")
|
|
137
|
-
available_channels: nil,
|
|
138
|
-
# Consent status by channel. Keys: "sms", "whatsapp". Values: "opted_in",
|
|
139
|
-
# "opted_out". All channels will have the same status because consent is global
|
|
140
|
-
# across channels. A STOP on any channel opts out of all channels; a START opts in
|
|
141
|
-
# to all.
|
|
142
|
-
channel_consent: nil,
|
|
143
|
-
# Country calling code (e.g., 1 for US/Canada)
|
|
144
|
-
country_code: nil,
|
|
145
|
-
# When the contact was created
|
|
146
|
-
created_at: nil,
|
|
147
|
-
# Default messaging channel to use (e.g., "sms" or "whatsapp")
|
|
148
|
-
default_channel: nil,
|
|
149
|
-
# Phone number in E.164 format (e.g., +1234567890)
|
|
150
|
-
format_e164: nil,
|
|
151
|
-
# Phone number in international format (e.g., +1 234-567-890)
|
|
152
|
-
format_international: nil,
|
|
153
|
-
# Phone number in national format (e.g., (234) 567-890)
|
|
154
|
-
format_national: nil,
|
|
155
|
-
# Phone number in RFC 3966 format (e.g., tel:+1-234-567-890)
|
|
156
|
-
format_rfc: nil,
|
|
157
|
-
# Whether this is an inherited contact (read-only)
|
|
158
|
-
is_inherited: nil,
|
|
159
|
-
# Whether the contact has opted out of messaging
|
|
160
|
-
opt_out: nil,
|
|
161
|
-
# Phone number in original format
|
|
162
|
-
phone_number: nil,
|
|
163
|
-
# ISO 3166-1 alpha-2 country code (e.g., US, CA, GB)
|
|
164
|
-
region_code: nil,
|
|
165
|
-
# When the contact was last updated
|
|
166
|
-
updated_at: nil
|
|
167
|
-
)
|
|
168
|
-
end
|
|
169
|
-
|
|
170
|
-
sig do
|
|
171
|
-
override.returns(
|
|
172
|
-
{
|
|
173
|
-
id: String,
|
|
174
|
-
available_channels: String,
|
|
175
|
-
channel_consent: T.nilable(T::Hash[Symbol, String]),
|
|
176
|
-
country_code: String,
|
|
177
|
-
created_at: Time,
|
|
178
|
-
default_channel: String,
|
|
179
|
-
format_e164: String,
|
|
180
|
-
format_international: String,
|
|
181
|
-
format_national: String,
|
|
182
|
-
format_rfc: String,
|
|
183
|
-
is_inherited: T::Boolean,
|
|
184
|
-
opt_out: T::Boolean,
|
|
185
|
-
phone_number: String,
|
|
186
|
-
region_code: String,
|
|
187
|
-
updated_at: T.nilable(Time)
|
|
188
|
-
}
|
|
189
|
-
)
|
|
190
|
-
end
|
|
191
|
-
def to_hash
|
|
192
|
-
end
|
|
193
|
-
end
|
|
194
|
-
end
|
|
195
|
-
end
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Sentdm
|
|
4
|
-
module Models
|
|
5
|
-
class DestinationCountry < Sentdm::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(Sentdm::DestinationCountry, Sentdm::Internal::AnyHash)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
sig { returns(T.nilable(String)) }
|
|
12
|
-
attr_reader :id
|
|
13
|
-
|
|
14
|
-
sig { params(id: String).void }
|
|
15
|
-
attr_writer :id
|
|
16
|
-
|
|
17
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
18
|
-
attr_reader :is_main
|
|
19
|
-
|
|
20
|
-
sig { params(is_main: T::Boolean).void }
|
|
21
|
-
attr_writer :is_main
|
|
22
|
-
|
|
23
|
-
sig { params(id: String, is_main: T::Boolean).returns(T.attached_class) }
|
|
24
|
-
def self.new(id: nil, is_main: nil)
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
sig { override.returns({ id: String, is_main: T::Boolean }) }
|
|
28
|
-
def to_hash
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
end
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Sentdm
|
|
4
|
-
module Models
|
|
5
|
-
class ErrorDetail < Sentdm::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias { T.any(Sentdm::ErrorDetail, Sentdm::Internal::AnyHash) }
|
|
8
|
-
|
|
9
|
-
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
10
|
-
sig { returns(T.nilable(String)) }
|
|
11
|
-
attr_reader :code
|
|
12
|
-
|
|
13
|
-
sig { params(code: String).void }
|
|
14
|
-
attr_writer :code
|
|
15
|
-
|
|
16
|
-
# Additional validation error details (field-level errors)
|
|
17
|
-
sig { returns(T.nilable(T::Hash[Symbol, T::Array[String]])) }
|
|
18
|
-
attr_accessor :details
|
|
19
|
-
|
|
20
|
-
# URL to documentation about this error
|
|
21
|
-
sig { returns(T.nilable(String)) }
|
|
22
|
-
attr_accessor :doc_url
|
|
23
|
-
|
|
24
|
-
# Human-readable error message
|
|
25
|
-
sig { returns(T.nilable(String)) }
|
|
26
|
-
attr_reader :message
|
|
27
|
-
|
|
28
|
-
sig { params(message: String).void }
|
|
29
|
-
attr_writer :message
|
|
30
|
-
|
|
31
|
-
# Error information
|
|
32
|
-
sig do
|
|
33
|
-
params(
|
|
34
|
-
code: String,
|
|
35
|
-
details: T.nilable(T::Hash[Symbol, T::Array[String]]),
|
|
36
|
-
doc_url: T.nilable(String),
|
|
37
|
-
message: String
|
|
38
|
-
).returns(T.attached_class)
|
|
39
|
-
end
|
|
40
|
-
def self.new(
|
|
41
|
-
# Machine-readable error code (e.g., "RESOURCE_001")
|
|
42
|
-
code: nil,
|
|
43
|
-
# Additional validation error details (field-level errors)
|
|
44
|
-
details: nil,
|
|
45
|
-
# URL to documentation about this error
|
|
46
|
-
doc_url: nil,
|
|
47
|
-
# Human-readable error message
|
|
48
|
-
message: nil
|
|
49
|
-
)
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
sig do
|
|
53
|
-
override.returns(
|
|
54
|
-
{
|
|
55
|
-
code: String,
|
|
56
|
-
details: T.nilable(T::Hash[Symbol, T::Array[String]]),
|
|
57
|
-
doc_url: T.nilable(String),
|
|
58
|
-
message: String
|
|
59
|
-
}
|
|
60
|
-
)
|
|
61
|
-
end
|
|
62
|
-
def to_hash
|
|
63
|
-
end
|
|
64
|
-
end
|
|
65
|
-
end
|
|
66
|
-
end
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Sentdm
|
|
4
|
-
module Models
|
|
5
|
-
class MutationRequest < Sentdm::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(Sentdm::MutationRequest, Sentdm::Internal::AnyHash)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
12
|
-
# for testing integrations without actual execution
|
|
13
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
14
|
-
attr_reader :sandbox
|
|
15
|
-
|
|
16
|
-
sig { params(sandbox: T::Boolean).void }
|
|
17
|
-
attr_writer :sandbox
|
|
18
|
-
|
|
19
|
-
sig { params(sandbox: T::Boolean).returns(T.attached_class) }
|
|
20
|
-
def self.new(
|
|
21
|
-
# Sandbox flag - when true, the operation is simulated without side effects Useful
|
|
22
|
-
# for testing integrations without actual execution
|
|
23
|
-
sandbox: nil
|
|
24
|
-
)
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
sig { override.returns({ sandbox: T::Boolean }) }
|
|
28
|
-
def to_hash
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
end
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Sentdm
|
|
4
|
-
module Models
|
|
5
|
-
class PaginationMeta < Sentdm::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(Sentdm::PaginationMeta, Sentdm::Internal::AnyHash)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# Cursor-based pagination pointers
|
|
12
|
-
sig { returns(T.nilable(Sentdm::PaginationMeta::Cursors)) }
|
|
13
|
-
attr_reader :cursors
|
|
14
|
-
|
|
15
|
-
sig do
|
|
16
|
-
params(cursors: T.nilable(Sentdm::PaginationMeta::Cursors::OrHash)).void
|
|
17
|
-
end
|
|
18
|
-
attr_writer :cursors
|
|
19
|
-
|
|
20
|
-
# Whether there are more pages after this one
|
|
21
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
22
|
-
attr_reader :has_more
|
|
23
|
-
|
|
24
|
-
sig { params(has_more: T::Boolean).void }
|
|
25
|
-
attr_writer :has_more
|
|
26
|
-
|
|
27
|
-
# Current page number (1-indexed)
|
|
28
|
-
sig { returns(T.nilable(Integer)) }
|
|
29
|
-
attr_reader :page
|
|
30
|
-
|
|
31
|
-
sig { params(page: Integer).void }
|
|
32
|
-
attr_writer :page
|
|
33
|
-
|
|
34
|
-
# Number of items per page
|
|
35
|
-
sig { returns(T.nilable(Integer)) }
|
|
36
|
-
attr_reader :page_size
|
|
37
|
-
|
|
38
|
-
sig { params(page_size: Integer).void }
|
|
39
|
-
attr_writer :page_size
|
|
40
|
-
|
|
41
|
-
# Total number of items across all pages
|
|
42
|
-
sig { returns(T.nilable(Integer)) }
|
|
43
|
-
attr_reader :total_count
|
|
44
|
-
|
|
45
|
-
sig { params(total_count: Integer).void }
|
|
46
|
-
attr_writer :total_count
|
|
47
|
-
|
|
48
|
-
# Total number of pages
|
|
49
|
-
sig { returns(T.nilable(Integer)) }
|
|
50
|
-
attr_reader :total_pages
|
|
51
|
-
|
|
52
|
-
sig { params(total_pages: Integer).void }
|
|
53
|
-
attr_writer :total_pages
|
|
54
|
-
|
|
55
|
-
# Pagination metadata for list responses
|
|
56
|
-
sig do
|
|
57
|
-
params(
|
|
58
|
-
cursors: T.nilable(Sentdm::PaginationMeta::Cursors::OrHash),
|
|
59
|
-
has_more: T::Boolean,
|
|
60
|
-
page: Integer,
|
|
61
|
-
page_size: Integer,
|
|
62
|
-
total_count: Integer,
|
|
63
|
-
total_pages: Integer
|
|
64
|
-
).returns(T.attached_class)
|
|
65
|
-
end
|
|
66
|
-
def self.new(
|
|
67
|
-
# Cursor-based pagination pointers
|
|
68
|
-
cursors: nil,
|
|
69
|
-
# Whether there are more pages after this one
|
|
70
|
-
has_more: nil,
|
|
71
|
-
# Current page number (1-indexed)
|
|
72
|
-
page: nil,
|
|
73
|
-
# Number of items per page
|
|
74
|
-
page_size: nil,
|
|
75
|
-
# Total number of items across all pages
|
|
76
|
-
total_count: nil,
|
|
77
|
-
# Total number of pages
|
|
78
|
-
total_pages: nil
|
|
79
|
-
)
|
|
80
|
-
end
|
|
81
|
-
|
|
82
|
-
sig do
|
|
83
|
-
override.returns(
|
|
84
|
-
{
|
|
85
|
-
cursors: T.nilable(Sentdm::PaginationMeta::Cursors),
|
|
86
|
-
has_more: T::Boolean,
|
|
87
|
-
page: Integer,
|
|
88
|
-
page_size: Integer,
|
|
89
|
-
total_count: Integer,
|
|
90
|
-
total_pages: Integer
|
|
91
|
-
}
|
|
92
|
-
)
|
|
93
|
-
end
|
|
94
|
-
def to_hash
|
|
95
|
-
end
|
|
96
|
-
|
|
97
|
-
class Cursors < Sentdm::Internal::Type::BaseModel
|
|
98
|
-
OrHash =
|
|
99
|
-
T.type_alias do
|
|
100
|
-
T.any(Sentdm::PaginationMeta::Cursors, Sentdm::Internal::AnyHash)
|
|
101
|
-
end
|
|
102
|
-
|
|
103
|
-
# Cursor to fetch the next page
|
|
104
|
-
sig { returns(T.nilable(String)) }
|
|
105
|
-
attr_accessor :after
|
|
106
|
-
|
|
107
|
-
# Cursor to fetch the previous page
|
|
108
|
-
sig { returns(T.nilable(String)) }
|
|
109
|
-
attr_accessor :before
|
|
110
|
-
|
|
111
|
-
# Cursor-based pagination pointers
|
|
112
|
-
sig do
|
|
113
|
-
params(after: T.nilable(String), before: T.nilable(String)).returns(
|
|
114
|
-
T.attached_class
|
|
115
|
-
)
|
|
116
|
-
end
|
|
117
|
-
def self.new(
|
|
118
|
-
# Cursor to fetch the next page
|
|
119
|
-
after: nil,
|
|
120
|
-
# Cursor to fetch the previous page
|
|
121
|
-
before: nil
|
|
122
|
-
)
|
|
123
|
-
end
|
|
124
|
-
|
|
125
|
-
sig do
|
|
126
|
-
override.returns(
|
|
127
|
-
{ after: T.nilable(String), before: T.nilable(String) }
|
|
128
|
-
)
|
|
129
|
-
end
|
|
130
|
-
def to_hash
|
|
131
|
-
end
|
|
132
|
-
end
|
|
133
|
-
end
|
|
134
|
-
end
|
|
135
|
-
end
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
# typed: strong
|
|
2
|
-
|
|
3
|
-
module Sentdm
|
|
4
|
-
module Models
|
|
5
|
-
class PaymentDetails < Sentdm::Internal::Type::BaseModel
|
|
6
|
-
OrHash =
|
|
7
|
-
T.type_alias do
|
|
8
|
-
T.any(Sentdm::PaymentDetails, Sentdm::Internal::AnyHash)
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# Card number (digits only, 13–19 characters)
|
|
12
|
-
sig { returns(String) }
|
|
13
|
-
attr_accessor :card_number
|
|
14
|
-
|
|
15
|
-
# Card security code (3–4 digits)
|
|
16
|
-
sig { returns(String) }
|
|
17
|
-
attr_accessor :cvc
|
|
18
|
-
|
|
19
|
-
# Card expiry date in MM/YY format (e.g. "09/27")
|
|
20
|
-
sig { returns(String) }
|
|
21
|
-
attr_accessor :expiry
|
|
22
|
-
|
|
23
|
-
# Billing ZIP / postal code associated with the card
|
|
24
|
-
sig { returns(String) }
|
|
25
|
-
attr_accessor :zip_code
|
|
26
|
-
|
|
27
|
-
# Payment card details for a profile. Accepted when billing_model is "profile" or
|
|
28
|
-
# "profile_and_organization". These details are not stored on our servers and will
|
|
29
|
-
# be forwarded to the payment processor.
|
|
30
|
-
sig do
|
|
31
|
-
params(
|
|
32
|
-
card_number: String,
|
|
33
|
-
cvc: String,
|
|
34
|
-
expiry: String,
|
|
35
|
-
zip_code: String
|
|
36
|
-
).returns(T.attached_class)
|
|
37
|
-
end
|
|
38
|
-
def self.new(
|
|
39
|
-
# Card number (digits only, 13–19 characters)
|
|
40
|
-
card_number:,
|
|
41
|
-
# Card security code (3–4 digits)
|
|
42
|
-
cvc:,
|
|
43
|
-
# Card expiry date in MM/YY format (e.g. "09/27")
|
|
44
|
-
expiry:,
|
|
45
|
-
# Billing ZIP / postal code associated with the card
|
|
46
|
-
zip_code:
|
|
47
|
-
)
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
sig do
|
|
51
|
-
override.returns(
|
|
52
|
-
{ card_number: String, cvc: String, expiry: String, zip_code: String }
|
|
53
|
-
)
|
|
54
|
-
end
|
|
55
|
-
def to_hash
|
|
56
|
-
end
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
end
|