Product Hunt API — Maker & Hunter Profiles
Documentation menu
FetchLayer FetchLayer API

Get a maker or hunter profile

Read a Product Hunt member's public profile: name, headline, about text, links, join date, follower and following counts, upvotes given, launches submitted, collections and badges — plus the first page of products they created and every product they are credited on. The way to go from a launch's maker list to who these people are.

POST /user-profile People
https://api.fetchlayer.dev/producthunt/user-profile
OpenAPI JSON

Headers

Authorization string required

Bearer token — your FetchLayer API key.

Parameters

user string required

Username, "@username", or a Product Hunt profile URL.

format string optional

json or markdown. (default: json)

timeoutMs number optional

Per-request time limit in milliseconds (max 600000).

Response Fields

user-profile

Get a maker or hunter profile

profile object

The public profile record.

profile.username string

Product Hunt username.

profile.headline string | null

The one-line bio, with about carrying the longer text.

profile.links object[]

External links listed on the profile.

profile.joinedAt string | null

When the account was created.

profile.followersCount number | null

Followers, with followingCount alongside it.

profile.upvotesGiven number | null

Upvotes this person has given.

profile.launchesSubmittedCount number | null

How many launches they have submitted — the hunter signal.

profile.isMaker boolean

Whether Product Hunt marks them as a maker, with isVerified alongside it.

profile.products object[]

The first page of products this person created, newest first.

profile.creditedProducts object[]

Every product this person is credited on. Names and logos only.

requestedUrl string

The Product Hunt page this result corresponds to.

scrapedAt string

ISO timestamp the result was collected at.

notes string[]

Read this. Caveats about this specific result — a walk that stopped early, an upstream ceiling, or promoted entries that were dropped. An empty array means nothing was held back.

blocked boolean

Always false on a successful response.

Request

curl -X POST "https://api.fetchlayer.dev/producthunt/user-profile" \
  -H "Authorization: Bearer ss-your-key" \
  -H "Content-Type: application/json" \
  -d '{"user":"rrhoover"}'

Response

{
  "profile": {
    "username": "rrhoover",
    "name": "Ryan Hoover",
    "headline": "Founder",
    "followersCount": 128400,
    "launchesSubmittedCount": 1204,
    "isMaker": true
  },
  "notes": []
}