diff --git a/src/main/jastadd/RandomRequestGenerator.jrag b/src/main/jastadd/RandomRequestGenerator.jrag
index a29e3f105fd5a4e81c65750e3fbd4c13fa26c700..f6a996b0eecfd406e0c9296e556329730c0ab2c2 100644
--- a/src/main/jastadd/RandomRequestGenerator.jrag
+++ b/src/main/jastadd/RandomRequestGenerator.jrag
@@ -40,39 +40,40 @@ aspect RandomRequestGenerator{
     return pathRef;
   }
 
-  syn boolean OpenAPIObject.generateRequests(){
+  syn List<String> OpenAPIObject.generateRequests(){
+    List<String> urls = new ArrayList<>();
     try {
       for (PathsObject p : getPList())
-        p.generateUrl();
+        urls.addAll(p.generateUrl());
     } catch (Exception e) {
-      return false;
+      System.out.println(e.toString());
+      return null;
     }
-    return true;
+    return urls;
   }
 
-  inh boolean PathsObject.generateUrl();
+  inh List<String> PathsObject.generateUrl();
   eq OpenAPIObject.getP(int i).generateUrl(){
-          /*
+    List<String> urls = new ArrayList<>();
     try {
-      PathItemObject p = getPathsObject(i).getPathItemObject();
-      String path = getServerObject(0).getUrl();
+      PathItemObject p = getP(i).getP().pathItemObject();
+      String path = getServ(0).getUrl();
 
-      if (p.hasGet())
-        p.getGet().generateRandomUrl(path + getPathsObject(i).getRef());
-      else if (p.hasPost())
-        p.getPost().generateRandomUrl(path + getPathsObject(i).getRef());
+      if (p.hasG())
+        urls.add(p.getG().generateRandomUrl(path + getP(i).getRef()));
+      else if (p.hasPostOb())
+        urls.add(p.getPostOb().generateRandomUrl(path + getP(i).getRef()));
 
-      return true;
+      return urls;
     } catch (Exception e) {
-      return false;
-    }*/
-    return true;
+      System.out.println(e.toString());
+      return null;
+    }
   }
 
-  syn boolean Get.generateRandomUrl(String pathRef){
-          /*
+  syn String Get.generateRandomUrl(String pathRef){
     try {
-      for (ParameterOb o : getOperationObject().getParameterObs()) {
+      for (ParameterOb o : getO().getPList()) {
         ParameterObject p = o.parameterObject();
         if (p.getIn().equals("path"))
           pathRef = p.randomPathParameter(pathRef);
@@ -80,28 +81,15 @@ aspect RandomRequestGenerator{
           pathRef = p.randomQueryParameter(pathRef);
       }
       System.out.println("Generated path : " + pathRef);
-
-      for (ResponseTuple t : getOperationObject().getResponseTuples()) {
-        if (t.getKey().equals("200") && responseCode == 200) {
-          //System.out.println("Response successfully saved!");
-          SchemaOb respSchema = t.getResponseOb().responseObject().getContentTuple(0).getMediaTypeObject().getSchemaOb();
-          if (respSchema.schemaObject().getType().equals("array"))
-            getOperationObject().writeDictionaryWithArray(respSchema, response.toString());
-          else
-            getOperationObject().writeDictionary(respSchema, response.toString());
-        }
-      }
-      return true;
+      return pathRef;
     } catch (Exception e) {
       System.out.println(e.toString());
-      return false;
-    }*/
-    return true;
+      return null;
+    }
   }
-  syn boolean Post.generateRandomUrl(String pathRef){
-          /*
+  syn String Post.generateRandomUrl(String pathRef){
     try {
-      for (ParameterOb o : getOperationObject().getParameterObs()) {
+      for (ParameterOb o : getO().getPList()) {
         ParameterObject p = o.parameterObject();
         if (p.getIn().equals("path"))
           pathRef = p.randomPathParameter(pathRef);
@@ -109,23 +97,11 @@ aspect RandomRequestGenerator{
           pathRef = p.randomQueryParameter(pathRef);
       }
       System.out.println("Generated path : " + pathRef);
-
-      for (ResponseTuple t : getOperationObject().getResponseTuples()) {
-        if (t.getKey().equals("200") && responseCode == 200) {
-          //System.out.println("Response successfully saved!");
-          SchemaOb respSchema = t.getResponseOb().responseObject().getContentTuple(0).getMediaTypeObject().getSchemaOb();
-          if (respSchema.schemaObject().getType().equals("array"))
-            getOperationObject().writeDictionaryWithArray(respSchema, response.toString());
-          else
-            getOperationObject().writeDictionary(respSchema, response.toString());
-        }
-      }
-      return true;
+      return pathRef;
     } catch (Exception e) {
       System.out.println(e.toString());
-      return false;
-    }*/
-    return true;
+      return null;
+    }
   }
 
   syn String ParameterObject.generateRandomString(Random rand,JastAddList<EnumObj> objs){
diff --git a/src/main/jastadd/Reference.jrag b/src/main/jastadd/Reference.jrag
index d9f02e91264233b6a89c6f188821fa4a92aaacd5..ac5a211160f1f1dd954408972d617b5d04c5935a 100644
--- a/src/main/jastadd/Reference.jrag
+++ b/src/main/jastadd/Reference.jrag
@@ -36,6 +36,20 @@ aspect Reference {
         CallbackTuple contributes this
         to OpenAPIObject.callbackTuples();
 
+        coll List<PathItemTuple> OpenAPIObject.pathItemTuples() [new ArrayList<>()] root OpenAPIObject;
+        PathItemTuple contributes this
+        to OpenAPIObject.pathItemTuples();
+
+  syn PathItemObject PathItemOb.pathItemObject();
+  eq PathItemObject.pathItemObject() = this;
+  eq PathItemReference.pathItemObject() {
+      for (PathItemTuple t : root().pathItemTuples()) {
+          if (t.getKey().equals(getRef().substring(getRef().lastIndexOf("/") + 1, getRef().length())))
+              return t.getO().pathItemObject();
+      }
+      return new PathItemObject();
+  }
+
   syn ParameterObject ParameterOb.parameterObject();
   eq ParameterObject.parameterObject() = this;
   eq ParameterReference.parameterObject() {
diff --git a/src/main/java/de/tudresden/inf/st/openapi/OpenAPIMain.java b/src/main/java/de/tudresden/inf/st/openapi/OpenAPIMain.java
index 7e2a6a6b4d05c26eef23e68b6fd26dde7cab3b94..48aa7c374a1f2cf29ec14e5ba74f0e4d44d344fc 100644
--- a/src/main/java/de/tudresden/inf/st/openapi/OpenAPIMain.java
+++ b/src/main/java/de/tudresden/inf/st/openapi/OpenAPIMain.java
@@ -35,9 +35,12 @@ public class OpenAPIMain {
         SwaggerParseResult result = new OpenAPIParser().readLocation(fileName, null, null);
         OpenAPI openAPI = result.getOpenAPI();
         List<String> generatedURLs = new ArrayList<>();
+        List<String> dictionary = new ArrayList<>();
 
         jastAddObject = OpenAPIObject.parseOpenAPI(openAPI);
 
+        generatedURLs = jastAddObject.generateRequests();
+
         URL expUrl = OpenAPIMain.class.getClassLoader().getResource(fileName);
         File file = null;
         if (expUrl != null) {