Request a VM through the compute contract gateway. Gateway builds cloud-init from sshPublicKey, creates compute.vm and market.rfp records, discovers bidders, runs the full RFP protocol, submits accept, and verifies the receipt. Returns receipt refs and websocatUrl for SSH access.
Input
application/jsonbidWindowSec
integer
Optional
Seconds to wait for bids before picking a winner.
computeVm
refcom.publicdomainrelay.temp.compute.vm
Required
Compute VM specification (cpus, mem, disk, network, role). user_data is populated by the gateway from sshPublicKey.
execProgram
string
Optional
Program to execute over SSH after VM is ready.
extraBidderDids
array
Optional
Additional bidder DIDs beyond relay discovery.
keepVm
boolean
Optional
Skip VM teardown after contract completion.
policyMode
string
Optional
Fulfillment policy mode for bidder selection.
skipSsh
boolean
Optional
Skip SSH session after contract. When true, returns immediately after receipt.
sshPublicKey
string
Required
OpenSSH public key for root SSH access to the VM.
vmReadyTimeoutSec
integer
Optional
Seconds to wait for SSH readiness after provisioning.
Output
application/jsonbids
array
Optional
No description available.
error
string
Optional
No description available.
receiptCid
stringcid
Optional
A content identifier (CID) referencing immutable data.
receiptOk
boolean
Optional
No description available.
receiptUri
stringat-uri
Optional
An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).
rfpCid
stringcid
Optional
A content identifier (CID) referencing immutable data.
rfpUri
stringat-uri
Optional
An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).
sshExitCode
integer
Optional
No description available.
sshReady
boolean
Optional
No description available.
vmFqdn
string
Optional
No description available.
websocatUrl
stringuri
Optional
A valid URI.
winnerBidCid
stringcid
Optional
A content identifier (CID) referencing immutable data.
winnerBidConfig
unknown
Optional
No description available.
winnerBidUri
stringat-uri
Optional
An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).
winnerDid
stringdid
Optional
A decentralized identifier (DID).
Errors
InvalidRequest
AuthRequired
NoBidders
ProvisioningFailed
Try It
Requests are sent directly from your browser. Some servers may block requests due to CORS.
View raw schema
{
"description": "Request a VM through the compute contract gateway. Gateway builds cloud-init from sshPublicKey, creates compute.vm and market.rfp records, discovers bidders, runs the full RFP protocol, submits accept, and verifies the receipt. Returns receipt refs and websocatUrl for SSH access.",
"errors": [
{
"name": "InvalidRequest"
},
{
"name": "AuthRequired"
},
{
"name": "NoBidders"
},
{
"name": "ProvisioningFailed"
}
],
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"bidWindowSec": {
"default": 30,
"description": "Seconds to wait for bids before picking a winner.",
"type": "integer"
},
"computeVm": {
"description": "Compute VM specification (cpus, mem, disk, network, role). user_data is populated by the gateway from sshPublicKey.",
"ref": "com.publicdomainrelay.temp.compute.vm",
"type": "ref"
},
"execProgram": {
"default": "bash",
"description": "Program to execute over SSH after VM is ready.",
"type": "string"
},
"extraBidderDids": {
"description": "Additional bidder DIDs beyond relay discovery.",
"items": {
"format": "did",
"type": "string"
},
"type": "array"
},
"keepVm": {
"default": true,
"description": "Skip VM teardown after contract completion.",
"type": "boolean"
},
"policyMode": {
"description": "Fulfillment policy mode for bidder selection.",
"enum": [
"only_me",
"direct_network",
"policy_based"
],
"type": "string"
},
"skipSsh": {
"default": true,
"description": "Skip SSH session after contract. When true, returns immediately after receipt.",
"type": "boolean"
},
"sshPublicKey": {
"description": "OpenSSH public key for root SSH access to the VM.",
"type": "string"
},
"vmReadyTimeoutSec": {
"description": "Seconds to wait for SSH readiness after provisioning.",
"type": "integer"
}
},
"required": [
"computeVm",
"sshPublicKey"
],
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"bids": {
"items": {
"properties": {
"bidUri": {
"format": "at-uri",
"type": "string"
},
"bidderDid": {
"format": "did",
"type": "string"
},
"cost": {
"type": "integer"
}
},
"type": "object"
},
"type": "array"
},
"error": {
"type": "string"
},
"receiptCid": {
"format": "cid",
"type": "string"
},
"receiptOk": {
"type": "boolean"
},
"receiptUri": {
"format": "at-uri",
"type": "string"
},
"rfpCid": {
"format": "cid",
"type": "string"
},
"rfpUri": {
"format": "at-uri",
"type": "string"
},
"sshExitCode": {
"type": "integer"
},
"sshReady": {
"type": "boolean"
},
"vmFqdn": {
"type": "string"
},
"websocatUrl": {
"format": "uri",
"type": "string"
},
"winnerBidCid": {
"format": "cid",
"type": "string"
},
"winnerBidConfig": {
"type": "unknown"
},
"winnerBidUri": {
"format": "at-uri",
"type": "string"
},
"winnerDid": {
"format": "did",
"type": "string"
}
},
"type": "object"
}
},
"type": "procedure"
}