diff --git a/apps/web/app/(app)/environments/[environmentId]/integrations/notion/components/AddIntegrationModal.tsx b/apps/web/app/(app)/environments/[environmentId]/integrations/notion/components/AddIntegrationModal.tsx
index 4cf41dac29..675d047db5 100644
--- a/apps/web/app/(app)/environments/[environmentId]/integrations/notion/components/AddIntegrationModal.tsx
+++ b/apps/web/app/(app)/environments/[environmentId]/integrations/notion/components/AddIntegrationModal.tsx
@@ -263,11 +263,14 @@ export const AddIntegrationModal = ({
>
);
case ERRORS.MAPPING:
+ const question = questionTypes.find((qt) => qt.id === ques.type);
+ if (!question) return null;
return (
<>
- - "{ques.name}" of type{" "}
- {questionTypes.find((qt) => qt.id === ques.type)?.label} can't be mapped to the
- column "{col.name}" of type {col.type}
+ - "{ques.name}" of type {question.label} can't be mapped to the
+ column "{col.name}" of type {col.type}. Instead use column of type{" "}
+ {""}
+ {TYPE_MAPPING[question.id].join(" ,")}.
>
);
default:
diff --git a/apps/web/app/(app)/environments/[environmentId]/integrations/notion/constants.ts b/apps/web/app/(app)/environments/[environmentId]/integrations/notion/constants.ts
index 3d9fbf0bdb..16bece7040 100644
--- a/apps/web/app/(app)/environments/[environmentId]/integrations/notion/constants.ts
+++ b/apps/web/app/(app)/environments/[environmentId]/integrations/notion/constants.ts
@@ -22,6 +22,10 @@ export const TYPE_MAPPING = {
[TSurveyQuestionType.Rating]: ["number"],
[TSurveyQuestionType.PictureSelection]: ["url"],
[TSurveyQuestionType.FileUpload]: ["url"],
+ [TSurveyQuestionType.Date]: ["date"],
+ [TSurveyQuestionType.Address]: ["rich_text"],
+ [TSurveyQuestionType.Matrix]: ["rich_text"],
+ [TSurveyQuestionType.Cal]: ["checkbox"],
};
export const UNSUPPORTED_TYPES_BY_NOTION = [
diff --git a/apps/web/app/api/pipeline/lib/handleIntegrations.ts b/apps/web/app/api/pipeline/lib/handleIntegrations.ts
index a400fdb32d..b5d0bc8903 100644
--- a/apps/web/app/api/pipeline/lib/handleIntegrations.ts
+++ b/apps/web/app/api/pipeline/lib/handleIntegrations.ts
@@ -165,7 +165,7 @@ const buildNotionPayloadProperties = (
const value = responses[map.question.id];
properties[map.column.name] = {
- [map.column.type]: getValue(map.column.type, value),
+ [map.column.type]: getValue(map.column.type, processResponseData(value)),
};
});