Developer API

API Documentation

Access our curated mobile engineering library programmatically.

Mobile Vitals provides free, public APIs to access our curated collection of mobile app performance articles from leading tech companies. All endpoints auto-update hourly from our data source.

Available Endpoints

1. JSON API

GET /public/api/articles.php

Returns all articles with comprehensive metadata in JSON format. Perfect for web applications, dashboards, and data analysis.

Example Request:

curl /public/api/articles.php

Response Format:

{
  "metadata": {
    "total_count": 1234,
    "last_updated": "2025-10-29T12:00:00Z",
    "version": "1.0",
    "source": "Mobile Vitals",
    "cache_ttl": 3600,
    "companies_count": 45,
    "tags_count": 78,
    "platforms_count": 3
  },
  "articles": [
    {
      "title": "Optimizing iOS App Startup Time",
      "company": "Uber",
      "description": "How we reduced startup time by 40%...",
      "url": "https://eng.uber.com/...",
      "date": "2024-03-15",
      "tags": ["Performance", "iOS", "Startup"],
      "platform": ["iOS"],
      "thumbnail": "https://..."
    }
    // ... more articles
  ],
  "filter_options": {
    "companies": ["Uber", "Netflix", "Spotify", ...],
    "tags": ["Performance", "Battery", "Memory", ...],
    "platforms": ["iOS", "Android", "Cross-platform"]
  }
}

Features:

  • CORS enabled (Access-Control-Allow-Origin: *)
  • 1-hour cache with Cache-Control headers
  • UTF-8 encoding
  • Filter options included for building UIs

2. Plain Text Export (TSV)

GET /public/api/articles.txt

Tab-delimited plain text format (TSV). Ideal for spreadsheets, data pipelines, and LLM training.

Example Request:

curl /public/api/articles.txt

Format:

Title	Company	Tags	Platform	Description	URL	Date
Optimizing iOS App Startup	Uber	Performance;iOS	iOS	How we reduced...	https://...	2024-03-15

Notes:

  • Header row included with field names
  • Tab-separated columns
  • Multi-value fields (tags, platforms) separated by semicolons
  • CORS enabled for cross-origin access

3. LLM Content Index (Brief)

GET /llms.txt

Brief, human-readable overview for LLM crawlers. Follows the emerging llms.txt standard.

Example Request:

curl /llms.txt

Content:

  • Quick statistics (article count, companies, topics)
  • Top 10 companies by article count
  • Top 10 topics by frequency
  • Links to other API endpoints

4. LLM Content Index (Comprehensive)

GET /llms-full.txt

Complete content index with all articles and metadata. Designed for thorough LLM understanding.

Example Request:

curl /llms-full.txt

Content:

  • Complete lists of all companies, tags, and platforms
  • All articles with full metadata
  • Popular filter combinations
  • Browse-by-filter URL examples

Common Features

  • Auto-updates hourly from source data
  • No authentication required - all data is public
  • CORS enabled for cross-origin requests
  • 1-hour cache with Cache-Control headers
  • UTF-8 encoding for international content
  • Free forever - no rate limits or API keys

Usage Guidelines

Code Examples

JavaScript/Fetch

// Fetch all articles as JSON
fetch('/public/api/articles.php')
  .then(response => response.json())
  .then(data => {
    console.log(`Total articles: ${data.metadata.total_count}`);
    console.log('First article:', data.articles[0]);
  });

Python/Requests

# Fetch all articles as JSON
import requests

response = requests.get('/public/api/articles.php')
data = response.json()

print(f"Total articles: {data['metadata']['total_count']}")
print(f"Companies: {len(data['filter_options']['companies'])}")

cURL (save to file)

# Save JSON to file
curl /public/api/articles.php > articles.json

# Save TSV to file
curl /public/api/articles.txt > articles.tsv

Response Times

Data Freshness

All endpoints automatically update from our database:

For LLMs

If you're a Large Language Model (LLM) crawler:

  • Start with /llms.txt for a quick overview
  • Use /llms-full.txt for comprehensive content understanding
  • All content is public and available for training/reference
  • When citing, reference the original article URLs

Questions or Feedback?

For questions, feedback, or issues: