ding_sdk 0.5.3 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/{ding/sdk.rb → ding_sdk/ding.rb} +1 -1
- data/lib/{ding → ding_sdk}/lookup.rb +9 -7
- data/lib/{ding/models/operations/check.rb → ding_sdk/models/operations/check_response.rb} +7 -10
- data/lib/{ding/models/operations/create_autentication.rb → ding_sdk/models/operations/create_autentication_response.rb} +7 -10
- data/lib/ding_sdk/models/operations/lookup_request.rb +27 -0
- data/lib/ding_sdk/models/operations/lookup_response.rb +36 -0
- data/lib/{ding/models/operations/retry_.rb → ding_sdk/models/operations/retry_response.rb} +7 -10
- data/lib/ding_sdk/models/operations.rb +14 -0
- data/lib/{ding/models/shared/errorresponse.rb → ding_sdk/models/shared/code.rb} +1 -36
- data/lib/ding_sdk/models/shared/createauthenticationrequest.rb +54 -0
- data/lib/ding_sdk/models/shared/createauthenticationresponse.rb +37 -0
- data/lib/{ding → ding_sdk}/models/shared/createcheckrequest.rb +5 -6
- data/lib/ding_sdk/models/shared/createcheckresponse.rb +34 -0
- data/lib/ding_sdk/models/shared/createcheckresponse_status.rb +30 -0
- data/lib/ding_sdk/models/shared/device_type.rb +20 -0
- data/lib/ding_sdk/models/shared/errorresponse.rb +44 -0
- data/lib/ding_sdk/models/shared/line_type.rb +28 -0
- data/lib/ding_sdk/models/shared/lookupresponse.rb +42 -0
- data/lib/{ding → ding_sdk}/models/shared/retryauthenticationrequest.rb +4 -5
- data/lib/ding_sdk/models/shared/retryauthenticationresponse.rb +43 -0
- data/lib/ding_sdk/models/shared/retryauthenticationresponse_status.rb +30 -0
- data/lib/{ding → ding_sdk}/models/shared/security.rb +3 -4
- data/lib/ding_sdk/models/shared/status.rb +24 -0
- data/lib/ding_sdk/models/shared.rb +24 -0
- data/lib/{ding → ding_sdk}/otp.rb +17 -13
- data/lib/{ding → ding_sdk}/sdkconfiguration.rb +5 -5
- data/lib/ding_sdk.rb +8 -20
- metadata +30 -21
- data/lib/ding/models/operations/lookup.rb +0 -56
- data/lib/ding/models/shared/createauthenticationrequest.rb +0 -65
- data/lib/ding/models/shared/createauthenticationresponse.rb +0 -52
- data/lib/ding/models/shared/createcheckresponse.rb +0 -55
- data/lib/ding/models/shared/lookupresponse.rb +0 -61
- data/lib/ding/models/shared/retryauthenticationresponse.rb +0 -64
- /data/lib/{ding → ding_sdk}/utils/metadata_fields.rb +0 -0
- /data/lib/{ding → ding_sdk}/utils/utils.rb +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fe6243d612c59cc553c62339c822520671efa8c5ee4b47df1844f0cae99572ac
|
4
|
+
data.tar.gz: bfccf263211c686f9c53e9aadddf26b79eb62743948a60f31e1232a374c8ce51
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 583984a23fdb77f20f35a0ec8c49726f891647696c53361f6e1ca48141e3e2d0ffee8c71ef714187041de1a4ff8fa1bce5eace435c661e84db3e97f5477c2f13
|
7
|
+
data.tar.gz: 6ba811ed065f5d3f72f65c5183af48a2d9e9f183068cdbe6aa4adf0fae0ab64e03c4b327fb7eec2c2f581e588492d17a9cd12031d6aef2690ef5ff777040e1d7
|
@@ -10,17 +10,19 @@ require 'sorbet-runtime'
|
|
10
10
|
module DingSDK
|
11
11
|
extend T::Sig
|
12
12
|
class Lookup
|
13
|
-
# Retrieve up-to-date metadata about a specific phone number
|
14
13
|
extend T::Sig
|
14
|
+
# Retrieve up-to-date metadata about a specific phone number
|
15
|
+
|
15
16
|
sig { params(sdk_config: SDKConfiguration).void }
|
16
17
|
def initialize(sdk_config)
|
17
18
|
@sdk_configuration = sdk_config
|
18
19
|
end
|
19
20
|
|
20
|
-
|
21
|
+
|
22
|
+
sig { params(customer_uuid: ::String, phone_number: ::String).returns(Utils::FieldAugmented) }
|
21
23
|
def lookup(customer_uuid, phone_number)
|
22
24
|
# lookup - Perform a phone number lookup
|
23
|
-
request = Operations::LookupRequest.new(
|
25
|
+
request = ::DingSDK::Operations::LookupRequest.new(
|
24
26
|
|
25
27
|
customer_uuid: customer_uuid,
|
26
28
|
phone_number: phone_number
|
@@ -28,7 +30,7 @@ module DingSDK
|
|
28
30
|
url, params = @sdk_configuration.get_server_details
|
29
31
|
base_url = Utils.template_url(url, params)
|
30
32
|
url = Utils.generate_url(
|
31
|
-
Operations::LookupRequest,
|
33
|
+
::DingSDK::Operations::LookupRequest,
|
32
34
|
base_url,
|
33
35
|
'/lookup/{phone_number}',
|
34
36
|
request
|
@@ -44,17 +46,17 @@ module DingSDK
|
|
44
46
|
|
45
47
|
content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
|
46
48
|
|
47
|
-
res = Operations::LookupResponse.new(
|
49
|
+
res = ::DingSDK::Operations::LookupResponse.new(
|
48
50
|
status_code: r.status, content_type: content_type, raw_response: r
|
49
51
|
)
|
50
52
|
if r.status == 200
|
51
53
|
if Utils.match_content_type(content_type, 'application/json')
|
52
|
-
out = Utils.unmarshal_complex(r.env.response_body, Shared::LookupResponse)
|
54
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::DingSDK::Shared::LookupResponse)
|
53
55
|
res.lookup_response = out
|
54
56
|
end
|
55
57
|
elsif r.status == 400
|
56
58
|
if Utils.match_content_type(content_type, 'application/json')
|
57
|
-
out = Utils.unmarshal_complex(r.env.response_body, Shared::ErrorResponse)
|
59
|
+
out = Utils.unmarshal_complex(r.env.response_body, ::DingSDK::Shared::ErrorResponse)
|
58
60
|
res.error_response = out
|
59
61
|
end
|
60
62
|
end
|
@@ -3,30 +3,27 @@
|
|
3
3
|
# typed: true
|
4
4
|
# frozen_string_literal: true
|
5
5
|
|
6
|
-
require 'sorbet-runtime'
|
7
|
-
require 'faraday'
|
8
|
-
require_relative '../shared/createcheckresponse'
|
9
|
-
require_relative '../shared/errorresponse'
|
10
6
|
|
11
7
|
module DingSDK
|
12
8
|
module Operations
|
9
|
+
|
13
10
|
|
14
11
|
class CheckResponse < ::DingSDK::Utils::FieldAugmented
|
15
12
|
extend T::Sig
|
16
13
|
|
17
14
|
# HTTP response content type for this operation
|
18
|
-
field :content_type, String
|
15
|
+
field :content_type, ::String
|
19
16
|
# Raw HTTP response; suitable for custom response parsing
|
20
|
-
field :raw_response, Faraday::Response
|
17
|
+
field :raw_response, ::Faraday::Response
|
21
18
|
# HTTP response status code for this operation
|
22
|
-
field :status_code, Integer
|
19
|
+
field :status_code, ::Integer
|
23
20
|
# OK
|
24
|
-
field :create_check_response, T.nilable(Shared::CreateCheckResponse)
|
21
|
+
field :create_check_response, T.nilable(::DingSDK::Shared::CreateCheckResponse)
|
25
22
|
# Bad Request
|
26
|
-
field :error_response, T.nilable(Shared::ErrorResponse)
|
23
|
+
field :error_response, T.nilable(::DingSDK::Shared::ErrorResponse)
|
27
24
|
|
28
25
|
|
29
|
-
sig { params(content_type: String, raw_response: Faraday::Response, status_code: Integer, create_check_response: T.nilable(Shared::CreateCheckResponse), error_response: T.nilable(Shared::ErrorResponse)).void }
|
26
|
+
sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, create_check_response: T.nilable(::DingSDK::Shared::CreateCheckResponse), error_response: T.nilable(::DingSDK::Shared::ErrorResponse)).void }
|
30
27
|
def initialize(content_type: nil, raw_response: nil, status_code: nil, create_check_response: nil, error_response: nil)
|
31
28
|
@content_type = content_type
|
32
29
|
@raw_response = raw_response
|
@@ -3,30 +3,27 @@
|
|
3
3
|
# typed: true
|
4
4
|
# frozen_string_literal: true
|
5
5
|
|
6
|
-
require 'sorbet-runtime'
|
7
|
-
require 'faraday'
|
8
|
-
require_relative '../shared/createauthenticationresponse'
|
9
|
-
require_relative '../shared/errorresponse'
|
10
6
|
|
11
7
|
module DingSDK
|
12
8
|
module Operations
|
9
|
+
|
13
10
|
|
14
11
|
class CreateAutenticationResponse < ::DingSDK::Utils::FieldAugmented
|
15
12
|
extend T::Sig
|
16
13
|
|
17
14
|
# HTTP response content type for this operation
|
18
|
-
field :content_type, String
|
15
|
+
field :content_type, ::String
|
19
16
|
# Raw HTTP response; suitable for custom response parsing
|
20
|
-
field :raw_response, Faraday::Response
|
17
|
+
field :raw_response, ::Faraday::Response
|
21
18
|
# HTTP response status code for this operation
|
22
|
-
field :status_code, Integer
|
19
|
+
field :status_code, ::Integer
|
23
20
|
# OK
|
24
|
-
field :create_authentication_response, T.nilable(Shared::CreateAuthenticationResponse)
|
21
|
+
field :create_authentication_response, T.nilable(::DingSDK::Shared::CreateAuthenticationResponse)
|
25
22
|
# Bad Request
|
26
|
-
field :error_response, T.nilable(Shared::ErrorResponse)
|
23
|
+
field :error_response, T.nilable(::DingSDK::Shared::ErrorResponse)
|
27
24
|
|
28
25
|
|
29
|
-
sig { params(content_type: String, raw_response: Faraday::Response, status_code: Integer, create_authentication_response: T.nilable(Shared::CreateAuthenticationResponse), error_response: T.nilable(Shared::ErrorResponse)).void }
|
26
|
+
sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, create_authentication_response: T.nilable(::DingSDK::Shared::CreateAuthenticationResponse), error_response: T.nilable(::DingSDK::Shared::ErrorResponse)).void }
|
30
27
|
def initialize(content_type: nil, raw_response: nil, status_code: nil, create_authentication_response: nil, error_response: nil)
|
31
28
|
@content_type = content_type
|
32
29
|
@raw_response = raw_response
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Operations
|
9
|
+
|
10
|
+
|
11
|
+
class LookupRequest < ::DingSDK::Utils::FieldAugmented
|
12
|
+
extend T::Sig
|
13
|
+
|
14
|
+
|
15
|
+
field :customer_uuid, ::String, { 'header': { 'field_name': 'customer-uuid', 'style': 'simple', 'explode': false } }
|
16
|
+
|
17
|
+
field :phone_number, ::String, { 'path_param': { 'field_name': 'phone_number', 'style': 'simple', 'explode': false } }
|
18
|
+
|
19
|
+
|
20
|
+
sig { params(customer_uuid: ::String, phone_number: ::String).void }
|
21
|
+
def initialize(customer_uuid: nil, phone_number: nil)
|
22
|
+
@customer_uuid = customer_uuid
|
23
|
+
@phone_number = phone_number
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Operations
|
9
|
+
|
10
|
+
|
11
|
+
class LookupResponse < ::DingSDK::Utils::FieldAugmented
|
12
|
+
extend T::Sig
|
13
|
+
|
14
|
+
# HTTP response content type for this operation
|
15
|
+
field :content_type, ::String
|
16
|
+
# Raw HTTP response; suitable for custom response parsing
|
17
|
+
field :raw_response, ::Faraday::Response
|
18
|
+
# HTTP response status code for this operation
|
19
|
+
field :status_code, ::Integer
|
20
|
+
# Bad Request
|
21
|
+
field :error_response, T.nilable(::DingSDK::Shared::ErrorResponse)
|
22
|
+
# OK
|
23
|
+
field :lookup_response, T.nilable(::DingSDK::Shared::LookupResponse)
|
24
|
+
|
25
|
+
|
26
|
+
sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, error_response: T.nilable(::DingSDK::Shared::ErrorResponse), lookup_response: T.nilable(::DingSDK::Shared::LookupResponse)).void }
|
27
|
+
def initialize(content_type: nil, raw_response: nil, status_code: nil, error_response: nil, lookup_response: nil)
|
28
|
+
@content_type = content_type
|
29
|
+
@raw_response = raw_response
|
30
|
+
@status_code = status_code
|
31
|
+
@error_response = error_response
|
32
|
+
@lookup_response = lookup_response
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -3,30 +3,27 @@
|
|
3
3
|
# typed: true
|
4
4
|
# frozen_string_literal: true
|
5
5
|
|
6
|
-
require 'sorbet-runtime'
|
7
|
-
require 'faraday'
|
8
|
-
require_relative '../shared/errorresponse'
|
9
|
-
require_relative '../shared/retryauthenticationresponse'
|
10
6
|
|
11
7
|
module DingSDK
|
12
8
|
module Operations
|
9
|
+
|
13
10
|
|
14
11
|
class RetryResponse < ::DingSDK::Utils::FieldAugmented
|
15
12
|
extend T::Sig
|
16
13
|
|
17
14
|
# HTTP response content type for this operation
|
18
|
-
field :content_type, String
|
15
|
+
field :content_type, ::String
|
19
16
|
# Raw HTTP response; suitable for custom response parsing
|
20
|
-
field :raw_response, Faraday::Response
|
17
|
+
field :raw_response, ::Faraday::Response
|
21
18
|
# HTTP response status code for this operation
|
22
|
-
field :status_code, Integer
|
19
|
+
field :status_code, ::Integer
|
23
20
|
# Bad Request
|
24
|
-
field :error_response, T.nilable(Shared::ErrorResponse)
|
21
|
+
field :error_response, T.nilable(::DingSDK::Shared::ErrorResponse)
|
25
22
|
# OK
|
26
|
-
field :retry_authentication_response, T.nilable(Shared::RetryAuthenticationResponse)
|
23
|
+
field :retry_authentication_response, T.nilable(::DingSDK::Shared::RetryAuthenticationResponse)
|
27
24
|
|
28
25
|
|
29
|
-
sig { params(content_type: String, raw_response: Faraday::Response, status_code: Integer, error_response: T.nilable(Shared::ErrorResponse), retry_authentication_response: T.nilable(Shared::RetryAuthenticationResponse)).void }
|
26
|
+
sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, error_response: T.nilable(::DingSDK::Shared::ErrorResponse), retry_authentication_response: T.nilable(::DingSDK::Shared::RetryAuthenticationResponse)).void }
|
30
27
|
def initialize(content_type: nil, raw_response: nil, status_code: nil, error_response: nil, retry_authentication_response: nil)
|
31
28
|
@content_type = content_type
|
32
29
|
@raw_response = raw_response
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
module DingSDK
|
7
|
+
module Operations
|
8
|
+
autoload :CheckResponse, 'ding_sdk/models/operations/check_response.rb'
|
9
|
+
autoload :CreateAutenticationResponse, 'ding_sdk/models/operations/create_autentication_response.rb'
|
10
|
+
autoload :RetryResponse, 'ding_sdk/models/operations/retry_response.rb'
|
11
|
+
autoload :LookupRequest, 'ding_sdk/models/operations/lookup_request.rb'
|
12
|
+
autoload :LookupResponse, 'ding_sdk/models/operations/lookup_response.rb'
|
13
|
+
end
|
14
|
+
end
|
@@ -3,11 +3,10 @@
|
|
3
3
|
# typed: true
|
4
4
|
# frozen_string_literal: true
|
5
5
|
|
6
|
-
require 'sorbet-runtime'
|
7
|
-
require 'faraday'
|
8
6
|
|
9
7
|
module DingSDK
|
10
8
|
module Shared
|
9
|
+
|
11
10
|
# Code - A machine-readable code that describes the error. Possible values are:
|
12
11
|
# * `invalid_phone_number` - This is not a valid E.164 number.
|
13
12
|
# * `internal_server_error` - An internal server error occurred.
|
@@ -44,39 +43,5 @@ module DingSDK
|
|
44
43
|
end
|
45
44
|
end
|
46
45
|
|
47
|
-
|
48
|
-
|
49
|
-
class ErrorResponse < ::DingSDK::Utils::FieldAugmented
|
50
|
-
extend T::Sig
|
51
|
-
|
52
|
-
# A machine-readable code that describes the error. Possible values are:
|
53
|
-
# * `invalid_phone_number` - This is not a valid E.164 number.
|
54
|
-
# * `internal_server_error` - An internal server error occurred.
|
55
|
-
# * `bad_request` - The request was malformed.
|
56
|
-
# * `account_invalid` - The provided customer UUID is invalid.
|
57
|
-
# * `negative_balance` - You have a negative balance.
|
58
|
-
# * `invalid_line` - Ding does not support this type of phone number.
|
59
|
-
# * `unsupported_region` - Ding does not support this region yet.
|
60
|
-
# * `invalid_auth_uuid` - The provided authentication UUID is invalid.
|
61
|
-
# * `blocked_number` - The phone number is in the blocklist.
|
62
|
-
# * `invalid_app_version` - The provided application version is invalid.
|
63
|
-
# * `invalid_os_version` - The provided OS version is invalid.
|
64
|
-
# * `invalid_device_model` - The provided device model is invalid.
|
65
|
-
# * `invalid_device_id` - The provided device ID is invalid.
|
66
|
-
#
|
67
|
-
field :code, T.nilable(Shared::Code), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('code'), 'decoder': Utils.enum_from_string(Shared::Code, true) } }
|
68
|
-
# A link to the documentation that describes the error.
|
69
|
-
field :doc_url, T.nilable(String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('doc_url') } }
|
70
|
-
# A human-readable message that describes the error.
|
71
|
-
field :message, T.nilable(String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('message') } }
|
72
|
-
|
73
|
-
|
74
|
-
sig { params(code: T.nilable(Shared::Code), doc_url: T.nilable(String), message: T.nilable(String)).void }
|
75
|
-
def initialize(code: nil, doc_url: nil, message: nil)
|
76
|
-
@code = code
|
77
|
-
@doc_url = doc_url
|
78
|
-
@message = message
|
79
|
-
end
|
80
|
-
end
|
81
46
|
end
|
82
47
|
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Shared
|
9
|
+
|
10
|
+
|
11
|
+
class CreateAuthenticationRequest < ::DingSDK::Utils::FieldAugmented
|
12
|
+
extend T::Sig
|
13
|
+
|
14
|
+
# Your customer UUID, which can be found in the API settings in the dashboard.
|
15
|
+
field :customer_uuid, ::String, { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('customer_uuid') } }
|
16
|
+
# An E.164 formatted phone number to send the OTP to.
|
17
|
+
field :phone_number, ::String, { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('phone_number') } }
|
18
|
+
# The Android SMS Retriever API hash code that identifies your app. This allows you to automatically retrieve and fill the OTP code on Android devices.
|
19
|
+
field :app_realm, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('app_realm') } }
|
20
|
+
# The version of your application.
|
21
|
+
field :app_version, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('app_version') } }
|
22
|
+
# A webhook URL to which delivery statuses will be sent.
|
23
|
+
field :callback_url, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('callback_url') } }
|
24
|
+
# Unique identifier for the user's device. For Android, this corresponds to the `ANDROID_ID` and for iOS, this corresponds to the `identifierForVendor`.
|
25
|
+
field :device_id, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('device_id') } }
|
26
|
+
# The model of the user's device.
|
27
|
+
field :device_model, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('device_model') } }
|
28
|
+
# The type of device the user is using.
|
29
|
+
field :device_type, T.nilable(::DingSDK::Shared::DeviceType), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('device_type'), 'decoder': Utils.enum_from_string(::DingSDK::Shared::DeviceType, true) } }
|
30
|
+
# The IP address of the user's device.
|
31
|
+
field :ip, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('ip') } }
|
32
|
+
# Whether the user is a returning user on your app.
|
33
|
+
field :is_returning_user, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('is_returning_user') } }
|
34
|
+
# The version of the user's device operating system.
|
35
|
+
field :os_version, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('os_version') } }
|
36
|
+
|
37
|
+
|
38
|
+
sig { params(customer_uuid: ::String, phone_number: ::String, app_realm: T.nilable(::String), app_version: T.nilable(::String), callback_url: T.nilable(::String), device_id: T.nilable(::String), device_model: T.nilable(::String), device_type: T.nilable(::DingSDK::Shared::DeviceType), ip: T.nilable(::String), is_returning_user: T.nilable(T::Boolean), os_version: T.nilable(::String)).void }
|
39
|
+
def initialize(customer_uuid: nil, phone_number: nil, app_realm: nil, app_version: nil, callback_url: nil, device_id: nil, device_model: nil, device_type: nil, ip: nil, is_returning_user: nil, os_version: nil)
|
40
|
+
@customer_uuid = customer_uuid
|
41
|
+
@phone_number = phone_number
|
42
|
+
@app_realm = app_realm
|
43
|
+
@app_version = app_version
|
44
|
+
@callback_url = callback_url
|
45
|
+
@device_id = device_id
|
46
|
+
@device_model = device_model
|
47
|
+
@device_type = device_type
|
48
|
+
@ip = ip
|
49
|
+
@is_returning_user = is_returning_user
|
50
|
+
@os_version = os_version
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Shared
|
9
|
+
|
10
|
+
# A successful response to an authentication creation request.
|
11
|
+
class CreateAuthenticationResponse < ::DingSDK::Utils::FieldAugmented
|
12
|
+
extend T::Sig
|
13
|
+
|
14
|
+
# A unique identifier for the authentication that you can use on the /check and /retry endpoints.
|
15
|
+
field :authentication_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('authentication_uuid') } }
|
16
|
+
|
17
|
+
field :created_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
|
18
|
+
# The time at which the authentication expires and can no longer be checked or retried.
|
19
|
+
field :expires_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('expires_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
|
20
|
+
# The status of the authentication. Possible values are:
|
21
|
+
# * `pending` - The OTP code is being sent.
|
22
|
+
# * `rate_limited` - This user is rate-limited and cannot receive another code.
|
23
|
+
# * `spam_detected` - This attempt is flagged as spam. Go to the dashboard for more details.
|
24
|
+
#
|
25
|
+
field :status, T.nilable(::DingSDK::Shared::Status), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('status'), 'decoder': Utils.enum_from_string(::DingSDK::Shared::Status, true) } }
|
26
|
+
|
27
|
+
|
28
|
+
sig { params(authentication_uuid: T.nilable(::String), created_at: T.nilable(::DateTime), expires_at: T.nilable(::DateTime), status: T.nilable(::DingSDK::Shared::Status)).void }
|
29
|
+
def initialize(authentication_uuid: nil, created_at: nil, expires_at: nil, status: nil)
|
30
|
+
@authentication_uuid = authentication_uuid
|
31
|
+
@created_at = created_at
|
32
|
+
@expires_at = expires_at
|
33
|
+
@status = status
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -3,24 +3,23 @@
|
|
3
3
|
# typed: true
|
4
4
|
# frozen_string_literal: true
|
5
5
|
|
6
|
-
require 'sorbet-runtime'
|
7
|
-
require 'faraday'
|
8
6
|
|
9
7
|
module DingSDK
|
10
8
|
module Shared
|
9
|
+
|
11
10
|
|
12
11
|
class CreateCheckRequest < ::DingSDK::Utils::FieldAugmented
|
13
12
|
extend T::Sig
|
14
13
|
|
15
14
|
# The authentication UUID that was returned when you created the authentication.
|
16
|
-
field :authentication_uuid, String, { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('authentication_uuid') } }
|
15
|
+
field :authentication_uuid, ::String, { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('authentication_uuid') } }
|
17
16
|
# The code that the user entered.
|
18
|
-
field :check_code, String, { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('check_code') } }
|
17
|
+
field :check_code, ::String, { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('check_code') } }
|
19
18
|
# Your customer UUID, which can be found in the API settings in the dashboard.
|
20
|
-
field :customer_uuid, String, { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('customer_uuid') } }
|
19
|
+
field :customer_uuid, ::String, { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('customer_uuid') } }
|
21
20
|
|
22
21
|
|
23
|
-
sig { params(authentication_uuid: String, check_code: String, customer_uuid: String).void }
|
22
|
+
sig { params(authentication_uuid: ::String, check_code: ::String, customer_uuid: ::String).void }
|
24
23
|
def initialize(authentication_uuid: nil, check_code: nil, customer_uuid: nil)
|
25
24
|
@authentication_uuid = authentication_uuid
|
26
25
|
@check_code = check_code
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Shared
|
9
|
+
|
10
|
+
|
11
|
+
class CreateCheckResponse < ::DingSDK::Utils::FieldAugmented
|
12
|
+
extend T::Sig
|
13
|
+
|
14
|
+
# The UUID of the corresponding authentication.
|
15
|
+
field :authentication_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('authentication_uuid') } }
|
16
|
+
# The status of the check. Possible values are:
|
17
|
+
# * `valid` - The code is valid.
|
18
|
+
# * `invalid` - The code is invalid.
|
19
|
+
# * `without_attempt` - No attempt was sent yet, so a check cannot be completed.
|
20
|
+
# * `rate_limited` - The authentication was rate limited and cannot be checked.
|
21
|
+
# * `already_validated` - The authentication has already been validated.
|
22
|
+
# * `expired_auth` - The authentication has expired and cannot be checked.
|
23
|
+
#
|
24
|
+
field :status, T.nilable(::DingSDK::Shared::CreateCheckResponseStatus), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('status'), 'decoder': Utils.enum_from_string(::DingSDK::Shared::CreateCheckResponseStatus, true) } }
|
25
|
+
|
26
|
+
|
27
|
+
sig { params(authentication_uuid: T.nilable(::String), status: T.nilable(::DingSDK::Shared::CreateCheckResponseStatus)).void }
|
28
|
+
def initialize(authentication_uuid: nil, status: nil)
|
29
|
+
@authentication_uuid = authentication_uuid
|
30
|
+
@status = status
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Shared
|
9
|
+
|
10
|
+
# CreateCheckResponseStatus - The status of the check. Possible values are:
|
11
|
+
# * `valid` - The code is valid.
|
12
|
+
# * `invalid` - The code is invalid.
|
13
|
+
# * `without_attempt` - No attempt was sent yet, so a check cannot be completed.
|
14
|
+
# * `rate_limited` - The authentication was rate limited and cannot be checked.
|
15
|
+
# * `already_validated` - The authentication has already been validated.
|
16
|
+
# * `expired_auth` - The authentication has expired and cannot be checked.
|
17
|
+
#
|
18
|
+
class CreateCheckResponseStatus < T::Enum
|
19
|
+
enums do
|
20
|
+
VALID = new('valid')
|
21
|
+
INVALID = new('invalid')
|
22
|
+
WITHOUT_ATTEMPT = new('without_attempt')
|
23
|
+
RATE_LIMITED = new('rate_limited')
|
24
|
+
ALREADY_VALIDATED = new('already_validated')
|
25
|
+
EXPIRED_AUTH = new('expired_auth')
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Shared
|
9
|
+
|
10
|
+
# DeviceType - The type of device the user is using.
|
11
|
+
class DeviceType < T::Enum
|
12
|
+
enums do
|
13
|
+
IOS = new('IOS')
|
14
|
+
ANDROID = new('ANDROID')
|
15
|
+
WEB = new('WEB')
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Shared
|
9
|
+
|
10
|
+
|
11
|
+
class ErrorResponse < ::DingSDK::Utils::FieldAugmented
|
12
|
+
extend T::Sig
|
13
|
+
|
14
|
+
# A machine-readable code that describes the error. Possible values are:
|
15
|
+
# * `invalid_phone_number` - This is not a valid E.164 number.
|
16
|
+
# * `internal_server_error` - An internal server error occurred.
|
17
|
+
# * `bad_request` - The request was malformed.
|
18
|
+
# * `account_invalid` - The provided customer UUID is invalid.
|
19
|
+
# * `negative_balance` - You have a negative balance.
|
20
|
+
# * `invalid_line` - Ding does not support this type of phone number.
|
21
|
+
# * `unsupported_region` - Ding does not support this region yet.
|
22
|
+
# * `invalid_auth_uuid` - The provided authentication UUID is invalid.
|
23
|
+
# * `blocked_number` - The phone number is in the blocklist.
|
24
|
+
# * `invalid_app_version` - The provided application version is invalid.
|
25
|
+
# * `invalid_os_version` - The provided OS version is invalid.
|
26
|
+
# * `invalid_device_model` - The provided device model is invalid.
|
27
|
+
# * `invalid_device_id` - The provided device ID is invalid.
|
28
|
+
#
|
29
|
+
field :code, T.nilable(::DingSDK::Shared::Code), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('code'), 'decoder': Utils.enum_from_string(::DingSDK::Shared::Code, true) } }
|
30
|
+
# A link to the documentation that describes the error.
|
31
|
+
field :doc_url, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('doc_url') } }
|
32
|
+
# A human-readable message that describes the error.
|
33
|
+
field :message, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('message') } }
|
34
|
+
|
35
|
+
|
36
|
+
sig { params(code: T.nilable(::DingSDK::Shared::Code), doc_url: T.nilable(::String), message: T.nilable(::String)).void }
|
37
|
+
def initialize(code: nil, doc_url: nil, message: nil)
|
38
|
+
@code = code
|
39
|
+
@doc_url = doc_url
|
40
|
+
@message = message
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Shared
|
9
|
+
|
10
|
+
# LineType - The type of phone line.
|
11
|
+
class LineType < T::Enum
|
12
|
+
enums do
|
13
|
+
FIXED_LINE = new('FixedLine')
|
14
|
+
MOBILE = new('Mobile')
|
15
|
+
TOLL_FREE = new('TollFree')
|
16
|
+
PREMIUM_RATE = new('PremiumRate')
|
17
|
+
SHARED_COST = new('SharedCost')
|
18
|
+
VOIP = new('Voip')
|
19
|
+
PAGER = new('Pager')
|
20
|
+
VOICE_MAIL = new('VoiceMail')
|
21
|
+
UNIVERSAL_ACCESS = new('UniversalAccess')
|
22
|
+
SERVICE = new('Service')
|
23
|
+
UNKNOWN = new('Unknown')
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module DingSDK
|
8
|
+
module Shared
|
9
|
+
|
10
|
+
|
11
|
+
class LookupResponse < ::DingSDK::Utils::FieldAugmented
|
12
|
+
extend T::Sig
|
13
|
+
|
14
|
+
# The carrier of the phone number.
|
15
|
+
field :carrier, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('carrier') } }
|
16
|
+
# The ISO 3166-1 alpha-2 country code of the phone number.
|
17
|
+
field :country_code, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('country_code') } }
|
18
|
+
# The type of phone line.
|
19
|
+
field :line_type, T.nilable(::DingSDK::Shared::LineType), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('line_type'), 'decoder': Utils.enum_from_string(::DingSDK::Shared::LineType, true) } }
|
20
|
+
# The mobile country code of the phone number.
|
21
|
+
field :mcc, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('mcc') } }
|
22
|
+
# The mobile network code of the phone number.
|
23
|
+
field :mnc, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('mnc') } }
|
24
|
+
# Whether the phone number has been ported.
|
25
|
+
field :number_ported, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('number_ported') } }
|
26
|
+
# An E.164 formatted phone number.
|
27
|
+
field :phone_number, T.nilable(::String), { 'format_json': { 'letter_case': ::DingSDK::Utils.field_name('phone_number') } }
|
28
|
+
|
29
|
+
|
30
|
+
sig { params(carrier: T.nilable(::String), country_code: T.nilable(::String), line_type: T.nilable(::DingSDK::Shared::LineType), mcc: T.nilable(::String), mnc: T.nilable(::String), number_ported: T.nilable(T::Boolean), phone_number: T.nilable(::String)).void }
|
31
|
+
def initialize(carrier: nil, country_code: nil, line_type: nil, mcc: nil, mnc: nil, number_ported: nil, phone_number: nil)
|
32
|
+
@carrier = carrier
|
33
|
+
@country_code = country_code
|
34
|
+
@line_type = line_type
|
35
|
+
@mcc = mcc
|
36
|
+
@mnc = mnc
|
37
|
+
@number_ported = number_ported
|
38
|
+
@phone_number = phone_number
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|