diff --git a/features/adapter_broadcast.feature b/features/adapter_broadcast.feature
index e37344afab59cc9f6cea2ce9be74ba7bcf8ba9de..34fea1346da9e1c821dcd0cfca6f4ae0605987c6 100644
--- a/features/adapter_broadcast.feature
+++ b/features/adapter_broadcast.feature
@@ -15,4 +15,25 @@ Feature: Can the adapter broadcast messages?
     When the auth method is called
     When a mock notify API response is configured to return an error
     When the broadcast method is called
-    Then an error response is returned with status 403
\ No newline at end of file
+    Then an error response is returned with status 403
+
+  Scenario: On 403 the message is retried once with new credentials 
+    Given valid config 
+    When the adapter instance is created 
+    When the auth method is called 
+    When a mock notify API response is configured to return an error 
+    When the broadcast method is called 
+    Then an error response is returned with status 403 
+    Then the credentials are deleted
+    Then the broadcast method was called with is_retry on
+    Then the getAuthorizationHeader method is called 
+    
+  Scenario: On a retried 403 the message is not retried again
+    Given valid config 
+    When the adapter instance is created 
+    When the auth method is called 
+    When a mock notify API response is configured to return an error 
+    When the broadcast method is called with is_retry on
+    Then an error response is returned with status 403
+    Then the credentials are deleted 
+    Then the broadcast method is not called again
diff --git a/features/adapter_poll.feature b/features/adapter_poll.feature
index ff05566d17c68397fac3a3673a0f87412b87e60e..1a860b7849449fa43715b8ee7253017cc38bc8f0 100644
--- a/features/adapter_poll.feature
+++ b/features/adapter_poll.feature
@@ -40,3 +40,24 @@ Feature: Can the adapter receive messages?
     When a mock receive API response is configured to return an error
     When the poll method is called 
     Then an error response is returned with status 403
+
+  Scenario: On 403 the message is retried once with new credentials 
+    Given valid config 
+    When the adapter instance is created 
+    When the auth method is called 
+    When a mock receive API response is configured to return an error 
+    When the publish method is called 
+    Then an error response is returned with status 403 
+    Then the credentials are deleted
+    Then the receive method was called with is_retry on
+    Then the getAuthorizationHeader method is called 
+    
+  Scenario: On a retried 403 the message is not retried again
+    Given valid config 
+    When the adapter instance is created 
+    When the auth method is called 
+    When a mock receive API response is configured to return an error 
+    When the receive method is called with is_retry on
+    Then an error response is returned with status 403
+    Then the credentials are deleted 
+    Then the receive method is not called again