Microsip Api Documentation (2026)
HWND hWnd = FindWindow(L"MicroSIP", NULL);
if (hWnd)
// Send message
Q: Does MicroSIP have a REST API?
A: No. But you can wrap its DDE API with a local HTTP server (Node, Python, etc.) to expose REST endpoints.
Q: Can I receive call events (ringing, answered) in real time?
A: Not directly via DDE events. Instead, poll [Status] every 200ms or parse the --log CSV live.
Q: Is the API documented by the developer?
A: Officially, very little. This article synthesizes years of community reverse-engineering. Use stable commands only.
Q: Can I run MicroSIP on Linux under Wine?
A: Yes, but DDE may not work. Use command line only (no runtime control). microsip api documentation
Q: How do I pass a SIP URI like sip:user@domain?
A: Use --call "sip:user@domain" or DDE [Dial(sip:user@domain)].
MicroSIP is a lightweight, open-source Session Initiation Protocol (SIP) softphone for Microsoft Windows, known for its minimal resource usage (under 5 MB memory footprint) and reliance on the Windows native API rather than .NET or Qt frameworks. Unlike many VoIP clients, MicroSIP does not expose a RESTful or WebSocket API. Instead, it provides two primary programmatic control mechanisms:
This paper analyzes the official API documentation (available via microsip.exe /? and the source code comments) to evaluate its capabilities, limitations, and practical applications. HWND hWnd = FindWindow(L"MicroSIP", NULL); if (hWnd) //
Before diving into parameters, understand the two operational layers:
MicroSIP accepts command-line arguments for basic control:
# Make a call
MicroSIP.exe "sip:number@domain"
| Parameter | Description | Example |
|-----------|-------------|---------|
| --dn | Display Name | --dn "John Doe" |
| --user | SIP Username (auth ID) | --user 101 |
| --domain | SIP Domain / Registrar | --domain sip.mycompany.com |
| --password | SIP Password (plain text, be cautious) | --password secret123 |
| --proxy | Outbound proxy (optional) | --proxy 192.168.1.100:5060 |
| --stun | STUN server for NAT | --stun stun.l.google.com:19302 |
| --call | Immediately dial a number after launch | --call "5551234" |
| --autoanswer | Automatically answer incoming calls (0/1) | --autoanswer 1 |
| --dialplan | Prepend digits for external calls (e.g., 9 for outside line) | --dialplan "9,<.*>" |
| --show | Window state: normal, minimized, hidden | --show hidden |
| --debug | Enable SIP trace to file | --debug C:\logs\sip.log |
| --log | Log calls to CSV | --log C:\logs\calls.csv |
| --setvolume | Initial speaker volume (0–100) | --setvolume 80 |
| --micvolume | Microphone volume | --micvolume 90 | Q: Does MicroSIP have a REST API
MicroSIP stores all settings in a standard .ini file. You can programmatically read and write to this file to configure accounts, codecs, and network settings.
File Location:
By default, the configuration file is located in the user's AppData folder:
%APPDATA%\MicroSIP\microsip.ini
(Note: If you are using the portable version, the .ini file is in the same folder as the executable.)