Number Generator API Examples
Complete code examples and integration guides for the Number Generator API in multiple programming languages.Quick Examples
Generate a Single Random Number
Copy
curl "https://api.sinaty.business/number/?min=1&max=100"
Generate Multiple Numbers
Copy
curl "https://api.sinaty.business/number/?min=1&max=1000&count=10&secure=true"
Generate Decimal Numbers
Copy
curl "https://api.sinaty.business/number/?min=0&max=1&decimal=true&precision=4"
JavaScript/Node.js Examples
Basic Usage
Copy
async function generateRandomNumber(min = 1, max = 100) {
try {
const response = await fetch(
`https://api.sinaty.business/number/?min=${min}&max=${max}`
);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
return data.number;
} catch (error) {
console.error('Error generating number:', error);
return null;
}
}
// Usage
const randomNumber = await generateRandomNumber(1, 100);
console.log('Random number:', randomNumber);
Generate Multiple Numbers
Copy
async function generateMultipleNumbers(min, max, count = 5) {
try {
const response = await fetch(
`https://api.sinaty.business/number/?min=${min}&max=${max}&count=${count}`
);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
return data.numbers;
} catch (error) {
console.error('Error generating numbers:', error);
return [];
}
}
// Usage
const numbers = await generateMultipleNumbers(1, 1000, 10);
console.log('Generated numbers:', numbers);
Secure Random Numbers
Copy
async function generateSecureNumber(min, max) {
try {
const response = await fetch(
`https://api.sinaty.business/number/?min=${min}&max=${max}&secure=true`
);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
return data.number;
} catch (error) {
console.error('Error generating secure number:', error);
return null;
}
}
// Usage for cryptographic purposes
const secureNumber = await generateSecureNumber(1, 1000000);
console.log('Secure number:', secureNumber);
Decimal Numbers
Copy
async function generateDecimalNumber(min, max, precision = 2) {
try {
const response = await fetch(
`https://api.sinaty.business/number/?min=${min}&max=${max}&decimal=true&precision=${precision}`
);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
return data.number;
} catch (error) {
console.error('Error generating decimal number:', error);
return null;
}
}
// Usage
const decimalNumber = await generateDecimalNumber(0, 1, 4);
console.log('Decimal number:', decimalNumber);
Python Examples
Basic Usage
Copy
import requests
import json
def generate_random_number(min_val=1, max_val=100):
"""Generate a single random number."""
try:
url = "https://api.sinaty.business/number/"
params = {
'min': min_val,
'max': max_val
}
response = requests.get(url, params=params)
response.raise_for_status()
data = response.json()
return data['number']
except requests.exceptions.RequestException as e:
print(f"Error generating number: {e}")
return None
# Usage
random_number = generate_random_number(1, 100)
print(f"Random number: {random_number}")
Generate Multiple Numbers
Copy
def generate_multiple_numbers(min_val, max_val, count=5):
"""Generate multiple random numbers."""
try:
url = "https://api.sinaty.business/number/"
params = {
'min': min_val,
'max': max_val,
'count': count
}
response = requests.get(url, params=params)
response.raise_for_status()
data = response.json()
return data['numbers']
except requests.exceptions.RequestException as e:
print(f"Error generating numbers: {e}")
return []
# Usage
numbers = generate_multiple_numbers(1, 1000, 10)
print(f"Generated numbers: {numbers}")
Secure Random Numbers
Copy
def generate_secure_number(min_val, max_val):
"""Generate a cryptographically secure random number."""
try:
url = "https://api.sinaty.business/number/"
params = {
'min': min_val,
'max': max_val,
'secure': 'true'
}
response = requests.get(url, params=params)
response.raise_for_status()
data = response.json()
return data['number']
except requests.exceptions.RequestException as e:
print(f"Error generating secure number: {e}")
return None
# Usage for cryptographic purposes
secure_number = generate_secure_number(1, 1000000)
print(f"Secure number: {secure_number}")
Decimal Numbers
Copy
def generate_decimal_number(min_val, max_val, precision=2):
"""Generate a random decimal number."""
try:
url = "https://api.sinaty.business/number/"
params = {
'min': min_val,
'max': max_val,
'decimal': 'true',
'precision': precision
}
response = requests.get(url, params=params)
response.raise_for_status()
data = response.json()
return data['number']
except requests.exceptions.RequestException as e:
print(f"Error generating decimal number: {e}")
return None
# Usage
decimal_number = generate_decimal_number(0, 1, 4)
print(f"Decimal number: {decimal_number}")
PHP Examples
Basic Usage
Copy
<?php
function generateRandomNumber($min = 1, $max = 100) {
$url = "https://api.sinaty.business/number/";
$params = http_build_query([
'min' => $min,
'max' => $max
]);
$fullUrl = $url . '?' . $params;
$context = stream_context_create([
'http' => [
'method' => 'GET',
'header' => 'Content-Type: application/json'
]
]);
$response = file_get_contents($fullUrl, false, $context);
if ($response === false) {
return null;
}
$data = json_decode($response, true);
return $data['number'] ?? null;
}
// Usage
$randomNumber = generateRandomNumber(1, 100);
echo "Random number: " . $randomNumber . "\n";
?>
Generate Multiple Numbers
Copy
<?php
function generateMultipleNumbers($min, $max, $count = 5) {
$url = "https://api.sinaty.business/number/";
$params = http_build_query([
'min' => $min,
'max' => $max,
'count' => $count
]);
$fullUrl = $url . '?' . $params;
$context = stream_context_create([
'http' => [
'method' => 'GET',
'header' => 'Content-Type: application/json'
]
]);
$response = file_get_contents($fullUrl, false, $context);
if ($response === false) {
return [];
}
$data = json_decode($response, true);
return $data['numbers'] ?? [];
}
// Usage
$numbers = generateMultipleNumbers(1, 1000, 10);
echo "Generated numbers: " . implode(', ', $numbers) . "\n";
?>
Go Examples
Basic Usage
Copy
package main
import (
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
"net/url"
)
type NumberResponse struct {
Number int `json:"number"`
}
func generateRandomNumber(min, max int) (int, error) {
baseURL := "https://api.sinaty.business/number/"
params := url.Values{}
params.Add("min", fmt.Sprintf("%d", min))
params.Add("max", fmt.Sprintf("%d", max))
fullURL := baseURL + "?" + params.Encode()
resp, err := http.Get(fullURL)
if err != nil {
return 0, err
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
return 0, err
}
var response NumberResponse
err = json.Unmarshal(body, &response)
if err != nil {
return 0, err
}
return response.Number, nil
}
func main() {
number, err := generateRandomNumber(1, 100)
if err != nil {
fmt.Printf("Error: %v\n", err)
return
}
fmt.Printf("Random number: %d\n", number)
}
Ruby Examples
Basic Usage
Copy
require 'net/http'
require 'json'
require 'uri'
def generate_random_number(min = 1, max = 100)
url = "https://api.sinaty.business/number/"
uri = URI(url)
params = {
'min' => min,
'max' => max
}
uri.query = URI.encode_www_form(params)
response = Net::HTTP.get_response(uri)
if response.is_a?(Net::HTTPSuccess)
data = JSON.parse(response.body)
return data['number']
else
puts "Error: #{response.code} - #{response.message}"
return nil
end
rescue => e
puts "Error generating number: #{e.message}"
return nil
end
# Usage
random_number = generate_random_number(1, 100)
puts "Random number: #{random_number}"
cURL Examples
Basic Number Generation
Copy
# Generate a single number between 1 and 100
curl "https://api.sinaty.business/number/?min=1&max=100"
# Generate 5 numbers between 1 and 1000
curl "https://api.sinaty.business/number/?min=1&max=1000&count=5"
# Generate a secure random number
curl "https://api.sinaty.business/number/?min=1&max=1000000&secure=true"
# Generate a decimal number
curl "https://api.sinaty.business/number/?min=0&max=1&decimal=true&precision=4"
Advanced Examples
Copy
# Generate numbers for a lottery simulation
curl "https://api.sinaty.business/number/?min=1&max=49&count=6&secure=true"
# Generate decimal numbers for financial calculations
curl "https://api.sinaty.business/number/?min=0&max=100&decimal=true&precision=2&count=10"
# Generate negative numbers
curl "https://api.sinaty.business/number/?min=-100&max=100&count=5"
Integration Examples
React Component
Copy
import React, { useState, useEffect } from 'react';
function RandomNumberGenerator() {
const [number, setNumber] = useState(null);
const [loading, setLoading] = useState(false);
const [error, setError] = useState(null);
const generateNumber = async (min = 1, max = 100) => {
setLoading(true);
setError(null);
try {
const response = await fetch(
`https://api.sinaty.business/number/?min=${min}&max=${max}`
);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
setNumber(data.number);
} catch (err) {
setError(err.message);
} finally {
setLoading(false);
}
};
return (
<div>
<h2>Random Number Generator</h2>
<button
onClick={() => generateNumber(1, 100)}
disabled={loading}
>
{loading ? 'Generating...' : 'Generate Number'}
</button>
{number && <p>Generated number: {number}</p>}
{error && <p style={{color: 'red'}}>Error: {error}</p>}
</div>
);
}
export default RandomNumberGenerator;
Express.js Middleware
Copy
const express = require('express');
const fetch = require('node-fetch');
const app = express();
// Middleware to generate random numbers
async function generateRandomNumber(req, res, next) {
try {
const { min = 1, max = 100, count = 1, secure = false } = req.query;
const params = new URLSearchParams({
min: min.toString(),
max: max.toString(),
count: count.toString(),
secure: secure.toString()
});
const response = await fetch(
`https://api.sinaty.business/number/?${params}`
);
if (!response.ok) {
throw new Error(`API error: ${response.status}`);
}
const data = await response.json();
req.randomNumbers = data;
next();
} catch (error) {
res.status(500).json({ error: error.message });
}
}
// Route using the middleware
app.get('/random', generateRandomNumber, (req, res) => {
res.json(req.randomNumbers);
});
app.listen(3000, () => {
console.log('Server running on port 3000');
});
Error Handling
Copy
async function generateNumberWithRetry(min, max, maxRetries = 3) {
for (let attempt = 1; attempt <= maxRetries; attempt++) {
try {
const response = await fetch(
`https://api.sinaty.business/number/?min=${min}&max=${max}`
);
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || `HTTP ${response.status}`);
}
const data = await response.json();
return data.number;
} catch (error) {
console.error(`Attempt ${attempt} failed:`, error.message);
if (attempt === maxRetries) {
throw new Error(`Failed after ${maxRetries} attempts: ${error.message}`);
}
// Wait before retrying (exponential backoff)
await new Promise(resolve => setTimeout(resolve, 1000 * attempt));
}
}
}
// Usage with error handling
try {
const number = await generateNumberWithRetry(1, 100);
console.log('Generated number:', number);
} catch (error) {
console.error('Failed to generate number:', error.message);
}
Common Use Cases
Gaming Applications
Copy
// Generate dice roll
async function rollDice(sides = 6) {
const number = await generateRandomNumber(1, sides);
return number;
}
// Generate card deck shuffle
async function generateShuffledDeck() {
const numbers = await generateMultipleNumbers(1, 52, 52);
return numbers;
}
Statistical Sampling
Copy
// Generate random sample indices
async function generateSampleIndices(populationSize, sampleSize) {
const numbers = await generateMultipleNumbers(0, populationSize - 1, sampleSize);
return [...new Set(numbers)]; // Remove duplicates
}
Testing and Development
Copy
// Generate test data
async function generateTestData(count = 100) {
const numbers = await generateMultipleNumbers(1, 1000, count);
return numbers.map(num => ({
id: num,
value: num * Math.random(),
timestamp: new Date().toISOString()
}));
}