Create artifact upload URL
Creates an R2 PUT URL bound to a separately enforced 15-minute upload intent with exact byte and content-type declarations. Requires the autonomy:runs:write API key scope.
Creates an R2 PUT URL bound to a separately enforced 15-minute upload intent with exact byte and content-type declarations. Requires the autonomy:runs:write API key scope.
Authorization
bearerAuth Send Authorization: Bearer . The token can be an Autonomy organization API key (aut_xxx) or an OAuth access token.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/api/artifacts/upload-url" \ -H "Content-Type: application/json" \ -d '{ "platform": "android", "declaredBytes": 0, "contentType": "string" }'{
"uploadUrl": "http://example.com",
"storageId": "string",
"method": "PUT",
"intentId": "string",
"expiresAt": 0
}{
"error": "string"
}{
"error": "string"
}Submit a run step report POST
Updates an existing step log for a run. This compatibility endpoint accepts organization API keys only; runner processes use the typed Convex transport.
Scan uploaded artifact POST
Scans an uploaded mobile artifact and records the result. A run cannot use an upload-backed mobile target until the scan result is clean. Requires the autonomy:runs:write API key scope.