---
name: z87:manpages
description: 142K Linux man pages with AI-generated cheat cards, category tags, use-frequency scores, and plain-english descriptions. Field-qualified search across name, description, options, synopsis, section, package, and category.
---

Anonymous: 600 tok/min. Key: `GET https://z87.ai/api/use` → `X-Api-Key` header, 6000 tok/min. On `429`, wait 1s.

Search man pages: /search?q=name:curl — field-qualified search.
Fields: name, short_description, description, options, synopsis, extra, section, package, category.

Examples:
/search?q=name:ls — search by command name
/search?q=category:networking — all networking tools
/search?q=category:filesystem section:1 — filesystem user commands
/search?q=name:git section:1 — Git user commands only
/search?q=description:socket section:2 — socket-related system calls
/search?q=category:crypto — cryptography tools and libraries
/search?q=category:shell&min_freq=4 — commonly-used shell tools

Categories: networking, filesystem, process, security, text_processing, development, database, graphics, audio, packaging, shell, monitoring, crypto, compression, web, mail, hardware, virtualization, container, backup, dns, firewall, logging, scheduler, memory, disk, printing, terminal, math, science, game, font, i18n, configuration, authentication, ipc, kernel.

Frequency filter: &min_freq=4 returns only commonly-used tools (1=obscure, 5=daily essential).

Sections: 1 (User Commands), 2 (System Calls), 3 (Library Functions), 4 (Special Files), 5 (File Formats), 6 (Games), 7 (Miscellaneous), 8 (System Administration), 9 (Kernel Routines).

Search returns: name, one_liner (plain-english description), card (cheat sheet with common invocations), categories, use_frequency, section, package.

Detail: /details/{id} — full man page with synopsis, description, options, see_also, card.

Autocomplete: /suggest?q=sys — prefix completion on names.

Random: /random — random man page.

All endpoints accept both **GET with query parameters** and **POST with JSON body**.

## Endpoints

### `https://z87.ai/api/manpages/search`

Field-qualified search. Fields: name, short_description, description, options, synopsis, extra, section, package, category. Filters: min_freq (1-5)

| Param | Type | Required | Default |
|-------|------|----------|---------|
| q | string | no | — |
| min_freq | u8 | no | — |
| limit | u32 | no | 20 |
| offset | u32 | no | 0 |

**Example:** `GET https://z87.ai/api/manpages/search?q=name:curl+section:1&limit=1`

**Response:**
```json
{
  "pages": [
    {
      "id": 5992,
      "name": "curl",
      "one_liner": "A versatile command-line tool for transferring data to or from servers via URLs.",
      "card": "# Fetch content and display in terminal
curl https://example.com
# Save remote file to local disk
curl -O https://example.com/file.zip
# Send a POST request with JSON data
curl -X POST -H \"Content-Type: application/json\" -d '{\"key\":\"val\"}' https://api.site.com
# Send form data
curl -F \"file=@photo.jpg\" https://upload.site.com
# Follow redirects
curl -L https://shorturl.com
# Include HTTP response headers
curl -I https://google.com",
      "section": "1",
      "section_name": "User Commands",
      "categories": ["networking", "web"],
      "use_frequency": 5,
      "package": "curl"
    }
  ],
  "total": 6,
  "limit": 1,
  "offset": 0
}
```

### `https://z87.ai/api/manpages/suggest`

Autocomplete man page names by prefix

| Param | Type | Required | Default |
|-------|------|----------|---------|
| q | string | **yes** | — |
| limit | u32 | no | 20 |

**Example:** `GET https://z87.ai/api/manpages/suggest?q=sys&limit=5`

**Response:**
```json
{
  "pages": [
    {
      "id": 139105,
      "name": "...nald-audit.socket, systemd-journald@.service, systemd-journald@.socket, systemd-journald-varlink@.so..."
    },
    "...4 more"
  ]
}
```

### `https://z87.ai/api/manpages/details/{id}`

Full man page by ID — includes synopsis, description, options, see_also, card, categories

No parameters.

**Example:** `GET https://z87.ai/api/manpages/details/5992`

**Response:**
```json
{
  "page": {
    "id": 5992,
    "name": "curl",
    "section": "1",
    "section_name": "User Commands",
    "one_liner": "A versatile command-line tool for transferring data to or from servers via URLs.",
    "categories": ["networking", "web"],
    "use_frequency": 5,
    "package": "curl",
    "card": "# Fetch content and display in terminal
curl https://example.com
# Save remote file to local disk
curl -O https://example.com/file.zip
# Send a POST request with JSON data
curl -X POST -H \"Content-Type: application/json\" -d '{\"key\":\"val\"}' https://api.site.com
# Send form data
curl -F \"file=@photo.jpg\" https://upload.site.com
# Follow redirects
curl -L https://shorturl.com
# Include HTTP response headers
curl -I https://google.com",
    "synopsis": "curl [options / URLs]",
    "description": "curl is a tool for transferring data from or to a server using URLs. It supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS.

       curl is powered by libcurl for all transfer-related features. See libcurl(3) for details.",
    "options": "...iately next to each other, like for example you can specify all the options -O, -L and -v at once as -OLv.

       In general, all boolean options are enabled with --option and yet again disabled with --no-option. That is, you use the same option name but prefix it with \"no-\". However, in this list we mostly only list and show the --option version of them.

       When -:, --next is used, it resets the parser state and you start again with a clean option state, except for the options that are gl...",
    "see_also": "ftp(1), wget(1)",
    "extra": "...continue-at.

              If --continue-at is provided several times, the last set value is used.

              Examples:
              curl -C - https://example.com
              curl -C 400 https://example.com

              See also -r, --range.

       -b, --cookie <data|filename>
              (HTTP) This option has two slightly separate cookie sending functions.

              Either: pass the exact data to send to the HTTP server in the Cookie header.  It is supposedly data previously ..."
  }
}
```

### `https://z87.ai/api/manpages/random`

Random man page

No parameters.

**Example:** `GET https://z87.ai/api/manpages/random`

**Response:**
```json
{
  "page": {
    "id": 94885,
    "name": "ftofix",
    "section": "3",
    "section_name": "Library Functions",
    "one_liner": "Converts double precision floats to Allegro fixed-point format with overflow clamping.",
    "categories": ["development", "...1 more"],
    "use_frequency": 1,
    "package": "allegro4-doc"
  }
}
```

### `https://z87.ai/api/manpages/stats`

Dataset statistics — section, package, and category distributions

No parameters.

**Example:** `GET https://z87.ai/api/manpages/stats`

**Response:**
```json
{
  "total": 142661,
  "fields": {
    "section": [
      ["3", 87655],
      ["1", 37552],
      ["8", 5990],
      ["5", 2631],
      ["9", 2496],
      ["2", 2115],
      ["7", 1903],
      ["6", 1329],
      ["4", 990]
    ],
    "package": [
      ["libssl-doc", 6154],
      ["dpdk-doc", 6113],
      ["freebsd-manpages", 3565],
      ["zoneminder", 3084],
      ["manpages-dev", 2508],
      ["libxcb-doc", 2311],
      ["libsdl3-doc", 2108],
      ["gnutls-doc", 1197],
      ["allegro5-doc", 1054],
      ["libdatetime-locale-perl", 1049],
      ["libcdk5-dev", 996],
      ["libnvme-dev", 969],
      ["avr-libc", 968],
      ["manpages-posix-dev", 964],
      ["allegro4-doc", 923],
      ["perl-doc", 918],
      ["ncurses-doc", 894],
      ["libstdc++-12-doc", 889],
      ["libncarg-dev", 845],
      ["tcl8.6-doc", 824],
      ["systemtap-doc", 823],
      ["libx11-doc", 804],
      ["libmongoc-doc", 791],
      ["libsystemd-dev", 723],
      ["grass-doc", 721],
      ["openmpi-doc", 703],
      ["libmotif-dev", 698],
      ["liblapack-doc", 696],
      ["shishi-doc", 657],
      ["opengl-4-man-doc", 626],
      ["libcurl4-doc", 516],
      ["libhwloc-doc", 472],
      ["libbio-perl-perl", 471],
      ["libldns-dev", 470],
      ["libexplain-dev", 467],
      ["libg2c-dev", 464],
      ["tcllib", 440],
      ["heimdal-dev", 396],
      ["netpbm", 393],
      ["ocaml-man", 390],
      ["manpages", 384],
      ["tk8.6-doc", 382],
      ["libowfat-dev", 378],
      ["openssl", 356],
      ["inventor-doc", 354],
      ["libglobus-common-doc", 351],
      ["libcaca-dev", 347],
      ["incus-client", 341],
      ["opencl-1.2-man-doc", 322],
      ["libpcp3-dev", 319],
      "...50 more"
    ],
    "category": [
      ["development", 94291],
      ["networking", 18037],
      ["graphics", 17758],
      ["security", 12656],
      ["ipc", 9561],
      ["hardware", 9544],
      ["kernel", 9538],
      ["science", 9241],
      ["web", 9006],
      ["text_processing", 8204],
      ["crypto", 8056],
      ["monitoring", 6785],
      ["filesystem", 6761],
      ["database", 6559],
      ["packaging", 6356],
      ["terminal", 4707],
      ["math", 4615],
      ["configuration", 3528],
      ["shell", 3391],
      ["authentication", 3380],
      ["memory", 3145],
      ["disk", 3062],
      ["i18n", 2912],
      ["container", 2721],
      ["mail", 2677],
      ["process", 2585],
      ["audio", 2531],
      ["virtualization", 1726],
      ["game", 1589],
      ["dns", 1457],
      ["compression", 929],
      ["backup", 902],
      ["logging", 804],
      ["font", 549],
      ["firewall", 505],
      ["printing", 425],
      ["scheduler", 367]
    ]
  }
}
```

## License

The z87 API code is MIT licensed. Each dataset carries its upstream license:
- **manpages**: Man pages carry individual upstream licenses (GPL, MIT, BSD, etc). Metadata aggregated from Debian/Ubuntu package repositories under their respective licenses. z87 API code is MIT.


---

## Other z87 Datasets

- [chess](https://z87.ai/api/chess/SKILL.md) — 1B+ Lichess games (2000+ Elo, 2013-2026)
- [colors](https://z87.ai/api/colors/SKILL.md) — Unified paint color database: ~30K colors across 20+ brands with cross-brand matching via CIEDE2000 perceptual distance, color harmony generation, coordinating color strips, and palette suggestions.
- [companies_uk](https://z87.ai/api/companies_uk/SKILL.md) — 5.7M UK companies from Companies House
- [countries](https://z87.ai/api/countries/SKILL.md) — 247 countries with 282 indicators (57 static, 225 timeseries) across economics, health, demographics, energy, environment, education, and more
- [design](https://z87.ai/api/design/SKILL.md) — 1,003 production-grade frontend designs with HTML, screenshots, prompts, and structured metadata (26 categories, 40 styles, 4K+ tags)
- [food](https://z87.ai/api/food/SKILL.md) — Recipes, FDC ingredients, and food products: 13.5K recipes with nutrition, 8K+ FDC ingredients, curated products with Nutri-Score and NOVA ratings.
- [gbif](https://z87.ai/api/gbif/SKILL.md) — GBIF Backbone Taxonomy: 7.7 million taxa with full taxonomic hierarchy, synonym resolution, tree navigation, and full-text search across the tree of life.
- [gutenberg](https://z87.ai/api/gutenberg/SKILL.md) — 60,000 Project Gutenberg books with chapter-level access, BM25 full-text search, cover art, illustrations, and AI-generated tags (genre, mood, era, locations, five-word summaries).
- [holidays](https://z87.ai/api/holidays/SKILL.md) — 3,391 public holidays across 121 countries (2026–2027)
- [home](https://z87.ai/api/home/SKILL.md) — Unified smart home device database
- [jokes](https://z87.ai/api/jokes/SKILL.md) — 41,000 jokes from three sources, AI-tagged with category, rating, topics, and offensive score
- [movies](https://z87.ai/api/movies/SKILL.md) — 360K+ movies with 40-axis taste profiles, cast, themes, ratings, and soundtrack data
- [mtg](https://z87.ai/api/mtg/SKILL.md) — 29K Magic: The Gathering cards with synergy graph engine, combo detection, and Commander deck builder.
- [music](https://z87.ai/api/music/SKILL.md) — 651K artists, 500K+ albums, 1M+ songs from MusicBrainz with genre, country, and member data
- [osm](https://z87.ai/api/osm/SKILL.md) — 46M+ OpenStreetMap POIs with Hilbert-curve spatial index and BM25 text search
- [podcast](https://z87.ai/api/podcast/SKILL.md) — 1M+ podcasts from PodcastIndex with categories, language, episode counts, popularity scores, and cadence estimates
- [restaurants](https://z87.ai/api/restaurants/SKILL.md) — 10K London restaurants with menus, Michelin stars, ingredient category scores (seafood, meat, game, etc.), and capacity data
- [solve](https://z87.ai/api/solve/SKILL.md) — Computation engine: symbolic algebra, statistics, regression, finance, graph algorithms, Monte Carlo simulation
- [wikipedia](https://z87.ai/api/wikipedia/SKILL.md) — 7.2 million English Wikipedia articles with full markdown content, infoboxes, inter-article links, and geographic coordinates.
- [wiktionary](https://z87.ai/api/wiktionary/SKILL.md) — 8M+ Wiktionary entries across 4,000+ languages

Full index: [https://z87.ai/api/SKILL.md](https://z87.ai/api/SKILL.md)
