Coder Social home page Coder Social logo

roblox-web-apis's Introduction

#####Get an asset thumbnail

#####Valid thumbnail sizes

Dimensions 48x48 60x62 75x75 100x100 110x110 160x100 250x250 352x352 420x230 420x420
ThumbnailAsset.ashx
Asset-Thumbnail/Json
Pixelated.ashx

Thumbnail APIs

#####Get a pixelated asset thumbnail

#####Get an asset thumbnail URL

#####Get an outfit's thumbnail URL

#####Get a user's thumbnail

#####Get a user's BC thumbnail

Get user ID from username

$ curl -i http://www.roblox.com/user.aspx?username=Shedletsky

HTTP/1.1 302 Found
Location: /User.aspx?ID=261

Economy APIs

#####Get the currency exchange rates

// PHP 5+
$client = new SoapClient("http://www.roblox.com/Marketplace/EconomyServices.asmx?WSDL");
$response = $client->GetEstimatedTradeReturnForTickets(array("ticketsToTrade" => 1000));
echo $response->GetEstimatedTradeReturnForTicketsResult;
// node.js
var request = require('request');

var options = {
    method: 'POST',
       url: 'http://www.roblox.com/Marketplace/EconomyServices.asmx/GetEstimatedTradeReturnForRobux',
      json: { robuxToTrade: 1000 }
};

request(options, function(err, res, json) {
    var tixAmount = json.d
    console.log(tixAmount)
});
POST /Marketplace/EconomyServices.asmx/GetEstimatedTradeReturnForRobux HTTP/1.1
Host: www.roblox.com
Content-Type: application/json
Content-Length: 26

{
    "robuxToTrade": 1000
}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 11

{
    "d": 15858
}

#####Get multiple user thumbnail URLs

#####Get multiple asset thumbnail URLs

  • /Thumbs/ItemImage.ashx?params=[{"assetId":"1818"}]&jsoncallback=jsonp

    var params = [{ assetId: 1818 }];
    $.ajax({
    url: 'http://www.roblox.com/Thumbs/ItemImage.ashx',
       data: { params: JSON.stringify(params) },
       dataType: 'jsonp',
       jsonp: 'jsoncallback',
       success: function(json) {
       $.each(json, function(i, asset) {
          console.log(asset.id, asset.name);
       });
       }
    });

Group APIs

#####Check if a player is in a group

#####Get a player's rank number

#####Get a player's rank name

#####Get a group's rolesets http://www.roblox.com/api/groups/1/RoleSets/

#####Get the primary groups of multiple users

Friend APIs

#####Check if two users are friends

#####Check if a user is best friends with another user

#####Get information about a developer product

  • http://api.roblox.com/Marketplace/ProductDetails?productId=18026036

    {
        "AssetId": 0,
        "ProductId": 18026036,
        "Name": "85 Candies Pack",
        "Description": null,
        "AssetTypeId": 0,
        "Creator": {
            "Id": 0,
            "Name": null
        },
        "IconImageAssetId": 0,
        "Created": "2013-10-16T00:37:38.517Z",
        "Updated": "2013-10-16T00:37:38.517Z",
        "PriceInRobux": 50,
        "PriceInTickets": 625,
        "Sales": 0,
        "IsNew": false,
        "IsForSale": true,
        "IsPublicDomain": false,
        "IsLimited": false,
        "IsLimitedUnique": false,
        "Remaining": null,
        "MinimumMembershipLevel": 0,
        "ContentRatingTypeId": 0
    }

User APIs

#####Get username from ID

#####Get a user's body part colors

  • http://www.roblox.com/Asset/BodyColors.ashx?userId=261

    <?xml version="1.0" encoding="utf-8" ?>
    <roblox xmlns:xmime="http://www.w3.org/2005/05/xmlmime" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.roblox.com/roblox.xsd" version="4">
        <External>null</External>
        <External>nil</External>
        <Item class="BodyColors">
            <Properties>
                <int name="HeadColor">24</int>
                <int name="LeftArmColor">24</int>
                <int name="LeftLegColor">24</int>
                <string name="Name">Body Colors</string>
                <int name="RightArmColor">24</int>
                <int name="RightLegColor">24</int>
                <int name="TorsoColor">1003</int>
                <bool name="archivable">true</bool>
            </Properties>
        </Item>
    </roblox>

#####Get assets worn by a user

#####Check if a username has been taken

Asset APIs

#####Check if a user owns an asset

#####Get information about an asset

  • http://api.roblox.com/Marketplace/ProductInfo?assetId=1818

    {
        "AssetId": 1818,
        "ProductId": 1305046,
        "Name": "Crossroads",
        "Description": "The classic ROBLOX level is back!",
        "AssetTypeId": 9,
        "Creator": {
            "Id": 1,
            "Name": "ROBLOX"
        },
        "IconImageAssetId": 0,
        "Created": "2007-05-01T01:07:04.78Z",
        "Updated": "2013-07-01T16:40:24.527Z",
        "PriceInRobux": null,
        "PriceInTickets": null,
        "Sales": 0,
        "IsNew": false,
        "IsForSale": false,
        "IsPublicDomain": false,
        "IsLimited": false,
        "IsLimitedUnique": false,
        "Remaining": null,
        "MinimumMembershipLevel": 0,
        "ContentRatingTypeId": 0
    }

#####Get the assetId of an assetVersionId:

curl http://www.roblox.com/--item?avid=1 --head

#####Download various versions of an asset

#####Upload an asset

POST /Data/Upload.ashx?assetid=1818 HTTP/1.1
Host: www.roblox.com
Cookie: .ROBLOSECURITY=*
Content-Type: application/xml; charset=utf-8
Content-Length: 17

<roblox></roblox>
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 9

ASSETVERSIONID_GOES_HERE

#####Log in

POST https://www.roblox.com/NewLogin HTTP/1.1
Host: www.roblox.com
Content-Length: 29
Content-Type: application/json

{"username":"Shedletsky","password":"hunter2"}

#####Create an account

#####ROBLOX Client/Studio APIs

Rules

  • Use 261 for userIds, 1818 for placeIds, Shedletsky for username, hunter2 for password, etc.
  • User-Agent: ROBLOX iOS

Tips

  • Google site:api.roblox.com to find pages for that subdomain
  • Append ?WSDL, /js, or /jsdebug to .asmx pages
  • Most sites have a /robots.txt

####CoreScripts

####Game Server APIs

####Current User APIs

####Login APIs

POST https://www.roblox.com/MobileAPI/Signup HTTP/1.1
Host: www.roblox.com
Content-Type: application/json
Content-Length: 72

{"username":"Shedletsky","password":"hunter2","gender":"Male","dateOfBirth":"6/18/87"}
HTTP/1.1 200 OK
Set-Cookie: .ROBLOSECURITY=*
Content-Length: 210
Content-Type: application/json

{"Status":"OK","UserInfo":{"UserID":261,"UserName":"Shedletsky","RobuxBalance":0,"TicketsBalance":0,"ThumbnailUrl":"http://t3.rbxcdn.com/1768c4f3c0d7c30d978c9dce68aa786c","IsAnyBuildersClubMember":false}}
POST https://m.roblox.com/Login HTTP/1.1
Host: m.roblox.com
Content-Length: 29
Content-Type: application/json

{"username":"","password":""}
POST https://www.roblox.com/MobileAPI/Login HTTP/1.1
Host: www.roblox.com
Content-Length: 29
Content-Type: application/json

{"username":"","password":""}
POST https://www.roblox.com/Services/Secure/LoginService.asmx/ValidateLogin HTTP/1.1
Host: www.roblox.com
Content-Length: 85
Content-Type: application/json

{"userName":"","password":"","isCaptchaOn":false,"challenge":"","captchaResponse":""}

This page clears the browser's cookies. It doesn't invalidate the session:

POST https://www.roblox.com/MobileAPI/Logout HTTP/1.1
Host: www.roblox.com
Cookie: .ROBLOSECURITY=*
Content-Length: 0

The equivalent on the website is http://www.roblox.com/Item.aspx?avid=1

There's another parameter, serverPlaceId, which will deny the request if the owner of that place doesn't own it and it's not owned by roblox.

####Main Site

POST https://www.roblox.com/UserCheck/validatepasswordforsignup HTTP/1.1
Host: www.roblox.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 36

username=Shedletsky&password=hunter2
POST http://www.roblox.com/Services/GroupService.asmx/GetRoleSetsForGroup HTTP/1.1
Content-Type: application/json

{ "groupId": 1 }

#####Contributors: Mark Otaris, ArceusInator, oxcool1, Seranok

roblox-web-apis's People

Contributors

matthewdean avatar anaminus avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.