diff --git a/api/src/engine/connectors/exareme/converters.ts b/api/src/engine/connectors/exareme/converters.ts
index ba948ad8e870efd9d4e0c326fca02949d43234c3..5c4c2ad9b93723e365ade10a596e7f1071002750 100644
--- a/api/src/engine/connectors/exareme/converters.ts
+++ b/api/src/engine/connectors/exareme/converters.ts
@@ -122,6 +122,6 @@ export const dataToTransient = (data: TransientDataResult): Experiment => {
 
   return {
     title: data.name,
-    result: tables,
+    results: tables,
   };
 };
diff --git a/api/src/engine/models/experiment/experiment.model.ts b/api/src/engine/models/experiment/experiment.model.ts
index 42dd04f5b500e2e65bcc2ec2d36a12c3104287b1..bf0881247afdf3b13f8e9e29e9a3653b1cb2d69d 100644
--- a/api/src/engine/models/experiment/experiment.model.ts
+++ b/api/src/engine/models/experiment/experiment.model.ts
@@ -1,5 +1,26 @@
-import { Field, GraphQLISODateTime, ObjectType } from '@nestjs/graphql';
-import { Result } from '../result/result.model';
+import {
+  createUnionType,
+  Field,
+  GraphQLISODateTime,
+  ObjectType,
+} from '@nestjs/graphql';
+import { DummyResult } from '../result/dummy-result.model';
+import { TableResult } from '../result/table-result.model';
+
+export const ResultUnion = createUnionType({
+  name: 'ResultUnion',
+  types: () => [TableResult, DummyResult],
+  resolveType(value) {
+    if (value.metadatas) {
+      return TableResult;
+    }
+    if (value.listMax) {
+      return DummyResult;
+    }
+
+    return null;
+  },
+});
 
 @ObjectType()
 export class Experiment {
@@ -18,6 +39,6 @@ export class Experiment {
   @Field(() => GraphQLISODateTime, { nullable: true })
   finished_at?: Date;
 
-  @Field(() => [Result])
-  result: Result[];
+  @Field(() => [ResultUnion])
+  results: Array<typeof ResultUnion>;
 }
diff --git a/api/src/engine/models/result/result.model.ts b/api/src/engine/models/result/common/result.model.ts
similarity index 100%
rename from api/src/engine/models/result/result.model.ts
rename to api/src/engine/models/result/common/result.model.ts
diff --git a/api/src/engine/models/result/dummy-result.model.ts b/api/src/engine/models/result/dummy-result.model.ts
new file mode 100644
index 0000000000000000000000000000000000000000..99e36f5c90b9100e1cd46ed9fa67f613a46864b5
--- /dev/null
+++ b/api/src/engine/models/result/dummy-result.model.ts
@@ -0,0 +1,14 @@
+import { Field, ObjectType } from '@nestjs/graphql';
+import { Result } from './common/result.model';
+
+@ObjectType()
+export class DummyResult extends Result {
+  @Field()
+  name: string;
+
+  @Field(() => [[String]])
+  data: string[][];
+
+  @Field(() => [String])
+  listMax: string[];
+}
diff --git a/api/src/engine/models/result/table-result.model.ts b/api/src/engine/models/result/table-result.model.ts
index 226de836c736057a18c0dcc351c92056e3c3de88..aa732d77f854a0cb938a842a760720f703b43946 100644
--- a/api/src/engine/models/result/table-result.model.ts
+++ b/api/src/engine/models/result/table-result.model.ts
@@ -1,6 +1,6 @@
 import { Field, ObjectType } from '@nestjs/graphql';
 import { MetaData } from './common/metadata.model';
-import { Result } from './result.model';
+import { Result } from './common/result.model';
 
 @ObjectType()
 export class TableResult extends Result {
diff --git a/api/src/schema.gql b/api/src/schema.gql
index 8d97521e5e945f00017d16828f128212571b1c7c..f51b3333332088bb34723a4e4c4db2cb1c2806ef 100644
--- a/api/src/schema.gql
+++ b/api/src/schema.gql
@@ -34,8 +34,9 @@ type Domain {
   rootGroup: Group!
 }
 
-type Result {
-  groupBy: String
+type MetaData {
+  name: String!
+  type: String!
 }
 
 type Experiment {
@@ -44,7 +45,7 @@ type Experiment {
   created_at: DateTime
   update_at: DateTime
   finished_at: DateTime
-  result: [Result!]!
+  results: [ResultUnion!]!
 }
 
 """
@@ -52,9 +53,20 @@ A date-time string at UTC, such as 2019-12-03T09:54:33Z, compliant with the date
 """
 scalar DateTime
 
-type MetaData {
+union ResultUnion = TableResult | DummyResult
+
+type TableResult {
+  groupBy: String
   name: String!
-  type: String!
+  data: [[String!]!]!
+  metadatas: [MetaData!]!
+}
+
+type DummyResult {
+  groupBy: String
+  name: String!
+  data: [[String!]!]!
+  listMax: [String!]!
 }
 
 type Query {