< back to knowledge

Try the Search Intent API!

by Andreas Voniatis Founder. Fractional SEO Consultant.

Try the Search Intent API!

How you can work with the API

  1. Correctly format your Search Engine Result Pages (SERPs) file (as a .json file with certain categories)
  2. Run one line of code from the command line (known as Terminal in Mac OS X or Console in Windows)
  3. The API determines whether your keywords have the same search intent using Natural Language Processing (NLP) and maths
  4. Your done! You can then save the output to a file in whatever way you like – as a .json, piped to jq, or converted to an excel spreadsheet.
  5. If you’ve never used an API before, don’t worry it’s easier than you think.


Test the API for Free

If you can convert an excel file into a JSON format, let’s go! If not we’ll tell you how in R.

1. Format your csv data as a .json format. The top node of your .json file should be called “df” . This node should contain a table of your search results with the columns:

  • “href”
  • “base_domain”
  • “keyword”
  • “google_rank”
  • “search_volume”

The first 3 rows of our dataset looks like this:

The commands in R to convert from:

library(jsonlite) # you'll have to run install.packages("jsonlite")
df <- read.csv("your_serps_results.csv") # make sure the csv is UTF-8 format
list(df = df) %>% write_json("your_serps_results.json")


2. Run this command from the Command Line, inserting the correct file name and location:

curl --data @your_serps_df.json api.syntent.com/clusters_api/clusters


3. Done! The output data is in JSON format.

Note: For pretty output you can pipe to jq (or use the JSON validator – if you haven’t got jq installed.

curl --data @your_serps_results.json api.syntent.com/clusters_api/clusters 
| jq


Or to save the output to a file:

curl --data @your_serps_results.json api.syntent.com/clusters_api/clusters 
> output_filename.json


If you have any questions, feel free to get in touch using the contact form below.

Download Our SEO Guide