🕸 Knowledge Graph
AskNews hosts the largest news knowledge graph on the planet, with thousands of new entities and relationships upserted every 5 minutes, and millions per day, all leveraging Emergent Methods' state of the art disambiguation. With the AskNews API, you get to build your own custom news knowledge graph based on any natural language query you can think of. Combine your query with all the same filters available on our powerful /news endpoint. That includes filtering by date, location, sentiment, language, domain url, reporting voice, category, entity type, and much more.
Even better? We help you visualize your graph as well so you can get a quick look at how your data looks before moving forward with your indepth analyses. This is, without a doubt, the most powerful news knowledge graph exploration tool available.
Wanna test it out? You can come to our Discord server to talk directly to the bot and ask it to build any news knowledge graph for you in seconds:
The API reference provides the most detailed information
Building your graph
The graph building endpoint takes a natural language query
describing the news graph that you need. For example, if you wat to build a graph around the latest news about the US-China trade war, you can use the following query:
Your response object is loaded with rich metadata, including disambiguations, entity frequency, and even all the related news articles associated with each entity/relationship.
{
"full_graph": {
"nodes": [
{
"id": "USD 2,462.3 Billion",
"count": 10,
"probability": 1.0,
"detailed_type": "Current Deposits",
"type": "Financial Metric",
"ner_type": "Money",
"sources": [
"1efe30fb-116f-5716-8251-a2b3167ee946"
]
},
{
"id": "Jpmorgan Chase & Co.",
"count": 5,
"probability": 0.975525975227356,
"detailed_type": "Banking Group",
"type": "Organization",
"ner_type": "Organization",
"sources": [
"1efe30fb-116f-5716-8251-a2b3167ee946",
"a067ec1f-16f6-5501-832d-98127d4ee934",
"cd521b4e-2f44-559f-bf52-8aaa01f98711",
"5c72d534-88ea-559b-be77-eccaa6082151",
"efea6f10-58db-5f53-8a00-f929f1cf61ea"
]
},
],
"edges": [
{
"from": "Jpmorgan Chase & Co.",
"label": "manages",
"to": "USD 2,462.3 Billion",
"count": 1,
"probability": 0.987762987613678,
"sources": [
"1efe30fb-116f-5716-8251-a2b3167ee946"
],
"label_disambiguations": {
"manages": 1
},
"from_disambiguations": [
{
"id": "JPMorgan Chase & Co.",
"count": 3,
"probability": 0.975525975227356
}
],
"to_disambiguations": [
{
"id": "USD 2,462.3 billion",
"count": 1,
"probability": 1.0
}
],
"from_probability": 0.975525975227356,
"to_probability": 1.0
},
]
},
"disambiguations": [
{
"id": "Jpmorgan Chase & Co.",
"n_variations": 1,
"article_count": 5,
"probability": 0.975525975227356,
"detailed_type": "Banking Group",
"type": "Organization",
"ner_type": "Organization",
"disambiguations": [
{
"id": "JPMorgan Chase & Co.",
"probability": 0.975525975227356,
"detailed_type": "Banking Group",
"type": "Organization",
"ner_type": "Organization",
"article_count": 5,
"sources": [
"1efe30fb-116f-5716-8251-a2b3167ee946",
"cd521b4e-2f44-559f-bf52-8aaa01f98711",
"efea6f10-58db-5f53-8a00-f929f1cf61ea",
"a067ec1f-16f6-5501-832d-98127d4ee934",
"5c72d534-88ea-559b-be77-eccaa6082151"
],
"detailed_disambiguations": [
{
"id": "JPMorgan Chase",
"probability": 0.9731054902076721,
"detailed_type": "global banking group",
"type": "organization",
"ner_type": "Organization",
"match_count": 2
},
{
"id": "JPMorgan Chase & Co.",
"probability": 0.9779464602470398,
"detailed_type": "banking group",
"type": "organization",
"ner_type": "Organization",
"match_count": 2
}
]
}
],
"disambiguations_list": [
"JPMorgan Chase & Co.",
"JPMorgan Chase"
],
"related_disambiguations": []
},
],
"articles": [{<article 1>}, {<article 2>}, ... {<article n>}], // each article dict has the same structure as the /news endpoint
"triples_url": "", // the url to download the triples for the visualization
"visualize_url": "" // the url to visualize the graph
}
Filtering your graph
The AskNews mega news knowledge graph can be filtered in countless ways. In fact, any filter that you can apply to the /news endpoint, you can also apply to your graph. Just include these in filter_params
:
The examples above are non-exhaustive, and you can find all the available filters in the API reference at /news.
Visualizing your graph
You can automatically get a URL for graph visualization by adding the visualize_with
parameter. This takes a string which points to the graph visualization tool of your choice.
Which will return the URL in your response object in the attribute visualize_url
.
Parameters may evolve, the most updated reference is always the API reference.
Availability
The graph endpoint is classified as a deep
API call, which falls into a different category of pricing compared to the fast
api calls (such as the /news and /stories endpoints). The Analyst plan includes 500 included deep
API calls (so 1k graphs), beyond 500, each call is charged. For updated pricing information, please check out the pricing page.