// Get sandbox info (from creation response)
const sandboxPublicHost = 'https://1761048129dsaqav4n.hopx.dev';
const authToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
// Basic execution
const response = await fetch(`${sandboxPublicHost}/execute`, {
method: 'POST',
headers: {
'Authorization': `Bearer ${authToken}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
code: "print('Hello, World!')",
language: 'python'
})
});
if (response.ok) {
const result = await response.json();
console.log(`Output: ${result.stdout}`);
console.log(`Exit code: ${result.exit_code}`);
console.log(`Execution time: ${result.execution_time}s`);
}
// With rich outputs
const richResponse = await fetch(`${sandboxPublicHost}/execute/rich`, {
method: 'POST',
headers: {
'Authorization': `Bearer ${authToken}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
code: `
import matplotlib.pyplot as plt
plt.plot([1, 2, 3])
plt.savefig('/workspace/plot.png')
`,
language: 'python'
})
});
if (richResponse.ok) {
const result = await richResponse.json();
console.log(`Rich outputs: ${result.rich_outputs?.length || 0}`);
result.rich_outputs?.forEach(output => {
console.log(` ${output.type}: ${output.path}`);
});
}