# This file is auto-generated. DO NOT EDIT. swagger: "2.0" info: title: Instill Core API description: Interact with Instill Core through API version: v0.57.0 contact: name: Instill AI url: https://github.com/instill-ai email: support@instill-ai.com license: name: MIT url: https://github.com/instill-ai/protobufs/blob/main/LICENSE tags: - name: Namespace description: Namespaces (e.g. User, Organization) that structure the resource hierarchy. - name: Pipeline description: Pipeline orchestration. - name: Artifact description: Data orchestration for unified unstructured data representation. - name: Model description: AI Model orchestration - name: Metrics description: Resource usage metrics. - name: Connection description: Connections to 3rd party apps for use in pipelines. - name: Integration description: Integration definitions for creating connections. host: api.instill-ai.com schemes: - https - http consumes: - application/json produces: - application/json paths: /v1alpha/{parent}/knowledge-bases: get: summary: Get all knowledge bases info description: Returns a paginated list of knowledge bases. operationId: ArtifactPublicService_ListKnowledgeBases responses: "200": description: A successful response. schema: $ref: '#/definitions/ListKnowledgeBasesResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: pageSize description: |- The maximum number of knowledge bases to return. If this parameter is unspecified, at most 10 knowledge bases will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token for pagination. in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - `id=""` or `uid=""` - Filter by specific knowledge base ID/UID - `q=""` - Fuzzy search on knowledge base ID and description **Examples**: - Filter by ID: `id="my-knowledge-base"` - Search knowledge bases: `q="my-knowledge-base"` in: query required: false type: string tags: - Artifact x-stage: alpha post: summary: Create a knowledge base description: Creates a knowledge base. operationId: ArtifactPublicService_CreateKnowledgeBase responses: "200": description: A successful response. schema: $ref: '#/definitions/CreateKnowledgeBaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: knowledgeBase description: |- The knowledge base resource to create. Required fields: display_name Optional fields: id (auto-generated from display_name if not provided), description, tags, type, system_id in: body required: true schema: $ref: '#/definitions/KnowledgeBase' tags: - Artifact x-stage: alpha /v1alpha/{name}: get: summary: Get a knowledge base description: Returns the details of a knowledge base. operationId: ArtifactPublicService_GetKnowledgeBase responses: "200": description: A successful response. schema: $ref: '#/definitions/GetKnowledgeBaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the knowledge base to retrieve. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+ tags: - Artifact x-stage: alpha delete: summary: Delete a knowledge base description: Deletes a knowledge base. operationId: ArtifactPublicService_DeleteKnowledgeBase responses: "200": description: A successful response. schema: $ref: '#/definitions/DeleteKnowledgeBaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the knowledge base to delete. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+ tags: - Artifact x-stage: alpha patch: summary: Update a chunk description: Updates a chunk. operationId: ArtifactPublicService_UpdateChunk responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdateChunkResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the chunk to update. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}/chunks/{chunk}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+/files/[^/]+/chunks/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/UpdateChunkBody' tags: - Artifact x-stage: alpha /v1alpha/{knowledgeBase.name}: patch: summary: Update a knowledge base info description: Updates the information of a knowledge base. operationId: ArtifactPublicService_UpdateKnowledgeBase responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdateKnowledgeBaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: knowledgeBase.name description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}`. in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+ - name: knowledgeBase description: |- The knowledge base resource to update. The knowledge base's `name` field identifies the resource. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}` in: body required: true schema: type: object properties: id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "kb-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "my-knowledge-base" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true tags: type: array items: type: string description: The knowledge base tags. type: description: |- The knowledge base type (persistent or ephemeral). Default is PERSISTENT if not specified during creation. allOf: - $ref: '#/definitions/KnowledgeBaseType' system: type: string description: |- The resource name of the system configuration. Format: `systems/{system}` Available systems: "systems/openai", "systems/gemini", or custom systems. If not specified, defaults to the default system. title: |- System ID defines how the knowledge base will be created based on the system's RAG configurations including: - AI model family (e.g., "openai", "gemini") - Embedding vector dimensionality - Chunking method - Other RAG-related settings embeddingConfig: description: The embedding configuration for the knowledge base. allOf: - $ref: '#/definitions/EmbeddingConfig' activeCollection: type: string description: |- The resource name of the active Milvus collection for this knowledge base. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/collections/{collection}` This supports collection versioning for embedding dimension changes. readOnly: true ownerName: type: string title: |- Resource name of the owner namespace. Example: "namespaces/usr-7k2m9p4w1n3" or "namespaces/org-3t8f5q2x6b1" readOnly: true owner: description: Knowledge base owner (User or Organization). readOnly: true allOf: - $ref: '#/definitions/Owner' creatorName: type: string description: |- Full resource name of the user who created this knowledge base. Format: `users/{user}` Optional for system-created knowledge bases (e.g., instill-agent). readOnly: true creator: description: |- The user who created this knowledge base. Populated when creator_name is present. readOnly: true allOf: - $ref: '#/definitions/v1beta.User' totalFiles: type: integer format: int64 description: The total files in knowledge base. readOnly: true totalTokens: type: integer format: int64 description: The total tokens in knowledge base. readOnly: true usedStorage: type: string format: uint64 description: The current used storage in knowledge base. readOnly: true downstreamApps: type: array items: type: string description: The downstream apps. readOnly: true title: |- The knowledge base resource to update. The knowledge base's `name` field identifies the resource. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}` required: - displayName tags: - Artifact x-stage: alpha /v1alpha/{parent}/files: get: summary: List files description: Returns a paginated list of files. operationId: ArtifactPublicService_ListFiles responses: "200": description: A successful response. schema: $ref: '#/definitions/ListFilesResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name (knowledge base). Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+ - name: pageSize description: The page size (default:10; max 100). in: query required: false type: integer format: int32 - name: pageToken description: The next page token(default from first file's token). in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - `id=""` or `uid=""` - Filter by specific file ID/UID (supports multiple IDs separated by OR) - `process_status="FILE_PROCESS_STATUS_COMPLETED"` - Filter by processing status - `q=""` - Fuzzy search on file display name, ID, and description **Examples**: - List specific files: `id="uuid1" OR id="uuid2"` - List completed files: `process_status="FILE_PROCESS_STATUS_COMPLETED"` - Search files: `q="aws"` in: query required: false type: string - name: view description: |- View allows clients to specify the desired file view in the response. When set, each returned `File` carries a populated `derived_resource_uri` (see `File.derived_resource_uri`), so the list call subsumes the per-file `GetFile(view=…)` fan-out that the Files page previously performed. Server-side the resolver fans out presign work across a bounded worker pool; unset leaves `derived_resource_uri` empty for every row. `thumbnail_uri` is always populated when a thumbnail exists and is unaffected by this flag. - VIEW_BASIC: Default view, only includes basic metadata. - VIEW_FULL: Full representation with all metadata. - VIEW_SUMMARY: Returns MinIO pre-signed URL to converted summary content. - VIEW_CONTENT: Returns MinIO pre-signed URL to converted markdown content. - VIEW_STANDARD_FILE_TYPE: Returns MinIO pre-signed URL to standardized file: - Documents → PDF - Images → PNG - Audio → OGG - Video → MP4 - VIEW_ORIGINAL_FILE_TYPE: Returns MinIO pre-signed URL to the original uploaded file. - VIEW_CACHE: Returns Gemini cache resource name. - VIEW_PATCH: Returns MinIO pre-signed URL to patch.md (user-submitted content patches). in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_SUMMARY - VIEW_CONTENT - VIEW_STANDARD_FILE_TYPE - VIEW_ORIGINAL_FILE_TYPE - VIEW_CACHE - VIEW_PATCH tags: - Artifact x-stage: alpha post: summary: Create a file description: Uploads and converts a file. operationId: ArtifactPublicService_CreateFile responses: "200": description: A successful response. schema: $ref: '#/definitions/CreateFileResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name (knowledge base). Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+ - name: file description: The file to create. in: body required: true schema: $ref: '#/definitions/File' tags: - Artifact x-stage: alpha /v1alpha/{name_1}: get: summary: Get a file description: Returns the details of a file. operationId: ArtifactPublicService_GetFile responses: "200": description: A successful response. schema: $ref: '#/definitions/GetFileResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the file to retrieve. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+/files/[^/]+ - name: view description: |- View allows clients to specify the desired file view in the response. - VIEW_BASIC: Default view, only includes basic metadata. - VIEW_FULL: Full representation with all metadata. - VIEW_SUMMARY: Returns MinIO pre-signed URL to converted summary content. - VIEW_CONTENT: Returns MinIO pre-signed URL to converted markdown content. - VIEW_STANDARD_FILE_TYPE: Returns MinIO pre-signed URL to standardized file: - Documents → PDF - Images → PNG - Audio → OGG - Video → MP4 - VIEW_ORIGINAL_FILE_TYPE: Returns MinIO pre-signed URL to the original uploaded file. - VIEW_CACHE: Returns Gemini cache resource name. - VIEW_PATCH: Returns MinIO pre-signed URL to patch.md (user-submitted content patches). in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_SUMMARY - VIEW_CONTENT - VIEW_STANDARD_FILE_TYPE - VIEW_ORIGINAL_FILE_TYPE - VIEW_CACHE - VIEW_PATCH - name: storageProvider description: |- Storage provider specifies which storage backend to use for the file resource. This field is only applicable for views that return file content: VIEW_SUMMARY, VIEW_CONTENT, VIEW_STANDARD_FILE_TYPE, VIEW_ORIGINAL_FILE_TYPE. - STORAGE_PROVIDER_UNSPECIFIED or STORAGE_PROVIDER_MINIO: Returns MinIO pre-signed URL (default) - STORAGE_PROVIDER_GCS: Uploads file to GCS if not present (with cache check), returns GCS signed URL GCS requires proper configuration in system settings. - STORAGE_PROVIDER_MINIO: Use MinIO as the storage backend (default) - STORAGE_PROVIDER_GCS: Use Google Cloud Storage as the storage backend in: query required: false type: string enum: - STORAGE_PROVIDER_MINIO - STORAGE_PROVIDER_GCS tags: - Artifact x-stage: alpha delete: summary: Delete a file description: Deletes a file. operationId: ArtifactPublicService_DeleteFile responses: "200": description: A successful response. schema: $ref: '#/definitions/DeleteFileResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the file to delete. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+/files/[^/]+ tags: - Artifact x-stage: alpha /v1alpha/{file.name}: patch: summary: Update a file description: Updates a file. operationId: ArtifactPublicService_UpdateFile responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdateFileResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: file.name description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}`. in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+/files/[^/]+ - name: file description: |- The file resource to update. The file's `name` field identifies the resource. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}` in: body required: true schema: type: object properties: id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "file-8f3a2k9E7c1" readOnly: true displayName: type: string description: |- Field 3: Human-readable display name (filename) for UI. This is typically the original filename of the uploaded file. slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "my-research-file-pdf" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true type: description: File type. allOf: - $ref: '#/definitions/File.Type' processStatus: description: File process status. readOnly: true allOf: - $ref: '#/definitions/FileProcessStatus' processOutcome: type: string description: File process outcome message. readOnly: true size: type: string format: int64 description: File size in bytes. readOnly: true totalChunks: type: integer format: int32 description: Total number of chunks created from this file. readOnly: true totalTokens: type: integer format: int32 description: Total number of tokens in this file. readOnly: true tags: type: array items: type: string description: Array of tags associated with the file. externalMetadata: type: object description: Custom metadata provided by the user during file upload. knowledgeBases: type: array items: type: string description: |- Knowledge base resource names that this file is associated with. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}` A file can belong to multiple knowledge bases within the same namespace. This field is populated from the file_knowledge_base junction table. Follows AIP-122 for resource name references. readOnly: true ownerName: type: string title: |- Resource name of the owner namespace. Example: "namespaces/usr-7k2m9p4w1n3" or "namespaces/org-3t8f5q2x6b1" readOnly: true creatorName: type: string title: |- Full resource name of the user who created this file. Format: `users/{user}` readOnly: true content: type: string description: |- Base64-encoded file content for inline upload. Alternative to object field for smaller files. downloadUrl: type: string description: Pre-signed download URL for the file. readOnly: true convertingPipeline: type: string description: |- Pipeline used for converting the file to Markdown if the file is a document (i.e., a file with pdf, doc[x] or ppt[x] extension). length: description: Length of the file in the specified unit type. readOnly: true allOf: - $ref: '#/definitions/Position' collections: type: array items: type: string description: |- Collection resource names that this file belongs to. Format: `namespaces/{namespace}/collections/{collection}` This field is system-managed and populated from collection membership. Follows AIP-122 for resource name references. readOnly: true deleteTime: type: string format: date-time description: Soft delete timestamp. readOnly: true object: type: string description: |- Object resource name reference for blob storage upload. Format: `namespaces/{namespace}/objects/{object}` Two upload approaches are supported: 1. Direct upload: Upload file directly to MinIO via GetObjectUploadURL, then provide the object resource name here. This avoids base64 encoding overhead and is preferred for large files. 2. Inline content: Provide base64-encoded file content in the 'content' field. When object is provided, the 'content' field is ignored. Follows AIP-122 for resource name references. isTextBased: type: boolean description: |- Whether the document contains a native text layer (true) or is image-based / scanned (false). Determined during file processing by attempting PDF text extraction. Used for visual grounding: text-based documents get precise text highlighting while image-based documents get bounding-box overlays. Only meaningful for document file types (PDF, DOCX, PPTX, etc.). readOnly: true contentSha256: type: string description: |- SHA256 hash of the file content for content-based deduplication. Computed at ingestion time for both inline content uploads and object reference uploads. readOnly: true ownerDisplayName: type: string description: |- Human-readable display name of the owner namespace. Populated server-side to avoid an extra frontend API call. Example: "Instill AI" (for an org) or "John Doe" (for a user). readOnly: true ownerAvatar: type: string description: |- Avatar URL of the owner namespace. Populated server-side alongside owner_display_name. readOnly: true creatorDisplayName: type: string description: |- Human-readable display name of the user who created this file. Populated server-side to avoid an extra frontend API call. readOnly: true creatorAvatar: type: string description: |- Avatar URL of the user who created this file. Populated server-side alongside creator_display_name. readOnly: true visibility: description: Visibility of the file. allOf: - $ref: '#/definitions/File.Visibility' derivedResourceUri: type: string description: |- Derived resource URI populated on `ListFiles` / `GetFile` responses when the caller requested an explicit `File.View` (SUMMARY, CONTENT, STANDARD_FILE_TYPE, ORIGINAL_FILE_TYPE, CACHE, PATCH). Mirrors the long-standing `GetFileResponse.derived_resource_uri` slot so list-shaped responses can carry per-row URIs without an extra per-file `GetFile` round trip. Empty when no view was requested. Subject to the short-lived MinIO/GCS presign TTL — treat as ephemeral and do not cross-cache. readOnly: true thumbnailUri: type: string description: |- Stable, cache-friendly URL to a small (~1024px WebP) thumbnail of the file, populated whenever a `CONVERTED_FILE_TYPE_THUMBNAIL` row exists for this file. Resolved through the gateway's `/v1alpha/blob-urls/{object_uid}` route so the URL itself is stable across presign rotations and CDN-cacheable. Empty for files whose thumbnail has not yet been generated (backfill workflow covers historical rows; ingest covers new ones). Clients should treat this as the preferred card-tile source and fall back to `derived_resource_uri` / mime-type icon when absent. readOnly: true title: |- The file resource to update. The file's `name` field identifies the resource. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}` required: - displayName tags: - Artifact x-stage: alpha /v1alpha/{name}/reprocess: post: summary: Reprocess a file description: |- Triggers reprocessing of a file with its current configuration. This will regenerate embeddings, chunks, and summaries. operationId: ArtifactPublicService_ReprocessFile responses: "200": description: A successful response. schema: $ref: '#/definitions/ReprocessFileResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the file to reprocess. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+/files/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/ReprocessFileBody' tags: - Artifact x-stage: alpha /v1alpha/{name_2}: get: summary: Get a chunk description: Returns the details of a chunk. operationId: ArtifactPublicService_GetChunk responses: "200": description: A successful response. schema: $ref: '#/definitions/GetChunkResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_2 description: |- The resource name of the chunk to retrieve. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}/chunks/{chunk}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+/files/[^/]+/chunks/[^/]+ - name: chunkType description: |- Optional chunk type filter. If specified, returns a chunk of this type from the same file. If not specified, returns the chunk identified by name. - TYPE_CONTENT: Content. - TYPE_SUMMARY: Summary. - TYPE_AUGMENTED: Augmented. in: query required: false type: string enum: - TYPE_CONTENT - TYPE_SUMMARY - TYPE_AUGMENTED tags: - Artifact x-stage: alpha delete: summary: Delete Object description: Deletes an object. operationId: ArtifactPublicService_DeleteObject responses: "200": description: A successful response. schema: $ref: '#/definitions/DeleteObjectResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_2 description: |- The resource name of the object to delete. Format: `namespaces/{namespace}/objects/{object}` in: path required: true type: string pattern: namespaces/[^/]+/objects/[^/]+ tags: - Artifact x-stage: alpha /v1alpha/{parent}/chunks: get: summary: List chunks description: Returns a paginated list of chunks. operationId: ArtifactPublicService_ListChunks responses: "200": description: A successful response. schema: $ref: '#/definitions/ListChunksResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}` in: path required: true type: string pattern: namespaces/[^/]+/knowledge-bases/[^/]+/files/[^/]+ - name: pageSize description: |- The maximum number of chunks to return. If this parameter is unspecified, at most 100 chunks will be returned. The cap value for this parameter is 1000 (i.e. any value above that will be coerced to 1000). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - `id=""` or `uid=""` - Filter by specific chunk ID/UID - `chunk_type="CHUNK_TYPE_TEXT"` - Filter by chunk type - `retrievable=true` - Filter by retrievable status **Examples**: - List specific chunks: `id="uuid1" OR id="uuid2"` - List text chunks: `chunk_type="CHUNK_TYPE_TEXT"` - List retrievable chunks: `retrievable=true` in: query required: false type: string tags: - Artifact x-stage: alpha /v1alpha/{parent}/search-chunks: post: summary: Search chunks description: Returns the top-K most similar chunks to a text prompt. operationId: ArtifactPublicService_SearchChunks responses: "200": description: A successful response. schema: $ref: '#/definitions/SearchChunksResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name (namespace). Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/SearchChunksBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Artifact x-stage: alpha /v1alpha/{parent}/object-upload-url: get: summary: Get Object Upload URL description: Returns the upload URL of an object. operationId: ArtifactPublicService_GetObjectUploadURL responses: "200": description: A successful response. schema: $ref: '#/definitions/GetObjectUploadURLResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: displayName description: |- Display name for the object (user-provided filename, max 1024 characters). This will be stored as the object's display_name. in: query required: true type: string - name: urlExpireDays description: |- URL expiration time in days. Maximum is 7 days. If set to 0, URL will not expire. in: query required: false type: integer format: int32 - name: lastModifiedTime description: |- Last modified time (client-provided metadata). Must be in RFC3339 formatted date-time string. in: query required: false type: string format: date-time - name: objectExpireDays description: |- Object expiration time in days. Minimum is 1 day. If set to 0, the object will not be deleted automatically. in: query required: false type: integer format: int32 tags: - Artifact x-stage: alpha /v1alpha/{name}/download-url: get: summary: Get Object Download URL description: Returns the download URL of an object. operationId: ArtifactPublicService_GetObjectDownloadURL responses: "200": description: A successful response. schema: $ref: '#/definitions/GetObjectDownloadURLResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the object. Format: `namespaces/{namespace}/objects/{object}` in: path required: true type: string pattern: namespaces/[^/]+/objects/[^/]+ - name: urlExpireDays description: |- URL expiration time in days. Maximum is 7 days. If set to 0, URL will not expire. in: query required: false type: integer format: int32 - name: downloadFilename description: |- Optional custom filename for the download. If provided, this filename will be used in the Content-Disposition header. in: query required: false type: string - name: format description: |- Optional output format for the download. Supported values: "pdf". When set, the backend converts the object on-demand (supported for DOC, DOCX, PPT, PPTX, XLS, XLSX) and returns a presigned URL to the converted file. The result is cached in storage so subsequent requests are served instantly. in: query required: false type: string tags: - Artifact x-stage: alpha /v1alpha/{name_3}: get: summary: Get Object description: Returns the details of an object. operationId: ArtifactPublicService_GetObject responses: "200": description: A successful response. schema: $ref: '#/definitions/GetObjectResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_3 description: |- The resource name of the object to retrieve. Format: `namespaces/{namespace}/objects/{object}` in: path required: true type: string pattern: namespaces/[^/]+/objects/[^/]+ tags: - Artifact x-stage: alpha delete: summary: Delete a model description: |- Deletes a model, accesing it by its resource name, which is defined by the parent namespace and the ID of the model. operationId: ModelPublicService_DeleteModel responses: "200": description: A successful response. schema: $ref: '#/definitions/DeleteModelResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_3 description: |- The resource name of the model to delete. Format: `namespaces/{namespace}/models/{model}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ tags: - Model x-stage: alpha /v1alpha/{object.name}: patch: summary: Update Object description: Updates an object. operationId: ArtifactPublicService_UpdateObject responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdateObjectResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: object.name description: |- Canonical resource name. Format: `namespaces/{namespace}/objects/{object}` in: path required: true type: string pattern: namespaces/[^/]+/objects/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/UpdateObjectBody' tags: - Artifact x-stage: alpha /v1beta/user: get: summary: Get the authenticated user description: Returns the details of the authenticated user. operationId: MgmtPublicService_GetAuthenticatedUser responses: "200": description: A successful response. schema: $ref: '#/definitions/GetAuthenticatedUserResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' tags: - Namespace x-stage: beta patch: summary: Update the authenticated user description: |- Updates the information of the authenticated user. In REST requests, only the supplied user fields will be taken into account when updating the resource. operationId: MgmtPublicService_PatchAuthenticatedUser responses: "200": description: A successful response. schema: $ref: '#/definitions/PatchAuthenticatedUserResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: user description: The user fields that will replace the existing ones. in: body required: true schema: $ref: '#/definitions/AuthenticatedUser' tags: - Namespace x-stage: beta /v1beta/users: get: summary: List users description: Returns a paginated list of users. operationId: MgmtPublicService_ListUsers responses: "200": description: A successful response. schema: $ref: '#/definitions/ListUsersResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: pageSize description: |- The maximum number of users to return. If this parameter is unspecified, at most 10 pipelines will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string - name: view description: |- View allows clients to specify the desired resource view in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `create_time>timestamp("2000-06-19T23:31:08.657Z")`. in: query required: false type: string tags: - Namespace x-stage: beta /v1beta/{name}: get: summary: Get a user description: Returns the details of a user by their ID. operationId: MgmtPublicService_GetUser responses: "200": description: A successful response. schema: $ref: '#/definitions/GetUserResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the user. Format: `users/{user}` in: path required: true type: string pattern: users/[^/]+ - name: view description: |- View allows clients to specify the desired resource view in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Namespace x-stage: beta delete: summary: Delete an API token description: Deletes an API token. operationId: MgmtPublicService_DeleteToken responses: "200": description: A successful response. schema: $ref: '#/definitions/DeleteTokenResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the token to delete. Format: `users/{user}/tokens/{token}` in: path required: true type: string pattern: tokens/[^/]+ tags: - Namespace x-stage: beta /v1beta/tokens: get: summary: List API tokens description: Returns a paginated list of the API tokens of the authenticated user. operationId: MgmtPublicService_ListTokens responses: "200": description: A successful response. schema: $ref: '#/definitions/ListTokensResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `users/{user}` If not provided, defaults to the authenticated user. in: query required: false type: string - name: pageSize description: |- The maximum number of tokens to return. If this parameter is unspecified, at most 10 tokens will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string tags: - Namespace x-stage: beta post: summary: Create an API token description: Creates an API token for the authenticated user. operationId: MgmtPublicService_CreateToken responses: "200": description: A successful response. schema: $ref: '#/definitions/CreateTokenResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: token description: The properties of the token to be created. in: body required: true schema: $ref: '#/definitions/ApiToken' tags: - Namespace x-stage: beta /v1beta/{name_1}: get: summary: Get an API token description: Returns the details of an API token. operationId: MgmtPublicService_GetToken responses: "200": description: A successful response. schema: $ref: '#/definitions/GetTokenResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the token. Format: `users/{user}/tokens/{token}` in: path required: true type: string pattern: tokens/[^/]+ tags: - Namespace x-stage: beta delete: summary: Delete a connection description: Deletes a connection. operationId: MgmtPublicService_DeleteNamespaceConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/DeleteNamespaceConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the connection to delete. Format: `namespaces/{namespace}/connections/{connection}` in: path required: true type: string pattern: namespaces/[^/]+/connections/[^/]+ tags: - Connection x-stage: beta /v1beta/validate-token: post: summary: Validate an API token description: Validates an API token. operationId: MgmtPublicService_ValidateToken responses: "200": description: A successful response. schema: $ref: '#/definitions/ValidateTokenResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' tags: - Namespace x-stage: beta /v1beta/check-namespace: post: summary: Check if a namespace is in use description: |- Returns the availability of a namespace or, alternatively, the type of resource that is using it. operationId: MgmtPublicService_CheckNamespace responses: "200": description: A successful response. schema: $ref: '#/definitions/CheckNamespaceResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: body description: |- CheckNamespaceRequest represents a request to verify if a namespace is available. in: body required: true schema: $ref: '#/definitions/CheckNamespaceRequest' tags: - Namespace x-stage: beta /v1beta/pipeline-runs/query-charts: get: summary: List pipeline trigger time charts description: |- Returns a timeline of pipeline trigger counts for a given requester. The response will contain one set of records (datapoints), representing the amount of triggers in a time bucket. operationId: MgmtPublicService_ListPipelineTriggerChartRecords responses: "200": description: A successful response. schema: $ref: '#/definitions/ListPipelineTriggerChartRecordsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: requesterId description: The ID of the namespace that requested the pipeline triggers. in: query required: true type: string - name: aggregationWindow description: |- Aggregation window. The value is a positive duration string, i.e. a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300ms", "1.5h" or "2h45m". The minimum (and default) window is 1h. in: query required: false type: string - name: start description: |- Beginning of the time range from which the records will be fetched. The default value is the beginning of the current day, in UTC. in: query required: false type: string format: date-time - name: stop description: |- End of the time range from which the records will be fetched. The default value is the current timestamp. in: query required: false type: string format: date-time tags: - Metrics x-stage: beta /v1beta/model-runs/query-charts: get: summary: List model trigger time charts description: |- Returns a timeline of model trigger counts for a given requester. The response will contain one set of records (datapoints), representing the amount of triggers in a time bucket. operationId: MgmtPublicService_ListModelTriggerChartRecords responses: "200": description: A successful response. schema: $ref: '#/definitions/ListModelTriggerChartRecordsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: requesterId description: The ID of the namespace that requested the model triggers. in: query required: true type: string - name: aggregationWindow description: |- Aggregation window. The value is a positive duration string, i.e. a sequence of decimal numbers, each with optional fraction and a unit suffix, such as "300ms", "1.5h" or "2h45m". The minimum (and default) window is 1h. in: query required: false type: string - name: start description: |- Beginning of the time range from which the records will be fetched. The default value is the beginning of the current day, in UTC. in: query required: false type: string format: date-time - name: stop description: |- End of the time range from which the records will be fetched. The default value is the current timestamp. in: query required: false type: string format: date-time tags: - Metrics x-stage: beta /v1beta/{parent}/connections: get: summary: List namespace connections description: Returns a paginated list of connections created by a namespace. operationId: MgmtPublicService_ListNamespaceConnections responses: "200": description: A successful response. schema: $ref: '#/definitions/ListNamespaceConnectionsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: pageSize description: |- The maximum number of items to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: pageToken description: Page token. By default, the first page will be returned. in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. The following filters are supported: - `integrationId` - `qConnection` (fuzzy search on connection ID, integration title or vendor) **Examples**: - List connections where app name, vendor or connection ID match `googl`: `q="googl"`. - List connections where the component type is `openai` (e.g. to setup a connector within a pipeline): `integrationId="openai"`. in: query required: false type: string tags: - Connection x-stage: beta post: summary: Create a connection description: Creates a connection under the ownership of a namespace. operationId: MgmtPublicService_CreateNamespaceConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/CreateNamespaceConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: connection description: Properties of the connection to be created. in: body required: true schema: $ref: '#/definitions/mgmt.v1beta.Connection' tags: - Connection x-stage: beta /v1beta/{name_2}: get: summary: Get a namespace connection description: Returns the details of a connection. operationId: MgmtPublicService_GetNamespaceConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/GetNamespaceConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_2 description: |- The resource name of the connection. Format: `namespaces/{namespace}/connections/{connection}` in: path required: true type: string pattern: namespaces/[^/]+/connections/[^/]+ - name: view description: |- View allows clients to specify the desired view in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Connection x-stage: beta delete: summary: Delete a pipeline description: |- Deletes a pipeline, accesing it by its resource name, which is defined by the parent namespace and the ID of the pipeline. The authenticated namespace must be the parent of the pipeline in order to delete it. operationId: PipelinePublicService_DeletePipeline responses: "200": description: A successful response. schema: $ref: '#/definitions/DeletePipelineResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_2 description: |- The resource name of the pipeline to delete. Format: `namespaces/{namespace}/pipelines/{pipeline}` in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ tags: - Pipeline x-stage: beta /v1beta/{connection.name}: patch: summary: Update a connection description: Updates a connection with the supplied connection fields. operationId: MgmtPublicService_UpdateNamespaceConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdateNamespaceConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: connection.name description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/connections/{connection}`. in: path required: true type: string pattern: namespaces/[^/]+/connections/[^/]+ - name: connection description: |- Connection object with the new properties to be updated. The connection's `name` field identifies the resource. Format: `namespaces/{namespace}/connections/{connection}` Immutable and output-only fields will be ignored. The Setup property must be updated in block (no partial update is supported). in: body required: true schema: type: object properties: id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "con-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "my-google-drive" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true namespaceId: type: string description: 'Field 9: ID of the namespace owning the connection.' readOnly: true integrationId: type: string description: |- Field 10: Integration ID. It determines for which type of components can reference this connection. integrationTitle: type: string description: |- Field 11: Integration title. This helps the console display the results grouped by integration ID without needing an extra call to fetch title by integration ID. readOnly: true method: description: |- Field 12: Connection method. It references the setup schema provided by the integration. allOf: - $ref: '#/definitions/mgmt.v1beta.Connection.Method' setup: type: object description: |- Field 13: Connection details. This field is required on creation, optional on view. When viewing the connection details, the setup values will be redacted. view: title: |- Field 14: View defines how the connection is presented. The following fields are only shown in the FULL view: - setup - scopes - oAuthAccessDetails readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.View' scopes: type: array items: type: string description: |- Field 15: A list of scopes that identify the resources that the connection will be able to access on the user's behalf. This is typically passed on creation when the setup has been generated through an OAuth flow with a limited set of scopes. oAuthAccessDetails: type: object description: |- Field 16: When the connection method is METHOD_OAUTH, the access token might come with some extra information that might vary across vendors. This information is passed as connection metadata. identity: type: string description: |- Field 17: When the connection method is METHOD_OAUTH, this field will hold the identity (e.g., email, username) with which the access token has been generated. title: |- Connection object with the new properties to be updated. The connection's `name` field identifies the resource. Format: `namespaces/{namespace}/connections/{connection}` Immutable and output-only fields will be ignored. The Setup property must be updated in block (no partial update is supported). required: - displayName - integrationId - method - setup tags: - Connection x-stage: beta /v1beta/{name}/test: post: summary: Test a connection description: |- Makes a request to the 3rd party app that the connection is configured to communicate with, and checks the result of the call. If the test fails, the response status and error message will provide more information about the failure. Note that this action might affect the quota or billing of the integrated account in the 3rd party app. operationId: MgmtPublicService_TestNamespaceConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/TestNamespaceConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the connection to test. Format: `namespaces/{namespace}/connections/{connection}` in: path required: true type: string pattern: namespaces/[^/]+/connections/[^/]+ tags: - Connection x-stage: beta /v1beta/namespaces/{namespaceId}/connections/{connectionId}/referenced-pipelines: get: summary: List pipelines that reference a connection description: |- Returns a paginated list with the IDs of the pipelines that reference a given connection. All the pipelines will belong to the same namespace as the connection. operationId: MgmtPublicService_ListPipelineIDsByConnectionID responses: "200": description: A successful response. schema: $ref: '#/definitions/mgmt.v1beta.ListPipelineIDsByConnectionIDResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: namespaceId description: Namespace ID. in: path required: true type: string - name: connectionId description: Connection ID. in: path required: true type: string - name: pageSize description: |- The maximum number of items to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: pageToken description: Page token. By default, the first page will be returned. in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. The following filters are supported: - `q` (fuzzy search on pipeline ID) in: query required: false type: string tags: - Connection x-stage: beta /v1beta/integrations: get: summary: List integrations description: Returns a paginated list of available integrations. operationId: PipelinePublicService_ListIntegrations responses: "200": description: A successful response. schema: $ref: '#/definitions/pipeline.v1beta.ListIntegrationsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: pageSize description: |- The maximum number of items to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: pageToken description: Page token. By default, the first page will be returned. in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. The following filters are supported: - `qIntegration` (fuzzy search on title or vendor) **Examples**: - List integrations where app name or vendor match `googl`: `q="googl"`. in: query required: false type: string tags: - Integration x-stage: beta /v1beta/integrations/{integrationId}: get: summary: Get an integration description: Returns the details of an integration. operationId: MgmtPublicService_GetIntegration responses: "200": description: A successful response. schema: $ref: '#/definitions/mgmt.v1beta.GetIntegrationResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: integrationId description: Integration ID. in: path required: true type: string - name: view description: |- View allows clients to specify the desired view in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Integration x-stage: beta /v1alpha/model-definitions: get: summary: List model definitions description: Returns a paginated list of model definitions. operationId: ModelPublicService_ListModelDefinitions responses: "200": description: A successful response. schema: $ref: '#/definitions/ListModelDefinitionsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: pageSize description: |- The maximum number of model definitions to return. If this parameter is unspecified, at most 10 definitions will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string - name: view description: |- View allows clients to specify the desired resource view in the response. - VIEW_BASIC: Default view, only includes basic information (omits `model_spec`). - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Model x-stage: alpha /v1alpha/available-regions: get: summary: List available regions description: Returns a paginated list of available regions. operationId: ModelPublicService_ListAvailableRegions responses: "200": description: A successful response. schema: $ref: '#/definitions/ListAvailableRegionsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' tags: - Model x-stage: alpha /v1alpha/model-definitions/{modelDefinitionId}: get: summary: Get a model definition description: Returns the details of a model definition. operationId: ModelPublicService_GetModelDefinition responses: "200": description: A successful response. schema: $ref: '#/definitions/GetModelDefinitionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: modelDefinitionId description: |- The resource name of the model definition, which allows its access by ID. - Format: `model-definitions/{id}`. in: path required: true type: string - name: view description: |- View allows clients to specify the desired resource view in the response. - VIEW_BASIC: Default view, only includes basic information (omits `model_spec`). - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Model x-stage: alpha /v1alpha/models: get: summary: List public models description: Returns a paginated list of public models. operationId: ModelPublicService_ListPublicModels responses: "200": description: A successful response. schema: $ref: '#/definitions/ListPublicModelsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: pageSize description: |- The maximum number of models to return. If this parameter is unspecified, at most 10 models will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string - name: view description: |- View allows clients to specify the desired model view in the response. - VIEW_BASIC: Default view, only includes basic information (omits `model_spec`). - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - name: showDeleted description: Include soft-deleted models in the result. in: query required: false type: boolean - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `create_time>timestamp("2000-06-19T23:31:08.657Z")`. in: query required: false type: string - name: visibility description: |- Limit results to pipelines with the specified visibility. - VISIBILITY_PRIVATE: Only the owner can see the model. - VISIBILITY_PUBLIC: Other users can see the model. in: query required: false type: string enum: - VISIBILITY_PRIVATE - VISIBILITY_PUBLIC - name: orderBy description: |- Order by field, with options for ordering by `id`, `create_time` or `update_time`. Format: `order_by=id` or `order_by=create_time desc`, default is `asc`. in: query required: false type: string tags: - Model x-stage: alpha /v1alpha/{parent}/models: get: summary: List models description: Returns a paginated list of models. operationId: ModelPublicService_ListModels responses: "200": description: A successful response. schema: $ref: '#/definitions/ListModelsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: pageSize description: |- The maximum number of models to return. If this parameter is unspecified, at most 10 models will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string - name: view description: |- View allows clients to specify the desired model view in the response. - VIEW_BASIC: Default view, only includes basic information (omits `model_spec`). - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - name: showDeleted description: Include soft-deleted models in the result. in: query required: false type: boolean - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `create_time>timestamp("2000-06-19T23:31:08.657Z")`. in: query required: false type: string - name: visibility description: |- Limit results to pipelines with the specified visibility. - VISIBILITY_PRIVATE: Only the owner can see the model. - VISIBILITY_PUBLIC: Other users can see the model. in: query required: false type: string enum: - VISIBILITY_PRIVATE - VISIBILITY_PUBLIC - name: orderBy description: |- Order by field, with options for ordering by `id`, `create_time` or `update_time`. Format: `order_by=id` or `order_by=create_time desc`, default is `asc`. in: query required: false type: string tags: - Model x-stage: alpha post: summary: Create a new model description: |- Creates a new model under the parenthood of a namespace. This is an asynchronous endpoint, i.e., the server will not wait for the model to be created in order to respond. Instead, it will return a response with the necessary information to access the result and status of the creation operation. operationId: ModelPublicService_CreateModel responses: "200": description: A successful response. schema: $ref: '#/definitions/CreateModelResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: model description: The properties of the model to be created. in: body required: true schema: $ref: '#/definitions/Model' tags: - Model x-stage: alpha /v1alpha/{name_4}: get: summary: Get a model description: |- Returns the detail of a model, accessing it by the model ID and its parent namespace. operationId: ModelPublicService_GetModel responses: "200": description: A successful response. schema: $ref: '#/definitions/GetModelResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_4 description: |- The resource name of the model. Format: `namespaces/{namespace}/models/{model}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ - name: view description: |- View allows clients to specify the desired model view in the response. - VIEW_BASIC: Default view, only includes basic information (omits `model_spec`). - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Model x-stage: alpha delete: summary: Delete a model version description: |- Deletes a model version, accesing it by its resource name, which is defined by the parent namespace and the ID of the model, and version. operationId: ModelPublicService_DeleteModelVersion responses: "200": description: A successful response. schema: $ref: '#/definitions/DeleteModelVersionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_4 description: |- The resource name of the model version to delete. Format: `namespaces/{namespace}/models/{model}/versions/{version}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+/versions/[^/]+ tags: - Model x-stage: alpha /v1alpha/{model.name}: patch: summary: Update a model description: |- Updates a model, accessing it by its resource name, which is defined by the parent namespace and the ID of the model. In REST requests, only the supplied model fields will be taken into account when updating the resource. operationId: ModelPublicService_UpdateModel responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdateModelResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: model.name description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/models/{model}`. in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ - name: model description: |- The model resource to update. The model's `name` field identifies the resource. Format: `namespaces/{namespace}/models/{model}` in: body required: true schema: type: object properties: id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "mod-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string description: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. Slug is NOT part of resource identity. aliases: type: array items: type: string description: 'Field 5: Previous slugs for backward compatibility.' readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true modelDefinition: type: string description: The model definition that has been used to import the model. configuration: type: object description: |- Model configuration. This field is validated against the model specification in the model definition. task: description: Model task. allOf: - $ref: '#/definitions/Task' visibility: description: Model visibility. allOf: - $ref: '#/definitions/Model.Visibility' permission: description: Permission defines how the model can be used. readOnly: true allOf: - $ref: '#/definitions/v1alpha.Permission' region: type: string description: Region of choice for the particular provider to host the model. hardware: type: string description: Hardware of choice to serve the model. inputSchema: type: object description: Input schema for the model. readOnly: true outputSchema: type: object description: Output schema for the model. readOnly: true tags: type: array items: type: string description: Tags. versions: type: array items: type: string description: Version names. readOnly: true stats: description: Statistic data. readOnly: true allOf: - $ref: '#/definitions/Model.Stats' readme: type: string description: README holds the model documentation. sourceUrl: type: string description: A link to the source code of the model (e.g. to a GitHub repository). documentationUrl: type: string description: A link to any extra information. license: type: string description: License under which the model is distributed. profileImage: type: string description: Model profile image in base64 format. ownerName: type: string description: Resource name of the owner namespace. readOnly: true owner: description: Model owner (User or Organization). readOnly: true allOf: - $ref: '#/definitions/Owner' creatorName: type: string title: |- Full resource name of the user who created this model. Format: `users/{user}` readOnly: true creator: description: The user who created this model. readOnly: true allOf: - $ref: '#/definitions/v1beta.User' deleteTime: type: string format: date-time description: Soft delete timestamp. readOnly: true title: |- The model resource to update. The model's `name` field identifies the resource. Format: `namespaces/{namespace}/models/{model}` required: - displayName - modelDefinition - configuration - task - visibility - region - hardware tags: - Model x-stage: alpha /v1alpha/{name}/rename: post: summary: Rename a model description: |- Renames a model, accesing it by its resource name, which is defined by the parent namespace and the ID of the model. operationId: ModelPublicService_RenameModel responses: "200": description: A successful response. schema: $ref: '#/definitions/RenameModelResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the model to rename. Format: namespaces/{namespace}/models/{model} in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/RenameModelBody' tags: - Model x-stage: alpha /v1alpha/{name}/versions/{version}/watch: get: summary: Watch the state of a model version description: |- Returns the state of a model. The model resource allocation and scaling actions take some time, during which a model will be in various state. This endpoint allows clients to track the state. operationId: ModelPublicService_WatchModelVersion responses: "200": description: A successful response. schema: $ref: '#/definitions/WatchModelVersionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the model to watch. Format: namespaces/{namespace}/models/{model} in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ - name: version description: Model version in: path required: true type: string tags: - Model x-stage: alpha /v1alpha/{name}/watch: get: summary: Watch the state of the latest model version description: |- Returns the state of the latest model version. The model resource allocation and scaling actions take some time, during which a model will be in various state. This endpoint allows clients to track the state. operationId: ModelPublicService_WatchModel responses: "200": description: A successful response. schema: $ref: '#/definitions/WatchModelResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the model to watch. Format: namespaces/{namespace}/models/{model} in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ tags: - Model x-stage: alpha /v1alpha/{parent}/versions: get: summary: List namespace model versions description: |- Returns a paginated list of version of a model namespace that belong to the specified namespace. Contains model version and digest. operationId: ModelPublicService_ListModelVersions responses: "200": description: A successful response. schema: $ref: '#/definitions/ListModelVersionsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name (model). Format: `namespaces/{namespace}/models/{model}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ - name: pageSize description: |- The maximum number of versions to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: page description: Page number. in: query required: false type: integer format: int32 tags: - Model x-stage: alpha /v1alpha/{name}/trigger: post: summary: Trigger model inference description: |- Triggers a deployed model to infer the result of a set of task or questions. operationId: ModelPublicService_TriggerModelVersion responses: "200": description: A successful response. schema: $ref: '#/definitions/TriggerModelVersionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the model version to trigger. Format: `namespaces/{namespace}/models/{model}/versions/{version}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+/versions/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/TriggerModelVersionBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Model x-stage: alpha /v1alpha/{name}/trigger-async: post: summary: Trigger model inference asynchronously description: |- Triggers a deployed model to infer the result of a set of task or questions. operationId: ModelPublicService_TriggerAsyncModelVersion responses: "200": description: A successful response. schema: $ref: '#/definitions/TriggerAsyncModelVersionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the model version to trigger. Format: `namespaces/{namespace}/models/{model}/versions/{version}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+/versions/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/TriggerAsyncModelVersionBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Model x-stage: alpha /v1alpha/{name_1}/trigger: post: summary: Trigger model inference description: |- Triggers the latest deployed model version to infer the result of a set of task or questions. operationId: ModelPublicService_TriggerModel responses: "200": description: A successful response. schema: $ref: '#/definitions/TriggerModelResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the model to trigger (uses latest version). Format: `namespaces/{namespace}/models/{model}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/TriggerModelBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Model x-stage: alpha /v1alpha/{name_1}/trigger-async: post: summary: Trigger model inference asynchronously description: |- Triggers the latest deployed model version to infer the result of a set of task or questions. operationId: ModelPublicService_TriggerAsyncModel responses: "200": description: A successful response. schema: $ref: '#/definitions/TriggerAsyncModelResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the model to trigger (uses latest version). Format: `namespaces/{namespace}/models/{model}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/TriggerAsyncModelBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Model x-stage: alpha /v1alpha/{name}/operation: get: summary: Get the details of the long-running operation from a model version description: |- This method allows requesters to request the status and outcome of long-running operations in a model, such as trigger. operationId: ModelPublicService_GetModelVersionOperation responses: "200": description: A successful response. schema: $ref: '#/definitions/GetModelVersionOperationResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the model version. Format: `namespaces/{namespace}/models/{model}/versions/{version}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+/versions/[^/]+ - name: view description: |- View allows clients to specify the desired operation result in the response. - VIEW_BASIC: Default view, only includes basic information (omits `model_spec`). - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Model x-stage: alpha /v1alpha/{name_1}/operation: get: summary: Get the details of the latest long-running operation from a model description: |- This method allows requesters to request the status and outcome of long-running operations in a model, such as trigger. operationId: ModelPublicService_GetModelOperation responses: "200": description: A successful response. schema: $ref: '#/definitions/GetModelOperationResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the model. Format: `namespaces/{namespace}/models/{model}` in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ - name: view description: |- View allows clients to specify the desired operation result in the response. - VIEW_BASIC: Default view, only includes basic information (omits `model_spec`). - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Model x-stage: alpha /v1alpha/operations/{operationId}: get: summary: Get the details of a long-running operation description: |- This method allows requesters to request the status and outcome of long-running operations in a model, such as trigger. operationId: ModelPublicService_GetOperation responses: "200": description: A successful response. schema: $ref: '#/definitions/v1alpha.GetOperationResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: operationId description: The operation ID. in: path required: true type: string tags: - Model x-stage: alpha /v1alpha/{parent}/runs: get: summary: List Model Runs description: |- Returns a paginated list of runs for a given model. When the requester is the owner of the model, they will be able to all the model runs, regardless who requested the trigger (the view will be partial to hide sensitive data like e.g. the trigger input and output). Other requesters will only be able to see the runs requested by themselves. operationId: ModelPublicService_ListModelRuns responses: "200": description: A successful response. schema: $ref: '#/definitions/ListModelRunsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent model resource name. Format: namespaces/{namespace}/models/{model} in: path required: true type: string pattern: namespaces/[^/]+/models/[^/]+ - name: pageSize description: |- The maximum number of runs to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: page description: Page number. in: query required: false type: integer format: int32 - name: orderBy description: |- Sort the results by the given expression. Format: `field [ASC | DESC], where `field` can be: - `create_time` - `update_time` By default, results are sorted by descending creation time. in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `create_time>timestamp("2000-06-19T23:31:08.657Z")`. The filter can be applied to the following fields: - `create_time` in: query required: false type: string - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Model x-stage: alpha /v1alpha/dashboard/models/runs: get: summary: List Model Runs By Requester description: |- Returns a paginated list of runs requested by a namespace. The response may contain runs from several models. operationId: ModelPublicService_ListModelRunsByRequester responses: "200": description: A successful response. schema: $ref: '#/definitions/ListModelRunsByRequesterResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: requester description: |- Requester namespace resource name. Format: namespaces/{namespace} in: query required: true type: string - name: pageSize description: |- The maximum number of runs to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: page description: Page number. in: query required: false type: integer format: int32 - name: orderBy description: |- Sort the results by the given expression. Format: `field [ASC | DESC], where `field` can be: - `create_time` - `update_time` By default, results are sorted by descending creation time. in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `status="RUN_STATUS_COMPLETED"`. The filter can be applied to the following fields: - `status` - `source` in: query required: false type: string - name: start description: |- Beginning of the time range from which the records will be fetched. The default value is the beginning of the current day, in UTC. in: query required: false type: string format: date-time - name: stop description: |- End of the time range from which the records will be fetched. The default value is the current timestamp. in: query required: false type: string format: date-time tags: - Model x-stage: alpha /v1beta/pipelines: get: summary: List accessible pipelines description: Returns a paginated list of pipelines that are visible to the requester. operationId: PipelinePublicService_ListPublicPipelines responses: "200": description: A successful response. schema: $ref: '#/definitions/ListPublicPipelinesResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: pageSize description: |- The maximum number of pipelines to return. If this parameter is unspecified, at most 10 pipelines will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string - name: view description: |- View allows clients to specify the desired pipeline view in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. - VIEW_RECIPE: Contains the recipe of the resource. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_RECIPE - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `create_time>timestamp("2000-06-19T23:31:08.657Z")`. - Example: `recipe.components.definition_name:"operator-definitions/2ac8be70-0f7a-4b61-a33d-098b8acfa6f3"`. in: query required: false type: string - name: showDeleted description: Include soft-deleted pipelines in the result. in: query required: false type: boolean - name: visibility description: |- Limit results to pipelines with the specified visibility. - VISIBILITY_PRIVATE: Only the user can see the pipeline. - VISIBILITY_PUBLIC: Other users can see the pipeline. in: query required: false type: string enum: - VISIBILITY_PRIVATE - VISIBILITY_PUBLIC - name: orderBy description: |- Order by field, with options for ordering by `id`, `create_time` or `update_time`. Format: `order_by=id` or `order_by=create_time desc`, default is `asc`. in: query required: false type: string tags: - Pipeline x-stage: beta /v1beta/{parent}/pipelines: get: summary: List namespace pipelines description: Returns a paginated list of pipelines of a namespace operationId: PipelinePublicService_ListPipelines responses: "200": description: A successful response. schema: $ref: '#/definitions/ListPipelinesResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: pageSize description: |- The maximum number of pipelines to return. If this parameter is unspecified, at most 10 pipelines will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string - name: view description: |- View allows clients to specify the desired pipeline view in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. - VIEW_RECIPE: Contains the recipe of the resource. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_RECIPE - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `create_time>timestamp("2000-06-19T23:31:08.657Z")`. - Example: `recipe.components.definition_name:"operator-definitions/2ac8be70-0f7a-4b61-a33d-098b8acfa6f3"`. in: query required: false type: string - name: showDeleted description: Include soft-deleted pipelines in the result. in: query required: false type: boolean - name: visibility description: |- Limit results to pipelines with the specified visibility. - VISIBILITY_PRIVATE: Only the user can see the pipeline. - VISIBILITY_PUBLIC: Other users can see the pipeline. in: query required: false type: string enum: - VISIBILITY_PRIVATE - VISIBILITY_PUBLIC - name: orderBy description: |- Order by field, with options for ordering by `id`, `create_time` or `update_time`. Format: `order_by=id` or `order_by=create_time desc`, default is `asc`. in: query required: false type: string tags: - Pipeline x-stage: beta post: summary: Create a new pipeline description: Creates a new pipeline under a namespace. operationId: PipelinePublicService_CreatePipeline responses: "200": description: A successful response. schema: $ref: '#/definitions/CreatePipelineResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: pipeline description: The properties of the pipeline to be created. in: body required: true schema: $ref: '#/definitions/Pipeline' tags: - Pipeline x-stage: beta /v1beta/{name_3}: get: summary: Get a pipeline description: Returns the details of a pipeline. operationId: PipelinePublicService_GetPipeline responses: "200": description: A successful response. schema: $ref: '#/definitions/GetPipelineResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_3 description: |- The resource name of the pipeline. Format: `namespaces/{namespace}/pipelines/{pipeline}` in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: view description: |- View allows clients to specify the desired pipeline view in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. - VIEW_RECIPE: Contains the recipe of the resource. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_RECIPE tags: - Pipeline x-stage: beta delete: summary: Delete a pipeline release description: |- Deletes a pipeline release, where the pipeline is identified by its resource name, formed by its parent namespace and ID. The authenticated namespace must be the parent of the pipeline in order to perform this action. operationId: PipelinePublicService_DeletePipelineRelease responses: "200": description: A successful response. schema: $ref: '#/definitions/DeletePipelineReleaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_3 description: |- The resource name of the release to delete. Format: `namespaces/{namespace}/pipelines/{pipeline}/releases/{release}` in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+/releases/[^/]+ tags: - Pipeline x-stage: beta /v1beta/{pipeline.name}: patch: summary: Update a pipeline description: |- Udpates a pipeline, accessing it by its resource name, which is defined by the parent namespace and the ID of the pipeline. The authenticated namespace must be the parent of the pipeline in order to modify it. In REST requests, only the supplied pipeline fields will be taken into account when updating the resource. operationId: PipelinePublicService_UpdatePipeline responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdatePipelineResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: pipeline.name description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/pipelines/{pipeline}`. in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: pipeline description: |- The pipeline resource to update. The pipeline's `name` field identifies the resource. Format: `namespaces/{namespace}/pipelines/{pipeline}` in: body required: true schema: type: object properties: id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "pip-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string description: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. Slug is NOT part of resource identity. aliases: type: array items: type: string description: 'Field 5: Previous slugs for backward compatibility.' readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true recipe: type: object description: Recipe describes the components of a Pipeline and how they are connected. rawRecipe: type: string description: Recipe in YAML format. visibility: description: Pipeline visibility. allOf: - $ref: '#/definitions/Pipeline.Visibility' sharing: description: Pipeline sharing information. allOf: - $ref: '#/definitions/Sharing' permission: description: Permission defines how a pipeline can be used. readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.Permission' dataSpecification: description: Data specifications. readOnly: true allOf: - $ref: '#/definitions/DataSpecification' tags: type: array items: type: string description: Tags. stats: description: Statistic data. readOnly: true allOf: - $ref: '#/definitions/Pipeline.Stats' metadata: type: object description: Metadata holds console-related data such as the pipeline builder layout. readme: type: string description: README holds the pipeline documentation. releases: type: array items: type: object $ref: '#/definitions/PipelineRelease' description: Releases holds the history of pipeline versions. readOnly: true endpoints: description: Pipeline endpoints. readOnly: true allOf: - $ref: '#/definitions/Endpoints' sourceUrl: type: string description: A link to the source code of the pipeline (e.g. to a GitHub repository). documentationUrl: type: string description: A link to any extra information. license: type: string description: License under which the pipeline is distributed. profileImage: type: string description: Pipeline profile image in base64 format. ownerName: type: string description: Resource name of the owner namespace. readOnly: true owner: description: Pipeline owner (User or Organization). readOnly: true allOf: - $ref: '#/definitions/Owner' creatorName: type: string title: |- Full resource name of the user who created this pipeline. Format: `users/{user}` readOnly: true creator: description: The user who created this pipeline. readOnly: true allOf: - $ref: '#/definitions/v1beta.User' deleteTime: type: string format: date-time description: Soft delete timestamp. readOnly: true title: |- The pipeline resource to update. The pipeline's `name` field identifies the resource. Format: `namespaces/{namespace}/pipelines/{pipeline}` required: - displayName - recipe - visibility tags: - Pipeline x-stage: beta /v1beta/{name}/validate: post: summary: Validate a pipeline description: |- Validates a pipeline by its resource name, which is defined by the parent namespace and the ID of the pipeline. Validation checks the recipe of the pipeline and the status of its components. operationId: PipelinePublicService_ValidatePipeline responses: "200": description: A successful response. schema: $ref: '#/definitions/ValidatePipelineResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the pipeline to validate. Format: namespaces/{namespace}/pipelines/{pipeline} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/ValidatePipelineBody' tags: - Pipeline x-stage: beta /v1beta/{name}/rename: post: summary: Rename a pipeline description: |- Updates the ID of a pipeline. Since this is an output-only field, a custom method is required to modify it. The pipeline name will be updated accordingly, as it is composed by the parent namespace and ID of the pipeline (e.g. `namespaces/luigi/pipelines/pizza-recipe-generator`). The authenticated namespace must be the parent of the pipeline in order to perform this action. operationId: PipelinePublicService_RenamePipeline responses: "200": description: A successful response. schema: $ref: '#/definitions/RenamePipelineResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the pipeline to rename. Format: namespaces/{namespace}/pipelines/{pipeline} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/RenamePipelineBody' tags: - Pipeline x-stage: beta /v1beta/{name}/clone: post: summary: Clone a pipeline description: |- Clones a pipeline owned by a namespace. The new pipeline may have a different parent, and this can be either a namespace or an organization. operationId: PipelinePublicService_ClonePipeline responses: "200": description: A successful response. schema: $ref: '#/definitions/ClonePipelineResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the source pipeline to clone. Format: namespaces/{namespace}/pipelines/{pipeline} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/ClonePipelineBody' tags: - Pipeline x-stage: beta /v1beta/{name}/trigger: post: summary: Trigger a pipeline description: |- Triggers the execution of a pipeline synchronously, i.e., the result is sent back to the namespace right after the data is processed. This method is intended for real-time inference when low latency is of concern. The pipeline is identified by its resource name, formed by the parent namespace and ID of the pipeline. For more information, see [Run Pipeline](https://instill-ai.dev/docs/pipeline/run-pipeline). operationId: PipelinePublicService_TriggerPipeline responses: "200": description: A successful response. schema: $ref: '#/definitions/TriggerPipelineResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the pipeline to trigger. Format: namespaces/{namespace}/pipelines/{pipeline} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/TriggerPipelineBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Pipeline x-stage: beta /v1beta/{name}/trigger-stream: post: summary: Trigger a pipeline via streaming description: |- Triggers the execution of a pipeline asynchronously and streams back the response. This method is intended for real-time inference when low latency is of concern and the response needs to be processed incrementally. The pipeline is identified by its resource name, formed by the parent namespace and ID of the pipeline. operationId: PipelinePublicService_TriggerPipelineWithStream responses: "200": description: A successful response.(streaming responses) schema: type: object properties: result: $ref: '#/definitions/TriggerPipelineWithStreamResponse' error: $ref: '#/definitions/rpc.Status' title: Stream result of TriggerPipelineWithStreamResponse "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the pipeline to trigger. Format: namespaces/{namespace}/pipelines/{pipeline} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/TriggerPipelineWithStreamBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Pipeline x-stage: beta /v1beta/{name}/trigger-async: post: summary: Trigger a pipeline asynchronously description: |- Triggers the execution of a pipeline asynchronously, i.e., the result contains the necessary information to access the result and status of the operation. This method is intended for cases that require long-running workloads. The pipeline is identified by its resource name, formed by the parent namespace and ID of the pipeline. For more information, see [Run Pipeline](https://instill-ai.dev/docs/pipeline/run-pipeline). operationId: PipelinePublicService_TriggerAsyncPipeline responses: "200": description: A successful response. schema: $ref: '#/definitions/TriggerAsyncPipelineResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name description: |- The resource name of the pipeline to trigger. Format: namespaces/{namespace}/pipelines/{pipeline} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/TriggerAsyncPipelineBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Pipeline x-stage: beta /v1beta/{parent}/releases: get: summary: List the releases in a pipeline description: |- Lists the commited versions of a pipeline, identified by its resource name, which is formed by the parent namespace and ID of the pipeline. operationId: PipelinePublicService_ListPipelineReleases responses: "200": description: A successful response. schema: $ref: '#/definitions/ListPipelineReleasesResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name (pipeline). Format: `namespaces/{namespace}/pipelines/{pipeline}` in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: pageSize description: |- The maximum number of releases to return. If this parameter is unspecified, at most 10 pipelines will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string - name: view description: |- View allows clients to specify the desired pipeline view in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. - VIEW_RECIPE: Contains the recipe of the resource. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_RECIPE - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `create_time>timestamp("2000-06-19T23:31:08.657Z")`. in: query required: false type: string - name: showDeleted description: Include soft-deleted pipelines in the result. in: query required: false type: boolean tags: - Pipeline x-stage: beta post: summary: Create a pipeline release description: |- Commits the version of a pipeline, identified by its resource name, which is formed by the parent namespace and ID of the pipeline. The authenticated namespace must be the parent of the pipeline in order to perform this action. operationId: PipelinePublicService_CreatePipelineRelease responses: "200": description: A successful response. schema: $ref: '#/definitions/CreatePipelineReleaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name (pipeline). Format: `namespaces/{namespace}/pipelines/{pipeline}` in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: release description: The release information. in: body required: true schema: $ref: '#/definitions/PipelineRelease' tags: - Pipeline x-stage: beta /v1beta/{name_4}: get: summary: Get a pipeline release description: |- Gets the details of a pipeline release, where the pipeline is identified by its resource name, formed by its parent namespace and ID. operationId: PipelinePublicService_GetPipelineRelease responses: "200": description: A successful response. schema: $ref: '#/definitions/GetPipelineReleaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_4 description: |- The resource name of the release. Format: `namespaces/{namespace}/pipelines/{pipeline}/releases/{release}` in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+/releases/[^/]+ - name: view description: |- View allows clients to specify the desired pipeline view in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. - VIEW_RECIPE: Contains the recipe of the resource. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_RECIPE tags: - Pipeline x-stage: beta delete: summary: Delete a secret description: |- Deletes a secret, accesing it by its resource name, which is defined by the parent namespace and the ID of the secret. operationId: PipelinePublicService_DeleteNamespaceSecret responses: "200": description: A successful response. schema: $ref: '#/definitions/DeleteNamespaceSecretResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_4 description: |- The resource name of the secret to delete. Format: `namespaces/{namespace}/secrets/{secret}` in: path required: true type: string pattern: namespaces/[^/]+/secrets/[^/]+ tags: - Pipeline x-stage: beta /v1beta/{release.name}: patch: summary: Update a pipeline release description: |- Updates the details of a pipeline release, where the pipeline is identified by its resource name, formed by its parent namespace and ID. The authenticated namespace must be the parent of the pipeline in order to perform this action. operationId: PipelinePublicService_UpdatePipelineRelease responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdatePipelineReleaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: release.name description: |- Field 1: The name of the release. - Format: `namespaces/{namespace}/pipelines/{pipeline}/releases/{release}`. in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+/releases/[^/]+ - name: release description: |- The pipeline release resource to update. The release's `name` field identifies the resource. Format: `namespaces/{namespace}/pipelines/{pipeline}/releases/{release}` in: body required: true schema: type: object properties: id: type: string description: |- Field 2: Release resource ID (used in `name` as the last segment). It must be a sematic version vX.Y.Z. displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string description: 'Field 4: URL-friendly slug (alias for the release).' readOnly: true aliases: type: array items: type: string description: 'Field 5: Previous slugs for backward compatibility.' readOnly: true description: type: string description: 'Field 6: Release description.' recipe: type: object description: Recipe of the versioned pipeline. readOnly: true createTime: type: string format: date-time description: Pipeline creation time. readOnly: true updateTime: type: string format: date-time description: Pipeline update time. readOnly: true deleteTime: type: string format: date-time description: Pipeline deletion time. readOnly: true metadata: type: object description: |- Key-value object with console-related data such as the pipeline builder layout. readme: type: string description: README. dataSpecification: description: Data specifications. readOnly: true allOf: - $ref: '#/definitions/DataSpecification' rawRecipe: type: string description: |- Recipe in YAML format describes the components of a pipeline and how they are connected. endpoints: description: Pipeline endpoints. readOnly: true allOf: - $ref: '#/definitions/Endpoints' title: |- The pipeline release resource to update. The release's `name` field identifies the resource. Format: `namespaces/{namespace}/pipelines/{pipeline}/releases/{release}` tags: - Pipeline x-stage: beta /v1beta/{name_1}/clone: post: summary: Clone a pipeline release description: |- Clones a pipeline release owned by a namespace. The new pipeline may have a different parent, and this can be either a namespace or an organization. operationId: PipelinePublicService_ClonePipelineRelease responses: "200": description: A successful response. schema: $ref: '#/definitions/ClonePipelineReleaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the pipeline release to clone. Format: namespaces/{namespace}/pipelines/{pipeline}/releases/{release} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+/releases/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/ClonePipelineReleaseBody' tags: - Pipeline x-stage: beta /v1beta/{name_1}/trigger: post: summary: Trigger a pipeline release description: |- Triggers the synchronous execution of of a pipeline. While the trigger endpoint (where the release version isn't specified) triggers the pipeline at its latest release, this method allows the client to specified any committed release. The pipeline is identified by its resource name, formed by its parent namespace and ID. operationId: PipelinePublicService_TriggerPipelineRelease responses: "200": description: A successful response. schema: $ref: '#/definitions/TriggerPipelineReleaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the pipeline release to trigger. Format: namespaces/{namespace}/pipelines/{pipeline}/releases/{release} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+/releases/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/TriggerPipelineReleaseBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Pipeline x-stage: beta /v1beta/{name_1}/trigger-async: post: summary: Trigger a pipeline release asynchronously description: |- Triggers the asynchronous execution of of a pipeline. While the trigger endpoint (where the release version isn't specified) triggers the pipeline at its latest release, this method allows the client to specified any committed release. The pipeline is identified by its resource name, formed by its parent namespace and ID. operationId: PipelinePublicService_TriggerAsyncPipelineRelease responses: "200": description: A successful response. schema: $ref: '#/definitions/TriggerAsyncPipelineReleaseResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the pipeline release to trigger. Format: namespaces/{namespace}/pipelines/{pipeline}/releases/{release} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+/releases/[^/]+ - name: body in: body required: true schema: $ref: '#/definitions/TriggerAsyncPipelineReleaseBody' - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Pipeline x-stage: beta /v1beta/{parent}/secrets: get: summary: List secrets description: |- Returns a paginated list of secrets that belong to the specified namespace. operationId: PipelinePublicService_ListNamespaceSecrets responses: "200": description: A successful response. schema: $ref: '#/definitions/ListNamespaceSecretsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: pageSize description: |- The maximum number of secrets to return. If this parameter is unspecified, at most 10 pipelines will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: pageToken description: Page token. in: query required: false type: string tags: - Pipeline x-stage: beta post: summary: Create a secret description: Creates a new secret under the parenthood of an namespace. operationId: PipelinePublicService_CreateNamespaceSecret responses: "200": description: A successful response. schema: $ref: '#/definitions/CreateNamespaceSecretResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: secret description: The properties of the secret to be created. in: body required: true schema: $ref: '#/definitions/Secret' tags: - Pipeline x-stage: beta /v1beta/{name_5}: get: summary: Get a secret description: |- Returns the details of an namespace-owned secret by its resource name, which is defined by the parent namespace and the ID of the secret. operationId: PipelinePublicService_GetNamespaceSecret responses: "200": description: A successful response. schema: $ref: '#/definitions/GetNamespaceSecretResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_5 description: |- The resource name of the secret. Format: `namespaces/{namespace}/secrets/{secret}` in: path required: true type: string pattern: namespaces/[^/]+/secrets/[^/]+ tags: - Pipeline x-stage: beta delete: summary: Delete a connection description: Deletes a connection. operationId: PipelinePublicService_DeleteConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/DeleteConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_5 description: |- The resource name of the connection to delete. Format: `namespaces/{namespace}/connections/{connection}` in: path required: true type: string pattern: namespaces/[^/]+/connections/[^/]+ tags: - Connection x-stage: beta /v1beta/{secret.name}: patch: summary: Update a secret description: |- Udpates a secret, accessing it by its resource name, which is defined by In REST requests, only the supplied secret fields will be taken into account when updating the resource. operationId: PipelinePublicService_UpdateNamespaceSecret responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdateNamespaceSecretResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: secret.name description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/secrets/{secret}`. in: path required: true type: string pattern: namespaces/[^/]+/secrets/[^/]+ - name: secret description: |- The secret resource to update. The secret's `name` field identifies the resource. Format: `namespaces/{namespace}/secrets/{secret}` in: body required: true schema: type: object properties: id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "sec-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "openai-api-key" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true value: type: string description: 'Field 9: The value of the secret, which is input-only and will never be returned in API responses.' title: |- The secret resource to update. The secret's `name` field identifies the resource. Format: `namespaces/{namespace}/secrets/{secret}` required: - displayName tags: - Pipeline x-stage: beta /v1beta/component-definitions: get: summary: List component definitions description: |- Returns a paginated list of component definitions, regardless their type. This offers a single source of truth, with pagination and filter capabilities, for the components that might be used in a pipeline. operationId: PipelinePublicService_ListComponentDefinitions responses: "200": description: A successful response. schema: $ref: '#/definitions/ListComponentDefinitionsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: pageSize description: |- The maximum number of component definitions to return. If this parameter is unspecified, at most 10 definitions will be returned. The cap value for this parameter is 100 (i.e. any value above that will be coerced to 100). in: query required: false type: integer format: int32 - name: view description: |- View allows clients to specify the desired resource view in the response. - VIEW_BASIC: Default view, only includes basic information (removes the `spec` field). - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `component_type="COMPONENT_TYPE_AI"`. - Example: `tasks:"TASK_TEXT_GENERATION"`. in: query required: false type: string - name: page description: Page number. in: query required: false type: integer format: int32 tags: - Pipeline x-stage: beta /v1beta/operations/{operationId}: get: summary: Get the details of a long-running operation description: |- This method allows requesters to request the status and outcome of long-running operations such as asynchronous pipeline triggers. operationId: PipelinePublicService_GetOperation responses: "200": description: A successful response. schema: $ref: '#/definitions/v1beta.GetOperationResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: operationId description: |- The name of the operation resource. Asynchronous methods will contain this information in their response. in: path required: true type: string - name: Instill-Requester-Uid description: Indicates the authenticated user is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Pipeline x-stage: beta /v1beta/{parent}/runs: get: summary: List Pipeline Runs description: |- Returns a paginated list of runs for a given pipeline. When the requester is the owner of the pipeline, they will be able to all the pipeline runs, regardless who requested the trigger (the view will be partial to hide sensitive data like e.g. the trigger input and output). Other requesters will only be able to see the runs requested by themselves. operationId: PipelinePublicService_ListPipelineRuns responses: "200": description: A successful response. schema: $ref: '#/definitions/ListPipelineRunsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent pipeline resource name. Format: namespaces/{namespace}/pipelines/{pipeline} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+ - name: page description: The page number to retrieve. in: query required: false type: integer format: int32 - name: pageSize description: |- The maximum number of items per page to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `create_time>timestamp("2000-06-19T23:31:08.657Z")`. in: query required: false type: string - name: orderBy description: |- Order by field, with options for ordering by `id`, `create_time` or `update_time`. Format: `order_by=id` or `order_by=create_time desc`, default is `asc`. in: query required: false type: string - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Pipeline x-stage: beta /v1beta/{parent}/component-runs: get: summary: List Component Runs description: Returns the information of each component execution within a pipeline run. operationId: PipelinePublicService_ListComponentRuns responses: "200": description: A successful response. schema: $ref: '#/definitions/ListComponentRunsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent description: |- The parent pipeline run resource name. Format: namespaces/{namespace}/pipelines/{pipeline}/runs/{run} in: path required: true type: string pattern: namespaces/[^/]+/pipelines/[^/]+/runs/[^/]+ - name: page description: The page number to retrieve. in: query required: false type: integer format: int32 - name: pageSize description: |- The maximum number of items per page to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. - Example: `create_time>timestamp("2000-06-19T23:31:08.657Z")`. in: query required: false type: string - name: orderBy description: |- Order by field, with options for ordering by `id`, `create_time` or `update_time`. Format: `order_by=id` or `order_by=create_time desc`, default is `asc`. in: query required: false type: string - name: view description: |- View allows clients to specify the desired run view in the response. The basic view excludes input / output data. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. - VIEW_RECIPE: Contains the recipe of the resource. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_RECIPE - name: Instill-Requester-Uid description: Indicates the authenticated namespace is making the request on behalf of another entity, typically an organization they belong to in: header required: false type: string tags: - Pipeline x-stage: beta /v1beta/dashboard/pipelines/runs: get: summary: List Pipeline Runs By Requester description: |- Returns a paginated list of runs for requested by a namespace. The response may contain runs from several pipelines. operationId: PipelinePublicService_ListPipelineRunsByRequester responses: "200": description: A successful response. schema: $ref: '#/definitions/ListPipelineRunsByRequesterResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: requester description: |- Requester namespace resource name. Format: namespaces/{namespace} in: query required: true type: string - name: page description: The page number to retrieve. in: query required: false type: integer format: int32 - name: pageSize description: |- The maximum number of items per page to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. The following filters are supported: - `status` - `source` **Example**: `status="RUN_STATUS_COMPLETED"`. in: query required: false type: string - name: orderBy description: |- Order by field, with options for ordering by `id`, `create_time` or `update_time`. Format: `order_by=id` or `order_by=create_time desc`, default is `asc`. in: query required: false type: string - name: start description: |- Beginning of the time range from which the records will be fetched. The default value is the beginning of the current day, in UTC. in: query required: false type: string format: date-time - name: stop description: |- End of the time range from which the records will be fetched. The default value is the current timestamp. in: query required: false type: string format: date-time tags: - Pipeline x-stage: beta /v1beta/integrations/{integrationId_1}: get: summary: Get an integration description: Returns the details of an integration. operationId: PipelinePublicService_GetIntegration responses: "200": description: A successful response. schema: $ref: '#/definitions/pipeline.v1beta.GetIntegrationResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: integrationId_1 description: Integration ID. in: path required: true type: string - name: view description: |- View allows clients to specify the desired view in the response. - VIEW_BASIC: Default view. - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Integration x-stage: beta /v1beta/{parent_1}/connections: get: summary: List connections description: Returns a paginated list of connections created by a namespace. operationId: PipelinePublicService_ListConnections responses: "200": description: A successful response. schema: $ref: '#/definitions/ListConnectionsResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent_1 description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: pageSize description: |- The maximum number of items to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: pageToken description: Page token. By default, the first page will be returned. in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. The following filters are supported: - `integrationId` - `qConnection` (fuzzy search on connection ID, integration title or vendor) **Examples**: - List connections where app name, vendor or connection ID match `googl`: `q="googl"`. - List connections where the component type is `openai` (e.g. to setup a connector within a pipeline): `integrationId="openai"`. in: query required: false type: string tags: - Connection x-stage: beta post: summary: Create a connection description: Creates a connection under the ownership of a namespace. operationId: PipelinePublicService_CreateConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/CreateConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: parent_1 description: |- The parent resource name. Format: `namespaces/{namespace}` in: path required: true type: string pattern: namespaces/[^/]+ - name: connection description: Properties of the connection to be created. in: body required: true schema: $ref: '#/definitions/pipeline.v1beta.Connection' tags: - Connection x-stage: beta /v1beta/{name_6}: get: summary: Get a connection description: Returns the details of a connection. operationId: PipelinePublicService_GetConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/GetConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_6 description: |- The resource name of the connection. Format: `namespaces/{namespace}/connections/{connection}` in: path required: true type: string pattern: namespaces/[^/]+/connections/[^/]+ - name: view description: |- View allows clients to specify the desired view in the response. - VIEW_BASIC: Default view. - VIEW_FULL: Full representation. in: query required: false type: string enum: - VIEW_BASIC - VIEW_FULL tags: - Connection x-stage: beta /v1beta/{connection.name_1}: patch: summary: Update a connection description: Updates a connection with the supplied connection fields. operationId: PipelinePublicService_UpdateConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/UpdateConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: connection.name_1 description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/connections/{connection}`. in: path required: true type: string pattern: namespaces/[^/]+/connections/[^/]+ - name: connection description: |- Connection object with the new properties to be updated. The connection's `name` field identifies the resource. Format: `namespaces/{namespace}/connections/{connection}` Immutable and output-only fields will be ignored. The Setup property must be updated in block (no partial update is supported). in: body required: true schema: type: object properties: id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "con-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "my-google-drive" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true namespaceId: type: string description: 'Field 9: ID of the namespace owning the connection.' readOnly: true integrationId: type: string description: |- Field 10: Integration ID. It determines for which type of components can reference this connection. integrationTitle: type: string description: |- Field 11: Integration title. This helps the console display the results grouped by integration ID without needing an extra call to fetch title by integration ID. readOnly: true method: description: |- Field 12: Connection method. It references the setup schema provided by the integration. allOf: - $ref: '#/definitions/pipeline.v1beta.Connection.Method' setup: type: object description: |- Field 13: Connection details. This field is required on creation, optional on view. When viewing the connection details, the setup values will be redacted. view: title: |- Field 14: View defines how the connection is presented. The following fields are only shown in the FULL view: - setup - scopes - oAuthAccessDetails readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.View' scopes: type: array items: type: string description: |- Field 15: A list of scopes that identify the resources that the connection will be able to access on the user's behalf. This is typically passed on creation when the setup has been generated through an OAuth flow with a limited set of scopes. oAuthAccessDetails: type: object description: |- Field 16: When the connection method is METHOD_OAUTH, the access token might come with some extra information that might vary across vendors. This information is passed as connection metadata. identity: type: string description: |- Field 17: When the connection method is METHOD_OAUTH, this field will hold the identity (e.g., email, username) with which the access token has been generated. title: |- Connection object with the new properties to be updated. The connection's `name` field identifies the resource. Format: `namespaces/{namespace}/connections/{connection}` Immutable and output-only fields will be ignored. The Setup property must be updated in block (no partial update is supported). required: - displayName - integrationId - method - setup tags: - Connection x-stage: beta /v1beta/{name_1}/test: post: summary: Test a connection description: |- Makes a request to the 3rd party app that the connection is configured to communicate with, and checks the result of the call. If the test fails, the response status and error message will provide more information about the failure. Note that this action might affect the quota or billing of the integrated account in the 3rd party app. operationId: PipelinePublicService_TestConnection responses: "200": description: A successful response. schema: $ref: '#/definitions/TestConnectionResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: name_1 description: |- The resource name of the connection to test. Format: `namespaces/{namespace}/connections/{connection}` in: path required: true type: string pattern: namespaces/[^/]+/connections/[^/]+ tags: - Connection x-stage: beta /v1beta/namespaces/{namespaceId_1}/connections/{connectionId}/referenced-pipelines: get: summary: List pipelines that reference a connection description: |- Returns a paginated list with the IDs of the pipelines that reference a given connection. All the pipelines will belong to the same namespace as the connection. operationId: PipelinePublicService_ListPipelineIDsByConnectionID responses: "200": description: A successful response. schema: $ref: '#/definitions/pipeline.v1beta.ListPipelineIDsByConnectionIDResponse' "401": description: Returned when the client credentials are not valid. schema: {} default: description: An unexpected error response. schema: $ref: '#/definitions/rpc.Status' parameters: - name: namespaceId_1 description: Namespace ID. in: path required: true type: string - name: connectionId description: Connection ID. in: path required: true type: string - name: pageSize description: |- The maximum number of items to return. The default and cap values are 10 and 100, respectively. in: query required: false type: integer format: int32 - name: pageToken description: Page token. By default, the first page will be returned. in: query required: false type: string - name: filter description: |- Filter can hold an [AIP-160](https://google.aip.dev/160)-compliant filter expression. The following filters are supported: - `q` (fuzzy search on pipeline ID) in: query required: false type: string tags: - Connection x-stage: beta definitions: Any: type: object properties: '@type': type: string description: |- A URL/resource name that uniquely identifies the type of the serialized protocol buffer message. This string must contain at least one "/" character. The last segment of the URL's path must represent the fully qualified name of the type (as in `path/google.protobuf.Duration`). The name should be in a canonical form (e.g., leading "." is not accepted). In practice, teams usually precompile into the binary all types that they expect it to use in the context of Any. However, for URLs which use the scheme `http`, `https`, or no scheme, one can optionally set up a type server that maps type URLs to message definitions as follows: * If no scheme is provided, `https` is assumed. * An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error. * Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.) Note: this functionality is not currently available in the official protobuf release, and it is not used for type URLs beginning with type.googleapis.com. As of May 2023, there are no widely used type server implementations and no plans to implement one. Schemes other than `http`, `https` (or the empty scheme) might be used with implementation specific semantics. additionalProperties: {} description: |- `Any` contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message. Protobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type. Example 1: Pack and unpack a message in C++. Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... } Example 2: Pack and unpack a message in Java. Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); } // or ... if (any.isSameTypeAs(Foo.getDefaultInstance())) { foo = any.unpack(Foo.getDefaultInstance()); } Example 3: Pack and unpack a message in Python. foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ... Example 4: Pack and unpack a message in Go foo := &pb.Foo{...} any, err := anypb.New(foo) if err != nil { ... } ... foo := &pb.Foo{} if err := any.UnmarshalTo(foo); err != nil { ... } The pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example "foo.bar.com/x/y.z" will yield type name "y.z". JSON ==== The JSON representation of an `Any` value uses the regular representation of the deserialized, embedded message, with an additional field `@type` which contains the type URL. Example: package google.profile; message Person { string first_name = 1; string last_name = 2; } { "@type": "type.googleapis.com/google.profile.Person", "firstName": , "lastName": } If the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field `value` which holds the custom JSON in addition to the `@type` field. Example (for message [google.protobuf.Duration][]): { "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" } ApiToken: type: object properties: name: type: string title: |- The resource name of the token. Format: users/{user}/tokens/{token} readOnly: true id: type: string description: |- API token resource ID (used in `name` as the last segment). This conforms to RFC-1034, which restricts to letters, numbers, and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. This field can reflect the client(s) that will use the token. createTime: type: string format: date-time description: Creation time. readOnly: true updateTime: type: string format: date-time description: Update time. readOnly: true accessToken: type: string description: |- An opaque access token representing the API token string. To validate the token, the recipient of the token needs to call the server that issued the token. readOnly: true state: description: State. readOnly: true allOf: - $ref: '#/definitions/ApiToken.State' tokenType: type: string description: Token type. Value is fixed to "Bearer". readOnly: true lastUseTime: type: string format: date-time description: |- When users trigger a pipeline which uses an API token, the token is updated with the current time. This field is used to track the last time the token was used. readOnly: true ttl: type: integer format: int32 description: The time-to-live in seconds for this resource. expireTime: type: string format: date-time description: Expiration time. description: API tokens allow users to make requests to the Instill AI API. ApiToken.State: type: string enum: - STATE_INACTIVE - STATE_ACTIVE - STATE_EXPIRED description: |- State describes the state of an API token. - STATE_INACTIVE: Inactive. - STATE_ACTIVE: Active. - STATE_EXPIRED: Expired. AuthenticatedUser: type: object properties: name: type: string description: |- Field 1: Canonical resource name. Format: `users/{user}`. readOnly: true id: type: string title: |- Field 2: Resource ID (used in `name` as the last segment). This conforms to RFC-1034, which restricts to letters, numbers, and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. Auto-generated by backend: "usr-" prefix + immutable hash (80 bits entropy, base62). Example: "usr-8f3A2k9E7c1xYz" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' readOnly: true slug: type: string description: 'Field 4: URL-friendly slug (NO prefix).' readOnly: true aliases: type: array items: type: string description: 'Field 5: Previous slugs for backward compatibility.' readOnly: true description: type: string description: 'Field 6: Optional description / bio.' readOnly: true createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Update time.' readOnly: true email: type: string description: Email. role: type: string description: |- Role. It must be one of the following allowed roles: - `manager` - `ai-researcher` - `ai-engineer` - `data-engineer` - `data-scientist` - `analytics-engineer` - `hobbyist` newsletterSubscription: type: boolean description: This defines whether the user is subscribed to Instill AI's newsletter. cookieToken: type: string description: Console cookie token. onboardingStatus: description: Onboarding Status. allOf: - $ref: '#/definitions/OnboardingStatus' profile: description: Profile. readOnly: true allOf: - $ref: '#/definitions/UserProfile' isEligibleForOrganizationTrial: type: boolean description: Is eligible for organization trial. readOnly: true description: |- AuthenticatedUser contains the information of an authenticated user, i.e., the public user information plus some fields that should only be accessed by the user themselves. AIP Standard Field Ordering: - name (field 1): Canonical resource name - id (field 2): Immutable canonical resource ID - display_name (field 3): Human-readable display name - slug (field 4): URL-friendly slug - aliases (field 5): Previous slugs for backward compatibility - description (field 6): Optional description - create_time (field 7): Creation timestamp - update_time (field 8): Update timestamp required: - email - newsletterSubscription CheckNamespaceRequest: type: object properties: id: type: string description: The namespace ID to be checked. description: |- CheckNamespaceRequest represents a request to verify if a namespace is available. required: - id CheckNamespaceResponse: type: object properties: type: description: Namespace type. allOf: - $ref: '#/definitions/CheckNamespaceResponse.Namespace' description: |- CheckNamespaceResponse contains the availability of a namespace or the type of resource that's using it. CheckNamespaceResponse.Namespace: type: string enum: - NAMESPACE_AVAILABLE - NAMESPACE_USER - NAMESPACE_ORGANIZATION - NAMESPACE_RESERVED description: |- Namespace contains information about the availability of a namespace. - NAMESPACE_AVAILABLE: Available. - NAMESPACE_USER: Namespace belongs to a user. - NAMESPACE_ORGANIZATION: Namespace belongs to an organization. - NAMESPACE_RESERVED: Reserved. Chunk: type: object properties: name: type: string description: |- Field 1: The resource name of the chunk. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}/chunks/{chunk}`. readOnly: true id: type: string description: 'Field 2: The chunk id (unique identifier).' readOnly: true retrievable: type: boolean title: whether the chunk is retrievable readOnly: true tokens: type: integer format: int64 title: tokens of the chunk readOnly: true createTime: type: string format: date-time title: creation time of the chunk readOnly: true originalFile: type: string title: |- The resource name of the original file this chunk belongs to. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}` readOnly: true type: title: chunk type readOnly: true allOf: - $ref: '#/definitions/Chunk.Type' reference: description: Reference to the position of the chunk within the original file. readOnly: true allOf: - $ref: '#/definitions/Reference' markdownReference: description: Reference to the position of the chunk within the Markdown (source) file. readOnly: true allOf: - $ref: '#/definitions/Reference' description: The Chunk message represents a chunk of data in the artifact system. Chunk.Type: type: string enum: - TYPE_CONTENT - TYPE_SUMMARY - TYPE_AUGMENTED description: |- Type describes the type of a chunk content. - TYPE_CONTENT: Content. - TYPE_SUMMARY: Summary. - TYPE_AUGMENTED: Augmented. ClonePipelineBody: type: object properties: target: type: string title: |- The resource name of the target pipeline. Format: namespaces/{namespace}/pipelines/{pipeline} description: type: string description: Pipeline description. sharing: description: Pipeline sharing information. allOf: - $ref: '#/definitions/Sharing' description: |- ClonePipelineRequest represents a request to clone a pipeline owned by a user. required: - target ClonePipelineReleaseBody: type: object properties: description: type: string description: Pipeline description. sharing: description: Pipeline sharing information. allOf: - $ref: '#/definitions/Sharing' target: type: string title: |- The target pipeline resource name. Format: namespaces/{namespace}/pipelines/{pipeline} description: |- ClonePipelineReleaseRequest represents a request to clone a pipeline release owned by a user. required: - target ClonePipelineReleaseResponse: type: object description: ClonePipelineReleaseResponse contains a cloned pipeline. ClonePipelineResponse: type: object description: ClonePipelineResponse contains a cloned pipeline. ComponentDefinition: type: object properties: name: type: string title: |- The name of the component definition, defined by its ID. - Format: `component-definitions/{id}` readOnly: true uid: type: string description: Component definition UUID. readOnly: true id: type: string description: |- Component definition resource ID (used in `name` as the last segment). This conforms to RFC-1034, which restricts to letters, numbers, and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. title: type: string description: Component definition title. readOnly: true documentationUrl: type: string description: Component definition documentation URL. readOnly: true icon: type: string description: |- Component definition icon. This is a path that's relative to the root of the component implementation (see `source_url`) and that allows frontend applications to pull and locate the icons. readOnly: true spec: description: Component definition specification. readOnly: true allOf: - $ref: '#/definitions/Spec' type: description: Component definition type. readOnly: true allOf: - $ref: '#/definitions/ComponentType' tombstone: type: boolean description: |- Component definition tombstone. If true, this configuration is permanently off. Otherwise, the configuration is active. readOnly: true public: type: boolean description: |- The public flag determines whether this connector definition is available to all workspaces. readOnly: true custom: type: boolean description: |- Component definition custom flag, i.e., whether this is a custom component definition. readOnly: true vendor: type: string description: Component definition vendor name. readOnly: true vendorAttributes: type: object description: Vendor-specific attributes. readOnly: true sourceUrl: type: string description: |- Source code URL. This points to the source code where the component is implemented. readOnly: true version: type: string description: |- Component definition version. This is a string that fulfills the SemVer specification (e.g. `1.0.0-beta`). readOnly: true tasks: type: array items: type: object $ref: '#/definitions/ComponentTask' description: List of tasks that can be executed by the component. readOnly: true description: type: string description: Short description of the component. readOnly: true releaseStage: description: Release stage. readOnly: true allOf: - $ref: '#/definitions/ComponentDefinition.ReleaseStage' events: type: array items: type: object $ref: '#/definitions/ComponentEvent' description: List of events that can be produced by the component. readOnly: true description: ComponentDefinition describes a certain type of Component. ComponentDefinition.ReleaseStage: type: string enum: - RELEASE_STAGE_OPEN_FOR_CONTRIBUTION - RELEASE_STAGE_COMING_SOON - RELEASE_STAGE_ALPHA - RELEASE_STAGE_BETA - RELEASE_STAGE_GA description: |- - RELEASE_STAGE_OPEN_FOR_CONTRIBUTION: This component is unimplemented and community contributions are welcome for this component. It is recommended that the major and minor versions for definitions at this release stage is kept at 0, e.g., `0.0.1`, `0.0.4`, etc. - RELEASE_STAGE_COMING_SOON: The implementation of this component is planned and will be tackled by the Instill AI team. It is recommended that the major and minor versions for definitions at this release stage is kept at 0, e.g., `0.0.1`, `0.0.4`, etc. - RELEASE_STAGE_ALPHA: Initial implementation intended to gather feedback and issues from early adopters. Alpha releases are discouraged for production use cases. The `version` field in the definition must have `alpha` as its first pre-release identifier, e.g., `0.1.0-alpha`, `0.1.3-alpha.1`. - RELEASE_STAGE_BETA: The component has reached stability and no backwards incompatible changes are expected. Before reaching general availability, it should be validated by a broader group of users. Some fixes might be added during this process. The `version` field in the definition must have `beta` as its first pre-release identifier, e.g., `0.1.0-beta`, `0.1.3-beta.1`. - RELEASE_STAGE_GA: Generally available - ready for use in production and fully supported by Instill AI. title: |- ReleaseStage defines the release stage of a component. This is used to group components with the same pre-relase groups (e.g. `0.1.0-beta`, `0.1.0-beta.1` -> `RELEASE_STAGE_BETA`) and to include other "in progress" (i.e. coming soon, open for contributions) stages that may not be relevant within semantic versioning. See the documentation of each value for potential constraints between `version` and `release_stage` fields.` ComponentDefinition.View: type: string enum: - VIEW_BASIC - VIEW_FULL description: |- View defines how a component definition is presented. - VIEW_BASIC: Default view, only includes basic information (removes the `spec` field). - VIEW_FULL: Full representation. ComponentEvent: type: object properties: name: type: string description: The event name, e.g. `EVENT_NEW`. readOnly: true title: type: string description: Title is the event name in a human-friendly format. readOnly: true description: type: string description: Description contains information about the event. readOnly: true description: |- ComponentEvent contains information about an event that a component can produce. ComponentRun: type: object properties: name: type: string title: |- The resource name of the component run. Format: namespaces/{namespace}/pipelines/{pipeline}/runs/{run}/components/{component} readOnly: true id: type: string description: Unique identifier for the component within the pipeline. readOnly: true createTime: type: string format: date-time description: Time when the component run was created. readOnly: true updateTime: type: string format: date-time description: Time when the component run was last updated. readOnly: true pipelineRun: type: string title: |- Parent pipeline run resource name. Full resource name: namespaces/{namespace}/pipelines/{pipeline}/runs/{run} readOnly: true status: description: Completion status of the component. readOnly: true allOf: - $ref: '#/definitions/RunStatus' totalDuration: type: integer format: int32 description: Time taken to execute the component in milliseconds. readOnly: true startTime: type: string format: date-time description: Time when the component started execution. readOnly: true completeTime: type: string format: date-time description: Time when the component finished execution. readOnly: true error: type: string description: Error message if the component failed. readOnly: true inputsReference: type: array items: type: object $ref: '#/definitions/FileReference' description: Input files for the run. readOnly: true inputs: type: array items: type: object description: Component input parameters. readOnly: true outputsReference: type: array items: type: object $ref: '#/definitions/FileReference' description: Output files from the run. readOnly: true outputs: type: array items: type: object description: Component inference outputs. readOnly: true creditAmount: type: number format: float description: Credits used of internal accounting metric. readOnly: true blobDataExpirationTime: type: string format: date-time description: Expiration time for the blob data associated with the component run. readOnly: true description: |- ComponentRun represents the execution details of a single component within a pipeline run. ComponentTask: type: object properties: name: type: string description: The task name, e.g. `TASK_TEXT_GENERATION`. readOnly: true title: type: string description: Title is the task name in a human-friendly format. readOnly: true description: type: string description: Description contains information about the task. readOnly: true description: |- ComponentTask contains information about a task that a component can perform. ComponentType: type: string enum: - COMPONENT_TYPE_AI - COMPONENT_TYPE_DATA - COMPONENT_TYPE_OPERATOR - COMPONENT_TYPE_APPLICATION - COMPONENT_TYPE_GENERIC description: |- ComponentType defines the component type based on its task features. - COMPONENT_TYPE_AI: Connect with an AI model. - COMPONENT_TYPE_DATA: Connect with a remote data source. - COMPONENT_TYPE_OPERATOR: Manipulate data. - COMPONENT_TYPE_APPLICATION: Connect with an external application. - COMPONENT_TYPE_GENERIC: Generic. CreateConnectionResponse: type: object properties: connection: description: The created connection. readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.Connection' description: CreateConnectionResponse contains the created connection. CreateFileResponse: type: object properties: file: title: file readOnly: true allOf: - $ref: '#/definitions/File' description: CreateFileResponse represents a response for creating a file. CreateKnowledgeBaseResponse: type: object properties: knowledgeBase: description: The created knowledge base resource. readOnly: true allOf: - $ref: '#/definitions/KnowledgeBase' description: |- CreateKnowledgeBaseResponse represents a response for creating a knowledge base. CreateModelResponse: type: object properties: model: description: The created model resource. readOnly: true allOf: - $ref: '#/definitions/Model' description: CreateModelResponse contains the created model. CreateNamespaceConnectionResponse: type: object properties: connection: description: The created connection. readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.Connection' description: CreateNamespaceConnectionResponse contains the created connection. CreateNamespaceSecretResponse: type: object properties: secret: description: The created secret resource. readOnly: true allOf: - $ref: '#/definitions/Secret' description: CreateNamespaceSecretResponse contains the created secret. CreatePipelineReleaseResponse: type: object properties: release: description: The created pipeline release object. readOnly: true allOf: - $ref: '#/definitions/PipelineRelease' description: CreatePipelineReleaseResponse contains the created release. CreatePipelineResponse: type: object properties: pipeline: description: The created pipeline resource. readOnly: true allOf: - $ref: '#/definitions/Pipeline' description: CreatePipelineResponse contains the created pipeline. CreateTokenResponse: type: object properties: token: description: The created API token resource. readOnly: true allOf: - $ref: '#/definitions/ApiToken' description: CreateTokenResponse contains the created token. DataSpecification: type: object properties: input: type: object description: JSON schema describing the component input data. readOnly: true output: type: object description: JSON schema describing the component output data. readOnly: true description: |- DataSpecification describes the JSON schema of component input and output. Note: This message will be renamed to TaskSpecifications in the future. DeleteConnectionResponse: type: object description: DeleteConnectionResponse is an empty response. DeleteFileResponse: type: object properties: name: type: string title: |- The resource name of the deleted file. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}` readOnly: true description: DeleteFileResponse represents a response for deleting a file. DeleteKnowledgeBaseResponse: type: object properties: knowledgeBase: description: The deleted knowledge base resource. readOnly: true allOf: - $ref: '#/definitions/KnowledgeBase' description: |- DeleteKnowledgeBaseResponse represents a response for deleting a knowledge base. DeleteModelResponse: type: object description: DeleteModelResponse is an empty response. DeleteModelVersionResponse: type: object description: DeleteModelVersionResponse is an empty response. DeleteNamespaceConnectionResponse: type: object description: DeleteNamespaceConnectionResponse is an empty response. DeleteNamespaceSecretResponse: type: object description: DeleteNamespaceSecretResponse is an empty response. DeleteObjectResponse: type: object description: DeleteObjectResponse is an empty response for deleting an object. DeletePipelineReleaseResponse: type: object description: DeletePipelineReleaseResponse is an empty response. DeletePipelineResponse: type: object description: DeletePipelineResponse is an empty response. DeleteTokenResponse: type: object description: DeleteTokenResponse is an empty response. EmbeddingConfig: type: object properties: modelFamily: type: string title: The AI model family used for embeddings (e.g., "gemini", "openai") dimensionality: type: integer format: int64 title: The dimensionality of the embedding vectors title: EmbeddingConfig defines the embedding configuration for a knowledge base Endpoints: type: object properties: webhooks: type: object additionalProperties: $ref: '#/definitions/WebhookEndpoint' description: Webhook endpoints. readOnly: true description: Endpoints describe the endpoints of a pipeline. ErrPipelineValidation: type: object properties: location: type: string title: Location error: type: string title: error description: |- ErrPipelineValidation contains information about a failed pipeline validation. EventSpecification: type: object properties: title: type: string description: Event title. readOnly: true description: type: string description: Event description. readOnly: true configSchema: type: object description: JSON schema describing the component event config data. readOnly: true messageSchema: type: object description: JSON schema describing the component event message data. readOnly: true messageExamples: type: array items: type: object description: JSON schema describing the component event examples. readOnly: true description: EventSpecification describes the JSON schema of component event setup and examples. File: type: object properties: name: type: string description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}`. readOnly: true id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "file-8f3a2k9E7c1" readOnly: true displayName: type: string description: |- Field 3: Human-readable display name (filename) for UI. This is typically the original filename of the uploaded file. slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "my-research-file-pdf" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true type: description: File type. allOf: - $ref: '#/definitions/File.Type' processStatus: description: File process status. readOnly: true allOf: - $ref: '#/definitions/FileProcessStatus' processOutcome: type: string description: File process outcome message. readOnly: true size: type: string format: int64 description: File size in bytes. readOnly: true totalChunks: type: integer format: int32 description: Total number of chunks created from this file. readOnly: true totalTokens: type: integer format: int32 description: Total number of tokens in this file. readOnly: true tags: type: array items: type: string description: Array of tags associated with the file. externalMetadata: type: object description: Custom metadata provided by the user during file upload. knowledgeBases: type: array items: type: string description: |- Knowledge base resource names that this file is associated with. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}` A file can belong to multiple knowledge bases within the same namespace. This field is populated from the file_knowledge_base junction table. Follows AIP-122 for resource name references. readOnly: true ownerName: type: string title: |- Resource name of the owner namespace. Example: "namespaces/usr-7k2m9p4w1n3" or "namespaces/org-3t8f5q2x6b1" readOnly: true creatorName: type: string title: |- Full resource name of the user who created this file. Format: `users/{user}` readOnly: true content: type: string description: |- Base64-encoded file content for inline upload. Alternative to object field for smaller files. downloadUrl: type: string description: Pre-signed download URL for the file. readOnly: true convertingPipeline: type: string description: |- Pipeline used for converting the file to Markdown if the file is a document (i.e., a file with pdf, doc[x] or ppt[x] extension). length: description: Length of the file in the specified unit type. readOnly: true allOf: - $ref: '#/definitions/Position' collections: type: array items: type: string description: |- Collection resource names that this file belongs to. Format: `namespaces/{namespace}/collections/{collection}` This field is system-managed and populated from collection membership. Follows AIP-122 for resource name references. readOnly: true deleteTime: type: string format: date-time description: Soft delete timestamp. readOnly: true object: type: string description: |- Object resource name reference for blob storage upload. Format: `namespaces/{namespace}/objects/{object}` Two upload approaches are supported: 1. Direct upload: Upload file directly to MinIO via GetObjectUploadURL, then provide the object resource name here. This avoids base64 encoding overhead and is preferred for large files. 2. Inline content: Provide base64-encoded file content in the 'content' field. When object is provided, the 'content' field is ignored. Follows AIP-122 for resource name references. isTextBased: type: boolean description: |- Whether the document contains a native text layer (true) or is image-based / scanned (false). Determined during file processing by attempting PDF text extraction. Used for visual grounding: text-based documents get precise text highlighting while image-based documents get bounding-box overlays. Only meaningful for document file types (PDF, DOCX, PPTX, etc.). readOnly: true contentSha256: type: string description: |- SHA256 hash of the file content for content-based deduplication. Computed at ingestion time for both inline content uploads and object reference uploads. readOnly: true ownerDisplayName: type: string description: |- Human-readable display name of the owner namespace. Populated server-side to avoid an extra frontend API call. Example: "Instill AI" (for an org) or "John Doe" (for a user). readOnly: true ownerAvatar: type: string description: |- Avatar URL of the owner namespace. Populated server-side alongside owner_display_name. readOnly: true creatorDisplayName: type: string description: |- Human-readable display name of the user who created this file. Populated server-side to avoid an extra frontend API call. readOnly: true creatorAvatar: type: string description: |- Avatar URL of the user who created this file. Populated server-side alongside creator_display_name. readOnly: true visibility: description: Visibility of the file. allOf: - $ref: '#/definitions/File.Visibility' derivedResourceUri: type: string description: |- Derived resource URI populated on `ListFiles` / `GetFile` responses when the caller requested an explicit `File.View` (SUMMARY, CONTENT, STANDARD_FILE_TYPE, ORIGINAL_FILE_TYPE, CACHE, PATCH). Mirrors the long-standing `GetFileResponse.derived_resource_uri` slot so list-shaped responses can carry per-row URIs without an extra per-file `GetFile` round trip. Empty when no view was requested. Subject to the short-lived MinIO/GCS presign TTL — treat as ephemeral and do not cross-cache. readOnly: true thumbnailUri: type: string description: |- Stable, cache-friendly URL to a small (~1024px WebP) thumbnail of the file, populated whenever a `CONVERTED_FILE_TYPE_THUMBNAIL` row exists for this file. Resolved through the gateway's `/v1alpha/blob-urls/{object_uid}` route so the URL itself is stable across presign rotations and CDN-cacheable. Empty for files whose thumbnail has not yet been generated (backfill workflow covers historical rows; ingest covers new ones). Clients should treat this as the preferred card-tile source and fall back to `derived_resource_uri` / mime-type icon when absent. readOnly: true title: |- File represents a file in a knowledge base. Field ordering follows AIP standard: name(1), id(2), display_name(3), slug(4), aliases(5), description(6) required: - displayName File.Type: type: string enum: - TYPE_TEXT - TYPE_MARKDOWN - TYPE_HTML - TYPE_CSV - TYPE_JSON - TYPE_PDF - TYPE_DOC - TYPE_DOCX - TYPE_PPT - TYPE_PPTX - TYPE_XLS - TYPE_XLSX - TYPE_PNG - TYPE_JPEG - TYPE_GIF - TYPE_WEBP - TYPE_TIFF - TYPE_BMP - TYPE_HEIC - TYPE_HEIF - TYPE_AVIF - TYPE_SVG - TYPE_MP3 - TYPE_WAV - TYPE_AAC - TYPE_OGG - TYPE_FLAC - TYPE_M4A - TYPE_WMA - TYPE_AIFF - TYPE_WEBM_AUDIO - TYPE_MP4 - TYPE_AVI - TYPE_MOV - TYPE_MKV - TYPE_FLV - TYPE_WMV - TYPE_MPEG - TYPE_WEBM_VIDEO description: |- - TYPE_TEXT: Text-based document types text - TYPE_MARKDOWN: MARKDOWN - TYPE_HTML: HTML - TYPE_CSV: CSV - TYPE_JSON: JSON - TYPE_PDF: Container-based document types PDF - TYPE_DOC: DOC - TYPE_DOCX: DOCX - TYPE_PPT: PPT - TYPE_PPTX: PPTX - TYPE_XLS: XLS - TYPE_XLSX: XLSX - TYPE_PNG: Image types PNG - TYPE_JPEG: JPEG - TYPE_GIF: GIF - TYPE_WEBP: WEBP - TYPE_TIFF: TIFF - TYPE_BMP: BMP - TYPE_HEIC: HEIC - TYPE_HEIF: HEIF - TYPE_AVIF: AVIF - TYPE_SVG: SVG - TYPE_MP3: Audio types MP3 - TYPE_WAV: WAV - TYPE_AAC: AAC - TYPE_OGG: OGG - TYPE_FLAC: FLAC - TYPE_M4A: M4A - TYPE_WMA: WMA - TYPE_AIFF: AIFF - TYPE_WEBM_AUDIO: WEBM (audio) - TYPE_MP4: Video types MP4 - TYPE_AVI: AVI - TYPE_MOV: MOV - TYPE_MKV: MKV - TYPE_FLV: FLV - TYPE_WMV: WMV - TYPE_MPEG: MPEG - TYPE_WEBM_VIDEO: WEBM (video) title: Supported file types File.View: type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_SUMMARY - VIEW_CONTENT - VIEW_STANDARD_FILE_TYPE - VIEW_ORIGINAL_FILE_TYPE - VIEW_CACHE - VIEW_PATCH description: |- View defines how a file is presented. - VIEW_BASIC: Default view, only includes basic metadata. - VIEW_FULL: Full representation with all metadata. - VIEW_SUMMARY: Returns MinIO pre-signed URL to converted summary content. - VIEW_CONTENT: Returns MinIO pre-signed URL to converted markdown content. - VIEW_STANDARD_FILE_TYPE: Returns MinIO pre-signed URL to standardized file: - Documents → PDF - Images → PNG - Audio → OGG - Video → MP4 - VIEW_ORIGINAL_FILE_TYPE: Returns MinIO pre-signed URL to the original uploaded file. - VIEW_CACHE: Returns Gemini cache resource name. - VIEW_PATCH: Returns MinIO pre-signed URL to patch.md (user-submitted content patches). File.Visibility: type: string enum: - VISIBILITY_PRIVATE - VISIBILITY_PUBLIC - VISIBILITY_WORKSPACE - VISIBILITY_LINK_SHARED description: |- Visibility defines who can discover and access the file. - VISIBILITY_PRIVATE: Reserved for future: truly private (only creator + invited users). - VISIBILITY_PUBLIC: Discoverable by anyone, including anonymous visitors. - VISIBILITY_WORKSPACE: Org members can access via all-members grant. Default for files. - VISIBILITY_LINK_SHARED: Anyone with the share link (/r/{token}) can access via capability token. FileMediaType: type: string enum: - FILE_MEDIA_TYPE_DOCUMENT - FILE_MEDIA_TYPE_IMAGE - FILE_MEDIA_TYPE_AUDIO - FILE_MEDIA_TYPE_VIDEO description: |- FileMediaType describes the media category of a knowledge base file. - FILE_MEDIA_TYPE_DOCUMENT: Document. - FILE_MEDIA_TYPE_IMAGE: Image. - FILE_MEDIA_TYPE_AUDIO: Audio. - FILE_MEDIA_TYPE_VIDEO: Video. FileProcessStatus: type: string enum: - FILE_PROCESS_STATUS_NOTSTARTED - FILE_PROCESS_STATUS_PROCESSING - FILE_PROCESS_STATUS_CHUNKING - FILE_PROCESS_STATUS_EMBEDDING - FILE_PROCESS_STATUS_COMPLETED - FILE_PROCESS_STATUS_FAILED description: |- - FILE_PROCESS_STATUS_NOTSTARTED: NOTSTARTED - FILE_PROCESS_STATUS_PROCESSING: file is being processed (parallel architecture: conversion + summarization) - FILE_PROCESS_STATUS_CHUNKING: file is chunking - FILE_PROCESS_STATUS_EMBEDDING: file is embedding - FILE_PROCESS_STATUS_COMPLETED: completed - FILE_PROCESS_STATUS_FAILED: failed title: file embedding process status FileReference: type: object properties: name: type: string description: Name of the file. type: type: string description: Format of the file (e.g., PDF, TXT, JPG). size: type: string format: int64 description: Size of the file in bytes. url: type: string description: URL of the file (e.g., S3 URL). description: FileReference represents metadata for a file. required: - name - type - size - url GetAuthenticatedUserResponse: type: object properties: user: description: The authenticated user resource. readOnly: true allOf: - $ref: '#/definitions/AuthenticatedUser' description: GetAuthenticatedUserResponse contains the requested authenticated user. GetChunkResponse: type: object properties: chunk: description: |- The chunk metadata, including markdown_reference for extracting content. Clients should use GetFile to fetch the full content/summary markdown, then use markdown_reference coordinates to extract the specific chunk text. readOnly: true allOf: - $ref: '#/definitions/Chunk' description: GetChunkResponse represents a response for getting a chunk. GetConnectionResponse: type: object properties: connection: description: The requested connection. readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.Connection' description: GetConnectionResponse contains the requested connection. GetFileResponse: type: object properties: file: description: The file metadata (always included). readOnly: true allOf: - $ref: '#/definitions/File' derivedResourceUri: type: string description: |- Derived resource URI based on view and storage provider: - VIEW_SUMMARY/CONTENT/STANDARD_FILE_TYPE/ORIGINAL_FILE_TYPE: * STORAGE_PROVIDER_MINIO (default): MinIO pre-signed URL * STORAGE_PROVIDER_GCS: GCS signed URL (file uploaded to GCS if needed) - VIEW_CACHE: Gemini/VertexAI cache resource name (format: cacheContent/) Only populated for views that return file content. readOnly: true description: GetFileResponse represents a response for getting a file. GetKnowledgeBaseResponse: type: object properties: knowledgeBase: description: The knowledge base resource. readOnly: true allOf: - $ref: '#/definitions/KnowledgeBase' description: GetKnowledgeBaseResponse represents a response for getting a knowledge base. GetModelDefinitionResponse: type: object properties: modelDefinition: description: The model definition resource. readOnly: true allOf: - $ref: '#/definitions/ModelDefinition' description: GetModelDefinitionResponse contains the requested model definition. GetModelOperationResponse: type: object properties: operation: description: The long-running operation. readOnly: true allOf: - $ref: '#/definitions/longrunning.Operation' description: |- GetModelOperationResponse represents a response to query a long-running operation. GetModelResponse: type: object properties: model: description: The model resource. readOnly: true allOf: - $ref: '#/definitions/Model' description: GetModelResponse contains the requested model. GetModelVersionOperationResponse: type: object properties: operation: description: The long-running operation. allOf: - $ref: '#/definitions/longrunning.Operation' description: |- GetModelVersionOperationResponse represents a response to query a long-running operation. GetNamespaceConnectionResponse: type: object properties: connection: description: The requested connection. readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.Connection' description: GetNamespaceConnectionResponse contains the requested connection. GetNamespaceSecretResponse: type: object properties: secret: description: The secret resource. allOf: - $ref: '#/definitions/Secret' description: GetNamespaceSecretResponse contains the requested secret. GetObjectDownloadURLResponse: type: object properties: downloadUrl: type: string title: download url urlExpireAt: type: string format: date-time title: expire at in UTC (UTC+0) object: title: object allOf: - $ref: '#/definitions/Object' title: GetObjectDownloadURLResponse GetObjectResponse: type: object properties: object: description: The requested object. allOf: - $ref: '#/definitions/Object' description: GetObjectResponse contains the requested object. GetObjectUploadURLResponse: type: object properties: uploadUrl: type: string title: upload url urlExpireAt: type: string format: date-time title: expire at in UTC (UTC+0) object: title: object allOf: - $ref: '#/definitions/Object' title: GetObjectUploadURLResponse GetPipelineReleaseResponse: type: object properties: release: description: The pipeline release resource. readOnly: true allOf: - $ref: '#/definitions/PipelineRelease' description: GetPipelineReleaseResponse contains the requested pipeline release. GetPipelineResponse: type: object properties: pipeline: description: The pipeline resource. readOnly: true allOf: - $ref: '#/definitions/Pipeline' description: GetPipelineResponse contains the requested pipeline. GetTokenResponse: type: object properties: token: description: The API token resource. readOnly: true allOf: - $ref: '#/definitions/ApiToken' description: GetTokenResponse contains the requested token. GetUserResponse: type: object properties: user: description: The user resource. readOnly: true allOf: - $ref: '#/definitions/v1beta.User' description: GetUserResponse contains the requested user. Hardware: type: object properties: title: type: string title: Hardware display title value: type: string title: Hardware name value description: Hardware describes the hardware title and string value that backend consumes. KnowledgeBase: type: object properties: name: type: string description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}`. readOnly: true id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "kb-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "my-knowledge-base" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true tags: type: array items: type: string description: The knowledge base tags. type: description: |- The knowledge base type (persistent or ephemeral). Default is PERSISTENT if not specified during creation. allOf: - $ref: '#/definitions/KnowledgeBaseType' system: type: string description: |- The resource name of the system configuration. Format: `systems/{system}` Available systems: "systems/openai", "systems/gemini", or custom systems. If not specified, defaults to the default system. title: |- System ID defines how the knowledge base will be created based on the system's RAG configurations including: - AI model family (e.g., "openai", "gemini") - Embedding vector dimensionality - Chunking method - Other RAG-related settings embeddingConfig: description: The embedding configuration for the knowledge base. allOf: - $ref: '#/definitions/EmbeddingConfig' activeCollection: type: string description: |- The resource name of the active Milvus collection for this knowledge base. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/collections/{collection}` This supports collection versioning for embedding dimension changes. readOnly: true ownerName: type: string title: |- Resource name of the owner namespace. Example: "namespaces/usr-7k2m9p4w1n3" or "namespaces/org-3t8f5q2x6b1" readOnly: true owner: description: Knowledge base owner (User or Organization). readOnly: true allOf: - $ref: '#/definitions/Owner' creatorName: type: string description: |- Full resource name of the user who created this knowledge base. Format: `users/{user}` Optional for system-created knowledge bases (e.g., instill-agent). readOnly: true creator: description: |- The user who created this knowledge base. Populated when creator_name is present. readOnly: true allOf: - $ref: '#/definitions/v1beta.User' totalFiles: type: integer format: int64 description: The total files in knowledge base. readOnly: true totalTokens: type: integer format: int64 description: The total tokens in knowledge base. readOnly: true usedStorage: type: string format: uint64 description: The current used storage in knowledge base. readOnly: true downstreamApps: type: array items: type: string description: The downstream apps. readOnly: true title: |- KnowledgeBase represents a knowledge base. Field ordering follows AIP standard: name(1), id(2), display_name(3), slug(4), aliases(5), description(6) required: - displayName KnowledgeBaseType: type: string enum: - KNOWLEDGE_BASE_TYPE_PERSISTENT - KNOWLEDGE_BASE_TYPE_EPHEMERAL description: |- - KNOWLEDGE_BASE_TYPE_PERSISTENT: PERSISTENT - KNOWLEDGE_BASE_TYPE_EPHEMERAL: EPHEMERAL title: Knowledge Base Type. e.g. "persistent" or "ephemeral" ListAvailableRegionsResponse: type: object properties: regions: type: array items: type: object $ref: '#/definitions/Region' title: A list of available region readOnly: true description: |- ListAvailableRegionsResponse contains a list of available regions and hardware types a model can be deployed on. ListChunksResponse: type: object properties: chunks: type: array items: type: object $ref: '#/definitions/Chunk' title: repeated chunks readOnly: true description: |- ListChunksResponse represents a response containing a list of chunks in the artifact system. ListComponentDefinitionsResponse: type: object properties: componentDefinitions: type: array items: type: object $ref: '#/definitions/ComponentDefinition' description: A list of component definition resources. totalSize: type: integer format: int32 description: Total number of component definitions. pageSize: type: integer format: int32 description: The requested page size. page: type: integer format: int32 description: The requested page offset. description: ListComponentDefinitionsResponse contains a list of component definitions. ListComponentRunsResponse: type: object properties: componentRuns: type: array items: type: object $ref: '#/definitions/ComponentRun' description: The list of component runs. readOnly: true totalSize: type: integer format: int32 description: The total number of component runs matching the request. readOnly: true page: type: integer format: int32 description: The current page number. readOnly: true pageSize: type: integer format: int32 description: The number of items per page. readOnly: true description: ListComponentRunsResponse is the response message for ListComponentRuns. ListConnectionsResponse: type: object properties: connections: type: array items: type: object $ref: '#/definitions/pipeline.v1beta.Connection' description: A list of connections matching the request parameters. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of items. readOnly: true description: ListConnectionsResponse contains a paginated list of connections. ListFilesResponse: type: object properties: files: type: array items: type: object $ref: '#/definitions/File' description: The list of files. readOnly: true totalSize: type: integer format: int32 description: The total number of files. readOnly: true pageSize: type: integer format: int32 description: The requested page size. readOnly: true nextPageToken: type: string title: next page token readOnly: true description: ListFilesResponse represents a response for listing files. ListKnowledgeBasesResponse: type: object properties: knowledgeBases: type: array items: type: object $ref: '#/definitions/KnowledgeBase' description: The list of knowledge bases. readOnly: true nextPageToken: type: string description: Next page token for pagination. readOnly: true totalSize: type: integer format: int32 description: Total number of knowledge bases matching the request. readOnly: true description: ListKnowledgeBasesResponse represents a response for listing knowledge bases. ListModelDefinitionsResponse: type: object properties: modelDefinitions: type: array items: type: object $ref: '#/definitions/ModelDefinition' description: A list of model definition resources. nextPageToken: type: string description: Next page token. totalSize: type: integer format: int32 description: Total number of model definitions. description: ListModelDefinitionsResponse contains a list of model definitions. ListModelRunsByRequesterResponse: type: object properties: runs: type: array items: type: object $ref: '#/definitions/ModelRun' description: A list of runs resources. readOnly: true totalSize: type: integer format: int32 description: Total number of runs. readOnly: true pageSize: type: integer format: int32 description: The requested page size. readOnly: true page: type: integer format: int32 description: The requested page offset. readOnly: true description: |- ListModelRunsByRequesterResponse is the request message for ListModelRunsByRequester. ListModelRunsResponse: type: object properties: runs: type: array items: type: object $ref: '#/definitions/ModelRun' description: A list of runs resources. readOnly: true totalSize: type: integer format: int32 description: Total number of runs. readOnly: true pageSize: type: integer format: int32 description: The requested page size. readOnly: true page: type: integer format: int32 description: The requested page offset. readOnly: true description: ListModelRunsResponse contains a list of model runs. ListModelTriggerChartRecordsResponse: type: object properties: modelTriggerChartRecords: type: array items: type: object $ref: '#/definitions/ModelTriggerChartRecord' description: |- Model trigger counts. Until we allow filtering or grouping by fields like model ID, this list will contain only one element with the timeline of trigger counts for a given requester, regardless the model ID, trigger mode, final status or other fields. description: |- ListModelTriggerChartRecordsResponse contains a list of model trigger chart records. ListModelVersionsResponse: type: object properties: versions: type: array items: type: object $ref: '#/definitions/ModelVersion' description: A list of model resources. readOnly: true totalSize: type: integer format: int32 description: Total number of versions. readOnly: true pageSize: type: integer format: int32 description: The requested page size. readOnly: true page: type: integer format: int32 description: The requested page offset. readOnly: true description: ListModelVersionsResponse contains a list of models. ListModelsResponse: type: object properties: models: type: array items: type: object $ref: '#/definitions/Model' description: A list of model resources. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of models. readOnly: true description: ListModelsResponse contains a list of models. ListNamespaceConnectionsResponse: type: object properties: connections: type: array items: type: object $ref: '#/definitions/mgmt.v1beta.Connection' description: A list of connections matching the request parameters. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of items. readOnly: true description: ListNamespaceConnectionsResponse contains a paginated list of connections. ListNamespaceSecretsResponse: type: object properties: secrets: type: array items: type: object $ref: '#/definitions/Secret' description: A list of secret resources. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of secret resources. readOnly: true description: ListNamespaceSecretsResponse contains a list of secrets. ListPipelineReleasesResponse: type: object properties: releases: type: array items: type: object $ref: '#/definitions/PipelineRelease' description: A list of pipeline release resources. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of pipeline releases. readOnly: true description: ListPipelineReleasesResponse contains a list of pipeline releases. ListPipelineRunsByRequesterResponse: type: object properties: pipelineRuns: type: array items: type: object $ref: '#/definitions/PipelineRun' description: The list of pipeline runs. readOnly: true totalSize: type: integer format: int32 description: The total number of pipeline runs matching the request. readOnly: true page: type: integer format: int32 description: The current page number. readOnly: true pageSize: type: integer format: int32 description: The number of items per page. readOnly: true description: |- ListPipelineRunsByRequesterResponse is the response message for ListPipelineRunsByRequester. ListPipelineRunsResponse: type: object properties: pipelineRuns: type: array items: type: object $ref: '#/definitions/PipelineRun' description: The list of pipeline runs. readOnly: true totalSize: type: integer format: int32 description: The total number of pipeline runs matching the request. readOnly: true page: type: integer format: int32 description: The current page number. readOnly: true pageSize: type: integer format: int32 description: The number of items per page. readOnly: true description: ListPipelineRunsResponse is the response message for ListPipelineRuns. ListPipelineTriggerChartRecordsResponse: type: object properties: pipelineTriggerChartRecords: type: array items: type: object $ref: '#/definitions/PipelineTriggerChartRecord' description: |- Pipeline trigger counts. Until we allow filtering or grouping by fields like pipeline ID, this list will contain only one element with the timeline of trigger counts for a given requester, regardless the pipeline ID, trigger mode, final status or other fields. description: |- ListPipelineTriggerChartRecordsResponse contains a list of pipeline trigger chart records. ListPipelinesResponse: type: object properties: pipelines: type: array items: type: object $ref: '#/definitions/Pipeline' description: A list of pipeline resources. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of pipelines. readOnly: true description: ListPipelinesResponse contains a list of pipelines. ListPublicModelsResponse: type: object properties: models: type: array items: type: object $ref: '#/definitions/Model' description: A list of model resources. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of models. readOnly: true description: ListPublicModelsResponse contains a list of public models. ListPublicPipelinesResponse: type: object properties: pipelines: type: array items: type: object $ref: '#/definitions/Pipeline' description: A list of pipeline resources. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of pipelines. readOnly: true description: ListPublicPipelinesResponse contains a list of public pipelines. ListTokensResponse: type: object properties: tokens: type: array items: type: object $ref: '#/definitions/ApiToken' description: A list of API token resources. nextPageToken: type: string description: Next page token. totalSize: type: integer format: int32 description: Total number of API token resources. description: ListTokensResponse contains a list of API tokens. ListUsersResponse: type: object properties: users: type: array items: type: object $ref: '#/definitions/v1beta.User' description: A list of user resources. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of users. readOnly: true description: ListUsersResponse contains a list of users. Model: type: object properties: name: type: string description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/models/{model}`. readOnly: true id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "mod-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string description: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. Slug is NOT part of resource identity. aliases: type: array items: type: string description: 'Field 5: Previous slugs for backward compatibility.' readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true modelDefinition: type: string description: The model definition that has been used to import the model. configuration: type: object description: |- Model configuration. This field is validated against the model specification in the model definition. task: description: Model task. allOf: - $ref: '#/definitions/Task' visibility: description: Model visibility. allOf: - $ref: '#/definitions/Model.Visibility' permission: description: Permission defines how the model can be used. readOnly: true allOf: - $ref: '#/definitions/v1alpha.Permission' region: type: string description: Region of choice for the particular provider to host the model. hardware: type: string description: Hardware of choice to serve the model. inputSchema: type: object description: Input schema for the model. readOnly: true outputSchema: type: object description: Output schema for the model. readOnly: true tags: type: array items: type: string description: Tags. versions: type: array items: type: string description: Version names. readOnly: true stats: description: Statistic data. readOnly: true allOf: - $ref: '#/definitions/Model.Stats' readme: type: string description: README holds the model documentation. sourceUrl: type: string description: A link to the source code of the model (e.g. to a GitHub repository). documentationUrl: type: string description: A link to any extra information. license: type: string description: License under which the model is distributed. profileImage: type: string description: Model profile image in base64 format. ownerName: type: string description: Resource name of the owner namespace. readOnly: true owner: description: Model owner (User or Organization). readOnly: true allOf: - $ref: '#/definitions/Owner' creatorName: type: string title: |- Full resource name of the user who created this model. Format: `users/{user}` readOnly: true creator: description: The user who created this model. readOnly: true allOf: - $ref: '#/definitions/v1beta.User' deleteTime: type: string format: date-time description: Soft delete timestamp. readOnly: true title: |- Model represents an AI model, i.e. a program that performs tasks as decision making or or pattern recognition based on its training data Model represents an AI/ML model. Field ordering follows AIP standard: name(1), id(2), display_name(3), slug(4), aliases(5), description(6) required: - displayName - modelDefinition - configuration - task - visibility - region - hardware Model.Stats: type: object properties: numberOfRuns: type: integer format: int32 description: Number of model runs. readOnly: true lastRunTime: type: string format: date-time description: Last run time. readOnly: true title: Statistic data Model.Visibility: type: string enum: - VISIBILITY_PRIVATE - VISIBILITY_PUBLIC description: |- Visibility defines who can access the model. - VISIBILITY_PRIVATE: Only the owner can see the model. - VISIBILITY_PUBLIC: Other users can see the model. ModelDefinition: type: object properties: name: type: string description: |- The resource name of the model, which allows its access by ID. - Format: `model-definitions/{id}`. readOnly: true uid: type: string description: Model definition UUID. readOnly: true id: type: string description: |- Model definition resource ID (used in `name` as the last segment). This conforms to RFC-1034, which restricts to letters, numbers, and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. readOnly: true title: type: string description: Official display title. readOnly: true documentationUrl: type: string description: Documentation URL. readOnly: true icon: type: string description: Display icon. readOnly: true releaseStage: description: Release stage. readOnly: true allOf: - $ref: '#/definitions/v1alpha.ReleaseStage' modelSpec: type: object description: |- The model specification represented by a JSON schema. It is used to validate the JSON configurations of a model created from a specific model source, and the resource spec which the model is desired to be deployed on. It must be a valid JSON that includes what fields are needed to create or display a model. readOnly: true createTime: type: string format: date-time description: Creation time. readOnly: true updateTime: type: string format: date-time description: Update time. readOnly: true description: ModelDefinition defines how to configure and import a model. ModelRun: type: object properties: name: type: string title: |- The resource name of the model run. Format: namespaces/{namespace}/models/{model}/runs/{run} readOnly: true id: type: string description: Unique identifier for each run (immutable). readOnly: true createTime: type: string format: date-time description: Model run created time. readOnly: true updateTime: type: string format: date-time description: Model run updated time. readOnly: true runner: type: string description: |- Runner who triggered the run. Full resource name: users/{user}. readOnly: true model: type: string title: |- The model resource name. Full resource name: namespaces/{namespace}/models/{model} readOnly: true requester: type: string description: |- Requester namespace. Full resource name: namespaces/{namespace}. readOnly: true status: description: Model run status. readOnly: true allOf: - $ref: '#/definitions/RunStatus' source: description: Run source. readOnly: true allOf: - $ref: '#/definitions/RunSource' totalDuration: type: integer format: int32 description: Run total duration in milliseconds. readOnly: true endTime: type: string format: date-time description: Run end time. readOnly: true creditAmount: type: number format: float description: The amount of Instill Credit consumed by the run. readOnly: true error: type: string description: Error message occurred during model run. readOnly: true version: type: string description: The model version identifier, which is same as image tag. readOnly: true taskInputs: type: array items: type: object description: Model inference input. readOnly: true taskOutputs: type: array items: type: object description: Model inference outputs. readOnly: true description: ModelRun contains information about a run of models. ModelTriggerChartRecord: type: object properties: modelId: type: string description: This field will be present when the information is grouped by model. readOnly: true timeBuckets: type: array items: type: string format: date-time description: Time buckets. readOnly: true triggerCounts: type: array items: type: integer format: int32 description: Aggregated trigger count in each time bucket. readOnly: true requesterId: type: string description: The ID of the namespace that requested the model triggers. readOnly: true description: |- ModelTriggerChartRecord represents a timeline of model triggers. It contains a collection of (timestamp, count) pairs that represent the total model triggers in a given time bucket. ModelVersion: type: object properties: name: type: string description: |- The resource name of the model version. Format: `namespaces/{namespace}/models/{model}/versions/{version}`. version: type: string description: The model version identifier, which is equal to image tag. digest: type: string description: Unique identifier, computed from the manifest the Version refers to. state: description: Current state of this model version. readOnly: true allOf: - $ref: '#/definitions/v1alpha.State' updateTime: type: string format: date-time description: Version update time, i.e. timestamp of the last push. readOnly: true description: ModelVersion contains information about the version of a model. NullValue: type: string description: |- `NullValue` is a singleton enumeration to represent the null value for the `Value` type union. The JSON representation for `NullValue` is JSON `null`. Object: type: object properties: name: type: string title: |- Canonical resource name. Format: `namespaces/{namespace}/objects/{object}` readOnly: true id: type: string description: |- Immutable canonical resource ID (e.g., "obj-3k7m9p2w5t1"). Hash-based, unique within a namespace. readOnly: true displayName: type: string description: Human-readable display name (user-provided filename). ownerName: type: string title: |- Resource name of the owner namespace. Format: `namespaces/{namespace}` readOnly: true creatorName: type: string title: |- Full resource name of the user who created this object. Format: `users/{user}` readOnly: true createTime: type: string format: date-time description: Object creation time. readOnly: true updateTime: type: string format: date-time description: Object update time. readOnly: true size: type: string format: int64 description: Size in bytes. readOnly: true contentType: type: string description: Content type (MIME type from Content-Type header or file extension). readOnly: true isUploaded: type: boolean description: Whether the file has been uploaded to storage. readOnly: true objectExpireDays: type: integer format: int32 description: |- Object expiration time in days. If set to 0, the object will not be deleted automatically. lastModifiedTime: type: string format: date-time description: Last modified time (client-provided metadata). deleteTime: type: string format: date-time description: Object delete time (for soft delete). Output only. readOnly: true slug: type: string title: |- URL-friendly slug derived from display_name. Example: "my-document-pdf" aliases: type: array items: type: string description: Previous slugs for backward compatibility when display_name changes. readOnly: true description: Object represents a blob storage object. OnboardingStatus: type: string enum: - ONBOARDING_STATUS_IN_PROGRESS - ONBOARDING_STATUS_COMPLETED description: |- OnboardingStatus describes the status of the user onboarding process. - ONBOARDING_STATUS_IN_PROGRESS: In progress, i.e., the user has initiated the onboarding process but has not yet completed it. - ONBOARDING_STATUS_COMPLETED: Completed. Organization: type: object properties: name: type: string title: |- Field 1: Canonical resource name. Format: `organizations/{organization}`. Example: "organizations/acme-corp" readOnly: true id: type: string title: |- Field 2: Resource ID (used in `name` as the last segment). This conforms to RFC-1034, which restricts to letters, numbers, and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. Auto-generated by backend: "org-" prefix + immutable hash (80 bits entropy, base62). Example: "org-8f3A2k9E7c1xYz" readOnly: true displayName: type: string description: |- Field 3: Human-readable display name for UI. This is copied from profile.display_name for convenience. readOnly: true slug: type: string description: |- Field 4: URL-friendly slug (NO prefix). Derived from display_name, used for human-friendly URLs. readOnly: true aliases: type: array items: type: string description: 'Field 5: Previous slugs for backward compatibility.' readOnly: true description: type: string description: 'Field 6: Optional description / bio.' readOnly: true createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Update time.' readOnly: true owner: type: string description: |- Field 9: Owner reference (the user that owns the organization). Format: `users/{user}`. readOnly: true profile: description: Profile containing additional organization information. allOf: - $ref: '#/definitions/OrganizationProfile' permission: title: Permission readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.Permission' stats: description: The organization stats. readOnly: true allOf: - $ref: '#/definitions/Organization.Stats' description: |- Organizations group several users. As entities, they can own resources such as pipelines or releases. Organization represents a group of users working together. AIP Standard Field Ordering: - name (field 1): Canonical resource name - id (field 2): Immutable canonical resource ID - display_name (field 3): Human-readable display name - slug (field 4): URL-friendly slug - aliases (field 5): Previous slugs for backward compatibility - description (field 6): Optional description - create_time (field 7): Creation timestamp - update_time (field 8): Update timestamp - owner (field 9): Owner reference (string, not embedded object) required: - profile Organization.Stats: type: object properties: userCount: type: integer format: int32 description: The number of users in the organization. description: The Organization stats. OrganizationProfile: type: object properties: displayName: type: string title: |- Display name. Required, human-readable name for UI display. Example: "Instill AI" for organization ID "instill-ai" bio: type: string description: Biography. avatar: type: string description: Avatar in base64 format. publicEmail: type: string description: Public email. socialProfileLinks: type: object additionalProperties: type: string description: |- Social profile links list the links to the organization's social profiles. The key represents the provider, and the value is the corresponding URL. metadata: type: object title: Flexible metadata fullName: type: string description: Full legal name. Used for formal communications. description: OrganizationProfile describes the public data of an organization. required: - displayName Owner: type: object properties: user: description: User. readOnly: true allOf: - $ref: '#/definitions/v1beta.User' organization: description: Organization. readOnly: true allOf: - $ref: '#/definitions/Organization' description: |- Owner is a wrapper for User and Organization, used to embed owner information in other resources. PatchAuthenticatedUserResponse: type: object properties: user: description: The updated user resource. readOnly: true allOf: - $ref: '#/definitions/AuthenticatedUser' title: |- PatchAuthenticatedUserResponse contains the updated user. the authenticated user resource Pipeline: type: object properties: name: type: string description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/pipelines/{pipeline}`. readOnly: true id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "pip-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string description: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. Slug is NOT part of resource identity. aliases: type: array items: type: string description: 'Field 5: Previous slugs for backward compatibility.' readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true recipe: type: object description: Recipe describes the components of a Pipeline and how they are connected. rawRecipe: type: string description: Recipe in YAML format. visibility: description: Pipeline visibility. allOf: - $ref: '#/definitions/Pipeline.Visibility' sharing: description: Pipeline sharing information. allOf: - $ref: '#/definitions/Sharing' permission: description: Permission defines how a pipeline can be used. readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.Permission' dataSpecification: description: Data specifications. readOnly: true allOf: - $ref: '#/definitions/DataSpecification' tags: type: array items: type: string description: Tags. stats: description: Statistic data. readOnly: true allOf: - $ref: '#/definitions/Pipeline.Stats' metadata: type: object description: Metadata holds console-related data such as the pipeline builder layout. readme: type: string description: README holds the pipeline documentation. releases: type: array items: type: object $ref: '#/definitions/PipelineRelease' description: Releases holds the history of pipeline versions. readOnly: true endpoints: description: Pipeline endpoints. readOnly: true allOf: - $ref: '#/definitions/Endpoints' sourceUrl: type: string description: A link to the source code of the pipeline (e.g. to a GitHub repository). documentationUrl: type: string description: A link to any extra information. license: type: string description: License under which the pipeline is distributed. profileImage: type: string description: Pipeline profile image in base64 format. ownerName: type: string description: Resource name of the owner namespace. readOnly: true owner: description: Pipeline owner (User or Organization). readOnly: true allOf: - $ref: '#/definitions/Owner' creatorName: type: string title: |- Full resource name of the user who created this pipeline. Format: `users/{user}` readOnly: true creator: description: The user who created this pipeline. readOnly: true allOf: - $ref: '#/definitions/v1beta.User' deleteTime: type: string format: date-time description: Soft delete timestamp. readOnly: true description: |- A Pipeline is an end-to-end workflow that automates a sequence of components to process data. For more information, see [Pipeline](https://instill-ai.dev/docs/pipeline/introduction) in the official documentation. Pipeline represents a data pipeline for AI/ML workflows. Field ordering follows AIP standard: name(1), id(2), display_name(3), slug(4), aliases(5), description(6) required: - displayName - recipe - visibility Pipeline.Stats: type: object properties: numberOfRuns: type: integer format: int32 description: Number of pipeline runs. readOnly: true lastRunTime: type: string format: date-time description: Last run time. readOnly: true numberOfClones: type: integer format: int32 description: Number of times this pipeline has been cloned. readOnly: true title: Statistic data Pipeline.View: type: string enum: - VIEW_BASIC - VIEW_FULL - VIEW_RECIPE description: |- View defines how a Pipeline is presented. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. - VIEW_RECIPE: Contains the recipe of the resource. Pipeline.Visibility: type: string enum: - VISIBILITY_PRIVATE - VISIBILITY_PUBLIC description: |- Visibility defines who can access the pipeline. - VISIBILITY_PRIVATE: Only the user can see the pipeline. - VISIBILITY_PUBLIC: Other users can see the pipeline. PipelineRelease: type: object properties: name: type: string description: |- Field 1: The name of the release. - Format: `namespaces/{namespace}/pipelines/{pipeline}/releases/{release}`. readOnly: true id: type: string description: |- Field 2: Release resource ID (used in `name` as the last segment). It must be a sematic version vX.Y.Z. displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string description: 'Field 4: URL-friendly slug (alias for the release).' readOnly: true aliases: type: array items: type: string description: 'Field 5: Previous slugs for backward compatibility.' readOnly: true description: type: string description: 'Field 6: Release description.' recipe: type: object description: Recipe of the versioned pipeline. readOnly: true createTime: type: string format: date-time description: Pipeline creation time. readOnly: true updateTime: type: string format: date-time description: Pipeline update time. readOnly: true deleteTime: type: string format: date-time description: Pipeline deletion time. readOnly: true metadata: type: object description: |- Key-value object with console-related data such as the pipeline builder layout. readme: type: string description: README. dataSpecification: description: Data specifications. readOnly: true allOf: - $ref: '#/definitions/DataSpecification' rawRecipe: type: string description: |- Recipe in YAML format describes the components of a pipeline and how they are connected. endpoints: description: Pipeline endpoints. readOnly: true allOf: - $ref: '#/definitions/Endpoints' title: |- Pipeline releases contain the version control information of a pipeline. This allows users to track changes in the pipeline over time. Field ordering follows AIP standard: name (1), id (2), display_name (3), slug (4), aliases (5), description (6) PipelineRun: type: object properties: name: type: string title: |- The resource name of the pipeline run. Format: namespaces/{namespace}/pipelines/{pipeline}/runs/{run} readOnly: true id: type: string description: Unique identifier for each run (immutable). readOnly: true createTime: type: string format: date-time description: Time when the run was created. readOnly: true updateTime: type: string format: date-time description: Time when the run was last updated. readOnly: true runner: type: string description: |- Runner who triggered the run. Full resource name: users/{user}. readOnly: true pipeline: type: string title: |- The pipeline resource name. Full resource name: namespaces/{namespace}/pipelines/{pipeline} readOnly: true requester: type: string description: |- Requester namespace. Full resource name: namespaces/{namespace}. readOnly: true pipelineVersion: type: string description: Pipeline version used in the run. readOnly: true status: description: Current status of the run. readOnly: true allOf: - $ref: '#/definitions/RunStatus' source: description: Origin of the run. readOnly: true allOf: - $ref: '#/definitions/RunSource' totalDuration: type: integer format: int32 description: Time taken to complete the run in milliseconds. readOnly: true inputs: type: array items: type: object description: Pipeline input parameters. readOnly: true outputs: type: array items: type: object description: Pipeline inference outputs. readOnly: true recipeSnapshot: type: object description: Snapshot of the pipeline recipe used for this run. readOnly: true startTime: type: string format: date-time description: Time when the run started execution. readOnly: true completeTime: type: string format: date-time description: Time when the run completed. readOnly: true error: type: string description: Error message if the run failed. readOnly: true creditAmount: type: number format: float description: Credits used of internal accounting metric. readOnly: true dataSpecification: description: Data specifications. readOnly: true allOf: - $ref: '#/definitions/DataSpecification' blobDataExpirationTime: type: string format: date-time description: Expiration time for the blob data associated with the pipeline run. readOnly: true description: PipelineRun represents a single execution of a pipeline. PipelineTriggerChartRecord: type: object properties: pipelineId: type: string description: This field will be present when the information is grouped by pipeline. readOnly: true timeBuckets: type: array items: type: string format: date-time description: Time buckets. readOnly: true triggerCounts: type: array items: type: integer format: int32 description: Aggregated trigger count in each time bucket. readOnly: true requesterId: type: string description: The ID of the namespace that requested the pipeline triggers. readOnly: true description: |- PipelineTriggerChartRecord represents a timeline of pipeline triggers. It contains a collection of (timestamp, count) pairs that represent the total pipeline triggers in a given time bucket. Position: type: object properties: unit: description: Unit of measurement for the position. readOnly: true allOf: - $ref: '#/definitions/Unit' coordinates: type: array items: type: integer format: int64 description: Position value. readOnly: true description: |- Position within a file, as coordinates in a specific unit. The number of dimensions of the coordinate depends on the unit type. Ranker: type: string enum: - RANKER_WEIGHTED - RANKER_RRF description: |- Ranker identifies which Milvus hybrid-search reranker produced the scores on a `SearchChunksResponse`. The score distribution depends on the reranker, and downstream consumers that apply score-based thresholds MUST read this field so they can pick the correct floor shape (absolute [0,1] floor for `RANKER_WEIGHTED`; rank-structural `1/(k+topK)` floor for `RANKER_RRF`). - RANKER_WEIGHTED: RANKER_WEIGHTED is Milvus' WeightedRanker (dense + BM25 combined with static weights); scores are normalised to [0,1]. - RANKER_RRF: RANKER_RRF is Reciprocal Rank Fusion with smoothing constant k (Milvus default 60); scores live in (0, 2/(k+1)]. Reference: type: object properties: start: description: Start position of the chunk within the file. readOnly: true allOf: - $ref: '#/definitions/Position' end: description: End position of the chunk within the file. readOnly: true allOf: - $ref: '#/definitions/Position' description: Reference represents the position of a chunk within a file. Region: type: object properties: regionName: type: string title: Concatenate name of provider and region hardware: type: array items: type: object $ref: '#/definitions/Hardware' title: Hardware describes the available hardware types in this region description: |- Region describes the supported cloud provider and regions, with their supported GPU respectively. RenameModelBody: type: object properties: newModelId: type: string description: |- The new resource ID. This will transform the resource name into `namespaces/{namespace}/models/{new_model_id}`. title: RenameModelRequest represents a request to rename a model required: - newModelId RenameModelResponse: type: object properties: model: description: The renamed model resource. readOnly: true allOf: - $ref: '#/definitions/Model' description: RenameModelResponse contains a renamed model. RenamePipelineBody: type: object properties: newPipelineId: type: string description: |- The new resource ID. This will transform the resource name into `namespaces/{namespace}/pipelines/{new_pipeline_id}`. description: |- RenamePipelineRequest represents a request to rename the name of a pipeline owned by a namespace. required: - newPipelineId RenamePipelineResponse: type: object properties: pipeline: description: The renamed pipeline resource. readOnly: true allOf: - $ref: '#/definitions/Pipeline' description: RenamePipelineResponse contains a renamed pipeline. ReprocessFileBody: type: object description: ReprocessFileRequest represents a request to reprocess a file. ReprocessFileResponse: type: object properties: file: description: The file being reprocessed. readOnly: true allOf: - $ref: '#/definitions/File' message: type: string description: Status message. readOnly: true description: ReprocessFileResponse represents a response for reprocessing a file. Role: type: string enum: - ROLE_VIEWER - ROLE_EXECUTOR description: |- Role describes the permissions a user has over a resource. - ROLE_VIEWER: Viewers can see the resource properties. - ROLE_EXECUTOR: Executors can execute the resource (e.g. trigger a pipeline). RunSource: type: string enum: - RUN_SOURCE_CONSOLE - RUN_SOURCE_API description: |- RunSource defines the source of a pipeline or model run. - RUN_SOURCE_CONSOLE: Run from frontend UI. - RUN_SOURCE_API: Run from API or SDK. RunStatus: type: string enum: - RUN_STATUS_PROCESSING - RUN_STATUS_COMPLETED - RUN_STATUS_FAILED - RUN_STATUS_QUEUED description: |- RunStatus defines the status of a pipeline or model run. - RUN_STATUS_PROCESSING: Run in progress. - RUN_STATUS_COMPLETED: Run succeeded. - RUN_STATUS_FAILED: Run failed. - RUN_STATUS_QUEUED: Run is waiting to be executed. SearchChunksBody: type: object properties: knowledgeBase: type: string title: |- The knowledge base resource name to filter by (optional). Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}` textPrompt: type: string description: Text prompt to look for similarities. topK: type: integer format: int64 description: 'Top K. Default value: 5.' type: description: Chunk type. allOf: - $ref: '#/definitions/Chunk.Type' fileMediaType: description: File media type. allOf: - $ref: '#/definitions/FileMediaType' files: type: array items: type: string title: |- File resource names to filter by. When this field is provided, the response will return only chunks that belong to the specified files. Format: `namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}` tags: type: array items: type: string description: |- Tags to filter by. When multiple tags are provided, OR logic is applied. Note: File filter takes precedence over tags, as tags apply to files. groupByFile: type: boolean description: |- When true, results are grouped by file so that no single file dominates the result set. At most group_size chunks are returned per file. groupSize: type: integer format: int32 description: 'Max chunks per file when group_by_file is true. Default: 1.' description: SearchChunksRequest represents a request to search for similar chunks. required: - textPrompt SearchChunksResponse: type: object properties: similarChunks: type: array items: type: object $ref: '#/definitions/SimilarityChunk' title: chunks readOnly: true ranker: description: |- The reranker that produced the scores in `similar_chunks`. Read this before applying any score threshold — see the `Ranker` enum for why. readOnly: true allOf: - $ref: '#/definitions/Ranker' description: SearchChunksResponse represents a response for searching similar chunks. Secret: type: object properties: name: type: string description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/secrets/{secret}`. readOnly: true id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "sec-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "openai-api-key" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true value: type: string description: 'Field 9: The value of the secret, which is input-only and will never be returned in API responses.' title: |- API secrets allow users to make requests to the Instill AI API. Field ordering follows AIP standard: name(1), id(2), display_name(3), slug(4), aliases(5), description(6) required: - displayName ShareCode: type: object properties: user: type: string description: |- Defines which users will be able to access the resource through the code. This is a pattern that will be checked against user names. For now, the only accepted value is `*/*`. code: type: string description: The public URL that allows users to access the resource. enabled: type: boolean description: Defines whether the sharing option via link is enabled. role: description: Defines the role users will have over the resource. allOf: - $ref: '#/definitions/Role' description: ShareCode describes a sharing configuration through a link. Sharing: type: object properties: users: type: object additionalProperties: $ref: '#/definitions/Sharing.User' description: |- Defines sharing rules for a set of user resource names. Each key in this object should contain a pattern that can be matched against user names. Each value is a user sharing configuration. **NOTE**: For now, the only accepted key is `*/*`. shareCode: description: Defines the configuration to share a resource via link. allOf: - $ref: '#/definitions/ShareCode' description: |- Sharing contains the information to share a resource with other users. For more information, see [Share Pipelines](https://instill-ai.dev/docs/pipeline/share-pipeline). Sharing.User: type: object properties: enabled: type: boolean description: Defines whether the sharing option with this user is enabled. role: description: Defines the role the user will have over the resource. allOf: - $ref: '#/definitions/Role' description: Describes the sharing configuration with a given user. SimilarityChunk: type: object properties: chunk: type: string title: |- Chunk resource name. Full resource name: namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file}/chunks/{chunk} readOnly: true similarityScore: type: number format: float description: Similarity score. readOnly: true textContent: type: string description: Content. readOnly: true file: type: string title: |- Source file resource name. Full resource name: namespaces/{namespace}/knowledge-bases/{knowledge_base}/files/{file} readOnly: true chunkMetadata: description: Chunk metadata. readOnly: true allOf: - $ref: '#/definitions/Chunk' description: SimilarityChunk represents a chunk with similarity score. Spec: type: object properties: componentSpecification: type: object description: Component specification. readOnly: true dataSpecifications: type: object additionalProperties: $ref: '#/definitions/DataSpecification' description: |- Data specifications. The key represents the task, and the value is the corresponding data_specification. Note: This field will be renamed to task_specifications in the future. readOnly: true eventSpecifications: type: object additionalProperties: $ref: '#/definitions/EventSpecification' description: |- Event specifications. The key represents the event, and the value is the corresponding event_specification. readOnly: true description: Spec represents a specification data model. StorageProvider: type: string enum: - STORAGE_PROVIDER_MINIO - STORAGE_PROVIDER_GCS description: |- - STORAGE_PROVIDER_MINIO: Use MinIO as the storage backend (default) - STORAGE_PROVIDER_GCS: Use Google Cloud Storage as the storage backend title: Storage provider for file resources Task: type: string enum: - TASK_CLASSIFICATION - TASK_DETECTION - TASK_KEYPOINT - TASK_OCR - TASK_INSTANCE_SEGMENTATION - TASK_SEMANTIC_SEGMENTATION - TASK_TEXT_TO_IMAGE - TASK_IMAGE_TO_IMAGE - TASK_EMBEDDING - TASK_SPEECH_RECOGNITION - TASK_CHAT - TASK_COMPLETION - TASK_CUSTOM description: |- Task enumerates the AI task that a model is designed to solve. - TASK_CLASSIFICATION: Image Classification - classify images into predefined categories. - TASK_DETECTION: Object Detection - detect and localize multiple objects in images. - TASK_KEYPOINT: Keypoint Detection - detect and localize multiple keypoints of objects in images. - TASK_OCR: OCR (Optical Character Recognition) - detect and recognize text in images. - TASK_INSTANCE_SEGMENTATION: Instance Segmentation - detect, localize and delineate multiple objects in images. - TASK_SEMANTIC_SEGMENTATION: Semantic Segmentation - classify image pixels into predefined categories. - TASK_TEXT_TO_IMAGE: Text to Image - generate images from input text prompts. - TASK_IMAGE_TO_IMAGE: Image to Image - generate an image from another image. - TASK_EMBEDDING: Embedding - generate an embedding (a representation as coordinates) from a multimodal input. - TASK_SPEECH_RECOGNITION: Speech Recognition - transcribe the words in an audio input. - TASK_CHAT: Conversational Text Generation - generate text as responses to a dialog input. - TASK_COMPLETION: Completion Text Generation - generate text following the input prompt. - TASK_CUSTOM: Custom - custom task type for free form input/output. TestConnectionResponse: type: object description: TestConnectionResponse is an empty response. TestNamespaceConnectionResponse: type: object description: TestNamespaceConnectionResponse is an empty response. Trace: type: object properties: statuses: type: array items: $ref: '#/definitions/Trace.Status' description: Statuses contains an execution status per input. readOnly: true inputs: type: array items: type: object description: Component inputs. readOnly: true outputs: type: array items: type: object description: Component outputs. readOnly: true error: type: object description: Error details. readOnly: true computeTimeInSeconds: type: number format: float description: Computation time in seconds. readOnly: true description: Trace contains the execution details of a component. Trace.Status: type: string enum: - STATUS_COMPLETED - STATUS_SKIPPED - STATUS_ERROR description: |- Status holds the the component execution outcome. - STATUS_COMPLETED: Successfully completed. - STATUS_SKIPPED: Skipped. - STATUS_ERROR: Aborted with error. TriggerAsyncModelBody: type: object properties: taskInputs: type: array items: type: object description: Model inference inputs. description: |- TriggerAsyncModelRequest represents a request to trigger a model inference asynchronously with the latest uploaded version. required: - taskInputs TriggerAsyncModelResponse: type: object properties: operation: description: Long-running operation information. readOnly: true allOf: - $ref: '#/definitions/longrunning.Operation' description: |- TriggerAsyncModelResponse contains the information to access the status of an asynchronous model inference. TriggerAsyncModelVersionBody: type: object properties: taskInputs: type: array items: type: object description: Model inference inputs. description: |- TriggerAsyncModelVersionRequest represents a request to trigger a model inference asynchronously. required: - taskInputs TriggerAsyncModelVersionResponse: type: object properties: operation: description: Long-running operation information. readOnly: true allOf: - $ref: '#/definitions/longrunning.Operation' description: |- TriggerAsyncModelVersionResponse contains the information to access the status of an asynchronous model inference. TriggerAsyncPipelineBody: type: object properties: inputs: type: array items: type: object description: Pipeline input parameters, it will be deprecated soon. data: type: array items: type: object $ref: '#/definitions/TriggerData' title: Data description: |- TriggerPipelineRequest represents a request to trigger a user-owned pipeline synchronously. TriggerAsyncPipelineReleaseBody: type: object properties: inputs: type: array items: type: object description: Pipeline input parameters, it will be deprecated soon. data: type: array items: type: object $ref: '#/definitions/TriggerData' title: Data description: |- TriggerPipelineReleaseRequest represents a request to trigger a pinned release of a user-owned pipeline asynchronously. TriggerAsyncPipelineReleaseResponse: type: object properties: operation: description: Long-running operation information. readOnly: true allOf: - $ref: '#/definitions/longrunning.Operation' description: |- TriggerAsyncPipelineReleaseResponse contains the information to access the status of an asynchronous pipeline execution. TriggerAsyncPipelineResponse: type: object properties: operation: description: Long-running operation information. readOnly: true allOf: - $ref: '#/definitions/longrunning.Operation' description: |- TriggerAsyncPipelineResponse contains the information to access the status of an asynchronous pipeline execution. TriggerData: type: object properties: variable: type: object description: The values of the pipeline variables. secret: type: object additionalProperties: type: string description: |- A collection of secrets. By default, if a pipeline references any secret (`${secret.}`), its value is read from the namespace's secrets. This object provides a way to override these secret values: if one of its keys matches the ID of a reference secret, its value will be read from here instead of from the namespace secret collection. connectionReferences: type: object additionalProperties: type: string description: |- A collection of connection references. By default, connection references (`${connection.}`) in a pipeline will be resolved by fetching the value from the requester's connections. Connections contain sensitive data and can't be shared across namespaces, so this means that, in order to successfully run a pipeline owned by another namespace, the requester will need to have a connection with the same ID. This object provides a way to override the connection references with connections that the requester owns. Each element in the object maps a connection ID present in the pipeline (key) to the ID of a connection owned by the requester (value). Note that, since only references are accepted (this object shouldn't contain connection **values**), the reference syntax shouldn't be used here. description: TriggerData contains the input data for a pipeline run. TriggerMetadata: type: object properties: traces: type: object additionalProperties: $ref: '#/definitions/Trace' description: |- Each key in the `traces` object is a component ID. The value is a Trace object containing the execution details. readOnly: true description: TriggerMetadata contains the traces of the pipeline inference. TriggerModelBody: type: object properties: taskInputs: type: array items: type: object description: Model inference inputs. description: |- TriggerModelRequest represents a request to trigger a model inference with the latest uploaded version. required: - taskInputs TriggerModelResponse: type: object properties: task: description: Task type. readOnly: true allOf: - $ref: '#/definitions/Task' taskOutputs: type: array items: type: object description: Model inference outputs. readOnly: true description: TriggerModelResponse contains the model inference results. TriggerModelVersionBody: type: object properties: taskInputs: type: array items: type: object description: Model inference inputs. description: |- TriggerModelVersionRequest represents a request to trigger a model inference. required: - taskInputs TriggerModelVersionResponse: type: object properties: task: description: Task type. readOnly: true allOf: - $ref: '#/definitions/Task' taskOutputs: type: array items: type: object description: Model inference outputs. readOnly: true description: TriggerModelVersionResponse contains the model inference results. TriggerPipelineBody: type: object properties: inputs: type: array items: type: object description: Pipeline input parameters, it will be deprecated soon. data: type: array items: type: object $ref: '#/definitions/TriggerData' title: Data description: |- TriggerPipelineRequest represents a request to trigger a user-owned pipeline synchronously. required: - inputs - data TriggerPipelineReleaseBody: type: object properties: inputs: type: array items: type: object description: Pipeline input parameters, it will be deprecated soon. data: type: array items: type: object $ref: '#/definitions/TriggerData' title: Data description: |- TriggerPipelineReleaseRequest represents a request to trigger a pinned release of a user-owned pipeline. TriggerPipelineReleaseResponse: type: object properties: outputs: type: array items: type: object description: Model inference outputs. readOnly: true metadata: description: Traces of the pipeline inference. readOnly: true allOf: - $ref: '#/definitions/TriggerMetadata' description: |- TriggerPipelineReleaseResponse contains the pipeline execution results, i.e., the multiple model inference outputs. TriggerPipelineResponse: type: object properties: outputs: type: array items: type: object description: Model inference outputs. readOnly: true metadata: description: Traces of the pipeline inference. readOnly: true allOf: - $ref: '#/definitions/TriggerMetadata' description: |- TriggerPipelineResponse contains the pipeline execution results, i.e., the multiple model inference outputs. TriggerPipelineWithStreamBody: type: object properties: inputs: type: array items: type: object description: Pipeline input parameters, it will be deprecated soon. data: type: array items: type: object $ref: '#/definitions/TriggerData' title: Data description: |- TriggerPipelineWithStreamRequest represents a request to trigger a user-owned pipeline synchronously and streams back the results. TriggerPipelineWithStreamResponse: type: object properties: outputs: type: array items: type: object description: Model inference outputs. readOnly: true metadata: description: Traces of the pipeline inference. readOnly: true allOf: - $ref: '#/definitions/TriggerMetadata' description: |- TriggerPipelineWithStreamResponse contains the pipeline execution results, i.e., the multiple model inference outputs. Unit: type: string enum: - UNIT_CHARACTER - UNIT_PAGE - UNIT_TIME_MS - UNIT_PIXEL description: |- Unit of measurement for a position within a file. - UNIT_CHARACTER: Character positions (for Markdown and other text files). - UNIT_PAGE: Page positions (for documents). For pages, positions are 1-indexed (e.g., page 4 of 4) to align with document visualization standards. - UNIT_TIME_MS: Time positions in milliseconds (for audio/video files). - UNIT_PIXEL: Pixel positions (for images and other 2D content). UpdateChunkBody: type: object properties: retrievable: type: boolean title: whether the chunk is retrievable title: |- UpdateChunkRequest represents a request to update a chunk. Follows AIP-134: https://google.aip.dev/134 required: - retrievable UpdateChunkResponse: type: object properties: chunk: title: chunk readOnly: true allOf: - $ref: '#/definitions/Chunk' description: UpdateChunkResponse represents a response for updating a chunk. UpdateConnectionResponse: type: object properties: connection: description: The created connection. readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.Connection' description: UpdateConnectionResponse contains the updated connection. UpdateFileResponse: type: object properties: file: description: Updated file. readOnly: true allOf: - $ref: '#/definitions/File' description: UpdateFileResponse represents a response for updating a file. UpdateKnowledgeBaseResponse: type: object properties: knowledgeBase: description: The updated knowledge base resource. readOnly: true allOf: - $ref: '#/definitions/KnowledgeBase' description: |- UpdateKnowledgeBaseResponse represents a response for updating a knowledge base. UpdateModelResponse: type: object properties: model: description: The updated model resource. readOnly: true allOf: - $ref: '#/definitions/Model' description: UpdateModelResponse contains the updated model. UpdateNamespaceConnectionResponse: type: object properties: connection: description: The created connection. readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.Connection' description: UpdateNamespaceConnectionResponse contains the updated connection. UpdateNamespaceSecretResponse: type: object properties: secret: description: The updated secret resource. allOf: - $ref: '#/definitions/Secret' description: UpdateNamespaceSecretResponse contains the updated secret. UpdateObjectBody: type: object properties: object: type: object properties: id: type: string description: |- Immutable canonical resource ID (e.g., "obj-3k7m9p2w5t1"). Hash-based, unique within a namespace. readOnly: true displayName: type: string description: Human-readable display name (user-provided filename). ownerName: type: string title: |- Resource name of the owner namespace. Format: `namespaces/{namespace}` readOnly: true creatorName: type: string title: |- Full resource name of the user who created this object. Format: `users/{user}` readOnly: true createTime: type: string format: date-time description: Object creation time. readOnly: true updateTime: type: string format: date-time description: Object update time. readOnly: true size: type: string format: int64 description: Size in bytes. readOnly: true contentType: type: string description: Content type (MIME type from Content-Type header or file extension). readOnly: true isUploaded: type: boolean description: Whether the file has been uploaded to storage. readOnly: true objectExpireDays: type: integer format: int32 description: |- Object expiration time in days. If set to 0, the object will not be deleted automatically. lastModifiedTime: type: string format: date-time description: Last modified time (client-provided metadata). deleteTime: type: string format: date-time description: Object delete time (for soft delete). Output only. readOnly: true slug: type: string title: |- URL-friendly slug derived from display_name. Example: "my-document-pdf" aliases: type: array items: type: string description: Previous slugs for backward compatibility when display_name changes. readOnly: true title: |- The object to update. The object's `name` field identifies it. Format: `namespaces/{namespace}/objects/{object}` updateMask: type: string description: The update mask specifies which fields to update. description: |- UpdateObjectRequest represents a request to update an object. Follows AIP-134: resource's `name` field identifies it. required: - object UpdateObjectResponse: type: object properties: object: description: The updated object. allOf: - $ref: '#/definitions/Object' description: UpdateObjectResponse contains the updated object. UpdatePipelineReleaseResponse: type: object properties: release: description: The updated pipeline release resource. readOnly: true allOf: - $ref: '#/definitions/PipelineRelease' description: UpdatePipelineReleaseResponse contains the updated pipeline release. UpdatePipelineResponse: type: object properties: pipeline: description: The updated pipeline resource. readOnly: true allOf: - $ref: '#/definitions/Pipeline' description: UpdatePipelineResponse contains the updated pipeline. UserProfile: type: object properties: displayName: type: string title: |- Display name. Required, human-readable name for UI display. Example: "John" for user ID "john-doe-8f3A2k9E" bio: type: string description: Biography. avatar: type: string description: Avatar in base64 format. publicEmail: type: string description: Public email. companyName: type: string description: Company name. socialProfileLinks: type: object additionalProperties: type: string description: |- Social profile links list the links to the user's social profiles. The key represents the provider, and the value is the corresponding URL. fullName: type: string description: |- Full legal name. Used for formal communications. Example: "John Doe" - this is also used to auto-generate the user ID. metadata: type: object title: Flexible metadata description: UserProfile describes the public data of a user. required: - displayName ValidatePipelineBody: type: object description: |- ValidatePipelineRequest represents a request to validate a pipeline owned by a user. ValidatePipelineResponse: type: object properties: success: type: boolean title: Success readOnly: true errors: type: array items: type: object $ref: '#/definitions/ErrPipelineValidation' description: The validated pipeline resource. readOnly: true description: ValidatePipelineResponse contains a validated pipeline. ValidateTokenResponse: type: object properties: user: type: string title: |- If token is valid, full resource name of the user that owns it. Format: `users/{user}` readOnly: true description: ValidateTokenResponse contains the validation of a token. WatchModelResponse: type: object properties: state: description: State. readOnly: true allOf: - $ref: '#/definitions/v1alpha.State' message: type: string title: Detail description of the state readOnly: true description: |- WatchModelResponse contains the state of the latest model version. WatchModelVersionResponse: type: object properties: state: description: State. readOnly: true allOf: - $ref: '#/definitions/v1alpha.State' message: type: string title: Detail description of the state readOnly: true description: WatchModelVersionResponse contains the state of a model. WebhookEndpoint: type: object properties: url: type: string description: Webhook URL. readOnly: true description: type: string description: Description. readOnly: true description: WebhookEndpoint describe a webhook endpoint. longrunning.Operation: type: object properties: name: type: string description: |- The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`. metadata: description: |- Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. allOf: - $ref: '#/definitions/Any' done: type: boolean description: |- If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. error: description: The error result of the operation in case of failure or cancellation. allOf: - $ref: '#/definitions/rpc.Status' response: description: |- The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. allOf: - $ref: '#/definitions/Any' description: |- This resource represents a long-running operation that is the result of a network API call. mgmt.v1beta.Connection: type: object properties: name: type: string description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/connections/{connection}`. readOnly: true id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "con-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "my-google-drive" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true namespaceId: type: string description: 'Field 9: ID of the namespace owning the connection.' readOnly: true integrationId: type: string description: |- Field 10: Integration ID. It determines for which type of components can reference this connection. integrationTitle: type: string description: |- Field 11: Integration title. This helps the console display the results grouped by integration ID without needing an extra call to fetch title by integration ID. readOnly: true method: description: |- Field 12: Connection method. It references the setup schema provided by the integration. allOf: - $ref: '#/definitions/mgmt.v1beta.Connection.Method' setup: type: object description: |- Field 13: Connection details. This field is required on creation, optional on view. When viewing the connection details, the setup values will be redacted. view: title: |- Field 14: View defines how the connection is presented. The following fields are only shown in the FULL view: - setup - scopes - oAuthAccessDetails readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.View' scopes: type: array items: type: string description: |- Field 15: A list of scopes that identify the resources that the connection will be able to access on the user's behalf. This is typically passed on creation when the setup has been generated through an OAuth flow with a limited set of scopes. oAuthAccessDetails: type: object description: |- Field 16: When the connection method is METHOD_OAUTH, the access token might come with some extra information that might vary across vendors. This information is passed as connection metadata. identity: type: string description: |- Field 17: When the connection method is METHOD_OAUTH, this field will hold the identity (e.g., email, username) with which the access token has been generated. title: |- Connection contains the parameters to communicate with a 3rd party app. A component may reference a connection in their setup. One connection may be used by several components and pipelines. Field ordering follows AIP standard: name(1), id(2), display_name(3), slug(4), aliases(5), description(6) required: - displayName - integrationId - method - setup mgmt.v1beta.Connection.Method: type: string enum: - METHOD_DICTIONARY - METHOD_OAUTH description: |- Method defines how the connection is set up. - METHOD_DICTIONARY: Key-value collection. The user is responsible of fetching the connection details from the 3rd party service. - METHOD_OAUTH: Access token created via OAuth 2.0 authorization. mgmt.v1beta.GetIntegrationResponse: type: object properties: integration: description: The requested integration. readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.Integration' description: GetIntegrationResponse contains the requested integration. mgmt.v1beta.Integration: type: object properties: id: type: string description: |- Field 1: Identifier of the integration, which references a component definition. Components with that definition ID will be able to use the connections produced by this integration. readOnly: true title: type: string description: 'Field 2: Title, reflects the app name.' readOnly: true description: type: string description: 'Field 3: Short description of the integrated app.' readOnly: true vendor: type: string description: 'Field 4: Integrated app vendor name.' readOnly: true icon: type: string description: |- Field 5: Integration icon. This is a path that's relative to the root of the component implementation and that allows frontend applications to pull and locate the icons. See the `icon` field in the `ComponentDefinition` entity for more information. readOnly: true helpLink: description: |- Field 6: Reference to the vendor's documentation to expand the integration details. readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.Integration.Link' setupSchema: type: object description: |- Field 7: The connection setup field definitions. Each integration will require different data to connect to the 3rd party app. readOnly: true oAuthConfig: description: |- Field 8: Configuration parameters required for the OAuth setup flow. This field will be present only if the integration supports OAuth 2.0. readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.Integration.OAuthConfig' view: title: |- Field 9: View defines how the integration is presented. The following fields are only shown in the FULL view: - setupSchema - oAuthConfig readOnly: true allOf: - $ref: '#/definitions/mgmt.v1beta.View' description: |- Integration contains the parameters to create a connection between components and 3rd party apps. mgmt.v1beta.Integration.Link: type: object properties: text: type: string description: Text contains the message to display. readOnly: true url: type: string description: URL contains the reference the link will redirect to. readOnly: true description: Link contains the information to display an reference to an external URL. mgmt.v1beta.Integration.OAuthConfig: type: object properties: authUrl: type: string description: |- The URL of the OAuth server to initiate the authentication and authorization process. readOnly: true accessUrl: type: string description: |- The URL of the OAuth server to exchange the authorization code for an access token. readOnly: true scopes: type: array items: type: string description: |- A list of scopes that identify the resources that the connection will be able to access on the user's behalf. readOnly: true description: |- OAuthConfig contains the configuration parameters for fetching an access token via an OAuth 2.0 flow. mgmt.v1beta.ListIntegrationsResponse: type: object properties: integrations: type: array items: type: object $ref: '#/definitions/mgmt.v1beta.Integration' description: A list of integrations matching the request parameters. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of items. readOnly: true description: ListIntegrationsResponse contains a paginated list of integrations. mgmt.v1beta.ListPipelineIDsByConnectionIDResponse: type: object properties: pipelineIds: type: array items: type: string description: A list of pipeline IDs matching the request parameters. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of items. readOnly: true description: |- ListPipelineIDsByConnectionIDResponse contains a paginated list of integrations. mgmt.v1beta.Permission: type: object properties: canEdit: type: boolean description: Defines whether the resource can be modified. readOnly: true description: Permission defines how a resource can be used. mgmt.v1beta.View: type: string enum: - VIEW_BASIC - VIEW_FULL description: |- View defines how a resource is presented. It can be used as a parameter in a method request to allow clients to select the amount of information they want in the response. - VIEW_BASIC: Default view, only includes basic information. - VIEW_FULL: Full representation. pipeline.v1beta.Connection: type: object properties: name: type: string description: |- Field 1: Canonical resource name. Format: `namespaces/{namespace}/connections/{connection}`. readOnly: true id: type: string title: |- Field 2: Immutable canonical resource ID (80-96 bits entropy, base62). Example: "con-8f3a2k9E7c1" readOnly: true displayName: type: string description: 'Field 3: Human-readable display name for UI.' slug: type: string title: |- Field 4: URL-friendly slug (NO prefix). If omitted, server generates from display_name. If provided, server validates and persists it. Slug is NOT part of resource identity. Example: "my-google-drive" aliases: type: array items: type: string description: |- Field 5: Previous slugs for backward compatibility. When display_name changes, a new slug is generated and old slugs are stored here. readOnly: true description: type: string description: 'Field 6: Optional description.' createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Last update time.' readOnly: true namespaceId: type: string description: 'Field 9: ID of the namespace owning the connection.' readOnly: true integrationId: type: string description: |- Field 10: Integration ID. It determines for which type of components can reference this connection. integrationTitle: type: string description: |- Field 11: Integration title. This helps the console display the results grouped by integration ID without needing an extra call to fetch title by integration ID. readOnly: true method: description: |- Field 12: Connection method. It references the setup schema provided by the integration. allOf: - $ref: '#/definitions/pipeline.v1beta.Connection.Method' setup: type: object description: |- Field 13: Connection details. This field is required on creation, optional on view. When viewing the connection details, the setup values will be redacted. view: title: |- Field 14: View defines how the connection is presented. The following fields are only shown in the FULL view: - setup - scopes - oAuthAccessDetails readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.View' scopes: type: array items: type: string description: |- Field 15: A list of scopes that identify the resources that the connection will be able to access on the user's behalf. This is typically passed on creation when the setup has been generated through an OAuth flow with a limited set of scopes. oAuthAccessDetails: type: object description: |- Field 16: When the connection method is METHOD_OAUTH, the access token might come with some extra information that might vary across vendors. This information is passed as connection metadata. identity: type: string description: |- Field 17: When the connection method is METHOD_OAUTH, this field will hold the identity (e.g., email, username) with which the access token has been generated. title: |- Connection contains the parameters to communicate with a 3rd party app. A component may reference a connection in their setup. One connection may be used by several components and pipelines. Field ordering follows AIP standard: name(1), id(2), display_name(3), slug(4), aliases(5), description(6) required: - displayName - integrationId - method - setup pipeline.v1beta.Connection.Method: type: string enum: - METHOD_DICTIONARY - METHOD_OAUTH description: |- Method defines how the connection is set up. - METHOD_DICTIONARY: Key-value collection. The user is responsible of fetching the connection details from the 3rd party service. - METHOD_OAUTH: Access token created via OAuth 2.0 authorization. pipeline.v1beta.GetIntegrationResponse: type: object properties: integration: description: The requested integration. readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.Integration' description: GetIntegrationResponse contains the requested integration. pipeline.v1beta.Integration: type: object properties: id: type: string description: |- Field 1: Identifier of the integration, which references a component definition. Components with that definition ID will be able to use the connections produced by this integration. readOnly: true title: type: string description: 'Field 2: Title, reflects the app name.' readOnly: true description: type: string description: 'Field 3: Short description of the integrated app.' readOnly: true vendor: type: string description: 'Field 4: Integrated app vendor name.' readOnly: true icon: type: string description: |- Field 5: Integration icon. This is a path that's relative to the root of the component implementation and that allows frontend applications to pull and locate the icons. See the `icon` field in the `ComponentDefinition` entity for more information. readOnly: true helpLink: description: |- Field 6: Reference to the vendor's documentation to expand the integration details. readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.Integration.Link' setupSchema: type: object description: |- Field 7: The connection setup field definitions. Each integration will require different data to connect to the 3rd party app. readOnly: true oAuthConfig: description: |- Field 8: Configuration parameters required for the OAuth setup flow. This field will be present only if the integration supports OAuth 2.0. readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.Integration.OAuthConfig' view: title: |- Field 9: View defines how the integration is presented. The following fields are only shown in the FULL view: - setupSchema - oAuthConfig readOnly: true allOf: - $ref: '#/definitions/pipeline.v1beta.View' description: |- Integration contains the parameters to create a connection between components and 3rd party apps. pipeline.v1beta.Integration.Link: type: object properties: text: type: string description: Text contains the message to display. readOnly: true url: type: string description: URL contains the reference the link will redirect to. readOnly: true description: Link contains the information to display an reference to an external URL. pipeline.v1beta.Integration.OAuthConfig: type: object properties: authUrl: type: string description: |- The URL of the OAuth server to initiate the authentication and authorization process. readOnly: true accessUrl: type: string description: |- The URL of the OAuth server to exchange the authorization code for an access token. readOnly: true scopes: type: array items: type: string description: |- A list of scopes that identify the resources that the connection will be able to access on the user's behalf. readOnly: true description: |- OAuthConfig contains the configuration parameters for fetching an access token via an OAuth 2.0 flow. pipeline.v1beta.ListIntegrationsResponse: type: object properties: integrations: type: array items: type: object $ref: '#/definitions/pipeline.v1beta.Integration' description: A list of integrations matching the request parameters. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of items. readOnly: true description: ListIntegrationsResponse contains a paginated list of integrations. pipeline.v1beta.ListPipelineIDsByConnectionIDResponse: type: object properties: pipelineIds: type: array items: type: string description: A list of pipeline IDs matching the request parameters. readOnly: true nextPageToken: type: string description: Next page token. readOnly: true totalSize: type: integer format: int32 description: Total number of items. readOnly: true description: |- ListPipelineIDsByConnectionIDResponse contains a paginated list of integrations. pipeline.v1beta.Permission: type: object properties: canEdit: type: boolean description: Defines whether the pipeline can be modified. canTrigger: type: boolean description: Defines whether the pipeline can be executed. canRelease: type: boolean description: Defines whether the pipeline can be released. description: Permission defines how a pipeline can be used. pipeline.v1beta.View: type: string enum: - VIEW_BASIC - VIEW_FULL description: |- View defines how a resource is presented. Most resources can share this view definition, the particular meaning of each value should be defined in the resource itself. Certain resources might have their own View definition if they need to implement more than 2 (basic / full) views. - VIEW_BASIC: Default view. - VIEW_FULL: Full representation. rpc.Status: type: object properties: code: type: integer format: int32 description: |- The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code]. message: type: string description: |- A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client. details: type: array items: type: object $ref: '#/definitions/Any' description: |- A list of messages that carry the error details. There is a common set of message types for APIs to use. description: |- The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). v1alpha.GetOperationResponse: type: object properties: operation: description: The long-running operation. readOnly: true allOf: - $ref: '#/definitions/longrunning.Operation' description: |- GetOperationResponse represents a response to query a long-running operation. v1alpha.Permission: type: object properties: canEdit: type: boolean description: Defines whether the pipeline can be modified. canTrigger: type: boolean description: Defines whether the pipeline can be executed. description: Permission defines how a pipeline can be used. v1alpha.ReleaseStage: type: string enum: - RELEASE_STAGE_ALPHA - RELEASE_STAGE_BETA - RELEASE_STAGE_GENERALLY_AVAILABLE - RELEASE_STAGE_CUSTOM description: |- ReleaseStage defines the stage of a release. - RELEASE_STAGE_ALPHA: Alpha. - RELEASE_STAGE_BETA: Beta. - RELEASE_STAGE_GENERALLY_AVAILABLE: Generally available. - RELEASE_STAGE_CUSTOM: Custom. v1alpha.State: type: string enum: - STATE_OFFLINE - STATE_ACTIVE - STATE_IDLE - STATE_ERROR - STATE_STARTING - STATE_SCALING_UP - STATE_SCALING_DOWN description: |- State describes the state of a model. See [Deploy Models](https://instill-ai.dev/docs/latest/model/deploy) for more information. - STATE_OFFLINE: Offline is the state when the model instance number is 0. - STATE_ACTIVE: Active is the state when a model is processing requests. - STATE_IDLE: Idle is the state when a model is alive but not processing requests. - STATE_ERROR: Error is the state when the model is undeployable. - STATE_STARTING: Starting is the state when the system is provisioning the necessary resources for the model - STATE_SCALING_UP: Scaling Up is the transition state when the system is provisioning compute resource for this model instance. - STATE_SCALING_DOWN: Scaling is the transition state when the system is releasing compute resource for this model instance. v1alpha.View: type: string enum: - VIEW_BASIC - VIEW_FULL description: |- View defines how a model definition is presented. - VIEW_BASIC: Default view, only includes basic information (omits `model_spec`). - VIEW_FULL: Full representation. v1beta.GetOperationResponse: type: object properties: operation: description: The long-running operation. readOnly: true allOf: - $ref: '#/definitions/longrunning.Operation' description: GetOperationResponse contains the long-running operation details. v1beta.User: type: object properties: name: type: string title: |- Field 1: Canonical resource name. Format: `users/{user}`. Example: "users/john-doe" readOnly: true id: type: string title: |- Field 2: Resource ID (used in `name` as the last segment). This conforms to RFC-1034, which restricts to letters, numbers, and hyphen, with the first character a letter, the last a letter or a number, and a 63 character maximum. Auto-generated by backend: "usr-" prefix + immutable hash (80 bits entropy, base62). Example: "usr-8f3A2k9E7c1xYz" readOnly: true displayName: type: string description: |- Field 3: Human-readable display name for UI. This is copied from profile.display_name for convenience. readOnly: true slug: type: string description: |- Field 4: URL-friendly slug (NO prefix). Derived from display_name, used for human-friendly URLs. readOnly: true aliases: type: array items: type: string description: 'Field 5: Previous slugs for backward compatibility.' readOnly: true description: type: string description: 'Field 6: Optional description / bio.' readOnly: true createTime: type: string format: date-time description: 'Field 7: Creation time.' readOnly: true updateTime: type: string format: date-time description: 'Field 8: Update time.' readOnly: true profile: description: Profile containing additional user information. allOf: - $ref: '#/definitions/UserProfile' email: type: string description: Email. readOnly: true description: |- User describes an individual that interacts with Instill AI. It doesn't contain any private information about the user. AIP Standard Field Ordering: - name (field 1): Canonical resource name - id (field 2): Immutable canonical resource ID - display_name (field 3): Human-readable display name - slug (field 4): URL-friendly slug - aliases (field 5): Previous slugs for backward compatibility - description (field 6): Optional description - create_time (field 7): Creation timestamp - update_time (field 8): Update timestamp securityDefinitions: Bearer: type: apiKey description: Enter the token with the `Bearer ` prefix, e.g. `Bearer instill_sk_***` name: Authorization in: header x-default: Bearer instill_sk_*** security: - Bearer: [] externalDocs: description: More about Instill Core url: https://docs.instill-ai.com