Confirm the code the verification call spoke
A matching code makes the destination verified. A wrong one answers 422 verification_code_invalid with details.attemptsLeft; five wrong codes, an expired code or no call at all answer 422 verification_code_expired, and a new verification call is needed.
Requires the admin scope. A key with less gets 403 insufficient_scope.
Authorization: Bearer tone_live_… or tone_test_…. The prefix IS the environment: a test key reaches only the sandbox, and no request field bridges the two.
In: header
Path Parameters
The transfer destination's id.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/transfer-destinations/string/confirm" \ -H "Content-Type: application/json" \ -d '{ "code": "482913" }'{ "data": { "createdAt": "2026-10-13T09:20:00.000Z", "e164": "+919876543210", "hours": [ { "days": "mon-sat", "from": "09:30", "to": "19:00" } ], "id": "7d1f5c9e-2b3a-4c8d-9e0f-1a2b3c4d5e6f", "key": "delivery_team", "label": "Delivery team", "language": "hi-IN", "status": "verified", "updatedAt": "2026-10-13T09:30:00.000Z", "verification": { "attemptsLeft": 5, "callsLeftToday": 2, "codeExpiresAt": "2026-10-13T09:43:10.000Z", "lastCallAt": "2026-10-13T09:28:10.000Z" }, "verifiedAt": "2026-10-13T09:30:00.000Z" }}Change a trunk's configuration
Send null to clear a field; omit the key to leave it alone. Changes reach the gateway within seconds. Status is not settable here — approval is ours, and disabling is a support action.
Add a transfer destination
Creates a destination in pending. It cannot receive a transfer until it is verified: place a verification call with POST /v1/transfer-destinations/{id}/verify, then send the code it speaks to POST /v1/transfer-destinations/{id}/confirm. 409 conflict when the key is already taken.