{"_id":"roblox-api-client","name":"roblox-api-client","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"roblox-api-client","version":"1.0.0","description":"A Node.js client for the Roblox public APIs — users, games, assets, groups, presence, and thumbnails","main":"dist/index.js","types":"dist/index.d.ts","type":"commonjs","scripts":{"build":"tsc","postinstall":"node postinstall.js"},"keywords":["roblox","roblox-api","roblox-client","games","users"],"author":{"name":"your-name"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/your-username/roblox-api-client.git"},"dependencies":{"axios":"^1.6.0"},"devDependencies":{"@types/node":"^18.0.0","typescript":"^5.3.0"},"gitHead":"e838258b4bf720e90fe11b29dc096e0dddc29872","_id":"roblox-api-client@1.0.0","bugs":{"url":"https://github.com/your-username/roblox-api-client/issues"},"homepage":"https://github.com/your-username/roblox-api-client#readme","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-YoxD4uxP/HGGEJvCICTQSK9XYbMm6Kv5pxrwgo4G5nCwcp0/qZrkdybqjbfSJCWeRQdx/P/cadtI2CETWL+REw==","shasum":"b3db3d0b3ad3777bc40fffb4fb5276ed579b60ee","tarball":"https://registry.npmjs.org/roblox-api-client/-/roblox-api-client-1.0.0.tgz","fileCount":7,"unpackedSize":24735,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAdX+qv0/OREvhy2KKQhQ0BafFXIEGvOXURtKdbQSKx0AiEA1C9FUXdxGApPP6iHuwf95C+0jsH3soV8m4vTKxp32SE="}]},"_npmUser":{"name":"ctjsdeveloper92","email":"aledreamer1234@gmail.com"},"directories":{},"maintainers":[{"name":"ctjsdeveloper92","email":"aledreamer1234@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/roblox-api-client_1.0.0_1781397043768_0.6660537456027722"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-14T00:30:43.724Z","1.0.0":"2026-06-14T00:30:43.914Z","modified":"2026-06-14T00:30:44.090Z"},"maintainers":[{"name":"ctjsdeveloper92","email":"aledreamer1234@gmail.com"}],"description":"A Node.js client for the Roblox public APIs — users, games, assets, groups, presence, and thumbnails","homepage":"https://github.com/your-username/roblox-api-client#readme","keywords":["roblox","roblox-api","roblox-client","games","users"],"repository":{"type":"git","url":"git+https://github.com/your-username/roblox-api-client.git"},"author":{"name":"your-name"},"bugs":{"url":"https://github.com/your-username/roblox-api-client/issues"},"license":"MIT","readme":"# roblox-api-client\n\nA fully-typed Node.js client for the Roblox public APIs. Look up users, games, assets, groups, presence, friends, badges, and thumbnails.\n\n## Install\n\n```bash\nnpm install roblox-api-client\n```\n\n## Quick Start\n\n```js\nimport RobloxClient from 'roblox-api-client';\n\nconst client = new RobloxClient();\n\n// Look up a user\nconst user = await client.getUserByName('Builderman');\nconsole.log(user.id, user.displayName);\n\n// Get a game\nconst game = await client.getGame(1818);\nconsole.log(game.name, game.visits);\n```\n\n## Options\n\n```js\nconst client = new RobloxClient({\n  apiKey: 'YOUR_OPEN_CLOUD_KEY', // from https://create.roblox.com/credentials\n  timeout: 15000,                // ms, default 10000\n});\n```\n\nAn API key is **optional** for public endpoints but required for authenticated Open Cloud ones.\n\n---\n\n## API\n\n### Users\n\n```js\n// By username\nconst user = await client.getUserByName('Builderman');\n\n// By ID\nconst user = await client.getUserById(156);\n\n// Search\nconst results = await client.searchUsers('build', 10);\n\n// Presence (online/in-game/offline)\nconst [presence] = await client.getUserPresence([156]);\n// presence.userPresenceType: 0=Offline 1=Online 2=InGame 3=InStudio\n\n// Friends\nconst friends = await client.getFriends(156);\nconst count   = await client.getFriendCount(156);\n```\n\n### Games\n\n```js\n// Single game by Universe ID\nconst game = await client.getGame(1818);\n\n// Multiple games\nconst games = await client.getGames([1818, 2753915549]);\n\n// Live servers for a Place ID\nconst servers = await client.getGameServers(1818);\n// servers.data, servers.nextPageCursor\n\n// Badges\nconst badges = await client.getUniverseBadges(1818);\n```\n\n### Assets\n\n```js\nconst asset = await client.getAsset(1818);\n// asset.Name, asset.PriceInRobux, asset.Sales, asset.Creator ...\n```\n\n### Groups\n\n```js\nconst group   = await client.getGroup(1200769);\nconst members = await client.getGroupMembers(1200769, 25);\nconst roles   = await client.getGroupRoles(1200769);\n```\n\n### Thumbnails\n\n```js\nconst avatars = await client.getUserAvatars([156, 1], '150x150');\n// [{ targetId: 156, imageUrl: 'https://...' }, ...]\n\nconst icons = await client.getGameIcons([1818], '512x512');\n```\n\n---\n\n## TypeScript\n\nAll methods are fully typed. Import types alongside the client:\n\n```ts\nimport RobloxClient, { RobloxUser, RobloxGame, RobloxGroup } from 'roblox-api-client';\n```\n\n---\n\n## Publishing your own copy\n\n```bash\n# 1. Update name/author in package.json\n# 2. Log in to npm\nnpm login\n\n# 3. Publish\nnpm publish\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-f204002e069a1fd26ff2a73df9c797f2"}