Hello, I’m pretty new to make and have an issue making the Transform Text to Structured data work. For some of my modules it work just fine, but sometimes it just return one object and not an array. What am I doing wrong?
I’ve made a minimum reproductible scenario where it does not work with the text i’m currently working with :
{
"name": "Integration OpenAI (ChatGPT, Whisper, DALL-E)",
"flow": [
{
"id": 1,
"module": "openai-gpt-3:transformTextToStructuredData",
"version": 1,
"parameters": {
"__IMTCONN__": 10079897
},
"mapper": {
"model": "gpt-4.1",
"rawText": "Bien sûr, voici pour chaque poste 3 propositions de quiz avec des niveaux d’exigence progressifs (1 = débutant, 2 = intermédiaire, 3 = expert) sans reprendre le nom du poste dans le titre du quiz. \\nCela pourra t'aider à structurer des parcours différenciés, à la fois ludiques et adaptés à la progression de l’apprenant.\\n\\n---\\n\\n### P_002 — Prétraitement et détachage \\n1. **Reconnaître les types de taches courantes** *(Niveau 1)* \\n2. **Choix des détachants selon la nature du linge** *(Niveau 2)* \\n3. **Approche experte des mélanges et techniques de détachage** *(Niveau 3)* \\n\\n---\\n\\n### P_003 — Chargement et utilisation des machines à laver \\n1. **Sélection des programmes simples de lavage** *(Niveau 1)* \\n2. **Optimisation du chargement et réglages avancés** *(Niveau 2)* \\n3. **Gestion des incidents et entretien machine** *(Niveau 3)* \\n\\n---\\n\\n### P_004 — Transfert et répartition du linge propre \\n1. **Identifier les emplacements et les contenants adéquats** *(Niveau 1)* \\n2. **Organisation logistique et gestion des flux** *(Niveau 2)* \\n3. **Pilotage de la traçabilité et gestion des priorités** *(Niveau 3)* \\n\\n---\\n\\n### P_005 — Séchage — Utilisation des sèche-linges ou calandres \\n1. **Reconnaître les consignes de sécurité** *(Niveau 1)* \\n2. **Adapter les réglages aux différents textiles** *(Niveau 2)* \\n3. **Dépannage de premier niveau et optimisation énergétique** *(Niveau 3)* \\n\\n---\\n\\n### P_006 — Repassage manuel et pliage \\n1. **Gestes de base pour un linge sans plis** *(Niveau 1)* \\n2. **Maîtrise des formes et des textiles spécifiques** *(Niveau 2)* \\n3. **Gestion d’un poste complexe, rapidité et qualité premium** *(Niveau 3)* \\n\\n---\\n\\n### P_007 — Contrôle qualité \\n1. **Vérification élémentaire de la propreté et de l’état du linge** *(Niveau 1)* \\n2. **Identification des défauts et des solutions à apporter** *(Niveau 2)* \\n3. **Audit qualité : critères avancés et gestion des anomalies** *(Niveau 3)* \\n\\n---\\n\\n### P_008 — Emballage et préparation des commandes \\n1. **Reconnaître les types d’emballages et d’étiquetages** *(Niveau 1)* \\n2. **Respect des consignes clients et conditionnements spéciaux** *(Niveau 2)* \\n3. **Organisation d’une zone de préparation à haute productivité** *(Niveau 3)* \\n\\n---\\n\\n### P_009 — Expédition et livraison \\n1. **Suivi des bons de livraison et préparation de base** *(Niveau 1)* \\n2. **Gestion des plannings et des rappels de conformité** *(Niveau 2)* \\n3. **Anticipation des imprévus et gestion de la relation client** *(Niveau 3)* \\n\\n---\\n\\nDis-moi si tu souhaites détailler le contenu de chaque quiz ou des exemples de questions pour certains postes ou niveaux !",
"prompt": "Extrait les quiz",
"parameters": [
{
"name": "quizs",
"description": "ensemble des 15 quiz",
"type": "arrayObject",
"isRequired": true,
"definitionName": "quiz"
}
],
"objectDefinitions": [
{
"name": "quiz",
"description": "quiz",
"properties": [
{
"name": "Name",
"description": "Nom du quiz",
"type": "string",
"isRequired": true
},
{
"name": "level",
"description": "niveau du quiz (1, 2 ou 3)",
"type": "number",
"isRequired": true
},
{
"name": "poste",
"description": "Poste dans lequel ce trouve ce quiz",
"type": "string",
"isRequired": true
}
]
}
]
},
"metadata": {
"designer": {
"x": -275,
"y": -38
},
"restore": {
"parameters": {
"__IMTCONN__": {
"label": "My OpenAI connection",
"data": {
"scoped": "true",
"connection": "openai-gpt-3"
}
}
},
"expect": {
"model": {
"mode": "chose",
"label": "gpt-4.1 (system)"
},
"parameters": {
"mode": "chose",
"items": [
{
"type": {
"mode": "chose",
"label": "Array (objects)"
},
"isRequired": {
"mode": "chose"
}
}
]
},
"objectDefinitions": {
"mode": "chose",
"items": [
{
"properties": {
"mode": "chose",
"items": [
{
"type": {
"mode": "chose",
"label": "Text"
},
"isRequired": {
"mode": "chose"
}
},
{
"type": {
"mode": "chose",
"label": "Number"
},
"isRequired": {
"mode": "chose"
}
},
{
"type": {
"mode": "chose",
"label": "Text"
},
"isRequired": {
"mode": "chose"
}
}
]
}
}
]
}
}
},
"parameters": [
{
"name": "__IMTCONN__",
"type": "account:openai-gpt-3",
"label": "Connection",
"required": true
}
],
"expect": [
{
"name": "model",
"type": "select",
"label": "Model",
"required": true
},
{
"name": "rawText",
"type": "text",
"label": "Text to Parse",
"required": true
},
{
"name": "prompt",
"type": "text",
"label": "Prompt",
"required": true
},
{
"name": "parameters",
"type": "array",
"label": "Structured Data Definition",
"required": true,
"spec": {
"spec": [],
"type": "collection",
"label": "Data Definition",
"name": "value"
}
},
{
"name": "objectDefinitions",
"type": "array",
"label": "Object Definitions",
"spec": {
"spec": [
{
"name": "name",
"type": "text",
"label": "Object Name",
"required": true
},
{
"name": "description",
"type": "text",
"label": "Description",
"required": true
},
{
"name": "properties",
"spec": {
"spec": [],
"type": "collection",
"label": "Property"
},
"type": "array",
"label": "Properties",
"labels": {
"add": "Add property"
},
"required": true
}
],
"type": "collection",
"label": "Object Definition",
"name": "value"
}
}
],
"interface": [
{
"name": "quizs",
"type": "arrayObject"
}
]
}
}
],
"metadata": {
"instant": false,
"version": 1,
"scenario": {
"roundtrips": 1,
"maxErrors": 3,
"autoCommit": true,
"autoCommitTriggerLast": true,
"sequential": false,
"slots": null,
"confidential": false,
"dataloss": false,
"dlq": false,
"freshVariables": false
},
"designer": {
"orphans": []
},
"zone": "eu2.make.com",
"notes": []
}
}
sorry, can’t find where to attach file to a topic.
Here is my bundle input :
[
{
"model": "gpt-4.1",
"prompt": "Extrait les quiz",
"rawText": "Bien sûr, voici pour chaque poste 3 propositions de quiz avec des niveaux d’exigence progressifs (1 = débutant, 2 = intermédiaire, 3 = expert) sans reprendre le nom du poste dans le titre du quiz. \\nCela pourra t'aider à structurer des parcours différenciés, à la fois ludiques et adaptés à la progression de l’apprenant.\\n\\n---\\n\\n### P_002 — Prétraitement et détachage \\n1. **Reconnaître les types de taches courantes** *(Niveau 1)* \\n2. **Choix des détachants selon la nature du linge** *(Niveau 2)* \\n3. **Approche experte des mélanges et techniques de détachage** *(Niveau 3)* \\n\\n---\\n\\n### P_003 — Chargement et utilisation des machines à laver \\n1. **Sélection des programmes simples de lavage** *(Niveau 1)* \\n2. **Optimisation du chargement et réglages avancés** *(Niveau 2)* \\n3. **Gestion des incidents et entretien machine** *(Niveau 3)* \\n\\n---\\n\\n### P_004 — Transfert et répartition du linge propre \\n1. **Identifier les emplacements et les contenants adéquats** *(Niveau 1)* \\n2. **Organisation logistique et gestion des flux** *(Niveau 2)* \\n3. **Pilotage de la traçabilité et gestion des priorités** *(Niveau 3)* \\n\\n---\\n\\n### P_005 — Séchage — Utilisation des sèche-linges ou calandres \\n1. **Reconnaître les consignes de sécurité** *(Niveau 1)* \\n2. **Adapter les réglages aux différents textiles** *(Niveau 2)* \\n3. **Dépannage de premier niveau et optimisation énergétique** *(Niveau 3)* \\n\\n---\\n\\n### P_006 — Repassage manuel et pliage \\n1. **Gestes de base pour un linge sans plis** *(Niveau 1)* \\n2. **Maîtrise des formes et des textiles spécifiques** *(Niveau 2)* \\n3. **Gestion d’un poste complexe, rapidité et qualité premium** *(Niveau 3)* \\n\\n---\\n\\n### P_007 — Contrôle qualité \\n1. **Vérification élémentaire de la propreté et de l’état du linge** *(Niveau 1)* \\n2. **Identification des défauts et des solutions à apporter** *(Niveau 2)* \\n3. **Audit qualité : critères avancés et gestion des anomalies** *(Niveau 3)* \\n\\n---\\n\\n### P_008 — Emballage et préparation des commandes \\n1. **Reconnaître les types d’emballages et d’étiquetages** *(Niveau 1)* \\n2. **Respect des consignes clients et conditionnements spéciaux** *(Niveau 2)* \\n3. **Organisation d’une zone de préparation à haute productivité** *(Niveau 3)* \\n\\n---\\n\\n### P_009 — Expédition et livraison \\n1. **Suivi des bons de livraison et préparation de base** *(Niveau 1)* \\n2. **Gestion des plannings et des rappels de conformité** *(Niveau 2)* \\n3. **Anticipation des imprévus et gestion de la relation client** *(Niveau 3)* \\n\\n---\\n\\nDis-moi si tu souhaites détailler le contenu de chaque quiz ou des exemples de questions pour certains postes ou niveaux !",
"parameters": [
{
"name": "quizs",
"type": "arrayObject",
"isRequired": true,
"description": "ensemble des 15 quiz",
"definitionName": "quiz"
}
],
"objectDefinitions": [
{
"name": "quiz",
"properties": [
{
"name": "Name",
"type": "string",
"isRequired": true,
"description": "Nom du quiz"
},
{
"name": "level",
"type": "number",
"isRequired": true,
"description": "niveau du quiz (1, 2 ou 3)"
}
],
"description": "quiz"
}
]
}
]
And here is the output where my problem lies :
[
{
"quizs": {
"Name": "Reconnaître les types de taches courantes",
"level": 1
}
}
]


