Access

Pulse endpoints are publicly accessible. You can call them without an API key.

Use a valid API key if you want a higher rate limit tier. Generate one from Account Settings → API Keys.

Authorization: Bearer YOUR_API_KEY
Public accessNo API key requiredLower rate limit for anonymous callers
Authenticated accessValid API key in `Authorization`Higher rate limit for valid API key callers

List Pulses

GET/pulse

List non-expired trending pulses. Without filters, returns today's hottest topics across all categories sorted by heat score.

Query Parameters

categorystringFilter by category name
localeen-US | zh-CNFilter by locale
limit1–50 (default 20)Page size
page≥1 (default 1)Page number
orderByheatScore | heatDelta | createdAtSort field, always desc (default heatScore)

Request

curl "https://atypica.ai/api/pulse"

# With filters
curl "https://atypica.ai/api/pulse?locale=en-US&limit=5&category=AI+Tech"

# With API key for higher rate limits
curl "https://atypica.ai/api/pulse?locale=en-US&limit=5" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response (200 OK)

{
  "success": true,
  "data": [
    {
      "id": 193,
      "title": "China QKD Network: quantum chip breakthrough",
      "content": "Today's buzz highlights...",
      "category": "Science",
      "locale": "en-US",
      "heatScore": 473.97,
      "heatDelta": 0.31,
      "createdAt": "2026-02-14T02:53:04.647Z"
    }
  ],
  "pagination": { "page": 1, "pageSize": 20, "total": 84 }
}

Get Pulse Categories

GET/pulse/categories

List all distinct non-expired pulse categories.

Query Parameters

localeen-US | zh-CNFilter categories by locale (optional)

Request

curl "https://atypica.ai/api/pulse/categories"

# Authenticated request
curl "https://atypica.ai/api/pulse/categories" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response (200 OK)

{
  "success": true,
  "data": ["AI Product", "AI Tech", "Business", "LLM Tech", "Science"]
}

Get Pulse

GET/pulse/:id

Get a single non-expired pulse with its source posts and heat history.

Request

curl "https://atypica.ai/api/pulse/193"

# Authenticated request
curl "https://atypica.ai/api/pulse/193" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response (200 OK)

{
  "success": true,
  "data": {
    "id": 193,
    "title": "China QKD Network: quantum chip breakthrough",
    "content": "Today's buzz highlights...",
    "category": "Science",
    "locale": "en-US",
    "heatScore": 473.97,
    "heatDelta": 0.31,
    "createdAt": "2026-02-14T02:53:04.647Z",
    "history": [
      {
        "date": "2026-02-12",
        "heatScore": 421.18
      },
      {
        "date": "2026-02-13",
        "heatScore": 448.62
      },
      {
        "date": "2026-02-14",
        "heatScore": 473.97
      }
    ],
    "posts": [
      {
        "postId": "1890123456789",
        "author": "quantumresearcher",
        "content": "China just deployed...",
        "views": 124000,
        "likes": 3200,
        "retweets": 870,
        "replies": 145,
        "url": "https://x.com/..."
      }
    ],
    "opinionSummary": {
      "summary": "Experts are cautiously optimistic...",
      "overallSentiment": "mixed",
      "keyViewpoints": [
        { "stance": "optimistic", "summary": "Major milestone in quantum networking" },
        { "stance": "skeptical", "summary": "Practical scalability remains unproven" }
      ],
      "controversies": ["Whether QKD offers real advantage over post-quantum cryptography"],
      "generatedAt": "2026-02-14T03:10:00.000Z"
    }
  }
}

Error Responses

429 Too Many Requests

{
  "success": false,
  "message": "Too Many Requests"
}

404 Not Found

{
  "success": false,
  "message": "Pulse not found"
}

500 Internal Server Error

{
  "success": false,
  "message": "Internal server error"
}

Rate Limits

Pulse API requests are rate-limited per minute.

Public access30 requests / minuteApplied per client IP
Authenticated access120 requests / minuteApplied per valid API key

Responses include rate limit headers such as `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset`, and `Retry-After` when throttled.

We recommend implementing exponential backoff when you receive `429 Too Many Requests`.

Pulse API Documentation | atypica.AI