Enterprise API
Integrate Aevum News' comprehensive global journalism feed into your applications. Access real-time articles, advanced search, topic feeds, and streaming data with our robust RESTful API.
https://api.aevumnews.com/v2
🔐 Authentication
All API requests require authentication via API key. Include your key in the Authorization header.
curl https://api.aevumnews.com/v2/news \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
const response = await fetch('https://api.aevumnews.com/v2/news', { method: 'GET', headers: { 'Authorization': `Bearer ${process.env.AEVUM_API_KEY}`, 'Content-Type': 'application/json' } }); const data = await response.json(); console.log(data.articles); // Array of article objects
import requests headers = { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" } response = requests.get( "https://api.aevumnews.com/v2/news", headers=headers ) articles = response.json()["articles"]
🌐 Base URL & Versioning
All endpoints are versioned. Current stable version is v2. Version is included in the base URL path.
Previous Stable: v2.3 — Supported until July 2025
Legacy: v1 — Deprecated as of October 2024
⚡ Rate Limits
Rate limits are applied per API key and tier. Headers in each response indicate your current usage.
X-RateLimit-Limit: 1000 X-RateLimit-Remaining: 947 X-RateLimit-Reset: 1704067200 X-RateLimit-Window: 60s
📋 API Endpoints
Complete reference for all available endpoints.
Description
Fetch a paginated feed of the latest news articles. Supports filtering by category, region, and date range.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | Optional | Page number (default: 1) |
| per_page | integer | Optional | Items per page (1-100, default: 20) |
| category | string | Optional | Filter by category (politics, tech, business, world, science, culture) |
| region | string | Optional | ISO 3166-1 alpha-2 region code |
| date_from | string | Optional | Start date (ISO 8601: YYYY-MM-DD) |
| date_to | string | Optional | End date (ISO 8601: YYYY-MM-DD) |
| sort | string | Optional | Sort order: relevance, date, popularity |
Example Request
curl "https://api.aevumnews.com/v2/news?page=1&per_page=20&category=tech&sort=date" \
-H "Authorization: Bearer YOUR_API_KEY"
Example Response
{
"status": "success",
"page": 1,
"per_page": 20,
"total_pages": 487,
"total_results": 9734,
"articles": [
{
"id": "art_8xK2mN9pQ1
"headline": "AI Revolution: New Models Redefine Human-Computer Interaction",
"summary": "Researchers unveil breakthrough AI systems with unprecedented context understanding...",
"category": "technology",
"tags": ["AI", "machine-learning", "innovation"],
"author": "Marcus Chen",
"published_at": "2025-01-15T09:30:00Z",
"updated_at": "2025-01-15T10:15:00Z",
"read_time": 5,
"region": "global",
"source": "Aevum Correspondent Network",
"url": "https://www.aevumnews.com/articles/art_8xK2mN9pQ1,
"image_url": "https://cdn.aevumnews.com/images/ai-revolution.jpg",
"sentiment": "neutral",
"verified": true
}
]
}
Description
Search across headlines, body text, tags, and metadata. Supports fuzzy matching, phrase queries, and faceted filtering.
curl "https://api.aevumnews.com/v2/search?q=climate+change+summit&category=world&min_date=2025-01-01&highlight=true" \
-H "Authorization: Bearer YOUR_API_KEY"
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| q | string | Required | Search query string |
| category | string | Optional | Filter by category |
| min_date / max_date | string | Optional | Date range filter (ISO 8601) |
| highlight | boolean | Optional | Include highlighted match snippets |
| language | string | Optional | Filter by language code (en, es, fr, de, ja, ar...) |
Description
Fetch a single article by its unique ID, including full body text, metadata, related articles, and embedded media.
curl "https://api.aevumnews.com/v2/articles/art_8xK2mN9pQ1" \
-H "Authorization: Bearer YOUR_API_KEY"
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | Required | Unique article identifier (e.g., art_8xK2mN9pQ1) |
Description
Submit original content for syndication to Aevum News partners. Content is reviewed by editorial team within 24 hours.
curl -X POST "https://api.aevumnews.com/v2/articles" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "New Discovery in Renewable Energy",
"body": "Researchers at MIT have achieved...",
"category": "science",
"tags": ["renewable", "energy", "MIT"],
"language": "en",
"image_url": "https://example.com/image.jpg",
"author": "Dr. Jane Smith",
"source_url": "https://example.com/original"
}'
202 Accepted during review period.{
"status": "success",
"categories": [
{"slug": "world", "name": "World Affairs", "article_count": 24853},
{"slug": "politics", "name": "Politics", "article_count": 21340},
{"slug": "technology", "name": "Technology", "article_count": 18762},
{"slug": "business", "name": "Business & Finance", "article_count": 15234},
{"slug": "science", "name": "Science", "article_count": 12089},
{"slug": "culture", "name": "Culture & Arts", "article_count": 9845},
{"slug": "health", "name": "Health", "article_count": 8621},
{"slug": "climate", "name": "Climate & Environment", "article_count": 11432}
]
}
Description
Retrieve available tags for filtering. Use ?q= for tag search, ?popular=true for trending tags.
curl "https://api.aevumnews.com/v2/tags?popular=true&limit=10" \
-H "Authorization: Bearer YOUR_API_KEY"
🔔 Webhooks
Receive real-time notifications when specific events occur. Configure webhook URLs in your dashboard.
article.published
Triggered when a new article is published matching your filter criteria.
article.updated
Triggered when an existing article is updated or corrected.
article.deleted
Triggered when an article is removed from the feed.
breaking_news.alert
Triggered when a breaking news event is declared.
category.trending
Triggered when a category reaches trending status.
rate_limit.warning
Triggered when API usage reaches 80% of your limit.
X-Aevum-Signature header.{
"event": "article.published",
"timestamp": "2025-01-15T14:32:00Z",
"data": {
"id": "art_9yL3nO0qR2,
"headline": "Global Markets Hit Record Highs",
"category": "business",
"region": "global",
"url": "https://www.aevumnews.com/articles/art_9yL3nO0qR2"
}
}
📊 Analytics Endpoint
Access aggregated data about your API usage and content performance.
{
"period": {"from": "2025-01-01", "to": "2025-01-15"},
"total_requests": 45230,
"articles_fetched": 9046,
"search_queries": 36184,
"avg_response_time_ms": 142,
"error_rate": "0.3%",
"rate_limit_hits": 12,
"top_categories": [
{"category": "technology", "count": 12450},
{"category": "world", "count": 9870},
{"category": "business", "count": 7640}
]
}
📦 Bulk Operations
Retrieve or process multiple articles efficiently with batch endpoints.
curl -X POST "https://api.aevumnews.com/v2/bulk/articles" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"ids": ["art_8xK2mN9pQ1", "art_7wJ1lM8oP0", "art_6vI0kL7nO9"]}'
📡 Real-Time Streaming
Subscribe to live news feeds via WebSocket or Server-Sent Events.
wss://stream.aevumnews.com/v2SSE:
https://api.aevumnews.com/v2/stream/sseconst ws = new WebSocket('wss://stream.aevumnews.com/v2'); ws.onopen = () => { ws.send(JSON.stringify({ "action": "subscribe", "event": "article.published", "filters": { "categories": ["technology", "science"], "regions": ["US", "UK", "global"] } })); }; ws.onmessage = (event) => { const article = JSON.parse(event.data); console.log(`New: ${article.headline}`); }; ws.onerror = (error) => console.error('Stream error:', error);
🚨 Error Handling
The API uses standard HTTP status codes and returns structured error responses.
{
"error": {
"code": "invalid_api_key",
"message": "The API key provided is invalid or has expired.",
"status": 401,
"request_id": "req_9xM3pN2qR5",
"help": "https://docs.aevumnews.com/errors/invalid_api_key"
}
}
HTTP Status Codes
X-RateLimit-Reset header.
📦 SDKs & Libraries
Official and community-maintained SDKs for your preferred language.
JavaScript / Node.js
@aevum/sdk-js
Python
aevum-python
Rust
aevum-rs
Go
github.com/aevum/go-sdk
Java
aevum-java-sdk
Ruby
aevum-ruby
// npm install @aevum/sdk-js import { AevumClient } from '@aevum/sdk-js'; const aevum = new AevumClient({ apiKey: process.env.AEVUM_API_KEY, timeout: 5000, retries: 3 }); // Fetch latest tech news const articles = await aevum.news.fetch({ category: 'technology', perPage: 50, sort: 'date' }); // Search for specific topic const results = await aevum.search.query('quantum computing breakthrough', { minDate: '2025-01-01', highlight: true }); // Real-time streaming const stream = aevum.stream.subscribe({ events: ['article.published', 'breaking_news.alert'], filters: { categories: ['technology', 'science'], regions: ['global'] } }); stream.on('message', (data) => { console.log(data.headline); });
💎 Pricing
Choose the plan that fits your integration needs. All plans include a 14-day free trial.
Perfect for prototyping and small projects.
- 1,000 requests / minute
- Basic news feed access
- Search with 500 qpd
- Standard response format
- Community support
For growing teams and production apps.
- 10,000 requests / minute
- All endpoints + streaming
- Advanced search & filters
- Webhook subscriptions
- Syndication submissions
- Priority email support
- Analytics dashboard
For large-scale operations and media partners.
- 100,000+ requests / minute
- Unlimited everything
- Dedicated infrastructure
- Custom SLA (99.99%)
- White-label options
- Dedicated account manager
- Custom data pipelines
- On-premise deployment
❓ Frequently Asked Questions
region parameter using ISO 3166-1 alpha-2 country codes (e.g., US, GB, JP). You can also filter by multi-region combinations and the special global keyword.
X-RateLimit-Remaining header in responses. When it approaches zero, implement exponential backoff. Webhook events rate_limit.warning are sent at 80% usage. Enterprise plans can request custom limits or burst allowances.
https://sandbox-api.aevumnews.com/v2 with a sandbox key from your dashboard. The sandbox contains synthetic data and unlimited requests for development and testing.