Skip to contentSkip to navigationSkip to topbar
On this page

TwiML™ Voice: <Redirect>


The <Redirect> verb transfers control of a call to the TwiML at a different URL. All verbs after <Redirect> are unreachable and ignored.


Verb Attributes

attributes page anchor

The <Redirect> verb supports the following attributes that modify its behavior:

Attribute NameAllowed ValuesDefault Value
methodGET, POSTPOST

method

attributes-method page anchor

The 'method' attribute takes the value GET or POST. This tells Twilio whether to request the <Redirect> URL via HTTP GET or POST. POST is the default.

Use it in a <Redirect> verb like so:

Using method attribute in a Redirect verbLink to code sample: Using method attribute in a Redirect verb
1
const VoiceResponse = require('twilio').twiml.VoiceResponse;
2
3
4
const response = new VoiceResponse();
5
response.redirect({
6
method: 'POST'
7
}, 'http://pigeons.com/twiml.xml');
8
9
console.log(response.toString());

Output

1
<?xml version="1.0" encoding="UTF-8"?>
2
<Response>
3
<Redirect method="POST">http://pigeons.com/twiml.xml</Redirect>
4
</Response>

The "noun" of a TwiML verb is the stuff nested within the verb that's not a verb itself; it's the stuff the verb acts upon. These are the nouns(link takes you to an external page) for <Redirect>:

NounTwiML Interpretation
plain textAn absolute or relative URL for a different TwiML document.

No verbs can be nested within <Redirect> and <Redirect> can't be nested in any other verbs.


Example 1: Absolute URL Redirect

examples-1 page anchor

In this example, we have a <Redirect> verb after a <Dial> verb with no URL. When the <Dial> verb finishes, the <Redirect> executes. <Redirect> makes a request to http://www.foo.com/nextInstructions and transfers the call flow to the TwiML received in response to that request.

1
const VoiceResponse = require('twilio').twiml.VoiceResponse;
2
3
4
const response = new VoiceResponse();
5
response.dial('415-123-4567');
6
response.redirect('http://www.foo.com/nextInstructions');
7
8
console.log(response.toString());

Output

1
<?xml version="1.0" encoding="UTF-8"?>
2
<Response>
3
<Dial>415-123-4567</Dial>
4
<Redirect>http://www.foo.com/nextInstructions</Redirect>
5
</Response>

Example 2: Relative URL Redirect

examples-2 page anchor

Redirects call flow control to the TwiML at a URL relative to the current URL.

1
const VoiceResponse = require('twilio').twiml.VoiceResponse;
2
3
4
const response = new VoiceResponse();
5
response.redirect('../nextInstructions');
6
7
console.log(response.toString());

Output

1
<?xml version="1.0" encoding="UTF-8"?>
2
<Response>
3
<Redirect>../nextInstructions</Redirect>
4
</Response>

Need some help?

Terms of service

Copyright © 2024 Twilio Inc.