diff --git a/Gemfile.checksum b/Gemfile.checksum
index f91b8824c4b552c50c42515fec88c9d18cad47d7..3a35f869f0c06e7b1519e423a5c77b2e2e659381 100644
--- a/Gemfile.checksum
+++ b/Gemfile.checksum
@@ -137,7 +137,7 @@
 {"name":"dry-logic","version":"1.5.0","platform":"ruby","checksum":"99ed2180f1970c3d8247004f277a01dffbe8e82cf6680de9c7209312d86cd416"},
 {"name":"dry-types","version":"1.7.1","platform":"ruby","checksum":"12165841145a18dd22151f143707b90c8093f71e5ae06ee0f2301f5321f8cdb8"},
 {"name":"dumb_delegator","version":"1.0.0","platform":"ruby","checksum":"ff5e411816d2d8ad8e260b269e712ae3839dddb0f9f8e18d3b1a3fe08f6d2e94"},
-{"name":"duo_api","version":"1.3.0","platform":"ruby","checksum":"87c9830e190fad32fdb086b023f555a3cf5cd4d6708a992f7a32efb2ce206176"},
+{"name":"duo_api","version":"1.4.0","platform":"ruby","checksum":"06a6b406184e6e4b14af7389ac3990e667fb8509a1feba7de3af2f78d98c0877"},
 {"name":"e2mmap","version":"0.1.0","platform":"ruby","checksum":"45ee6bba2d97a7d91ee0885774261feee87e28c598355df31e93b56196ec0f59"},
 {"name":"ed25519","version":"1.3.0","platform":"java","checksum":"8e5d2f8a5325c7a463d61d1a48406ce54074c610f3dccd889e6532c9527a3894"},
 {"name":"ed25519","version":"1.3.0","platform":"ruby","checksum":"514a5584f84d39daac568a17ec93a4e7261e140c52c562ed8c382c18456e627d"},
diff --git a/Gemfile.lock b/Gemfile.lock
index 182538de138dab6fe7c3ed93179225880adbaf0a..119e6f9e7bdf55dff9d92e51156500146ce33180 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -567,7 +567,7 @@ GEM
       dry-logic (~> 1.4)
       zeitwerk (~> 2.6)
     dumb_delegator (1.0.0)
-    duo_api (1.3.0)
+    duo_api (1.4.0)
     e2mmap (0.1.0)
     ed25519 (1.3.0)
     elasticsearch (7.17.11)
diff --git a/Gemfile.next.checksum b/Gemfile.next.checksum
index a3d40c7060c5b9ebfb8258bed26c013c22e6ede9..015964271112946832e4f8cef269fc1232751081 100644
--- a/Gemfile.next.checksum
+++ b/Gemfile.next.checksum
@@ -137,7 +137,7 @@
 {"name":"dry-logic","version":"1.5.0","platform":"ruby","checksum":"99ed2180f1970c3d8247004f277a01dffbe8e82cf6680de9c7209312d86cd416"},
 {"name":"dry-types","version":"1.7.1","platform":"ruby","checksum":"12165841145a18dd22151f143707b90c8093f71e5ae06ee0f2301f5321f8cdb8"},
 {"name":"dumb_delegator","version":"1.0.0","platform":"ruby","checksum":"ff5e411816d2d8ad8e260b269e712ae3839dddb0f9f8e18d3b1a3fe08f6d2e94"},
-{"name":"duo_api","version":"1.3.0","platform":"ruby","checksum":"87c9830e190fad32fdb086b023f555a3cf5cd4d6708a992f7a32efb2ce206176"},
+{"name":"duo_api","version":"1.4.0","platform":"ruby","checksum":"06a6b406184e6e4b14af7389ac3990e667fb8509a1feba7de3af2f78d98c0877"},
 {"name":"e2mmap","version":"0.1.0","platform":"ruby","checksum":"45ee6bba2d97a7d91ee0885774261feee87e28c598355df31e93b56196ec0f59"},
 {"name":"ed25519","version":"1.3.0","platform":"java","checksum":"8e5d2f8a5325c7a463d61d1a48406ce54074c610f3dccd889e6532c9527a3894"},
 {"name":"ed25519","version":"1.3.0","platform":"ruby","checksum":"514a5584f84d39daac568a17ec93a4e7261e140c52c562ed8c382c18456e627d"},
diff --git a/Gemfile.next.lock b/Gemfile.next.lock
index 55cba922a609d57bc4762c41f54a56ba2cc87e8d..67c17c7f1c6be6f990cf3b5b0e36a14c06c2dbff 100644
--- a/Gemfile.next.lock
+++ b/Gemfile.next.lock
@@ -579,7 +579,7 @@ GEM
       dry-logic (~> 1.4)
       zeitwerk (~> 2.6)
     dumb_delegator (1.0.0)
-    duo_api (1.3.0)
+    duo_api (1.4.0)
     e2mmap (0.1.0)
     ed25519 (1.3.0)
     elasticsearch (7.17.11)