application/x-www-form-urlencoded, both carry the same kind of params, and both sign requests with HMAC-SHA256 over the base URL plus a nonce. In most cases you swap the header names and point your validator at Vobiz’s headers.
Header mapping
The signing scheme is identical - HMAC-SHA256 keyed by your auth token, base64-encoded, with a random nonce sent in a companion header. Only the header names change.| Plivo | Vobiz | Scheme |
|---|---|---|
X-Plivo-Signature-V3 | X-Vobiz-Signature-V3 | HMAC-SHA256 of baseURL + "." + nonce |
X-Plivo-Signature-V3-Nonce | X-Vobiz-Signature-V3-Nonce | Random nonce used in the V3 signature |
| (no direct equivalent) | X-Vobiz-Signature-V2 | HMAC-SHA256 of baseURL + nonce |
| (no direct equivalent) | X-Vobiz-Signature-V2-Nonce | Random nonce used in the V2 signature |
X-Plivo-Signature-V2 (legacy, HMAC-SHA1) | X-Vobiz-Signature (legacy, HMAC-SHA1) | Backwards compatibility only - avoid |
Plivo’s
plivo.utils.validate_v3_signature(...) and Vobiz’s V3 validation compute the same thing: base64(HMAC-SHA256(authToken, baseURL + "." + nonce)). Vobiz also offers a V2 variant that joins the nonce without the . separator. Validate X-Vobiz-Signature-V2 or X-Vobiz-Signature-V3 - both are actively maintained HMAC-SHA256 schemes.Before / after: verifying the signature
The Plivo SDK ships a helper (validate_v3_signature). Vobiz doesn’t require an SDK for this - the verification is a few lines of HMAC. Below, the “before” column shows the Plivo approach and the “after” column shows the equivalent Vobiz V2/V3 verification.
Your callback params carry over almost unchanged -
CallUUID, From, To, Direction, CallStatus, and friends are the same application/x-www-form-urlencoded fields you read from Plivo. The main thing to relabel is event names: Vobiz sends Ring, StartApp (answer), and Hangup. See Validating callbacks for the canonical signature reference and Callbacks for the full param and event list.Sub-accounts
If you use sub-accounts, Vobiz also signs each callback with the parent (main) account auth token and sends it inX-Vobiz-Signature-MA-V2 / X-Vobiz-Signature-MA-V3. The algorithm is identical to V2/V3 - only the key differs - so you can reuse the same validation code with your parent account auth token. This lets you verify callbacks using either the sub-account or the main account token.
Next
Migration gotchas
Edge cases and differences to watch for when moving from Plivo to Vobiz.
Plivo to Vobiz overview
Back to the full migration guide.