Google Releases Long-Awaited Knowledge Graph API

by Aaron Bradley on December 18, 2015

in Search Engines, Semantic Web

Google Releases Long-Awaited Knowledge Graph API

In a Google+ post on Wednesday Freebase announced that the Google Knowledge Graph Search API was now available.

Freebase, in announcing the closure of Freebase in December 2014, promised that a Knowledge Graph API would be made available as replacement for the Freebase API and widget. The Freebase API and widget will remain available for three months after a replacement for the Freebase Suggest Widget, still in development, is launched.

The Knowledge Graph API itself allows users to find entities that reside in the Google Knowledge Graph, using standard types. Results are returned in JSON-LD format.

Google Knowledge Graph API result for the query "taylor swift" in JSON-LD format

As noted in the API reference documentation, by using the types parameter entities returned by the query can be restricted to a specified type (of which there are currently 638).

The API also allows users to get a "a ranked list of the most notable entities that match certain criteria." This is conveyed as a numeric value for the EntitySearchResult property resultScore. The description of resultScore merely states that "[r]esults with higher resultScores are considered better matches."

EntitySearchResult, resultScore and another new property with a range (expected type) of Article, detailedDescription, are all new extensions residing at the subdomain As far as I know this is the first external extension employed by Google.

Thanks to Mark van Berkel for the heads-up (via Dan Brickley).

UPDATE (23 December 2015) – Here are some quick initial observations on the API that I've made via the Semantic Search Marketing community on Google+:

1 rachel December 21, 2015 at 8:10 am

Do you know if there is anyway to put business info into the knowledge graph, the way you were able to do it by Freebase?

2 Aaron Bradley December 21, 2015 at 8:57 am

Thanks for your question Rachel. And the answer is yes: Google recently revamped its guidelines for local businesses on their developer site, now supporting the provision of business information via markup on the local business website. While this is currently being tested with a select set of businesses, Google claims they will “soon open up the feature so any provider who implements spec-compliant markup is eligible to participate.” Read more here.

3 Yuri Katkov December 26, 2015 at 3:34 pm

Congratulations with the release! As far as I can see, the abilities of the new API are relatively modest right now, compared to MQL language used in Freebase. Are there any plans to include the full query language to the API?

4 Aaron Bradley January 4, 2016 at 9:55 am

Thanks for your comment Yuri. While many have noted, like you, the bare bones nature of the current querying capability, Google has not yet announced any plans to expand the functionality of the API. I guess we’ll just have to stay tuned. 🙂

5 Best SEO Company Delhi January 19, 2016 at 9:09 pm

Thanks a lot for sharing such a useful information . Aaron would you please tell me the schema about displaying technical support toll free number. As you search “samsung toll free number” you get number on top i want the schema like this can you help me.

6 Aaron Bradley January 20, 2016 at 9:37 am

See these Google guidelines about how to mark up telephone numbers (and other contact details).

7 Patrick January 23, 2016 at 7:27 am

Dear Aaron Bradley
I already integrated Google knowledge graph api by using scheme format but i still can’t find any result on google search right panel, even I tested structure data testing tools it’s showing everything is correct. Now what to do buddy?

8 Aaron Bradley January 25, 2016 at 10:58 am

Hi Patrick. What do you mean “I already integrated Google knowledge graph api by using scheme format”? And what were you expecting to appear in the Knowledge Panel (the “google right search panel”) as a result of “integrating” the Knowledge Graph API? There’s no ranking or visibility benefit to be had directly by using the Knowledge Graph Search API: it’s a utility for looking up what information Google has in its Knowledge Graph about a particular entity – nothing more, nothing less.

9 Brano February 29, 2016 at 7:00 pm

Hi Aaron, first of all thanks for this article. For Patrick, I think I understand what he is trying to do. Lets get example, search query is “matrix” – in google, on the right side you got various info about that – covers, description, cast, imdb link and other links – all useful info.
Is there any possibility using google API to retrieve this info ? I know how to use method… and I am getting basic results, but thats all.

10 Demetrius Shaw January 23, 2016 at 12:33 pm

Someone please get me on Knowledge Graph?
Plus im verified on facebook as a musician!

11 Aaron Bradley January 25, 2016 at 10:59 am

And “someone” should “get you” on the Knowledge Graph for what reason?

12 Bharat April 1, 2016 at 3:53 am

Really the functionality is awesome. Just learn how i can implement Knowledge Graph for my website.

13 Damien May 3, 2016 at 6:07 pm

Hi Aaron,

Hoping you can help me out.

I do some work for a client called Health Direct – – and they are keen to get a knowledge graph to display when anyone searches for their brand.

They have set up a Wikidata page (, Wikipedia page (, and a Google+ page ( They have also added organization schema to their homepage which references each of their profile pages, logo, phine number, URL, etc.. They do have a Freebase page ( which has no information in it but this should now be superseded by the Wikidata page.

When I do a query for variations of the brand (healthdirect, health direct, health direct Australia, etc.) using the Knowledge Graph Search API ( it appears that Google does not link any of these queries to an entity.

How do I get Google to recognise as an entity when doing a brand query? From what I have read the most important details to provide Google are a wikidata profile and relevant schema code, both of which are provided.

Any ideas much appreciated.

14 Aaron Bradley June 6, 2016 at 5:05 pm

Thanks for your comment.

You’ve done everything right but, alas, is as so often the case with the Knowledge Graph Search API, it’s not delivering the results that it should. It might just be a waiting game – or it just might be that the API isn’t (yet) living up to its promise.

From a use case scenario, it’s clear at least that you _do_ have a Knowledge Graph entry, even if it’s not being returned by the API.

15 Karan July 1, 2016 at 10:03 am

The Knowledge Graph API really seems to be a useful tool. Now that i have read a bit about i might just put it to use on my website and see if it really gives credible output. If it does maybe i can start implementing it client side.

16 Fare November 15, 2016 at 11:24 pm

I rarely leave a response, but i did a few searching
and wound up here Google Releases Long-Awaited Knowledge Graph API.
And I do have a couple of questions for you if it’s allright.
Could it be simply me or does it appear like some of these responses look like coming from brain dead individuals?
😛 And, if you are posting at other sites, I’d
like to follow everything new you have to post.
Could you list of all of your social pages like your Facebook page, twitter feed, or linkedin profile?

17 Aaron Bradley December 1, 2016 at 9:45 am

Thanks Fare. Here’s my Twitter account, and you’ll also find me active on my Google+ Community, Semantic Search Marketing.

18 Vandana December 9, 2016 at 3:51 pm

Hi Aaron,

This is a great post you have here. I’ve been using the API for some of my clients and find relevant entities tied to the queries. However, some of my queries return no results. And I know Google recognizes my queries because searching for them returns relevant SERPs and a knowledge panel too at times. So my question is when faced with a no result scenario what am I supposed to infer – the API “result” isn’t there yet? Or do I consider this as a flag that Google does not associate any entity with my search term even though SERPs render valid results.


19 Aaron Bradley December 14, 2016 at 10:53 am

Thanks for your kind words Vandana. Regarding your question it’s an excellent one … and one to which I’m afraid I don’t have an answer. All the documentation has to say about the ?query parameter is that it’s “a literal string to search for in the Knowledge Graph”, without any further information about what entity properties it searches against, or whether there’s a certain relevance threshold (a la the resultScore response) under which an entity won’t be returned in the response (let alone how that score is calculated, Google only saying it’s an “indicator of how well the entity matched the request constraints”).

So as to whether to infer that the entity’s simply not in the Graph yet, or whether a null result is a flag that Google isn’t associating the entity with the query I couldn’t say (although some controlled experiments on the former – say, clocking the period between which an name entity comes into existence and it’s appearance in response to a Graph API search – might be interesting).

If you’ve not already done so, might be interesting to play with the ?prefix parameter to see if this returns a result when a plain ?query doesn’t.

20 Prashant November 21, 2017 at 1:03 am

Very important concepts for a technical Marketer

21 Chetan February 13, 2018 at 2:08 am

Nice article i am impressed

Previous post:

Next post: