/** * This file was auto-generated by openapi-typescript. * Do not make direct changes to the file. */ export interface paths { "/api/v1/apps": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** List store apps */ get: operations["listStoreApps"]; put?: never; /** Register a new app and initial release */ post: operations["registerApp"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/apps/{appKey}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get a store app */ get: operations["getStoreApp"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/apps/{appKey}/versions": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** List approved versions for a store app */ get: operations["listStoreAppVersions"]; put?: never; /** Create a new app version */ post: operations["createAppVersion"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/apps/{appKey}/versions/{versionId}/submit": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** Submit an app version for review */ post: operations["submitAppVersionForReview"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** List installed apps and workspace-visible catalog */ get: operations["listWorkspaceApps"]; put?: never; /** Install an app into a workspace */ post: operations["installWorkspaceApp"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get an installed workspace app */ get: operations["getWorkspaceInstalledApp"]; put?: never; post?: never; /** Uninstall a workspace app */ delete: operations["uninstallWorkspaceApp"]; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/permissions": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get granted workspace app permissions */ get: operations["getWorkspaceAppPermissions"]; /** Update granted workspace app permissions */ put: operations["updateWorkspaceAppPermissions"]; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/secrets": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** List app secrets */ get: operations["listWorkspaceAppSecrets"]; put?: never; /** Create or rotate app secret */ post: operations["createWorkspaceAppSecret"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/secrets/{secretId}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; post?: never; /** Delete app secret */ delete: operations["deleteWorkspaceAppSecret"]; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/oauth-connections": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** List app OAuth connections */ get: operations["listWorkspaceAppOauthConnections"]; put?: never; /** Create or update app OAuth connection */ post: operations["createWorkspaceAppOauthConnection"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/oauth-connections/{connectionId}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; post?: never; /** Delete app OAuth connection */ delete: operations["deleteWorkspaceAppOauthConnection"]; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/deliveries": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** List app deliveries */ get: operations["listWorkspaceAppDeliveries"]; put?: never; /** Send a signed test delivery */ post: operations["sendWorkspaceAppTestDelivery"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/deliveries/{deliveryId}/replay": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** Replay a stored app delivery */ post: operations["replayWorkspaceAppDelivery"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/files/{fileId}": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Read an app-backed file document */ get: operations["getAppFileDocument"]; put?: never; post?: never; delete?: never; options?: never; head?: never; /** Update an app-backed file document */ patch: operations["updateAppFileDocument"]; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/notifications": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** Create an app notification */ post: operations["createAppNotification"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/index-documents": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** Upsert app index documents */ post: operations["upsertAppIndexDocuments"]; /** Delete app index documents */ delete: operations["deleteAppIndexDocuments"]; options?: never; head?: never; patch?: never; trace?: never; }; "/api/v1/workspaces/{workspaceSlug}/apps/{appKey}/ambient/events": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** Emit app ambient events */ post: operations["emitAppAmbientEvents"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; } export type webhooks = Record; export interface components { schemas: { ErrorEnvelope: { error: { code: string; message: string; }; }; OkResponse: { data: { /** @constant */ ok: true; }; }; AppCatalogItem: { appId: string; appKey: string; name: string; description: string | null; iconUrl: string | null; status: string; latestPublishedVersion: string | null; latestPublishedVersionId: string | null; isInstalled: boolean; }; RegisteredAppDetail: { appId: string; appKey: string; name: string; description: string | null; iconUrl: string | null; status: string; ownerUserId: string | null; storeListed: boolean; latestPublishedVersion: string | null; latestPublishedVersionId: string | null; }; RegisteredAppVersionSummary: { versionId: string; version: string; status: string; reviewStatus: string; apiBaseUrl: string; permissions: string[]; notificationChannels: { key: string; name: string; description?: string; defaultDeliveries: string[]; defaultPriority: string; }[]; kairo: { [key: string]: unknown; } | null; fileTypes: { typeKey: string; name: string; description: string | null; }[]; /** Format: date-time */ submittedAt: string | null; /** Format: date-time */ reviewedAt: string | null; reviewNotes: string | null; /** Format: date-time */ publishedAt: string | null; /** Format: date-time */ createdAt: string; /** Format: date-time */ updatedAt: string; }; InstalledAppSummary: { installId: string; appId: string; appKey: string; name: string; description: string | null; iconUrl: string | null; status: string; installScope: string; scopeSubjectId: string; version: string | null; }; StoreAppsResponse: { data: { apps: components["schemas"]["RegisteredAppDetail"][]; }; }; StoreAppResponse: { data: { app: components["schemas"]["RegisteredAppDetail"]; }; }; StoreAppVersionsResponse: { data: { versions: components["schemas"]["RegisteredAppVersionSummary"][]; }; }; WorkspaceAppsResponse: { data: { installedApps: components["schemas"]["InstalledAppSummary"][]; catalog: components["schemas"]["AppCatalogItem"][]; permissions: { canManageApps: boolean; }; }; }; InstallWorkspaceAppInput: { appId: string; pinnedVersionId?: string; grantedPermissions?: string[]; }; InstallWorkspaceAppResponse: { data: { installId: string; appId: string; appKey: string; version: string; grantedPermissions: string[]; }; }; WorkspaceInstalledAppResponse: { data: { install: components["schemas"]["InstalledAppSummary"]; permissions: { canManageApps: boolean; }; }; }; WorkspaceAppPermissionsResponse: { data: { install: components["schemas"]["InstalledAppSummary"]; availablePermissions: string[]; grantedPermissions: string[]; permissions: { canManageApps: boolean; }; }; }; RegisterAppInput: { version: string; manifest: { key: string; name: string; description?: string; iconUrl?: string; permissions: string[]; notificationChannels: { key: string; name: string; description?: string; defaultDeliveries: string[]; defaultPriority: string; }[]; kairo?: { [key: string]: unknown; }; hosting: { /** @constant */ mode: "external"; baseUrl: string; }; }; fileTypes: { typeKey: string; name: string; description?: string; /** @constant */ storage: "coline_document"; indexable: boolean; homeRenderMode: string; }[]; }; AppVersionMutationResponse: { data: { appId: string; appKey: string; versionId: string; version: string; }; }; SubmitAppVersionForReviewResponse: { data: { appId: string; appKey: string; versionId: string; version: string; /** @constant */ reviewStatus: "submitted"; storeListed: boolean; }; }; WorkspaceAppSecretsResponse: { data: { install: components["schemas"]["InstalledAppSummary"]; secrets: { id: string; key: string; /** Format: date-time */ createdAt: string; /** Format: date-time */ updatedAt: string; }[]; permissions: { canManageApps: boolean; }; }; }; CreateWorkspaceAppSecretResponse: { data: { secret: { id: string; key: string; /** Format: date-time */ createdAt: string; /** Format: date-time */ updatedAt: string; }; value: string; }; }; WorkspaceAppOauthConnectionsResponse: { data: { install: components["schemas"]["InstalledAppSummary"]; connections: { id: string; providerKey: string; externalAccountId: string | null; scopes: string[]; /** Format: date-time */ tokenExpiresAt: string | null; /** Format: date-time */ createdAt: string; /** Format: date-time */ updatedAt: string; }[]; permissions: { canManageApps: boolean; }; }; }; CreateWorkspaceAppOauthConnectionResponse: { data: { connection: { id: string; providerKey: string; externalAccountId: string | null; scopes: string[]; /** Format: date-time */ tokenExpiresAt: string | null; /** Format: date-time */ createdAt: string; /** Format: date-time */ updatedAt: string; }; }; }; WorkspaceAppDeliveriesResponse: { data: { install: components["schemas"]["InstalledAppSummary"]; deliveries: { id: string; eventType: string; targetUrl: string; status: string; attemptCount: number; lastStatusCode: number | null; /** Format: date-time */ createdAt: string; /** Format: date-time */ updatedAt: string; }[]; permissions: { canManageApps: boolean; }; }; }; SendWorkspaceAppTestDeliveryResponse: { data: { delivery: { id: string; eventType: string; targetUrl: string; status: string; attemptCount: number; lastStatusCode: number | null; /** Format: date-time */ createdAt: string; /** Format: date-time */ updatedAt: string; }; }; }; AppFileDocumentResponse: { data: { file: { id: string; name: string; fileType: string; appKey: string; appName: string; typeLabel: string; openHref: string; /** Format: date-time */ updatedAt: string; }; document: { [key: string]: unknown; }; version: number; capabilities: { canRead: boolean; canWrite: boolean; canManage: boolean; }; }; }; AppFileDocumentUpdateResponse: { data: { document: { [key: string]: unknown; }; version: number; /** Format: date-time */ updatedAt: string; }; }; CreateAppNotificationInput: { channelKey: string; typeKey: string; recipients: { userId: string; }[]; title: string; body?: string; targetUrl?: string; icon?: string; priority?: string; dedupeKey?: string; metadata?: { [key: string]: unknown; }; }; UpsertAppIndexDocumentsInput: { documents: { documentKey: string; documentType: string; fileId?: string; title: string; body?: string; url?: string; metadata?: { [key: string]: unknown; }; visibilityMode?: string; visibility?: { subjectType: string; subjectId: string; }[]; }[]; }; UpsertAppIndexDocumentsResponse: { data: { documents: { id: string; documentKey: string; visibilityMode: string; }[]; }; }; DeleteAppIndexDocumentsInput: { documentKeys: string[]; }; DeleteAppIndexDocumentsResponse: { data: { deleted: { id: string; documentKey: string; }[]; }; }; EmitAppAmbientEventsInput: { events: { sourceKind: string; action: string; entityType: string; entityId: string; actorUserId?: string; containerType?: string; containerId?: string; /** Format: date-time */ occurredAt?: string; dedupeKey: string; payload?: { [key: string]: unknown; }; metadata?: { [key: string]: unknown; }; schemaVersion?: number; }[]; }; EmitAppAmbientEventsResponse: { data: { events: { id: string; dedupeKey: string; }[]; }; }; }; responses: never; parameters: never; requestBodies: never; headers: never; pathItems: never; } export type $defs = Record; export interface operations { listStoreApps: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { /** @description Store apps */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["StoreAppsResponse"]; }; }; }; }; registerApp: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["RegisterAppInput"]; }; }; responses: { /** @description Registered app */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AppVersionMutationResponse"]; }; }; }; }; getStoreApp: { parameters: { query?: never; header?: never; path: { appKey: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description Store app detail */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["StoreAppResponse"]; }; }; /** @description App not found */ 404: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["ErrorEnvelope"]; }; }; }; }; listStoreAppVersions: { parameters: { query?: never; header?: never; path: { appKey: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description Approved store app versions */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["StoreAppVersionsResponse"]; }; }; }; }; createAppVersion: { parameters: { query?: never; header?: never; path: { appKey: string; }; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["RegisterAppInput"]; }; }; responses: { /** @description Created app version */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AppVersionMutationResponse"]; }; }; }; }; submitAppVersionForReview: { parameters: { query?: never; header?: never; path: { appKey: string; versionId: string; }; cookie?: never; }; requestBody: { content: { "application/json": { storeListed?: boolean; }; }; }; responses: { /** @description Submitted app version */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["SubmitAppVersionForReviewResponse"]; }; }; }; }; listWorkspaceApps: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description Workspace app data */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["WorkspaceAppsResponse"]; }; }; }; }; installWorkspaceApp: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; }; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["InstallWorkspaceAppInput"]; }; }; responses: { /** @description Installed app */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["InstallWorkspaceAppResponse"]; }; }; }; }; getWorkspaceInstalledApp: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description Installed app */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["WorkspaceInstalledAppResponse"]; }; }; }; }; uninstallWorkspaceApp: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description App uninstalled */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["OkResponse"]; }; }; }; }; getWorkspaceAppPermissions: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description Workspace app permissions */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["WorkspaceAppPermissionsResponse"]; }; }; }; }; updateWorkspaceAppPermissions: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody: { content: { "application/json": { grantedPermissions: string[]; }; }; }; responses: { /** @description Updated permissions */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["WorkspaceAppPermissionsResponse"]; }; }; }; }; listWorkspaceAppSecrets: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description App secrets */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["WorkspaceAppSecretsResponse"]; }; }; }; }; createWorkspaceAppSecret: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody: { content: { "application/json": { key: string; value: string; }; }; }; responses: { /** @description App secret stored */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["CreateWorkspaceAppSecretResponse"]; }; }; }; }; deleteWorkspaceAppSecret: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; secretId: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description App secret deleted */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["OkResponse"]; }; }; }; }; listWorkspaceAppOauthConnections: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description App OAuth connections */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["WorkspaceAppOauthConnectionsResponse"]; }; }; }; }; createWorkspaceAppOauthConnection: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody: { content: { "application/json": { providerKey: string; externalAccountId?: string; accessToken: string; refreshToken?: string; scopes: string[]; /** Format: date-time */ tokenExpiresAt?: string; metadata?: { [key: string]: unknown; }; }; }; }; responses: { /** @description App OAuth connection stored */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["CreateWorkspaceAppOauthConnectionResponse"]; }; }; }; }; deleteWorkspaceAppOauthConnection: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; connectionId: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description App OAuth connection deleted */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["OkResponse"]; }; }; }; }; listWorkspaceAppDeliveries: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description App deliveries */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["WorkspaceAppDeliveriesResponse"]; }; }; }; }; sendWorkspaceAppTestDelivery: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody: { content: { "application/json": { eventType: string; targetUrl?: string; payload: { [key: string]: unknown; }; }; }; }; responses: { /** @description Test delivery recorded */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["SendWorkspaceAppTestDeliveryResponse"]; }; }; }; }; replayWorkspaceAppDelivery: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; deliveryId: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description Delivery replayed */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["SendWorkspaceAppTestDeliveryResponse"]; }; }; }; }; getAppFileDocument: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; fileId: string; }; cookie?: never; }; requestBody?: never; responses: { /** @description App-backed file document */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AppFileDocumentResponse"]; }; }; }; }; updateAppFileDocument: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; fileId: string; }; cookie?: never; }; requestBody: { content: { "application/json": { document: { [key: string]: unknown; }; }; }; }; responses: { /** @description Updated app-backed file document */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["AppFileDocumentUpdateResponse"]; }; }; }; }; createAppNotification: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["CreateAppNotificationInput"]; }; }; responses: { /** @description Notification created */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["OkResponse"]; }; }; }; }; upsertAppIndexDocuments: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["UpsertAppIndexDocumentsInput"]; }; }; responses: { /** @description Index documents upserted */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["UpsertAppIndexDocumentsResponse"]; }; }; }; }; deleteAppIndexDocuments: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["DeleteAppIndexDocumentsInput"]; }; }; responses: { /** @description Index documents deleted */ 200: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["DeleteAppIndexDocumentsResponse"]; }; }; }; }; emitAppAmbientEvents: { parameters: { query?: never; header?: never; path: { workspaceSlug: string; appKey: string; }; cookie?: never; }; requestBody: { content: { "application/json": components["schemas"]["EmitAppAmbientEventsInput"]; }; }; responses: { /** @description Ambient events accepted */ 201: { headers: { [name: string]: unknown; }; content: { "application/json": components["schemas"]["EmitAppAmbientEventsResponse"]; }; }; }; }; }