Introduction
Welcome to the Topicaxis API documentation! Topicaxis is a news aggregator that finds and analyses the latest articles on the internet.
Articles
Get the latest articles
curl -H "apikey: topicaxisapikey" https://api.topicaxis.com/v2/articles
The articles endpoint returns a JSON response:
{
"articles": [
{
"id": "BMlngK2yA61Bp35QaGme3kL0",
"categories": [
{
"id": "VN2lZeLKMz0jGQX9JdPOnoyx",
"name": "business",
"taxonomy": {
"id": "MkJA2n0wgeDwKDb5rVXNBO4E",
"name": "topicaxis"
}
}
],
"created_at": 1711990909,
"updated_at": 1711994420,
"source": {
"id": "e8KvB3E1MqwjLgQxmOgAbGNZ",
"name": "time.com",
"url": "http://time.com"
},
"title": "We’re Focusing on the Wrong Kind of AI Apocalypse | TIME",
"url": "https://time.com/6961559/ethan-mollick-ai-apocalypse-essay/",
"tags": [
{
"id": "kNOdqPZy1j0YpGxVlAMg934W",
"name": "Machine learning"
}
],
"channels": [
{
"id": "y0KYlk3p14G6vGDWmjrQeRgN",
"name": "Hacker News",
"url": "https://news.ycombinator.com"
}
],
"description": "\"We need to worry about the many small catastrophes that AI can bring,\" writes Ethan Mollick.",
"image": "https://api.time.com/wp-content/uploads/2024/03/ai-little-catastrophes.jpg?quality=85",
"summary": "They worry that an AGI will lead to mass unemployment or that AI will grow beyond human control ...Rest of the summary",
"keywords": [
"AI",
"Artificial General Intelligence",
...More keywords
],
"named_entities": [
{
"id": "BaKk3PY2pzDPkMvERqyQw4nb",
"value": "New York Times",
"type": {
"id": "3rNwgkWodM6wyDyj1A5Lamn9",
"name": "ORGANIZATION"
}
},
...More named entities
]
}
]
}
This endpoint retrieves the latest articles.
HTTP Request
GET https://api.topicaxis.com/v2/articles
Headers
Header | Description |
---|---|
apikey | Authenticate using the Topicaxis API key. |
Query Parameters
Parameter | Default | Description |
---|---|---|
query | - | Find articles that match this keyword query. |
categories | - | Find articles that have been assigned to the given categories. This argument must be a comma separated list of category ids. |
source | - | Find articles that have been retrieved from the given source. This argument must be the source id. |
tags | - | Find articles that contain the given tags. This argument must be a comma separated list of tag ids. |
from_date | - | Return articles that have been published after this date. This must be in the format YYYY-mm-ddTHH:MM:SS. |
to_date | - | Return articles that have been published before this date. This must be in the format YYYY-mm-ddTHH:MM:SS. |
limit | 20 | The number of articles to return. This must be a value between 1-20. |
offset | 0 | Return articles after this offset. This must be a value greater or equal to 0. |
Categories
Get the available categories
curl -H "apikey: topicaxisapikey" https://api.topicaxis.com/v2/categories
The categories endpoint returns a JSON response:
{
"categories": [
{
"id": "VN2lZeLKMz0jGQX9JdPOnoyx",
"name": "business",
"taxonomy": {
"id": "MkJA2n0wgeDwKDb5rVXNBO4E",
"name": "topicaxis"
}
},
{
"id": "lKnb74LA9PQYVDekgRZ2JEOz",
"name": "politics",
"taxonomy": {
"id": "MkJA2n0wgeDwKDb5rVXNBO4E",
"name": "topicaxis"
}
},
{
"id": "zmrKe9MvnZDvJDqLwjyY85Bl",
"name": "programming",
"taxonomy": {
"id": "MkJA2n0wgeDwKDb5rVXNBO4E",
"name": "topicaxis"
}
},
{
"id": "kwRnbNx7jd0Gjp4gJK1Wq5Lo",
"name": "science",
"taxonomy": {
"id": "MkJA2n0wgeDwKDb5rVXNBO4E",
"name": "topicaxis"
}
},
{
"id": "V26EY4rL1N0qKD3XJvgynxP9",
"name": "technology",
"taxonomy": {
"id": "MkJA2n0wgeDwKDb5rVXNBO4E",
"name": "topicaxis"
}
}
]
}
This endpoint retrieves the available categories.
HTTP Request
GET https://api.topicaxis.com/v2/categories
Headers
Header | Description |
---|---|
apikey | Authenticate using the Topicaxis API key. |
Channels
Get the available channels
curl -H "apikey: topicaxisapikey" https://api.topicaxis.com/v2/channels
The channels endpoint returns a JSON response:
{
"channels":[
{
"id":"y0KYlk3p14G6vGDWmjrQeRgN",
"name":"Hacker News",
"url":"https://news.ycombinator.com"
}
]
}
This endpoint retrieves the available channels. A channel is a web page on which a link to an article has been posted. Channels are mostly link aggregators like Hacker News, Reddit etc.
HTTP Request
GET https://api.topicaxis.com/v2/channels
Headers
Header | Description |
---|---|
apikey | Authenticate using the Topicaxis API key. |
Sources
Get the available sources
curl -H "apikey: topicaxisapikey" https://api.topicaxis.com/v2/sources
The sources endpoint returns a JSON response:
{
"sources": [
{
"id": "Gq3xWl7ypDdRKp65YPrzvVkj",
"name": "axesslab.com",
"url": "https://axesslab.com"
},
{
"id": "WrMYJNvqK5QJmX6yAjz7VZoR",
"name": "axios.com",
"url": "https://www.axios.com"
},
{
"id": "2jbdvnqXo6pXlXR6PGNZBy1J",
"name": "axleos.com",
"url": "https://axleos.com"
}
]
}
This endpoint retrieves the sources that are tracked by Topicaxis. A source is a web page that publishes articles. A source can be a news publisher like CNN or a platform where users publish articles like Medium etc.
HTTP Request
GET https://api.topicaxis.com/v2/sources
Headers
Header | Description |
---|---|
apikey | Authenticate using the Topicaxis API key. |
Query Parameters
Parameter | Default | Description |
---|---|---|
limit | 50 | The number of sources to return. This must be a value between 1-100. |
offset | 0 | Return sources after this offset. This must be a positive value greater than 0. |
Tags
Get the available tags
curl -H "apikey: topicaxisapikey" https://api.topicaxis.com/v2/tags
The tags endpoint returns a JSON response:
{
"tags": [
{
"id": "15OjVez7ZoQoJ04gkv8dJEKa",
"name": "Covid-19"
},
{
"id": "LelDW13oNzXwLGg6JYrP5pkO",
"name": "Cryptocurrency"
},
{
"id": "YL4jroWBqw03yXdMKa9P57v3",
"name": "Economy"
},
{
"id": "kNOdqPZy1j0YpGxVlAMg934W",
"name": "Machine learning"
},
{
"id": "kpvmY78MR10p3GoeyV4EqZaP",
"name": "Python"
}
]
}
This endpoint retrieves the tags that can be assigned to a page by Topicaxis.
HTTP Request
GET https://api.topicaxis.com/v2/tags
Headers
Header | Description |
---|---|
apikey | Authenticate using the Topicaxis API key. |
Errors
The Topicaxis API uses the following error codes:
Error Code | Meaning |
---|---|
400 | Bad Request -- Your request is invalid. |
401 | Authentication error. |
404 | Not Found -- The specified page could not be found. |
429 | Too Many Requests -- You're making to many requests! Slow down! |
500 | Internal Server Error -- We had a problem with our server. Try again later. |
503 | Service Unavailable -- We're temporarily offline for maintenance. Please try again later. |