Epochal Stock · Developer Image API v1

Server-side access to the full Epochal Stock image catalog

One clear plan for design apps, CMS plugins, and production backends: $50 USD/month, the complete image collection, 30 requests per minute, and unlimited serial original downloads. Authenticate with a Bearer API key—never a query string.

Base URL: https://epochalstock.com/api/v1 · No free tier · No per-image billing · No video in v1

Live catalog snapshot

Stats are loaded from GET /stats when this docs site has a server-side API key configured. Without a key, labeled demo figures are shown so the layout still works locally.

Live from API

3,575 Total images
7,856 Total tags
2026-07-20T07:20:02+00:00 Catalog built at

Built for design applications

The Developer Image API is a catalog and download surface for server-side integrations. Search titles, descriptions, and tags; pull metadata in bulk; then mint short-lived download URLs so secret keys never appear in browser history or access logs.

Full catalog

One subscription unlocks every image collection available through Epochal Stock. No bundle tiers, credit balances, or per-asset checkout in the API.

Predictable rate limit

30 requests/minute per account. Extra API keys do not multiply the limit—use them to isolate projects, not to scale throughput.

Unlimited serial downloads

Originals are unlimited. Transfers run one at a time per account via five-minute, single-use tokens. Concurrent downloads return 409.

Design-app ready

Thumbnails and watermarked previews for UI grids; signed original URLs for export pipelines. Ideal for editors, template systems, and production backends.

The single plan

There is exactly one commercial plan. There is no free tier, no per-image billing, and no video access in v1. All keys on an account share the same rate limit and concurrent-download lease.

Price Catalog API limit Original downloads API keys
$50 USD / month All image collections 30 requests / minute per account Unlimited; one concurrent transfer Up to 20 named keys

Subscribe via PayPal from the developer portal after registration. Catalog access activates only when the subscription is ACTIVE. Cancellation stops renewal; access continues until the paid period ends. Images licensed during an active subscription remain licensed afterward under the commercial license.

Endpoint map

Authenticated catalog calls require Authorization: Bearer <key>. GET /health and binary download token URLs do not use the Bearer key.

Core resource groups

Images GET /images GET /images/{id} POST /images/batch
Tags GET /tags GET /tags/{tag}
Downloads POST /downloads GET /downloads/{token}
Stats & health GET /stats GET /health
Method Path Purpose
GET /health Service health (no auth)
GET /images Search and list images (q, tags, sort, cursor)
POST /images/batch Fetch up to 100 image records in one request
GET /images/{image_id} Complete metadata for one image
GET /tags List normalized tags and image counts
GET /tags/{tag} One tag, count, and filtered image list URL
GET /stats Catalog totals and index timestamp
POST /downloads Create a five-minute single-use original download URL

How a request works

Every successful JSON response uses a data / meta envelope. Errors use a structured error object with a machine-readable code, human message, optional details, and a request_id. Keep X-Request-ID when you report issues.

Request → Auth → Catalog → Response

1. Request HTTPS to https://epochalstock.com/api/v1 with Accept: application/json
2. Auth Bearer API key header only—query keys rejected
3. Catalog Search, metadata, tags, or mint a download token
4. Response JSON envelope + rate-limit headers + X-Request-ID

Original files use a two-step flow. POST /downloads returns a short-lived download_url. Fetch that URL without the API key. Tokens expire after five minutes and become invalid after first use.

Quick request: search images

Store your key as EPOCHAL_API_KEY on the server. The examples below call GET /images with a simple text query. Full multi-language samples live on the Code Examples page.

cURL
curl -sS "https://epochalstock.com/api/v1/images?q=golden+forest&limit=10" \
  -H "Authorization: Bearer $EPOCHAL_API_KEY" \
  -H "Accept: application/json"

Problems the API solves

Practical product pain points you can address with the documented v1 catalog API— search, tags, batch metadata, original downloads, and stats—without inventing extra endpoints.

Apps you can build

Product blueprints that keep secrets on your backend: browser → your server → Epochal API. Each guide maps UI surfaces to real endpoints only.

Documentation map

Jump to the section you need. Each page is self-contained English developer documentation.

Getting Started

Register, subscribe, create a named key, set env vars, and run your first health check and search.

Authentication

Bearer keys only, key lifecycle, revocation, and why query-string keys are rejected.

Detail & Batch

Single-image metadata and up to 100 IDs per batch request.

Tags & Stats

Normalized tags, counts, and live catalog statistics.

Downloads

Two-step original downloads, token lifetime, and concurrency rules.

Limits & Errors

Rate-limit headers, HTTP status codes, and machine-readable error codes.

Code Examples

Copy-paste samples for common server stacks and workflows.