Profile
Get a Reddit user's profile.
GET | POST /v1/reddit/profileSend parameters as a query string with GET, or as a JSON body with POST. Both are equivalent.
What to Pass
| Pass | Reads | Notes |
|---|---|---|
username | The user's profile | include=trophies adds their trophy case under ext.trophies (+1 unit) |
Pass one source per call. Every identifier also takes the page URL.
Parameters
| Parameter | Type | Required | Notes |
|---|---|---|---|
include | string list | Extra reads to attach under ext: trophies (+1 unit). | |
username | string | Username, with or without u/, or the profile URL. |
Request
curl "https://gateway.apinoa.com/v1/reddit/profile?username=spez" \
-H "x-api-key: $APINOA_API_KEY"Response
Returns Account in data. A real response, shortened: arrays keep their first entries and long text is cut.
{
"success": true,
"data": {
"platform": "reddit",
"id": "1w72",
"handle": "spez",
"displayName": "spez",
"bio": "Reddit CEO",
"url": "https://www.reddit.com/user/spez/",
"avatarUrl": "https://styles.redditmedia.com/t5_3k30p/styles/profileIcon_uj015iwx9s7g1.png?width=256&height=256&crop=256:256,smart&s=…",
"bannerUrl": "https://b.thumbs.redditmedia.com/KWeEpVxXOGLoloMbM0IxGt9EiKPXizpwFgcSeWqtpZM.png",
"verified": true,
"createdAt": "2005-06-06T04:00:00.000Z",
"ext": {
"fullname": "t2_1w72",
"karma": {
"total": 941121,
"post": 184586,
"comment": 756535,
"awarder": 0,
"awardee": 0
},
"employee": true,
"moderator": true,
"premium": true,
"hasVerifiedEmail": true,
"acceptsFollowers": true,
"iconUrl": "https://styles.redditmedia.com/t5_3k30p/styles/profileIcon_uj015iwx9s7g1.png?width=256&height=256&crop=256:256,smart&s=…"
}
}
}Errors
| Status | Code | Meaning |
|---|---|---|
| 400 | INVALID_PARAMS | A parameter is missing, unknown or out of range. The message names it. |
| 401 | UNAUTHORIZED | The x-api-key header is missing, or the key is revoked or unknown. |
| 402 | INSUFFICIENT_BALANCE | The balance does not cover this call. Top up in the dashboard. |
| 404 | NOT_FOUND | The account, post or group does not exist, or is private, deleted or age-restricted. |
| 429 | MARKETPLACE_SATURATED | Too many concurrent calls. Retry after the Retry-After seconds. |
| 502 | UPSTREAM_ERROR | The platform answered with something unusable. Retry with backoff. |
Every code is listed in Errors. Failed calls are not billed.
Pricing
Price $0.001 per call, plus $0.001 for each extra call it makes — at most 1 more, so $0.002 in total. List price; the rate steps down above 1,000 calls a day.