LaFourchette Data API

The Data API from LaFourchette — 4 operation(s) for data.

Operations 4

GET /v1/customers #
GET /v1/customers/{id} #
GET /v1/reservations #
GET /v1/reservations/{id} #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/lafourchette-data-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

lafourchette-data-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: TheFork B2B Data API
  version: 1.0.0
  description: TheFork (LA FOURCHETTE SAS) B2B / Partners API for TheFork Manager (TFM). Lets restaurant groups, CRM platforms and third-party partners read customers, reservations and reviews, drive the booking funnel (availabilities, offers, party sizes, timeslots, create/update/cancel reservations), reply to reviews, and run call-centre caller recognition. Access is granted by TheFork; authentication is an Auth0 client-credentials access token presented as a bearer token (audience https://api.thefork.io).
  contact:
    name: TheFork integrations team
    email: integrations@thefork.com
    url: https://docs.thefork.io/
  termsOfService: https://docs.thefork.io/pdf/LaFourchette-Partners-API-Licence-2.pdf
  x-provenance: Reconstructed by API Evangelist from the OpenAPI operation objects TheFork itself publishes in the compiled assets of its Docusaurus developer portal (docs.thefork.io, docusaurus-plugin-openapi-docs). TheFork does not serve a single downloadable OpenAPI document at any probed URL; every path, operationId, parameter, request body, response and schema below is verbatim provider content decoded from those published page bundles. Nothing here was authored by API Evangelist.
  x-source-title: B2B-API specifications
servers:
- url: https://api.thefork.io/manager
tags:
- name: Data
paths:
  /v1/customers:
    get:
      operationId: getV1Customers
      tags:
      - Data
      description: Get the list of customers created or updated between two dates.
      parameters:
      - schema:
          type: string
          format: uuid
          description: group uuid that needs to be considered for filter
          example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        required: true
        description: group uuid that needs to be considered for filter
        name: groupUuid
        in: query
      - schema:
          type: string
          format: date
          description: start date that needs to be considered for filter
          example: '2022-01-01'
        required: true
        description: start date that needs to be considered for filter
        name: startDate
        in: query
      - schema:
          type: string
          format: date
          description: end date that needs to be considered for filter
          example: '2022-09-02'
        required: true
        description: end date that needs to be considered for filter
        name: endDate
        in: query
      - schema:
          type: number
          maximum: 10000
          description: limit of the number of customers to return (default to 100)
          example: 100
          exclusiveMinimum: 0
        required: false
        description: limit of the number of customers to return (default to 100)
        name: limit
        in: query
      - schema:
          type: number
          description: customers page to return (default to 1)
          example: 1
          exclusiveMinimum: 0
        required: false
        description: customers page to return (default to 1)
        name: page
        in: query
      responses:
        '200':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: string
                      format: uuid
                      example: 3fa85f64-5717-4562-b3fc-2c963f66afb4
                    description: List of customers uuids
                  totalCount:
                    type: number
                    description: Total number of matching customers uuids
                    example: 1
                  page:
                    type: number
                    description: Current page number
                    example: 1
                  limit:
                    type: number
                    description: Maximum size of the page
                    example: 100
                required:
                - data
                - totalCount
                - page
                - limit
                additionalProperties: false
        '401':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      code:
                        type: string
                        enum:
                        - ''
                    required:
                    - code
                  error:
                    type: string
                    enum:
                    - Unauthorized
                  statusCode:
                    type: number
                    enum:
                    - 401
                required:
                - data
                - error
                - statusCode
      x-source-page: https://docs.thefork.io/B2B-API/API specifications/get-v-1-customers-eb6
      x-source-asset: https://docs.thefork.io/assets/js/3a1abe1a.3012f03c.js
  /v1/customers/{id}:
    get:
      operationId: getV1CustomersId
      tags:
      - Data
      description: Get the customer details for a given customer id.
      parameters:
      - schema:
          type: string
          format: uuid
          description: customer uuid that needs to be considered for filter
          example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        required: true
        description: customer uuid that needs to be considered for filter
        name: id
        in: path
      responses:
        '200':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  customerUuid:
                    type:
                    - string
                    - 'null'
                    format: uuid
                    description: Customer UUID
                    example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                  email:
                    type:
                    - string
                    - 'null'
                    example: john@example.com
                  firstName:
                    type:
                    - string
                    - 'null'
                    example: Doe
                  lastName:
                    type:
                    - string
                    - 'null'
                    example: John
                  phone:
                    type:
                    - string
                    - 'null'
                  birthDate:
                    type:
                    - string
                    - 'null'
                    example: '1997-12-02'
                  locale:
                    type:
                    - string
                    - 'null'
                    example: fr_FR
                  civility:
                    type:
                    - string
                    - 'null'
                  rank:
                    type:
                    - string
                    - 'null'
                  computedRank:
                    type:
                    - string
                    - 'null'
                  isVip:
                    type: boolean
                  address:
                    type:
                    - string
                    - 'null'
                  allergiesAndIntolerances:
                    type:
                    - array
                    - 'null'
                    items:
                      type: string
                      example: seafood
                  dietaryRestrictions:
                    type:
                    - array
                    - 'null'
                    items:
                      type: string
                      example: gluten_free
                  spendingBehaviour:
                    type:
                    - array
                    - 'null'
                    items:
                      type: string
                      example: promo_seeker
                  customerRelationship:
                    type:
                    - array
                    - 'null'
                    items:
                      type: string
                      example: employee
                  riskLevel:
                    type:
                    - array
                    - 'null'
                    items:
                      type: string
                      example: caution
                  otherTags:
                    type:
                    - array
                    - 'null'
                    items:
                      type: string
                      example: wine_lover
                  favFood:
                    type:
                    - string
                    - 'null'
                    example: Burger
                  favDrinks:
                    type:
                    - string
                    - 'null'
                    example: Punk IPA
                  favSeating:
                    type:
                    - string
                    - 'null'
                    example: Terrace
                  notes:
                    type:
                    - string
                    - 'null'
                  originRestaurantUuid:
                    type:
                    - string
                    - 'null'
                    example: ddc14c13-98ce-4ece-9c82-98f84050f6f5
                  originRestaurantName:
                    type:
                    - string
                    - 'null'
                    example: 587850fc-abd7-4486-a61a-aa05b2fbba84
                  creationDate:
                    type:
                    - string
                    - 'null'
                    description: Creation date
                    example: '2022-09-02'
                  lastUpdateDate:
                    type:
                    - string
                    - 'null'
                    description: Last update date
                    example: '2022-09-30'
                  isPromoter:
                    type: boolean
                  secondaryPhone:
                    type:
                    - string
                    - 'null'
                  country:
                    type:
                    - string
                    - 'null'
                    example: FR
                  city:
                    type:
                    - string
                    - 'null'
                    example: Paris
                  zipcode:
                    type:
                    - string
                    - 'null'
                    example: '75001'
                  optins:
                    type: object
                    properties:
                      restaurantNewsletter:
                        type: boolean
                        default: false
                        description: Optin the diner to the restaurant newsletter, when false is provided it will not unsubscribe the diner
                        example: true
                    default:
                      restaurantNewsletter: false
                    additionalProperties: false
                  customFields:
                    type:
                    - array
                    - 'null'
                    items:
                      type: object
                      properties:
                        labelUuid:
                          type: string
                          format: uuid
                          description: Label UUID
                          example: 55749b38-b822-4ece-b976-65a1458c6d47
                        label:
                          type: string
                          description: Label value
                          example: Regular lunch customer
                        type:
                          type: string
                          enum:
                          - boolean
                          - string
                          - integer
                        value:
                          anyOf:
                          - type: string
                          - type: boolean
                          - type: number
                          - type: string
                            enum:
                            - ''
                          description: Custom field value
                          example: true
                        valueUuid:
                          type:
                          - string
                          - 'null'
                          format: uuid
                          description: Value UUID
                          example: ada0f099-4e3d-47da-addd-1d449082fc34
                      required:
                      - labelUuid
                      - label
                      - type
                      - value
                      additionalProperties: false
                required:
                - email
                - firstName
                - lastName
                - locale
                - notes
                - creationDate
                - lastUpdateDate
                additionalProperties: false
        '401':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      code:
                        type: string
                        enum:
                        - ''
                    required:
                    - code
                  error:
                    type: string
                    enum:
                    - Unauthorized
                  statusCode:
                    type: number
                    enum:
                    - 401
                required:
                - data
                - error
                - statusCode
        '404':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      code:
                        type: string
                        enum:
                        - CUSTOMER_NOT_FOUND
                    required:
                    - code
                  error:
                    type: string
                    enum:
                    - Not Found
                  statusCode:
                    type: number
                    enum:
                    - 404
                required:
                - data
                - error
                - statusCode
      x-source-page: https://docs.thefork.io/B2B-API/API specifications/get-v-1-customers-id-11e
      x-source-asset: https://docs.thefork.io/assets/js/bf653d7c.944b4da4.js
  /v1/reservations:
    get:
      operationId: getV1Reservations
      tags:
      - Data
      description: Get the list of reservations filtered by a date range. Use filterBy to filter by updatedDate (default) or mealDate.
      parameters:
      - schema:
          type: string
          format: uuid
          description: group uuid that needs to be considered for filter (required if restaurantUuid is not provided)
          example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        required: false
        description: group uuid that needs to be considered for filter (required if restaurantUuid is not provided)
        name: groupUuid
        in: query
      - schema:
          type: string
          format: uuid
          description: restaurant uuid that needs to be considered for filter (required if groupUuid is not provided)
          example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        required: false
        description: restaurant uuid that needs to be considered for filter (required if groupUuid is not provided)
        name: restaurantUuid
        in: query
      - schema:
          type: string
          format: date
          description: start date that needs to be considered for filter
          example: '2022-01-01'
        required: true
        description: start date that needs to be considered for filter
        name: startDate
        in: query
      - schema:
          type: string
          format: date
          description: end date that needs to be considered for filter
          example: '2022-09-02'
        required: true
        description: end date that needs to be considered for filter
        name: endDate
        in: query
      - schema:
          type: string
          enum:
          - updatedDate
          - mealDate
          description: 'date field to filter reservations by (default: updatedDate)'
          example: mealDate
        required: false
        description: 'date field to filter reservations by (default: updatedDate)'
        name: filterBy
        in: query
      - schema:
          type: number
          maximum: 10000
          description: limit of the number of reservations to return (default to 100)
          example: 100
          exclusiveMinimum: 0
        required: false
        description: limit of the number of reservations to return (default to 100)
        name: limit
        in: query
      - schema:
          type: number
          description: reservations page to return (default to 1)
          example: 1
          exclusiveMinimum: 0
        required: false
        description: reservations page to return (default to 1)
        name: page
        in: query
      responses:
        '200':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: string
                      format: uuid
                      example: 3fa85f64-5717-4562-b3fc-2c963f66afb4
                    description: List of reservation uuids
                  totalCount:
                    type: number
                    description: Total number of matching reservation uuids
                    example: 1
                  page:
                    type: number
                    description: Current page number
                    example: 1
                  limit:
                    type: number
                    description: Maximum size of the page
                    example: 100
                required:
                - data
                - totalCount
                - page
                - limit
                additionalProperties: false
        '401':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      code:
                        type: string
                        enum:
                        - ''
                    required:
                    - code
                  error:
                    type: string
                    enum:
                    - Unauthorized
                  statusCode:
                    type: number
                    enum:
                    - 401
                required:
                - data
                - error
                - statusCode
      x-source-page: https://docs.thefork.io/B2B-API/API specifications/get-v-1-reservations-60c
      x-source-asset: https://docs.thefork.io/assets/js/c0eb8405.19828b52.js
  /v1/reservations/{id}:
    get:
      operationId: getV1ReservationsId
      tags:
      - Data
      description: Get the reservation details for a given reservation id.
      parameters:
      - schema:
          type: string
          format: uuid
          description: restaurant uuid that needs to be considered for filter
          example: c564869f-225a-4cb6-b124-2214a6216ec1
        required: true
        description: restaurant uuid that needs to be considered for filter
        name: id
        in: path
      responses:
        '200':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  reservationUuid:
                    type: string
                    format: uuid
                    description: 'reservation uuid '
                    example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                  restaurantUuid:
                    type: string
                    format: uuid
                    description: 'restaurant uuid '
                    example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                  mealDate:
                    type:
                    - string
                    - 'null'
                    description: Reservation meal date
                    example: '2022-01-03T18:10:17.269Z'
                  mealStatus:
                    type:
                    - string
                    - 'null'
                    description: Represents steps for the meal while diner is at the table. Meal statuses do not follow any specific flow.
                    enum:
                    - PARTIALLY_ARRIVED
                    - ARRIVED
                    - SEATED
                    - BILL
                    - LEFT
                    example: ARRIVED
                  partySize:
                    type: integer
                    description: Number of person attending to the reservation
                    example: 2
                    exclusiveMinimum: 0
                  status:
                    type: string
                    enum:
                    - RECORDED
                    - CANCELED
                    - NO_SHOW
                    - REQUESTED
                    - REFUSED
                    description: "- Reservation status\n-\n- Main statuses\n  - \\- RECORDED: most frequent status, reservation is confirmed\n  - \\- CANCELED: reservation has been canceled\n  - \\- NO_SHOW: reservation has been flagged as no-show\n-\n- Secondary statuses\n  - \\- REQUESTED: Reservation is waiting for a an action from the restaurant (on request booking or Waitlist) - not confirmed yet\n  - \\- REFUSED: final state if a requested reservation has been declined by the restaurant"
                    example: RECORDED
                  offerUuid:
                    type:
                    - string
                    - 'null'
                    format: uuid
                    example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                  customerNote:
                    type:
                    - string
                    - 'null'
                    maxLength: 1000
                    description: Special request field that the diner can enter while making the reservation
                    example: note by the customer
                  restaurantNote:
                    type:
                    - string
                    - 'null'
                    maxLength: 3000
                    description: Internal notes for the restaurant staff
                    example: note by the restaurant
                  customerUuid:
                    type:
                    - string
                    - 'null'
                    format: uuid
                    description: Customer UUID
                    example: 3fa85f64-5717-4562-b3fc-2c963f66afa6
                  customFields:
                    type:
                    - array
                    - 'null'
                    items:
                      type: object
                      properties:
                        labelUuid:
                          type: string
                          format: uuid
                          description: Label UUID
                          example: 55749b38-b822-4ece-b976-65a1458c6d47
                        label:
                          type: string
                          description: Label value
                          example: Regular lunch customer
                        type:
                          type: string
                          enum:
                          - boolean
                          - string
                          - integer
                        value:
                          anyOf:
                          - type: string
                          - type: boolean
                          - type: number
                          description: Custom field value
                          example: true
                        valueUuid:
                          type:
                          - string
                          - 'null'
                          format: uuid
                          description: Value UUID
                          example: ada0f099-4e3d-47da-addd-1d449082fc34
                      required:
                      - labelUuid
                      - label
                      - type
                      - value
                      additionalProperties: false
                  offerDetails:
                    type:
                    - object
                    - 'null'
                    properties:
                      offerType:
                        type: string
                        enum:
                        - promotion
                        - presetMenu
                      name:
                        type:
                        - object
                        - 'null'
                        properties: {}
                      discountPercentage:
                        type:
                        - number
                        - 'null'
                      presetMenuType:
                        type:
                        - string
                        - 'null'
                        enum:
                        - generic
                        - group
                        - of_the_day
                        - brunch
                        - experience
                        - mastercard
                      price:
                        type:
                        - number
                        - 'null'
                      currency:
                        type:
                        - string
                        - 'null'
                    required:
                    - offerType
                    additionalProperties: false
                  utmTrackingInformation:
                    type:
                    - array
                    - 'null'
                    items:
                      type: object
                      properties:
                        key:
                          type: string
                        value:
                          type: string
                      required:
                      - key
                      - value
                      additionalProperties: false
                  billAmount:
                    type:
                    - object
                    - 'null'
                    properties:
                      totalPrice:
                        type: number
                      currency:
                        type: string
                    required:
                    - totalPrice
                    - currency
                    additionalProperties: false
                  reservationChannel:
                    type: string
                    enum:
                    - TripAdvisor
                    - Michelin
                    - Booking Module
                    - Offline
                    - TheFork
                    - Walk-in
                    - Google
                    - Cross Sell
                    - TheFork Manager API
                  createdAt:
                    type:
                    - string
                    - 'null'
                  updatedAt:
                    type:
                    - string
                    - 'null'
                required:
                - reservationUuid
                - restaurantUuid
                - mealDate
                - partySize
                - status
                - reservationChannel
                - createdAt
                additionalProperties: false
        '401':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      code:
                        type: string
                        enum:
                        - ''
                    required:
                    - code
                  error:
                    type: string
                    enum:
                    - Unauthorized
                  statusCode:
                    type: number
                    enum:
                    - 401
                required:
                - data
                - error
                - statusCode
        '404':
          description: Object with user data.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      code:
                        type: string
                        enum:
                        - RESERVATION_NOT_FOUND
                    required:
                    - code
                  error:
                    type: string
                    enum:
                    - Not Found
                  statusCode:
                    type: number
                    enum:
                    - 404
                required:
                - data
                - error
                - statusCode
      x-source-page: https://docs.thefork.io/B2B-API/API specifications/get-v-1-reservations-id-f82
      x-source-asset: https://docs.thefork.io/assets/js/41c4f519.2f982757.js