This wiki has had no edits or log actions made within the last 45 days and has been automatically marked as inactive. If you would like to prevent this wiki from being closed, please start showing signs of activity here. If there are no signs of this wiki being used within the next 15 days, this wiki will be closed in accordance to the Dormancy Policy (which all wiki founders accept when requesting a wiki). If this wiki is closed and no one reopens it 135 days from now, this wiki will become eligible for deletion. Note: If you are a bureaucrat, you can go to Special:ManageWiki and uncheck "inactive" yourself.

Your first request

From RoAPI
Revision as of 14:50, 5 September 2021 by Zambi (talk | contribs) (F#)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

At this point, you’re ready to use most of the endpoints that take in GET requests on these domains, as they won’t require authentication, like users.roblox.com/v1/users/userId. This endpoint returns response data that looks like this.

{
  "description": "Welcome to the Roblox profile! This is where you can check out the newest items in the...",
  "created": "2006-02-27T21:06:40.3Z",
  "isBanned": false,
  "id": 1,
  "name": "ROBLOX",
  "displayName": "ROBLOX"
}

You’ll probably use this endpoint along with other endpoints on users.roblox.com quite a lot, as they are extremely useful for grabbing information about a user.

import requests

user_id = 1  # User ID
user_req = requests.get(f"https://users.roblox.com/v1/users/{user_id}")
user_data = user_req.json()

print("Name:", user_data["name"])
print("Display Name:", user_data["displayName"])
print("User ID:", user_data["id"])
print("Description:")
print(user_data["description"])
# Uses the http.rb gem. Run "gem install http" on your terminal to install it
require "http"
require "json"

USER_ID = 1
response = HTTP.get("https://users.roblox.com/v1/users/#{USER_ID}")
body = JSON.parse(response.body)

puts "Username: #{body["name"]}"
puts "Display name: #{body["displayName"]}"
puts "User ID: #{body["id"]}"
puts "Description: #{body["description"]}"
/*
    Cargo.toml dependencies:
    reqwest = { version = "0.11.4" }
    tokio = { version = "1.11.0", features = ["macros", "rt-multi-thread"]}
    serde_json = { vesion = "1.0.67"}
*/
use reqwest::get;
use serde_json::{from_str, Value};

const USER_ID: i64 = 1;

#[tokio::main]
async fn main() {
    let response = get(format!("https://users.roblox.com/v1/users/{}", USER_ID))
        .await
        .unwrap()
        .text()
        .await
        .unwrap();
    let body: Value = from_str(&response).unwrap();

    println!("Username: {}", body["name"].as_str().unwrap());
    println!("Display name: {}", body["displayName"].as_str().unwrap());
    println!("User ID: {}", body["id"].as_i64().unwrap());
    println!("Description: {}", body["description"].as_str().unwrap());
}
// Uses the Netwonsoft.Json package. Run "dotnet add package Newtonsoft.Json --version 13.0.1" on your terminal to install it.
using System;
using System.Net;
using System.IO;
using Newtonsoft.Json.Linq;

namespace your_first_request
{
    class Program
    {
        private const long USER_ID = 1;
        static void Main(string[] args)
        {
            WebResponse response = HttpWebRequest.Create($"https://users.roblox.com/v1/users/{USER_ID}")
                .GetResponse();
            JObject body = JObject.Parse(
                new StreamReader(
                    response.GetResponseStream()
                ).ReadToEnd()
            );

            Console.WriteLine($"Username: {body["name"]}");
            Console.WriteLine($"Display name: {body["displayName"]}");
            Console.WriteLine($"User ID: {body["id"]}");
            Console.WriteLine($"Description: {body["description"]}");
        }
    }
}
// npm install node-fetch
import fetch from "node-fetch";

const USER_ID = 1;
const response = await fetch(`https://users.roblox.com/v1/users/${USER_ID}`);
const body = await response.json();

console.log(`Username: ${body["name"]}`);
console.log(`Display name: ${body["displayName"]}`);
console.log(`User ID: ${body["id"]}`);
console.log(`Description: ${body["description"]}`);
const USER_ID = 1;
const response = await fetch(`https://users.roblox.com/v1/users/${USER_ID}`);
const body = await response.json();

console.log(`Username: ${body["name"]}`);
console.log(`Display name: ${body["displayName"]}`);
console.log(`User ID: ${body["id"]}`);
console.log(`Description: ${body["description"]}`);
// Uses the Netwonsoft.Json package. Run "dotnet add package Newtonsoft.Json --version 13.0.1" on your terminal to install it.
open System.Net.Http
open Newtonsoft.Json.Linq

[<EntryPoint>]
let main _ =
    async {
        use client = new HttpClient()

        let! response =
            client.GetStringAsync("https://users.roblox.com/v1/users/1")
            |> Async.AwaitTask

        let parsedBody = JObject.Parse response
        printfn $"""Username: {parsedBody.["name"]}"""
        printfn $"""Display name: {parsedBody.["displayName"]}"""
        printfn $"""User ID: {parsedBody.["id"]}"""
        printfn $"""Description: {parsedBody.["description"]}"""
    }
    |> Async.RunSynchronously

    0
This article is a part of the Accessing the Roblox API series.