Skip to content
Console
Menu

Alerts and status pages

App store purchases

Credits

Knowledge

KV

Notifications

Organizations

Storage

Workflows

API reference

Getting Started

Authentication

KV Store

Update an artifact reference

Updates a holder's retention reference, or creates it with allow_missing.

Updates a holder's retention reference, or creates it with allow_missing. Existing expiry is only extended, never shortened. The exact repository and digest must have an owned Artifact receipt. Success means the registry protection tag has been written and read back; a failed pin attempt commits no reference. Concurrent updates never shorten retention.

  • Path PATCH https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/artifact_references/artifact-reference
  • Scope artifacts:retain
  • Effect write — a successful call changes state.
  • Collection artifact_references
  • Query update_mask, allow_missing

#Request

FieldTypeWhat it is
artifact_referenceArtifactReferenceThe reference to update; name identifies its immutable image and holder. Required.
update_maskfield_maskOnly expires_at is mutable. Unset or * writes populated fields.
allow_missingboolCreate this reference when absent, after verifying ownership and pinning.

#ArtifactReference

FieldTypeWhat it is
namestringThe canonical reference name; derived from the image and holder identity.
repositorystringThe exact managed registry repository, without host, tag or digest.
digeststringThe exact algorithm-qualified SHA-256 image digest.
holder_kindstringThe kind of holding resource, for example device_state.
holder_idstringThe holding resource's stable identity within this environment.
expires_attimestampKeep this image until this instant. Repeating Update only extends it. Required.

#Response

FieldTypeWhat it is
namestringThe canonical reference name; derived from the image and holder identity.
uidstringThe immutable reference identity. Output only.
metaResourceMetaCreation metadata. Output only.
repositorystringThe exact managed registry repository, without host, tag or digest.
digeststringThe exact algorithm-qualified SHA-256 image digest.
holder_kindstringThe kind of holding resource, for example device_state.
holder_idstringThe holding resource's stable identity within this environment.
expires_attimestampKeep this image until this instant. Repeating Update only extends it. Required.

#ResourceMeta

FieldTypeWhat it is
generationint64Increases by one on every change to spec. Output only.
etagstringStrong ETag (AIP-154): changes on any change to spec, status, or metadata. Send it back as If-Match or etag to make Update and Delete conditional; a mismatch fails with ABORTED / 409 ETAG_MISMATCH. Output only.
create_timetimestampWhen the Resource was created. Output only.
update_timetimestampWhen the Resource last changed. Output only.
delete_timetimestampSet while the Resource is being deleted. Output only.
labelsmap<string, string>Caller-writable, indexed labels (AIP-122 label rules).
annotationsmap<string, string>Caller-writable, unindexed annotations.
display_namestringCaller-writable human-readable name.
creatorstringThe principal that created the Resource. Output only.

#Errors

  • UNAUTHENTICATED — No valid key or token was presented.
  • PERMISSION_DENIED — The key lacks the method's permission.
  • INVALID_FIELD — A field failed validation.
  • RESOURCE_NOT_FOUND — The named Resource does not exist or is not visible.
  • UNAVAILABLE — The Resource store, the owning service's backend, or the key verifier's snapshot is unavailable; retry after Retry-After.

Every error arrives in the body Errors describes.

#Examples

curl -X PATCH "https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/artifact_references/artifact-reference" \
  -H "Authorization: Bearer $SYLPHX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expires_at":{},"name":"orgs/acme/projects/shop/envs/production/artifact_references/artifact-reference"}'