Properties
| Name | Type | Description |
|---|---|---|
| numWords | number | This is the number of words that the customer has to say before the assistant will stop talking. Words like "stop", "actually", "no", etc. will always interrupt immediately regardless of this value. W |
| voiceSeconds | number | This is the seconds customer has to speak before the assistant stops talking. This uses the VAD (Voice Activity Detection) spike to determine if the customer has started speaking. Considerations: - A |
| backoffSeconds | number | This is the seconds to wait before the assistant will start talking again after being interrupted. Defaults to 1. @default 1 |
| acknowledgementPhrases | array | These are the phrases that will never interrupt the assistant, even if numWords threshold is met. These are typically acknowledgement or backchanneling phrases. |
| interruptionPhrases | array | These are the phrases that will always interrupt the assistant immediately, regardless of numWords. These are typically phrases indicating disagreement or desire to stop. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/StopSpeakingPlan",
"title": "StopSpeakingPlan",
"type": "object",
"properties": {
"numWords": {
"type": "number",
"description": "This is the number of words that the customer has to say before the assistant will stop talking.\n\nWords like \"stop\", \"actually\", \"no\", etc. will always interrupt immediately regardless of this value.\n\nWords like \"okay\", \"yeah\", \"right\" will never interrupt.\n\nWhen set to 0, `voiceSeconds` is used in addition to the transcriptions to determine the customer has started speaking.\n\nDefaults to 0.\n\n@default 0",
"minimum": 0,
"maximum": 10,
"example": 0
},
"voiceSeconds": {
"type": "number",
"description": "This is the seconds customer has to speak before the assistant stops talking. This uses the VAD (Voice Activity Detection) spike to determine if the customer has started speaking.\n\nConsiderations:\n- A lower value might be more responsive but could potentially pick up non-speech sounds.\n- A higher value reduces false positives but might slightly delay the detection of speech onset.\n\nThis is only used if `numWords` is set to 0.\n\nDefaults to 0.2\n\n@default 0.2",
"minimum": 0,
"maximum": 0.5,
"example": 0.2
},
"backoffSeconds": {
"type": "number",
"description": "This is the seconds to wait before the assistant will start talking again after being interrupted.\n\nDefaults to 1.\n\n@default 1",
"minimum": 0,
"maximum": 10,
"example": 1
},
"acknowledgementPhrases": {
"description": "These are the phrases that will never interrupt the assistant, even if numWords threshold is met.\nThese are typically acknowledgement or backchanneling phrases.",
"example": [
"i understand",
"i see",
"i got it",
"i hear you",
"im listening",
"im with you",
"right",
"okay",
"ok",
"sure",
"alright",
"got it",
"understood",
"yeah",
"yes",
"uh-huh",
"mm-hmm",
"gotcha",
"mhmm",
"ah",
"yeah okay",
"yeah sure"
],
"default": [
"i understand",
"i see",
"i got it",
"i hear you",
"im listening",
"im with you",
"right",
"okay",
"ok",
"sure",
"alright",
"got it",
"understood",
"yeah",
"yes",
"uh-huh",
"mm-hmm",
"gotcha",
"mhmm",
"ah",
"yeah okay",
"yeah sure"
],
"type": "array",
"items": {
"type": "string",
"maxLength": 240
}
},
"interruptionPhrases": {
"description": "These are the phrases that will always interrupt the assistant immediately, regardless of numWords.\nThese are typically phrases indicating disagreement or desire to stop.",
"example": [
"stop",
"shut",
"up",
"enough",
"quiet",
"silence",
"but",
"dont",
"not",
"no",
"hold",
"wait",
"cut",
"pause",
"nope",
"nah",
"nevermind",
"never",
"bad",
"actually"
],
"default": [
"stop",
"shut",
"up",
"enough",
"quiet",
"silence",
"but",
"dont",
"not",
"no",
"hold",
"wait",
"cut",
"pause",
"nope",
"nah",
"nevermind",
"never",
"bad",
"actually"
],
"type": "array",
"items": {
"type": "string",
"maxLength": 240
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/vapi-stopspeakingplan"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.