Skip to content

Migrating to APITube ​

Use these guides to move your requests to APITube. Each guide maps parameters, explains differences in search and responses, and links to a compatibility library for keeping your existing response-handling code.

The guides note unsupported features and link to migration kits with parameter mappings.

Pick your API ​

You are onGuideMigration kit
NewsAPI.orgFrom NewsAPI.orgnewsapi-org-apitube-migration-kit
GNewsFrom GNewsgnews-apitube-migration-kit
NewsCatcherFrom NewsCatchernewscatcher-apitube-migration-kit
NewsData.ioFrom NewsData.ionewsdata-io-apitube-migration-kit
MediastackFrom Mediastackmediastack-apitube-migration-kit
NewsAPI.ai / Event RegistryFrom NewsAPI.ainewsapi-ai-apitube-migration-kit
The News APIFrom The News APIthenewsapi-apitube-migration-kit
World News APIFrom World News APIworldnewsapi-apitube-migration-kit
MarketauxFrom Marketauxmarketaux-apitube-migration-kit
PerigonFrom Perigonperigon-apitube-migration-kit
SerpApi Google NewsFrom SerpApiserpapi-apitube-migration-kit
ScrapingBeeFrom ScrapingBeescrapingbee-apitube-migration-kit
Quantexa News API (formerly Aylien; API host no longer resolves)From Quantexaquantexa-apitube-migration-kit
Bing News Search (retired August 2025)From Bing News Searchbing-news-api-apitube-migration-kit
GDELT DOC 2.0 (free, no key, no article body)From GDELTgdelt-apitube-migration-kit

What every migration has in common ​

Check these differences before converting requests. They apply across the migration guides.

1. Search covers headlines, not article bodies ​

Most news APIs search the title and the body text by default. APITube's title= searches headlines only.

bash
# Other APIs: matches "Tesla" anywhere in the article
q=Tesla

# APITube: matches "Tesla" in the headline
title=Tesla

If your previous API searched article bodies, a headline-only search may return fewer results.

Use entity filters when you want news about a person, company or place:

bash
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.apitube.io/v1/news/everything?organization.name=Tesla"

Entity filters match subjects mentioned in article text. See Parameters for person.name, location.name, entity.id and other options.

2. Comma-separated filters apply at most three values ​

bash
language.code=en,de,fr,it     # Italian is ignored — no error

The fourth value onwards is dropped silently. Two ways around it:

bash
# The boolean query language has no value-count limit
query=language.code:(en OR de OR fr OR it OR es)

# Or split into requests of three and deduplicate on the article id

3. Unknown parameters are ignored, not rejected ​

Unknown parameters are ignored even when the request returns 200 ok. Check names before forwarding parameters from another API:

bash
# Both return the entire index with HTTP 200
curl "…/v1/news/count?q=tesla&api_key=KEY"
curl "…/v1/news/count?country=us&api_key=KEY"

The compatibility libraries warn about parameters they leave out. If you convert requests by hand, check names against Parameters.

4. Wildcards are not supported, and they fail quietly ​

bash
title=technology     # 75,574 articles     ✅
title=technolog*     # the entire index    ❌ HTTP 200, filter dropped

Expand prefix searches into an explicit OR list:

bash
query=title:(technology OR technological OR technologies)

The boolean form at least errors properly: query=title:technolog* returns 400 ER0704.

5. Set a generous client timeout and retry on 500 ​

Response time depends on the filters and the number of articles requested. Use smaller pages and request only the fields you need for large jobs.

A timeout may return 500 or 502. The same request can succeed on retry.

Set your client timeout above 30 seconds and retry once on 500. When paging through results, fetch /v1/news/count once for each set of filters rather than for every page.

Endpoint equivalents at a glance ​

What you wantAPITube endpoint
Search everything/v1/news/everything
Top headlines/v1/news/top-headlines
Breaking news/v1/news/everything?is_breaking=1
Result count/v1/news/count
Geo search/v1/news/local
Aggregation / trends/v1/news/trends?field=entity.id
Real-time pushWebhooks or WebSocket stream
Entity autocomplete/v1/suggest/entities?prefix=

What you gain ​

APITube article responses include:

  • Named entities with Wikidata and Wikipedia links, occurrence counts, and per-entity sentiment
  • Sentiment split into title, body, and overall on a −1…1 scale
  • Three ways to group news — IPTC MediaTopics (category.id), editorial topics (topic.id), and industry sectors (industry.id)
  • Full article body as text and HTML
  • Publisher metadata — political bias, authority rank, country
  • Readability scores — Flesch-Kincaid, reading ease, target audience
  • 250 articles per request (10 on Free, 50 on Starter, 200 on Basic)
  • Export to JSON, JSONL, CSV, TSV, XLSX, XML, RSS, and Parquet from any query

Before you start ​

  1. Get a key at apitube.io and make one request:

    bash
    curl -H "X-API-Key: YOUR_API_KEY" \
      "https://api.apitube.io/v1/news/everything?title=bitcoin&per_page=3"
  2. Check your languages. APITube does not index every language every competitor lists — most notably Russian and Ukrainian are not available. The per-service guides list exactly which codes are rejected. Confirm yours works before converting anything:

    bash
    curl -H "X-API-Key: YOUR_API_KEY" \
      "https://api.apitube.io/v1/news/count?language.code=de"
  3. Read your service's guide. Convert requests by hand, or use the compatibility library in its migration kit.

Getting help ​

If a mapping is incorrect, open an issue in the relevant migration kit.