Guest Machines
API referenceRuns

Create an artifact download URL

POST/api/v1/artifacts/{artifact_id}/download-url

Return a short-lived download URL after artifact authorization.

The returned URL is short-lived and carries its own authorization. Fetch it without an Authorization header, and request a fresh one instead of storing it.

Required access

Credentials: service principal, delegated token, user session

Scope: runs:read

Authorized through the run that produced the artifact, so artifact access can never exceed run access.

Authorization

AuthorizationBearer <token>

An organization-owned automation key, prefixed gsmc_sk_. Already bound to one organization, so it needs no X-Org-Id header. It carries no user identity: it never reaches a private resource however it is scoped, and a run it starts has no user for an interactive tool to reach.

In: header

Path Parameters

artifact_id*Artifact Id
Formatuuid

Header Parameters

X-Org-Id?|

Selects the active organization for a credential that belongs to more than one. Service-principal keys are bound to a single organization and ignore it.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/v1/artifacts/497f6eca-6276-4993-bfeb-53cbbbba6f08/download-url" \  -H "Authorization: Bearer $GUEST_MACHINES_API_KEY"
{  "artifact_id": "b7bd6bbb-c7f1-4314-8742-2aeeeece9d12",  "url": "string",  "expires_at": "2019-08-24T14:15:22Z"}
{  "detail": "string",  "error_code": "string",  "request_id": "string"}
{  "detail": "string",  "error_code": "string",  "request_id": "string"}
{  "detail": "string",  "error_code": "string",  "request_id": "string"}
{  "detail": "string",  "error_code": "string",  "request_id": "string"}
{  "detail": "string",  "error_code": "string",  "request_id": "string"}
{  "detail": "string",  "error_code": "string",  "request_id": "string"}
{  "detail": "string",  "error_code": "string",  "request_id": "string"}