diff --git a/packages/twenty-server/src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields.parser.ts b/packages/twenty-server/src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields.parser.ts index ef0a54ee33..480ab83907 100644 --- a/packages/twenty-server/src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields.parser.ts +++ b/packages/twenty-server/src/engine/api/graphql/graphql-query-runner/graphql-query-parsers/graphql-query-selected-fields/graphql-selected-fields.parser.ts @@ -83,6 +83,15 @@ export class GraphqlQuerySelectedFieldsParser { if ( isFieldMetadataEntityOfType(fieldMetadata, FieldMetadataType.RELATION) ) { + const joinColumnName = fieldMetadata.settings?.joinColumnName; + + if ( + isDefined(joinColumnName) && + isDefined(graphqlSelectedFields[joinColumnName]) + ) { + accumulator.select[joinColumnName] = true; + } + const graphqlSelectedFieldValue = graphqlSelectedFields[fieldMetadata.name]; @@ -116,6 +125,15 @@ export class GraphqlQuerySelectedFieldsParser { continue; } + const joinColumnName = fieldMetadata.settings?.joinColumnName; + + if ( + isDefined(joinColumnName) && + isDefined(graphqlSelectedFields[joinColumnName]) + ) { + accumulator.select[joinColumnName] = true; + } + const morphRelationFieldName = computeMorphRelationFieldName({ fieldName: fieldMetadata.name, relationDirection: fieldMetadata.settings.relationType,