Skip to main content
Piloterr
Back to library

Franchise Direct Search API

Search Franchise Direct listings by keyword or listing URL. Each card includes a USD cash figure and a numeric minimum.

Active1 credit = 1 requestGET/v2/franchisedirect/search

Endpoint Overview

Detailed documentation, pricing, and usage examples.

OverviewLink to Overview

Search franchise cards on Franchise Direct. Send a keyword such as coffee or food, or a listing URL on franchisedirect.com (search, directory, or category). The response is { results, pagination }.

Each card has minimum_cash_required_display as printed, for example $60,000, and minimum_cash_required as the matching whole-dollar number, 60000. Pass results[].url to /v2/franchisedirect/franchise.

QuickstartLink to Quickstart

GET and POST take the same query.

GET https://api.piloterr.com/v2/franchisedirect/search?query=coffee
GET https://api.piloterr.com/v2/franchisedirect/search?query=food

coffee returns CoffeeNow at https://www.franchisedirect.com/coffee-franchises/coffeenow with $60,000 / 60000. The same brand's profile call returns that same cash pair.

ParametersLink to Parameters

Parameter Required Example
query yes coffee

query is required. An empty value returns 400. A URL must be on franchisedirect.com. A profile path (two segments, such as /coffee-franchises/coffeenow) returns 400 here because it belongs on the franchise endpoint. A search, directory, or category URL is a listing.

PaginationLink to Pagination

Keyword listings such as coffee, food, and cleaning come back as one page. pagination.page is 1. pagination.next is null when the HTML has no Next link. pagination.total_results and pagination.total_pages are null because the page does not print those totals. pagination.per_page is the number of cards parsed.

The site does not honor a hand-built page=2 on a listing that has no pager. https://www.franchisedirect.com/search?q=coffee&page=2 returns the same six coffee cards, page stays 1, and next stays null. When the HTML does contain a Next or Previous link, next is that URL and page is read from the page query parameter.

Card URLs are unique. minimum_cash_required is the first number inside minimum_cash_required_display.

Response fieldsLink to Response fields

Field Type Meaning
results[].name string Franchise name
results[].url string Profile URL
results[].description string or null Card summary
results[].category string or null Category from the profile path, such as Coffee Franchises
results[].minimum_cash_required number or null Minimum cash in whole dollars
results[].minimum_cash_required_display string or null Printed USD amount, such as $60,000
results[].image string or null Logo URL
pagination.page integer 1 when the page has no pager
pagination.per_page integer or null Cards on this page
pagination.total_results null Not printed on these listings
pagination.total_pages null Not printed on these listings
pagination.next string or null Next listing URL, or null when no Next link is present

Use casesLink to Use cases

  • Compare minimum cash for coffee concepts, using $60,000 on CoffeeNow against $175,000 on PJ's Coffee in the same coffee response.
  • Scan a food keyword for mobile and storefront brands, then keep each profile URL for a fee and investment lookup.
  • Build a shortlist where the displayed dollars and the numeric minimum describe the same amount before anyone opens the profile.

Error codesLink to Error codes

Code Meaning
400 Empty query, a profile URL, or a domain outside franchisedirect.com
401 Missing API key
404 The page was not a listing
500 The fetch failed

Franchise Direct Franchise

Related APIs

Expand your data capabilities with these complementary tools.

Ready to get started?

Your web scraping API is one click away. Start with +500 credits, no infrastructure to set up, no proxies to manage, and no credit card required.

  • +500 credits
  • No credit card required
  • All endpoints included