Feature Requests

a list of issues
Here's the full list of actual Vapi platform issues I ran into while building this: Native Google Sheets tool is broken (google.sheets.row.append) — every call failed with Missing Nango configuration for tool type: google.sheets.row.append. Confirmed via their own /credential API returning an empty list — the integration was never actually wired up on their backend, despite the tool existing and being attached to the assistant. The dashboard "Connect" flow lies — clicking Connect on the Google Sheets/Calendar provider integration shows a "success" popup, but nothing gets registered server-side. This matches multiple reports in Vapi's own community forum, so it's a known, unresolved issue, not something specific to this account. Native Google Calendar tools are broken the same way (google.calendar.event.create, google.calendar.availability.check) — same missing-Nango-credential problem, confirmed by the same empty /credential check. Tool PATCH does a full replace, not a merge — this one actually cost us a real lead. Updating just a tool's function schema (without re-sending server) silently wiped the tool's webhook URL, so it fell back to a dead URL and a caller's info was never saved. Vapi's docs don't warn that PATCH behaves this way. General write-endpoint instability — repeated 500s, 503s, and 504 timeouts specifically on POST/PATCH requests (creating/updating tools and assistants) throughout this build. GET requests were consistently fast and reliable; only writes were flaky, requiring retry logic on my end to get changes to actually stick. Net effect: none of Vapi's native integrations (Sheets, Calendar) were usable as shipped — everything you have working now bypasses them entirely with a custom webhook.
0
Feature request for Structured Outputs: some way to reorder fields in the builder.
In an AI-type structured output, fields appear to be generated in schema property order (result keys come back in that order too). So a field whose definition depends on another field can get filled in before the value it depends on exists. Concrete: say you have issue_found (boolean) and issue_reason (enum, must be none when issue_found is false). If issue_reason sits earlier in the property list, you get results with issue_found: false plus a real reason populated — a combo that field's own description forbids. Nothing errors, the schema validates, every value is a legal enum member. Hit this three times on different field pairs before I clocked what was happening. You can set order via PATCH by sending the properties object in the sequence you want, but the builder has no reorder control, so raw API is the only path — and PATCH on schema is a whole-object replace, so you're rebuilding the entire schema by hand and any later dashboard edit can silently revert it. Why it seems worth building: it's a UI affordance over behavior that already exists, so no new backend semantics. And the failure mode is invisible — when you see a self-contradictory result you blame the extraction model, not field order. Evaluation schemas are inherently chained (reason fields gated by booleans, a rationale field you want written first, severity depending on category), so anyone building a serious one runs into it. Ask in priority order: drag-to-reorder in the builder; a docs line stating property order determines generation order; stretch goal, declared dependencies so ordering gets validated instead of hand-managed. Semi-related gap: the builder also can't define enum values for a string field — allowed values only live in the description prose, while the API accepts a real enum array. Same shape of thing, where the UI quietly produces a weaker schema than you think you're building. Anyone else run into the ordering behavior, or am I misreading the mechanism?
1
·
under review
Load More