diff --git a/.zuul.yaml b/.zuul.yaml
index 3c680ab0..2a719fc9 100644
--- a/.zuul.yaml
+++ b/.zuul.yaml
@@ -29,6 +29,14 @@
       # swift can use different tox env names
       tox_envlist: func
 
+- job:
+    name: swiftclient-tox-py311
+    parent: openstack-tox-py310
+    vars:
+      tox_envlist: py311
+      bindep_profile: test py311
+      python_version: '3.11'
+
 - project:
     templates:
       - check-requirements
@@ -49,6 +57,7 @@
             voting: true
         - openstack-tox-py310:
             voting: true
+        - swiftclient-tox-py311
     gate:
       jobs:
         - swiftclient-swift-functional
@@ -57,6 +66,7 @@
             voting: true
         - openstack-tox-py310:
             voting: true
+        - swiftclient-tox-py311
     post:
       jobs:
         - openstack-tox-cover
diff --git a/setup.cfg b/setup.cfg
index 9d407650..3b2dd469 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -28,6 +28,7 @@ classifier =
     Programming Language :: Python :: 3.8
     Programming Language :: Python :: 3.9
     Programming Language :: Python :: 3.10
+    Programming Language :: Python :: 3.11
     Programming Language :: Python :: 3 :: Only
 
 [files]