Endpoint
GET /roblox-user-data?username=
{username} or /roblox-user-data?userId={userId}Query
- username: Roblox username (string). One of
usernameoruserIdis required. - userId: Roblox user ID (number). One of
usernameoruserIdis required. - include: Optional comma-separated list of sections to fetch. Use
allfor everything. Unknown keys are ignored. - exclude: Optional comma-separated list of sections to omit from the result.
- groupId: When using
groupRolesorgroupWall, specify the group ID (number). - wallLimit: When using
groupWall, number of wall posts to fetch (1–100, default 10). - expand: Optional. Expand ID lists into detailed user objects. Values:
allor any offriends, followers, following(comma-separated). Adds fields:friendsInfo,followersInfo,followingInfo.
Valid section keys
friends
followers
following
outfits
groups
premium
games
usernameHistory
user
presence
groupRoles
groupWall
thumbnails
Response
{
"friends": [ { "id": 123456, "name": "PlaceholderFriend", "displayName": "PlaceholderFriend" } ],
"followers": [ { "id": 234567 } ],
"following": [ { "id": 345678 } ],
"outfits": [ { "id": 456789, "name": "Casual Outfit", "isEditable": true } ],
"groups": [ { "group": { "id": 567890, "name": "Example Group", "memberCount": 1234 }, "role": { "id": 10, "name": "Member", "rank": 1 } } ],
"premium": false,
"games": [ { "id": 678901, "name": "Example Game", "placeId": 789012, "universeId": 890123 } ],
"usernameHistory": [ { "name": "OldUser123", "created": "2020-01-01T00:00:00.000Z" } ],
"user": { "id": 1, "name": "Roblox", "displayName": "Roblox", "description": "...", "created": "2006-01-01T00:00:00.000Z", "isBanned": false },
"presence": { "userPresenceType": 2, "lastLocation": "Play", "lastOnline": "2025-08-11T15:00:00.000Z", "placeId": 1234567890 },
"thumbnails": [ { "targetId": 1, "state": "Completed", "imageUrl": "https://.../avatar-headshot.png" } ],
"friendsInfo": [ { "id": 123456, "name": "PlaceholderFriend", "displayName": "PlaceholderFriend" } ],
"followersInfo": [ { "id": 234567, "name": "Follower", "displayName": "Follower" } ],
"followingInfo": [ { "id": 345678, "name": "Following", "displayName": "Following" } ],
"meta": { "startedAt": "...", "completedAt": "...", "durationMs": 123 }
}
Examples
PowerShell
curl.exe "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox"
curl.exe "https://roblox-user-api.vercel.app/roblox-user-data?userId=1&include=user,thumbnails,presence"
curl.exe "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox&include=friends,followers"
curl.exe "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox&exclude=following"
curl.exe "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox&include=all&exclude=games"
curl.exe "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox&include=groupRoles,groupWall&groupId=1&wallLimit=10"
curl
curl "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox"
curl "https://roblox-user-api.vercel.app/roblox-user-data?userId=1&include=user,thumbnails,presence"
curl "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox&include=groups,outfits"
curl "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox&exclude=usernameHistory"
curl "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox&include=user,presence"
curl "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox&include=groupRoles&groupId=1"
Fields
- friends: List of friend objects from friends.roblox.com
- followers: First 100 follower records (supports Roblox pagination upstream)
- following: First 100 following records (supports Roblox pagination upstream)
- outfits: Saved outfits from avatar.roblox.com (first 100)
- groups: Group roles for the user from groups.roblox.com (first 100)
- premium: Boolean, Roblox Premium membership status
- games: First 100 games associated with the user from games.roblox.com
- usernameHistory: Previous usernames from users.roblox.com (first 100)
How to Test
Browser
- Open: /roblox-user-data?username=Roblox
- Health check: /health
PowerShell (Windows)
curl.exe "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox"
curl (macOS/Linux)
curl "https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox"
Postman/Thunder Client
- Method: GET
- URL:
https://roblox-user-api.vercel.app/roblox-user-data?username=Roblox - No headers/body required.
Query Reference
- include: friends, followers, following, outfits, groups, premium, games, usernameHistory, user, presence, groupRoles, groupWall, thumbnails, or
all - exclude: same keys as include, removes from the result
- expand:
allor any offriends,followers,followingto add detailed user objects - groupId: numeric group ID when using
groupRolesorgroupWall - wallLimit: 1–100 number of wall posts for
groupWall(default 10)
Error Handling
- 400 bad_request: Missing required query parameter (
usernameoruserId) - 404 not_found: User not found
- upstream_error: Roblox/proxy error; inspect
messagefor details
Notes
- This API uses a CORS proxy to access Roblox public endpoints.
- No server-side rate limit is enforced, but Roblox may rate-limit upstream calls.
- Returned structures are passthroughs from Roblox with minimal normalization.