surge_api 0.1.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 +7 -0
- data/.ignore +2 -0
- data/CHANGELOG.md +28 -0
- data/README.md +286 -0
- data/SECURITY.md +27 -0
- data/lib/surge_api/client.rb +106 -0
- data/lib/surge_api/errors.rb +228 -0
- data/lib/surge_api/file_part.rb +55 -0
- data/lib/surge_api/internal/transport/base_client.rb +567 -0
- data/lib/surge_api/internal/transport/pooled_net_requester.rb +201 -0
- data/lib/surge_api/internal/type/array_of.rb +168 -0
- data/lib/surge_api/internal/type/base_model.rb +531 -0
- data/lib/surge_api/internal/type/base_page.rb +55 -0
- data/lib/surge_api/internal/type/boolean.rb +77 -0
- data/lib/surge_api/internal/type/converter.rb +327 -0
- data/lib/surge_api/internal/type/enum.rb +131 -0
- data/lib/surge_api/internal/type/file_input.rb +108 -0
- data/lib/surge_api/internal/type/hash_of.rb +188 -0
- data/lib/surge_api/internal/type/request_parameters.rb +42 -0
- data/lib/surge_api/internal/type/union.rb +250 -0
- data/lib/surge_api/internal/type/unknown.rb +81 -0
- data/lib/surge_api/internal/util.rb +915 -0
- data/lib/surge_api/internal.rb +20 -0
- data/lib/surge_api/models/account.rb +60 -0
- data/lib/surge_api/models/account_create_params.rb +481 -0
- data/lib/surge_api/models/account_retrieve_status_params.rb +32 -0
- data/lib/surge_api/models/account_status.rb +104 -0
- data/lib/surge_api/models/account_update_params.rb +480 -0
- data/lib/surge_api/models/blast.rb +61 -0
- data/lib/surge_api/models/blast_create_params.rb +90 -0
- data/lib/surge_api/models/call_ended_webhook_event.rb +106 -0
- data/lib/surge_api/models/campaign.rb +208 -0
- data/lib/surge_api/models/campaign_approved_webhook_event.rb +74 -0
- data/lib/surge_api/models/campaign_create_params.rb +202 -0
- data/lib/surge_api/models/contact.rb +59 -0
- data/lib/surge_api/models/contact_create_params.rb +54 -0
- data/lib/surge_api/models/contact_retrieve_params.rb +14 -0
- data/lib/surge_api/models/contact_update_params.rb +54 -0
- data/lib/surge_api/models/conversation_created_webhook_event.rb +70 -0
- data/lib/surge_api/models/error.rb +34 -0
- data/lib/surge_api/models/message.rb +146 -0
- data/lib/surge_api/models/message_create_params.rb +153 -0
- data/lib/surge_api/models/message_delivered_webhook_event.rb +159 -0
- data/lib/surge_api/models/message_failed_webhook_event.rb +167 -0
- data/lib/surge_api/models/message_received_webhook_event.rb +159 -0
- data/lib/surge_api/models/message_sent_webhook_event.rb +159 -0
- data/lib/surge_api/models/organization.rb +419 -0
- data/lib/surge_api/models/phone_number.rb +48 -0
- data/lib/surge_api/models/phone_number_purchase_params.rb +65 -0
- data/lib/surge_api/models/unwrap_webhook_event.rb +26 -0
- data/lib/surge_api/models/user.rb +51 -0
- data/lib/surge_api/models/user_create_params.rb +46 -0
- data/lib/surge_api/models/user_create_token_params.rb +22 -0
- data/lib/surge_api/models/user_retrieve_params.rb +14 -0
- data/lib/surge_api/models/user_token_response.rb +19 -0
- data/lib/surge_api/models/user_update_params.rb +46 -0
- data/lib/surge_api/models/verification.rb +58 -0
- data/lib/surge_api/models/verification_check.rb +43 -0
- data/lib/surge_api/models/verification_check_params.rb +22 -0
- data/lib/surge_api/models/verification_create_params.rb +22 -0
- data/lib/surge_api/models/webhook_unwrap_params.rb +14 -0
- data/lib/surge_api/models.rb +117 -0
- data/lib/surge_api/request_options.rb +77 -0
- data/lib/surge_api/resources/accounts.rb +102 -0
- data/lib/surge_api/resources/blasts.rb +53 -0
- data/lib/surge_api/resources/campaigns.rb +57 -0
- data/lib/surge_api/resources/contacts.rb +99 -0
- data/lib/surge_api/resources/messages.rb +75 -0
- data/lib/surge_api/resources/phone_numbers.rb +48 -0
- data/lib/surge_api/resources/users.rb +119 -0
- data/lib/surge_api/resources/verifications.rb +60 -0
- data/lib/surge_api/resources/webhooks.rb +22 -0
- data/lib/surge_api/version.rb +5 -0
- data/lib/surge_api.rb +100 -0
- data/manifest.yaml +15 -0
- data/rbi/surge_api/client.rbi +73 -0
- data/rbi/surge_api/errors.rbi +205 -0
- data/rbi/surge_api/file_part.rbi +37 -0
- data/rbi/surge_api/internal/transport/base_client.rbi +292 -0
- data/rbi/surge_api/internal/transport/pooled_net_requester.rbi +79 -0
- data/rbi/surge_api/internal/type/array_of.rbi +104 -0
- data/rbi/surge_api/internal/type/base_model.rbi +302 -0
- data/rbi/surge_api/internal/type/base_page.rbi +42 -0
- data/rbi/surge_api/internal/type/boolean.rbi +58 -0
- data/rbi/surge_api/internal/type/converter.rbi +216 -0
- data/rbi/surge_api/internal/type/enum.rbi +82 -0
- data/rbi/surge_api/internal/type/file_input.rbi +59 -0
- data/rbi/surge_api/internal/type/hash_of.rbi +104 -0
- data/rbi/surge_api/internal/type/request_parameters.rbi +29 -0
- data/rbi/surge_api/internal/type/union.rbi +128 -0
- data/rbi/surge_api/internal/type/unknown.rbi +58 -0
- data/rbi/surge_api/internal/util.rbi +487 -0
- data/rbi/surge_api/internal.rbi +16 -0
- data/rbi/surge_api/models/account.rbi +83 -0
- data/rbi/surge_api/models/account_create_params.rbi +1104 -0
- data/rbi/surge_api/models/account_retrieve_status_params.rbi +96 -0
- data/rbi/surge_api/models/account_status.rbi +185 -0
- data/rbi/surge_api/models/account_update_params.rbi +1105 -0
- data/rbi/surge_api/models/blast.rbi +108 -0
- data/rbi/surge_api/models/blast_create_params.rbi +145 -0
- data/rbi/surge_api/models/call_ended_webhook_event.rbi +205 -0
- data/rbi/surge_api/models/campaign.rbi +331 -0
- data/rbi/surge_api/models/campaign_approved_webhook_event.rbi +149 -0
- data/rbi/surge_api/models/campaign_create_params.rbi +386 -0
- data/rbi/surge_api/models/contact.rbi +88 -0
- data/rbi/surge_api/models/contact_create_params.rbi +87 -0
- data/rbi/surge_api/models/contact_retrieve_params.rbi +27 -0
- data/rbi/surge_api/models/contact_update_params.rbi +87 -0
- data/rbi/surge_api/models/conversation_created_webhook_event.rbi +129 -0
- data/rbi/surge_api/models/error.rbi +51 -0
- data/rbi/surge_api/models/message.rbi +283 -0
- data/rbi/surge_api/models/message_create_params.rbi +281 -0
- data/rbi/surge_api/models/message_delivered_webhook_event.rbi +331 -0
- data/rbi/surge_api/models/message_failed_webhook_event.rbi +335 -0
- data/rbi/surge_api/models/message_received_webhook_event.rbi +331 -0
- data/rbi/surge_api/models/message_sent_webhook_event.rbi +322 -0
- data/rbi/surge_api/models/organization.rbi +649 -0
- data/rbi/surge_api/models/phone_number.rbi +72 -0
- data/rbi/surge_api/models/phone_number_purchase_params.rbi +122 -0
- data/rbi/surge_api/models/unwrap_webhook_event.rbi +26 -0
- data/rbi/surge_api/models/user.rbi +80 -0
- data/rbi/surge_api/models/user_create_params.rbi +76 -0
- data/rbi/surge_api/models/user_create_token_params.rbi +46 -0
- data/rbi/surge_api/models/user_retrieve_params.rbi +27 -0
- data/rbi/surge_api/models/user_token_response.rbi +31 -0
- data/rbi/surge_api/models/user_update_params.rbi +76 -0
- data/rbi/surge_api/models/verification.rbi +86 -0
- data/rbi/surge_api/models/verification_check.rbi +84 -0
- data/rbi/surge_api/models/verification_check_params.rbi +40 -0
- data/rbi/surge_api/models/verification_create_params.rbi +40 -0
- data/rbi/surge_api/models/webhook_unwrap_params.rbi +27 -0
- data/rbi/surge_api/models.rbi +80 -0
- data/rbi/surge_api/request_options.rbi +59 -0
- data/rbi/surge_api/resources/accounts.rbi +94 -0
- data/rbi/surge_api/resources/blasts.rbi +48 -0
- data/rbi/surge_api/resources/campaigns.rbi +115 -0
- data/rbi/surge_api/resources/contacts.rbi +85 -0
- data/rbi/surge_api/resources/messages.rbi +72 -0
- data/rbi/surge_api/resources/phone_numbers.rbi +43 -0
- data/rbi/surge_api/resources/users.rbi +96 -0
- data/rbi/surge_api/resources/verifications.rbi +43 -0
- data/rbi/surge_api/resources/webhooks.rbi +31 -0
- data/rbi/surge_api/version.rbi +5 -0
- data/sig/surge_api/client.rbs +42 -0
- data/sig/surge_api/errors.rbs +117 -0
- data/sig/surge_api/file_part.rbs +21 -0
- data/sig/surge_api/internal/transport/base_client.rbs +131 -0
- data/sig/surge_api/internal/transport/pooled_net_requester.rbs +45 -0
- data/sig/surge_api/internal/type/array_of.rbs +48 -0
- data/sig/surge_api/internal/type/base_model.rbs +102 -0
- data/sig/surge_api/internal/type/base_page.rbs +24 -0
- data/sig/surge_api/internal/type/boolean.rbs +26 -0
- data/sig/surge_api/internal/type/converter.rbs +79 -0
- data/sig/surge_api/internal/type/enum.rbs +32 -0
- data/sig/surge_api/internal/type/file_input.rbs +25 -0
- data/sig/surge_api/internal/type/hash_of.rbs +48 -0
- data/sig/surge_api/internal/type/request_parameters.rbs +17 -0
- data/sig/surge_api/internal/type/union.rbs +52 -0
- data/sig/surge_api/internal/type/unknown.rbs +26 -0
- data/sig/surge_api/internal/util.rbs +185 -0
- data/sig/surge_api/internal.rbs +9 -0
- data/sig/surge_api/models/account.rbs +40 -0
- data/sig/surge_api/models/account_create_params.rbs +433 -0
- data/sig/surge_api/models/account_retrieve_status_params.rbs +40 -0
- data/sig/surge_api/models/account_status.rbs +71 -0
- data/sig/surge_api/models/account_update_params.rbs +435 -0
- data/sig/surge_api/models/blast.rbs +64 -0
- data/sig/surge_api/models/blast_create_params.rbs +82 -0
- data/sig/surge_api/models/call_ended_webhook_event.rbs +99 -0
- data/sig/surge_api/models/campaign.rbs +122 -0
- data/sig/surge_api/models/campaign_approved_webhook_event.rbs +67 -0
- data/sig/surge_api/models/campaign_create_params.rbs +127 -0
- data/sig/surge_api/models/contact.rbs +53 -0
- data/sig/surge_api/models/contact_create_params.rbs +54 -0
- data/sig/surge_api/models/contact_retrieve_params.rbs +15 -0
- data/sig/surge_api/models/contact_update_params.rbs +54 -0
- data/sig/surge_api/models/conversation_created_webhook_event.rbs +62 -0
- data/sig/surge_api/models/error.rbs +27 -0
- data/sig/surge_api/models/message.rbs +138 -0
- data/sig/surge_api/models/message_create_params.rbs +140 -0
- data/sig/surge_api/models/message_delivered_webhook_event.rbs +143 -0
- data/sig/surge_api/models/message_failed_webhook_event.rbs +148 -0
- data/sig/surge_api/models/message_received_webhook_event.rbs +143 -0
- data/sig/surge_api/models/message_sent_webhook_event.rbs +143 -0
- data/sig/surge_api/models/organization.rbs +385 -0
- data/sig/surge_api/models/phone_number.rbs +37 -0
- data/sig/surge_api/models/phone_number_purchase_params.rbs +62 -0
- data/sig/surge_api/models/unwrap_webhook_event.rbs +18 -0
- data/sig/surge_api/models/user.rbs +48 -0
- data/sig/surge_api/models/user_create_params.rbs +47 -0
- data/sig/surge_api/models/user_create_token_params.rbs +26 -0
- data/sig/surge_api/models/user_retrieve_params.rbs +15 -0
- data/sig/surge_api/models/user_token_response.rbs +15 -0
- data/sig/surge_api/models/user_update_params.rbs +47 -0
- data/sig/surge_api/models/verification.rbs +48 -0
- data/sig/surge_api/models/verification_check.rbs +45 -0
- data/sig/surge_api/models/verification_check_params.rbs +23 -0
- data/sig/surge_api/models/verification_create_params.rbs +23 -0
- data/sig/surge_api/models/webhook_unwrap_params.rbs +15 -0
- data/sig/surge_api/models.rbs +77 -0
- data/sig/surge_api/request_options.rbs +34 -0
- data/sig/surge_api/resources/accounts.rbs +30 -0
- data/sig/surge_api/resources/blasts.rbs +19 -0
- data/sig/surge_api/resources/campaigns.rbs +21 -0
- data/sig/surge_api/resources/contacts.rbs +32 -0
- data/sig/surge_api/resources/messages.rbs +18 -0
- data/sig/surge_api/resources/phone_numbers.rbs +16 -0
- data/sig/surge_api/resources/users.rbs +36 -0
- data/sig/surge_api/resources/verifications.rbs +18 -0
- data/sig/surge_api/resources/webhooks.rbs +17 -0
- data/sig/surge_api/version.rbs +3 -0
- metadata +269 -0
@@ -0,0 +1,1104 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module SurgeAPI
|
4
|
+
module Models
|
5
|
+
class AccountCreateParams < SurgeAPI::Internal::Type::BaseModel
|
6
|
+
extend SurgeAPI::Internal::Type::RequestParameters::Converter
|
7
|
+
include SurgeAPI::Internal::Type::RequestParameters
|
8
|
+
|
9
|
+
OrHash =
|
10
|
+
T.type_alias do
|
11
|
+
T.any(SurgeAPI::AccountCreateParams, SurgeAPI::Internal::AnyHash)
|
12
|
+
end
|
13
|
+
|
14
|
+
# The name of the account that will be visible for your internal organizational
|
15
|
+
# purposes. This will also be the default public-facing brand name unless you also
|
16
|
+
# set a `brand_name`, but otherwise the account name will never be displayed
|
17
|
+
# anywhere outside of Surge HQ, and may include your ID for the account or
|
18
|
+
# anything else that may help you.
|
19
|
+
sig { returns(String) }
|
20
|
+
attr_accessor :name
|
21
|
+
|
22
|
+
# The name by which the people this account communicates with know it. If not
|
23
|
+
# provided, this will match the name field.
|
24
|
+
sig { returns(T.nilable(String)) }
|
25
|
+
attr_accessor :brand_name
|
26
|
+
|
27
|
+
# Parameters describing the legal entity on whose behalf the account will be
|
28
|
+
# operated.
|
29
|
+
sig { returns(T.nilable(SurgeAPI::AccountCreateParams::Organization)) }
|
30
|
+
attr_reader :organization
|
31
|
+
|
32
|
+
sig do
|
33
|
+
params(
|
34
|
+
organization: SurgeAPI::AccountCreateParams::Organization::OrHash
|
35
|
+
).void
|
36
|
+
end
|
37
|
+
attr_writer :organization
|
38
|
+
|
39
|
+
# This is the time zone in which the account is headquartered. This time zone may
|
40
|
+
# be used for compliance with TCPA restrictions on when messages may be sent.
|
41
|
+
sig { returns(T.nilable(String)) }
|
42
|
+
attr_reader :time_zone
|
43
|
+
|
44
|
+
sig { params(time_zone: String).void }
|
45
|
+
attr_writer :time_zone
|
46
|
+
|
47
|
+
sig do
|
48
|
+
params(
|
49
|
+
name: String,
|
50
|
+
brand_name: T.nilable(String),
|
51
|
+
organization: SurgeAPI::AccountCreateParams::Organization::OrHash,
|
52
|
+
time_zone: String,
|
53
|
+
request_options: SurgeAPI::RequestOptions::OrHash
|
54
|
+
).returns(T.attached_class)
|
55
|
+
end
|
56
|
+
def self.new(
|
57
|
+
# The name of the account that will be visible for your internal organizational
|
58
|
+
# purposes. This will also be the default public-facing brand name unless you also
|
59
|
+
# set a `brand_name`, but otherwise the account name will never be displayed
|
60
|
+
# anywhere outside of Surge HQ, and may include your ID for the account or
|
61
|
+
# anything else that may help you.
|
62
|
+
name:,
|
63
|
+
# The name by which the people this account communicates with know it. If not
|
64
|
+
# provided, this will match the name field.
|
65
|
+
brand_name: nil,
|
66
|
+
# Parameters describing the legal entity on whose behalf the account will be
|
67
|
+
# operated.
|
68
|
+
organization: nil,
|
69
|
+
# This is the time zone in which the account is headquartered. This time zone may
|
70
|
+
# be used for compliance with TCPA restrictions on when messages may be sent.
|
71
|
+
time_zone: nil,
|
72
|
+
request_options: {}
|
73
|
+
)
|
74
|
+
end
|
75
|
+
|
76
|
+
sig do
|
77
|
+
override.returns(
|
78
|
+
{
|
79
|
+
name: String,
|
80
|
+
brand_name: T.nilable(String),
|
81
|
+
organization: SurgeAPI::AccountCreateParams::Organization,
|
82
|
+
time_zone: String,
|
83
|
+
request_options: SurgeAPI::RequestOptions
|
84
|
+
}
|
85
|
+
)
|
86
|
+
end
|
87
|
+
def to_hash
|
88
|
+
end
|
89
|
+
|
90
|
+
class Organization < SurgeAPI::Internal::Type::BaseModel
|
91
|
+
OrHash =
|
92
|
+
T.type_alias do
|
93
|
+
T.any(
|
94
|
+
SurgeAPI::AccountCreateParams::Organization,
|
95
|
+
SurgeAPI::Internal::AnyHash
|
96
|
+
)
|
97
|
+
end
|
98
|
+
|
99
|
+
# The address of the organization's headquarters.
|
100
|
+
sig do
|
101
|
+
returns(
|
102
|
+
T.nilable(SurgeAPI::AccountCreateParams::Organization::Address)
|
103
|
+
)
|
104
|
+
end
|
105
|
+
attr_reader :address
|
106
|
+
|
107
|
+
sig do
|
108
|
+
params(
|
109
|
+
address:
|
110
|
+
SurgeAPI::AccountCreateParams::Organization::Address::OrHash
|
111
|
+
).void
|
112
|
+
end
|
113
|
+
attr_writer :address
|
114
|
+
|
115
|
+
# An object representing an individual who can be contacted if the carriers have
|
116
|
+
# any questions about the business.
|
117
|
+
sig do
|
118
|
+
returns(
|
119
|
+
T.nilable(SurgeAPI::AccountCreateParams::Organization::Contact)
|
120
|
+
)
|
121
|
+
end
|
122
|
+
attr_reader :contact
|
123
|
+
|
124
|
+
sig do
|
125
|
+
params(
|
126
|
+
contact:
|
127
|
+
T.nilable(
|
128
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::OrHash
|
129
|
+
)
|
130
|
+
).void
|
131
|
+
end
|
132
|
+
attr_writer :contact
|
133
|
+
|
134
|
+
# The two character ISO 3166 country code for the country in which the
|
135
|
+
# organization is headquartered.
|
136
|
+
sig { returns(T.nilable(String)) }
|
137
|
+
attr_accessor :country
|
138
|
+
|
139
|
+
# For publicly traded companies, an email for a representative of the company to
|
140
|
+
# whom a verification email will be sent. This must be an email on the same domain
|
141
|
+
# as the company's website (e.g. with a website domain of
|
142
|
+
# `https://dtprecisionauto.com`, the email must use the same
|
143
|
+
# `@dtprecisionauto.com`)
|
144
|
+
sig { returns(T.nilable(String)) }
|
145
|
+
attr_accessor :email
|
146
|
+
|
147
|
+
# The value of the identifier whose type is specified in the identifier_type
|
148
|
+
# field. Typically this will be an EIN, and can be formatted with or without the
|
149
|
+
# hyphen.
|
150
|
+
sig { returns(T.nilable(String)) }
|
151
|
+
attr_accessor :identifier
|
152
|
+
|
153
|
+
# The type of identifier being provided for the organization. Support for more
|
154
|
+
# values will be added in the future.
|
155
|
+
sig do
|
156
|
+
returns(
|
157
|
+
T.nilable(
|
158
|
+
SurgeAPI::AccountCreateParams::Organization::IdentifierType::OrSymbol
|
159
|
+
)
|
160
|
+
)
|
161
|
+
end
|
162
|
+
attr_accessor :identifier_type
|
163
|
+
|
164
|
+
# The industry in which the organization operates.
|
165
|
+
sig do
|
166
|
+
returns(
|
167
|
+
T.nilable(
|
168
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::OrSymbol
|
169
|
+
)
|
170
|
+
)
|
171
|
+
end
|
172
|
+
attr_accessor :industry
|
173
|
+
|
174
|
+
# For sole proprietors, this must be a valid US mobile phone number to which a
|
175
|
+
# verification text message will be sent. (E.164 format)
|
176
|
+
sig { returns(T.nilable(String)) }
|
177
|
+
attr_accessor :mobile_number
|
178
|
+
|
179
|
+
# An array of regions in which the organization operates.
|
180
|
+
sig do
|
181
|
+
returns(
|
182
|
+
T.nilable(
|
183
|
+
T::Array[
|
184
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::OrSymbol
|
185
|
+
]
|
186
|
+
)
|
187
|
+
)
|
188
|
+
end
|
189
|
+
attr_accessor :regions_of_operation
|
190
|
+
|
191
|
+
# The legal name of the organization as registered with the IRS or other relevant
|
192
|
+
# authorities. For some applications, this will be matched against government
|
193
|
+
# records and should include all punctuation and everything else as well.
|
194
|
+
sig { returns(T.nilable(String)) }
|
195
|
+
attr_accessor :registered_name
|
196
|
+
|
197
|
+
# For publicly traded companies, this is the exchange on which the company's stock
|
198
|
+
# is traded.
|
199
|
+
sig do
|
200
|
+
returns(
|
201
|
+
T.nilable(
|
202
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::OrSymbol
|
203
|
+
)
|
204
|
+
)
|
205
|
+
end
|
206
|
+
attr_accessor :stock_exchange
|
207
|
+
|
208
|
+
# For publicly traded companies, the ticker symbol for the company's stock
|
209
|
+
sig { returns(T.nilable(String)) }
|
210
|
+
attr_accessor :stock_symbol
|
211
|
+
|
212
|
+
# The type of organization
|
213
|
+
sig do
|
214
|
+
returns(
|
215
|
+
T.nilable(
|
216
|
+
SurgeAPI::AccountCreateParams::Organization::Type::OrSymbol
|
217
|
+
)
|
218
|
+
)
|
219
|
+
end
|
220
|
+
attr_accessor :type
|
221
|
+
|
222
|
+
# The URL of the website for this organization. The website should be publicly
|
223
|
+
# available, clearly reflect the organization's purpose, and the URL should start
|
224
|
+
# with `https://`
|
225
|
+
sig { returns(T.nilable(String)) }
|
226
|
+
attr_accessor :website
|
227
|
+
|
228
|
+
# Parameters describing the legal entity on whose behalf the account will be
|
229
|
+
# operated.
|
230
|
+
sig do
|
231
|
+
params(
|
232
|
+
address:
|
233
|
+
SurgeAPI::AccountCreateParams::Organization::Address::OrHash,
|
234
|
+
contact:
|
235
|
+
T.nilable(
|
236
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::OrHash
|
237
|
+
),
|
238
|
+
country: T.nilable(String),
|
239
|
+
email: T.nilable(String),
|
240
|
+
identifier: T.nilable(String),
|
241
|
+
identifier_type:
|
242
|
+
T.nilable(
|
243
|
+
SurgeAPI::AccountCreateParams::Organization::IdentifierType::OrSymbol
|
244
|
+
),
|
245
|
+
industry:
|
246
|
+
T.nilable(
|
247
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::OrSymbol
|
248
|
+
),
|
249
|
+
mobile_number: T.nilable(String),
|
250
|
+
regions_of_operation:
|
251
|
+
T.nilable(
|
252
|
+
T::Array[
|
253
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::OrSymbol
|
254
|
+
]
|
255
|
+
),
|
256
|
+
registered_name: T.nilable(String),
|
257
|
+
stock_exchange:
|
258
|
+
T.nilable(
|
259
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::OrSymbol
|
260
|
+
),
|
261
|
+
stock_symbol: T.nilable(String),
|
262
|
+
type:
|
263
|
+
T.nilable(
|
264
|
+
SurgeAPI::AccountCreateParams::Organization::Type::OrSymbol
|
265
|
+
),
|
266
|
+
website: T.nilable(String)
|
267
|
+
).returns(T.attached_class)
|
268
|
+
end
|
269
|
+
def self.new(
|
270
|
+
# The address of the organization's headquarters.
|
271
|
+
address: nil,
|
272
|
+
# An object representing an individual who can be contacted if the carriers have
|
273
|
+
# any questions about the business.
|
274
|
+
contact: nil,
|
275
|
+
# The two character ISO 3166 country code for the country in which the
|
276
|
+
# organization is headquartered.
|
277
|
+
country: nil,
|
278
|
+
# For publicly traded companies, an email for a representative of the company to
|
279
|
+
# whom a verification email will be sent. This must be an email on the same domain
|
280
|
+
# as the company's website (e.g. with a website domain of
|
281
|
+
# `https://dtprecisionauto.com`, the email must use the same
|
282
|
+
# `@dtprecisionauto.com`)
|
283
|
+
email: nil,
|
284
|
+
# The value of the identifier whose type is specified in the identifier_type
|
285
|
+
# field. Typically this will be an EIN, and can be formatted with or without the
|
286
|
+
# hyphen.
|
287
|
+
identifier: nil,
|
288
|
+
# The type of identifier being provided for the organization. Support for more
|
289
|
+
# values will be added in the future.
|
290
|
+
identifier_type: nil,
|
291
|
+
# The industry in which the organization operates.
|
292
|
+
industry: nil,
|
293
|
+
# For sole proprietors, this must be a valid US mobile phone number to which a
|
294
|
+
# verification text message will be sent. (E.164 format)
|
295
|
+
mobile_number: nil,
|
296
|
+
# An array of regions in which the organization operates.
|
297
|
+
regions_of_operation: nil,
|
298
|
+
# The legal name of the organization as registered with the IRS or other relevant
|
299
|
+
# authorities. For some applications, this will be matched against government
|
300
|
+
# records and should include all punctuation and everything else as well.
|
301
|
+
registered_name: nil,
|
302
|
+
# For publicly traded companies, this is the exchange on which the company's stock
|
303
|
+
# is traded.
|
304
|
+
stock_exchange: nil,
|
305
|
+
# For publicly traded companies, the ticker symbol for the company's stock
|
306
|
+
stock_symbol: nil,
|
307
|
+
# The type of organization
|
308
|
+
type: nil,
|
309
|
+
# The URL of the website for this organization. The website should be publicly
|
310
|
+
# available, clearly reflect the organization's purpose, and the URL should start
|
311
|
+
# with `https://`
|
312
|
+
website: nil
|
313
|
+
)
|
314
|
+
end
|
315
|
+
|
316
|
+
sig do
|
317
|
+
override.returns(
|
318
|
+
{
|
319
|
+
address: SurgeAPI::AccountCreateParams::Organization::Address,
|
320
|
+
contact:
|
321
|
+
T.nilable(SurgeAPI::AccountCreateParams::Organization::Contact),
|
322
|
+
country: T.nilable(String),
|
323
|
+
email: T.nilable(String),
|
324
|
+
identifier: T.nilable(String),
|
325
|
+
identifier_type:
|
326
|
+
T.nilable(
|
327
|
+
SurgeAPI::AccountCreateParams::Organization::IdentifierType::OrSymbol
|
328
|
+
),
|
329
|
+
industry:
|
330
|
+
T.nilable(
|
331
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::OrSymbol
|
332
|
+
),
|
333
|
+
mobile_number: T.nilable(String),
|
334
|
+
regions_of_operation:
|
335
|
+
T.nilable(
|
336
|
+
T::Array[
|
337
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::OrSymbol
|
338
|
+
]
|
339
|
+
),
|
340
|
+
registered_name: T.nilable(String),
|
341
|
+
stock_exchange:
|
342
|
+
T.nilable(
|
343
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::OrSymbol
|
344
|
+
),
|
345
|
+
stock_symbol: T.nilable(String),
|
346
|
+
type:
|
347
|
+
T.nilable(
|
348
|
+
SurgeAPI::AccountCreateParams::Organization::Type::OrSymbol
|
349
|
+
),
|
350
|
+
website: T.nilable(String)
|
351
|
+
}
|
352
|
+
)
|
353
|
+
end
|
354
|
+
def to_hash
|
355
|
+
end
|
356
|
+
|
357
|
+
class Address < SurgeAPI::Internal::Type::BaseModel
|
358
|
+
OrHash =
|
359
|
+
T.type_alias do
|
360
|
+
T.any(
|
361
|
+
SurgeAPI::AccountCreateParams::Organization::Address,
|
362
|
+
SurgeAPI::Internal::AnyHash
|
363
|
+
)
|
364
|
+
end
|
365
|
+
|
366
|
+
# The two character ISO 3166 country code. If none is provided, the organization's
|
367
|
+
# country code will be used.
|
368
|
+
sig { returns(T.nilable(String)) }
|
369
|
+
attr_accessor :country
|
370
|
+
|
371
|
+
# The first line of the address, typically the number and street name
|
372
|
+
sig { returns(T.nilable(String)) }
|
373
|
+
attr_accessor :line1
|
374
|
+
|
375
|
+
# The second line of the address if needed, typically an apartment or suite number
|
376
|
+
sig { returns(T.nilable(String)) }
|
377
|
+
attr_accessor :line2
|
378
|
+
|
379
|
+
# The city or locality
|
380
|
+
sig { returns(T.nilable(String)) }
|
381
|
+
attr_accessor :locality
|
382
|
+
|
383
|
+
# The name to which any mail should be addressed. If none is provided, this will
|
384
|
+
# default to the organization's registered_name
|
385
|
+
sig { returns(T.nilable(String)) }
|
386
|
+
attr_accessor :name
|
387
|
+
|
388
|
+
# The postal code
|
389
|
+
sig { returns(T.nilable(String)) }
|
390
|
+
attr_accessor :postal_code
|
391
|
+
|
392
|
+
# The state or region
|
393
|
+
sig { returns(T.nilable(String)) }
|
394
|
+
attr_accessor :region
|
395
|
+
|
396
|
+
# The address of the organization's headquarters.
|
397
|
+
sig do
|
398
|
+
params(
|
399
|
+
country: T.nilable(String),
|
400
|
+
line1: T.nilable(String),
|
401
|
+
line2: T.nilable(String),
|
402
|
+
locality: T.nilable(String),
|
403
|
+
name: T.nilable(String),
|
404
|
+
postal_code: T.nilable(String),
|
405
|
+
region: T.nilable(String)
|
406
|
+
).returns(T.attached_class)
|
407
|
+
end
|
408
|
+
def self.new(
|
409
|
+
# The two character ISO 3166 country code. If none is provided, the organization's
|
410
|
+
# country code will be used.
|
411
|
+
country: nil,
|
412
|
+
# The first line of the address, typically the number and street name
|
413
|
+
line1: nil,
|
414
|
+
# The second line of the address if needed, typically an apartment or suite number
|
415
|
+
line2: nil,
|
416
|
+
# The city or locality
|
417
|
+
locality: nil,
|
418
|
+
# The name to which any mail should be addressed. If none is provided, this will
|
419
|
+
# default to the organization's registered_name
|
420
|
+
name: nil,
|
421
|
+
# The postal code
|
422
|
+
postal_code: nil,
|
423
|
+
# The state or region
|
424
|
+
region: nil
|
425
|
+
)
|
426
|
+
end
|
427
|
+
|
428
|
+
sig do
|
429
|
+
override.returns(
|
430
|
+
{
|
431
|
+
country: T.nilable(String),
|
432
|
+
line1: T.nilable(String),
|
433
|
+
line2: T.nilable(String),
|
434
|
+
locality: T.nilable(String),
|
435
|
+
name: T.nilable(String),
|
436
|
+
postal_code: T.nilable(String),
|
437
|
+
region: T.nilable(String)
|
438
|
+
}
|
439
|
+
)
|
440
|
+
end
|
441
|
+
def to_hash
|
442
|
+
end
|
443
|
+
end
|
444
|
+
|
445
|
+
class Contact < SurgeAPI::Internal::Type::BaseModel
|
446
|
+
OrHash =
|
447
|
+
T.type_alias do
|
448
|
+
T.any(
|
449
|
+
SurgeAPI::AccountCreateParams::Organization::Contact,
|
450
|
+
SurgeAPI::Internal::AnyHash
|
451
|
+
)
|
452
|
+
end
|
453
|
+
|
454
|
+
# An email address at which the individual can be reached. Typically an email
|
455
|
+
# using the same domain name as the website URL will be preferred (e.g. with a
|
456
|
+
# website domain of `https://dtprecisionauto.com`, an email like
|
457
|
+
# `dom@dtprecisionauto.com` will be preferred over one like
|
458
|
+
# `dom@anothergarage.com` or `dom.toretto@gmail.com`)
|
459
|
+
sig { returns(T.nilable(String)) }
|
460
|
+
attr_accessor :email
|
461
|
+
|
462
|
+
# The first name (or given name) of the individual
|
463
|
+
sig { returns(T.nilable(String)) }
|
464
|
+
attr_accessor :first_name
|
465
|
+
|
466
|
+
# The last name (or family name) of the individual
|
467
|
+
sig { returns(T.nilable(String)) }
|
468
|
+
attr_accessor :last_name
|
469
|
+
|
470
|
+
# A phone number at which the individual can be reached (E.164 format)
|
471
|
+
sig { returns(T.nilable(String)) }
|
472
|
+
attr_accessor :phone_number
|
473
|
+
|
474
|
+
# The job title of the individual.
|
475
|
+
sig do
|
476
|
+
returns(
|
477
|
+
T.nilable(
|
478
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::OrSymbol
|
479
|
+
)
|
480
|
+
)
|
481
|
+
end
|
482
|
+
attr_accessor :title
|
483
|
+
|
484
|
+
# If `other` is provided for the `title` field, this field should be used to
|
485
|
+
# provide the title of the individual
|
486
|
+
sig { returns(T.nilable(String)) }
|
487
|
+
attr_accessor :title_other
|
488
|
+
|
489
|
+
# An object representing an individual who can be contacted if the carriers have
|
490
|
+
# any questions about the business.
|
491
|
+
sig do
|
492
|
+
params(
|
493
|
+
email: T.nilable(String),
|
494
|
+
first_name: T.nilable(String),
|
495
|
+
last_name: T.nilable(String),
|
496
|
+
phone_number: T.nilable(String),
|
497
|
+
title:
|
498
|
+
T.nilable(
|
499
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::OrSymbol
|
500
|
+
),
|
501
|
+
title_other: T.nilable(String)
|
502
|
+
).returns(T.attached_class)
|
503
|
+
end
|
504
|
+
def self.new(
|
505
|
+
# An email address at which the individual can be reached. Typically an email
|
506
|
+
# using the same domain name as the website URL will be preferred (e.g. with a
|
507
|
+
# website domain of `https://dtprecisionauto.com`, an email like
|
508
|
+
# `dom@dtprecisionauto.com` will be preferred over one like
|
509
|
+
# `dom@anothergarage.com` or `dom.toretto@gmail.com`)
|
510
|
+
email: nil,
|
511
|
+
# The first name (or given name) of the individual
|
512
|
+
first_name: nil,
|
513
|
+
# The last name (or family name) of the individual
|
514
|
+
last_name: nil,
|
515
|
+
# A phone number at which the individual can be reached (E.164 format)
|
516
|
+
phone_number: nil,
|
517
|
+
# The job title of the individual.
|
518
|
+
title: nil,
|
519
|
+
# If `other` is provided for the `title` field, this field should be used to
|
520
|
+
# provide the title of the individual
|
521
|
+
title_other: nil
|
522
|
+
)
|
523
|
+
end
|
524
|
+
|
525
|
+
sig do
|
526
|
+
override.returns(
|
527
|
+
{
|
528
|
+
email: T.nilable(String),
|
529
|
+
first_name: T.nilable(String),
|
530
|
+
last_name: T.nilable(String),
|
531
|
+
phone_number: T.nilable(String),
|
532
|
+
title:
|
533
|
+
T.nilable(
|
534
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::OrSymbol
|
535
|
+
),
|
536
|
+
title_other: T.nilable(String)
|
537
|
+
}
|
538
|
+
)
|
539
|
+
end
|
540
|
+
def to_hash
|
541
|
+
end
|
542
|
+
|
543
|
+
# The job title of the individual.
|
544
|
+
module Title
|
545
|
+
extend SurgeAPI::Internal::Type::Enum
|
546
|
+
|
547
|
+
TaggedSymbol =
|
548
|
+
T.type_alias do
|
549
|
+
T.all(
|
550
|
+
Symbol,
|
551
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title
|
552
|
+
)
|
553
|
+
end
|
554
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
555
|
+
|
556
|
+
CEO =
|
557
|
+
T.let(
|
558
|
+
:ceo,
|
559
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::TaggedSymbol
|
560
|
+
)
|
561
|
+
CFO =
|
562
|
+
T.let(
|
563
|
+
:cfo,
|
564
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::TaggedSymbol
|
565
|
+
)
|
566
|
+
DIRECTOR =
|
567
|
+
T.let(
|
568
|
+
:director,
|
569
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::TaggedSymbol
|
570
|
+
)
|
571
|
+
GM =
|
572
|
+
T.let(
|
573
|
+
:gm,
|
574
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::TaggedSymbol
|
575
|
+
)
|
576
|
+
VP =
|
577
|
+
T.let(
|
578
|
+
:vp,
|
579
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::TaggedSymbol
|
580
|
+
)
|
581
|
+
GENERAL_COUNSEL =
|
582
|
+
T.let(
|
583
|
+
:general_counsel,
|
584
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::TaggedSymbol
|
585
|
+
)
|
586
|
+
OTHER =
|
587
|
+
T.let(
|
588
|
+
:other,
|
589
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::TaggedSymbol
|
590
|
+
)
|
591
|
+
|
592
|
+
sig do
|
593
|
+
override.returns(
|
594
|
+
T::Array[
|
595
|
+
SurgeAPI::AccountCreateParams::Organization::Contact::Title::TaggedSymbol
|
596
|
+
]
|
597
|
+
)
|
598
|
+
end
|
599
|
+
def self.values
|
600
|
+
end
|
601
|
+
end
|
602
|
+
end
|
603
|
+
|
604
|
+
# The type of identifier being provided for the organization. Support for more
|
605
|
+
# values will be added in the future.
|
606
|
+
module IdentifierType
|
607
|
+
extend SurgeAPI::Internal::Type::Enum
|
608
|
+
|
609
|
+
TaggedSymbol =
|
610
|
+
T.type_alias do
|
611
|
+
T.all(
|
612
|
+
Symbol,
|
613
|
+
SurgeAPI::AccountCreateParams::Organization::IdentifierType
|
614
|
+
)
|
615
|
+
end
|
616
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
617
|
+
|
618
|
+
EIN =
|
619
|
+
T.let(
|
620
|
+
:ein,
|
621
|
+
SurgeAPI::AccountCreateParams::Organization::IdentifierType::TaggedSymbol
|
622
|
+
)
|
623
|
+
|
624
|
+
sig do
|
625
|
+
override.returns(
|
626
|
+
T::Array[
|
627
|
+
SurgeAPI::AccountCreateParams::Organization::IdentifierType::TaggedSymbol
|
628
|
+
]
|
629
|
+
)
|
630
|
+
end
|
631
|
+
def self.values
|
632
|
+
end
|
633
|
+
end
|
634
|
+
|
635
|
+
# The industry in which the organization operates.
|
636
|
+
module Industry
|
637
|
+
extend SurgeAPI::Internal::Type::Enum
|
638
|
+
|
639
|
+
TaggedSymbol =
|
640
|
+
T.type_alias do
|
641
|
+
T.all(
|
642
|
+
Symbol,
|
643
|
+
SurgeAPI::AccountCreateParams::Organization::Industry
|
644
|
+
)
|
645
|
+
end
|
646
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
647
|
+
|
648
|
+
AGRICULTURE =
|
649
|
+
T.let(
|
650
|
+
:agriculture,
|
651
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
652
|
+
)
|
653
|
+
AUTOMOTIVE =
|
654
|
+
T.let(
|
655
|
+
:automotive,
|
656
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
657
|
+
)
|
658
|
+
BANKING =
|
659
|
+
T.let(
|
660
|
+
:banking,
|
661
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
662
|
+
)
|
663
|
+
CONSTRUCTION =
|
664
|
+
T.let(
|
665
|
+
:construction,
|
666
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
667
|
+
)
|
668
|
+
CONSUMER =
|
669
|
+
T.let(
|
670
|
+
:consumer,
|
671
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
672
|
+
)
|
673
|
+
EDUCATION =
|
674
|
+
T.let(
|
675
|
+
:education,
|
676
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
677
|
+
)
|
678
|
+
ELECTRONICS =
|
679
|
+
T.let(
|
680
|
+
:electronics,
|
681
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
682
|
+
)
|
683
|
+
ENERGY =
|
684
|
+
T.let(
|
685
|
+
:energy,
|
686
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
687
|
+
)
|
688
|
+
ENGINEERING =
|
689
|
+
T.let(
|
690
|
+
:engineering,
|
691
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
692
|
+
)
|
693
|
+
FAST_MOVING_CONSUMER_GOODS =
|
694
|
+
T.let(
|
695
|
+
:fast_moving_consumer_goods,
|
696
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
697
|
+
)
|
698
|
+
FINANCIAL =
|
699
|
+
T.let(
|
700
|
+
:financial,
|
701
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
702
|
+
)
|
703
|
+
FINTECH =
|
704
|
+
T.let(
|
705
|
+
:fintech,
|
706
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
707
|
+
)
|
708
|
+
FOOD_AND_BEVERAGE =
|
709
|
+
T.let(
|
710
|
+
:food_and_beverage,
|
711
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
712
|
+
)
|
713
|
+
GOVERNMENT =
|
714
|
+
T.let(
|
715
|
+
:government,
|
716
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
717
|
+
)
|
718
|
+
HEALTHCARE =
|
719
|
+
T.let(
|
720
|
+
:healthcare,
|
721
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
722
|
+
)
|
723
|
+
HOSPITALITY =
|
724
|
+
T.let(
|
725
|
+
:hospitality,
|
726
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
727
|
+
)
|
728
|
+
INSURANCE =
|
729
|
+
T.let(
|
730
|
+
:insurance,
|
731
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
732
|
+
)
|
733
|
+
JEWELRY =
|
734
|
+
T.let(
|
735
|
+
:jewelry,
|
736
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
737
|
+
)
|
738
|
+
LEGAL =
|
739
|
+
T.let(
|
740
|
+
:legal,
|
741
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
742
|
+
)
|
743
|
+
MANUFACTURING =
|
744
|
+
T.let(
|
745
|
+
:manufacturing,
|
746
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
747
|
+
)
|
748
|
+
MEDIA =
|
749
|
+
T.let(
|
750
|
+
:media,
|
751
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
752
|
+
)
|
753
|
+
NOT_FOR_PROFIT =
|
754
|
+
T.let(
|
755
|
+
:not_for_profit,
|
756
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
757
|
+
)
|
758
|
+
OIL_AND_GAS =
|
759
|
+
T.let(
|
760
|
+
:oil_and_gas,
|
761
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
762
|
+
)
|
763
|
+
ONLINE =
|
764
|
+
T.let(
|
765
|
+
:online,
|
766
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
767
|
+
)
|
768
|
+
PROFESSIONAL_SERVICES =
|
769
|
+
T.let(
|
770
|
+
:professional_services,
|
771
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
772
|
+
)
|
773
|
+
RAW_MATERIALS =
|
774
|
+
T.let(
|
775
|
+
:raw_materials,
|
776
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
777
|
+
)
|
778
|
+
REAL_ESTATE =
|
779
|
+
T.let(
|
780
|
+
:real_estate,
|
781
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
782
|
+
)
|
783
|
+
RELIGION =
|
784
|
+
T.let(
|
785
|
+
:religion,
|
786
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
787
|
+
)
|
788
|
+
RETAIL =
|
789
|
+
T.let(
|
790
|
+
:retail,
|
791
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
792
|
+
)
|
793
|
+
TECHNOLOGY =
|
794
|
+
T.let(
|
795
|
+
:technology,
|
796
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
797
|
+
)
|
798
|
+
TELECOMMUNICATIONS =
|
799
|
+
T.let(
|
800
|
+
:telecommunications,
|
801
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
802
|
+
)
|
803
|
+
TRANSPORTATION =
|
804
|
+
T.let(
|
805
|
+
:transportation,
|
806
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
807
|
+
)
|
808
|
+
TRAVEL =
|
809
|
+
T.let(
|
810
|
+
:travel,
|
811
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
812
|
+
)
|
813
|
+
|
814
|
+
sig do
|
815
|
+
override.returns(
|
816
|
+
T::Array[
|
817
|
+
SurgeAPI::AccountCreateParams::Organization::Industry::TaggedSymbol
|
818
|
+
]
|
819
|
+
)
|
820
|
+
end
|
821
|
+
def self.values
|
822
|
+
end
|
823
|
+
end
|
824
|
+
|
825
|
+
module RegionsOfOperation
|
826
|
+
extend SurgeAPI::Internal::Type::Enum
|
827
|
+
|
828
|
+
TaggedSymbol =
|
829
|
+
T.type_alias do
|
830
|
+
T.all(
|
831
|
+
Symbol,
|
832
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation
|
833
|
+
)
|
834
|
+
end
|
835
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
836
|
+
|
837
|
+
AFRICA =
|
838
|
+
T.let(
|
839
|
+
:africa,
|
840
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::TaggedSymbol
|
841
|
+
)
|
842
|
+
ASIA =
|
843
|
+
T.let(
|
844
|
+
:asia,
|
845
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::TaggedSymbol
|
846
|
+
)
|
847
|
+
AUSTRALIA =
|
848
|
+
T.let(
|
849
|
+
:australia,
|
850
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::TaggedSymbol
|
851
|
+
)
|
852
|
+
EUROPE =
|
853
|
+
T.let(
|
854
|
+
:europe,
|
855
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::TaggedSymbol
|
856
|
+
)
|
857
|
+
LATIN_AMERICA =
|
858
|
+
T.let(
|
859
|
+
:latin_america,
|
860
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::TaggedSymbol
|
861
|
+
)
|
862
|
+
USA_AND_CANADA =
|
863
|
+
T.let(
|
864
|
+
:usa_and_canada,
|
865
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::TaggedSymbol
|
866
|
+
)
|
867
|
+
|
868
|
+
sig do
|
869
|
+
override.returns(
|
870
|
+
T::Array[
|
871
|
+
SurgeAPI::AccountCreateParams::Organization::RegionsOfOperation::TaggedSymbol
|
872
|
+
]
|
873
|
+
)
|
874
|
+
end
|
875
|
+
def self.values
|
876
|
+
end
|
877
|
+
end
|
878
|
+
|
879
|
+
# For publicly traded companies, this is the exchange on which the company's stock
|
880
|
+
# is traded.
|
881
|
+
module StockExchange
|
882
|
+
extend SurgeAPI::Internal::Type::Enum
|
883
|
+
|
884
|
+
TaggedSymbol =
|
885
|
+
T.type_alias do
|
886
|
+
T.all(
|
887
|
+
Symbol,
|
888
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange
|
889
|
+
)
|
890
|
+
end
|
891
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
892
|
+
|
893
|
+
AMEX =
|
894
|
+
T.let(
|
895
|
+
:amex,
|
896
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
897
|
+
)
|
898
|
+
AMX =
|
899
|
+
T.let(
|
900
|
+
:amx,
|
901
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
902
|
+
)
|
903
|
+
ASX =
|
904
|
+
T.let(
|
905
|
+
:asx,
|
906
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
907
|
+
)
|
908
|
+
B3 =
|
909
|
+
T.let(
|
910
|
+
:b3,
|
911
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
912
|
+
)
|
913
|
+
BME =
|
914
|
+
T.let(
|
915
|
+
:bme,
|
916
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
917
|
+
)
|
918
|
+
BSE =
|
919
|
+
T.let(
|
920
|
+
:bse,
|
921
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
922
|
+
)
|
923
|
+
FRA =
|
924
|
+
T.let(
|
925
|
+
:fra,
|
926
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
927
|
+
)
|
928
|
+
ICEX =
|
929
|
+
T.let(
|
930
|
+
:icex,
|
931
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
932
|
+
)
|
933
|
+
JPX =
|
934
|
+
T.let(
|
935
|
+
:jpx,
|
936
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
937
|
+
)
|
938
|
+
JSE =
|
939
|
+
T.let(
|
940
|
+
:jse,
|
941
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
942
|
+
)
|
943
|
+
KRX =
|
944
|
+
T.let(
|
945
|
+
:krx,
|
946
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
947
|
+
)
|
948
|
+
LON =
|
949
|
+
T.let(
|
950
|
+
:lon,
|
951
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
952
|
+
)
|
953
|
+
NASDAQ =
|
954
|
+
T.let(
|
955
|
+
:nasdaq,
|
956
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
957
|
+
)
|
958
|
+
NONE =
|
959
|
+
T.let(
|
960
|
+
:none,
|
961
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
962
|
+
)
|
963
|
+
NYSE =
|
964
|
+
T.let(
|
965
|
+
:nyse,
|
966
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
967
|
+
)
|
968
|
+
NSE =
|
969
|
+
T.let(
|
970
|
+
:nse,
|
971
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
972
|
+
)
|
973
|
+
OMX =
|
974
|
+
T.let(
|
975
|
+
:omx,
|
976
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
977
|
+
)
|
978
|
+
OTHER =
|
979
|
+
T.let(
|
980
|
+
:other,
|
981
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
982
|
+
)
|
983
|
+
SEHK =
|
984
|
+
T.let(
|
985
|
+
:sehk,
|
986
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
987
|
+
)
|
988
|
+
SGX =
|
989
|
+
T.let(
|
990
|
+
:sgx,
|
991
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
992
|
+
)
|
993
|
+
SSE =
|
994
|
+
T.let(
|
995
|
+
:sse,
|
996
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
997
|
+
)
|
998
|
+
STO =
|
999
|
+
T.let(
|
1000
|
+
:sto,
|
1001
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
1002
|
+
)
|
1003
|
+
SWX =
|
1004
|
+
T.let(
|
1005
|
+
:swx,
|
1006
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
1007
|
+
)
|
1008
|
+
SZSE =
|
1009
|
+
T.let(
|
1010
|
+
:szse,
|
1011
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
1012
|
+
)
|
1013
|
+
TSX =
|
1014
|
+
T.let(
|
1015
|
+
:tsx,
|
1016
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
1017
|
+
)
|
1018
|
+
TWSE =
|
1019
|
+
T.let(
|
1020
|
+
:twse,
|
1021
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
1022
|
+
)
|
1023
|
+
VSE =
|
1024
|
+
T.let(
|
1025
|
+
:vse,
|
1026
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
1027
|
+
)
|
1028
|
+
|
1029
|
+
sig do
|
1030
|
+
override.returns(
|
1031
|
+
T::Array[
|
1032
|
+
SurgeAPI::AccountCreateParams::Organization::StockExchange::TaggedSymbol
|
1033
|
+
]
|
1034
|
+
)
|
1035
|
+
end
|
1036
|
+
def self.values
|
1037
|
+
end
|
1038
|
+
end
|
1039
|
+
|
1040
|
+
# The type of organization
|
1041
|
+
module Type
|
1042
|
+
extend SurgeAPI::Internal::Type::Enum
|
1043
|
+
|
1044
|
+
TaggedSymbol =
|
1045
|
+
T.type_alias do
|
1046
|
+
T.all(Symbol, SurgeAPI::AccountCreateParams::Organization::Type)
|
1047
|
+
end
|
1048
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
1049
|
+
|
1050
|
+
CO_OP =
|
1051
|
+
T.let(
|
1052
|
+
:co_op,
|
1053
|
+
SurgeAPI::AccountCreateParams::Organization::Type::TaggedSymbol
|
1054
|
+
)
|
1055
|
+
GOVERNMENT =
|
1056
|
+
T.let(
|
1057
|
+
:government,
|
1058
|
+
SurgeAPI::AccountCreateParams::Organization::Type::TaggedSymbol
|
1059
|
+
)
|
1060
|
+
LLC =
|
1061
|
+
T.let(
|
1062
|
+
:llc,
|
1063
|
+
SurgeAPI::AccountCreateParams::Organization::Type::TaggedSymbol
|
1064
|
+
)
|
1065
|
+
NON_PROFIT =
|
1066
|
+
T.let(
|
1067
|
+
:non_profit,
|
1068
|
+
SurgeAPI::AccountCreateParams::Organization::Type::TaggedSymbol
|
1069
|
+
)
|
1070
|
+
PARTNERSHIP =
|
1071
|
+
T.let(
|
1072
|
+
:partnership,
|
1073
|
+
SurgeAPI::AccountCreateParams::Organization::Type::TaggedSymbol
|
1074
|
+
)
|
1075
|
+
PRIVATE_CORPORATION =
|
1076
|
+
T.let(
|
1077
|
+
:private_corporation,
|
1078
|
+
SurgeAPI::AccountCreateParams::Organization::Type::TaggedSymbol
|
1079
|
+
)
|
1080
|
+
PUBLIC_CORPORATION =
|
1081
|
+
T.let(
|
1082
|
+
:public_corporation,
|
1083
|
+
SurgeAPI::AccountCreateParams::Organization::Type::TaggedSymbol
|
1084
|
+
)
|
1085
|
+
SOLE_PROPRIETOR =
|
1086
|
+
T.let(
|
1087
|
+
:sole_proprietor,
|
1088
|
+
SurgeAPI::AccountCreateParams::Organization::Type::TaggedSymbol
|
1089
|
+
)
|
1090
|
+
|
1091
|
+
sig do
|
1092
|
+
override.returns(
|
1093
|
+
T::Array[
|
1094
|
+
SurgeAPI::AccountCreateParams::Organization::Type::TaggedSymbol
|
1095
|
+
]
|
1096
|
+
)
|
1097
|
+
end
|
1098
|
+
def self.values
|
1099
|
+
end
|
1100
|
+
end
|
1101
|
+
end
|
1102
|
+
end
|
1103
|
+
end
|
1104
|
+
end
|