Structured Data Alternative
# support
b
Structured Data is now deprecated and structured Outputs is the new way to go. There doesn't seem to be a structured output that can be generated during assistant creation unlike the structured data. The docs mention to save the id of the structured output to use later so does this mean dynamic creation of structured output during assistant creation is not possible outside manual integration?
v
You are correct: Structured outputs must be created first, and their IDs saved for later use—dynamic creation during assistant creation is not supported outside manual integration. Example workflow:
Copy code
json
// 1. Create structured output (POST /structured-output)
{ "name": "Support Ticket", "schema": { ... } }
// Save the returned "id"

// 2. Create assistant, referencing the structured output ID
{ "artifactPlan": { "structuredOutputIds": ["<structured_output_id>"] }, ... }
You must manually create the structured output and then attach it to the assistant using its ID. For more details, see the [Structured Outputs Quickstart](https://docs.vapi.ai/assistants/structured-outputs-quickstart). Source: - [Structured outputs quickstart](https://docs.vapi.ai/assistants/structured-outputs-quickstart)
j
You're right, Vapi's Structured Outputs require pre-created schemas that you reference by ID, unlike the old Structured Data approach. This means you can't dynamically generate new output schemas during assistant creation through the dashboard alone. You'll need to create your schemas via API first, grab the IDs, then reference them when setting up assistants. It's an extra step, but it gives you better reusability across multiple assistants. Are you looking to generate schemas programmatically for each assistant, or would a library of reusable schemas work for your use case? @Battawy
c
Hi Battawy, You're correct — structured outputs must be created first (via API or Dashboard) and their returned IDs referenced when creating or updating an assistant. You cannot inline a new structured-output schema inside the assistant creation flow in the Dashboard. Options: - Programmatic approach (recommended for automation): 1. POST /structured-output with body including "type": "ai", name, and schema (see docs: https://docs.vapi.ai/api-reference/structured-outputs/structured-output-controller-create). 2. Save the returned id. 3. Create/update assistant with artifactPlan.structuredOutputIds referencing that id. - Reusable library approach: - Pre-create a set of structured outputs you attach to multiple assistants as needed (see quickstart: https://docs.vapi.ai/assistants/structured-outputs-quickstart).