Code Examples
Copy-paste examples for fetching profiles and companies from the Random Profiles API. Replace YOUR_KEY with your API key.
Profiles
cURL
# Fetch 5 profiles
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/profiles?count=5"
# Fetch as CSV
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/profiles?count=10&format=csv" -o profiles.csv
# Filter by country and gender
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/profiles?country=JP,BR&gender=female&count=3"
JavaScript / Node.js
const res = await fetch("https://random-profiles.com/v1/profiles?count=5", {
headers: { "X-API-Key": "YOUR_KEY" },
});
const { profiles } = await res.json();
console.log(profiles[0].name.first, profiles[0].email);
Python
import requests
response = requests.get(
"https://random-profiles.com/v1/profiles",
headers={"X-API-Key": "YOUR_KEY"},
params={"count": 5, "country": "US"},
)
profiles = response.json()["profiles"]
for p in profiles:
print(p["name"]["first"], p["email"])
Go
package main
import (
"encoding/json"
"fmt"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://random-profiles.com/v1/profiles?count=5", nil)
req.Header.Set("X-API-Key", "YOUR_KEY")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
var result struct {
Profiles []map[string]any `json:"profiles"`
}
json.NewDecoder(resp.Body).Decode(&result)
fmt.Println(result.Profiles[0]["email"])
}
Ruby
require "net/http"
require "json"
uri = URI("https://random-profiles.com/v1/profiles?count=5")
req = Net::HTTP::Get.new(uri)
req["X-API-Key"] = "YOUR_KEY"
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
profiles = JSON.parse(res.body)["profiles"]
profiles.each { |p| puts "#{p['name']['first']} #{p['email']}" }
PHP
$ch = curl_init("https://random-profiles.com/v1/profiles?count=5");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["X-API-Key: YOUR_KEY"]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
foreach ($response["profiles"] as $p) {
echo $p["name"]["first"] . " " . $p["email"] . "\n";
}
Java
import java.net.http.*;
import java.net.URI;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://random-profiles.com/v1/profiles?count=5"))
.header("X-API-Key", "YOUR_KEY")
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
C#
using System.Net.Http;
using System.Text.Json;
var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-API-Key", "YOUR_KEY");
var json = await client.GetStringAsync("https://random-profiles.com/v1/profiles?count=5");
var doc = JsonDocument.Parse(json);
foreach (var p in doc.RootElement.GetProperty("profiles").EnumerateArray())
{
Console.WriteLine(p.GetProperty("email").GetString());
}
Companies
Filter by industry, country, or size brackets. Use fields= to request just the groups you need (name,industry,leadership,tech,…).
cURL
# 5 random companies
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/companies?count=5"
# 10 mid-size Technology companies from the US
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/companies?count=10&industry=Technology&country=US&size=201-500,501-1000"
# Only leadership + tech fields, as CSV
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/companies?count=50&fields=name,industry,leadership,tech&format=csv" -o companies.csv
# Deterministic (same seed = same companies)
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/companies?count=3&seed=42"
# Small-thumbnail logos (meta.logo_url points at 128px variant)
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/companies?count=10&logo_size=128"
# Walk the graph: company → its employee UUIDs → full employees
# 1. Fetch a company with its employee list
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/companies?count=1&fields=name,relationships"
# 2. Hydrate each employee_uuid via the profiles endpoint
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/profiles/EMPLOYEE_UUID"
# Profile with its company + colleagues
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/profiles?count=5&fields=name,job,relationships"
# Get a single company by UUID
curl -H "X-API-Key: YOUR_KEY" \
"https://random-profiles.com/v1/companies/COMPANY_UUID"
JavaScript / Node.js
const params = new URLSearchParams({
count: "10",
industry: "Finance",
country: "US,GB",
fields: "name,industry,leadership,financial",
});
const res = await fetch(`https://random-profiles.com/v1/companies?${params}`, {
headers: { "X-API-Key": "YOUR_KEY" },
});
const { companies } = await res.json();
companies.forEach((c) => {
console.log(`${c.name} — CEO: ${c.leadership.ceo_name} — Revenue range: ${c.financial.revenue_range}`);
});
Python
import requests
response = requests.get(
"https://random-profiles.com/v1/companies",
headers={"X-API-Key": "YOUR_KEY"},
params={
"count": 10,
"industry": "Healthcare",
"size": "51-200,201-500",
"fields": "name,industry,location,leadership,tech",
},
)
companies = response.json()["companies"]
for c in companies:
print(c["name"], "—", c["industry"], "@", c["location"]["city"])
Go
package main
import (
"encoding/json"
"fmt"
"net/http"
)
func main() {
url := "https://random-profiles.com/v1/companies?count=5&industry=Energy&country=DE,FR"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Set("X-API-Key", "YOUR_KEY")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
var result struct {
Companies []map[string]any `json:"companies"`
}
json.NewDecoder(resp.Body).Decode(&result)
for _, c := range result.Companies {
fmt.Println(c["name"], "—", c["industry"])
}
}
Ruby
require "net/http"
require "json"
uri = URI("https://random-profiles.com/v1/companies")
uri.query = URI.encode_www_form(count: 10, industry: "Retail", country: "GB,AU")
req = Net::HTTP::Get.new(uri)
req["X-API-Key"] = "YOUR_KEY"
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) { |http| http.request(req) }
companies = JSON.parse(res.body)["companies"]
companies.each { |c| puts "#{c['name']} — #{c['industry']} (#{c['size']})" }
PHP
$query = http_build_query([
"count" => 10,
"industry" => "Consulting",
"size" => "11-50,51-200",
]);
$ch = curl_init("https://random-profiles.com/v1/companies?" . $query);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["X-API-Key: YOUR_KEY"]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
foreach ($response["companies"] as $c) {
echo $c["name"] . " — " . $c["industry"] . "\n";
}
Java
import java.net.http.*;
import java.net.URI;
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://random-profiles.com/v1/companies?count=10&industry=Manufacturing&country=JP,DE"))
.header("X-API-Key", "YOUR_KEY")
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
C#
using System.Net.Http;
using System.Text.Json;
var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-API-Key", "YOUR_KEY");
var url = "https://random-profiles.com/v1/companies?count=10&industry=Finance&fields=name,industry,leadership";
var json = await client.GetStringAsync(url);
var doc = JsonDocument.Parse(json);
foreach (var c in doc.RootElement.GetProperty("companies").EnumerateArray())
{
Console.WriteLine(c.GetProperty("name").GetString());
}