FLOOKUP API DOCUMENTATION
- Each purchase adds to your existing credit balance
- Pay-as-you-go credits: 5000 calls
- Rate limit: 20 requests/minute
- Maximum dataset size: 1000 rows
- Processing timeout: 15-45 seconds
- Each purchase adds to your existing credit balance
- Pay-as-you-go credits: 25000 calls
- Rate limit: 60 requests/minute
- Maximum dataset size: 5000 rows
- Processing timeout: 30-90 seconds
Introduction to the Flookup API
Flookup API provides automated data cleaning, fuzzy matching and deduplication for your internal systems or public facing workflows. Commercial use is permitted, but redistribution or resale is not. Key features include:
- Fuzzy Lookup: Find the closest match to any value in your dataset.
- Fuzzy Similarity: Instantly score similarity between two entries.
- Unique List: Remove duplicates using fuzzy logic or phonetic encoding.
- CORS Enabled: Fully public API, accessible from any origin.
How to Get Started with the API
- Click the relevant button above to activate a plan of your choice.
- Choose any payment method and fill in the details as prompted.
- Open the confirmation email after payment to get copy your "Profile ID" and "API key".
Notes on API Usage
- profileId: Your "Profile ID" acts as the profileId to be used in your API calls.
- Global Rate Limit: 60 requests per minute, per IP address.
- Intelligent Timeouts: Longer processing times for complex operations and larger datasets.
- Error Handling: Errors are returned as JSON objects with HTTP 400.
- Public Access: No authentication required; accessible from any domain.
- Usage Reset: Usage resets with each payment; make a new payment to refresh your API call quota.
Request Authentication
All API requests must be authenticated. You need to include your "apiKey" and "profileId" in the JSON body of every request. You will receive these credentials when you subscribe to an API plan.
Example Request Body Structure:
{
"apiKey": "your_api_key_here",
"profileId": "your_profile_id_here",
...
}
Failure to provide valid credentials will result in an authentication error.
Subscription Authentication
To use the Flookup API, you will need an API key, which is included with your API Pro or API Master subscription. This key authenticates your requests and tracks your usage. Ensure you keep your API key confidential and secure. For detailed instructions on obtaining and managing your API key, refer to the subscription upgrade stub above.
How to Make API Requests
You can test the Flookup API directly from your terminal using cURL. Below is an example of how to call the /fuzzyLookup endpoint with a JSON payload:
curl -X POST https://fuzzylookup.getflookup.com \
-H "Content-Type: application/json" \
-d '{
"apiKey": "your_api_key_here",
"profileId": "USER-12345",
"lookup_value": [["apple"]],
"table_array": [["apple","fruit"],["banana","fruit"]],
"lookup_col": 1,
"index_num": 2
}'
Or in Google Apps Script:
function callFlookup() {
let url = "https://fuzzylookup.getflookup.com";
let payload = {
apiKey: "your_api_key_here",
profileId: "USER-12345",
lookup_value: [["apple"]],
table_array: [["apple","fruit"], ["banana","fruit"]],
lookup_col: 1,
index_num: 2
};
let options = {
method: "POST",
contentType: "application/json",
payload: JSON.stringify(payload),
muteHttpExceptions: true
};
let response = UrlFetchApp.fetch(url, options);
let responseCode = response.getResponseCode();
let responseBody = response.getContentText();
if (responseCode === 200) {
let data = JSON.parse(responseBody);
Logger.log(data.result);
} else {
Logger.log(`Error: ${responseCode} - ${responseBody}`);
}
}
Flookup API Endpoints
Fuzzy Lookup
POST https://fuzzylookup.getflookup.com
- Description: Finds and locates values against a table and returns the best matches.
- Request Body:
{
"apiKey": "your_api_key_here",
"profileId": "USER-12345",
"lookup_value": [["search term"]],
"table_array": [["row1col1", "row1col2"], ["row2col1", "row2col2"]],
"lookup_col": 1,
"index_num": 2,
"threshold": 0.8
}
Parameters Explained
- apiKey: Your unique API key.
- profileId: A unique identifier generated after subscribing.
- lookup_value: A single value or array of values to lookup.
- table_array: An array of values to compare with each item from lookup_value.
- lookup_col: The column of table_array to lookup.
- index_num: The column of table_array from which to return matches.
- threshold: The minimum level of similarity for a match.
Response
{
"result": [["matched value", score], ...]
}
Errors
{
"error": "!ERROR: ..."
}
Fuzzy Similarity
POST https://fuzzysimilarity.getflookup.com
- Description: Returns the percentage similarity score between two strings or numbers.
- Request Body:
{
"apiKey": "your_api_key_here",
"profileId": "USER-12345",
"left_string": "string1",
"right_string": "string2"
}
Parameters Explained
- apiKey: Your unique API key.
- profileId: A unique identifier generated after subscribing.
- left_string: A value or array of values to compare to right_string.
- right_string: A value or array of values to compare to left_string.
Response
{
"result": 0.92
}
Errors
{
"error": "!ERROR: ..."
}
Unique List
POST https://uniquelist.getflookup.com
- Description: Deduplicates a list or column using fuzzy or sound-based matching, leaving only unique values.
- Request Body:
{
"apiKey": "your_api_key_here",
"profileId": "USER-12345",
"col_array": [["value1"], ["value2"], ...],
"index_num": 1,
"threshold": 0.8,
"operation": "by_percentage"
}
Parameters Explained
- apiKey: Your unique API key.
- profileId: A unique identifier generated after subscribing.
- col_array: An array of values to process for duplicates.
- index_num: The column of col_array from which to remove duplicates.
- threshold: The minimum level of similarity for a match.
- operation: The mode or method for the function to identify duplicates. Options: "by_percentage" or "by_sound".
Response
{
"result": [["unique1"], ["unique2"], ...]
}
Errors
{
"error": "!ERROR: ..."
}
Check Quota Status
POST https://checkquotastatus.getflookup.com
- Description: Check your current API call usage and remaining quota for your plan.
- Request Body:
{
"apiKey": "your_api_key_here",
"profileId": "USER-12345"
}
Parameters Explained
- apiKey: Your unique API key.
- profileId: Your profile identifier.
Response
{
"plan": "API Pro",
"usage": 1250,
"quota": 5000,
"remaining": 3750,
"percentage_used": 25,
"status": "active"
}
Errors
{
"error": "!ERROR: ..."
}
Flookup API Privacy
We are committed to protecting your privacy. When you use the Flookup API, we collect your API key and profile ID for authentication and usage tracking. We do not store the data you process through the API. All data transmission is encrypted. For more details, please see our full Privacy Policy.