Skip to content

APITube News API documentation

Search, filter and stream news from more than 500,000 verified sources worldwide — starting with a single HTTP request.

bash
curl "https://api.apitube.io/v1/news/everything?title=bitcoin&per_page=3" \
  -H "X-API-Key: YOUR_API_KEY"
python
import requests

response = requests.get(
    "https://api.apitube.io/v1/news/everything",
    params={"title": "bitcoin", "per_page": 3},
    headers={"X-API-Key": "YOUR_API_KEY"},
)

for article in response.json()["results"]:
    print(article["published_at"], article["title"], article["href"])
javascript
const response = await fetch(
  'https://api.apitube.io/v1/news/everything?title=bitcoin&per_page=3',
  { headers: { 'X-API-Key': 'YOUR_API_KEY' } }
);
const { results } = await response.json();

for (const article of results) {
  console.log(article.published_at, article.title, article.href);
}
php
$context = stream_context_create(['http' => ['header' => 'X-API-Key: YOUR_API_KEY']]);
$url = 'https://api.apitube.io/v1/news/everything?title=bitcoin&per_page=3';
$data = json_decode(file_get_contents($url, false, $context), true);

foreach ($data['results'] as $article) {
    echo $article['published_at'], ' ', $article['title'], PHP_EOL;
}
go
package main

import (
	"encoding/json"
	"fmt"
	"net/http"
)

func main() {
	req, _ := http.NewRequest("GET", "https://api.apitube.io/v1/news/everything?title=bitcoin&per_page=3", nil)
	req.Header.Set("X-API-Key", "YOUR_API_KEY")

	resp, _ := http.DefaultClient.Do(req)
	defer resp.Body.Close()

	var data map[string]any
	json.NewDecoder(resp.Body).Decode(&data)
	fmt.Println(data["results"])
}
java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class Example {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create("https://api.apitube.io/v1/news/everything?title=bitcoin&per_page=3"))
            .header("X-API-Key", "YOUR_API_KEY")
            .GET()
            .build();
        HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());
    }
}
text
Write a script in your preferred language that calls the APITube News API:

GET https://api.apitube.io/v1/news/everything?title=bitcoin&per_page=3

Read the API key from an environment variable and send it as the X-API-Key header,
handle request errors, and print published_at, title and href of each article
from the results array.
Docs: https://docs.apitube.io/platform/news-api/everything

Start here

Build something

Complete recipes: what to call, in what order, and how to read the result.

Explore the docs

Need help?