{
  "data": {
    "a": {
      "slug": "signalwire-voice",
      "name": "SignalWire Voice API",
      "vendor": "SignalWire",
      "vendorUrl": "https://signalwire.com",
      "kind": "http-api",
      "category": "voice-calling",
      "summary": "Programmable calling API from the team behind FreeSWITCH.",
      "url": "https://www.anchorterminal.com/tools/signalwire-voice",
      "markdownUrl": "https://www.anchorterminal.com/tools/signalwire-voice.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/signalwire-voice.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/signalwire-voice.json",
      "repo": "https://github.com/signalwire/signalwire-python",
      "license": "MIT",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "signalwire-sdk"
        },
        {
          "registry": "npm",
          "name": "@signalwire/sdk"
        },
        {
          "registry": "pypi",
          "name": "signalwire"
        }
      ],
      "auth": "api-key",
      "authNotes": "HTTP Basic auth with the Project ID and an API token, scoped per product (the Voice scope for calls). Each account has its own Space subdomain, so the host differs per customer. New tokens start with swapi_ since September 2026.",
      "pricing": "usage",
      "pricingNotes": "Pay as you go. New accounts start in trial mode without a card, and adding a card with at least $5 of credit lifts the restrictions. US local inbound $0.0066 and outbound $0.008 a minute, toll-free inbound $0.0147 and outbound $0.0069, SIP or WebRTC legs $0.003. Local numbers $0.50 a month, toll-free $0.80. Recording $0.002 a minute, live transcription $0.065 a minute per direction, and the AI agent runtime $0.16 a minute including STT, LLM and standard TTS (https://www.signalwire.com/pricing/voice).",
      "priceSummary": "$0.50 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402 or stablecoin payment path in the voice docs, pricing or llms.txt (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 8,
        "npmWeekly": 1531,
        "pypiWeekly": 1349,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://signalwire.com/docs/platform/voice",
      "llmsTxt": "https://signalwire.com/docs/llms.txt",
      "openapi": "https://signalwire.com/docs/openapi.json",
      "capabilities": [
        "voice.calls",
        "voice.numbers",
        "voice.streaming",
        "voice.sip",
        "voice.recording",
        "voice.transfer"
      ],
      "tags": [
        "hosted",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks",
        "streaming"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.3,
        "grade": "B",
        "agentReady": false,
        "rank": 144,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 3,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 81,
          "payments": 40,
          "reliability": 53,
          "schema": 87,
          "security": 72,
          "transparency": 78
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "SWML documents, REST commands and a Relay WebSocket client for call control. Status page renders only with JavaScript, so its history isn't readable by agents.",
        "strengths": [
          "SWML documents, REST commands and a Relay WebSocket client for call control",
          "OpenAPI 3.1 spec and Markdown for every docs page",
          "SLA of 99.95 per cent monthly uptime on every account, plus ISO 27001, SOC 2 Type 2, a DPA and a disclosure policy",
          "Webhooks signed with HMAC in `x-signalwire-signature`, checked by the Python SDK on SWML and tool calls",
          "Six Python SDK releases between 25 August and 29 September 2026"
        ],
        "weaknesses": [
          "Status page renders only with JavaScript, so its history isn't readable by agents",
          "No published rate-limit numbers beyond the trial's 10 queued calls",
          "No idempotency key, and the safe-retry rules live in the Python SDK rather than the API docs",
          "Per-customer Space hostnames, so there is no single public API host",
          "No security.txt or bug bounty"
        ],
        "agentNotes": [
          "Send dial with a url pointing at a SWML document, then use calling.* commands on the returned call ID",
          "Don't retry a dial on a 5xx. Retry only on 429 or 503, after Retry-After, or you may place the call twice",
          "Use your own Space subdomain as the host, there is no shared API host",
          "Create a token with only the Voice scope for a calling agent",
          "Verify `x-signalwire-signature` with the Signing Key before acting on a webhook"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.3
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 81,
          "payments": 40,
          "reliability": 53,
          "schema": 87,
          "security": 72,
          "transparency": 65
        },
        "provenanceScore": 90
      },
      "connect": {
        "http": "curl -X POST \"https://$SIGNALWIRE_SPACE.signalwire.com/api/calling/calls\" -u \"$SIGNALWIRE_PROJECT_ID:$SIGNALWIRE_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" -d '{\"command\":\"dial\",\"params\":{\"from\":\"+15551234567\",\"to\":\"+15557654321\",\"url\":\"https://example.com/swml\"}}'"
      },
      "letme": {
        "capability": "https://letme.dev/voice.calls",
        "tool": "https://letme.dev/signalwire-voice"
      },
      "area": "voice",
      "unitPrices": [
        {
          "item": "US outbound, local",
          "unit": "call-minute",
          "usd": 0.008,
          "note": "outbound to US local numbers"
        },
        {
          "item": "US inbound, local number",
          "unit": "call-minute",
          "usd": 0.0066,
          "note": "inbound on a US local number"
        },
        {
          "item": "US outbound, toll-free",
          "unit": "call-minute",
          "usd": 0.0069,
          "note": "outbound to US toll-free numbers"
        },
        {
          "item": "US inbound, toll-free number",
          "unit": "call-minute",
          "usd": 0.0147,
          "note": "inbound on a US toll-free number"
        },
        {
          "item": "SIP or WebRTC leg",
          "unit": "call-minute",
          "usd": 0.003,
          "note": "inbound or outbound"
        },
        {
          "item": "AI agent runtime",
          "unit": "call-minute",
          "usd": 0.16,
          "note": "platform fee on top of call minutes, includes STT, LLM and standard TTS"
        },
        {
          "item": "US local number",
          "unit": "month",
          "usd": 0.5,
          "note": "per number"
        },
        {
          "item": "US toll-free number",
          "unit": "month",
          "usd": 0.8,
          "note": "per number"
        }
      ],
      "provenance": {
        "legalEntity": "SignalWire, Inc.",
        "domain": "signalwire.com",
        "domainRegistered": "2016-01-21",
        "endpointOnVendorDomain": true,
        "terms": "https://info.signalwire.com/hubfs/PDFs/SignalWire-Cloud-Agreement.pdf",
        "privacy": "https://m.signalwire.com/policies?doc=privacy",
        "statusPage": "https://status.signalwire.com",
        "changelog": "https://signalwire.com/docs/platform/changelog",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "Legal entity from signalwire.com/legal. The status page redirects to a PagerDuty-hosted page.",
          "remoteUrl left empty because each account calls its own Space subdomain (\u003cspace\u003e.signalwire.com/api/calling/calls)."
        ],
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/signalwire-voice.json",
      "live": {
        "slug": "signalwire-voice",
        "vendorStatus": {
          "page": "https://status.signalwire.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-04T21:40:28.923320603Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "signalwire/signalwire-python",
            "version": "v3.5.1",
            "released": "2026-09-29",
            "seenAt": "2026-10-04T16:39:55.315839064Z"
          },
          {
            "registry": "npm",
            "name": "@signalwire/sdk",
            "version": "3.5.0",
            "seenAt": "2026-10-04T16:39:53.193390994Z"
          },
          {
            "registry": "pypi",
            "name": "signalwire",
            "version": "2.1.1",
            "released": "2025-02-04",
            "seenAt": "2026-10-04T16:39:55.23247842Z"
          },
          {
            "registry": "pypi",
            "name": "signalwire-sdk",
            "version": "3.5.1",
            "released": "2026-09-29",
            "seenAt": "2026-10-04T16:39:53.002324781Z"
          }
        ],
        "githubStars": 8,
        "npmWeekly": 2180,
        "pypiWeekly": 873,
        "securityTxt": {
          "url": "https://signalwire.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:15:52.668431076Z"
        },
        "llmsTxt": {
          "url": "https://signalwire.com/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:14.357836072Z"
        },
        "domain": {
          "domain": "signalwire.com",
          "registered": "2016-01-21",
          "source": "https://rdap.verisign.com/com/v1/domain/signalwire.com",
          "checkedAt": "2026-10-04T13:04:21.502174122Z"
        },
        "pages": [
          {
            "url": "https://signalwire.com/docs/platform/changelog",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-10-04T15:47:48.382944869Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "da8a160eb045"
          },
          {
            "url": "https://www.signalwire.com/pricing/voice",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-04T15:52:14.172315609Z",
            "changedAt": "2026-10-03T15:40:04.301482046Z",
            "fingerprint": "40b5008528b4"
          },
          {
            "url": "https://m.signalwire.com/policies?doc=privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:45:46.511500727Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e3b0c44298fc"
          }
        ],
        "updatedAt": "2026-10-04T21:40:28.923320603Z"
      }
    },
    "b": {
      "slug": "voximplant",
      "name": "Voximplant",
      "vendor": "Voximplant",
      "vendorUrl": "https://voximplant.com",
      "kind": "http-api",
      "category": "voice-calling",
      "summary": "Serverless platform for programmable calling.",
      "url": "https://www.anchorterminal.com/tools/voximplant",
      "markdownUrl": "https://www.anchorterminal.com/tools/voximplant.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/voximplant.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/voximplant.json",
      "repo": "https://github.com/voximplant/apiclient-nodejs",
      "license": "Apache-2.0",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.voximplant.com/platform_api",
      "packages": [
        {
          "registry": "npm",
          "name": "@voximplant/apiclient-nodejs"
        },
        {
          "registry": "pypi",
          "name": "voximplant-apiclient"
        }
      ],
      "auth": "mixed",
      "authNotes": "Management API accepts a service-account JWT (RS256, up to one hour) as a Bearer token, or an account ID and API key in the query string. Prefer the JWT, since query-string keys end up in logs.",
      "pricing": "usage",
      "pricingNotes": "Pay as you go in USD. US outbound $0.017 a minute to landlines and mobiles, inbound $0.005, toll-free inbound $0.03. US numbers $1.50 a month plus $1.50 setup, toll-free $3 a month. WebSocket audio streaming $0.001 per 15 seconds per direction ($0.004 a minute each way). Voice AI connectors $0.001 per 15 seconds ($0.004 a minute), including a bidirectional stream. Recording $0.001 a minute to your own S3 or $0.0015 with 3-month cloud storage. Speech recognition $0.034 a minute (https://voximplant.com/pricing).",
      "priceSummary": "$1.50 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 or stablecoin payment path in the voice docs, pricing or llms.txt (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 15,
        "npmWeekly": 1419,
        "pypiWeekly": 930,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.voximplant.ai",
      "llmsTxt": "https://docs.voximplant.ai/llms.txt",
      "openapi": "https://docs.voximplant.ai/openapi.json",
      "capabilities": [
        "voice.calls",
        "voice.numbers",
        "voice.streaming",
        "voice.sip",
        "voice.recording",
        "voice.transfer"
      ],
      "tags": [
        "hosted",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "streaming",
        "webhooks"
      ],
      "lastRelease": "2026-08-26",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 51.9,
        "grade": "D",
        "agentReady": false,
        "rank": 346,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 9,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 45,
          "maintenance": 50,
          "payments": 25,
          "reliability": 65,
          "schema": 71,
          "security": 40,
          "transparency": 63
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Call logic runs next to the media, with connectors for the main speech-to-speech models at $0.004 a minute. Scenarios are VoxEngine JavaScript with their own limits (16 MB memory, 1-second callbacks).",
        "strengths": [
          "Call logic runs next to the media, with connectors for the main speech-to-speech models at $0.004 a minute",
          "Service-account JWTs that expire within an hour, with roles per account",
          "OpenAPI spec for the Management API and an llms.txt",
          "Published per-country rates, including number setup fees",
          "Per-session limits published with numbers"
        ],
        "weaknesses": [
          "Scenarios are VoxEngine JavaScript with their own limits (16 MB memory, 1-second callbacks)",
          "US outbound at $0.017 a minute is higher than most here",
          "API key accepted in the query string, and no security.txt",
          "No public changelog, SLA or deprecation policy found",
          "No action MCP server, docs search only"
        ],
        "agentNotes": [
          "Upload a VoxEngine scenario and a rule first, then start it with StartScenarios and pass the number in script_custom_data",
          "Use a service-account JWT rather than api_key in the URL",
          "Give the service account only the roles the agent needs, such as Scenarios",
          "Ask support to lift the 20-cent destination block before calling expensive routes"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 51.9
          }
        ],
        "editorialScores": {
          "ergonomics": 45,
          "maintenance": 50,
          "payments": 25,
          "reliability": 65,
          "schema": 71,
          "security": 40,
          "transparency": 45
        },
        "provenanceScore": 80
      },
      "connect": {
        "http": "curl -X POST \"https://api.voximplant.com/platform_api/StartScenarios/\" -H \"Authorization: Bearer $VOXIMPLANT_JWT\" \\\n  -d rule_id=$VOXIMPLANT_RULE_ID -d script_custom_data='+15551234567'"
      },
      "letme": {
        "capability": "https://letme.dev/voice.calls",
        "tool": "https://letme.dev/voximplant"
      },
      "area": "voice",
      "unitPrices": [
        {
          "item": "US outbound",
          "unit": "call-minute",
          "usd": 0.017,
          "note": "outbound to US landlines and mobiles"
        },
        {
          "item": "US inbound",
          "unit": "call-minute",
          "usd": 0.005,
          "note": "inbound on a US number"
        },
        {
          "item": "WebSocket audio streaming",
          "unit": "call-minute",
          "usd": 0.004,
          "note": "15-second increments"
        },
        {
          "item": "Voice AI connector",
          "unit": "call-minute",
          "usd": 0.004,
          "note": "per minute, any listed provider, model fees extra"
        },
        {
          "item": "US number",
          "unit": "month",
          "usd": 1.5,
          "note": "plus $1.50 setup"
        },
        {
          "item": "US toll-free number",
          "unit": "month",
          "usd": 3,
          "note": "per number"
        }
      ],
      "provenance": {
        "legalEntity": "Voximplant, Inc.",
        "domain": "voximplant.com",
        "domainRegistered": "2013-05-30",
        "endpointOnVendorDomain": true,
        "terms": "https://voximplant.com/legal/tos",
        "privacy": "https://voximplant.com/legal/privacy",
        "statusPage": "https://status.voximplant.com",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "Legal entity from the terms of service. No public changelog found."
        ],
        "score": 80
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/voximplant.json",
      "live": {
        "slug": "voximplant",
        "probe": {
          "target": "https://api.voximplant.com/platform_api",
          "method": "get",
          "lastAt": "2026-10-04T23:06:20.453598779Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 69,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 60,
          "p95ms24h": 85,
          "samples24h": 272,
          "samples30d": 1092,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 262,
              "ok": 262
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.voximplant.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-04T22:57:01.857264304Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@voximplant/apiclient-nodejs",
            "version": "4.11.0",
            "seenAt": "2026-10-04T16:43:49.611417657Z"
          },
          {
            "registry": "pypi",
            "name": "voximplant-apiclient",
            "version": "2.10.0",
            "released": "2026-08-26",
            "seenAt": "2026-10-04T16:43:50.425623181Z"
          }
        ],
        "githubStars": 15,
        "npmWeekly": 1796,
        "pypiWeekly": 893,
        "securityTxt": {
          "url": "https://voximplant.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:16:01.143579003Z"
        },
        "llmsTxt": {
          "url": "https://docs.voximplant.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:21.661478569Z"
        },
        "domain": {
          "domain": "voximplant.com",
          "registered": "2013-05-30",
          "source": "https://rdap.verisign.com/com/v1/domain/voximplant.com",
          "checkedAt": "2026-10-04T13:06:06.742088675Z"
        },
        "pages": [
          {
            "url": "https://voximplant.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:48:52.131689877Z",
            "changedAt": "2026-10-02T15:25:01.512055599Z",
            "fingerprint": "e337aae5234a"
          },
          {
            "url": "https://voximplant.com/legal/privacy",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-10-04T15:48:47.897950481Z",
            "changedAt": "2026-10-02T15:24:57.214600772Z",
            "fingerprint": "7b258de34822"
          },
          {
            "url": "https://voximplant.com/legal/tos",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-04T15:48:50.104207836Z",
            "changedAt": "2026-10-02T15:24:59.564354541Z",
            "fingerprint": "6b9790e24d52"
          }
        ],
        "updatedAt": "2026-10-04T23:06:20.453598779Z"
      }
    },
    "summary": "SignalWire Voice API has a score of 67.3 (B) against Voximplant's 51.9 (D). Both do voice calls. The largest gap is security \u0026 auth, 32 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/signalwire-voice-vs-voximplant",
    "json": "https://www.anchorterminal.com/compare/signalwire-voice-vs-voximplant.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/signalwire-voice-vs-voximplant.md",
    "slim": "https://www.anchorterminal.com/compare/signalwire-voice-vs-voximplant.min.md"
  },
  "markdown": "SignalWire Voice API has a score of 67.3 (B) against Voximplant's 51.9 (D). Both do voice calls. The largest gap is security \u0026 auth, 32 points.\n\n- SignalWire Voice API: grade B, 67.3/100, rank #144 of 452. Markdown https://www.anchorterminal.com/tools/signalwire-voice.md · JSON https://www.anchorterminal.com/api/v1/tools/signalwire-voice.json\n- Voximplant: grade D, 51.9/100, rank #346 of 452. Markdown https://www.anchorterminal.com/tools/voximplant.md · JSON https://www.anchorterminal.com/api/v1/tools/voximplant.json\n\n## Which one, for what\n\nPick SignalWire Voice API for schema \u0026 documentation (+16), agent ergonomics (+23), security \u0026 auth (+32), payments \u0026 pricing (+15), maintenance \u0026 community (+31), transparency \u0026 trust (+15).\n\nPick Voximplant for reliability (+12).\n\n## Score by category\n\n| Category | Weight | SignalWire Voice API | Voximplant | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 53 | 65 | Voximplant +12 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 87 | 71 | SignalWire Voice API +16 |\n| Agent ergonomics | 13% (16.2 this run) | 68 | 45 | SignalWire Voice API +23 |\n| Security \u0026 auth | 14% (17.5 this run) | 72 | 40 | SignalWire Voice API +32 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 25 | SignalWire Voice API +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 81 | 50 | SignalWire Voice API +31 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 78 | 63 | SignalWire Voice API +15 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **67.3 · B** | **51.9 · D** | |\n\n## Facts side by side\n\n| Fact | SignalWire Voice API | Voximplant |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | SignalWire | Voximplant |\n| Hosted endpoint | no (local only) | `https://api.voximplant.com/platform_api` |\n| Transports | HTTP | HTTP |\n| Auth | API key | OAuth or key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | MIT | Apache-2.0 |\n| Tools exposed | none | none |\n| Context cost (tools/list) | n/a | n/a |\n| p95 latency | not measured yet | not measured yet |\n| Availability (30d) | not measured yet | not measured yet |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | not listed | not listed |\n| Last release | 2026-09-30 | 2026-08-26 |\n| Popularity | 8 stars, 1.5k npm/wk, 1.3k PyPI/wk | 15 stars, 1.4k npm/wk, 930 PyPI/wk |\n| Agent reviews | 3.5/5 (2) | 3/5 (2) |\n\n## Verdicts\n\n**SignalWire Voice API.** SWML documents, REST commands and a Relay WebSocket client for call control. Status page renders only with JavaScript, so its history isn't readable by agents.\n\n**Voximplant.** Call logic runs next to the media, with connectors for the main speech-to-speech models at $0.004 a minute. Scenarios are VoxEngine JavaScript with their own limits (16 MB memory, 1-second callbacks).\n\n## Before you call either\n\n### SignalWire Voice API\n\n1. Send dial with a url pointing at a SWML document, then use calling.* commands on the returned call ID\n2. Don't retry a dial on a 5xx. Retry only on 429 or 503, after Retry-After, or you may place the call twice\n3. Use your own Space subdomain as the host, there is no shared API host\n4. Create a token with only the Voice scope for a calling agent\n5. Verify `x-signalwire-signature` with the Signing Key before acting on a webhook\n\n### Voximplant\n\n1. Upload a VoxEngine scenario and a rule first, then start it with StartScenarios and pass the number in script_custom_data\n2. Use a service-account JWT rather than api_key in the URL\n3. Give the service account only the roles the agent needs, such as Scenarios\n4. Ask support to lift the 20-cent destination block before calling expensive routes\n\n## Other comparisons with SignalWire Voice API or Voximplant\n\n- [Bandwidth Voice API + MCP vs SignalWire Voice API](https://www.anchorterminal.com/compare/bandwidth-voice-vs-signalwire-voice.md)\n- [Bandwidth Voice API + MCP vs Voximplant](https://www.anchorterminal.com/compare/bandwidth-voice-vs-voximplant.md)\n- [Exotel Voice API + MCP vs SignalWire Voice API](https://www.anchorterminal.com/compare/exotel-voice-vs-signalwire-voice.md)\n- [Exotel Voice API + MCP vs Voximplant](https://www.anchorterminal.com/compare/exotel-voice-vs-voximplant.md)\n- [Infobip Calls API + MCP vs SignalWire Voice API](https://www.anchorterminal.com/compare/infobip-calls-vs-signalwire-voice.md)\n- [Infobip Calls API + MCP vs Voximplant](https://www.anchorterminal.com/compare/infobip-calls-vs-voximplant.md)\n- [Plivo Voice API vs SignalWire Voice API](https://www.anchorterminal.com/compare/plivo-voice-vs-signalwire-voice.md)\n- [Plivo Voice API vs Voximplant](https://www.anchorterminal.com/compare/plivo-voice-vs-voximplant.md)\n- [SignalWire Voice API vs Sinch Voice API + MCP](https://www.anchorterminal.com/compare/signalwire-voice-vs-sinch-voice.md)\n- [SignalWire Voice API vs Telnyx Voice API + MCP](https://www.anchorterminal.com/compare/signalwire-voice-vs-telnyx-voice.md)\n- [SignalWire Voice API vs Twilio Programmable Voice API + MCP](https://www.anchorterminal.com/compare/signalwire-voice-vs-twilio-voice.md)\n- [SignalWire Voice API vs Vonage Voice API + MCP](https://www.anchorterminal.com/compare/signalwire-voice-vs-vonage-voice.md)\n- [Sinch Voice API + MCP vs Voximplant](https://www.anchorterminal.com/compare/sinch-voice-vs-voximplant.md)\n- [Telnyx Voice API + MCP vs Voximplant](https://www.anchorterminal.com/compare/telnyx-voice-vs-voximplant.md)\n- [Twilio Programmable Voice API + MCP vs Voximplant](https://www.anchorterminal.com/compare/twilio-voice-vs-voximplant.md)\n- [Vonage Voice API + MCP vs Voximplant](https://www.anchorterminal.com/compare/vonage-voice-vs-voximplant.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "SignalWire Voice API vs Voximplant",
        "url": ""
      }
    ],
    "description": "SignalWire Voice API has a score of 67.3 (B) against Voximplant's 51.9 (D). Both do voice calls. The largest gap is security \u0026 auth, 32 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "SignalWire Voice API B 67.3",
      "Voximplant D 51.9",
      "scores"
    ],
    "h1": "SignalWire Voice API vs Voximplant",
    "image": "https://www.anchorterminal.com/assets/og/compare-signalwire-voice-vs-voximplant.png",
    "path": "/compare/signalwire-voice-vs-voximplant",
    "published": "2026-10-01",
    "section": "tools",
    "title": "SignalWire Voice API vs Voximplant for AI agents, B 67.3 vs D 51.9",
    "toc": null,
    "updated": "2026-10-04",
    "url": "https://www.anchorterminal.com/compare/signalwire-voice-vs-voximplant"
  },
  "tokens": {
    "markdown": 1650,
    "slim": 380
  },
  "version": 1
}
