diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java b/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java
index e8713d7a3dec7198bd526795469e294d9707fa01..6e1d36196a24f395757ead0f029e74b546771a1c 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java
@@ -1,6 +1,8 @@
 package gov.usgs.earthquake.nshmp.www;
 
 import java.nio.file.Path;
+import java.util.List;
+import java.util.Optional;
 
 import org.crac.Context;
 import org.crac.Resource;
@@ -12,8 +14,13 @@ import software.amazon.awssdk.services.ssm.model.SsmException;
 
 import com.amazonaws.serverless.proxy.internal.testutils.MockLambdaContext;
 import com.amazonaws.serverless.proxy.model.AwsProxyRequest;
+import com.amazonaws.serverless.proxy.model.MultiValuedTreeMap;
 
+import gov.usgs.earthquake.nshmp.NamedLocation;
+import gov.usgs.earthquake.nshmp.geo.Regions;
 import gov.usgs.earthquake.nshmp.gmm.Gmm;
+import gov.usgs.earthquake.nshmp.gmm.Imt;
+import gov.usgs.earthquake.nshmp.site.NshmpSite;
 
 import io.micronaut.context.annotation.Value;
 import io.micronaut.crac.OrderedResource;
@@ -26,18 +33,60 @@ import jakarta.inject.Singleton;
 @Singleton
 public class PrimingResource implements OrderedResource {
 
+  /* Test sites */
+  private static final List<NamedLocation> LOCATIONS = List.of(
+      NshmpSite.LOS_ANGELES_CA,
+      NshmpSite.SAN_FRANCISCO_CA,
+      NshmpSite.SEATTLE_WA,
+      NshmpSite.SALT_LAKE_CITY_UT,
+      NshmpSite.RENO_NV,
+      NshmpSite.NEW_MADRID_MO,
+      NshmpSite.BOSTON_MA,
+      NshmpSite.NEW_YORK_NY,
+      NshmpSite.CHICAGO_IL,
+      NshmpSite.ANCHORAGE_AK,
+      NshmpSite.FAIRBANKS_AK,
+      NshmpSite.JUNEAU_AK,
+      NshmpSite.KODIAK_AK,
+      NshmpSite.VALDEZ_AK,
+      NshmpSite.HILO_HI,
+      NshmpSite.HONOLULU_HI,
+      NshmpSite.KAILUA_KONA_HI,
+      NshmpSite.SAN_JUAN_PR);
+
   @Value("${nshmp-haz.model-path}")
   private Path modelPath;
 
   @Override
   public void beforeCheckpoint(Context<? extends Resource> context) throws Exception {
-    ServletUtil.model(ServletUtil.loadModel(modelPath));
+    var model = ServletUtil.loadModel(modelPath);
+    ServletUtil.model(model);
     updateParameter();
 
+    var region = Regions.createRectangular("Bounds", model.bounds().min, model.bounds().max);
+
     try (MicronautLambdaHandler handler = new MicronautLambdaHandler()) {
-      handler.handleRequest(
-          getAwsProxyRequest("/hazard"),
-          new MockLambdaContext());
+      var paths = List.of("/hazard", "/disagg");
+
+      paths.forEach(path -> {
+        handler.handleRequest(
+            getAwsProxyRequest(path, Optional.empty()),
+            new MockLambdaContext());
+      });
+
+      paths.forEach(path -> {
+        LOCATIONS.forEach(namedLocation -> {
+          var location = namedLocation.location();
+
+          if (region.contains(location)) {
+            handler.handleRequest(
+                getAwsProxyRequest(
+                    String.format("%s/%f/%f/760", path, location.longitude, location.latitude),
+                    Optional.of(Imt.PGA)),
+                new MockLambdaContext());
+          }
+        });
+      });
     }
   }
 
@@ -47,10 +96,19 @@ public class PrimingResource implements OrderedResource {
     ServletUtil.resetExecutors();
   }
 
-  private static AwsProxyRequest getAwsProxyRequest(String path) {
+  private static AwsProxyRequest getAwsProxyRequest(String path, Optional<Imt> imt) {
     final AwsProxyRequest awsProxyRequest = new AwsProxyRequest();
     awsProxyRequest.setHttpMethod("GET");
     awsProxyRequest.setPath(path);
+
+    if (imt.isPresent()) {
+      var parameters = new MultiValuedTreeMap<String, String>();
+      parameters.add("imt", imt.get().name());
+
+      awsProxyRequest.setMultiValueQueryStringParameters(
+          parameters);
+    }
+
     return awsProxyRequest;
   }