> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.vapi.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.vapi.ai/_mcp/server.

# API Request Node, Improved Retries, and Enhanced Message Controls

1. **HttpRequest Node Renamed to ApiRequest**: The `HttpRequest` workflow node has been renamed to [`ApiRequest`](https://api.vapi.ai/api#:~:text=ApiRequest), and can be accessed through `Assistant.model.workflow.nodes[type="api-request"]`. Key changes:
   * New support for POST requests with customizable headers and body
   * New async request support with `isAsync` flag
   * Task status messages for waiting, starting, failure and success states
     > **Warning**
     >
     > The `HttpRequest` node is now deprecated and will be removed in a future release. Please migrate to the new `ApiRequest` node.

2. **New Backoff and Retry Controls**: You can now configure [`Assistant.model.tools[type=dtmf].server.backoffPlan`](https://api.vapi.ai/api#:~:text=BackoffPlan) to handle failed requests with customizable retry strategies and delays.
   * Supports fixed or exponential backoff strategies
   * Configure `maxRetries` (up to 10) and `baseDelaySeconds` (up to 10 seconds)
   * Available in server configurations via `backoffPlan` property

3. **Enhanced Gather Node**: The [`Assistant.model.workflow.nodes[type=gather]`](https://api.vapi.ai/api#:~:text=Gather) node has been improved with the following changes:
   * Added `maxRetries` property to control retry attempts
   * Now accepts a single JsonSchema instead of an array
   * Removed default value for `confirmContent` property

4. **Improved Message Controls**: [`Assistant.messagePlan`](https://api.vapi.ai/api#:~:text=MessagePlan) has been improved with the following changes:
   * Increased `idleTimeoutSeconds` maximum from 30 to 60 seconds
   * Added `silenceTimeoutMessage` to customize call ending due to silence

5. **New Distilled Deepseek Model with Groq**: You can now select `deepseek-r1-distill-llama-70b` when using [Groq](https://api.vapi.ai/api#:~:text=Groq) as the provider in [`Assistant.model[provider='groq']`](https://api.vapi.ai/api#:~:text=UpdateCallDTO-,Assistant,-UpdateAssistantDTO)

6. **Edge Condition Updates**: Edge conditions now require explicit matching criteria to improve workflow control and readability. Semantic edges must specify a `matches` property while programmatic edges require a `booleanExpression` property to define transition logic.