{
  "name": "Salesforce CRM Deep Research Enrichment",
  "flow": [
    {
      "id": 1,
      "module": "salesforce:watchRecords",
      "version": 3,
      "metadata": {
        "designer": {
          "x": -153,
          "y": -2,
          "name": "Watch New or Updated CRM Records",
          "messages": [
            {
              "category": "setup",
              "severity": "error",
              "message": "Value must not be empty."
            }
          ]
        }
      }
    },
    {
      "id": 2,
      "module": "perplexity-ai:createAChatCompletion",
      "version": 1,
      "parameters": {
        "__IMTCONN__": 3614405
      },
      "mapper": {
        "model": "sonar",
        "messages": [
          {
            "content": "You are a Market Research Analyst with expertise in digital business intelligence and conversion-focused content evaluation.\n\nYour task is to analyze the website at {website} and provide a structured report that includes:\n\nCompany Summary\n\nWrite a concise 2–3 sentence overview describing what the company does, its core offering(s), and the industry or sector it operates in.\n\n⚠️ Avoid assumptions not supported by visible content.\n\nTarget Audience / Buyer Persona\n\nIdentify and describe the primary buyer persona(s) or target audience segments.\n\nBase your findings on the site's language, visuals, tone, features, and product/service focus.\n\n⚠️ Do not infer personal details or motivations not implied by the website.\n\nHomepage Value Propositions\n\nList the top 3–5 core value propositions communicated on the homepage.\n\nThese should include both direct messages (e.g. headlines, CTAs) and indirect signals (e.g. imagery, layout, testimonials).\n\n⚠️ Avoid over-interpreting marketing fluff — prioritize clear, benefit-driven statements.\n\nGuardrails & Restrictions:\n✅ Use only publicly available information directly from the website; do not scrape external sources.\n\n✅ Rephrase or summarize site content in your own words.\n\n❌ Do not include opinions, speculations, or unverifiable claims.\n\n❌ Do not fabricate user data, product features, or pricing if not explicitly visible.\n\n✅ Be objective and structured in tone.\n\nFormat your response using the following headers:\n\nCompany Summary\n\nTarget Audience\n\nKey Value Propositions",
            "role": "user"
          }
        ],
        "max_tokens": "300",
        "temperature": ".4",
        "web_search_options": {
          "search_context_size": "medium"
        },
        "top_p": "1",
        "top_k": "1"
      },
      "metadata": {
        "designer": {
          "x": 260,
          "y": -3,
          "name": "Get Site Summary & Buyer Insights"
        },
        "restore": {
          "parameters": {
            "__IMTCONN__": {
              "label": "My Perplexity connection",
              "data": {
                "scoped": "true",
                "connection": "perplexity-ai"
              }
            }
          },
          "expect": {
            "model": {
              "mode": "chose",
              "label": "sonar"
            },
            "messages": {
              "mode": "chose",
              "items": [
                {
                  "role": {
                    "mode": "chose",
                    "label": "User"
                  }
                }
              ]
            },
            "web_search_options": {
              "nested": {
                "search_context_size": {
                  "mode": "chose",
                  "label": "Medium"
                }
              }
            },
            "search_domain_filter": {
              "mode": "chose"
            },
            "search_recency_filter": {
              "mode": "chose",
              "label": "Empty"
            },
            "return_images": {
              "mode": "chose"
            },
            "return_related_questions": {
              "mode": "chose"
            }
          }
        },
        "parameters": [
          {
            "name": "__IMTCONN__",
            "type": "account:perplexity-ai",
            "label": "Connection",
            "required": true
          }
        ],
        "expect": [
          {
            "name": "model",
            "type": "select",
            "label": "Model",
            "required": true
          },
          {
            "name": "messages",
            "type": "array",
            "label": "Messages",
            "required": true,
            "spec": [
              {
                "name": "content",
                "type": "text",
                "label": "Content",
                "required": true
              },
              {
                "name": "role",
                "type": "select",
                "label": "Role",
                "options": [
                  {
                    "label": "User",
                    "value": "user"
                  },
                  {
                    "label": "Assistant",
                    "value": "assistant"
                  },
                  {
                    "label": "System",
                    "value": "system"
                  }
                ],
                "required": true
              }
            ]
          },
          {
            "name": "max_tokens",
            "type": "number",
            "label": "Max Tokens"
          },
          {
            "name": "temperature",
            "type": "number",
            "label": "Temperature",
            "validate": {
              "max": 1.999,
              "min": 0
            }
          },
          {
            "name": "web_search_options",
            "type": "collection",
            "label": "Web Search Options",
            "spec": [
              {
                "name": "search_context_size",
                "type": "select",
                "label": "Search Context Size",
                "validate": {
                  "enum": [
                    "low",
                    "medium",
                    "high"
                  ]
                }
              }
            ]
          },
          {
            "name": "top_p",
            "type": "number",
            "label": "Top P",
            "validate": {
              "max": 1,
              "min": 0
            }
          },
          {
            "name": "top_k",
            "type": "number",
            "label": "Top K",
            "validate": {
              "max": 2048,
              "min": 0
            }
          },
          {
            "name": "presence_penalty",
            "type": "number",
            "label": "Presence Penalty",
            "validate": {
              "max": 2,
              "min": -2
            }
          },
          {
            "name": "frequency_penalty",
            "type": "number",
            "label": "Frequency Penalty",
            "validate": {
              "min": 0
            }
          },
          {
            "name": "search_domain_filter",
            "type": "array",
            "label": "Search Domain Filter",
            "spec": {
              "type": "text",
              "name": "value"
            }
          },
          {
            "name": "search_recency_filter",
            "type": "select",
            "label": "Search Recency Filter",
            "validate": {
              "enum": [
                "month",
                "week",
                "day",
                "hour"
              ]
            }
          },
          {
            "name": "return_images",
            "type": "boolean",
            "label": "Return Images"
          },
          {
            "name": "return_related_questions",
            "type": "boolean",
            "label": "Return Related Questions"
          }
        ],
        "advanced": true
      }
    },
    {
      "id": 3,
      "module": "openai-gpt-3:CreateCompletion",
      "version": 1,
      "parameters": {
        "__IMTCONN__": 1796128
      },
      "mapper": {
        "select": "chat",
        "temperature": ".7",
        "top_p": "1",
        "n_completions": "1",
        "model": "gpt-4o-2024-08-06",
        "max_tokens": "500",
        "messages": [
          {
            "role": "assistant",
            "content": "You are a strategic marketing analyst with a focus on competitive positioning and market research.\n\nYour task is to craft a compelling 3-paragraph market snapshot for a company, based on the following placeholder data:\n\nCompany: {company_name}\n\nIndustry: {industry}\n\nWebsite: {website}\n\nUse a confident and analytical tone, suitable for executive briefings or investor decks.\n\nLeverage established marketing frameworks such as SWOT, Porter’s Five Forces, or the STP model to enrich your insights. Structure the snapshot as follows:\n\nMarket Segment Overview – Clearly define the primary target market segment, including demographics, psychographics, and key pain points or needs the company addresses. Incorporate relevant trends shaping this audience's behavior within the {industry}.\n\nCompetitive Landscape - Identify the top 2–3 major competitors in the same space. Briefly explain their market share, brand strengths, or core offerings. Highlight how saturated or fragmented the market is, and any barriers to entry that exist.\n\nPositioning & Differentiation Strategy – Outline how {company} uniquely positions itself in the market, emphasizing key differentiators (e.g., technology, pricing model, customer experience, brand voice). Describe its go-to-market strategy and how it plans to sustain a competitive edge.\n\nAvoid vague generalizations. Focus on clarity, conciseness, and business intelligence."
          }
        ],
        "response_format": "text"
      },
      "metadata": {
        "designer": {
          "x": 675,
          "y": -4,
          "name": "Generate Positioning Snapshot"
        },
        "restore": {
          "parameters": {
            "__IMTCONN__": {
              "label": "My OpenAI connection",
              "data": {
                "scoped": "true",
                "connection": "openai-gpt-3"
              }
            }
          },
          "expect": {
            "select": {
              "label": "Create a Chat Completion (GPT and o1 models)"
            },
            "logit_bias": {
              "mode": "chose"
            },
            "tool_choice": {
              "mode": "chose",
              "label": "Empty"
            },
            "stop": {
              "mode": "chose"
            },
            "additionalParameters": {
              "mode": "chose"
            },
            "model": {
              "mode": "chose",
              "label": "gpt-4o-2024-08-06 (system)"
            },
            "messages": {
              "mode": "chose",
              "items": [
                {
                  "role": {
                    "mode": "chose",
                    "label": "Assistant"
                  },
                  "tool_calls": {
                    "mode": "edit"
                  }
                }
              ]
            },
            "response_format": {
              "mode": "chose",
              "label": "Text"
            }
          }
        },
        "parameters": [
          {
            "name": "__IMTCONN__",
            "type": "account:openai-gpt-3",
            "label": "Connection",
            "required": true
          }
        ],
        "expect": [
          {
            "name": "select",
            "type": "select",
            "label": "Select Method",
            "required": true,
            "validate": {
              "enum": [
                "chat",
                "prompt"
              ]
            }
          },
          {
            "name": "temperature",
            "type": "number",
            "label": "Temperature",
            "validate": {
              "max": 2,
              "min": 0
            }
          },
          {
            "name": "top_p",
            "type": "number",
            "label": "Top P",
            "validate": {
              "max": 1,
              "min": 0
            }
          },
          {
            "name": "n_completions",
            "type": "number",
            "label": "Number"
          },
          {
            "name": "frequency_penalty",
            "type": "number",
            "label": "Frequency Penalty",
            "validate": {
              "max": 2,
              "min": -2
            }
          },
          {
            "name": "presence_penalty",
            "type": "number",
            "label": "Presence Penalty",
            "validate": {
              "max": 2,
              "min": -2
            }
          },
          {
            "name": "logit_bias",
            "type": "array",
            "label": "Token Probability",
            "spec": {
              "spec": [
                {
                  "name": "token",
                  "type": "text",
                  "label": "Token ID",
                  "required": true
                },
                {
                  "name": "probability",
                  "type": "number",
                  "label": "Probability",
                  "required": true,
                  "validate": {
                    "max": 100,
                    "min": -100
                  }
                }
              ],
              "type": "collection",
              "label": "Token Probability",
              "name": "value"
            }
          },
          {
            "name": "seed",
            "type": "integer",
            "label": "Seed"
          },
          {
            "name": "tool_choice",
            "type": "select",
            "label": "Tool Choice",
            "validate": {
              "enum": [
                "none",
                "auto",
                "required"
              ]
            }
          },
          {
            "name": "stop",
            "type": "array",
            "label": "Stop Sequences",
            "validate": {
              "maxItems": 4
            },
            "spec": {
              "type": "text",
              "label": "Stop Sequence",
              "name": "value"
            }
          },
          {
            "name": "additionalParameters",
            "type": "array",
            "label": "Other Input Parameters",
            "spec": {
              "spec": [
                {
                  "name": "key",
                  "type": "text",
                  "label": "Parameter Name",
                  "required": true
                },
                {
                  "name": "type",
                  "type": "select",
                  "label": "Input Type",
                  "options": [
                    {
                      "label": "Text",
                      "value": "text",
                      "nested": [
                        {
                          "name": "value",
                          "type": "text",
                          "label": "Parameter Value"
                        }
                      ],
                      "default": true
                    },
                    {
                      "label": "Number",
                      "value": "number",
                      "nested": [
                        {
                          "name": "value",
                          "type": "number",
                          "label": "Parameter Value"
                        }
                      ]
                    },
                    {
                      "label": "Boolean",
                      "value": "boolean",
                      "nested": [
                        {
                          "name": "value",
                          "type": "boolean",
                          "label": "Parameter Value"
                        }
                      ]
                    },
                    {
                      "label": "Date",
                      "value": "date",
                      "nested": [
                        {
                          "name": "value",
                          "type": "date",
                          "label": "Parameter Value"
                        }
                      ]
                    },
                    {
                      "label": "Any",
                      "value": "any",
                      "nested": [
                        {
                          "name": "value",
                          "type": "any",
                          "label": "Parameter Value"
                        }
                      ]
                    }
                  ]
                }
              ],
              "type": "collection",
              "label": "Input Parameter",
              "name": "value"
            }
          },
          {
            "name": "model",
            "type": "select",
            "label": "Model",
            "required": true
          },
          {
            "name": "max_tokens",
            "type": "uinteger",
            "label": "Max Completion Tokens"
          },
          {
            "name": "messages",
            "type": "array",
            "label": "Messages",
            "required": true,
            "spec": {
              "label": "Message",
              "type": "collection",
              "spec": [
                {
                  "name": "role",
                  "type": "select",
                  "label": "Role",
                  "required": true,
                  "options": {
                    "store": [
                      {
                        "label": "User",
                        "value": "user",
                        "nested": [
                          {
                            "help": "Text content of the message on behalf of the selected __Role__.",
                            "name": "content",
                            "type": "text",
                            "label": "Text Content"
                          },
                          {
                            "name": "imageInputType",
                            "type": "select",
                            "label": "Image Input Type",
                            "mappable": false,
                            "options": [
                              {
                                "value": "url",
                                "label": "URL",
                                "nested": [
                                  {
                                    "name": "imageUrl",
                                    "label": "Image URL",
                                    "type": "url",
                                    "help": "Make sure to use a publicly accessible URL.\nYou can test if your image is publicly accessible by opening the link in an incognito tab."
                                  }
                                ]
                              },
                              {
                                "value": "file",
                                "label": "Image File",
                                "nested": [
                                  {
                                    "name": "imageFile",
                                    "label": "Image",
                                    "type": "collection",
                                    "spec": [
                                      {
                                        "name": "imageFilename",
                                        "type": "filename",
                                        "label": "Image Filename",
                                        "semantic": "file:name",
                                        "extension": [
                                          "jpg",
                                          "jpeg",
                                          "png",
                                          "webp",
                                          "gif"
                                        ],
                                        "help": "Accepted extensions: `.jpg`, `.jpeg`, `.png`, `.webp` and `.gif`."
                                      },
                                      {
                                        "name": "imageData",
                                        "type": "buffer",
                                        "label": "Image Data",
                                        "semantic": "file:data"
                                      }
                                    ]
                                  }
                                ]
                              }
                            ]
                          },
                          {
                            "name": "imageDetail",
                            "type": "select",
                            "label": "Image Detail",
                            "help": "Recommended value: `Auto`",
                            "options": [
                              {
                                "value": "auto",
                                "default": true,
                                "label": "Auto"
                              },
                              {
                                "value": "high",
                                "label": "High"
                              },
                              {
                                "value": "low",
                                "label": "Low"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "label": "Assistant",
                        "value": "assistant",
                        "nested": [
                          {
                            "help": "Text content of the message on behalf of the selected __Role__.",
                            "name": "content",
                            "type": "text",
                            "label": "Text Content"
                          },
                          {
                            "name": "tool_calls",
                            "label": "Tool Calls",
                            "type": "array",
                            "labels": {
                              "add": "Add tool call"
                            },
                            "mode": "edit",
                            "mappable": {
                              "help": "You can map the entire `Choices[]: Message.Tool Calls` array from a previous Create a Completion module here."
                            },
                            "spec": {
                              "label": "Tool Call",
                              "type": "collection",
                              "spec": [
                                {
                                  "name": "type",
                                  "type": "hidden",
                                  "default": "function"
                                },
                                {
                                  "name": "id",
                                  "type": "text",
                                  "label": "Tool call ID",
                                  "help": "Map this directly from the output of a previous **Create a Completion** module. Look for `Choices[]: Message.Tool Calls[]: ID`."
                                },
                                {
                                  "name": "function",
                                  "type": "collection",
                                  "label": "Function",
                                  "spec": [
                                    {
                                      "name": "name",
                                      "label": "Name",
                                      "type": "text",
                                      "required": true,
                                      "help": "The name of the function previously called."
                                    },
                                    {
                                      "name": "arguments",
                                      "label": "Arguments",
                                      "type": "text",
                                      "required": true,
                                      "help": "The arguments previously output by the AI."
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        ]
                      },
                      {
                        "label": "Developer / System",
                        "nested": [
                          {
                            "help": "Text content of the message on behalf of the selected __Role__.",
                            "name": "content",
                            "type": "text",
                            "label": "Text Content"
                          }
                        ],
                        "value": "system"
                      },
                      {
                        "label": "Tool",
                        "value": "tool",
                        "nested": [
                          {
                            "help": "The return of the function. This role should only be used when you have processed a previous function call and want to send the output of the function execution back to the AI.",
                            "name": "content",
                            "type": "text",
                            "label": "Text Content",
                            "required": true
                          },
                          {
                            "label": "Tool Call ID.",
                            "name": "tool_call_id",
                            "type": "text",
                            "required": true,
                            "help": "Map this directly from the output of a previous **Create a Completion** module. Look for `Choices[]: Message.Tool Calls[]: ID`."
                          }
                        ]
                      }
                    ]
                  }
                }
              ],
              "name": "value"
            }
          },
          {
            "name": "response_format",
            "type": "select",
            "label": "Response Format",
            "validate": {
              "enum": [
                "text",
                "json_object"
              ]
            }
          },
          {
            "name": "prediction",
            "type": "text",
            "label": "Predicted Outputs"
          }
        ],
        "interface": [
          {
            "name": "result",
            "type": "any",
            "label": "Result"
          },
          {
            "name": "id",
            "type": "text",
            "label": "ID"
          },
          {
            "name": "object",
            "type": "text",
            "label": "Object"
          },
          {
            "name": "created",
            "type": "date",
            "label": "Created"
          },
          {
            "name": "model",
            "type": "text",
            "label": "Model"
          },
          {
            "name": "choices",
            "spec": [
              {
                "name": "text",
                "type": "text",
                "label": "Text"
              },
              {
                "name": "index",
                "type": "number",
                "label": "Index"
              },
              {
                "name": "logprobs",
                "type": "text",
                "label": "Log Probs"
              },
              {
                "name": "finish_reason",
                "type": "text",
                "label": "Finish Reason"
              },
              {
                "name": "message",
                "spec": [
                  {
                    "name": "role",
                    "type": "text",
                    "label": "Role"
                  },
                  {
                    "name": "content",
                    "type": "text",
                    "label": "Content"
                  },
                  {
                    "name": "tool_calls",
                    "spec": [
                      {
                        "name": "id",
                        "type": "text",
                        "label": "ID"
                      },
                      {
                        "name": "type",
                        "type": "text",
                        "label": "Type"
                      },
                      {
                        "name": "function",
                        "spec": [
                          {
                            "name": "name",
                            "type": "text",
                            "label": "Name"
                          },
                          {
                            "name": "arguments",
                            "type": "text",
                            "label": "Arguments"
                          }
                        ],
                        "type": "collection",
                        "label": "Function"
                      }
                    ],
                    "type": "array",
                    "label": "Tool Calls"
                  },
                  {
                    "name": "refusal",
                    "type": "text",
                    "label": "Refusal"
                  },
                  {
                    "name": "annotations",
                    "spec": [
                      {
                        "name": "type",
                        "type": "text",
                        "label": "Type"
                      },
                      {
                        "name": "url_citation",
                        "spec": [
                          {
                            "name": "end_index",
                            "type": "number",
                            "label": "End Index"
                          },
                          {
                            "name": "start_index",
                            "type": "number",
                            "label": "Start Index"
                          },
                          {
                            "name": "title",
                            "type": "text",
                            "label": "Title"
                          },
                          {
                            "name": "url",
                            "type": "text",
                            "label": "URL"
                          }
                        ],
                        "type": "collection",
                        "label": "URL Citation"
                      }
                    ],
                    "type": "array",
                    "label": "Annotations"
                  }
                ],
                "type": "collection",
                "label": "Message"
              }
            ],
            "type": "array",
            "label": "Choices"
          },
          {
            "name": "usage",
            "spec": [
              {
                "name": "prompt_tokens",
                "type": "number",
                "label": "Prompt Tokens"
              },
              {
                "name": "completion_tokens",
                "type": "text",
                "label": "Completion Tokens"
              },
              {
                "name": "total_tokens",
                "type": "number",
                "label": "Total Tokens"
              },
              {
                "name": "prompt_tokens_details",
                "spec": [
                  {
                    "name": "cached_tokens",
                    "type": "uinteger",
                    "label": "Cached Tokens"
                  },
                  {
                    "name": "text_tokens",
                    "type": "uinteger",
                    "label": "Text Tokens"
                  },
                  {
                    "name": "image_tokens",
                    "type": "uinteger",
                    "label": "Image Tokens"
                  },
                  {
                    "name": "audio_tokens",
                    "type": "uinteger",
                    "label": "Audio Tokens"
                  }
                ],
                "type": "collection",
                "label": "Prompt Tokens Details"
              },
              {
                "name": "completion_tokens_details",
                "spec": [
                  {
                    "name": "reasoning_tokens",
                    "type": "uinteger",
                    "label": "Reasoning Tokens"
                  },
                  {
                    "name": "text_tokens",
                    "type": "uinteger",
                    "label": "Text Tokens"
                  },
                  {
                    "name": "audio_tokens",
                    "type": "uinteger",
                    "label": "Audio Tokens"
                  },
                  {
                    "name": "accepted_prediction_tokens",
                    "type": "uinteger",
                    "label": "Accepted Prediction Tokens"
                  },
                  {
                    "name": "rejected_prediction_tokens",
                    "type": "uinteger",
                    "label": "Rejected Prediction Tokens"
                  }
                ],
                "type": "collection",
                "label": "Completion Tokens Details"
              }
            ],
            "type": "collection",
            "label": "Usage"
          },
          {
            "name": "service_tier",
            "type": "text",
            "label": "Service Tier"
          },
          {
            "name": "system_fingerprint",
            "type": "text",
            "label": "System Fingerprint"
          }
        ],
        "advanced": true
      }
    },
    {
      "id": 4,
      "module": "perplexity-ai:createAChatCompletion",
      "version": 1,
      "parameters": {
        "__IMTCONN__": 3614405
      },
      "mapper": {
        "model": "sonar",
        "messages": [
          {
            "content": "You are a competitive intelligence analyst specializing in market research and strategic forecasting.\nYour task is to monitor and summarize recent external signals (from the last 90 days) that could influence {company_name} or the {industry} at large.\n\nUse a neutral, analytical tone suitable for executive-level briefings.\nFocus on gathering 2–3 high-impact signals or market trends sourced from recent news, press releases, or authoritative commentary that could shape strategic decisions or signal directional movement.\n\nFor each signal you include, provide:\n\nSource or publication (e.g., Bloomberg, WSJ, TechCrunch)\n\nDate of publication\n\nSummary of the development (2–3 concise sentences)\n\nPotential strategic impact (e.g., competitive pressure, regulation, M&A, innovation)\n\nBe specific and data-informed where possible. Prioritize trends related to:\n\nMergers & acquisitions\n\nRegulatory changes\n\nKey competitor movements\n\nEmerging technologies or shifts in customer behavior\n\nInvestment flows or funding news\n\nMacroeconomic or geopolitical changes affecting the sector\n\nConclude with a short paragraph offering your synthesis of what these signals might suggest for {company_name}'s near-term strategic posture or competitive positioning.",
            "role": "user"
          }
        ],
        "max_tokens": "400",
        "temperature": ".6",
        "web_search_options": {
          "search_context_size": "medium"
        },
        "top_p": "1",
        "top_k": "1"
      },
      "metadata": {
        "designer": {
          "x": 1081,
          "y": -7,
          "name": "Scan for External Signals"
        },
        "restore": {
          "parameters": {
            "__IMTCONN__": {
              "label": "My Perplexity connection",
              "data": {
                "scoped": "true",
                "connection": "perplexity-ai"
              }
            }
          },
          "expect": {
            "model": {
              "mode": "chose",
              "label": "sonar"
            },
            "messages": {
              "mode": "chose",
              "items": [
                {
                  "role": {
                    "mode": "chose",
                    "label": "User"
                  }
                }
              ]
            },
            "web_search_options": {
              "nested": {
                "search_context_size": {
                  "mode": "chose",
                  "label": "Medium"
                }
              }
            },
            "search_domain_filter": {
              "mode": "chose"
            },
            "search_recency_filter": {
              "mode": "chose",
              "label": "Empty"
            },
            "return_images": {
              "mode": "chose"
            },
            "return_related_questions": {
              "mode": "chose"
            }
          }
        },
        "parameters": [
          {
            "name": "__IMTCONN__",
            "type": "account:perplexity-ai",
            "label": "Connection",
            "required": true
          }
        ],
        "expect": [
          {
            "name": "model",
            "type": "select",
            "label": "Model",
            "required": true
          },
          {
            "name": "messages",
            "type": "array",
            "label": "Messages",
            "required": true,
            "spec": [
              {
                "name": "content",
                "type": "text",
                "label": "Content",
                "required": true
              },
              {
                "name": "role",
                "type": "select",
                "label": "Role",
                "options": [
                  {
                    "label": "User",
                    "value": "user"
                  },
                  {
                    "label": "Assistant",
                    "value": "assistant"
                  },
                  {
                    "label": "System",
                    "value": "system"
                  }
                ],
                "required": true
              }
            ]
          },
          {
            "name": "max_tokens",
            "type": "number",
            "label": "Max Tokens"
          },
          {
            "name": "temperature",
            "type": "number",
            "label": "Temperature",
            "validate": {
              "max": 1.999,
              "min": 0
            }
          },
          {
            "name": "web_search_options",
            "type": "collection",
            "label": "Web Search Options",
            "spec": [
              {
                "name": "search_context_size",
                "type": "select",
                "label": "Search Context Size",
                "validate": {
                  "enum": [
                    "low",
                    "medium",
                    "high"
                  ]
                }
              }
            ]
          },
          {
            "name": "top_p",
            "type": "number",
            "label": "Top P",
            "validate": {
              "max": 1,
              "min": 0
            }
          },
          {
            "name": "top_k",
            "type": "number",
            "label": "Top K",
            "validate": {
              "max": 2048,
              "min": 0
            }
          },
          {
            "name": "presence_penalty",
            "type": "number",
            "label": "Presence Penalty",
            "validate": {
              "max": 2,
              "min": -2
            }
          },
          {
            "name": "frequency_penalty",
            "type": "number",
            "label": "Frequency Penalty",
            "validate": {
              "min": 0
            }
          },
          {
            "name": "search_domain_filter",
            "type": "array",
            "label": "Search Domain Filter",
            "spec": {
              "type": "text",
              "name": "value"
            }
          },
          {
            "name": "search_recency_filter",
            "type": "select",
            "label": "Search Recency Filter",
            "validate": {
              "enum": [
                "month",
                "week",
                "day",
                "hour"
              ]
            }
          },
          {
            "name": "return_images",
            "type": "boolean",
            "label": "Return Images"
          },
          {
            "name": "return_related_questions",
            "type": "boolean",
            "label": "Return Related Questions"
          }
        ],
        "advanced": true
      }
    },
    {
      "id": 5,
      "module": "salesforce:updateARecord",
      "version": 3,
      "metadata": {
        "designer": {
          "x": 1473,
          "y": -10,
          "name": "Update CRM with Research Outputs",
          "messages": [
            {
              "category": "setup",
              "severity": "error",
              "message": "Value must not be empty."
            }
          ]
        }
      }
    }
  ],
  "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": "us1.make.com",
    "notes": [
      {
        "moduleIds": [
          1
        ],
        "content": "<p>Use a different CRM? Replace this module with your CRM's node.</p><p></p><p>Need help? Ping <a href=\"https://Need help? Ping Nate Shelly on LinkedIn\" target=\"_blank\">Nate Shelly</a></p>",
        "isFilterNote": false,
        "metadata": {
          "color": "#9138FE"
        }
      },
      {
        "moduleIds": [
          5
        ],
        "content": "<p>Use a different CRM? Replace this module with your CRM's node.</p><p></p><p>Need help? Ping <a href=\"https://Need help? Ping Nate Shelly on LinkedIn\" target=\"_blank\">Nate Shelly</a></p>",
        "isFilterNote": false,
        "metadata": {
          "color": "#9138FE"
        }
      }
    ]
  }
}