Restart Session
Reboots the WhatsApp instance. Useful for fixing stuck sessions or applying settings.
Authentication Required
Login to swap the placeholders with your real Instance ID and Access Token.
Log InNo query parameters required
This endpoint doesn't expect data in the URL.
Best practices
Use this as a first troubleshooting step before deleting an instance.
Wait at least 30 seconds after a restart before sending messages.
The Self-Healing Mechanism: Mastering the /v2/session/restart Endpoint
The /v2/session/restart endpoint is the specialized "Soft Reboot" tool for your WhatsApp instance. In the complex world of WhatsApp automation—where network jitter, WebSocket timeouts, and engine de-syncs are common—a well-implemented restart strategy is the difference between a fragile integration and a production-grade communication system.
🏗️ The Anatomy of a Restart Orchestration
When you call restart, Wawp performs an atomic "Stop and Start" sequence within our cloud infrastructure:
- Engine Shutdown: The active WhatsApp-bridge process is signaled to close its connections cleanly and save its current authentication state to persistent storage.
- Environment Flush: The temporary caches and buffer memory of the isolated container are cleared to resolve any memory leaks or hanging processes.
- Engine Boot: A fresh bridge process is launched using the previously saved authentication keys.
- Resumption: The engine automatically attempts to re-establish the encrypted handshake with WhatsApp's servers.
🛡️ Strategic Best Practices
1. The "Auto-Healing" Pattern
Don't wait for a human to notice a problem. Your application should monitor the delivery status of outbound messages.
- The Recovery Flow: If you detect three consecutive "Message Failed" errors or if the
/v2/session/infoendpoint shows a status ofFAILED, trigger a/v2/session/restartautomatically. A single restart resolves approximately 85% of transient connection issues.
2. The 30-Second Stabilization Window
While the API returns a success message (200 OK) almost instantly, the internal handshake takes time.
- Developer Action: Implement a "Quiet Period" after a restart. We recommend waiting at least 30 seconds before resuming high-frequency automated message campaigns. This allows the engine to fully synchronize the message history and stabilize the WebSocket connection.
3. Avoiding the "Restart Loop"
A common mistake is restarting an instance every few seconds if it's not working.
- The Limit: If a restart doesn't transition the session to
WORKINGwithin 60 seconds, do not restart again immediately. Instead, check the/v2/session/inforesponse. If it shows SCAN_QR_CODE, it means the user has been logged out from the mobile app, and no amount of restarting will fix it—they must scan the QR code again.
💡 Industry-Standard Use Cases
A. Maintenance "Pulse"
For mission-critical bots (e.g., 24/7 bank alert systems), schedule a weekly restart during low-traffic windows (e.g., Sunday at 3 AM). This ensures the engine is always running on fresh resources and clears any long-term memory accumulation.
B. Post-Update Synchronization
If you update high-level instance configurations (like changing your Webhook URL or adding a new proxy), a restart is the cleanest way to ensure all underlying library settings are refreshed and applied across the environment.
⚠️ Common Pitfalls and Troubleshooting
Interruption of Active Queues
Restarting acts as a "hard stop" for the internal message queue. If you have 500 messages currently being processed for delivery, they will be purged from the transient buffer. Ensure your campaign logic can handle "Resuming" from where it left off by tracking message IDs in your own database.
Stuck in "STARTING" post-restart
This is usually caused by a conflict with the previous process. Wait 15 seconds and try one more restart. If the issue persists, use the /v2/session/stop command, wait 5 seconds, and then call /v2/session/start for a full lifecycle reset.
Summary of Capabilities:
- Perform an atomic reboot of the isolated engine.
- Resolve 85% of transient connectivity and de-sync issues.
- Preserve all session data and QR scan history.
- Refresh container resources without requiring user interaction.
Request Parameters
Configure the parameters required to interact with this endpoint. All query and body arguments are listed below with their details.
Request Body
Sent as a JSON objectstring | The 12-character ID of the instance Example: | ||
string | Your API Access Token Example: |
Request Samples
Use these ready-to-go code snippets to integrate our API into your project quickly and efficiently. Choose your preferred language and library.
Expected Responses
Explore all possible responses and outcomes from the server. We have documented each status code with data examples to make success and error handling easier.
Example
{
"name": "wawp-84729105",
"status": "STARTING",
"config": {
"webhooks": {
},
"proxy": null
}
}Command Palette
Search for a command to run...