deepl-rb 2.5.3 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/add_issues_to_kanban.yml +16 -0
  3. data/.gitlab-ci.yml +135 -0
  4. data/.rubocop.yml +27 -0
  5. data/CHANGELOG.md +39 -0
  6. data/CODE_OF_CONDUCT.md +132 -0
  7. data/CONTRIBUTING.md +37 -0
  8. data/Gemfile +3 -1
  9. data/LICENSE.md +1 -0
  10. data/README.md +115 -5
  11. data/Rakefile +7 -5
  12. data/SECURITY.md +58 -0
  13. data/VERSION +1 -1
  14. data/deepl-rb.gemspec +36 -20
  15. data/lib/deepl/api.rb +11 -1
  16. data/lib/deepl/configuration.rb +34 -3
  17. data/lib/deepl/document_api.rb +121 -0
  18. data/lib/deepl/exceptions/authorization_failed.rb +3 -0
  19. data/lib/deepl/exceptions/bad_request.rb +3 -0
  20. data/lib/deepl/exceptions/document_translation_error.rb +15 -0
  21. data/lib/deepl/exceptions/error.rb +6 -0
  22. data/lib/deepl/exceptions/limit_exceeded.rb +7 -0
  23. data/lib/deepl/exceptions/not_found.rb +3 -0
  24. data/lib/deepl/exceptions/not_supported.rb +3 -0
  25. data/lib/deepl/exceptions/quota_exceeded.rb +3 -0
  26. data/lib/deepl/exceptions/request_entity_too_large.rb +3 -0
  27. data/lib/deepl/exceptions/request_error.rb +4 -2
  28. data/lib/deepl/exceptions/server_error.rb +18 -0
  29. data/lib/deepl/glossary_api.rb +3 -0
  30. data/lib/deepl/requests/base.rb +89 -34
  31. data/lib/deepl/requests/document/download.rb +44 -0
  32. data/lib/deepl/requests/document/get_status.rb +44 -0
  33. data/lib/deepl/requests/document/upload.rb +64 -0
  34. data/lib/deepl/requests/glossary/create.rb +15 -1
  35. data/lib/deepl/requests/glossary/destroy.rb +8 -1
  36. data/lib/deepl/requests/glossary/entries.rb +8 -1
  37. data/lib/deepl/requests/glossary/find.rb +8 -1
  38. data/lib/deepl/requests/glossary/language_pairs.rb +9 -2
  39. data/lib/deepl/requests/glossary/list.rb +9 -2
  40. data/lib/deepl/requests/languages.rb +9 -2
  41. data/lib/deepl/requests/translate.rb +33 -11
  42. data/lib/deepl/requests/usage.rb +9 -2
  43. data/lib/deepl/resources/base.rb +3 -0
  44. data/lib/deepl/resources/document_handle.rb +57 -0
  45. data/lib/deepl/resources/document_translation_status.rb +54 -0
  46. data/lib/deepl/resources/glossary.rb +3 -0
  47. data/lib/deepl/resources/language.rb +3 -0
  48. data/lib/deepl/resources/language_pair.rb +3 -0
  49. data/lib/deepl/resources/text.rb +3 -0
  50. data/lib/deepl/resources/usage.rb +3 -0
  51. data/lib/deepl/utils/backoff_timer.rb +46 -0
  52. data/lib/deepl/utils/exception_builder.rb +18 -13
  53. data/lib/deepl.rb +47 -0
  54. data/lib/http_client_options.rb +22 -0
  55. data/license_checker.sh +8 -0
  56. data/spec/api/api_spec.rb +8 -4
  57. data/spec/api/configuration_spec.rb +92 -18
  58. data/spec/api/deepl_spec.rb +225 -86
  59. data/spec/fixtures/vcr_cassettes/deepl_document.yml +95 -0
  60. data/spec/fixtures/vcr_cassettes/deepl_document_download.yml +1214 -0
  61. data/spec/fixtures/vcr_cassettes/deepl_glossaries.yml +812 -23
  62. data/spec/fixtures/vcr_cassettes/deepl_languages.yml +28 -17
  63. data/spec/fixtures/vcr_cassettes/deepl_translate.yml +161 -53
  64. data/spec/fixtures/vcr_cassettes/deepl_usage.yml +93 -3
  65. data/spec/fixtures/vcr_cassettes/glossaries.yml +1237 -15
  66. data/spec/fixtures/vcr_cassettes/languages.yml +159 -44
  67. data/spec/fixtures/vcr_cassettes/translate_texts.yml +9742 -12
  68. data/spec/fixtures/vcr_cassettes/usage.yml +134 -2
  69. data/spec/integration_tests/document_api_spec.rb +155 -0
  70. data/spec/integration_tests/integration_test_utils.rb +170 -0
  71. data/spec/requests/glossary/create_spec.rb +23 -13
  72. data/spec/requests/glossary/destroy_spec.rb +33 -17
  73. data/spec/requests/glossary/entries_spec.rb +31 -17
  74. data/spec/requests/glossary/find_spec.rb +31 -17
  75. data/spec/requests/glossary/language_pairs_spec.rb +17 -7
  76. data/spec/requests/glossary/list_spec.rb +21 -11
  77. data/spec/requests/languages_spec.rb +31 -21
  78. data/spec/requests/translate_spec.rb +125 -131
  79. data/spec/requests/usage_spec.rb +17 -7
  80. data/spec/resources/glossary_spec.rb +15 -12
  81. data/spec/resources/language_pair_spec.rb +10 -7
  82. data/spec/resources/language_spec.rb +21 -18
  83. data/spec/resources/text_spec.rb +10 -7
  84. data/spec/resources/usage_spec.rb +16 -13
  85. data/spec/spec_helper.rb +63 -6
  86. metadata +32 -9
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: https://api-free.deepl.com/v2/glossaries?param=fake
5
+ uri: https://api.deepl.com/v2/glossaries?param=fake
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: name=Mi+Glosario&source_lang=EN&target_lang=ES&entries=Hello%09Hola%0AWorld%09Mundo%0A&entries_format=tsv
@@ -14,7 +14,7 @@ http_interactions:
14
14
  Accept:
15
15
  - "*/*"
16
16
  User-Agent:
17
- - Ruby
17
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
18
18
  Content-Type:
19
19
  - application/x-www-form-urlencoded
20
20
  response:
@@ -38,7 +38,7 @@ http_interactions:
38
38
  recorded_at: Mon, 24 Jan 2022 00:37:05 GMT
39
39
  - request:
40
40
  method: get
41
- uri: https://api-free.deepl.com/v2/glossaries/d9ad833f-c818-430c-a3c9-47071384fa3e
41
+ uri: https://api.deepl.com/v2/glossaries/d9ad833f-c818-430c-a3c9-47071384fa3e
42
42
  body:
43
43
  encoding: US-ASCII
44
44
  string: ''
@@ -50,7 +50,7 @@ http_interactions:
50
50
  Accept:
51
51
  - "*/*"
52
52
  User-Agent:
53
- - Ruby
53
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
54
54
  response:
55
55
  status:
56
56
  code: 200
@@ -72,7 +72,7 @@ http_interactions:
72
72
  recorded_at: Mon, 24 Jan 2022 01:51:30 GMT
73
73
  - request:
74
74
  method: get
75
- uri: https://api-free.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000
75
+ uri: https://api.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000
76
76
  body:
77
77
  encoding: US-ASCII
78
78
  string: ''
@@ -84,7 +84,7 @@ http_interactions:
84
84
  Accept:
85
85
  - "*/*"
86
86
  User-Agent:
87
- - Ruby
87
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
88
88
  response:
89
89
  status:
90
90
  code: 404
@@ -106,7 +106,7 @@ http_interactions:
106
106
  recorded_at: Mon, 24 Jan 2022 01:51:30 GMT
107
107
  - request:
108
108
  method: get
109
- uri: https://api-free.deepl.com/v2/glossaries
109
+ uri: https://api.deepl.com/v2/glossaries
110
110
  body:
111
111
  encoding: US-ASCII
112
112
  string: ''
@@ -118,7 +118,7 @@ http_interactions:
118
118
  Accept:
119
119
  - "*/*"
120
120
  User-Agent:
121
- - Ruby
121
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
122
122
  response:
123
123
  status:
124
124
  code: 200
@@ -141,7 +141,7 @@ http_interactions:
141
141
  recorded_at: Mon, 24 Jan 2022 02:24:30 GMT
142
142
  - request:
143
143
  method: delete
144
- uri: https://api-free.deepl.com/v2/glossaries/c03fd58d-1a51-48c1-ad75-5a89d14e3e23
144
+ uri: https://api.deepl.com/v2/glossaries/c03fd58d-1a51-48c1-ad75-5a89d14e3e23
145
145
  body:
146
146
  encoding: US-ASCII
147
147
  string: ''
@@ -153,7 +153,7 @@ http_interactions:
153
153
  Accept:
154
154
  - "*/*"
155
155
  User-Agent:
156
- - Ruby
156
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
157
157
  response:
158
158
  status:
159
159
  code: 204
@@ -171,7 +171,7 @@ http_interactions:
171
171
  recorded_at: Mon, 24 Jan 2022 02:39:35 GMT
172
172
  - request:
173
173
  method: delete
174
- uri: https://api-free.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000
174
+ uri: https://api.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000
175
175
  body:
176
176
  encoding: US-ASCII
177
177
  string: ''
@@ -183,7 +183,7 @@ http_interactions:
183
183
  Accept:
184
184
  - "*/*"
185
185
  User-Agent:
186
- - Ruby
186
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
187
187
  response:
188
188
  status:
189
189
  code: 404
@@ -205,7 +205,7 @@ http_interactions:
205
205
  recorded_at: Mon, 24 Jan 2022 02:39:36 GMT
206
206
  - request:
207
207
  method: get
208
- uri: https://api-free.deepl.com/v2/glossaries/012a5576-b551-4d4c-b917-ce01bc8debb6/entries
208
+ uri: https://api.deepl.com/v2/glossaries/012a5576-b551-4d4c-b917-ce01bc8debb6/entries
209
209
  body:
210
210
  encoding: US-ASCII
211
211
  string: ''
@@ -217,7 +217,7 @@ http_interactions:
217
217
  Accept:
218
218
  - "*/*"
219
219
  User-Agent:
220
- - Ruby
220
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
221
221
  response:
222
222
  status:
223
223
  code: 200
@@ -239,7 +239,7 @@ http_interactions:
239
239
  recorded_at: Mon, 24 Jan 2022 02:52:12 GMT
240
240
  - request:
241
241
  method: get
242
- uri: https://api-free.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000/entries
242
+ uri: https://api.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000/entries
243
243
  body:
244
244
  encoding: US-ASCII
245
245
  string: ''
@@ -251,7 +251,7 @@ http_interactions:
251
251
  Accept:
252
252
  - "*/*"
253
253
  User-Agent:
254
- - Ruby
254
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
255
255
  response:
256
256
  status:
257
257
  code: 404
@@ -273,7 +273,7 @@ http_interactions:
273
273
  recorded_at: Mon, 24 Jan 2022 02:52:12 GMT
274
274
  - request:
275
275
  method: get
276
- uri: https://api-free.deepl.com/v2/glossary-language-pairs
276
+ uri: https://api.deepl.com/v2/glossary-language-pairs
277
277
  body:
278
278
  encoding: US-ASCII
279
279
  string: ''
@@ -285,7 +285,7 @@ http_interactions:
285
285
  Accept:
286
286
  - "*/*"
287
287
  User-Agent:
288
- - Ruby
288
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
289
289
  response:
290
290
  status:
291
291
  code: 200
@@ -307,7 +307,7 @@ http_interactions:
307
307
  recorded_at: Mon, 24 Jan 2022 03:01:06 GMT
308
308
  - request:
309
309
  method: post
310
- uri: https://api-free.deepl.com/v2/glossaries
310
+ uri: https://api.deepl.com/v2/glossaries
311
311
  body:
312
312
  encoding: US-ASCII
313
313
  string: name=fixture&source_lang=EN&target_lang=ES&entries=Hello%09Hola%0A&entries_format=tsv
@@ -319,7 +319,7 @@ http_interactions:
319
319
  Accept:
320
320
  - "*/*"
321
321
  User-Agent:
322
- - Ruby
322
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
323
323
  Content-Type:
324
324
  - application/x-www-form-urlencoded
325
325
  response:
@@ -343,7 +343,7 @@ http_interactions:
343
343
  recorded_at: Tue, 25 Jan 2022 00:53:44 GMT
344
344
  - request:
345
345
  method: delete
346
- uri: https://api-free.deepl.com/v2/glossaries/fd53187f-2306-4f0a-aa13-00df678bd609
346
+ uri: https://api.deepl.com/v2/glossaries/fd53187f-2306-4f0a-aa13-00df678bd609
347
347
  body:
348
348
  encoding: US-ASCII
349
349
  string: ''
@@ -355,7 +355,7 @@ http_interactions:
355
355
  Accept:
356
356
  - "*/*"
357
357
  User-Agent:
358
- - Ruby
358
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
359
359
  response:
360
360
  status:
361
361
  code: 204
@@ -371,4 +371,793 @@ http_interactions:
371
371
  encoding: UTF-8
372
372
  string: ''
373
373
  recorded_at: Tue, 25 Jan 2022 00:53:45 GMT
374
- recorded_with: VCR 6.0.0
374
+ - request:
375
+ method: post
376
+ uri: https://api.deepl.com/v2/glossaries
377
+ body:
378
+ encoding: UTF-8
379
+ string: '{"name":"Mi Glosario","source_lang":"EN","target_lang":"ES","entries":"Hello\tHola\nWorld\tMundo\n","entries_format":"tsv","param":"fake"}'
380
+ headers:
381
+ Authorization:
382
+ - DeepL-Auth-Key VALID_TOKEN
383
+ User-Agent:
384
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
385
+ Content-Type:
386
+ - application/json
387
+ Accept-Encoding:
388
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
389
+ Accept:
390
+ - "*/*"
391
+ response:
392
+ status:
393
+ code: 201
394
+ message: Created
395
+ headers:
396
+ Date:
397
+ - Tue, 02 Jul 2024 15:04:46 GMT
398
+ Content-Type:
399
+ - application/json; charset=utf-8
400
+ Transfer-Encoding:
401
+ - chunked
402
+ X-Trace-Id:
403
+ - 8d973e98ef61488e81b030fd321b6a4d
404
+ Strict-Transport-Security:
405
+ - max-age=63072000; includeSubDomains; preload
406
+ Server-Timing:
407
+ - l7_lb_tls;dur=108, l7_lb_idle;dur=1, l7_lb_receive;dur=0, l7_lb_total;dur=157
408
+ Access-Control-Expose-Headers:
409
+ - Server-Timing, X-Trace-ID
410
+ body:
411
+ encoding: UTF-8
412
+ string: '{"glossary_id":"e7a62637-7ef4-4959-a355-09ba61dd0126","name":"Mi Glosario","ready":true,"source_lang":"en","target_lang":"es","creation_time":"2024-07-02T15:04:46.016123Z","entry_count":2}'
413
+ recorded_at: Tue, 02 Jul 2024 15:04:46 GMT
414
+ - request:
415
+ method: get
416
+ uri: https://api.deepl.com/v2/glossaries/d9ad833f-c818-430c-a3c9-47071384fa3e
417
+ body:
418
+ encoding: US-ASCII
419
+ string: ''
420
+ headers:
421
+ Authorization:
422
+ - DeepL-Auth-Key VALID_TOKEN
423
+ User-Agent:
424
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
425
+ Accept-Encoding:
426
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
427
+ Accept:
428
+ - "*/*"
429
+ response:
430
+ status:
431
+ code: 404
432
+ message: Not Found
433
+ headers:
434
+ Date:
435
+ - Tue, 02 Jul 2024 15:04:46 GMT
436
+ Content-Type:
437
+ - application/json; charset=utf-8
438
+ Transfer-Encoding:
439
+ - chunked
440
+ Vary:
441
+ - Accept-Encoding
442
+ X-Trace-Id:
443
+ - 984ab7c4927e40e59af3aa8131565a15
444
+ Strict-Transport-Security:
445
+ - max-age=63072000; includeSubDomains; preload
446
+ Server-Timing:
447
+ - l7_lb_tls;dur=118, l7_lb_idle;dur=3, l7_lb_receive;dur=0, l7_lb_total;dur=140
448
+ Access-Control-Expose-Headers:
449
+ - Server-Timing, X-Trace-ID
450
+ body:
451
+ encoding: ASCII-8BIT
452
+ string: '{"message":"Not found"}'
453
+ recorded_at: Tue, 02 Jul 2024 15:04:46 GMT
454
+ - request:
455
+ method: get
456
+ uri: https://api.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000
457
+ body:
458
+ encoding: US-ASCII
459
+ string: ''
460
+ headers:
461
+ Authorization:
462
+ - DeepL-Auth-Key VALID_TOKEN
463
+ User-Agent:
464
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
465
+ Accept-Encoding:
466
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
467
+ Accept:
468
+ - "*/*"
469
+ response:
470
+ status:
471
+ code: 404
472
+ message: Not Found
473
+ headers:
474
+ Date:
475
+ - Tue, 02 Jul 2024 15:04:46 GMT
476
+ Content-Type:
477
+ - application/json; charset=utf-8
478
+ Transfer-Encoding:
479
+ - chunked
480
+ Vary:
481
+ - Accept-Encoding
482
+ X-Trace-Id:
483
+ - 25e67c154f4a4395ad53900b3a710f37
484
+ Strict-Transport-Security:
485
+ - max-age=63072000; includeSubDomains; preload
486
+ Server-Timing:
487
+ - l7_lb_tls;dur=108, l7_lb_idle;dur=1, l7_lb_receive;dur=0, l7_lb_total;dur=123
488
+ Access-Control-Expose-Headers:
489
+ - Server-Timing, X-Trace-ID
490
+ body:
491
+ encoding: ASCII-8BIT
492
+ string: '{"message":"Not found"}'
493
+ recorded_at: Tue, 02 Jul 2024 15:04:46 GMT
494
+ - request:
495
+ method: get
496
+ uri: https://api.deepl.com/v2/glossaries
497
+ body:
498
+ encoding: US-ASCII
499
+ string: ''
500
+ headers:
501
+ Authorization:
502
+ - DeepL-Auth-Key VALID_TOKEN
503
+ User-Agent:
504
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
505
+ Accept-Encoding:
506
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
507
+ Accept:
508
+ - "*/*"
509
+ response:
510
+ status:
511
+ code: 200
512
+ message: OK
513
+ headers:
514
+ Date:
515
+ - Tue, 02 Jul 2024 15:04:46 GMT
516
+ Content-Type:
517
+ - application/json; charset=utf-8
518
+ Transfer-Encoding:
519
+ - chunked
520
+ Vary:
521
+ - Accept-Encoding
522
+ X-Trace-Id:
523
+ - f42a25b223544b4aaa14762e4b2a7444
524
+ X-Cache-Status:
525
+ - MISS
526
+ Strict-Transport-Security:
527
+ - max-age=63072000; includeSubDomains; preload
528
+ Server-Timing:
529
+ - l7_lb_tls;dur=112, l7_lb_idle;dur=1, l7_lb_receive;dur=0, l7_lb_total;dur=161
530
+ Access-Control-Expose-Headers:
531
+ - Server-Timing, X-Trace-ID
532
+ body:
533
+ encoding: ASCII-8BIT
534
+ string: '{"glossaries":[{"glossary_id":"6a507253-97bd-4c58-af74-ad44cb9b29bd","name":"TestGlossar","ready":true,"source_lang":"en","target_lang":"ja","creation_time":"2024-03-27T08:47:11.406903Z","entry_count":2},{"glossary_id":"5ed6cb7c-7d55-4fc9-8e6d-a8c88996dab3","name":"TestGlossar","ready":true,"source_lang":"de","target_lang":"en","creation_time":"2024-04-22T11:53:34.461272Z","entry_count":9958},{"glossary_id":"22b9e3f1-df87-471a-b947-8e974194e4df","name":"My
535
+ Glossary","ready":true,"source_lang":"en","target_lang":"sv","creation_time":"2024-05-03T13:54:03.920701Z","entry_count":1},{"glossary_id":"e7a62637-7ef4-4959-a355-09ba61dd0126","name":"Mi
536
+ Glosario","ready":true,"source_lang":"en","target_lang":"es","creation_time":"2024-07-02T15:04:46.016123Z","entry_count":2}]}'
537
+ recorded_at: Tue, 02 Jul 2024 15:04:46 GMT
538
+ - request:
539
+ method: delete
540
+ uri: https://api.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000
541
+ body:
542
+ encoding: US-ASCII
543
+ string: ''
544
+ headers:
545
+ Authorization:
546
+ - DeepL-Auth-Key VALID_TOKEN
547
+ User-Agent:
548
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
549
+ Accept-Encoding:
550
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
551
+ Accept:
552
+ - "*/*"
553
+ response:
554
+ status:
555
+ code: 404
556
+ message: Not Found
557
+ headers:
558
+ Date:
559
+ - Tue, 02 Jul 2024 15:04:48 GMT
560
+ Content-Type:
561
+ - application/json; charset=utf-8
562
+ Transfer-Encoding:
563
+ - chunked
564
+ Vary:
565
+ - Accept-Encoding
566
+ X-Trace-Id:
567
+ - 1999b15dcc7b43a6995ce29c1e82c34b
568
+ Strict-Transport-Security:
569
+ - max-age=63072000; includeSubDomains; preload
570
+ Server-Timing:
571
+ - l7_lb_tls;dur=107, l7_lb_idle;dur=2, l7_lb_receive;dur=0, l7_lb_total;dur=123
572
+ Access-Control-Expose-Headers:
573
+ - Server-Timing, X-Trace-ID
574
+ body:
575
+ encoding: ASCII-8BIT
576
+ string: '{"message":"Not found"}'
577
+ recorded_at: Tue, 02 Jul 2024 15:04:48 GMT
578
+ - request:
579
+ method: get
580
+ uri: https://api.deepl.com/v2/glossaries/012a5576-b551-4d4c-b917-ce01bc8debb6/entries
581
+ body:
582
+ encoding: US-ASCII
583
+ string: ''
584
+ headers:
585
+ Authorization:
586
+ - DeepL-Auth-Key VALID_TOKEN
587
+ User-Agent:
588
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
589
+ Accept-Encoding:
590
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
591
+ Accept:
592
+ - "*/*"
593
+ response:
594
+ status:
595
+ code: 404
596
+ message: Not Found
597
+ headers:
598
+ Date:
599
+ - Tue, 02 Jul 2024 15:04:48 GMT
600
+ Content-Type:
601
+ - application/json; charset=utf-8
602
+ Transfer-Encoding:
603
+ - chunked
604
+ Vary:
605
+ - Accept-Encoding
606
+ X-Trace-Id:
607
+ - 4fb6f96fa4ae49e1b8bbfa9e6700b491
608
+ Strict-Transport-Security:
609
+ - max-age=63072000; includeSubDomains; preload
610
+ Server-Timing:
611
+ - l7_lb_tls;dur=111, l7_lb_idle;dur=0, l7_lb_receive;dur=0, l7_lb_total;dur=127
612
+ Access-Control-Expose-Headers:
613
+ - Server-Timing, X-Trace-ID
614
+ body:
615
+ encoding: ASCII-8BIT
616
+ string: '{"message":"Not found"}'
617
+ recorded_at: Tue, 02 Jul 2024 15:04:48 GMT
618
+ - request:
619
+ method: get
620
+ uri: https://api.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000/entries
621
+ body:
622
+ encoding: US-ASCII
623
+ string: ''
624
+ headers:
625
+ Authorization:
626
+ - DeepL-Auth-Key VALID_TOKEN
627
+ User-Agent:
628
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
629
+ Accept-Encoding:
630
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
631
+ Accept:
632
+ - "*/*"
633
+ response:
634
+ status:
635
+ code: 404
636
+ message: Not Found
637
+ headers:
638
+ Date:
639
+ - Tue, 02 Jul 2024 15:04:48 GMT
640
+ Content-Type:
641
+ - application/json; charset=utf-8
642
+ Transfer-Encoding:
643
+ - chunked
644
+ Vary:
645
+ - Accept-Encoding
646
+ X-Trace-Id:
647
+ - 00a24d3a6fbc4f299c98a213fc411d44
648
+ Strict-Transport-Security:
649
+ - max-age=63072000; includeSubDomains; preload
650
+ Server-Timing:
651
+ - l7_lb_tls;dur=120, l7_lb_idle;dur=1, l7_lb_receive;dur=0, l7_lb_total;dur=133
652
+ Access-Control-Expose-Headers:
653
+ - Server-Timing, X-Trace-ID
654
+ body:
655
+ encoding: ASCII-8BIT
656
+ string: '{"message":"Not found"}'
657
+ recorded_at: Tue, 02 Jul 2024 15:04:48 GMT
658
+ - request:
659
+ method: get
660
+ uri: https://api.deepl.com/v2/glossary-language-pairs
661
+ body:
662
+ encoding: US-ASCII
663
+ string: ''
664
+ headers:
665
+ Authorization:
666
+ - DeepL-Auth-Key VALID_TOKEN
667
+ User-Agent:
668
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
669
+ Accept-Encoding:
670
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
671
+ Accept:
672
+ - "*/*"
673
+ response:
674
+ status:
675
+ code: 200
676
+ message: OK
677
+ headers:
678
+ Date:
679
+ - Tue, 02 Jul 2024 15:04:49 GMT
680
+ Content-Type:
681
+ - application/json; charset=utf-8
682
+ Transfer-Encoding:
683
+ - chunked
684
+ Vary:
685
+ - Accept-Encoding
686
+ X-Trace-Id:
687
+ - 8ae84cd537b94bf9b7f82081d5b3bb53
688
+ X-Cache-Status:
689
+ - MISS
690
+ Strict-Transport-Security:
691
+ - max-age=63072000; includeSubDomains; preload
692
+ Server-Timing:
693
+ - l7_lb_tls;dur=108, l7_lb_idle;dur=2, l7_lb_receive;dur=0, l7_lb_total;dur=124
694
+ Access-Control-Expose-Headers:
695
+ - Server-Timing, X-Trace-ID
696
+ body:
697
+ encoding: ASCII-8BIT
698
+ string: '{"supported_languages":[{"source_lang":"de","target_lang":"en"},{"source_lang":"de","target_lang":"es"},{"source_lang":"de","target_lang":"fr"},{"source_lang":"de","target_lang":"ja"},{"source_lang":"de","target_lang":"it"},{"source_lang":"de","target_lang":"pl"},{"source_lang":"de","target_lang":"nl"},{"source_lang":"de","target_lang":"zh"},{"source_lang":"de","target_lang":"ru"},{"source_lang":"de","target_lang":"pt"},{"source_lang":"de","target_lang":"ko"},{"source_lang":"de","target_lang":"da"},{"source_lang":"de","target_lang":"sv"},{"source_lang":"de","target_lang":"nb"},{"source_lang":"en","target_lang":"de"},{"source_lang":"en","target_lang":"es"},{"source_lang":"en","target_lang":"fr"},{"source_lang":"en","target_lang":"ja"},{"source_lang":"en","target_lang":"it"},{"source_lang":"en","target_lang":"pl"},{"source_lang":"en","target_lang":"nl"},{"source_lang":"en","target_lang":"zh"},{"source_lang":"en","target_lang":"ru"},{"source_lang":"en","target_lang":"pt"},{"source_lang":"en","target_lang":"ko"},{"source_lang":"en","target_lang":"da"},{"source_lang":"en","target_lang":"sv"},{"source_lang":"en","target_lang":"nb"},{"source_lang":"es","target_lang":"de"},{"source_lang":"es","target_lang":"en"},{"source_lang":"es","target_lang":"fr"},{"source_lang":"es","target_lang":"ja"},{"source_lang":"es","target_lang":"it"},{"source_lang":"es","target_lang":"pl"},{"source_lang":"es","target_lang":"nl"},{"source_lang":"es","target_lang":"zh"},{"source_lang":"es","target_lang":"ru"},{"source_lang":"es","target_lang":"pt"},{"source_lang":"es","target_lang":"ko"},{"source_lang":"es","target_lang":"da"},{"source_lang":"es","target_lang":"sv"},{"source_lang":"es","target_lang":"nb"},{"source_lang":"fr","target_lang":"de"},{"source_lang":"fr","target_lang":"en"},{"source_lang":"fr","target_lang":"es"},{"source_lang":"fr","target_lang":"ja"},{"source_lang":"fr","target_lang":"it"},{"source_lang":"fr","target_lang":"pl"},{"source_lang":"fr","target_lang":"nl"},{"source_lang":"fr","target_lang":"zh"},{"source_lang":"fr","target_lang":"ru"},{"source_lang":"fr","target_lang":"pt"},{"source_lang":"fr","target_lang":"ko"},{"source_lang":"fr","target_lang":"da"},{"source_lang":"fr","target_lang":"sv"},{"source_lang":"fr","target_lang":"nb"},{"source_lang":"ja","target_lang":"de"},{"source_lang":"ja","target_lang":"en"},{"source_lang":"ja","target_lang":"es"},{"source_lang":"ja","target_lang":"fr"},{"source_lang":"ja","target_lang":"it"},{"source_lang":"ja","target_lang":"pl"},{"source_lang":"ja","target_lang":"nl"},{"source_lang":"ja","target_lang":"zh"},{"source_lang":"ja","target_lang":"ru"},{"source_lang":"ja","target_lang":"pt"},{"source_lang":"ja","target_lang":"ko"},{"source_lang":"ja","target_lang":"da"},{"source_lang":"ja","target_lang":"sv"},{"source_lang":"ja","target_lang":"nb"},{"source_lang":"it","target_lang":"de"},{"source_lang":"it","target_lang":"en"},{"source_lang":"it","target_lang":"es"},{"source_lang":"it","target_lang":"fr"},{"source_lang":"it","target_lang":"ja"},{"source_lang":"it","target_lang":"pl"},{"source_lang":"it","target_lang":"nl"},{"source_lang":"it","target_lang":"zh"},{"source_lang":"it","target_lang":"ru"},{"source_lang":"it","target_lang":"pt"},{"source_lang":"it","target_lang":"ko"},{"source_lang":"it","target_lang":"da"},{"source_lang":"it","target_lang":"sv"},{"source_lang":"it","target_lang":"nb"},{"source_lang":"pl","target_lang":"de"},{"source_lang":"pl","target_lang":"en"},{"source_lang":"pl","target_lang":"es"},{"source_lang":"pl","target_lang":"fr"},{"source_lang":"pl","target_lang":"ja"},{"source_lang":"pl","target_lang":"it"},{"source_lang":"pl","target_lang":"nl"},{"source_lang":"pl","target_lang":"zh"},{"source_lang":"pl","target_lang":"ru"},{"source_lang":"pl","target_lang":"pt"},{"source_lang":"pl","target_lang":"ko"},{"source_lang":"pl","target_lang":"da"},{"source_lang":"pl","target_lang":"sv"},{"source_lang":"pl","target_lang":"nb"},{"source_lang":"nl","target_lang":"de"},{"source_lang":"nl","target_lang":"en"},{"source_lang":"nl","target_lang":"es"},{"source_lang":"nl","target_lang":"fr"},{"source_lang":"nl","target_lang":"ja"},{"source_lang":"nl","target_lang":"it"},{"source_lang":"nl","target_lang":"pl"},{"source_lang":"nl","target_lang":"zh"},{"source_lang":"nl","target_lang":"ru"},{"source_lang":"nl","target_lang":"pt"},{"source_lang":"nl","target_lang":"ko"},{"source_lang":"nl","target_lang":"da"},{"source_lang":"nl","target_lang":"sv"},{"source_lang":"nl","target_lang":"nb"},{"source_lang":"zh","target_lang":"de"},{"source_lang":"zh","target_lang":"en"},{"source_lang":"zh","target_lang":"es"},{"source_lang":"zh","target_lang":"fr"},{"source_lang":"zh","target_lang":"ja"},{"source_lang":"zh","target_lang":"it"},{"source_lang":"zh","target_lang":"pl"},{"source_lang":"zh","target_lang":"nl"},{"source_lang":"zh","target_lang":"ru"},{"source_lang":"zh","target_lang":"pt"},{"source_lang":"zh","target_lang":"ko"},{"source_lang":"zh","target_lang":"da"},{"source_lang":"zh","target_lang":"sv"},{"source_lang":"zh","target_lang":"nb"},{"source_lang":"ru","target_lang":"de"},{"source_lang":"ru","target_lang":"en"},{"source_lang":"ru","target_lang":"es"},{"source_lang":"ru","target_lang":"fr"},{"source_lang":"ru","target_lang":"ja"},{"source_lang":"ru","target_lang":"it"},{"source_lang":"ru","target_lang":"pl"},{"source_lang":"ru","target_lang":"nl"},{"source_lang":"ru","target_lang":"zh"},{"source_lang":"ru","target_lang":"pt"},{"source_lang":"ru","target_lang":"ko"},{"source_lang":"ru","target_lang":"da"},{"source_lang":"ru","target_lang":"sv"},{"source_lang":"ru","target_lang":"nb"},{"source_lang":"pt","target_lang":"de"},{"source_lang":"pt","target_lang":"en"},{"source_lang":"pt","target_lang":"es"},{"source_lang":"pt","target_lang":"fr"},{"source_lang":"pt","target_lang":"ja"},{"source_lang":"pt","target_lang":"it"},{"source_lang":"pt","target_lang":"pl"},{"source_lang":"pt","target_lang":"nl"},{"source_lang":"pt","target_lang":"zh"},{"source_lang":"pt","target_lang":"ru"},{"source_lang":"pt","target_lang":"ko"},{"source_lang":"pt","target_lang":"da"},{"source_lang":"pt","target_lang":"sv"},{"source_lang":"pt","target_lang":"nb"},{"source_lang":"ko","target_lang":"de"},{"source_lang":"ko","target_lang":"en"},{"source_lang":"ko","target_lang":"es"},{"source_lang":"ko","target_lang":"fr"},{"source_lang":"ko","target_lang":"ja"},{"source_lang":"ko","target_lang":"it"},{"source_lang":"ko","target_lang":"pl"},{"source_lang":"ko","target_lang":"nl"},{"source_lang":"ko","target_lang":"zh"},{"source_lang":"ko","target_lang":"ru"},{"source_lang":"ko","target_lang":"pt"},{"source_lang":"ko","target_lang":"da"},{"source_lang":"ko","target_lang":"sv"},{"source_lang":"ko","target_lang":"nb"},{"source_lang":"da","target_lang":"de"},{"source_lang":"da","target_lang":"en"},{"source_lang":"da","target_lang":"es"},{"source_lang":"da","target_lang":"fr"},{"source_lang":"da","target_lang":"ja"},{"source_lang":"da","target_lang":"it"},{"source_lang":"da","target_lang":"pl"},{"source_lang":"da","target_lang":"nl"},{"source_lang":"da","target_lang":"zh"},{"source_lang":"da","target_lang":"ru"},{"source_lang":"da","target_lang":"pt"},{"source_lang":"da","target_lang":"ko"},{"source_lang":"da","target_lang":"sv"},{"source_lang":"da","target_lang":"nb"},{"source_lang":"sv","target_lang":"de"},{"source_lang":"sv","target_lang":"en"},{"source_lang":"sv","target_lang":"es"},{"source_lang":"sv","target_lang":"fr"},{"source_lang":"sv","target_lang":"ja"},{"source_lang":"sv","target_lang":"it"},{"source_lang":"sv","target_lang":"pl"},{"source_lang":"sv","target_lang":"nl"},{"source_lang":"sv","target_lang":"zh"},{"source_lang":"sv","target_lang":"ru"},{"source_lang":"sv","target_lang":"pt"},{"source_lang":"sv","target_lang":"ko"},{"source_lang":"sv","target_lang":"da"},{"source_lang":"sv","target_lang":"nb"},{"source_lang":"nb","target_lang":"de"},{"source_lang":"nb","target_lang":"en"},{"source_lang":"nb","target_lang":"es"},{"source_lang":"nb","target_lang":"fr"},{"source_lang":"nb","target_lang":"ja"},{"source_lang":"nb","target_lang":"it"},{"source_lang":"nb","target_lang":"pl"},{"source_lang":"nb","target_lang":"nl"},{"source_lang":"nb","target_lang":"zh"},{"source_lang":"nb","target_lang":"ru"},{"source_lang":"nb","target_lang":"pt"},{"source_lang":"nb","target_lang":"ko"},{"source_lang":"nb","target_lang":"da"},{"source_lang":"nb","target_lang":"sv"}]}'
699
+ recorded_at: Tue, 02 Jul 2024 15:04:49 GMT
700
+ - request:
701
+ method: get
702
+ uri: https://api.deepl.com/v2/glossaries/d9ad833f-c818-430c-a3c9-47071384fa3e
703
+ body:
704
+ encoding: UTF-8
705
+ string: "{}"
706
+ headers:
707
+ Authorization:
708
+ - DeepL-Auth-Key VALID_TOKEN
709
+ User-Agent:
710
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
711
+ Content-Type:
712
+ - application/json
713
+ Accept-Encoding:
714
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
715
+ Accept:
716
+ - "*/*"
717
+ response:
718
+ status:
719
+ code: 404
720
+ message: Not Found
721
+ headers:
722
+ Date:
723
+ - Tue, 09 Jul 2024 01:47:03 GMT
724
+ Content-Type:
725
+ - application/json; charset=utf-8
726
+ Transfer-Encoding:
727
+ - chunked
728
+ Vary:
729
+ - Accept-Encoding
730
+ X-Trace-Id:
731
+ - 446709766293495589204bc6f86966ac
732
+ Strict-Transport-Security:
733
+ - max-age=63072000; includeSubDomains; preload
734
+ Server-Timing:
735
+ - l7_lb_tls;dur=106, l7_lb_idle;dur=2, l7_lb_receive;dur=0, l7_lb_total;dur=123
736
+ Access-Control-Expose-Headers:
737
+ - Server-Timing, X-Trace-ID
738
+ body:
739
+ encoding: ASCII-8BIT
740
+ string: '{"message":"Not found"}'
741
+ recorded_at: Tue, 09 Jul 2024 01:47:03 GMT
742
+ - request:
743
+ method: get
744
+ uri: https://api.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000
745
+ body:
746
+ encoding: UTF-8
747
+ string: "{}"
748
+ headers:
749
+ Authorization:
750
+ - DeepL-Auth-Key VALID_TOKEN
751
+ User-Agent:
752
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
753
+ Content-Type:
754
+ - application/json
755
+ Accept-Encoding:
756
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
757
+ Accept:
758
+ - "*/*"
759
+ response:
760
+ status:
761
+ code: 404
762
+ message: Not Found
763
+ headers:
764
+ Date:
765
+ - Tue, 09 Jul 2024 01:47:03 GMT
766
+ Content-Type:
767
+ - application/json; charset=utf-8
768
+ Transfer-Encoding:
769
+ - chunked
770
+ Vary:
771
+ - Accept-Encoding
772
+ X-Trace-Id:
773
+ - 1cdff9269b9942e88cdc02b36e1a5bc3
774
+ Strict-Transport-Security:
775
+ - max-age=63072000; includeSubDomains; preload
776
+ Server-Timing:
777
+ - l7_lb_tls;dur=124, l7_lb_idle;dur=2, l7_lb_receive;dur=0, l7_lb_total;dur=135
778
+ Access-Control-Expose-Headers:
779
+ - Server-Timing, X-Trace-ID
780
+ body:
781
+ encoding: ASCII-8BIT
782
+ string: '{"message":"Not found"}'
783
+ recorded_at: Tue, 09 Jul 2024 01:47:03 GMT
784
+ - request:
785
+ method: get
786
+ uri: https://api.deepl.com/v2/glossaries
787
+ body:
788
+ encoding: UTF-8
789
+ string: "{}"
790
+ headers:
791
+ Authorization:
792
+ - DeepL-Auth-Key VALID_TOKEN
793
+ User-Agent:
794
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
795
+ Content-Type:
796
+ - application/json
797
+ Accept-Encoding:
798
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
799
+ Accept:
800
+ - "*/*"
801
+ response:
802
+ status:
803
+ code: 200
804
+ message: OK
805
+ headers:
806
+ Date:
807
+ - Tue, 09 Jul 2024 01:47:03 GMT
808
+ Content-Type:
809
+ - application/json; charset=utf-8
810
+ Transfer-Encoding:
811
+ - chunked
812
+ Vary:
813
+ - Accept-Encoding
814
+ X-Trace-Id:
815
+ - b68bbc7f74be40b4b2a6bb9cff88db01
816
+ X-Cache-Status:
817
+ - MISS
818
+ Strict-Transport-Security:
819
+ - max-age=63072000; includeSubDomains; preload
820
+ Server-Timing:
821
+ - l7_lb_tls;dur=177, l7_lb_idle;dur=1, l7_lb_receive;dur=1, l7_lb_total;dur=190
822
+ Access-Control-Expose-Headers:
823
+ - Server-Timing, X-Trace-ID
824
+ body:
825
+ encoding: ASCII-8BIT
826
+ string: '{"glossaries":[{"glossary_id":"6a507253-97bd-4c58-af74-ad44cb9b29bd","name":"TestGlossar","ready":true,"source_lang":"en","target_lang":"ja","creation_time":"2024-03-27T08:47:11.406903Z","entry_count":2},{"glossary_id":"5ed6cb7c-7d55-4fc9-8e6d-a8c88996dab3","name":"TestGlossar","ready":true,"source_lang":"de","target_lang":"en","creation_time":"2024-04-22T11:53:34.461272Z","entry_count":9958},{"glossary_id":"22b9e3f1-df87-471a-b947-8e974194e4df","name":"My
827
+ Glossary","ready":true,"source_lang":"en","target_lang":"sv","creation_time":"2024-05-03T13:54:03.920701Z","entry_count":1},{"glossary_id":"9ab5dac2-b7b2-4b4a-808a-e8e305df5ecb","name":"Mi
828
+ Glosario","ready":true,"source_lang":"en","target_lang":"es","creation_time":"2024-07-02T15:04:50.832836Z","entry_count":2},{"glossary_id":"e7a62637-7ef4-4959-a355-09ba61dd0126","name":"Mi
829
+ Glosario","ready":true,"source_lang":"en","target_lang":"es","creation_time":"2024-07-02T15:04:46.016123Z","entry_count":2}]}'
830
+ recorded_at: Tue, 09 Jul 2024 01:47:03 GMT
831
+ - request:
832
+ method: delete
833
+ uri: https://api.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000
834
+ body:
835
+ encoding: UTF-8
836
+ string: "{}"
837
+ headers:
838
+ Authorization:
839
+ - DeepL-Auth-Key VALID_TOKEN
840
+ User-Agent:
841
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
842
+ Content-Type:
843
+ - application/json
844
+ Accept-Encoding:
845
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
846
+ Accept:
847
+ - "*/*"
848
+ response:
849
+ status:
850
+ code: 404
851
+ message: Not Found
852
+ headers:
853
+ Date:
854
+ - Tue, 09 Jul 2024 01:47:04 GMT
855
+ Content-Type:
856
+ - application/json; charset=utf-8
857
+ Transfer-Encoding:
858
+ - chunked
859
+ Vary:
860
+ - Accept-Encoding
861
+ X-Trace-Id:
862
+ - 9b9ee64c25a6409aade4de37179cf91f
863
+ Strict-Transport-Security:
864
+ - max-age=63072000; includeSubDomains; preload
865
+ Server-Timing:
866
+ - l7_lb_tls;dur=106, l7_lb_idle;dur=2, l7_lb_receive;dur=0, l7_lb_total;dur=119
867
+ Access-Control-Expose-Headers:
868
+ - Server-Timing, X-Trace-ID
869
+ body:
870
+ encoding: ASCII-8BIT
871
+ string: '{"message":"Not found"}'
872
+ recorded_at: Tue, 09 Jul 2024 01:47:04 GMT
873
+ - request:
874
+ method: get
875
+ uri: https://api.deepl.com/v2/glossaries/012a5576-b551-4d4c-b917-ce01bc8debb6/entries
876
+ body:
877
+ encoding: UTF-8
878
+ string: "{}"
879
+ headers:
880
+ Authorization:
881
+ - DeepL-Auth-Key VALID_TOKEN
882
+ User-Agent:
883
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
884
+ Content-Type:
885
+ - application/json
886
+ Accept-Encoding:
887
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
888
+ Accept:
889
+ - "*/*"
890
+ response:
891
+ status:
892
+ code: 404
893
+ message: Not Found
894
+ headers:
895
+ Date:
896
+ - Tue, 09 Jul 2024 01:47:04 GMT
897
+ Content-Type:
898
+ - application/json; charset=utf-8
899
+ Transfer-Encoding:
900
+ - chunked
901
+ Vary:
902
+ - Accept-Encoding
903
+ X-Trace-Id:
904
+ - cbb865a9f92c48d7ac384dd2168ac4ea
905
+ Strict-Transport-Security:
906
+ - max-age=63072000; includeSubDomains; preload
907
+ Server-Timing:
908
+ - l7_lb_tls;dur=126, l7_lb_idle;dur=1, l7_lb_receive;dur=0, l7_lb_total;dur=139
909
+ Access-Control-Expose-Headers:
910
+ - Server-Timing, X-Trace-ID
911
+ body:
912
+ encoding: ASCII-8BIT
913
+ string: '{"message":"Not found"}'
914
+ recorded_at: Tue, 09 Jul 2024 01:47:04 GMT
915
+ - request:
916
+ method: get
917
+ uri: https://api.deepl.com/v2/glossaries/00000000-0000-0000-0000-000000000000/entries
918
+ body:
919
+ encoding: UTF-8
920
+ string: "{}"
921
+ headers:
922
+ Authorization:
923
+ - DeepL-Auth-Key VALID_TOKEN
924
+ User-Agent:
925
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
926
+ Content-Type:
927
+ - application/json
928
+ Accept-Encoding:
929
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
930
+ Accept:
931
+ - "*/*"
932
+ response:
933
+ status:
934
+ code: 404
935
+ message: Not Found
936
+ headers:
937
+ Date:
938
+ - Tue, 09 Jul 2024 01:47:05 GMT
939
+ Content-Type:
940
+ - application/json; charset=utf-8
941
+ Transfer-Encoding:
942
+ - chunked
943
+ Vary:
944
+ - Accept-Encoding
945
+ X-Trace-Id:
946
+ - 114c2d1d5c6f46388eaf1c9a96925a5a
947
+ Strict-Transport-Security:
948
+ - max-age=63072000; includeSubDomains; preload
949
+ Server-Timing:
950
+ - l7_lb_tls;dur=136, l7_lb_idle;dur=3, l7_lb_receive;dur=0, l7_lb_total;dur=148
951
+ Access-Control-Expose-Headers:
952
+ - Server-Timing, X-Trace-ID
953
+ body:
954
+ encoding: ASCII-8BIT
955
+ string: '{"message":"Not found"}'
956
+ recorded_at: Tue, 09 Jul 2024 01:47:05 GMT
957
+ - request:
958
+ method: get
959
+ uri: https://api.deepl.com/v2/glossary-language-pairs
960
+ body:
961
+ encoding: UTF-8
962
+ string: "{}"
963
+ headers:
964
+ Authorization:
965
+ - DeepL-Auth-Key VALID_TOKEN
966
+ User-Agent:
967
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
968
+ Content-Type:
969
+ - application/json
970
+ Accept-Encoding:
971
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
972
+ Accept:
973
+ - "*/*"
974
+ response:
975
+ status:
976
+ code: 200
977
+ message: OK
978
+ headers:
979
+ Date:
980
+ - Tue, 09 Jul 2024 01:47:05 GMT
981
+ Content-Type:
982
+ - application/json; charset=utf-8
983
+ Transfer-Encoding:
984
+ - chunked
985
+ Vary:
986
+ - Accept-Encoding
987
+ X-Trace-Id:
988
+ - b1dbc9a6562f454cb26d374ca4a04db7
989
+ X-Cache-Status:
990
+ - MISS
991
+ Strict-Transport-Security:
992
+ - max-age=63072000; includeSubDomains; preload
993
+ Server-Timing:
994
+ - l7_lb_tls;dur=140, l7_lb_idle;dur=3, l7_lb_receive;dur=0, l7_lb_total;dur=150
995
+ Access-Control-Expose-Headers:
996
+ - Server-Timing, X-Trace-ID
997
+ body:
998
+ encoding: ASCII-8BIT
999
+ string: '{"supported_languages":[{"source_lang":"de","target_lang":"en"},{"source_lang":"de","target_lang":"es"},{"source_lang":"de","target_lang":"fr"},{"source_lang":"de","target_lang":"ja"},{"source_lang":"de","target_lang":"it"},{"source_lang":"de","target_lang":"pl"},{"source_lang":"de","target_lang":"nl"},{"source_lang":"de","target_lang":"zh"},{"source_lang":"de","target_lang":"ru"},{"source_lang":"de","target_lang":"pt"},{"source_lang":"de","target_lang":"ko"},{"source_lang":"de","target_lang":"da"},{"source_lang":"de","target_lang":"sv"},{"source_lang":"de","target_lang":"nb"},{"source_lang":"de","target_lang":"ro"},{"source_lang":"en","target_lang":"de"},{"source_lang":"en","target_lang":"es"},{"source_lang":"en","target_lang":"fr"},{"source_lang":"en","target_lang":"ja"},{"source_lang":"en","target_lang":"it"},{"source_lang":"en","target_lang":"pl"},{"source_lang":"en","target_lang":"nl"},{"source_lang":"en","target_lang":"zh"},{"source_lang":"en","target_lang":"ru"},{"source_lang":"en","target_lang":"pt"},{"source_lang":"en","target_lang":"ko"},{"source_lang":"en","target_lang":"da"},{"source_lang":"en","target_lang":"sv"},{"source_lang":"en","target_lang":"nb"},{"source_lang":"en","target_lang":"ro"},{"source_lang":"es","target_lang":"de"},{"source_lang":"es","target_lang":"en"},{"source_lang":"es","target_lang":"fr"},{"source_lang":"es","target_lang":"ja"},{"source_lang":"es","target_lang":"it"},{"source_lang":"es","target_lang":"pl"},{"source_lang":"es","target_lang":"nl"},{"source_lang":"es","target_lang":"zh"},{"source_lang":"es","target_lang":"ru"},{"source_lang":"es","target_lang":"pt"},{"source_lang":"es","target_lang":"ko"},{"source_lang":"es","target_lang":"da"},{"source_lang":"es","target_lang":"sv"},{"source_lang":"es","target_lang":"nb"},{"source_lang":"es","target_lang":"ro"},{"source_lang":"fr","target_lang":"de"},{"source_lang":"fr","target_lang":"en"},{"source_lang":"fr","target_lang":"es"},{"source_lang":"fr","target_lang":"ja"},{"source_lang":"fr","target_lang":"it"},{"source_lang":"fr","target_lang":"pl"},{"source_lang":"fr","target_lang":"nl"},{"source_lang":"fr","target_lang":"zh"},{"source_lang":"fr","target_lang":"ru"},{"source_lang":"fr","target_lang":"pt"},{"source_lang":"fr","target_lang":"ko"},{"source_lang":"fr","target_lang":"da"},{"source_lang":"fr","target_lang":"sv"},{"source_lang":"fr","target_lang":"nb"},{"source_lang":"fr","target_lang":"ro"},{"source_lang":"ja","target_lang":"de"},{"source_lang":"ja","target_lang":"en"},{"source_lang":"ja","target_lang":"es"},{"source_lang":"ja","target_lang":"fr"},{"source_lang":"ja","target_lang":"it"},{"source_lang":"ja","target_lang":"pl"},{"source_lang":"ja","target_lang":"nl"},{"source_lang":"ja","target_lang":"zh"},{"source_lang":"ja","target_lang":"ru"},{"source_lang":"ja","target_lang":"pt"},{"source_lang":"ja","target_lang":"ko"},{"source_lang":"ja","target_lang":"da"},{"source_lang":"ja","target_lang":"sv"},{"source_lang":"ja","target_lang":"nb"},{"source_lang":"ja","target_lang":"ro"},{"source_lang":"it","target_lang":"de"},{"source_lang":"it","target_lang":"en"},{"source_lang":"it","target_lang":"es"},{"source_lang":"it","target_lang":"fr"},{"source_lang":"it","target_lang":"ja"},{"source_lang":"it","target_lang":"pl"},{"source_lang":"it","target_lang":"nl"},{"source_lang":"it","target_lang":"zh"},{"source_lang":"it","target_lang":"ru"},{"source_lang":"it","target_lang":"pt"},{"source_lang":"it","target_lang":"ko"},{"source_lang":"it","target_lang":"da"},{"source_lang":"it","target_lang":"sv"},{"source_lang":"it","target_lang":"nb"},{"source_lang":"it","target_lang":"ro"},{"source_lang":"pl","target_lang":"de"},{"source_lang":"pl","target_lang":"en"},{"source_lang":"pl","target_lang":"es"},{"source_lang":"pl","target_lang":"fr"},{"source_lang":"pl","target_lang":"ja"},{"source_lang":"pl","target_lang":"it"},{"source_lang":"pl","target_lang":"nl"},{"source_lang":"pl","target_lang":"zh"},{"source_lang":"pl","target_lang":"ru"},{"source_lang":"pl","target_lang":"pt"},{"source_lang":"pl","target_lang":"ko"},{"source_lang":"pl","target_lang":"da"},{"source_lang":"pl","target_lang":"sv"},{"source_lang":"pl","target_lang":"nb"},{"source_lang":"pl","target_lang":"ro"},{"source_lang":"nl","target_lang":"de"},{"source_lang":"nl","target_lang":"en"},{"source_lang":"nl","target_lang":"es"},{"source_lang":"nl","target_lang":"fr"},{"source_lang":"nl","target_lang":"ja"},{"source_lang":"nl","target_lang":"it"},{"source_lang":"nl","target_lang":"pl"},{"source_lang":"nl","target_lang":"zh"},{"source_lang":"nl","target_lang":"ru"},{"source_lang":"nl","target_lang":"pt"},{"source_lang":"nl","target_lang":"ko"},{"source_lang":"nl","target_lang":"da"},{"source_lang":"nl","target_lang":"sv"},{"source_lang":"nl","target_lang":"nb"},{"source_lang":"nl","target_lang":"ro"},{"source_lang":"zh","target_lang":"de"},{"source_lang":"zh","target_lang":"en"},{"source_lang":"zh","target_lang":"es"},{"source_lang":"zh","target_lang":"fr"},{"source_lang":"zh","target_lang":"ja"},{"source_lang":"zh","target_lang":"it"},{"source_lang":"zh","target_lang":"pl"},{"source_lang":"zh","target_lang":"nl"},{"source_lang":"zh","target_lang":"ru"},{"source_lang":"zh","target_lang":"pt"},{"source_lang":"zh","target_lang":"ko"},{"source_lang":"zh","target_lang":"da"},{"source_lang":"zh","target_lang":"sv"},{"source_lang":"zh","target_lang":"nb"},{"source_lang":"zh","target_lang":"ro"},{"source_lang":"ru","target_lang":"de"},{"source_lang":"ru","target_lang":"en"},{"source_lang":"ru","target_lang":"es"},{"source_lang":"ru","target_lang":"fr"},{"source_lang":"ru","target_lang":"ja"},{"source_lang":"ru","target_lang":"it"},{"source_lang":"ru","target_lang":"pl"},{"source_lang":"ru","target_lang":"nl"},{"source_lang":"ru","target_lang":"zh"},{"source_lang":"ru","target_lang":"pt"},{"source_lang":"ru","target_lang":"ko"},{"source_lang":"ru","target_lang":"da"},{"source_lang":"ru","target_lang":"sv"},{"source_lang":"ru","target_lang":"nb"},{"source_lang":"ru","target_lang":"ro"},{"source_lang":"pt","target_lang":"de"},{"source_lang":"pt","target_lang":"en"},{"source_lang":"pt","target_lang":"es"},{"source_lang":"pt","target_lang":"fr"},{"source_lang":"pt","target_lang":"ja"},{"source_lang":"pt","target_lang":"it"},{"source_lang":"pt","target_lang":"pl"},{"source_lang":"pt","target_lang":"nl"},{"source_lang":"pt","target_lang":"zh"},{"source_lang":"pt","target_lang":"ru"},{"source_lang":"pt","target_lang":"ko"},{"source_lang":"pt","target_lang":"da"},{"source_lang":"pt","target_lang":"sv"},{"source_lang":"pt","target_lang":"nb"},{"source_lang":"pt","target_lang":"ro"},{"source_lang":"ko","target_lang":"de"},{"source_lang":"ko","target_lang":"en"},{"source_lang":"ko","target_lang":"es"},{"source_lang":"ko","target_lang":"fr"},{"source_lang":"ko","target_lang":"ja"},{"source_lang":"ko","target_lang":"it"},{"source_lang":"ko","target_lang":"pl"},{"source_lang":"ko","target_lang":"nl"},{"source_lang":"ko","target_lang":"zh"},{"source_lang":"ko","target_lang":"ru"},{"source_lang":"ko","target_lang":"pt"},{"source_lang":"ko","target_lang":"da"},{"source_lang":"ko","target_lang":"sv"},{"source_lang":"ko","target_lang":"nb"},{"source_lang":"ko","target_lang":"ro"},{"source_lang":"da","target_lang":"de"},{"source_lang":"da","target_lang":"en"},{"source_lang":"da","target_lang":"es"},{"source_lang":"da","target_lang":"fr"},{"source_lang":"da","target_lang":"ja"},{"source_lang":"da","target_lang":"it"},{"source_lang":"da","target_lang":"pl"},{"source_lang":"da","target_lang":"nl"},{"source_lang":"da","target_lang":"zh"},{"source_lang":"da","target_lang":"ru"},{"source_lang":"da","target_lang":"pt"},{"source_lang":"da","target_lang":"ko"},{"source_lang":"da","target_lang":"sv"},{"source_lang":"da","target_lang":"nb"},{"source_lang":"da","target_lang":"ro"},{"source_lang":"sv","target_lang":"de"},{"source_lang":"sv","target_lang":"en"},{"source_lang":"sv","target_lang":"es"},{"source_lang":"sv","target_lang":"fr"},{"source_lang":"sv","target_lang":"ja"},{"source_lang":"sv","target_lang":"it"},{"source_lang":"sv","target_lang":"pl"},{"source_lang":"sv","target_lang":"nl"},{"source_lang":"sv","target_lang":"zh"},{"source_lang":"sv","target_lang":"ru"},{"source_lang":"sv","target_lang":"pt"},{"source_lang":"sv","target_lang":"ko"},{"source_lang":"sv","target_lang":"da"},{"source_lang":"sv","target_lang":"nb"},{"source_lang":"sv","target_lang":"ro"},{"source_lang":"nb","target_lang":"de"},{"source_lang":"nb","target_lang":"en"},{"source_lang":"nb","target_lang":"es"},{"source_lang":"nb","target_lang":"fr"},{"source_lang":"nb","target_lang":"ja"},{"source_lang":"nb","target_lang":"it"},{"source_lang":"nb","target_lang":"pl"},{"source_lang":"nb","target_lang":"nl"},{"source_lang":"nb","target_lang":"zh"},{"source_lang":"nb","target_lang":"ru"},{"source_lang":"nb","target_lang":"pt"},{"source_lang":"nb","target_lang":"ko"},{"source_lang":"nb","target_lang":"da"},{"source_lang":"nb","target_lang":"sv"},{"source_lang":"nb","target_lang":"ro"},{"source_lang":"ro","target_lang":"de"},{"source_lang":"ro","target_lang":"en"},{"source_lang":"ro","target_lang":"es"},{"source_lang":"ro","target_lang":"fr"},{"source_lang":"ro","target_lang":"ja"},{"source_lang":"ro","target_lang":"it"},{"source_lang":"ro","target_lang":"pl"},{"source_lang":"ro","target_lang":"nl"},{"source_lang":"ro","target_lang":"zh"},{"source_lang":"ro","target_lang":"ru"},{"source_lang":"ro","target_lang":"pt"},{"source_lang":"ro","target_lang":"ko"},{"source_lang":"ro","target_lang":"da"},{"source_lang":"ro","target_lang":"sv"},{"source_lang":"ro","target_lang":"nb"}]}'
1000
+ recorded_at: Tue, 09 Jul 2024 01:47:05 GMT
1001
+ - request:
1002
+ method: get
1003
+ uri: https://api.deepl.com/v2/glossaries/e7a62637-7ef4-4959-a355-09ba61dd0126
1004
+ body:
1005
+ encoding: UTF-8
1006
+ string: "{}"
1007
+ headers:
1008
+ Authorization:
1009
+ - DeepL-Auth-Key VALID_TOKEN
1010
+ User-Agent:
1011
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
1012
+ Content-Type:
1013
+ - application/json
1014
+ Accept-Encoding:
1015
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
1016
+ Accept:
1017
+ - "*/*"
1018
+ response:
1019
+ status:
1020
+ code: 200
1021
+ message: OK
1022
+ headers:
1023
+ Date:
1024
+ - Tue, 09 Jul 2024 02:14:00 GMT
1025
+ Content-Type:
1026
+ - application/json; charset=utf-8
1027
+ Transfer-Encoding:
1028
+ - chunked
1029
+ Vary:
1030
+ - Accept-Encoding
1031
+ X-Trace-Id:
1032
+ - c1ed8b8c1a46459081d0a0effeb50d85
1033
+ X-Cache-Status:
1034
+ - MISS
1035
+ Strict-Transport-Security:
1036
+ - max-age=63072000; includeSubDomains; preload
1037
+ Server-Timing:
1038
+ - l7_lb_tls;dur=101, l7_lb_idle;dur=1, l7_lb_receive;dur=0, l7_lb_total;dur=119
1039
+ Access-Control-Expose-Headers:
1040
+ - Server-Timing, X-Trace-ID
1041
+ body:
1042
+ encoding: ASCII-8BIT
1043
+ string: '{"glossary_id":"e7a62637-7ef4-4959-a355-09ba61dd0126","name":"Mi Glosario","ready":true,"source_lang":"en","target_lang":"es","creation_time":"2024-07-02T15:04:46.016123Z","entry_count":2}'
1044
+ recorded_at: Tue, 09 Jul 2024 02:14:00 GMT
1045
+ - request:
1046
+ method: get
1047
+ uri: https://api.deepl.com/v2/glossaries/e7a62637-7ef4-4959-a355-09ba61dd0126/entries
1048
+ body:
1049
+ encoding: UTF-8
1050
+ string: "{}"
1051
+ headers:
1052
+ Authorization:
1053
+ - DeepL-Auth-Key VALID_TOKEN
1054
+ User-Agent:
1055
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
1056
+ Content-Type:
1057
+ - application/json
1058
+ Accept-Encoding:
1059
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
1060
+ Accept:
1061
+ - "*/*"
1062
+ response:
1063
+ status:
1064
+ code: 200
1065
+ message: OK
1066
+ headers:
1067
+ Date:
1068
+ - Tue, 09 Jul 2024 02:14:48 GMT
1069
+ Content-Type:
1070
+ - text/tab-separated-values; charset=UTF-8
1071
+ Content-Length:
1072
+ - '22'
1073
+ X-Trace-Id:
1074
+ - b685e80fde004633a3e9176c7c8baeb5
1075
+ X-Cache-Status:
1076
+ - MISS
1077
+ Strict-Transport-Security:
1078
+ - max-age=63072000; includeSubDomains; preload
1079
+ Server-Timing:
1080
+ - l7_lb_tls;dur=115, l7_lb_idle;dur=6, l7_lb_receive;dur=0, l7_lb_total;dur=134
1081
+ Access-Control-Expose-Headers:
1082
+ - Server-Timing, X-Trace-ID
1083
+ body:
1084
+ encoding: UTF-8
1085
+ string: "Hello\tHola\nWorld\tMundo"
1086
+ recorded_at: Tue, 09 Jul 2024 02:14:48 GMT
1087
+ - request:
1088
+ method: post
1089
+ uri: https://api.deepl.com/v2/glossaries
1090
+ body:
1091
+ encoding: UTF-8
1092
+ string: '{"name":"fixture","source_lang":"EN","target_lang":"ES","entries":"Hello\tHola\n","entries_format":"tsv"}'
1093
+ headers:
1094
+ Authorization:
1095
+ - DeepL-Auth-Key VALID_TOKEN
1096
+ User-Agent:
1097
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
1098
+ Content-Type:
1099
+ - application/json
1100
+ Accept-Encoding:
1101
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
1102
+ Accept:
1103
+ - "*/*"
1104
+ response:
1105
+ status:
1106
+ code: 201
1107
+ message: Created
1108
+ headers:
1109
+ Date:
1110
+ - Tue, 09 Jul 2024 02:19:04 GMT
1111
+ Content-Type:
1112
+ - application/json; charset=utf-8
1113
+ Transfer-Encoding:
1114
+ - chunked
1115
+ X-Trace-Id:
1116
+ - a94e92d5f3484abdb8a11bd2dd05458f
1117
+ Strict-Transport-Security:
1118
+ - max-age=63072000; includeSubDomains; preload
1119
+ Server-Timing:
1120
+ - l7_lb_tls;dur=100, l7_lb_idle;dur=2, l7_lb_receive;dur=0, l7_lb_total;dur=128
1121
+ Access-Control-Expose-Headers:
1122
+ - Server-Timing, X-Trace-ID
1123
+ body:
1124
+ encoding: UTF-8
1125
+ string: '{"glossary_id":"78ad9bb3-41b3-49dd-af0d-583333e84d4e","name":"fixture","ready":true,"source_lang":"en","target_lang":"es","creation_time":"2024-07-09T02:19:04.087289Z","entry_count":1}'
1126
+ recorded_at: Tue, 09 Jul 2024 02:19:04 GMT
1127
+ - request:
1128
+ method: delete
1129
+ uri: https://api.deepl.com/v2/glossaries/78ad9bb3-41b3-49dd-af0d-583333e84d4e
1130
+ body:
1131
+ encoding: UTF-8
1132
+ string: "{}"
1133
+ headers:
1134
+ Authorization:
1135
+ - DeepL-Auth-Key VALID_TOKEN
1136
+ User-Agent:
1137
+ - deepl-ruby/2.5.3 (darwin23) ruby/3.3.3
1138
+ Content-Type:
1139
+ - application/json
1140
+ Accept-Encoding:
1141
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
1142
+ Accept:
1143
+ - "*/*"
1144
+ response:
1145
+ status:
1146
+ code: 204
1147
+ message: No Content
1148
+ headers:
1149
+ Date:
1150
+ - Tue, 09 Jul 2024 02:19:05 GMT
1151
+ X-Trace-Id:
1152
+ - 408e7f819cea41e28a324a68e7dd233a
1153
+ Strict-Transport-Security:
1154
+ - max-age=63072000; includeSubDomains; preload
1155
+ Server-Timing:
1156
+ - l7_lb_tls;dur=49, l7_lb_idle;dur=3, l7_lb_receive;dur=0, l7_lb_total;dur=870
1157
+ Access-Control-Expose-Headers:
1158
+ - Server-Timing, X-Trace-ID
1159
+ body:
1160
+ encoding: UTF-8
1161
+ string: ''
1162
+ recorded_at: Tue, 09 Jul 2024 02:19:05 GMT
1163
+ recorded_with: VCR 6.2.0