---
"@context": https://schema.org
"@type": TechArticle
"@id": https://www.twilio.com/docs/taskrouter/quickstart/php/twiml-receive-call#article
headline: "Create Tasks from Phone Calls using TwiML: Receive an Incoming Call"
description: Receive an incoming Twilio phone call with TwiML and prompt the caller to select a language using the <Gather> verb before creating a TaskRouter Task.
url: https://www.twilio.com/docs/taskrouter/quickstart/php/twiml-receive-call
inLanguage: en
dateModified: 2026-07-06T16:59:46.000Z
author:
  "@type": Organization
  name: Twilio Developer Education Team
publisher:
  "@type": Organization
  name: Twilio
---

# Create Tasks from Phone Calls using TwiML: Receive an Incoming Call

We've seen how to create Tasks using the TaskRouter REST API and how to accept a Task Reservation using both the REST API and Assignment Callback instructions. TaskRouter also provides TwiML instructions that you can use to create a Task from a Twilio phone call.

To receive an incoming phone call, we first need a Twilio phone number. In this example we'll use a US toll-free number, but you can use a Voice capable number from any country.

Before purchasing or setting up the phone number, we need to create a PHP file to handle incoming calls. Create a new file called 'incoming-call.php' and add the code below.

## incoming-call.php

```php
<?php
header("Content-Type: application/xml; charset=utf-8");
?>

<Response>
  <Gather action="enqueue-call.php" numDigits="1" timeout="5">
    <Say language="es">Para Español oprime el uno.</Say>
    <Say language="en">For English, please hold or press two.</Say>
  </Gather>
</Response>
```

You can use the [Buy Numbers](https://console.twilio.com/?frameUrl=%2Fconsole%2Fphone-numbers%2Fsearch) section of the Twilio Voice and Messaging web portal to purchase a new phone number, or use an existing Twilio phone number. Open the phone number details page and point the Voice Request URL at your new incoming-call.php file:

![TaskRouter Quickstart showing phone number properties and request URLs for voice and messaging.](https://docs-resources.prod.twilio.com/6a0de916bec885f256d33e8883f001eab45b017ff0e2bbe6615c10e0a0e53a13.png)

Using any phone, call the Twilio number. You will be prompted to press one for Spanish or two for English. However, when you press a digit, you'll hear an error message. That's because our `<Gather>` verb is pointing to a second PHP file, 'enqueue-call.php', which we haven't implemented yet. In the next step we'll add the required file and use it to create a new Task based on the language selected by the caller.

[Next: Create a Task using Enqueue »](/docs/taskrouter/quickstart/php/twiml-create-task)
