> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tala-assistant.com/llms.txt
> Use this file to discover all available pages before exploring further.

# TheFork

> Check restaurant availability and create reservations during voice calls

## Overview

The TheFork integration enables your voice agents to check restaurant
availability and create reservations in real-time during calls. Perfect for
restaurants using TheFork (LaFourchette) as their reservation management system.

<Note>
  This integration requires a TheFork Manager account and your restaurant
  UUID. Contact TheFork to become a partner and obtain your credentials.
</Note>

## What You Can Do

| Feature                 | Description                                                    |
| ----------------------- | -------------------------------------------------------------- |
| **Check Availability**  | Verify available time slots for a specific date and party size |
| **Time Preference**     | Filter slots by lunch, dinner, or a specific time              |
| **Find Next Slots**     | Suggest alternative dates if requested one is full             |
| **Create Reservations** | Book a table directly during the call                          |

## Setup

<Steps>
  <Step title="Find Your Restaurant UUID">
    Your TheFork restaurant UUID is available in your TheFork Manager dashboard
    under restaurant settings. It's a 36-character identifier like:

    ```
    f47ac10b-58cc-4372-a567-0e02b2c3d479
    ```
  </Step>

  <Step title="Add Integration">
    Go to **Integrations** → Click **Add TheFork** → Enter your restaurant UUID and name
  </Step>

  <Step title="Test Connection">
    Click **Test** to verify your restaurant is found and accessible
  </Step>

  <Step title="Enable in Workflow">
    In **Workflow Editor** → **Tools** → Enable **TheFork Availability** and/or **TheFork Reservations**
  </Step>
</Steps>

## Available Tools

Your agent has access to three functions:

| Tool                   | Use Case                                        |
| ---------------------- | ----------------------------------------------- |
| **Check Availability** | When caller asks about a specific date          |
| **Get Next Slots**     | When caller wants to know upcoming availability |
| **Create Reservation** | When caller wants to book a table               |

## Example Conversation

<AccordionGroup>
  <Accordion title="Reservation Inquiry and Booking">
    **Caller:** Do you have availability for Saturday evening?

    **Agent:** Let me check... Yes, we have tables available on Saturday for
    dinner. We have slots at 7:30 PM and 9:00 PM. How many guests will you be?

    **Caller:** We'll be 4 people. Can I book at 7:30?

    **Agent:** Of course! I'll need a few details to complete the reservation.
    What name should I put the booking under?

    **Caller:** Martin, please.

    **Agent:** And what's the best phone number and email to reach you?

    **Caller:** 06 12 34 56 78, and my email is [martin@example.com](mailto:martin@example.com)

    **Agent:** Perfect! I've booked a table for 4 guests on Saturday at 7:30 PM
    under the name Martin. Your confirmation number is TF-12345. You'll also
    receive a confirmation email from TheFork. Is there anything else I can
    help you with?
  </Accordion>

  <Accordion title="Finding Alternative Dates">
    **Caller:** Do you have a table for Friday evening?

    **Agent:** Let me check... Unfortunately, Friday evening is fully booked.
    I can see availability on Thursday evening at 8:00 PM or Saturday lunch
    at 12:30 PM. Would either of those work for you?

    **Caller:** Saturday lunch works.

    **Agent:** Excellent! How many guests will you be?
  </Accordion>
</AccordionGroup>

## Availability Data

Your agent receives the following information:

| Field      | Description                           |
| ---------- | ------------------------------------- |
| Date       | The requested date                    |
| Time Slots | Available reservation times           |
| Offer UUID | Associated menu or promotion (if any) |

## Reservation Data

When creating a reservation, the following information is collected:

| Field         | Required | Description                    |
| ------------- | -------- | ------------------------------ |
| Date & Time   | Yes      | Selected time slot             |
| Guests        | Yes      | Number of people               |
| Customer Name | Yes      | Name for the booking           |
| Phone         | Yes      | Contact phone number           |
| Email         | Yes      | Email for booking confirmation |
| Notes         | No       | Special requests, allergies    |

## Technical Details

| Setting       | Value                                           |
| ------------- | ----------------------------------------------- |
| Auth Method   | OAuth2 (Auth0 Client Credentials)               |
| API Timeout   | 5 seconds (optimized for voice)                 |
| Data Source   | TheFork B2B Manager API                         |
| Lookup Window | 14 days ahead by default (with 15s time budget) |

## Limitations

<Warning>
  **Current limitations:**

  * Cannot modify existing reservations (cancel only via TheFork app)
  * Requires active TheFork Manager subscription
  * Some menu options may not be available for all slots
</Warning>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Restaurant not found">
    * Verify your restaurant UUID from the TheFork Manager dashboard
    * Ensure your restaurant is active on TheFork
    * The UUID should be a 36-character identifier (not a number)
  </Accordion>

  <Accordion title="No availability shown">
    * Check if availability is configured in TheFork Manager
    * Verify you're searching for a date when the restaurant is open
    * Try searching for dates further in advance
  </Accordion>

  <Accordion title="Reservation failed">
    * Ensure all required fields are provided (name, phone, email, date, time, guests)
    * Check if the time slot is still available (may have been booked)
    * Verify the phone number format is correct
  </Accordion>

  <Accordion title="Timeout during calls">
    * This can happen during high traffic periods
    * The agent will inform the caller and suggest trying again
    * Check your internet connection
  </Accordion>
</AccordionGroup>

## Next Steps

<CardGroup cols={2}>
  <Card title="Zenchef" icon="utensils" href="/integrations/zenchef">
    Alternative restaurant integration
  </Card>

  <Card title="Google Calendar" icon="calendar" href="/integrations/google-calendar">
    Sync reservations to calendar
  </Card>
</CardGroup>
