Skip to main content

Services

RPC methods exposed by this API.

ArtifactService

ArtifactService manages an organization-scoped, versioned generic artifact store. storage_class decides whether content lives in remote_files or the version’s JSON payload. Attachment and provenance are links, and metadata uses the shared metadata values (sift.metadata.v1). No conversation owns an artifact. Links are append-only and belong to the version they were written at. A version’s rows are its complete link set: ATTACHED_TO rows carry forward to each new version, while SOURCE and DERIVED_FROM rows are a closed account of one version’s inputs. Linking and unlinking write a new version whose content is copied from the previous one. Artifact bytes live in remote_files (entity_type ‘artifact_versions’, entity_id = artifact_version_id): upload via the remote-files multipart endpoint, download via RemoteFileService.GetRemoteFileDownloadUrl.

Messages

Data models used across requests/responses.

ArchiveArtifactRequest

ArchiveArtifactResponse

This message has no fields.

Artifact

The container. Everything that varies by version lives on ArtifactVersion, and the two travel together in ArtifactDetails.

ArtifactDetails

An artifact and one of its versions: the one artifact_version_id pinned, or the latest.

ArtifactLinkInput

ArtifactVersion

CreateArtifactRequest

CreateArtifactResponse

GetArtifactRequest

GetArtifactResponse

LinkArtifactToConversationRequest

LinkArtifactToConversationResponse

This message has no fields.

ListArtifactVersionsRequest

ListArtifactVersionsResponse

ListArtifactsRequest

Archived artifacts are excluded unless the query says otherwise, either through include_archived == true or by filtering on archived_date, which governs archival on its own. | | order_by | string | | A comma-separated AIP-132 ordering string over created_date, version_created_date (last updated), archived_date, title, version, and file_type. Fields sort ascending by default and support a desc suffix. The default is created_date ascending. |

ListArtifactsResponse

PromoteArtifactVersionRequest

PromoteArtifactVersionResponse

UnarchiveArtifactRequest

UnarchiveArtifactResponse

This message has no fields.

UnlinkArtifactFromConversationRequest

UnlinkArtifactFromConversationResponse

This message has no fields.

UpdateArtifactRequest

artifact_version.remote_file_id is a declaration, not a value: it says the caller is about to upload new bytes for the returned version, so the previous version’s remote_files rows are not carried forward. The current version stays unchanged until the upload commits. The request value is ignored. Leave the path out to keep the existing bytes. |

UpdateArtifactResponse

Enums

Allowed constant values used in message fields.

ArtifactCreatedVia

Which surface wrote the artifact.

ArtifactEntityType

The kind of entity an artifact link points at. entity_id is opaque: a UUID for Sift entities, or the provider tool_use_id for TOOL_USE.

ArtifactLinkRelation

ArtifactStorageClass