bandwidth-sdk 11.3.0 → 12.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 +4 -4
- data/Gemfile.lock +18 -16
- data/README.md +15 -9
- data/Rakefile +4 -12
- data/bandwidth.yml +243 -28
- data/coverage/.last_run.json +1 -1
- data/coverage/.resultset.json +1412 -1009
- data/coverage/index.html +16274 -11823
- data/custom_templates/README.mustache +4 -4
- data/docs/AnswerCallback.md +1 -1
- data/docs/BridgeCompleteCallback.md +1 -1
- data/docs/BridgeTargetCompleteCallback.md +1 -1
- data/docs/CallRecordingMetadata.md +3 -3
- data/docs/CallTranscription.md +24 -0
- data/docs/CallTranscriptionMetadata.md +20 -0
- data/docs/CallTranscriptionResponse.md +24 -0
- data/docs/CallsApi.md +1 -1
- data/docs/ConferenceMemberExitCallback.md +1 -1
- data/docs/ConferenceMemberJoinCallback.md +1 -1
- data/docs/CreateCall.md +5 -3
- data/docs/DisconnectCallback.md +1 -1
- data/docs/DtmfCallback.md +2 -2
- data/docs/GatherCallback.md +2 -2
- data/docs/InitiateCallback.md +1 -1
- data/docs/MachineDetectionCompleteCallback.md +1 -1
- data/docs/RecordingAvailableCallback.md +4 -4
- data/docs/RecordingCompleteCallback.md +2 -2
- data/docs/RecordingTranscriptionMetadata.md +24 -0
- data/docs/RecordingTranscriptions.md +18 -0
- data/docs/RecordingsApi.md +49 -49
- data/docs/RedirectCallback.md +2 -2
- data/docs/TranscriptionAvailableCallback.md +2 -2
- data/docs/TranscriptionsApi.md +229 -0
- data/docs/TransferAnswerCallback.md +2 -2
- data/docs/TransferCompleteCallback.md +2 -2
- data/docs/TransferDisconnectCallback.md +2 -2
- data/lib/bandwidth-sdk/api/recordings_api.rb +56 -56
- data/lib/bandwidth-sdk/api/transcriptions_api.rb +241 -0
- data/lib/bandwidth-sdk/configuration.rb +22 -4
- data/lib/bandwidth-sdk/models/answer_callback.rb +1 -1
- data/lib/bandwidth-sdk/models/bridge_complete_callback.rb +1 -1
- data/lib/bandwidth-sdk/models/bridge_target_complete_callback.rb +1 -1
- data/lib/bandwidth-sdk/models/call_recording_metadata.rb +3 -3
- data/lib/bandwidth-sdk/models/call_transcription.rb +317 -0
- data/lib/bandwidth-sdk/models/call_transcription_metadata.rb +223 -0
- data/lib/bandwidth-sdk/models/call_transcription_response.rb +244 -0
- data/lib/bandwidth-sdk/models/conference_member_exit_callback.rb +1 -1
- data/lib/bandwidth-sdk/models/conference_member_join_callback.rb +1 -1
- data/lib/bandwidth-sdk/models/create_call.rb +14 -3
- data/lib/bandwidth-sdk/models/disconnect_callback.rb +1 -1
- data/lib/bandwidth-sdk/models/dtmf_callback.rb +2 -2
- data/lib/bandwidth-sdk/models/gather_callback.rb +2 -2
- data/lib/bandwidth-sdk/models/initiate_callback.rb +1 -1
- data/lib/bandwidth-sdk/models/machine_detection_complete_callback.rb +1 -1
- data/lib/bandwidth-sdk/models/machine_detection_configuration.rb +1 -1
- data/lib/bandwidth-sdk/models/recording_available_callback.rb +4 -4
- data/lib/bandwidth-sdk/models/recording_complete_callback.rb +2 -2
- data/lib/bandwidth-sdk/models/recording_transcription_metadata.rb +244 -0
- data/lib/bandwidth-sdk/models/recording_transcriptions.rb +214 -0
- data/lib/bandwidth-sdk/models/redirect_callback.rb +2 -2
- data/lib/bandwidth-sdk/models/transcription_available_callback.rb +2 -2
- data/lib/bandwidth-sdk/models/transfer_answer_callback.rb +2 -2
- data/lib/bandwidth-sdk/models/transfer_complete_callback.rb +2 -2
- data/lib/bandwidth-sdk/models/transfer_disconnect_callback.rb +2 -2
- data/lib/bandwidth-sdk/version.rb +1 -1
- data/lib/bandwidth-sdk.rb +6 -2
- data/spec/{integration/calls_api_integration_spec.rb → smoke/calls_api_spec.rb} +9 -7
- data/spec/{integration/conferences_api_integration_spec.rb → smoke/conferences_api_spec.rb} +9 -9
- data/spec/{integration/media_api_integration_spec.rb → smoke/media_api_spec.rb} +7 -7
- data/spec/{integration/messages_api_integration_spec.rb → smoke/messages_api_spec.rb} +3 -3
- data/spec/{integration/mfa_api_integration_spec.rb → smoke/mfa_api_spec.rb} +3 -3
- data/spec/{integration/phone_number_lookup_api_integration_spec.rb → smoke/phone_number_lookup_api_spec.rb} +2 -2
- data/spec/{integration/recordings_api_integration_spec.rb → smoke/recordings_api_spec.rb} +14 -14
- data/spec/{integration/statistics_api_integration_spec.rb → smoke/statistics_api_spec.rb} +1 -1
- data/spec/smoke/transcriptions_api_spec.rb +84 -0
- data/spec/spec_helper.rb +2 -2
- data/spec/{api → unit/api}/calls_api_spec.rb +6 -4
- data/spec/{api → unit/api}/conferences_api_spec.rb +12 -12
- data/spec/{api → unit/api}/media_api_spec.rb +6 -6
- data/spec/{api → unit/api}/messages_api_spec.rb +2 -2
- data/spec/{api → unit/api}/mfa_api_spec.rb +6 -6
- data/spec/{api → unit/api}/phone_number_lookup_api_spec.rb +2 -2
- data/spec/{api → unit/api}/recordings_api_spec.rb +30 -30
- data/spec/{api → unit/api}/statistics_api_spec.rb +1 -1
- data/spec/unit/api/transcriptions_api_spec.rb +130 -0
- data/spec/{api_client_spec.rb → unit/client/api_client_spec.rb} +2 -2
- metadata +130 -114
- /data/spec/{api_error_spec.rb → unit/client/api_error_spec.rb} +0 -0
- /data/spec/{configuration_spec.rb → unit/client/configuration_spec.rb} +0 -0
- /data/spec/{models → unit/models}/bxml/bxml_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/nestable_verb_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/response_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verb_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/bridge_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/conference_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/custom_param_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/forward_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/gather_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/hangup_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/pause_recording_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/pause_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/phone_number_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/play_audio_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/record_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/redirect_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/resume_recording_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/ring_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/send_dtmf_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/sip_uri_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/speak_sentence_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/start_gather_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/start_recording_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/start_stream_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/start_transcription_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/stop_gather_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/stop_recording_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/stop_stream_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/stop_transcription_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/stream_param_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/tag_spec.rb +0 -0
- /data/spec/{models → unit/models}/bxml/verbs/transfer_spec.rb +0 -0
- /data/spec/{models → unit/models}/call_state_enum_spec.rb +0 -0
- /data/spec/{models → unit/models}/call_state_spec.rb +0 -0
- /data/spec/{models → unit/models}/deferred_result_spec.rb +0 -0
- /data/spec/{models → unit/models}/message_spec.rb +0 -0
- /data/spec/{models → unit/models}/verify_code_request_spec.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: cd4a580afa3bf764a51ad78f518b5e9d93f7f7bba839ab1ca643a511362dc76a
|
|
4
|
+
data.tar.gz: 9839ac94b8ccd790be293cd4278fad2605507c947db07ecf8595284390ffe0ac
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c5077f73d866b0d4d28e4ad5fe292c1180364bdbba1892687110ea00dabf0d9d7245e64e8f50ee848430f406e6359bbed169be656ad14390b4c900a307fd5d0d
|
|
7
|
+
data.tar.gz: abb67c141f244fde7829ba0370e46a6aa2455b98dd511b1674032a6c096ddc6e0bfbf513fdbe295a37300681e94394c66a027b2b82cf962af66fe62dddce571a
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
bandwidth-sdk (
|
|
4
|
+
bandwidth-sdk (12.1.0)
|
|
5
5
|
faraday (>= 1.0.1, < 3.0)
|
|
6
6
|
faraday-multipart
|
|
7
7
|
ox (~> 2.4)
|
|
@@ -12,7 +12,7 @@ GEM
|
|
|
12
12
|
addressable (2.8.6)
|
|
13
13
|
public_suffix (>= 2.0.2, < 6.0)
|
|
14
14
|
ast (2.4.2)
|
|
15
|
-
bigdecimal (3.1.
|
|
15
|
+
bigdecimal (3.1.8)
|
|
16
16
|
byebug (11.1.3)
|
|
17
17
|
coderay (1.1.3)
|
|
18
18
|
crack (1.0.0)
|
|
@@ -20,21 +20,21 @@ GEM
|
|
|
20
20
|
rexml
|
|
21
21
|
diff-lcs (1.5.1)
|
|
22
22
|
docile (1.4.0)
|
|
23
|
-
faraday (2.9.
|
|
23
|
+
faraday (2.9.1)
|
|
24
24
|
faraday-net_http (>= 2.0, < 3.2)
|
|
25
25
|
faraday-multipart (1.0.4)
|
|
26
26
|
multipart-post (~> 2)
|
|
27
27
|
faraday-net_http (3.1.0)
|
|
28
28
|
net-http
|
|
29
29
|
hashdiff (1.1.0)
|
|
30
|
-
json (2.7.
|
|
31
|
-
method_source (1.
|
|
32
|
-
multipart-post (2.4.
|
|
30
|
+
json (2.7.2)
|
|
31
|
+
method_source (1.1.0)
|
|
32
|
+
multipart-post (2.4.1)
|
|
33
33
|
net-http (0.4.1)
|
|
34
34
|
uri
|
|
35
|
-
ox (2.14.
|
|
36
|
-
parallel (1.
|
|
37
|
-
parser (3.3.0
|
|
35
|
+
ox (2.14.18)
|
|
36
|
+
parallel (1.25.1)
|
|
37
|
+
parser (3.3.2.0)
|
|
38
38
|
ast (~> 2.4.1)
|
|
39
39
|
racc
|
|
40
40
|
pry (0.14.2)
|
|
@@ -43,12 +43,13 @@ GEM
|
|
|
43
43
|
pry-byebug (3.10.1)
|
|
44
44
|
byebug (~> 11.0)
|
|
45
45
|
pry (>= 0.13, < 0.15)
|
|
46
|
-
public_suffix (5.0.
|
|
47
|
-
racc (1.
|
|
46
|
+
public_suffix (5.0.5)
|
|
47
|
+
racc (1.8.0)
|
|
48
48
|
rainbow (3.1.1)
|
|
49
49
|
rake (13.0.6)
|
|
50
|
-
regexp_parser (2.9.
|
|
51
|
-
rexml (3.
|
|
50
|
+
regexp_parser (2.9.2)
|
|
51
|
+
rexml (3.3.0)
|
|
52
|
+
strscan
|
|
52
53
|
rspec (3.13.0)
|
|
53
54
|
rspec-core (~> 3.13.0)
|
|
54
55
|
rspec-expectations (~> 3.13.0)
|
|
@@ -58,7 +59,7 @@ GEM
|
|
|
58
59
|
rspec-expectations (3.13.0)
|
|
59
60
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
60
61
|
rspec-support (~> 3.13.0)
|
|
61
|
-
rspec-mocks (3.13.
|
|
62
|
+
rspec-mocks (3.13.1)
|
|
62
63
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
63
64
|
rspec-support (~> 3.13.0)
|
|
64
65
|
rspec-support (3.13.1)
|
|
@@ -72,8 +73,8 @@ GEM
|
|
|
72
73
|
rubocop-ast (>= 1.28.0, < 2.0)
|
|
73
74
|
ruby-progressbar (~> 1.7)
|
|
74
75
|
unicode-display_width (>= 2.4.0, < 3.0)
|
|
75
|
-
rubocop-ast (1.
|
|
76
|
-
parser (>= 3.
|
|
76
|
+
rubocop-ast (1.31.3)
|
|
77
|
+
parser (>= 3.3.1.0)
|
|
77
78
|
ruby-progressbar (1.13.0)
|
|
78
79
|
simplecov (0.21.2)
|
|
79
80
|
docile (~> 1.1)
|
|
@@ -81,6 +82,7 @@ GEM
|
|
|
81
82
|
simplecov_json_formatter (~> 0.1)
|
|
82
83
|
simplecov-html (0.12.3)
|
|
83
84
|
simplecov_json_formatter (0.1.4)
|
|
85
|
+
strscan (3.1.0)
|
|
84
86
|
unicode-display_width (2.5.0)
|
|
85
87
|
uri (0.13.0)
|
|
86
88
|
webmock (3.18.1)
|
data/README.md
CHANGED
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
|
|
8
8
|
| **OS** | **Ruby** |
|
|
9
9
|
|:---:|:---:|
|
|
10
|
-
| Windows 2019 | 2.7, 3.0, 3.1, 3.2 |
|
|
11
|
-
| Windows 2022 | 2.7, 3.0, 3.1, 3.2 |
|
|
12
|
-
| Ubuntu 20.04 | 2.7, 3.0, 3.1, 3.2 |
|
|
13
|
-
| Ubuntu 22.04 | 2.7, 3.0, 3.1, 3.2 |
|
|
10
|
+
| Windows 2019 | 2.7, 3.0, 3.1, 3.2, 3.3 |
|
|
11
|
+
| Windows 2022 | 2.7, 3.0, 3.1, 3.2, 3.3 |
|
|
12
|
+
| Ubuntu 20.04 | 2.7, 3.0, 3.1, 3.2, 3.3 |
|
|
13
|
+
| Ubuntu 22.04 | 2.7, 3.0, 3.1, 3.2, 3.3 |
|
|
14
14
|
|
|
15
15
|
Bandwidth - the Ruby gem for the Bandwidth SDK
|
|
16
16
|
|
|
@@ -89,7 +89,7 @@ end
|
|
|
89
89
|
|
|
90
90
|
api_instance = Bandwidth::CallsApi.new
|
|
91
91
|
account_id = '9900000' # String | Your Bandwidth Account ID.
|
|
92
|
-
create_call = Bandwidth::CreateCall.new({to: '+19195551234', from: '+
|
|
92
|
+
create_call = Bandwidth::CreateCall.new({to: '+19195551234', from: '+15555551212', application_id: '1234-qwer-5679-tyui', answer_url: 'https://www.myCallbackServer.example/webhooks/answer'}) # CreateCall | JSON object containing information to create an outbound call
|
|
93
93
|
|
|
94
94
|
begin
|
|
95
95
|
#Create Call
|
|
@@ -132,17 +132,20 @@ Class | Method | HTTP request | Description
|
|
|
132
132
|
*Bandwidth::MessagesApi* | [**list_messages**](docs/MessagesApi.md#list_messages) | **GET** /users/{accountId}/messages | List Messages
|
|
133
133
|
*Bandwidth::PhoneNumberLookupApi* | [**create_lookup**](docs/PhoneNumberLookupApi.md#create_lookup) | **POST** /accounts/{accountId}/tnlookup | Create Lookup
|
|
134
134
|
*Bandwidth::PhoneNumberLookupApi* | [**get_lookup_status**](docs/PhoneNumberLookupApi.md#get_lookup_status) | **GET** /accounts/{accountId}/tnlookup/{requestId} | Get Lookup Request Status
|
|
135
|
-
*Bandwidth::RecordingsApi* | [**delete_call_transcription**](docs/RecordingsApi.md#delete_call_transcription) | **DELETE** /accounts/{accountId}/calls/{callId}/recordings/{recordingId}/transcription | Delete Transcription
|
|
136
135
|
*Bandwidth::RecordingsApi* | [**delete_recording**](docs/RecordingsApi.md#delete_recording) | **DELETE** /accounts/{accountId}/calls/{callId}/recordings/{recordingId} | Delete Recording
|
|
137
136
|
*Bandwidth::RecordingsApi* | [**delete_recording_media**](docs/RecordingsApi.md#delete_recording_media) | **DELETE** /accounts/{accountId}/calls/{callId}/recordings/{recordingId}/media | Delete Recording Media
|
|
137
|
+
*Bandwidth::RecordingsApi* | [**delete_recording_transcription**](docs/RecordingsApi.md#delete_recording_transcription) | **DELETE** /accounts/{accountId}/calls/{callId}/recordings/{recordingId}/transcription | Delete Transcription
|
|
138
138
|
*Bandwidth::RecordingsApi* | [**download_call_recording**](docs/RecordingsApi.md#download_call_recording) | **GET** /accounts/{accountId}/calls/{callId}/recordings/{recordingId}/media | Download Recording
|
|
139
139
|
*Bandwidth::RecordingsApi* | [**get_call_recording**](docs/RecordingsApi.md#get_call_recording) | **GET** /accounts/{accountId}/calls/{callId}/recordings/{recordingId} | Get Call Recording
|
|
140
|
-
*Bandwidth::RecordingsApi* | [**
|
|
140
|
+
*Bandwidth::RecordingsApi* | [**get_recording_transcription**](docs/RecordingsApi.md#get_recording_transcription) | **GET** /accounts/{accountId}/calls/{callId}/recordings/{recordingId}/transcription | Get Transcription
|
|
141
141
|
*Bandwidth::RecordingsApi* | [**list_account_call_recordings**](docs/RecordingsApi.md#list_account_call_recordings) | **GET** /accounts/{accountId}/recordings | Get Call Recordings
|
|
142
142
|
*Bandwidth::RecordingsApi* | [**list_call_recordings**](docs/RecordingsApi.md#list_call_recordings) | **GET** /accounts/{accountId}/calls/{callId}/recordings | List Call Recordings
|
|
143
143
|
*Bandwidth::RecordingsApi* | [**transcribe_call_recording**](docs/RecordingsApi.md#transcribe_call_recording) | **POST** /accounts/{accountId}/calls/{callId}/recordings/{recordingId}/transcription | Create Transcription Request
|
|
144
144
|
*Bandwidth::RecordingsApi* | [**update_call_recording_state**](docs/RecordingsApi.md#update_call_recording_state) | **PUT** /accounts/{accountId}/calls/{callId}/recording | Update Recording
|
|
145
145
|
*Bandwidth::StatisticsApi* | [**get_statistics**](docs/StatisticsApi.md#get_statistics) | **GET** /accounts/{accountId}/statistics | Get Account Statistics
|
|
146
|
+
*Bandwidth::TranscriptionsApi* | [**delete_real_time_transcription**](docs/TranscriptionsApi.md#delete_real_time_transcription) | **DELETE** /accounts/{accountId}/calls/{callId}/transcriptions/{transcriptionId} | Delete a specific transcription
|
|
147
|
+
*Bandwidth::TranscriptionsApi* | [**get_real_time_transcription**](docs/TranscriptionsApi.md#get_real_time_transcription) | **GET** /accounts/{accountId}/calls/{callId}/transcriptions/{transcriptionId} | Retrieve a specific transcription
|
|
148
|
+
*Bandwidth::TranscriptionsApi* | [**list_real_time_transcriptions**](docs/TranscriptionsApi.md#list_real_time_transcriptions) | **GET** /accounts/{accountId}/calls/{callId}/transcriptions | Enumerate transcriptions made with StartTranscription
|
|
146
149
|
|
|
147
150
|
|
|
148
151
|
## Documentation for Models
|
|
@@ -155,6 +158,9 @@ Class | Method | HTTP request | Description
|
|
|
155
158
|
- [Bandwidth::CallRecordingMetadata](docs/CallRecordingMetadata.md)
|
|
156
159
|
- [Bandwidth::CallState](docs/CallState.md)
|
|
157
160
|
- [Bandwidth::CallStateEnum](docs/CallStateEnum.md)
|
|
161
|
+
- [Bandwidth::CallTranscription](docs/CallTranscription.md)
|
|
162
|
+
- [Bandwidth::CallTranscriptionMetadata](docs/CallTranscriptionMetadata.md)
|
|
163
|
+
- [Bandwidth::CallTranscriptionResponse](docs/CallTranscriptionResponse.md)
|
|
158
164
|
- [Bandwidth::CallbackMethodEnum](docs/CallbackMethodEnum.md)
|
|
159
165
|
- [Bandwidth::CodeRequest](docs/CodeRequest.md)
|
|
160
166
|
- [Bandwidth::Conference](docs/Conference.md)
|
|
@@ -214,6 +220,8 @@ Class | Method | HTTP request | Description
|
|
|
214
220
|
- [Bandwidth::RecordingAvailableCallback](docs/RecordingAvailableCallback.md)
|
|
215
221
|
- [Bandwidth::RecordingCompleteCallback](docs/RecordingCompleteCallback.md)
|
|
216
222
|
- [Bandwidth::RecordingStateEnum](docs/RecordingStateEnum.md)
|
|
223
|
+
- [Bandwidth::RecordingTranscriptionMetadata](docs/RecordingTranscriptionMetadata.md)
|
|
224
|
+
- [Bandwidth::RecordingTranscriptions](docs/RecordingTranscriptions.md)
|
|
217
225
|
- [Bandwidth::RedirectCallback](docs/RedirectCallback.md)
|
|
218
226
|
- [Bandwidth::RedirectMethodEnum](docs/RedirectMethodEnum.md)
|
|
219
227
|
- [Bandwidth::StirShaken](docs/StirShaken.md)
|
|
@@ -222,8 +230,6 @@ Class | Method | HTTP request | Description
|
|
|
222
230
|
- [Bandwidth::TranscribeRecording](docs/TranscribeRecording.md)
|
|
223
231
|
- [Bandwidth::Transcription](docs/Transcription.md)
|
|
224
232
|
- [Bandwidth::TranscriptionAvailableCallback](docs/TranscriptionAvailableCallback.md)
|
|
225
|
-
- [Bandwidth::TranscriptionList](docs/TranscriptionList.md)
|
|
226
|
-
- [Bandwidth::TranscriptionMetadata](docs/TranscriptionMetadata.md)
|
|
227
233
|
- [Bandwidth::TransferAnswerCallback](docs/TransferAnswerCallback.md)
|
|
228
234
|
- [Bandwidth::TransferCompleteCallback](docs/TransferCompleteCallback.md)
|
|
229
235
|
- [Bandwidth::TransferDisconnectCallback](docs/TransferDisconnectCallback.md)
|
data/Rakefile
CHANGED
|
@@ -8,20 +8,12 @@ begin
|
|
|
8
8
|
|
|
9
9
|
desc 'Run Only Unit Tests'
|
|
10
10
|
RSpec::Core::RakeTask.new(:unit) do |t|
|
|
11
|
-
t.pattern = './spec/
|
|
12
|
-
end
|
|
13
|
-
RSpec::Core::RakeTask.new(:unit) do |t|
|
|
14
|
-
t.pattern = './spec/models/**/*_spec.rb'
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
desc 'Run Only Integration Tests'
|
|
18
|
-
RSpec::Core::RakeTask.new(:integration) do |t|
|
|
19
|
-
t.pattern = './spec/integration/*_spec.rb'
|
|
11
|
+
t.pattern = './spec/unit/**/*_spec.rb'
|
|
20
12
|
end
|
|
21
13
|
|
|
22
|
-
desc 'Run Only
|
|
23
|
-
RSpec::Core::RakeTask.new(:
|
|
24
|
-
t.pattern = './spec/*_spec.rb'
|
|
14
|
+
desc 'Run Only Smoke Tests'
|
|
15
|
+
RSpec::Core::RakeTask.new(:smoke) do |t|
|
|
16
|
+
t.pattern = './spec/smoke/*_spec.rb'
|
|
25
17
|
end
|
|
26
18
|
|
|
27
19
|
task default: :spec
|
data/bandwidth.yml
CHANGED
|
@@ -16,6 +16,7 @@ tags:
|
|
|
16
16
|
- name: Conferences
|
|
17
17
|
- name: Recordings
|
|
18
18
|
- name: Statistics
|
|
19
|
+
- name: Transcriptions
|
|
19
20
|
- name: MFA
|
|
20
21
|
- name: Phone Number Lookup
|
|
21
22
|
paths:
|
|
@@ -962,9 +963,7 @@ paths:
|
|
|
962
963
|
description: >-
|
|
963
964
|
Downloads the specified transcription.
|
|
964
965
|
|
|
965
|
-
|
|
966
|
-
If the transcribed recording was multi-channel, then there will be 2
|
|
967
|
-
transcripts.
|
|
966
|
+
If the recording was multi-channel, then there will be 2 transcripts.
|
|
968
967
|
|
|
969
968
|
The caller/called party transcript will be the first item while
|
|
970
969
|
[`<PlayAudio>`](/docs/voice/bxml/playAudio) and
|
|
@@ -974,14 +973,14 @@ paths:
|
|
|
974
973
|
During a [`<Transfer>`](/docs/voice/bxml/transfer) the A-leg transcript
|
|
975
974
|
will be the first item while the B-leg transcript will be the second
|
|
976
975
|
item.
|
|
977
|
-
operationId:
|
|
976
|
+
operationId: getRecordingTranscription
|
|
978
977
|
parameters:
|
|
979
978
|
- $ref: '#/components/parameters/accountId'
|
|
980
979
|
- $ref: '#/components/parameters/callId'
|
|
981
980
|
- $ref: '#/components/parameters/recordingId'
|
|
982
981
|
responses:
|
|
983
982
|
'200':
|
|
984
|
-
$ref: '#/components/responses/
|
|
983
|
+
$ref: '#/components/responses/getRecordingTranscriptionResponse'
|
|
985
984
|
'400':
|
|
986
985
|
$ref: '#/components/responses/voiceBadRequestError'
|
|
987
986
|
'401':
|
|
@@ -1047,7 +1046,7 @@ paths:
|
|
|
1047
1046
|
transcription will not be accessible anymore. However, it is not deleted
|
|
1048
1047
|
immediately. This deletion process, while transparent and irreversible,
|
|
1049
1048
|
can take an additional 24 to 48 hours.
|
|
1050
|
-
operationId:
|
|
1049
|
+
operationId: deleteRecordingTranscription
|
|
1051
1050
|
parameters:
|
|
1052
1051
|
- $ref: '#/components/parameters/accountId'
|
|
1053
1052
|
- $ref: '#/components/parameters/callId'
|
|
@@ -1101,6 +1100,108 @@ paths:
|
|
|
1101
1100
|
'500':
|
|
1102
1101
|
$ref: '#/components/responses/voiceInternalServerError'
|
|
1103
1102
|
servers: *ref_1
|
|
1103
|
+
/accounts/{accountId}/calls/{callId}/transcriptions:
|
|
1104
|
+
get:
|
|
1105
|
+
tags:
|
|
1106
|
+
- Transcriptions
|
|
1107
|
+
summary: Enumerate transcriptions made with StartTranscription
|
|
1108
|
+
description: >-
|
|
1109
|
+
Enumerates the transcriptions created on this call via
|
|
1110
|
+
[startTranscription](/docs/voice/bxml/startTranscription).
|
|
1111
|
+
operationId: listRealTimeTranscriptions
|
|
1112
|
+
parameters:
|
|
1113
|
+
- $ref: '#/components/parameters/accountId'
|
|
1114
|
+
- $ref: '#/components/parameters/callId'
|
|
1115
|
+
responses:
|
|
1116
|
+
'200':
|
|
1117
|
+
$ref: '#/components/responses/listTranscriptionsResponse'
|
|
1118
|
+
'400':
|
|
1119
|
+
$ref: '#/components/responses/voiceBadRequestError'
|
|
1120
|
+
'401':
|
|
1121
|
+
$ref: '#/components/responses/voiceUnauthorizedError'
|
|
1122
|
+
'403':
|
|
1123
|
+
$ref: '#/components/responses/voiceForbiddenError'
|
|
1124
|
+
'404':
|
|
1125
|
+
$ref: '#/components/responses/voiceNotFoundError'
|
|
1126
|
+
'405':
|
|
1127
|
+
$ref: '#/components/responses/voiceNotAllowedError'
|
|
1128
|
+
'415':
|
|
1129
|
+
$ref: '#/components/responses/voiceUnsupportedMediaTypeError'
|
|
1130
|
+
'429':
|
|
1131
|
+
$ref: '#/components/responses/voiceTooManyRequestsError'
|
|
1132
|
+
'500':
|
|
1133
|
+
$ref: '#/components/responses/voiceInternalServerError'
|
|
1134
|
+
servers: *ref_1
|
|
1135
|
+
/accounts/{accountId}/calls/{callId}/transcriptions/{transcriptionId}:
|
|
1136
|
+
get:
|
|
1137
|
+
tags:
|
|
1138
|
+
- Transcriptions
|
|
1139
|
+
summary: Retrieve a specific transcription
|
|
1140
|
+
description: >-
|
|
1141
|
+
Retrieve the specified transcription that was created on this call via
|
|
1142
|
+
[startTranscription](/docs/voice/bxml/startTranscription).
|
|
1143
|
+
operationId: getRealTimeTranscription
|
|
1144
|
+
parameters:
|
|
1145
|
+
- $ref: '#/components/parameters/accountId'
|
|
1146
|
+
- $ref: '#/components/parameters/callId'
|
|
1147
|
+
- $ref: '#/components/parameters/transcriptionId'
|
|
1148
|
+
responses:
|
|
1149
|
+
'200':
|
|
1150
|
+
$ref: '#/components/responses/getCallTranscriptionResponse'
|
|
1151
|
+
'400':
|
|
1152
|
+
$ref: '#/components/responses/voiceBadRequestError'
|
|
1153
|
+
'401':
|
|
1154
|
+
$ref: '#/components/responses/voiceUnauthorizedError'
|
|
1155
|
+
'403':
|
|
1156
|
+
$ref: '#/components/responses/voiceForbiddenError'
|
|
1157
|
+
'404':
|
|
1158
|
+
$ref: '#/components/responses/voiceNotFoundError'
|
|
1159
|
+
'405':
|
|
1160
|
+
$ref: '#/components/responses/voiceNotAllowedError'
|
|
1161
|
+
'415':
|
|
1162
|
+
$ref: '#/components/responses/voiceUnsupportedMediaTypeError'
|
|
1163
|
+
'429':
|
|
1164
|
+
$ref: '#/components/responses/voiceTooManyRequestsError'
|
|
1165
|
+
'500':
|
|
1166
|
+
$ref: '#/components/responses/voiceInternalServerError'
|
|
1167
|
+
delete:
|
|
1168
|
+
tags:
|
|
1169
|
+
- Transcriptions
|
|
1170
|
+
summary: Delete a specific transcription
|
|
1171
|
+
description: >-
|
|
1172
|
+
Delete the specified transcription that was created on this call via
|
|
1173
|
+
[startTranscription](/docs/voice/bxml/startTranscription).
|
|
1174
|
+
|
|
1175
|
+
|
|
1176
|
+
Note: After the deletion is requested and a `204` is returned, the
|
|
1177
|
+
transcription will not be accessible anymore. However, it is not deleted
|
|
1178
|
+
immediately. This deletion process, while transparent and irreversible,
|
|
1179
|
+
can take an additional 24 to 48 hours.
|
|
1180
|
+
operationId: deleteRealTimeTranscription
|
|
1181
|
+
parameters:
|
|
1182
|
+
- $ref: '#/components/parameters/accountId'
|
|
1183
|
+
- $ref: '#/components/parameters/callId'
|
|
1184
|
+
- $ref: '#/components/parameters/transcriptionId'
|
|
1185
|
+
responses:
|
|
1186
|
+
'204':
|
|
1187
|
+
$ref: '#/components/responses/deleteCallTranscriptionResponse'
|
|
1188
|
+
'400':
|
|
1189
|
+
$ref: '#/components/responses/voiceBadRequestError'
|
|
1190
|
+
'401':
|
|
1191
|
+
$ref: '#/components/responses/voiceUnauthorizedError'
|
|
1192
|
+
'403':
|
|
1193
|
+
$ref: '#/components/responses/voiceForbiddenError'
|
|
1194
|
+
'404':
|
|
1195
|
+
$ref: '#/components/responses/voiceNotFoundError'
|
|
1196
|
+
'405':
|
|
1197
|
+
$ref: '#/components/responses/voiceNotAllowedError'
|
|
1198
|
+
'415':
|
|
1199
|
+
$ref: '#/components/responses/voiceUnsupportedMediaTypeError'
|
|
1200
|
+
'429':
|
|
1201
|
+
$ref: '#/components/responses/voiceTooManyRequestsError'
|
|
1202
|
+
'500':
|
|
1203
|
+
$ref: '#/components/responses/voiceInternalServerError'
|
|
1204
|
+
servers: *ref_1
|
|
1104
1205
|
/accounts/{accountId}/code/voice:
|
|
1105
1206
|
post:
|
|
1106
1207
|
tags:
|
|
@@ -2051,11 +2152,16 @@ components:
|
|
|
2051
2152
|
description: >-
|
|
2052
2153
|
A Bandwidth phone number on your account the call should come
|
|
2053
2154
|
|
|
2054
|
-
from (must be in E.164 format, like `+15555551212
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
|
|
2155
|
+
from (must be in E.164 format, like `+15555551212`) even if
|
|
2156
|
+
`privacy` is set to true.
|
|
2157
|
+
example: '+15555551212'
|
|
2158
|
+
privacy:
|
|
2159
|
+
nullable: true
|
|
2160
|
+
type: boolean
|
|
2161
|
+
description: >-
|
|
2162
|
+
Hide the calling number. The `displayName` field can be used to
|
|
2163
|
+
customize the displayed name.
|
|
2164
|
+
example: false
|
|
2059
2165
|
displayName:
|
|
2060
2166
|
nullable: true
|
|
2061
2167
|
type: string
|
|
@@ -2064,6 +2170,9 @@ components:
|
|
|
2064
2170
|
|
|
2065
2171
|
May not exceed 256 characters nor contain control characters such as
|
|
2066
2172
|
new lines.
|
|
2173
|
+
|
|
2174
|
+
If `privacy` is true, only the following values are valid:
|
|
2175
|
+
`Restricted`, `Anonymous`, `Private`, or `Unavailable`.
|
|
2067
2176
|
maxLength: 256
|
|
2068
2177
|
example: John Doe
|
|
2069
2178
|
uui:
|
|
@@ -2677,7 +2786,7 @@ components:
|
|
|
2677
2786
|
mediaUrl:
|
|
2678
2787
|
$ref: '#/components/schemas/mediaUrl'
|
|
2679
2788
|
transcription:
|
|
2680
|
-
$ref: '#/components/schemas/
|
|
2789
|
+
$ref: '#/components/schemas/recordingTranscriptionMetadata'
|
|
2681
2790
|
conference:
|
|
2682
2791
|
type: object
|
|
2683
2792
|
properties:
|
|
@@ -2922,7 +3031,10 @@ components:
|
|
|
2922
3031
|
description: >-
|
|
2923
3032
|
The machine detection request used to perform <a
|
|
2924
3033
|
href='/docs/voice/guides/machineDetection'>machine detection</a> on the
|
|
2925
|
-
call.
|
|
3034
|
+
call. Currently, there is an issue where decimal values are not getting
|
|
3035
|
+
processed correctly. Please use whole number values. We are working to
|
|
3036
|
+
resolve this issue. Please contact Bandwidth Support if you need more
|
|
3037
|
+
information.
|
|
2926
3038
|
properties:
|
|
2927
3039
|
mode:
|
|
2928
3040
|
$ref: '#/components/schemas/machineDetectionModeEnum'
|
|
@@ -3114,14 +3226,95 @@ components:
|
|
|
3114
3226
|
Current supported languages are English, French, and Spanish.
|
|
3115
3227
|
default: false
|
|
3116
3228
|
example: true
|
|
3117
|
-
|
|
3229
|
+
recordingTranscriptions:
|
|
3118
3230
|
type: object
|
|
3119
3231
|
properties:
|
|
3120
3232
|
transcripts:
|
|
3121
3233
|
type: array
|
|
3122
3234
|
items:
|
|
3123
3235
|
$ref: '#/components/schemas/transcription'
|
|
3124
|
-
|
|
3236
|
+
callTranscriptionMetadataList:
|
|
3237
|
+
type: array
|
|
3238
|
+
items:
|
|
3239
|
+
$ref: '#/components/schemas/callTranscriptionMetadata'
|
|
3240
|
+
example:
|
|
3241
|
+
- transcriptionId: t-3f758f24-c7a2fc78-7c91-401a-8b2e-e542f9c40d6b
|
|
3242
|
+
transcriptionUrl: >-
|
|
3243
|
+
https://voice.bandwidth.com/api/v2/accounts/9900000/calls/c-fef240ff-5cfc9091-8069-4863-a8c0-a4dcbbf1f1a4/transcriptions/t-3f758f24-c7a2fc78-7c91-401a-8b2e-e542f9c40d6b
|
|
3244
|
+
callTranscriptionMetadata:
|
|
3245
|
+
type: object
|
|
3246
|
+
properties:
|
|
3247
|
+
transcriptionId:
|
|
3248
|
+
type: string
|
|
3249
|
+
description: The programmable voice API transcription ID.
|
|
3250
|
+
example: t-3f758f24-c7a2fc78-7c91-401a-8b2e-e542f9c40d6b
|
|
3251
|
+
transcriptionUrl:
|
|
3252
|
+
type: string
|
|
3253
|
+
description: >-
|
|
3254
|
+
A URL that may be used to retrieve the transcription itself. This
|
|
3255
|
+
points to the
|
|
3256
|
+
|
|
3257
|
+
[Get Call
|
|
3258
|
+
Transcription](/apis/voice/#operation/getCallTranscription)
|
|
3259
|
+
endpoint.
|
|
3260
|
+
example: >-
|
|
3261
|
+
https://voice.bandwidth.com/api/v2/accounts/9900000/calls/c-fef240ff-5cfc9091-8069-4863-a8c0-a4dcbbf1f1a4/transcriptions/t-3f758f24-c7a2fc78-7c91-401a-8b2e-e542f9c40d6b
|
|
3262
|
+
callTranscriptionResponse:
|
|
3263
|
+
type: object
|
|
3264
|
+
properties:
|
|
3265
|
+
accountId:
|
|
3266
|
+
type: string
|
|
3267
|
+
description: The user account associated with the call.
|
|
3268
|
+
example: '920012'
|
|
3269
|
+
callId:
|
|
3270
|
+
type: string
|
|
3271
|
+
description: The call id associated with the event.
|
|
3272
|
+
example: c-15ac29a2-1331029c-2cb0-4a07-b215-b22865662d85
|
|
3273
|
+
transcriptionId:
|
|
3274
|
+
type: string
|
|
3275
|
+
description: The programmable voice API transcription ID.
|
|
3276
|
+
example: t-3f758f24-c7a2fc78-7c91-401a-8b2e-e542f9c40d6b
|
|
3277
|
+
tracks:
|
|
3278
|
+
type: array
|
|
3279
|
+
items:
|
|
3280
|
+
$ref: '#/components/schemas/callTranscription'
|
|
3281
|
+
example:
|
|
3282
|
+
- detectedLanguage: en-US
|
|
3283
|
+
track: inbound
|
|
3284
|
+
text: Hello World! This is an example.
|
|
3285
|
+
confidence: 0.9
|
|
3286
|
+
callTranscription:
|
|
3287
|
+
type: object
|
|
3288
|
+
properties:
|
|
3289
|
+
detectedLanguage:
|
|
3290
|
+
type: string
|
|
3291
|
+
enum:
|
|
3292
|
+
- en-US
|
|
3293
|
+
- es-US
|
|
3294
|
+
- fr-FR
|
|
3295
|
+
description: The detected language for this transcription.
|
|
3296
|
+
example: en-US
|
|
3297
|
+
track:
|
|
3298
|
+
type: string
|
|
3299
|
+
enum:
|
|
3300
|
+
- inbound
|
|
3301
|
+
- outbound
|
|
3302
|
+
description: Which `track` this transcription is derived from.
|
|
3303
|
+
example: inbound
|
|
3304
|
+
text:
|
|
3305
|
+
type: string
|
|
3306
|
+
description: The transcription itself.
|
|
3307
|
+
example: Hello World! This is an example.
|
|
3308
|
+
confidence:
|
|
3309
|
+
type: number
|
|
3310
|
+
format: double
|
|
3311
|
+
minimum: 0
|
|
3312
|
+
maximum: 1
|
|
3313
|
+
description: >-
|
|
3314
|
+
How confident the transcription engine was in transcribing the
|
|
3315
|
+
associated audio (from `0` to `1`).
|
|
3316
|
+
example: 0.9
|
|
3317
|
+
recordingTranscriptionMetadata:
|
|
3125
3318
|
nullable: true
|
|
3126
3319
|
type: object
|
|
3127
3320
|
description: If the recording was transcribed, metadata about the transcription
|
|
@@ -3693,7 +3886,7 @@ components:
|
|
|
3693
3886
|
fileFormat:
|
|
3694
3887
|
$ref: '#/components/schemas/fileFormatEnum'
|
|
3695
3888
|
channels:
|
|
3696
|
-
$ref: '#/components/schemas/
|
|
3889
|
+
$ref: '#/components/schemas/channels'
|
|
3697
3890
|
tag:
|
|
3698
3891
|
$ref: '#/components/schemas/tag1'
|
|
3699
3892
|
status:
|
|
@@ -3960,9 +4153,8 @@ components:
|
|
|
3960
4153
|
from:
|
|
3961
4154
|
type: string
|
|
3962
4155
|
description: >-
|
|
3963
|
-
The provided identifier of the caller
|
|
3964
|
-
format (e.g. +15555555555)
|
|
3965
|
-
or Anonymous.
|
|
4156
|
+
The provided identifier of the caller. Must be a phone number in E.164
|
|
4157
|
+
format (e.g. +15555555555).
|
|
3966
4158
|
example: '+15555555555'
|
|
3967
4159
|
conferenceId:
|
|
3968
4160
|
type: string
|
|
@@ -4041,8 +4233,7 @@ components:
|
|
|
4041
4233
|
type: string
|
|
4042
4234
|
description: >-
|
|
4043
4235
|
The phone number used as the from field of the B-leg call, in E.164
|
|
4044
|
-
format (e.g. +15555555555)
|
|
4045
|
-
Unavailable.
|
|
4236
|
+
format (e.g. +15555555555).
|
|
4046
4237
|
example: '+15555555555'
|
|
4047
4238
|
transferTo:
|
|
4048
4239
|
type: string
|
|
@@ -4582,12 +4773,26 @@ components:
|
|
|
4582
4773
|
schema:
|
|
4583
4774
|
type: string
|
|
4584
4775
|
format: binary
|
|
4776
|
+
getRecordingTranscriptionResponse:
|
|
4777
|
+
description: Transcription found.
|
|
4778
|
+
content:
|
|
4779
|
+
application/json:
|
|
4780
|
+
schema:
|
|
4781
|
+
$ref: '#/components/schemas/recordingTranscriptions'
|
|
4782
|
+
listTranscriptionsResponse:
|
|
4783
|
+
description: Transcription found.
|
|
4784
|
+
content:
|
|
4785
|
+
application/json:
|
|
4786
|
+
schema:
|
|
4787
|
+
$ref: '#/components/schemas/callTranscriptionMetadataList'
|
|
4585
4788
|
getCallTranscriptionResponse:
|
|
4586
|
-
description: Transcription found
|
|
4789
|
+
description: Transcription found.
|
|
4587
4790
|
content:
|
|
4588
4791
|
application/json:
|
|
4589
4792
|
schema:
|
|
4590
|
-
$ref: '#/components/schemas/
|
|
4793
|
+
$ref: '#/components/schemas/callTranscriptionResponse'
|
|
4794
|
+
deleteCallTranscriptionResponse:
|
|
4795
|
+
description: Transcription data was deleted.
|
|
4591
4796
|
listConferencesResponse:
|
|
4592
4797
|
description: Conferences retrieved successfully
|
|
4593
4798
|
content:
|
|
@@ -5090,6 +5295,14 @@ components:
|
|
|
5090
5295
|
type: string
|
|
5091
5296
|
description: Programmable Voice API Conference Member ID.
|
|
5092
5297
|
example: c-15ac29a2-1331029c-2cb0-4a07-b215-b22865662d85
|
|
5298
|
+
transcriptionId:
|
|
5299
|
+
name: transcriptionId
|
|
5300
|
+
in: path
|
|
5301
|
+
required: true
|
|
5302
|
+
schema:
|
|
5303
|
+
type: string
|
|
5304
|
+
description: Programmable Voice API Transcription ID.
|
|
5305
|
+
example: t-15ac29a2-1331029c-2cb0-4a07-b215-b22865662d85
|
|
5093
5306
|
to:
|
|
5094
5307
|
name: to
|
|
5095
5308
|
in: query
|
|
@@ -5517,12 +5730,14 @@ components:
|
|
|
5517
5730
|
Basic:
|
|
5518
5731
|
type: http
|
|
5519
5732
|
scheme: basic
|
|
5520
|
-
description:
|
|
5733
|
+
description: >-
|
|
5521
5734
|
Basic authentication is a simple authentication scheme built into the
|
|
5522
|
-
HTTP protocol. To use it, send your HTTP requests with an
|
|
5523
|
-
header that contains the word Basic followed by a
|
|
5524
|
-
|
|
5525
|
-
|
|
5735
|
+
HTTP protocol. To use it, send your HTTP requests with an
|
|
5736
|
+
`Authorization` header that contains the word `Basic` followed by a
|
|
5737
|
+
space and a Base64-encoded string `username:password`.
|
|
5738
|
+
|
|
5739
|
+
|
|
5740
|
+
- Example: `Authorization: Basic ZGVtbZpwQDU1dzByZA==`
|
|
5526
5741
|
callbacks:
|
|
5527
5742
|
inboundCallback:
|
|
5528
5743
|
'{inboundCallbackUrl}':
|
data/coverage/.last_run.json
CHANGED