diff --git a/features/connection/PCMConnection.feature b/features/connection/PCMConnection.feature
new file mode 100644
index 0000000000000000000000000000000000000000..f4c5bca28c145345f5ebb302cffc7b796023d193
--- /dev/null
+++ b/features/connection/PCMConnection.feature
@@ -0,0 +1,29 @@
+ As a PCM user, 
+    I want to register with an organization
+    So that I can leverage GAIA-X ecosystem
+
+    Scenario: I want to become a member of an organization (a GAIA-X Participant)
+        Given PCM Application should be configureameter alias set to 'member') and sends to PCM register email address.  
+        When  PCM Application scans the provided d on the user device.
+        # src/connections/controller/controller.ts-> Rest API POST METHOD -> NAME 'invitation-url' 
+        And OCM admin generates QR code ( with parQR code.
+        Then Pairwise DID and ver key is exchanged between the agents. 
+        And the Connection is established between the PCM aries agent and organization aries agent.
+        # Webhook call on topic 'CONNECTION_MANAGER_SERVICE/ConnectionStateChanged'
+        And connection state moves to complete state.
+        # Nats call on topic 'PRINCIPAL_MANAGER_SERVICE/connectionCompleteStatus'
+        And Principal membership credentials are issued.
+
+    Scenario: I want to subscribe to a service of an organization (a GAIA-X Participant) 
+        Given PCM User should be member of an organization.
+        And OCM admin/portal generates QR code ( with parameter alias set to 'subscriber') and email/display on portal.
+        # src/connections/controller/controller.ts-> Rest API POST METHOD -> NAME 'invitation-url'
+        When  PCM Application scans the provided QR code.
+        Then Pairwise DID and ver key is exchanged between the agents. 
+        And the Connection is established between PCM aries agent and organization aries agent.
+        # Webhook call on topic 'CONNECTION_MANAGER_SERVICE/ConnectionStateChanged'
+        And connection state moves to complete state.
+        # Nats call on topic 'PROOF_MANAGER_SERVICE/sendMembershipProofRequest'
+        And Principal membership verification to make connection trusted. 
+        And OCM admin issues the verifiable credential over a trusted connection.
+
diff --git a/features/connection/SchedularToDeleteConnection.feature b/features/connection/SchedularToDeleteConnection.feature
new file mode 100644
index 0000000000000000000000000000000000000000..31e64837af4d3b8836e1d7305c7cdc8e9538aea3
--- /dev/null
+++ b/features/connection/SchedularToDeleteConnection.feature
@@ -0,0 +1,11 @@
+Scheduler is running on Background to delete Non-trusted and Non-complete connections.
+
+    Scenario: Delete a Non-complete connection.
+    When connection does not goes in complete state within 30 minutes
+    # /src/connections/scheduler/scheduler.service.ts -> expireNonCompleteConnection()
+    Then connection will get deleted from database.
+
+    Scenario: Delete a Non-trusted connection.
+    When connection does not goes in trusted state within 30 minutes
+    # /src/connections/scheduler/scheduler.service.ts -> expireNonTrustedConnection()
+    Then connection will get deleted from database.
diff --git a/features/connection/findByConnectionId.feature b/features/connection/findByConnectionId.feature
new file mode 100644
index 0000000000000000000000000000000000000000..02f676b69fb5ed740b7ea525ca59b54fa05fc49f
--- /dev/null
+++ b/features/connection/findByConnectionId.feature
@@ -0,0 +1,20 @@
+Feature: Get connection details By Id
+    Return the single connection details
+
+    Scenario: Provide valid connection ID
+        Given The connection ID available on agent database.
+        # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/getConnectionById'
+        When  provide valid connection ID.
+        Then  should return connection details.
+
+    Scenario: Provide invalid connection ID.
+        Given The connection ID available.
+        # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/getConnectionById'
+        When  provide invalid connection ID.
+        Then  should return no data found with satus code 404(Not Found).
+
+    Scenario: Not Provide a connection ID.
+        Given The connection ID available.
+        # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/getConnectionById'
+        When  not provide connection ID.
+        Then  should return connection request required Connction ID with satus code 400.
\ No newline at end of file
diff --git a/features/connection/getConnection.feature b/features/connection/getConnection.feature
new file mode 100644
index 0000000000000000000000000000000000000000..522f37f197feb7810a9f007e455c22a98f908b2a
--- /dev/null
+++ b/features/connection/getConnection.feature
@@ -0,0 +1,20 @@
+  Get Connection details
+    Return the list of connections or single connection created on the OCM environment
+
+     Scenario: Connection details by ID.
+      # src/connections/controller/controller.ts-> Rest API with Get Method -> connections/:connectionId? 
+        When  passed valid connection ID.
+        Then  returns connection details.
+
+    Scenario: Connection details.
+      # src/connections/controller/controller.ts-> Rest API with Get Method -> connections/:connectionId? 
+        When  passed valid pageSize and Number of records.
+        Then  returns a list of connection details.
+
+        Scenario: Connection details with status.
+        # src/connections/controller/controller.ts-> Rest API with Get Method -> connections/:connectionId? 
+        When passed valid pageSize and Number of records.
+        And status
+        Then returns a list of connection details with provided status.
+
+
diff --git a/features/connection/makeConnectionTrusted.feature b/features/connection/makeConnectionTrusted.feature
new file mode 100644
index 0000000000000000000000000000000000000000..9d88f543f48f06b3773aa26bff4f316ac847c02d
--- /dev/null
+++ b/features/connection/makeConnectionTrusted.feature
@@ -0,0 +1,19 @@
+Feature: Make connection trusted against connection ID.
+     I want to Update connection  status to trusted.
+
+    Scenario: Make connection trusted against connection ID.
+        Given I have pass connection ID.
+        # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/makeConnectionTrusted'
+        When  I have pass valid connection ID.
+        Then  should update current connection state to trusted state.
+
+    Scenario: Make connection trusted against connection ID.
+        Given I have pass connection ID.
+        # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/makeConnectionTrusted'
+        When  I have pass invalid connection ID.
+        Then  should get http status 404(Not Found).
+
+    Scenario: Make connection trusted against connection ID.
+        # src/connections/controller/controller.ts-> Nats call on topic 'CONNECTION_MANAGER_SERVICE/makeConnectionTrusted'
+        Given I have not pass connection ID.
+        Then  should return connection request required Connction ID with state code 400(Bad request).
\ No newline at end of file