wavix-ruby-sdk 1.0.0 → 1.1.1
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/.fern/metadata.json +3 -3
- data/.fern/replay.lock +16 -0
- data/.fernignore +3 -0
- data/lib/wavix/api_keys/client.rb +1 -1
- data/lib/wavix/billing/invoices/client.rb +2 -2
- data/lib/wavix/billing/transactions/client.rb +2 -2
- data/lib/wavix/buy/cities/client.rb +2 -2
- data/lib/wavix/buy/countries/client.rb +2 -2
- data/lib/wavix/buy/numbers/client.rb +2 -2
- data/lib/wavix/buy/region_cities/client.rb +2 -2
- data/lib/wavix/buy/regions/client.rb +2 -2
- data/lib/wavix/call_control/audio/client.rb +2 -1
- data/lib/wavix/call_control/client.rb +4 -3
- data/lib/wavix/call_control/streams/client.rb +3 -2
- data/lib/wavix/call_control/types/call_dtmf_collect_request_prompt_say.rb +3 -1
- data/lib/wavix/call_recording/client.rb +1 -1
- data/lib/wavix/call_webhooks/client.rb +2 -1
- data/lib/wavix/cart/client.rb +9 -9
- data/lib/wavix/cdrs/client.rb +2 -1
- data/lib/wavix/cdrs/types/cdr_search_request.rb +3 -3
- data/lib/wavix/client.rb +1 -1
- data/lib/wavix/number_validator/client.rb +6 -3
- data/lib/wavix/number_validator/types/phone_validation_request.rb +2 -2
- data/lib/wavix/numbers/client.rb +2 -2
- data/lib/wavix/profile/config/client.rb +2 -2
- data/lib/wavix/sms_and_mms/messages/client.rb +6 -6
- data/lib/wavix/sms_and_mms/opt_outs/client.rb +2 -2
- data/lib/wavix/sms_and_mms/sender_ids/client.rb +4 -3
- data/lib/wavix/speech_analytics/client.rb +4 -4
- data/lib/wavix/sub_accounts/client.rb +4 -0
- data/lib/wavix/sub_accounts/types/list_sub_accounts_request.rb +4 -0
- data/lib/wavix/sub_accounts/types/sub_accounts_update_request.rb +1 -1
- data/lib/wavix/ten_dlc/brand_appeals/client.rb +2 -2
- data/lib/wavix/ten_dlc/brand_appeals/types/create_brand_appeals_request.rb +1 -1
- data/lib/wavix/ten_dlc/brand_appeals/types/create_brand_appeals_request_appeal_categories_item.rb +17 -0
- data/lib/wavix/ten_dlc/brand_evidence/client.rb +4 -4
- data/lib/wavix/ten_dlc/brand_vetting_appeals/client.rb +2 -2
- data/lib/wavix/ten_dlc/brand_vetting_appeals/types/ten_dlc_brand_vetting_appeal_create_request.rb +1 -1
- data/lib/wavix/ten_dlc/brand_vetting_appeals/types/ten_dlc_brand_vetting_appeal_create_request_appeal_categories_item.rb +18 -0
- data/lib/wavix/ten_dlc/brand_vettings/client.rb +2 -1
- data/lib/wavix/ten_dlc/brands/client.rb +16 -14
- data/lib/wavix/ten_dlc/campaign_numbers/client.rb +6 -6
- data/lib/wavix/ten_dlc/campaigns/client.rb +12 -12
- data/lib/wavix/ten_dlc/campaigns/types/ten_dlc_campaign_create_request.rb +6 -6
- data/lib/wavix/ten_dlc/subscriptions/client.rb +4 -4
- data/lib/wavix/two_fa/verification/client.rb +11 -9
- data/lib/wavix/types/{document_type_id.rb → api_key_with_secret.rb} +2 -2
- data/lib/wavix/types/available_number.rb +1 -1
- data/lib/wavix/types/cart_response.rb +1 -1
- data/lib/wavix/types/cdr_transcription_response.rb +1 -1
- data/lib/wavix/types/document_type.rb +5 -5
- data/lib/wavix/types/document_type_info.rb +14 -0
- data/lib/wavix/types/file_transcription_response.rb +2 -2
- data/lib/wavix/types/message_body.rb +1 -1
- data/lib/wavix/types/number.rb +1 -1
- data/lib/wavix/types/number_document.rb +1 -1
- data/lib/wavix/types/number_list_response.rb +1 -1
- data/lib/wavix/types/sip_trunk_create_request.rb +1 -1
- data/lib/wavix/types/ten_dlc_brand.rb +1 -1
- data/lib/wavix/types/ten_dlc_brand_appeal_create_request.rb +1 -1
- data/lib/wavix/types/ten_dlc_brand_appeal_create_request_appeal_categories_item.rb +13 -0
- data/lib/wavix/types/ten_dlc_brand_appeal_outcome.rb +1 -1
- data/lib/wavix/types/{not_found_error_body.rb → too_many_requests_error_response.rb} +1 -1
- data/lib/wavix/types/transcription_filter.rb +3 -3
- data/lib/wavix/types/unprocessable_entity_error_body.rb +2 -2
- data/lib/wavix/types/whats_app_message.rb +19 -0
- data/lib/wavix/types/whats_app_message_get_response.rb +9 -0
- data/lib/wavix/types/whats_app_message_list_item.rb +21 -0
- data/lib/wavix/types/{file_transcription_response_status.rb → whats_app_message_list_item_direction.rb} +3 -3
- data/lib/wavix/types/whats_app_message_list_item_status.rb +17 -0
- data/lib/wavix/types/whats_app_message_list_response.rb +11 -0
- data/lib/wavix/types/whats_app_message_send_request.rb +13 -0
- data/lib/wavix/types/whats_app_message_send_request_template.rb +17 -0
- data/lib/wavix/types/whats_app_message_send_request_template_buttons_item.rb +9 -0
- data/lib/wavix/types/whats_app_message_send_request_template_buttons_item_type.rb +18 -0
- data/lib/wavix/types/whats_app_message_send_request_template_header.rb +24 -0
- data/lib/wavix/types/whats_app_message_send_request_template_header_type.rb +16 -0
- data/lib/wavix/types/whats_app_message_send_response.rb +9 -0
- data/lib/wavix/types/whats_app_message_status.rb +17 -0
- data/lib/wavix/types/whats_app_message_template.rb +12 -0
- data/lib/wavix/types/whats_app_problem.rb +22 -0
- data/lib/wavix/types/whats_app_problem_error_class.rb +14 -0
- data/lib/wavix/types/whats_app_sender.rb +17 -0
- data/lib/wavix/types/whats_app_sender_message_tier.rb +16 -0
- data/lib/wavix/types/whats_app_sender_quality_rating.rb +14 -0
- data/lib/wavix/types/whats_app_sender_status.rb +21 -0
- data/lib/wavix/types/whats_app_template.rb +25 -0
- data/lib/wavix/types/whats_app_template_category.rb +13 -0
- data/lib/wavix/types/whats_app_template_component.rb +18 -0
- data/lib/wavix/types/whats_app_template_component_format.rb +15 -0
- data/lib/wavix/types/whats_app_template_component_type.rb +14 -0
- data/lib/wavix/types/whats_app_template_create_request.rb +15 -0
- data/lib/wavix/types/whats_app_template_create_request_category.rb +13 -0
- data/lib/wavix/types/whats_app_template_list_response.rb +9 -0
- data/lib/wavix/types/whats_app_template_quality_rating.rb +14 -0
- data/lib/wavix/types/whats_app_template_response.rb +9 -0
- data/lib/wavix/types/whats_app_template_status.rb +21 -0
- data/lib/wavix/version.rb +1 -1
- data/lib/wavix/voice_campaigns/client.rb +2 -2
- data/lib/wavix/webrtc/tokens/client.rb +11 -3
- data/lib/wavix/webrtc/tokens/types/list_tokens_request.rb +15 -0
- data/lib/wavix/webrtc/tokens/types/web_rtc_token_create_request.rb +1 -1
- data/lib/wavix.rb +60 -83
- data/reference.md +114 -90
- metadata +42 -64
- data/lib/wavix/billing/invoices/types/list_invoices_response.rb +0 -17
- data/lib/wavix/billing/transactions/types/list_transactions_response.rb +0 -17
- data/lib/wavix/buy/cities/types/list_cities_response.rb +0 -13
- data/lib/wavix/buy/countries/types/list_countries_response.rb +0 -13
- data/lib/wavix/buy/numbers/types/list_numbers_response.rb +0 -15
- data/lib/wavix/buy/region_cities/types/list_region_cities_response.rb +0 -13
- data/lib/wavix/buy/regions/types/list_regions_response.rb +0 -13
- data/lib/wavix/cart/types/checkout_cart_response.rb +0 -11
- data/lib/wavix/cart/types/get_cart_response.rb +0 -13
- data/lib/wavix/cart/types/remove_cart_response.rb +0 -11
- data/lib/wavix/cdrs/types/cdr_search_request_disposition.rb +0 -17
- data/lib/wavix/number_validator/types/get_number_validator_response.rb +0 -43
- data/lib/wavix/numbers/types/delete_numbers_response.rb +0 -11
- data/lib/wavix/profile/config/types/get_config_response.rb +0 -15
- data/lib/wavix/sms_and_mms/messages/types/get_messages_response.rb +0 -45
- data/lib/wavix/sms_and_mms/messages/types/list_messages_response.rb +0 -15
- data/lib/wavix/sms_and_mms/opt_outs/types/create_opt_outs_response.rb +0 -13
- data/lib/wavix/sms_and_mms/sender_ids/types/delete_sender_ids_response.rb +0 -13
- data/lib/wavix/speech_analytics/types/create_speech_analytics_response.rb +0 -15
- data/lib/wavix/speech_analytics/types/get_speech_analytics_response.rb +0 -31
- data/lib/wavix/speech_analytics/types/get_speech_analytics_response_language.rb +0 -17
- data/lib/wavix/speech_analytics/types/get_speech_analytics_response_status.rb +0 -14
- data/lib/wavix/ten_dlc/brand_appeals/types/create_brand_appeals_response.rb +0 -13
- data/lib/wavix/ten_dlc/brand_evidence/types/delete_brand_evidence_response.rb +0 -13
- data/lib/wavix/ten_dlc/brand_evidence/types/upload_brand_evidence_response.rb +0 -19
- data/lib/wavix/ten_dlc/brand_vetting_appeals/types/create_brand_vetting_appeals_response.rb +0 -13
- data/lib/wavix/ten_dlc/brands/types/create_brands_response.rb +0 -61
- data/lib/wavix/ten_dlc/brands/types/create_brands_response_entity_type.rb +0 -18
- data/lib/wavix/ten_dlc/brands/types/create_brands_response_status.rb +0 -19
- data/lib/wavix/ten_dlc/brands/types/delete_brands_response.rb +0 -13
- data/lib/wavix/ten_dlc/brands/types/get_brands_response.rb +0 -61
- data/lib/wavix/ten_dlc/brands/types/get_brands_response_entity_type.rb +0 -18
- data/lib/wavix/ten_dlc/brands/types/get_brands_response_status.rb +0 -19
- data/lib/wavix/ten_dlc/brands/types/list_brands_response.rb +0 -16
- data/lib/wavix/ten_dlc/brands/types/list_brands_response_pagination.rb +0 -20
- data/lib/wavix/ten_dlc/brands/types/qualify_usecase_brands_response.rb +0 -17
- data/lib/wavix/ten_dlc/brands/types/update_brands_response.rb +0 -61
- data/lib/wavix/ten_dlc/brands/types/update_brands_response_entity_type.rb +0 -18
- data/lib/wavix/ten_dlc/brands/types/update_brands_response_status.rb +0 -19
- data/lib/wavix/ten_dlc/campaign_numbers/types/link_campaign_numbers_response.rb +0 -13
- data/lib/wavix/ten_dlc/campaign_numbers/types/list_campaign_numbers_response.rb +0 -17
- data/lib/wavix/ten_dlc/campaign_numbers/types/unlink_campaign_numbers_response.rb +0 -13
- data/lib/wavix/ten_dlc/campaigns/types/create_campaigns_response.rb +0 -89
- data/lib/wavix/ten_dlc/campaigns/types/delete_campaigns_response.rb +0 -13
- data/lib/wavix/ten_dlc/campaigns/types/get_campaigns_response.rb +0 -89
- data/lib/wavix/ten_dlc/campaigns/types/list_by_brand_campaigns_response.rb +0 -16
- data/lib/wavix/ten_dlc/campaigns/types/list_by_brand_campaigns_response_pagination.rb +0 -20
- data/lib/wavix/ten_dlc/campaigns/types/list_campaigns_response.rb +0 -16
- data/lib/wavix/ten_dlc/campaigns/types/list_campaigns_response_pagination.rb +0 -20
- data/lib/wavix/ten_dlc/campaigns/types/update_campaigns_response.rb +0 -89
- data/lib/wavix/ten_dlc/subscriptions/types/create_subscriptions_response.rb +0 -16
- data/lib/wavix/ten_dlc/subscriptions/types/delete_subscriptions_response.rb +0 -13
- data/lib/wavix/two_fa/verification/types/check_verification_response.rb +0 -13
- data/lib/wavix/two_fa/verification/types/create_verification_response.rb +0 -25
- data/lib/wavix/two_fa/verification/types/resend_verification_response.rb +0 -19
- data/lib/wavix/types/bad_request_error_body.rb +0 -11
- data/lib/wavix/types/file_transcription_response_language.rb +0 -15
- data/lib/wavix/types/ten_dlc_brand_appeal_outcome_vetting_status.rb +0 -15
- data/lib/wavix/types/ten_dlc_brand_status.rb +0 -15
|
@@ -5,7 +5,7 @@ module Wavix
|
|
|
5
5
|
class MessageBody < Internal::Types::Model
|
|
6
6
|
field :text, -> { String }, optional: false, nullable: false
|
|
7
7
|
|
|
8
|
-
field :media, -> { Internal::Types::Array[String] }, optional:
|
|
8
|
+
field :media, -> { Internal::Types::Array[String] }, optional: true, nullable: false
|
|
9
9
|
end
|
|
10
10
|
end
|
|
11
11
|
end
|
data/lib/wavix/types/number.rb
CHANGED
|
@@ -25,7 +25,7 @@ module Wavix
|
|
|
25
25
|
|
|
26
26
|
field :channels, -> { Integer }, optional: false, nullable: false
|
|
27
27
|
|
|
28
|
-
field :require_docs, -> { Internal::Types::Array[
|
|
28
|
+
field :require_docs, -> { Internal::Types::Array[Wavix::Types::DocumentType] }, optional: false, nullable: false
|
|
29
29
|
|
|
30
30
|
field :documents, -> { Internal::Types::Array[Wavix::Types::NumberDocument] }, optional: false, nullable: false
|
|
31
31
|
|
|
@@ -14,7 +14,7 @@ module Wavix
|
|
|
14
14
|
|
|
15
15
|
field :doc_file_name, -> { String }, optional: false, nullable: false
|
|
16
16
|
|
|
17
|
-
field :
|
|
17
|
+
field :doc_type, -> { Wavix::Types::DocumentType }, optional: false, nullable: true
|
|
18
18
|
|
|
19
19
|
field :status, -> { String }, optional: false, nullable: false
|
|
20
20
|
|
|
@@ -5,7 +5,7 @@ module Wavix
|
|
|
5
5
|
class NumberListResponse < Internal::Types::Model
|
|
6
6
|
field :items, -> { Internal::Types::Array[Wavix::Types::Number] }, optional: false, nullable: false
|
|
7
7
|
|
|
8
|
-
field :doc_types, -> { Internal::Types::Array[Wavix::Types::
|
|
8
|
+
field :doc_types, -> { Internal::Types::Array[Wavix::Types::DocumentTypeInfo] }, optional: false, nullable: false
|
|
9
9
|
|
|
10
10
|
field :pagination, -> { Wavix::Types::Pagination }, optional: false, nullable: false
|
|
11
11
|
end
|
|
@@ -23,7 +23,7 @@ module Wavix
|
|
|
23
23
|
|
|
24
24
|
field :call_limit, -> { Integer }, optional: true, nullable: false
|
|
25
25
|
|
|
26
|
-
field :cost_limit, -> { Internal::Types::Boolean }, optional:
|
|
26
|
+
field :cost_limit, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
27
27
|
|
|
28
28
|
field :max_call_cost, -> { Integer }, optional: true, nullable: false
|
|
29
29
|
|
|
@@ -19,7 +19,7 @@ module Wavix
|
|
|
19
19
|
|
|
20
20
|
field :ein_taxid_country, -> { String }, optional: false, nullable: false
|
|
21
21
|
|
|
22
|
-
field :status, -> { Wavix::Types::
|
|
22
|
+
field :status, -> { Wavix::Types::TenDlcBrandIdentityVerificationStatus }, optional: false, nullable: false
|
|
23
23
|
|
|
24
24
|
field :website, -> { String }, optional: true, nullable: false
|
|
25
25
|
|
|
@@ -4,7 +4,7 @@ module Wavix
|
|
|
4
4
|
module Types
|
|
5
5
|
# Brand identity verification appeal details.
|
|
6
6
|
class TenDlcBrandAppealCreateRequest < Internal::Types::Model
|
|
7
|
-
field :appeal_categories, -> { Internal::Types::Array[
|
|
7
|
+
field :appeal_categories, -> { Internal::Types::Array[Wavix::Types::TenDlcBrandAppealCreateRequestAppealCategoriesItem] }, optional: false, nullable: false
|
|
8
8
|
|
|
9
9
|
field :evidence, -> { Internal::Types::Array[String] }, optional: false, nullable: false
|
|
10
10
|
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
module TenDlcBrandAppealCreateRequestAppealCategoriesItem
|
|
6
|
+
extend Wavix::Internal::Types::Enum
|
|
7
|
+
|
|
8
|
+
VERIFY_TAX_ID = "VERIFY_TAX_ID"
|
|
9
|
+
VERIFY_NON_PROFIT = "VERIFY_NON_PROFIT"
|
|
10
|
+
VERIFY_GOVERNMENT = "VERIFY_GOVERNMENT"
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -6,7 +6,7 @@ module Wavix
|
|
|
6
6
|
class TenDlcBrandAppealOutcome < Internal::Types::Model
|
|
7
7
|
field :optional_attributes, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: false
|
|
8
8
|
|
|
9
|
-
field :vetting_status, -> { Wavix::Types::
|
|
9
|
+
field :vetting_status, -> { Wavix::Types::TenDlcBrandIdentityVerificationStatus }, optional: false, nullable: false
|
|
10
10
|
|
|
11
11
|
field :feedback, -> { Wavix::Types::TenDlcBrandAppealOutcomeFeedback }, optional: false, nullable: false
|
|
12
12
|
end
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
module Wavix
|
|
4
4
|
module Types
|
|
5
|
-
class
|
|
5
|
+
class TooManyRequestsErrorResponse < Internal::Types::Model
|
|
6
6
|
field :success, -> { Internal::Types::Boolean }, optional: false, nullable: false
|
|
7
7
|
|
|
8
8
|
field :message, -> { String }, optional: false, nullable: false
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
module Wavix
|
|
4
4
|
module Types
|
|
5
5
|
class TranscriptionFilter < Internal::Types::Model
|
|
6
|
-
field :agent, -> { Wavix::Types::TranscriptionFilterAgent }, optional:
|
|
6
|
+
field :agent, -> { Wavix::Types::TranscriptionFilterAgent }, optional: true, nullable: false
|
|
7
7
|
|
|
8
|
-
field :client, -> { Wavix::Types::TranscriptionFilterClient }, optional:
|
|
8
|
+
field :client, -> { Wavix::Types::TranscriptionFilterClient }, optional: true, nullable: false
|
|
9
9
|
|
|
10
|
-
field :any, -> { Wavix::Types::TranscriptionFilterAny }, optional:
|
|
10
|
+
field :any, -> { Wavix::Types::TranscriptionFilterAny }, optional: true, nullable: false
|
|
11
11
|
end
|
|
12
12
|
end
|
|
13
13
|
end
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
module Wavix
|
|
4
4
|
module Types
|
|
5
5
|
class UnprocessableEntityErrorBody < Internal::Types::Model
|
|
6
|
-
field :
|
|
6
|
+
field :error, -> { String }, optional: true, nullable: false
|
|
7
7
|
|
|
8
|
-
field :
|
|
8
|
+
field :error_dids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
|
|
9
9
|
end
|
|
10
10
|
end
|
|
11
11
|
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
class WhatsAppMessage < Internal::Types::Model
|
|
6
|
+
field :uuid, -> { String }, optional: false, nullable: false
|
|
7
|
+
|
|
8
|
+
field :from, -> { String }, optional: false, nullable: false
|
|
9
|
+
|
|
10
|
+
field :to, -> { String }, optional: false, nullable: false
|
|
11
|
+
|
|
12
|
+
field :status, -> { Wavix::Types::WhatsAppMessageStatus }, optional: false, nullable: false
|
|
13
|
+
|
|
14
|
+
field :template, -> { Wavix::Types::WhatsAppMessageTemplate }, optional: true, nullable: false
|
|
15
|
+
|
|
16
|
+
field :created_at, -> { String }, optional: false, nullable: false
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
class WhatsAppMessageListItem < Internal::Types::Model
|
|
6
|
+
field :uuid, -> { String }, optional: false, nullable: false
|
|
7
|
+
|
|
8
|
+
field :direction, -> { Wavix::Types::WhatsAppMessageListItemDirection }, optional: false, nullable: false
|
|
9
|
+
|
|
10
|
+
field :status, -> { Wavix::Types::WhatsAppMessageListItemStatus }, optional: false, nullable: false
|
|
11
|
+
|
|
12
|
+
field :from, -> { String }, optional: false, nullable: false
|
|
13
|
+
|
|
14
|
+
field :to, -> { String }, optional: false, nullable: false
|
|
15
|
+
|
|
16
|
+
field :country, -> { String }, optional: true, nullable: false
|
|
17
|
+
|
|
18
|
+
field :created_at, -> { String }, optional: false, nullable: false
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
module Wavix
|
|
4
4
|
module Types
|
|
5
|
-
module
|
|
5
|
+
module WhatsAppMessageListItemDirection
|
|
6
6
|
extend Wavix::Internal::Types::Enum
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
OUTBOUND = "outbound"
|
|
9
|
+
INBOUND = "inbound"
|
|
10
10
|
end
|
|
11
11
|
end
|
|
12
12
|
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
module WhatsAppMessageListItemStatus
|
|
6
|
+
extend Wavix::Internal::Types::Enum
|
|
7
|
+
|
|
8
|
+
FAILED = "failed"
|
|
9
|
+
SENT = "sent"
|
|
10
|
+
DELIVERED = "delivered"
|
|
11
|
+
UNDELIVERED = "undelivered"
|
|
12
|
+
EXPIRED = "expired"
|
|
13
|
+
REJECTED = "rejected"
|
|
14
|
+
UNKNOWN = "unknown"
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
class WhatsAppMessageListResponse < Internal::Types::Model
|
|
6
|
+
field :messages, -> { Internal::Types::Array[Wavix::Types::WhatsAppMessageListItem] }, optional: false, nullable: false
|
|
7
|
+
|
|
8
|
+
field :pagination, -> { Wavix::Types::Pagination }, optional: false, nullable: false
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
class WhatsAppMessageSendRequest < Internal::Types::Model
|
|
6
|
+
field :from, -> { String }, optional: false, nullable: false
|
|
7
|
+
|
|
8
|
+
field :to, -> { String }, optional: false, nullable: false
|
|
9
|
+
|
|
10
|
+
field :template, -> { Wavix::Types::WhatsAppMessageSendRequestTemplate }, optional: false, nullable: false
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
class WhatsAppMessageSendRequestTemplate < Internal::Types::Model
|
|
6
|
+
field :name, -> { String }, optional: false, nullable: false
|
|
7
|
+
|
|
8
|
+
field :language, -> { String }, optional: false, nullable: false
|
|
9
|
+
|
|
10
|
+
field :placeholders, -> { Internal::Types::Array[String] }, optional: true, nullable: false
|
|
11
|
+
|
|
12
|
+
field :header, -> { Wavix::Types::WhatsAppMessageSendRequestTemplateHeader }, optional: true, nullable: false
|
|
13
|
+
|
|
14
|
+
field :buttons, -> { Internal::Types::Array[Wavix::Types::WhatsAppMessageSendRequestTemplateButtonsItem] }, optional: true, nullable: false
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
class WhatsAppMessageSendRequestTemplateButtonsItem < Internal::Types::Model
|
|
6
|
+
field :type, -> { Wavix::Types::WhatsAppMessageSendRequestTemplateButtonsItemType }, optional: false, nullable: false
|
|
7
|
+
end
|
|
8
|
+
end
|
|
9
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
module WhatsAppMessageSendRequestTemplateButtonsItemType
|
|
6
|
+
extend Wavix::Internal::Types::Enum
|
|
7
|
+
|
|
8
|
+
QUICK_REPLY = "QUICK_REPLY"
|
|
9
|
+
URL = "URL"
|
|
10
|
+
COPY_CODE = "COPY_CODE"
|
|
11
|
+
FLOW = "FLOW"
|
|
12
|
+
CATALOG = "CATALOG"
|
|
13
|
+
MULTI_PRODUCT = "MULTI_PRODUCT"
|
|
14
|
+
ORDER_DETAILS = "ORDER_DETAILS"
|
|
15
|
+
VOICE_CALL = "VOICE_CALL"
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
# Header content, required only when the template's `HEADER` component needs one.
|
|
6
|
+
class WhatsAppMessageSendRequestTemplateHeader < Internal::Types::Model
|
|
7
|
+
field :type, -> { Wavix::Types::WhatsAppMessageSendRequestTemplateHeaderType }, optional: true, nullable: false
|
|
8
|
+
|
|
9
|
+
field :placeholder, -> { String }, optional: true, nullable: false
|
|
10
|
+
|
|
11
|
+
field :media_url, -> { String }, optional: true, nullable: false, api_name: "mediaUrl"
|
|
12
|
+
|
|
13
|
+
field :filename, -> { String }, optional: true, nullable: false
|
|
14
|
+
|
|
15
|
+
field :latitude, -> { Integer }, optional: true, nullable: false
|
|
16
|
+
|
|
17
|
+
field :longitude, -> { Integer }, optional: true, nullable: false
|
|
18
|
+
|
|
19
|
+
field :parameter_name, -> { String }, optional: true, nullable: false, api_name: "parameterName"
|
|
20
|
+
|
|
21
|
+
field :text, -> { String }, optional: true, nullable: false
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
module WhatsAppMessageSendRequestTemplateHeaderType
|
|
6
|
+
extend Wavix::Internal::Types::Enum
|
|
7
|
+
|
|
8
|
+
TEXT = "TEXT"
|
|
9
|
+
TEXT_NAMED_PARAMETERS = "TEXT_NAMED_PARAMETERS"
|
|
10
|
+
IMAGE = "IMAGE"
|
|
11
|
+
VIDEO = "VIDEO"
|
|
12
|
+
DOCUMENT = "DOCUMENT"
|
|
13
|
+
LOCATION = "LOCATION"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
module WhatsAppMessageStatus
|
|
6
|
+
extend Wavix::Internal::Types::Enum
|
|
7
|
+
|
|
8
|
+
FAILED = "failed"
|
|
9
|
+
SENT = "sent"
|
|
10
|
+
DELIVERED = "delivered"
|
|
11
|
+
UNDELIVERED = "undelivered"
|
|
12
|
+
EXPIRED = "expired"
|
|
13
|
+
REJECTED = "rejected"
|
|
14
|
+
UNKNOWN = "unknown"
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
# Template used to send the message.
|
|
6
|
+
class WhatsAppMessageTemplate < Internal::Types::Model
|
|
7
|
+
field :name, -> { String }, optional: true, nullable: false
|
|
8
|
+
|
|
9
|
+
field :language, -> { String }, optional: true, nullable: false
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
# RFC 9457 problem document returned by WhatsApp endpoints as `application/problem+json`.
|
|
6
|
+
class WhatsAppProblem < Internal::Types::Model
|
|
7
|
+
field :type, -> { String }, optional: false, nullable: false
|
|
8
|
+
|
|
9
|
+
field :title, -> { String }, optional: false, nullable: false
|
|
10
|
+
|
|
11
|
+
field :status, -> { Integer }, optional: false, nullable: false
|
|
12
|
+
|
|
13
|
+
field :detail, -> { String }, optional: false, nullable: false
|
|
14
|
+
|
|
15
|
+
field :instance, -> { String }, optional: false, nullable: false
|
|
16
|
+
|
|
17
|
+
field :error_class, -> { Wavix::Types::WhatsAppProblemErrorClass }, optional: true, nullable: false
|
|
18
|
+
|
|
19
|
+
field :error_code, -> { String }, optional: true, nullable: false
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
module WhatsAppProblemErrorClass
|
|
6
|
+
extend Wavix::Internal::Types::Enum
|
|
7
|
+
|
|
8
|
+
PERMANENT = "permanent"
|
|
9
|
+
RETRIABLE = "retriable"
|
|
10
|
+
RATE_LIMITED = "rate_limited"
|
|
11
|
+
INVALID_TEMPLATE = "invalid_template"
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
class WhatsAppSender < Internal::Types::Model
|
|
6
|
+
field :phone_number, -> { String }, optional: false, nullable: false
|
|
7
|
+
|
|
8
|
+
field :display_name, -> { String }, optional: true, nullable: false
|
|
9
|
+
|
|
10
|
+
field :status, -> { Wavix::Types::WhatsAppSenderStatus }, optional: false, nullable: false
|
|
11
|
+
|
|
12
|
+
field :quality_rating, -> { Wavix::Types::WhatsAppSenderQualityRating }, optional: true, nullable: false
|
|
13
|
+
|
|
14
|
+
field :message_tier, -> { Wavix::Types::WhatsAppSenderMessageTier }, optional: true, nullable: false
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
module WhatsAppSenderMessageTier
|
|
6
|
+
extend Wavix::Internal::Types::Enum
|
|
7
|
+
|
|
8
|
+
LIMIT_NA = "limit_na"
|
|
9
|
+
LIMIT250 = "limit_250"
|
|
10
|
+
LIMIT2K = "limit_2k"
|
|
11
|
+
LIMIT10K = "limit_10k"
|
|
12
|
+
LIMIT100K = "limit_100k"
|
|
13
|
+
UNLIMITED = "unlimited"
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
module WhatsAppSenderStatus
|
|
6
|
+
extend Wavix::Internal::Types::Enum
|
|
7
|
+
|
|
8
|
+
BANNED = "banned"
|
|
9
|
+
CONNECTED = "connected"
|
|
10
|
+
DELETED = "deleted"
|
|
11
|
+
DISCONNECTED = "disconnected"
|
|
12
|
+
FLAGGED = "flagged"
|
|
13
|
+
MIGRATED = "migrated"
|
|
14
|
+
PENDING = "pending"
|
|
15
|
+
RATE_LIMITED = "rate_limited"
|
|
16
|
+
RESTRICTED = "restricted"
|
|
17
|
+
UNKNOWN = "unknown"
|
|
18
|
+
UNVERIFIED = "unverified"
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
class WhatsAppTemplate < Internal::Types::Model
|
|
6
|
+
field :uuid, -> { String }, optional: false, nullable: false
|
|
7
|
+
|
|
8
|
+
field :name, -> { String }, optional: false, nullable: false
|
|
9
|
+
|
|
10
|
+
field :language, -> { String }, optional: false, nullable: false
|
|
11
|
+
|
|
12
|
+
field :category, -> { Wavix::Types::WhatsAppTemplateCategory }, optional: false, nullable: false
|
|
13
|
+
|
|
14
|
+
field :status, -> { Wavix::Types::WhatsAppTemplateStatus }, optional: false, nullable: false
|
|
15
|
+
|
|
16
|
+
field :quality_rating, -> { Wavix::Types::WhatsAppTemplateQualityRating }, optional: true, nullable: false
|
|
17
|
+
|
|
18
|
+
field :submitted_at, -> { String }, optional: true, nullable: false
|
|
19
|
+
|
|
20
|
+
field :components, -> { Internal::Types::Array[Wavix::Types::WhatsAppTemplateComponent] }, optional: false, nullable: false
|
|
21
|
+
|
|
22
|
+
field :created_at, -> { String }, optional: false, nullable: false
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
# One structural component (header, body, footer, or buttons) of a WhatsApp message template.
|
|
6
|
+
class WhatsAppTemplateComponent < Internal::Types::Model
|
|
7
|
+
field :type, -> { Wavix::Types::WhatsAppTemplateComponentType }, optional: false, nullable: false
|
|
8
|
+
|
|
9
|
+
field :format, -> { Wavix::Types::WhatsAppTemplateComponentFormat }, optional: true, nullable: false
|
|
10
|
+
|
|
11
|
+
field :text, -> { String }, optional: true, nullable: false
|
|
12
|
+
|
|
13
|
+
field :example, -> { Internal::Types::Hash[String, Object] }, optional: true, nullable: false
|
|
14
|
+
|
|
15
|
+
field :buttons, -> { Internal::Types::Array[Internal::Types::Hash[String, Object]] }, optional: true, nullable: false
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
module WhatsAppTemplateComponentFormat
|
|
6
|
+
extend Wavix::Internal::Types::Enum
|
|
7
|
+
|
|
8
|
+
TEXT = "TEXT"
|
|
9
|
+
IMAGE = "IMAGE"
|
|
10
|
+
VIDEO = "VIDEO"
|
|
11
|
+
DOCUMENT = "DOCUMENT"
|
|
12
|
+
LOCATION = "LOCATION"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Wavix
|
|
4
|
+
module Types
|
|
5
|
+
class WhatsAppTemplateCreateRequest < Internal::Types::Model
|
|
6
|
+
field :name, -> { String }, optional: false, nullable: false
|
|
7
|
+
|
|
8
|
+
field :language, -> { String }, optional: false, nullable: false
|
|
9
|
+
|
|
10
|
+
field :category, -> { Wavix::Types::WhatsAppTemplateCreateRequestCategory }, optional: false, nullable: false
|
|
11
|
+
|
|
12
|
+
field :components, -> { Internal::Types::Array[Wavix::Types::WhatsAppTemplateComponent] }, optional: false, nullable: false
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|