Create an artifact download URL
/api/v1/artifacts/{artifact_id}/download-urlReturn 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.
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
uuidHeader Parameters
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"}