diff --git a/src/EntityToJsonApi.php b/src/EntityToJsonApi.php
index dd2b97e..30bcd3f 100644
--- a/src/EntityToJsonApi.php
+++ b/src/EntityToJsonApi.php
@@ -99,15 +99,17 @@ class EntityToJsonApi {
   protected function calculateContext(EntityInterface $entity) {
     // TODO: Supporting includes requires adding the 'include' query string.
     $path_prefix = $this->resourceTypeRepository->getPathPrefix();
-    $path = sprintf('/%s/%s/%s/%s', $path_prefix, $entity->getEntityTypeId(), $entity->bundle(), $entity->uuid());
+    $resource_type = $this->resourceTypeRepository->get(
+      $entity->getEntityTypeId(),
+      $entity->bundle()
+    );
+    $resource_path = $resource_type->getPath();
+    $path = sprintf('/%s/%s/%s', $path_prefix, $resource_path, $entity->uuid());
     $request = Request::create($path, 'GET');
     return [
       'account' => $this->currentUser,
       'cacheable_metadata' => new CacheableMetadata(),
-      'resource_type' => $this->resourceTypeRepository->get(
-        $entity->getEntityTypeId(),
-        $entity->bundle()
-      ),
+      'resource_type' => $resource_type,
       'request' => $request,
     ];
   }
diff --git a/src/ResourceType/ResourceType.php b/src/ResourceType/ResourceType.php
index a5ba25a..f2257dd 100644
--- a/src/ResourceType/ResourceType.php
+++ b/src/ResourceType/ResourceType.php
@@ -243,4 +243,14 @@ class ResourceType {
       [];
   }
 
+  /**
+   * Get the resource path.
+   *
+   * @return string
+   *   The path to access this resource type. Defaults to entity_type_id/bundle.
+   */
+  public function getPath() {
+    return sprintf('%s/%s', $this->getEntityTypeId(), $this->getBundle());
+  }
+
 }
diff --git a/src/Routing/Routes.php b/src/Routing/Routes.php
index 8a95960..5740ef5 100644
--- a/src/Routing/Routes.php
+++ b/src/Routing/Routes.php
@@ -105,7 +105,8 @@ class Routes implements ContainerInjectionInterface {
       }
 
       $path_prefix = $this->resourceTypeRepository->getPathPrefix();
-      $route_base_path = sprintf('/%s/%s/%s', $path_prefix, $resource_type->getEntityTypeId(), $resource_type->getBundle());
+      $resource_path = $resource_type->getPath();
+      $route_base_path = sprintf('/%s/%s', $path_prefix, $resource_path);
       $build_route_name = function ($key) use ($resource_type) {
         return sprintf('jsonapi.%s.%s', $resource_type->getTypeName(), $key);
       };
