4chan API

Beginner's Pick Social / No Auth Required Beginner HTTPS CORS
Free to Use
78 B
Measured Score 0 50 100 Speed 23/30 Consistency 17/20 Security 20/20 Browser access 10/15 Transparency 8/15 TESTED 2026-09-21

Overview

The 4chan API provides read-only, public access to boards, threads, and posts on 4chan with no authentication required. You can retrieve thread lists, individual posts, and board catalogs in JSON format. It is a great beginner-friendly API for learning how to parse JSON responses and build a simple reader app.

Beginner Tip

The 4chan API has strict rate limits — wait at least 1 second between requests to the same board and at least 10 seconds between full thread list fetches. Ignoring this will get your IP temporarily banned.

Measurement Record

What actually happened when we called this API from our own infrastructure. Every value below was recorded by the request, not copied from the provider's documentation.

Request
GET https://a.4cdn.org/g/catalog.json
Result
HTTP 200 · application/json · 420,735 bytes · compressed
Response time
52 ms (median of 3) · fastest 48 ms
Transport
TLSv1.3 · TLS_AES_256_GCM_SHA384 · certificate issued by Google Trust Services
Browser CORS
Allowed — Access-Control-Allow-Origin: http://boards.4chan.org
Served by
cloudflare
Answered
6 of 8 weekly checks (75%, since 2026-07-31)
Recorded
2026-09-21

Fields Returned

Top-level fields present in the response we captured, with the type and value we actually received.

Field Type Value received
page integer 1
threads array [1 item]

Captured Response

Captured from a real request to https://a.4cdn.org/g/catalog.json on 2026-08-31. Long arrays and nested objects are truncated to keep the shape readable.

JSON Response · Captured
[
  {
    "page": 1,
    "threads": [
      {
        "…": "(25 more fields)"
      }
    ]
  }
]

Implementation Example

Calls a real endpoint of this API. Replace any placeholder credentials with your own key.

Request
const url = "https://a.4cdn.org/g/catalog.json";
const response = await fetch(url);
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

Common Errors & Troubleshooting

Generated guidance based on this API's documentation, not observed by us. Treat it as a starting point and check against the provider's own error reference.

404 Not Found The board abbreviation or thread number does not exist, or the thread has been archived or deleted.
✓ Check the board abbreviation is correct (e.g., "g" for technology) and confirm the thread is still active via the catalog endpoint.
429 Too Many Requests You are sending requests too quickly and have been rate-limited.
✓ Add a delay of at least 1 second between requests. For catalog and thread list endpoints, wait at least 10 seconds between refreshes.
Empty or null fields Some post fields such as sub (subject) or com (comment) are optional and may be absent.
✓ Always check if a field exists before accessing it in your code, using optional chaining or null checks.

Measured Score Breakdown

Live HTTP request to the API endpoint

Speed 23/30
Consistency 17/20
Security 20/20
Browser access 10/15
Transparency 8/15
Endpoint Response Time 52ms

Fully tested on Sep 21, 2026

Technical Specifications

Auth No Auth
HTTPS REQUIRED
CORS YES
Category Social
Difficulty Beginner
Endpoint last called: 2026-09-21

Related Tags

Similar APIs

View All →