function generateRandomPrefix(length = 4) {
const chars = 'abcdefghijklmnopqrstuvwxyz'
let result = ''
for (let i = 0; i < length; i++) {
result += chars[Math.floor(Math.random() * chars.length)]
}
return result
}
async function registerAndQuery() {
const baseUrl = 'https://proxy.api.makeinfinite.dev'
const randomPrefix = generateRandomPrefix()
const userId = `${randomPrefix}_your_username_here`
const password = 'this_is_password_for_above_user_in_the_worker'
try {
// Step 1: Register user
const authResponse = await fetch(`${baseUrl}/auth/register`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ userId, password })
})
if (!authResponse.ok) {
console.error('Auth failed:', await authResponse.text())
return
}
const { accessToken } = await authResponse.json()
console.log('✅ Auth success')
// Step 2: Run SQL query
const queryResponse = await fetch(`${baseUrl}/v1/sql`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${accessToken}`,
apikey: `sxt_YOUR_API_KEY_HERE`
},
body: JSON.stringify({
sqlText: 'SELECT * FROM bitcoin.transactions LIMIT 5'
})
})
if (!queryResponse.ok) {
console.error('Query failed:', await queryResponse.text())
return
}
const result = await queryResponse.json()
console.log('📦 Query result:', result)
} catch (error) {
console.error('Error:', error)
}
}
;(async () => {
console.log('🚀 Starting Space and Time Demo')
await registerAndQuery()
console.log('✅ Done')
})()