@lovable.dev/sdk 1.6.1 → 1.7.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -2
- package/dist/index.d.ts +1602 -655
- package/dist/index.js +33 -14
- package/dist/index.js.map +1 -1
- package/dist/schemas.d.ts +596 -316
- package/dist/schemas.js +181 -190
- package/dist/schemas.js.map +1 -1
- package/package.json +1 -1
- package/src/client.ts +40 -20
- package/src/generated/paths.ts +1599 -652
- package/src/generated/version.ts +2 -0
- package/src/generated/zod/zod.gen.ts +194 -201
- package/src/types.ts +2 -8
package/src/generated/paths.ts
CHANGED
|
@@ -56,7 +56,7 @@ export interface paths {
|
|
|
56
56
|
/**
|
|
57
57
|
* Query workspace audit logs
|
|
58
58
|
* @deprecated
|
|
59
|
-
* @description Deprecated compatibility alias.
|
|
59
|
+
* @description Deprecated compatibility alias. Pass workspace_id as a query parameter.
|
|
60
60
|
*/
|
|
61
61
|
get: operations["get-v1-audit-logs"];
|
|
62
62
|
put?: never;
|
|
@@ -1167,6 +1167,26 @@ export interface paths {
|
|
|
1167
1167
|
patch?: never;
|
|
1168
1168
|
trace?: never;
|
|
1169
1169
|
};
|
|
1170
|
+
"/v1/remix-jobs/{job_id}": {
|
|
1171
|
+
parameters: {
|
|
1172
|
+
query?: never;
|
|
1173
|
+
header?: never;
|
|
1174
|
+
path?: never;
|
|
1175
|
+
cookie?: never;
|
|
1176
|
+
};
|
|
1177
|
+
/**
|
|
1178
|
+
* Get remix job
|
|
1179
|
+
* @description Returns the status of an async remix started with POST /v1/projects, keyed by the job_id it returned. Poll until status is completed (result.project_id is set) or error (error_message explains the failure). Poll no more than once every 2 seconds and honor Retry-After on 429 responses. Jobs remain queryable while Temporal retains the workflow history; after retention expires this route returns 404. Reusing the same job_id is idempotent and returns the same terminal result.
|
|
1180
|
+
*/
|
|
1181
|
+
get: operations["get-v1-remix-jobs-job_id"];
|
|
1182
|
+
put?: never;
|
|
1183
|
+
post?: never;
|
|
1184
|
+
delete?: never;
|
|
1185
|
+
options?: never;
|
|
1186
|
+
head?: never;
|
|
1187
|
+
patch?: never;
|
|
1188
|
+
trace?: never;
|
|
1189
|
+
};
|
|
1170
1190
|
"/v1/security-scans": {
|
|
1171
1191
|
parameters: {
|
|
1172
1192
|
query?: never;
|
|
@@ -1805,6 +1825,26 @@ export interface paths {
|
|
|
1805
1825
|
patch?: never;
|
|
1806
1826
|
trace?: never;
|
|
1807
1827
|
};
|
|
1828
|
+
"/v1/workspaces/{workspace_id}/groups": {
|
|
1829
|
+
parameters: {
|
|
1830
|
+
query?: never;
|
|
1831
|
+
header?: never;
|
|
1832
|
+
path?: never;
|
|
1833
|
+
cookie?: never;
|
|
1834
|
+
};
|
|
1835
|
+
/**
|
|
1836
|
+
* List workspace groups
|
|
1837
|
+
* @description Returns the workspace's groups, sorted by name. Use a group's id as the target id of a type "group" audience entry when publishing a project with visibility "custom" via POST or PATCH /v1/projects/{project_id}/publish.
|
|
1838
|
+
*/
|
|
1839
|
+
get: operations["get-v1-workspaces-workspace_id-groups"];
|
|
1840
|
+
put?: never;
|
|
1841
|
+
post?: never;
|
|
1842
|
+
delete?: never;
|
|
1843
|
+
options?: never;
|
|
1844
|
+
head?: never;
|
|
1845
|
+
patch?: never;
|
|
1846
|
+
trace?: never;
|
|
1847
|
+
};
|
|
1808
1848
|
"/v1/workspaces/{workspace_id}/knowledge": {
|
|
1809
1849
|
parameters: {
|
|
1810
1850
|
query?: never;
|
|
@@ -1998,94 +2038,6 @@ export interface paths {
|
|
|
1998
2038
|
patch?: never;
|
|
1999
2039
|
trace?: never;
|
|
2000
2040
|
};
|
|
2001
|
-
"/v1beta/projects/{project_id}/cloud": {
|
|
2002
|
-
parameters: {
|
|
2003
|
-
query?: never;
|
|
2004
|
-
header?: never;
|
|
2005
|
-
path?: never;
|
|
2006
|
-
cookie?: never;
|
|
2007
|
-
};
|
|
2008
|
-
/**
|
|
2009
|
-
* Get project cloud telemetry (Preview)
|
|
2010
|
-
* @description Returns cloud telemetry for a project's database, matching the editor's Cloud settings panel: disk-space usage, compute instance tier, lifecycle status and pause state, region, Postgres version, and resource-pressure alerts. Values are platform measurements cached for up to a few minutes; disk.timestamp reports when the platform measured it. Individual fields are omitted while their lookup is temporarily unavailable.
|
|
2011
|
-
*
|
|
2012
|
-
* This operation is in public preview (beta) and served under `/v1beta`. Request and response shapes may change before it graduates to the stable `/v1` surface.
|
|
2013
|
-
*/
|
|
2014
|
-
get: operations["get-v1beta-projects-project_id-cloud"];
|
|
2015
|
-
put?: never;
|
|
2016
|
-
post?: never;
|
|
2017
|
-
delete?: never;
|
|
2018
|
-
options?: never;
|
|
2019
|
-
head?: never;
|
|
2020
|
-
patch?: never;
|
|
2021
|
-
trace?: never;
|
|
2022
|
-
};
|
|
2023
|
-
"/v1beta/workspaces/{workspace_id}/audit-logs": {
|
|
2024
|
-
parameters: {
|
|
2025
|
-
query?: never;
|
|
2026
|
-
header?: never;
|
|
2027
|
-
path?: never;
|
|
2028
|
-
cookie?: never;
|
|
2029
|
-
};
|
|
2030
|
-
/**
|
|
2031
|
-
* Query workspace audit logs (Preview)
|
|
2032
|
-
* @description Returns workspace audit log entries newest first (event timestamp descending, event ID as the cursor tie-breaker), paginated via an opaque cursor. Pagination and total-count behavior may change before this operation graduates to the stable surface.
|
|
2033
|
-
*
|
|
2034
|
-
* This operation is in public preview (beta) and served under `/v1beta`. Request and response shapes may change before it graduates to the stable `/v1` surface.
|
|
2035
|
-
*/
|
|
2036
|
-
get: operations["get-v1beta-workspaces-workspace_id-audit-logs"];
|
|
2037
|
-
put?: never;
|
|
2038
|
-
post?: never;
|
|
2039
|
-
delete?: never;
|
|
2040
|
-
options?: never;
|
|
2041
|
-
head?: never;
|
|
2042
|
-
patch?: never;
|
|
2043
|
-
trace?: never;
|
|
2044
|
-
};
|
|
2045
|
-
"/v1beta/workspaces/{workspace_id}/message-exports": {
|
|
2046
|
-
parameters: {
|
|
2047
|
-
query?: never;
|
|
2048
|
-
header?: never;
|
|
2049
|
-
path?: never;
|
|
2050
|
-
cookie?: never;
|
|
2051
|
-
};
|
|
2052
|
-
get?: never;
|
|
2053
|
-
put?: never;
|
|
2054
|
-
/**
|
|
2055
|
-
* Export workspace messages (Preview)
|
|
2056
|
-
* @description Allows workspace admins and owners to start a one-off export of user-authored messages from projects visible to them. Project and user filters may be combined; when both are supplied, only messages matching both are exported. The warehouse-backed snapshot can lag by up to 26 hours, defaults to the preceding 90 days, and is delivered as a ZIP containing JSONL. Poll the returned export ID; completed files expire after seven days. Filter options and delivery metadata may change before graduation.
|
|
2057
|
-
*
|
|
2058
|
-
* This operation is in public preview (beta) and served under `/v1beta`. Request and response shapes may change before it graduates to the stable `/v1` surface.
|
|
2059
|
-
*/
|
|
2060
|
-
post: operations["post-v1beta-workspaces-workspace_id-message-exports"];
|
|
2061
|
-
delete?: never;
|
|
2062
|
-
options?: never;
|
|
2063
|
-
head?: never;
|
|
2064
|
-
patch?: never;
|
|
2065
|
-
trace?: never;
|
|
2066
|
-
};
|
|
2067
|
-
"/v1beta/workspaces/{workspace_id}/message-exports/{export_id}": {
|
|
2068
|
-
parameters: {
|
|
2069
|
-
query?: never;
|
|
2070
|
-
header?: never;
|
|
2071
|
-
path?: never;
|
|
2072
|
-
cookie?: never;
|
|
2073
|
-
};
|
|
2074
|
-
/**
|
|
2075
|
-
* Get message export (Preview)
|
|
2076
|
-
* @description Returns an admin or owner's export status and a one-hour signed download URL when the export is complete and unexpired. Status and download metadata may change before graduation.
|
|
2077
|
-
*
|
|
2078
|
-
* This operation is in public preview (beta) and served under `/v1beta`. Request and response shapes may change before it graduates to the stable `/v1` surface.
|
|
2079
|
-
*/
|
|
2080
|
-
get: operations["get-v1beta-workspaces-workspace_id-message-exports-export_id"];
|
|
2081
|
-
put?: never;
|
|
2082
|
-
post?: never;
|
|
2083
|
-
delete?: never;
|
|
2084
|
-
options?: never;
|
|
2085
|
-
head?: never;
|
|
2086
|
-
patch?: never;
|
|
2087
|
-
trace?: never;
|
|
2088
|
-
};
|
|
2089
2041
|
}
|
|
2090
2042
|
export type webhooks = Record<string, never>;
|
|
2091
2043
|
export interface components {
|
|
@@ -2107,7 +2059,7 @@ export interface components {
|
|
|
2107
2059
|
creator: components["schemas"]["Creator"];
|
|
2108
2060
|
display_name: string;
|
|
2109
2061
|
documentation_url: string;
|
|
2110
|
-
/** @description True when at least one client exists for this connector in the workspace */
|
|
2062
|
+
/** @description True when at least one client or provisioned app exists for this connector in the workspace */
|
|
2111
2063
|
has_clients: boolean;
|
|
2112
2064
|
id: string;
|
|
2113
2065
|
is_enabled_for_workspace: boolean;
|
|
@@ -2122,9 +2074,25 @@ export interface components {
|
|
|
2122
2074
|
*/
|
|
2123
2075
|
who_can_create: "editors_and_admins" | "admins_only";
|
|
2124
2076
|
};
|
|
2125
|
-
|
|
2126
|
-
|
|
2127
|
-
|
|
2077
|
+
ChannelAnalytics: {
|
|
2078
|
+
lists: components["schemas"]["ChannelListsGroup"];
|
|
2079
|
+
timeSeries: components["schemas"]["ChannelTimeSeriesGroup"];
|
|
2080
|
+
};
|
|
2081
|
+
ChannelListsGroup: {
|
|
2082
|
+
page: components["schemas"]["ListData"];
|
|
2083
|
+
source: components["schemas"]["ListData"];
|
|
2084
|
+
};
|
|
2085
|
+
ChannelTimeSeriesGroup: {
|
|
2086
|
+
/** @description Bounced sessions divided by sessions, as a percentage. Legacy bounces have identical first and last page-view times; user_app_events bounces have fewer than two views and under ten seconds engagement. */
|
|
2087
|
+
bounceRate: components["schemas"]["TimeSeriesData"];
|
|
2088
|
+
/** @description Page views from sessions attributed to this channel. */
|
|
2089
|
+
pageviews: components["schemas"]["TimeSeriesData"];
|
|
2090
|
+
/** @description Page views divided by bucket session counts. */
|
|
2091
|
+
pageviewsPerVisit: components["schemas"]["TimeSeriesData"];
|
|
2092
|
+
/** @description Mean session seconds per bucket, weighted by bucket session counts for the total. Legacy uses first-to-last page view; user_app_events uses measured engagement with first-to-last fallback. */
|
|
2093
|
+
sessionDuration: components["schemas"]["TimeSeriesData"];
|
|
2094
|
+
/** @description Unique sessions active per bucket. The total sums bucket counts, matching the unfiltered analytics total. */
|
|
2095
|
+
visitors: components["schemas"]["TimeSeriesData"];
|
|
2128
2096
|
};
|
|
2129
2097
|
CommonSeamlessConnectorFeature: {
|
|
2130
2098
|
body?: string;
|
|
@@ -2139,44 +2107,75 @@ export interface components {
|
|
|
2139
2107
|
is_primary?: boolean;
|
|
2140
2108
|
name: string;
|
|
2141
2109
|
};
|
|
2142
|
-
|
|
2110
|
+
CompanyCreator: {
|
|
2111
|
+
logo_url?: string;
|
|
2143
2112
|
name: string;
|
|
2113
|
+
/**
|
|
2114
|
+
* @description discriminator enum property added by openapi-typescript
|
|
2115
|
+
* @enum {string}
|
|
2116
|
+
*/
|
|
2117
|
+
type: "company";
|
|
2144
2118
|
url: string;
|
|
2145
2119
|
};
|
|
2120
|
+
Creator: components["schemas"]["LovableCreator"] | components["schemas"]["UserCreator"] | components["schemas"]["CompanyCreator"];
|
|
2146
2121
|
CursorListResponseProjectPIIFindingDTO: {
|
|
2122
|
+
/** @description Items in this page. */
|
|
2147
2123
|
data: components["schemas"]["ProjectPIIFindingDTO"][] | null;
|
|
2124
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2148
2125
|
pagination: components["schemas"]["Pagination"];
|
|
2149
2126
|
};
|
|
2150
2127
|
CursorListResponsePublicV1ConnectorItem: {
|
|
2128
|
+
/** @description Items in this page. */
|
|
2151
2129
|
data: components["schemas"]["PublicV1ConnectorItem"][] | null;
|
|
2130
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2152
2131
|
pagination: components["schemas"]["Pagination"];
|
|
2153
2132
|
};
|
|
2154
2133
|
CursorListResponsePublicV1ProjectListItem: {
|
|
2134
|
+
/** @description Items in this page. */
|
|
2155
2135
|
data: components["schemas"]["PublicV1ProjectListItem"][] | null;
|
|
2136
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2156
2137
|
pagination: components["schemas"]["Pagination"];
|
|
2157
2138
|
};
|
|
2158
2139
|
CursorListResponseV1EditSummary: {
|
|
2140
|
+
/** @description Items in this page. */
|
|
2159
2141
|
data: components["schemas"]["V1EditSummary"][] | null;
|
|
2142
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2160
2143
|
pagination: components["schemas"]["Pagination"];
|
|
2161
2144
|
};
|
|
2162
2145
|
CursorListResponseV1MessageListItem: {
|
|
2146
|
+
/** @description Items in this page. */
|
|
2163
2147
|
data: components["schemas"]["V1MessageListItem"][] | null;
|
|
2148
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2164
2149
|
pagination: components["schemas"]["Pagination"];
|
|
2165
2150
|
};
|
|
2166
2151
|
CursorListResponseV1ProjectCollaborator: {
|
|
2152
|
+
/** @description Items in this page. */
|
|
2167
2153
|
data: components["schemas"]["V1ProjectCollaborator"][] | null;
|
|
2154
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2168
2155
|
pagination: components["schemas"]["Pagination"];
|
|
2169
2156
|
};
|
|
2170
2157
|
CursorListResponseV1ProjectSkillDTO: {
|
|
2158
|
+
/** @description Items in this page. */
|
|
2171
2159
|
data: components["schemas"]["V1ProjectSkillDTO"][] | null;
|
|
2160
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2172
2161
|
pagination: components["schemas"]["Pagination"];
|
|
2173
2162
|
};
|
|
2174
2163
|
CursorListResponseV1SecurityScanSummary: {
|
|
2164
|
+
/** @description Items in this page. */
|
|
2175
2165
|
data: components["schemas"]["V1SecurityScanSummary"][] | null;
|
|
2166
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2167
|
+
pagination: components["schemas"]["Pagination"];
|
|
2168
|
+
};
|
|
2169
|
+
CursorListResponseV1WorkspaceGroup: {
|
|
2170
|
+
/** @description Items in this page. */
|
|
2171
|
+
data: components["schemas"]["V1WorkspaceGroup"][] | null;
|
|
2172
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2176
2173
|
pagination: components["schemas"]["Pagination"];
|
|
2177
2174
|
};
|
|
2178
2175
|
CursorListResponseV1WorkspaceMember: {
|
|
2176
|
+
/** @description Items in this page. */
|
|
2179
2177
|
data: components["schemas"]["V1WorkspaceMember"][] | null;
|
|
2178
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
2180
2179
|
pagination: components["schemas"]["Pagination"];
|
|
2181
2180
|
};
|
|
2182
2181
|
DiffHunk: {
|
|
@@ -2252,21 +2251,39 @@ export interface components {
|
|
|
2252
2251
|
total: number;
|
|
2253
2252
|
};
|
|
2254
2253
|
GetMeOutputBody: {
|
|
2255
|
-
/**
|
|
2254
|
+
/**
|
|
2255
|
+
* @description User email address
|
|
2256
|
+
* @example jane.cooper@acme.com
|
|
2257
|
+
*/
|
|
2256
2258
|
email: string;
|
|
2257
|
-
/**
|
|
2259
|
+
/**
|
|
2260
|
+
* @description User ID
|
|
2261
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
2262
|
+
*/
|
|
2258
2263
|
id: string;
|
|
2259
|
-
/**
|
|
2264
|
+
/**
|
|
2265
|
+
* @description User display name
|
|
2266
|
+
* @example Jane Cooper
|
|
2267
|
+
*/
|
|
2260
2268
|
name: string;
|
|
2261
2269
|
/** @description Workspaces the user belongs to */
|
|
2262
2270
|
workspaces: components["schemas"]["GetMeWorkspace"][] | null;
|
|
2263
2271
|
};
|
|
2264
2272
|
GetMeWorkspace: {
|
|
2265
|
-
/**
|
|
2273
|
+
/**
|
|
2274
|
+
* @description Workspace ID
|
|
2275
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2276
|
+
*/
|
|
2266
2277
|
id: string;
|
|
2267
|
-
/**
|
|
2278
|
+
/**
|
|
2279
|
+
* @description Workspace display name
|
|
2280
|
+
* @example Acme Inc
|
|
2281
|
+
*/
|
|
2268
2282
|
name: string;
|
|
2269
|
-
/**
|
|
2283
|
+
/**
|
|
2284
|
+
* @description Caller's role in the workspace. One of: owner, admin, member, viewer, collaborator. More values may be added; clients must tolerate unknown values.
|
|
2285
|
+
* @example admin
|
|
2286
|
+
*/
|
|
2270
2287
|
role: string;
|
|
2271
2288
|
};
|
|
2272
2289
|
GitFileEntry: {
|
|
@@ -2294,20 +2311,46 @@ export interface components {
|
|
|
2294
2311
|
updated_at: string;
|
|
2295
2312
|
};
|
|
2296
2313
|
ListData: {
|
|
2314
|
+
/** @description Ranked items in this breakdown. */
|
|
2297
2315
|
data: components["schemas"]["ListDataPoint"][] | null;
|
|
2316
|
+
/**
|
|
2317
|
+
* @description Human-readable name of this breakdown dimension.
|
|
2318
|
+
* @example Top Pages
|
|
2319
|
+
*/
|
|
2298
2320
|
label: string;
|
|
2299
2321
|
};
|
|
2300
2322
|
ListDataPoint: {
|
|
2323
|
+
/**
|
|
2324
|
+
* @description Name of this item within the breakdown.
|
|
2325
|
+
* @example /pricing
|
|
2326
|
+
*/
|
|
2301
2327
|
label: string;
|
|
2302
|
-
/**
|
|
2328
|
+
/**
|
|
2329
|
+
* Format: int64
|
|
2330
|
+
* @description Count of visits or events attributed to this item.
|
|
2331
|
+
* @example 1280
|
|
2332
|
+
*/
|
|
2303
2333
|
value: number;
|
|
2304
2334
|
};
|
|
2305
2335
|
ListsGroup: {
|
|
2336
|
+
/** @description Breakdown of traffic by visitor country. */
|
|
2306
2337
|
country: components["schemas"]["ListData"];
|
|
2338
|
+
/** @description Breakdown of traffic by device type. */
|
|
2307
2339
|
device: components["schemas"]["ListData"];
|
|
2340
|
+
/** @description Breakdown of traffic by top page. */
|
|
2308
2341
|
page: components["schemas"]["ListData"];
|
|
2342
|
+
/** @description Breakdown of traffic by referral source. */
|
|
2309
2343
|
source: components["schemas"]["ListData"];
|
|
2310
2344
|
};
|
|
2345
|
+
LovableCreator: {
|
|
2346
|
+
name: string;
|
|
2347
|
+
/**
|
|
2348
|
+
* @description discriminator enum property added by openapi-typescript
|
|
2349
|
+
* @enum {string}
|
|
2350
|
+
*/
|
|
2351
|
+
type: "lovable";
|
|
2352
|
+
url: string;
|
|
2353
|
+
};
|
|
2311
2354
|
MCPConnector: {
|
|
2312
2355
|
app_mcp_auth_method?: string;
|
|
2313
2356
|
app_mcp_project_id?: string;
|
|
@@ -2319,7 +2362,7 @@ export interface components {
|
|
|
2319
2362
|
connect_interaction?: "desktop_app_download";
|
|
2320
2363
|
connection_id?: string;
|
|
2321
2364
|
connector_id?: string;
|
|
2322
|
-
creator: components["schemas"]["
|
|
2365
|
+
creator: components["schemas"]["Creator"];
|
|
2323
2366
|
custom_url_hint?: string;
|
|
2324
2367
|
display_name: string;
|
|
2325
2368
|
documentation_url?: string;
|
|
@@ -2344,17 +2387,25 @@ export interface components {
|
|
|
2344
2387
|
url?: string;
|
|
2345
2388
|
url_placeholder?: string;
|
|
2346
2389
|
};
|
|
2347
|
-
MCPConnectorCreatorStruct: {
|
|
2348
|
-
name: string;
|
|
2349
|
-
url: string;
|
|
2350
|
-
};
|
|
2351
2390
|
Pagination: {
|
|
2352
|
-
/**
|
|
2391
|
+
/**
|
|
2392
|
+
* @description Whether more results are available beyond this page
|
|
2393
|
+
* @example true
|
|
2394
|
+
*/
|
|
2353
2395
|
has_more: boolean;
|
|
2354
|
-
/**
|
|
2396
|
+
/**
|
|
2397
|
+
* @description Cursor for the next page; null when there are no more results
|
|
2398
|
+
* @example eyJ2IjoxLCJpZCI6InByal8wMWp3M2s5In0
|
|
2399
|
+
*/
|
|
2355
2400
|
next_cursor: string | null;
|
|
2356
2401
|
};
|
|
2357
2402
|
ProjectAnalyticsResponse: {
|
|
2403
|
+
/** @description Sessions attributed to their first eligible page view within the requested window. Includes search_ai as the union of search and ai; do not sum it with those channels. Missing channel keys mean unavailable, not zero traffic. */
|
|
2404
|
+
channels?: {
|
|
2405
|
+
[key: string]: components["schemas"]["ChannelAnalytics"];
|
|
2406
|
+
};
|
|
2407
|
+
/** @enum {string} */
|
|
2408
|
+
channelsSource?: "legacy" | "user_app_events";
|
|
2358
2409
|
lists: components["schemas"]["ListsGroup"];
|
|
2359
2410
|
timeSeries: components["schemas"]["TimeSeriesGroup"];
|
|
2360
2411
|
};
|
|
@@ -2367,7 +2418,10 @@ export interface components {
|
|
|
2367
2418
|
sizeExceeded: boolean;
|
|
2368
2419
|
};
|
|
2369
2420
|
ProjectPIIFindingDTO: {
|
|
2370
|
-
/**
|
|
2421
|
+
/**
|
|
2422
|
+
* @description Trajectory event ID for chat-source labels
|
|
2423
|
+
* @example default:user#12#01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2424
|
+
*/
|
|
2371
2425
|
chat_message_id?: string;
|
|
2372
2426
|
/** @description Uploaded file ID for upload-source labels */
|
|
2373
2427
|
chat_upload_id?: string;
|
|
@@ -2376,32 +2430,62 @@ export interface components {
|
|
|
2376
2430
|
/**
|
|
2377
2431
|
* Format: date-time
|
|
2378
2432
|
* @description When the label was recorded
|
|
2433
|
+
* @example 2026-01-15T09:30:00Z
|
|
2379
2434
|
*/
|
|
2380
2435
|
found_at: string;
|
|
2381
|
-
/**
|
|
2436
|
+
/**
|
|
2437
|
+
* @description PII label ID
|
|
2438
|
+
* @example pii_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2439
|
+
*/
|
|
2382
2440
|
id: string;
|
|
2383
|
-
/**
|
|
2441
|
+
/**
|
|
2442
|
+
* @description DLP info type, such as EMAIL_ADDRESS
|
|
2443
|
+
* @example EMAIL_ADDRESS
|
|
2444
|
+
*/
|
|
2384
2445
|
info_type?: string;
|
|
2385
|
-
/**
|
|
2446
|
+
/**
|
|
2447
|
+
* @description DLP likelihood: VERY_UNLIKELY, UNLIKELY, POSSIBLE, LIKELY, or VERY_LIKELY
|
|
2448
|
+
* @example LIKELY
|
|
2449
|
+
*/
|
|
2386
2450
|
likelihood?: string;
|
|
2387
|
-
/**
|
|
2451
|
+
/**
|
|
2452
|
+
* @description Masked sample of the detected value
|
|
2453
|
+
* @example j***@acme.com
|
|
2454
|
+
*/
|
|
2388
2455
|
quote?: string;
|
|
2389
|
-
/**
|
|
2456
|
+
/**
|
|
2457
|
+
* @description Workflow scan run ID that recorded the label
|
|
2458
|
+
* @example pii-scan-prj_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2459
|
+
*/
|
|
2390
2460
|
scan_id?: string;
|
|
2391
|
-
/**
|
|
2461
|
+
/**
|
|
2462
|
+
* @description Sensitivity bucket: low, mid, or high
|
|
2463
|
+
* @example high
|
|
2464
|
+
*/
|
|
2392
2465
|
sensitivity?: string;
|
|
2393
|
-
/**
|
|
2466
|
+
/**
|
|
2467
|
+
* @description Where the PII was detected: chat, upload, cloud_storage, or cloud_sql
|
|
2468
|
+
* @example chat
|
|
2469
|
+
*/
|
|
2394
2470
|
source: string;
|
|
2395
2471
|
/** @description Database location for cloud_sql labels */
|
|
2396
2472
|
sql_location?: string;
|
|
2397
|
-
/**
|
|
2473
|
+
/**
|
|
2474
|
+
* @description Label status: open, ignored, or fixed
|
|
2475
|
+
* @example open
|
|
2476
|
+
*/
|
|
2398
2477
|
status: string;
|
|
2399
2478
|
/** @description Cloud storage object path for cloud_storage labels */
|
|
2400
2479
|
storage_path?: string;
|
|
2401
2480
|
};
|
|
2402
2481
|
ProjectTrendResponse: {
|
|
2403
|
-
/**
|
|
2482
|
+
/**
|
|
2483
|
+
* Format: int64
|
|
2484
|
+
* @description Number of visitors currently active on the site.
|
|
2485
|
+
* @example 12
|
|
2486
|
+
*/
|
|
2404
2487
|
currentVisitors: number;
|
|
2488
|
+
/** @description Time-ordered visit trend buckets. */
|
|
2405
2489
|
data: components["schemas"]["TrendDataPoint"][] | null;
|
|
2406
2490
|
};
|
|
2407
2491
|
PublicV1ConnectorItem: {
|
|
@@ -2435,33 +2519,75 @@ export interface components {
|
|
|
2435
2519
|
types?: string[];
|
|
2436
2520
|
};
|
|
2437
2521
|
PublicV1CreateProjectResponse: {
|
|
2438
|
-
/**
|
|
2522
|
+
/**
|
|
2523
|
+
* @description Description supplied by the caller on create or update
|
|
2524
|
+
* @example A landing page for Acme with a hero, features, and pricing.
|
|
2525
|
+
*/
|
|
2439
2526
|
description?: string;
|
|
2440
|
-
/**
|
|
2527
|
+
/**
|
|
2528
|
+
* @description Project display name
|
|
2529
|
+
* @example Acme Landing Page
|
|
2530
|
+
*/
|
|
2441
2531
|
display_name?: string;
|
|
2442
|
-
/**
|
|
2532
|
+
/**
|
|
2533
|
+
* @description Project ID
|
|
2534
|
+
* @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2535
|
+
*/
|
|
2443
2536
|
id?: string;
|
|
2444
|
-
/**
|
|
2537
|
+
/**
|
|
2538
|
+
* @description Whether the project is published
|
|
2539
|
+
* @example true
|
|
2540
|
+
*/
|
|
2445
2541
|
is_published?: boolean;
|
|
2446
|
-
/**
|
|
2542
|
+
/**
|
|
2543
|
+
* @description Remix job ID for tracking progress when source_project_id is provided
|
|
2544
|
+
* @example job_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2545
|
+
*/
|
|
2447
2546
|
job_id?: string;
|
|
2448
|
-
/**
|
|
2547
|
+
/**
|
|
2548
|
+
* @description SHA of the latest commit
|
|
2549
|
+
* @example 9f3c2a1b8d4e5f6a7b8c9d0e1f2a3b4c5d6e7f80
|
|
2550
|
+
*/
|
|
2449
2551
|
latest_commit_sha?: string;
|
|
2450
|
-
/**
|
|
2552
|
+
/**
|
|
2553
|
+
* @description URL of the latest screenshot
|
|
2554
|
+
* @example https://lovable.dev/cdn/projects/acme-landing-page/screenshot.png
|
|
2555
|
+
*/
|
|
2451
2556
|
latest_screenshot_url?: string;
|
|
2452
|
-
/**
|
|
2557
|
+
/**
|
|
2558
|
+
* @description User message ID, present when initial_message was provided
|
|
2559
|
+
* @example msg_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2560
|
+
*/
|
|
2453
2561
|
message_id?: string;
|
|
2454
|
-
/**
|
|
2562
|
+
/**
|
|
2563
|
+
* @description Project slug
|
|
2564
|
+
* @example acme-landing-page
|
|
2565
|
+
*/
|
|
2455
2566
|
name?: string;
|
|
2456
|
-
/**
|
|
2567
|
+
/**
|
|
2568
|
+
* @description Static-preview URL for the project, on the workspace's branded host when it has one. Resolves once the first build completes. Absent on remix creates, which return job_id before the project exists.
|
|
2569
|
+
* @example https://acme-landing-page.lovable.app/
|
|
2570
|
+
*/
|
|
2457
2571
|
preview_url?: string;
|
|
2458
|
-
/**
|
|
2572
|
+
/**
|
|
2573
|
+
* @description Provisioning status of the project, not agent build progress. 'completed' means the project scaffold was created, and is set before the agent has finished the initial message, so the code at that point is often an empty starter page. To check whether the agent finished building, poll GET /v1/messages/{message_id}. One of: in_progress, completed, failed. More values may be added; clients must tolerate unknown values.
|
|
2574
|
+
* @example completed
|
|
2575
|
+
*/
|
|
2459
2576
|
status?: string;
|
|
2460
|
-
/**
|
|
2577
|
+
/**
|
|
2578
|
+
* @description Published project URL
|
|
2579
|
+
* @example https://acme-landing-page.lovable.app
|
|
2580
|
+
*/
|
|
2461
2581
|
url?: string;
|
|
2462
|
-
/**
|
|
2582
|
+
/**
|
|
2583
|
+
* @description Project visibility: draft, private, workspace_view, public
|
|
2584
|
+
* @example private
|
|
2585
|
+
*/
|
|
2463
2586
|
visibility?: string;
|
|
2464
|
-
/**
|
|
2587
|
+
/**
|
|
2588
|
+
* @description Workspace ID
|
|
2589
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2590
|
+
*/
|
|
2465
2591
|
workspace_id?: string;
|
|
2466
2592
|
};
|
|
2467
2593
|
PublicV1DeployProjectInputBody: {
|
|
@@ -2487,12 +2613,19 @@ export interface components {
|
|
|
2487
2613
|
ref: string;
|
|
2488
2614
|
};
|
|
2489
2615
|
PublicV1PatchProjectBody: {
|
|
2490
|
-
/**
|
|
2616
|
+
/**
|
|
2617
|
+
* @description Project description. Does not affect generated_description, which the agent maintains on its own.
|
|
2618
|
+
* @example A landing page for my SaaS product with a hero, features, and pricing.
|
|
2619
|
+
*/
|
|
2491
2620
|
description?: string;
|
|
2492
|
-
/**
|
|
2621
|
+
/**
|
|
2622
|
+
* @description Project display name
|
|
2623
|
+
* @example Acme Landing Page
|
|
2624
|
+
*/
|
|
2493
2625
|
display_name?: string;
|
|
2494
2626
|
/**
|
|
2495
2627
|
* @description Project visibility
|
|
2628
|
+
* @example private
|
|
2496
2629
|
* @enum {string}
|
|
2497
2630
|
*/
|
|
2498
2631
|
visibility?: "draft" | "private" | "public" | "workspace_view";
|
|
@@ -2506,9 +2639,15 @@ export interface components {
|
|
|
2506
2639
|
trend?: components["schemas"]["ProjectTrendResponse"];
|
|
2507
2640
|
};
|
|
2508
2641
|
PublicV1ProjectCreateInputBody: {
|
|
2509
|
-
/**
|
|
2642
|
+
/**
|
|
2643
|
+
* @description Project description
|
|
2644
|
+
* @example A landing page for my SaaS product with a hero, features, and pricing.
|
|
2645
|
+
*/
|
|
2510
2646
|
description: string;
|
|
2511
|
-
/**
|
|
2647
|
+
/**
|
|
2648
|
+
* @description Human-facing project name
|
|
2649
|
+
* @example Acme Landing Page
|
|
2650
|
+
*/
|
|
2512
2651
|
display_name?: string;
|
|
2513
2652
|
/**
|
|
2514
2653
|
* @deprecated
|
|
@@ -2522,24 +2661,40 @@ export interface components {
|
|
|
2522
2661
|
* @description Deprecated (ENT-3330): both create-time file fields are slated for removal in favor of a unified attachment mechanism; use ephemeral_files meanwhile. Pre-uploaded user-scoped file references ("{user_id}/{uuid}/{name}" from the deprecated POST /v1/files/upload-url endpoint), attached in place without copying; requires initial_message.
|
|
2523
2662
|
*/
|
|
2524
2663
|
files?: components["schemas"]["V1UnscopedFile"][] | null;
|
|
2525
|
-
/**
|
|
2664
|
+
/**
|
|
2665
|
+
* @description Initial chat message to send after creation
|
|
2666
|
+
* @example A landing page for my SaaS product with a hero, features, and pricing.
|
|
2667
|
+
*/
|
|
2526
2668
|
initial_message?: string;
|
|
2527
|
-
/**
|
|
2669
|
+
/**
|
|
2670
|
+
* @description Sandbox runtime template for the new project. Omit for the default stack; requires a workspace with access to the requested template.
|
|
2671
|
+
* @example lovable-on-lovable
|
|
2672
|
+
*/
|
|
2528
2673
|
sandbox_template?: string;
|
|
2529
2674
|
/** @description Design system library projects to connect to the new project */
|
|
2530
2675
|
selected_libraries?: components["schemas"]["V1SelectedLibrary"][] | null;
|
|
2531
2676
|
/** @description Ignored when null, empty, or whitespace. Set a non-empty value to remix from a source project. */
|
|
2532
2677
|
source_project_id?: string | null;
|
|
2533
|
-
/**
|
|
2678
|
+
/**
|
|
2679
|
+
* @description Technology stack (default: vite)
|
|
2680
|
+
* @example vite
|
|
2681
|
+
*/
|
|
2534
2682
|
tech_stack?: string;
|
|
2535
|
-
/**
|
|
2683
|
+
/**
|
|
2684
|
+
* @description Template project ID to clone from (from list_template_projects)
|
|
2685
|
+
* @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2686
|
+
*/
|
|
2536
2687
|
template_project_id?: string;
|
|
2537
2688
|
/**
|
|
2538
2689
|
* @description Project visibility: draft, private, workspace_view, public
|
|
2690
|
+
* @example private
|
|
2539
2691
|
* @enum {string}
|
|
2540
2692
|
*/
|
|
2541
2693
|
visibility?: "draft" | "private" | "public" | "workspace_view";
|
|
2542
|
-
/**
|
|
2694
|
+
/**
|
|
2695
|
+
* @description Workspace ID
|
|
2696
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2697
|
+
*/
|
|
2543
2698
|
workspace_id: string;
|
|
2544
2699
|
};
|
|
2545
2700
|
PublicV1ProjectFileUploadURLInputBody: {
|
|
@@ -2552,78 +2707,165 @@ export interface components {
|
|
|
2552
2707
|
/**
|
|
2553
2708
|
* Format: date-time
|
|
2554
2709
|
* @description When the project was created.
|
|
2710
|
+
* @example 2026-01-15T09:30:00Z
|
|
2555
2711
|
*/
|
|
2556
2712
|
created_at?: string;
|
|
2557
|
-
/**
|
|
2713
|
+
/**
|
|
2714
|
+
* @description Description supplied by the caller on create or update.
|
|
2715
|
+
* @example Marketing landing page for Acme's product launch.
|
|
2716
|
+
*/
|
|
2558
2717
|
description?: string;
|
|
2559
|
-
/**
|
|
2718
|
+
/**
|
|
2719
|
+
* @description Human-readable project name.
|
|
2720
|
+
* @example Acme Landing Page
|
|
2721
|
+
*/
|
|
2560
2722
|
display_name?: string;
|
|
2561
|
-
/**
|
|
2723
|
+
/**
|
|
2724
|
+
* @description Folder the project belongs to, if any.
|
|
2725
|
+
* @example fold_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2726
|
+
*/
|
|
2562
2727
|
folder_id?: string;
|
|
2563
|
-
/**
|
|
2728
|
+
/**
|
|
2729
|
+
* @description AI-written summary of what the project does. Absent until the agent has completed a response for the project.
|
|
2730
|
+
* @example A landing page for Acme with a hero, features, and pricing.
|
|
2731
|
+
*/
|
|
2564
2732
|
generated_description?: string;
|
|
2565
|
-
/**
|
|
2733
|
+
/**
|
|
2734
|
+
* @description Project ID.
|
|
2735
|
+
* @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2736
|
+
*/
|
|
2566
2737
|
id: string;
|
|
2567
|
-
/**
|
|
2738
|
+
/**
|
|
2739
|
+
* @description Whether the project is published.
|
|
2740
|
+
* @example true
|
|
2741
|
+
*/
|
|
2568
2742
|
is_published?: boolean;
|
|
2569
2743
|
/**
|
|
2570
2744
|
* Format: date-time
|
|
2571
2745
|
* @description When the project was last edited.
|
|
2746
|
+
* @example 2026-01-15T09:30:00Z
|
|
2572
2747
|
*/
|
|
2573
2748
|
last_edited_at?: string;
|
|
2574
|
-
/**
|
|
2749
|
+
/**
|
|
2750
|
+
* @description URL of the latest screenshot.
|
|
2751
|
+
* @example https://screenshot2.lovable.dev/acme-landing-page.png
|
|
2752
|
+
*/
|
|
2575
2753
|
latest_screenshot_url?: string;
|
|
2576
|
-
/**
|
|
2754
|
+
/**
|
|
2755
|
+
* @description Project slug.
|
|
2756
|
+
* @example acme-landing-page
|
|
2757
|
+
*/
|
|
2577
2758
|
name?: string;
|
|
2578
|
-
/**
|
|
2759
|
+
/**
|
|
2760
|
+
* @description Open Graph image URL.
|
|
2761
|
+
* @example https://lovable.dev/cdn/projects/acme-landing-page/og.png
|
|
2762
|
+
*/
|
|
2579
2763
|
og_image_url?: string;
|
|
2580
|
-
/**
|
|
2764
|
+
/**
|
|
2765
|
+
* @description Project type. One of: project, library. Absent on older projects. More values may be added; clients must tolerate unknown values.
|
|
2766
|
+
* @example project
|
|
2767
|
+
*/
|
|
2581
2768
|
project_type?: string;
|
|
2582
|
-
/**
|
|
2769
|
+
/**
|
|
2770
|
+
* @description Published visibility. One of: public, private. More values may be added; clients must tolerate unknown values.
|
|
2771
|
+
* @example public
|
|
2772
|
+
*/
|
|
2583
2773
|
publish_visibility?: string;
|
|
2584
|
-
/**
|
|
2774
|
+
/**
|
|
2775
|
+
* @description Provisioning status of the project, not agent build progress. 'completed' means the project scaffold was created, and is set before the agent has finished the initial message, so the code at that point is often an empty starter page. To check whether the agent finished building, poll GET /v1/messages/{message_id}. One of: in_progress, completed, failed. More values may be added; clients must tolerate unknown values.
|
|
2776
|
+
* @example completed
|
|
2777
|
+
*/
|
|
2585
2778
|
status?: string;
|
|
2586
|
-
/**
|
|
2779
|
+
/**
|
|
2780
|
+
* @description Project tech stack.
|
|
2781
|
+
* @example vite_react_shadcn_ts
|
|
2782
|
+
*/
|
|
2587
2783
|
tech_stack?: string;
|
|
2588
2784
|
/**
|
|
2589
2785
|
* Format: date-time
|
|
2590
2786
|
* @description When the project was last updated.
|
|
2787
|
+
* @example 2026-01-15T09:30:00Z
|
|
2591
2788
|
*/
|
|
2592
2789
|
updated_at?: string;
|
|
2593
|
-
/**
|
|
2790
|
+
/**
|
|
2791
|
+
* @description Published project URL.
|
|
2792
|
+
* @example https://acme-landing-page.lovable.app
|
|
2793
|
+
*/
|
|
2594
2794
|
url?: string;
|
|
2595
|
-
/**
|
|
2795
|
+
/**
|
|
2796
|
+
* @description Project owner user ID.
|
|
2797
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
2798
|
+
*/
|
|
2596
2799
|
user_id?: string;
|
|
2597
|
-
/**
|
|
2800
|
+
/**
|
|
2801
|
+
* @description Project visibility: draft, private, workspace_view, or public.
|
|
2802
|
+
* @example public
|
|
2803
|
+
*/
|
|
2598
2804
|
visibility?: string;
|
|
2599
|
-
/**
|
|
2805
|
+
/**
|
|
2806
|
+
* @description Workspace the project belongs to.
|
|
2807
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2808
|
+
*/
|
|
2600
2809
|
workspace_id: string;
|
|
2601
2810
|
};
|
|
2602
2811
|
PublicV1ProjectRemixInputBody: {
|
|
2603
|
-
/**
|
|
2812
|
+
/**
|
|
2813
|
+
* @description Project description
|
|
2814
|
+
* @example A landing page for my SaaS product with a hero, features, and pricing.
|
|
2815
|
+
*/
|
|
2604
2816
|
description?: string;
|
|
2605
|
-
/**
|
|
2817
|
+
/**
|
|
2818
|
+
* @description Human-facing project name
|
|
2819
|
+
* @example Acme Landing Page
|
|
2820
|
+
*/
|
|
2606
2821
|
display_name?: string;
|
|
2607
|
-
/**
|
|
2822
|
+
/**
|
|
2823
|
+
* @description Whether remix-style creation should copy custom knowledge
|
|
2824
|
+
* @example true
|
|
2825
|
+
*/
|
|
2608
2826
|
include_custom_knowledge?: boolean;
|
|
2609
|
-
/** @description
|
|
2827
|
+
/** @description Copy project Files. Defaults to false. Requires edit access to the original project; view-only access or a public remix link is not enough. Omitted or false skips Files; true returns 403 without edit access. */
|
|
2828
|
+
include_files?: boolean;
|
|
2829
|
+
/**
|
|
2830
|
+
* @description Copy chat history. Defaults to false. Requires edit access to the original project; view-only access or a public remix link is not enough.
|
|
2831
|
+
* @example true
|
|
2832
|
+
*/
|
|
2610
2833
|
include_history?: boolean;
|
|
2611
|
-
/**
|
|
2834
|
+
/**
|
|
2835
|
+
* @description Initial chat message to send after remix
|
|
2836
|
+
* @example A landing page for my SaaS product with a hero, features, and pricing.
|
|
2837
|
+
*/
|
|
2612
2838
|
initial_message?: string;
|
|
2613
|
-
/**
|
|
2839
|
+
/**
|
|
2840
|
+
* @description Message ID to remix from
|
|
2841
|
+
* @example msg_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2842
|
+
*/
|
|
2614
2843
|
message_id?: string;
|
|
2615
2844
|
/**
|
|
2616
2845
|
* @description How to apply message_id: before starts before the message, including includes that message's completed turn. Defaults to including.
|
|
2846
|
+
* @example including
|
|
2617
2847
|
* @enum {string}
|
|
2618
2848
|
*/
|
|
2619
2849
|
remix_mode?: "before" | "including";
|
|
2620
|
-
/**
|
|
2850
|
+
/**
|
|
2851
|
+
* @description Suppress the default remix success message
|
|
2852
|
+
* @example false
|
|
2853
|
+
*/
|
|
2621
2854
|
skip_initial_remix_message?: boolean;
|
|
2622
|
-
/**
|
|
2855
|
+
/**
|
|
2856
|
+
* @description Skip remixing integrations
|
|
2857
|
+
* @example false
|
|
2858
|
+
*/
|
|
2623
2859
|
skip_integrations?: boolean;
|
|
2624
|
-
/**
|
|
2860
|
+
/**
|
|
2861
|
+
* @description Source project ID for remix-style creation
|
|
2862
|
+
* @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2863
|
+
*/
|
|
2625
2864
|
source_project_id: string;
|
|
2626
|
-
/**
|
|
2865
|
+
/**
|
|
2866
|
+
* @description Workspace ID
|
|
2867
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2868
|
+
*/
|
|
2627
2869
|
workspace_id: string;
|
|
2628
2870
|
};
|
|
2629
2871
|
PublicV1PublishAudienceTarget: {
|
|
@@ -2673,6 +2915,18 @@ export interface components {
|
|
|
2673
2915
|
/** @description Published project URL. Set once status is completed. */
|
|
2674
2916
|
url?: string;
|
|
2675
2917
|
};
|
|
2918
|
+
PublicV1RemixJobOutputBody: {
|
|
2919
|
+
/** @description Machine-readable failure cause, present only for recognized failures */
|
|
2920
|
+
error_code?: string;
|
|
2921
|
+
/** @description Safe failure summary when the remix job fails */
|
|
2922
|
+
error_message?: string;
|
|
2923
|
+
/** @description Remix result, present when completed */
|
|
2924
|
+
result?: components["schemas"]["V1RemixProgressResult"];
|
|
2925
|
+
/** @description Job status: preparing, running, completed, or error. More values may be added; clients must tolerate unknown values. */
|
|
2926
|
+
status: string;
|
|
2927
|
+
/** @description Current step details when available */
|
|
2928
|
+
step?: components["schemas"]["RemixJobStepInfo"];
|
|
2929
|
+
};
|
|
2676
2930
|
PublicV1SendMessageInputBody: {
|
|
2677
2931
|
/**
|
|
2678
2932
|
* @description Continuation override: force (skip cache TTL and token checks), fresh_build (force prompt rebuild), or allow_expired_cache (skip cache TTL only)
|
|
@@ -2730,26 +2984,44 @@ export interface components {
|
|
|
2730
2984
|
/**
|
|
2731
2985
|
* Format: date-time
|
|
2732
2986
|
* @description When the workspace was created.
|
|
2987
|
+
* @example 2026-01-15T09:30:00Z
|
|
2733
2988
|
*/
|
|
2734
2989
|
created_at?: string;
|
|
2735
|
-
/**
|
|
2990
|
+
/**
|
|
2991
|
+
* @description Workspace description.
|
|
2992
|
+
* @example Marketing site and internal tools for Acme.
|
|
2993
|
+
*/
|
|
2736
2994
|
description?: string;
|
|
2737
|
-
/**
|
|
2995
|
+
/**
|
|
2996
|
+
* @description Workspace ID.
|
|
2997
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
2998
|
+
*/
|
|
2738
2999
|
id: string;
|
|
2739
|
-
/**
|
|
3000
|
+
/**
|
|
3001
|
+
* @description Workspace image URL.
|
|
3002
|
+
* @example https://lovable.dev/cdn/workspaces/acme/avatar.png
|
|
3003
|
+
*/
|
|
2740
3004
|
image_url?: string;
|
|
2741
|
-
/**
|
|
3005
|
+
/**
|
|
3006
|
+
* @description Workspace display name.
|
|
3007
|
+
* @example Acme Inc
|
|
3008
|
+
*/
|
|
2742
3009
|
name: string;
|
|
2743
3010
|
/**
|
|
2744
3011
|
* Format: int64
|
|
2745
3012
|
* @description Number of projects in the workspace.
|
|
3013
|
+
* @example 12
|
|
2746
3014
|
*/
|
|
2747
3015
|
num_projects: number;
|
|
2748
|
-
/**
|
|
3016
|
+
/**
|
|
3017
|
+
* @description Plan tier. One of: free, pro, business, enterprise. More values may be added; clients must tolerate unknown values.
|
|
3018
|
+
* @example pro
|
|
3019
|
+
*/
|
|
2749
3020
|
plan: string;
|
|
2750
3021
|
/**
|
|
2751
3022
|
* Format: date-time
|
|
2752
3023
|
* @description When the workspace was last updated.
|
|
3024
|
+
* @example 2026-01-15T09:30:00Z
|
|
2753
3025
|
*/
|
|
2754
3026
|
updated_at?: string;
|
|
2755
3027
|
};
|
|
@@ -2757,39 +3029,64 @@ export interface components {
|
|
|
2757
3029
|
/**
|
|
2758
3030
|
* Format: date-time
|
|
2759
3031
|
* @description When the caller joined the workspace.
|
|
3032
|
+
* @example 2026-01-15T09:30:00Z
|
|
2760
3033
|
*/
|
|
2761
3034
|
joined_at?: string;
|
|
2762
|
-
/**
|
|
3035
|
+
/**
|
|
3036
|
+
* @description Caller's role in the workspace. One of: owner, admin, member, viewer, collaborator. More values may be added; clients must tolerate unknown values.
|
|
3037
|
+
* @example admin
|
|
3038
|
+
*/
|
|
2763
3039
|
role: string;
|
|
2764
|
-
/**
|
|
3040
|
+
/**
|
|
3041
|
+
* @description Caller's user ID.
|
|
3042
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
3043
|
+
*/
|
|
2765
3044
|
user_id: string;
|
|
2766
3045
|
};
|
|
2767
3046
|
PublicV1WorkspaceWithMembership: {
|
|
2768
3047
|
/**
|
|
2769
3048
|
* Format: date-time
|
|
2770
3049
|
* @description When the workspace was created.
|
|
3050
|
+
* @example 2026-01-15T09:30:00Z
|
|
2771
3051
|
*/
|
|
2772
3052
|
created_at?: string;
|
|
2773
|
-
/**
|
|
3053
|
+
/**
|
|
3054
|
+
* @description Workspace description.
|
|
3055
|
+
* @example Marketing site and internal tools for Acme.
|
|
3056
|
+
*/
|
|
2774
3057
|
description?: string;
|
|
2775
|
-
/**
|
|
3058
|
+
/**
|
|
3059
|
+
* @description Workspace ID.
|
|
3060
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
3061
|
+
*/
|
|
2776
3062
|
id: string;
|
|
2777
|
-
/**
|
|
3063
|
+
/**
|
|
3064
|
+
* @description Workspace image URL.
|
|
3065
|
+
* @example https://lovable.dev/cdn/workspaces/acme/avatar.png
|
|
3066
|
+
*/
|
|
2778
3067
|
image_url?: string;
|
|
2779
3068
|
/** @description Caller's membership in this workspace. */
|
|
2780
3069
|
membership?: components["schemas"]["PublicV1WorkspaceMember"];
|
|
2781
|
-
/**
|
|
3070
|
+
/**
|
|
3071
|
+
* @description Workspace display name.
|
|
3072
|
+
* @example Acme Inc
|
|
3073
|
+
*/
|
|
2782
3074
|
name: string;
|
|
2783
3075
|
/**
|
|
2784
3076
|
* Format: int64
|
|
2785
3077
|
* @description Number of projects in the workspace.
|
|
3078
|
+
* @example 12
|
|
2786
3079
|
*/
|
|
2787
3080
|
num_projects: number;
|
|
2788
|
-
/**
|
|
3081
|
+
/**
|
|
3082
|
+
* @description Plan tier. One of: free, pro, business, enterprise. More values may be added; clients must tolerate unknown values.
|
|
3083
|
+
* @example pro
|
|
3084
|
+
*/
|
|
2789
3085
|
plan: string;
|
|
2790
3086
|
/**
|
|
2791
3087
|
* Format: date-time
|
|
2792
3088
|
* @description When the workspace was last updated.
|
|
3089
|
+
* @example 2026-01-15T09:30:00Z
|
|
2793
3090
|
*/
|
|
2794
3091
|
updated_at?: string;
|
|
2795
3092
|
};
|
|
@@ -2806,13 +3103,15 @@ export interface components {
|
|
|
2806
3103
|
};
|
|
2807
3104
|
RemixWarning: {
|
|
2808
3105
|
/** @enum {string} */
|
|
2809
|
-
code: "edge_functions_not_deployed";
|
|
3106
|
+
code: "edge_functions_not_deployed" | "integration_skipped";
|
|
2810
3107
|
failed_edge_functions?: string[] | null;
|
|
3108
|
+
reason?: string;
|
|
3109
|
+
skipped_integration?: string;
|
|
2811
3110
|
};
|
|
2812
3111
|
SeamlessConnectorAPI: {
|
|
2813
3112
|
alias?: string;
|
|
2814
3113
|
categories: string[] | null;
|
|
2815
|
-
creator: components["schemas"]["
|
|
3114
|
+
creator: components["schemas"]["Creator"];
|
|
2816
3115
|
description: string;
|
|
2817
3116
|
display_name: string;
|
|
2818
3117
|
documentation_url: string;
|
|
@@ -2843,6 +3142,8 @@ export interface components {
|
|
|
2843
3142
|
app_visitors_7d?: number;
|
|
2844
3143
|
category?: string;
|
|
2845
3144
|
/** Format: date-time */
|
|
3145
|
+
commit_time?: string;
|
|
3146
|
+
/** Format: date-time */
|
|
2846
3147
|
created_at?: string;
|
|
2847
3148
|
created_by?: string;
|
|
2848
3149
|
/** Format: date-time */
|
|
@@ -2935,12 +3236,14 @@ export interface components {
|
|
|
2935
3236
|
documentation_url: string;
|
|
2936
3237
|
/** @description True when at least one connection exists for this connector in the workspace */
|
|
2937
3238
|
has_connections: boolean;
|
|
2938
|
-
/** @description True when at least one of this connector's available auth methods would meter a new connection against the workspace's credits */
|
|
2939
|
-
has_metered_option?: boolean;
|
|
2940
3239
|
id: string;
|
|
2941
3240
|
is_enabled_for_workspace: boolean;
|
|
2942
3241
|
/** @description True when the connector is gated behind a feature flag rollout */
|
|
2943
3242
|
is_new?: boolean;
|
|
3243
|
+
/** @description Optional HTTPS logo URL */
|
|
3244
|
+
logo_url?: string;
|
|
3245
|
+
/** @description Provider pricing page; set for metered connectors */
|
|
3246
|
+
pricing_url?: string;
|
|
2944
3247
|
promotion?: components["schemas"]["StandardConnectorPromotion"];
|
|
2945
3248
|
/** @description Search keywords (empty array when none) */
|
|
2946
3249
|
searchTags: string[];
|
|
@@ -2951,6 +3254,8 @@ export interface components {
|
|
|
2951
3254
|
* @enum {string}
|
|
2952
3255
|
*/
|
|
2953
3256
|
source?: "native" | "user_defined";
|
|
3257
|
+
/** @description True when the connector receives provider webhooks and delivers them to the connection's inbound project */
|
|
3258
|
+
supports_inbound?: boolean;
|
|
2954
3259
|
terms_url?: string;
|
|
2955
3260
|
/**
|
|
2956
3261
|
* @description Product vendor for catalog filtering
|
|
@@ -2983,20 +3288,28 @@ export interface components {
|
|
|
2983
3288
|
TimeSeriesData: {
|
|
2984
3289
|
/** @description Per-bucket values ordered by date, one entry per bucket in the range (bucket size set by the granularity parameter). */
|
|
2985
3290
|
data: components["schemas"]["TimeSeriesDataPoint"][] | null;
|
|
2986
|
-
/**
|
|
3291
|
+
/**
|
|
3292
|
+
* @description Metric identifier, e.g. "sessionDuration".
|
|
3293
|
+
* @example visitors
|
|
3294
|
+
*/
|
|
2987
3295
|
label: string;
|
|
2988
3296
|
/**
|
|
2989
3297
|
* Format: double
|
|
2990
3298
|
* @description Period-level aggregate for this metric over the requested range. How it is computed (sum, ratio, or average) and its unit depend on the metric — see the metric field's description.
|
|
3299
|
+
* @example 1280
|
|
2991
3300
|
*/
|
|
2992
3301
|
total: number;
|
|
2993
3302
|
};
|
|
2994
3303
|
TimeSeriesDataPoint: {
|
|
2995
|
-
/**
|
|
3304
|
+
/**
|
|
3305
|
+
* @description Bucket start as "YYYY-MM-DD HH:MM:SS" in UTC.
|
|
3306
|
+
* @example 2026-01-15 00:00:00
|
|
3307
|
+
*/
|
|
2996
3308
|
date: string;
|
|
2997
3309
|
/**
|
|
2998
3310
|
* Format: double
|
|
2999
3311
|
* @description Metric value for this bucket. Unit matches the parent metric — see its description.
|
|
3312
|
+
* @example 1280
|
|
3000
3313
|
*/
|
|
3001
3314
|
value: number;
|
|
3002
3315
|
};
|
|
@@ -3021,10 +3334,26 @@ export interface components {
|
|
|
3021
3334
|
title?: string;
|
|
3022
3335
|
};
|
|
3023
3336
|
TrendDataPoint: {
|
|
3337
|
+
/**
|
|
3338
|
+
* @description Bucket start as "YYYY-MM-DD HH:MM:SS" in UTC.
|
|
3339
|
+
* @example 2026-01-15 09:30:00
|
|
3340
|
+
*/
|
|
3024
3341
|
time: string;
|
|
3025
|
-
/**
|
|
3342
|
+
/**
|
|
3343
|
+
* Format: int64
|
|
3344
|
+
* @description Number of visits recorded in this bucket.
|
|
3345
|
+
* @example 42
|
|
3346
|
+
*/
|
|
3026
3347
|
visits: number;
|
|
3027
3348
|
};
|
|
3349
|
+
UserCreator: {
|
|
3350
|
+
/**
|
|
3351
|
+
* @description discriminator enum property added by openapi-typescript
|
|
3352
|
+
* @enum {string}
|
|
3353
|
+
*/
|
|
3354
|
+
type: "user";
|
|
3355
|
+
user_id: string;
|
|
3356
|
+
};
|
|
3028
3357
|
V1AIResponseSummary: {
|
|
3029
3358
|
/** @description Pending human-in-the-loop tool input, only present when status is awaiting_input */
|
|
3030
3359
|
awaiting_input?: components["schemas"]["V1AwaitingInputSummary"];
|
|
@@ -3039,6 +3368,8 @@ export interface components {
|
|
|
3039
3368
|
cost_credits?: number;
|
|
3040
3369
|
/** @description Associated edit ID */
|
|
3041
3370
|
edit_id?: string;
|
|
3371
|
+
/** @description Why the turn failed, only present when status is error */
|
|
3372
|
+
error?: components["schemas"]["V1MessageError"];
|
|
3042
3373
|
/** @description AI response message ID */
|
|
3043
3374
|
message_id: string;
|
|
3044
3375
|
/** @description AI response status (awaiting_input, completed, stopped, error) */
|
|
@@ -3070,6 +3401,8 @@ export interface components {
|
|
|
3070
3401
|
token?: string;
|
|
3071
3402
|
/** @description MCP server URL (required for direct and network_transport connections; optional only for legacy relay fields) */
|
|
3072
3403
|
url?: string;
|
|
3404
|
+
/** @description Route all traffic to this custom MCP server through Lovable's published static egress IP ranges */
|
|
3405
|
+
use_egress_proxy?: boolean;
|
|
3073
3406
|
};
|
|
3074
3407
|
V1AvailableConnectorEntry: {
|
|
3075
3408
|
/** @description Category (e.g. Development, Design) */
|
|
@@ -3107,61 +3440,80 @@ export interface components {
|
|
|
3107
3440
|
user_id: string;
|
|
3108
3441
|
};
|
|
3109
3442
|
V1BillingCreditLimitsBody: {
|
|
3443
|
+
/** @description Items in this page. */
|
|
3110
3444
|
data: components["schemas"]["V1BillingCreditLimitRow"][] | null;
|
|
3111
3445
|
/**
|
|
3112
3446
|
* Format: double
|
|
3113
3447
|
* @description Workspace default cap applied to members without an explicit per-member limit. Absent when unset (members are bounded only by the workspace balance).
|
|
3114
3448
|
*/
|
|
3115
3449
|
default_monthly_credit_limit?: number;
|
|
3450
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
3116
3451
|
pagination: components["schemas"]["Pagination"];
|
|
3117
3452
|
};
|
|
3118
3453
|
V1BillingPeriod: {
|
|
3119
3454
|
/**
|
|
3120
3455
|
* Format: date-time
|
|
3121
3456
|
* @description Exclusive end of the period these credit figures cover (RFC3339, UTC).
|
|
3457
|
+
* @example 2026-02-01T00:00:00Z
|
|
3122
3458
|
*/
|
|
3123
3459
|
end: string;
|
|
3124
3460
|
/**
|
|
3125
3461
|
* Format: date-time
|
|
3126
3462
|
* @description Inclusive start of the period these credit figures cover (RFC3339, UTC).
|
|
3463
|
+
* @example 2026-01-01T00:00:00Z
|
|
3127
3464
|
*/
|
|
3128
3465
|
start: string;
|
|
3129
3466
|
};
|
|
3130
3467
|
V1BillingUsageBody: {
|
|
3468
|
+
/** @description Items in this page. */
|
|
3131
3469
|
data: components["schemas"]["V1BillingUsageRow"][] | null;
|
|
3132
3470
|
/**
|
|
3133
3471
|
* Format: int64
|
|
3134
3472
|
* @description Number of grouped entities across all pages; group_by queries only.
|
|
3473
|
+
* @example 12
|
|
3135
3474
|
*/
|
|
3136
3475
|
entity_count?: number;
|
|
3476
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
3137
3477
|
pagination: components["schemas"]["Pagination"];
|
|
3138
3478
|
/** @description The resolved window these rows cover, echoed so callers can see what the server applied. */
|
|
3139
3479
|
period: components["schemas"]["V1BillingUsagePeriod"];
|
|
3140
3480
|
/**
|
|
3141
3481
|
* Format: double
|
|
3142
3482
|
* @description Total matching credits across the whole window — same on every page, not just this page's rows.
|
|
3483
|
+
* @example 500
|
|
3143
3484
|
*/
|
|
3144
3485
|
workspace_total: number;
|
|
3145
3486
|
};
|
|
3146
3487
|
V1BillingUsagePeriod: {
|
|
3147
|
-
/**
|
|
3488
|
+
/**
|
|
3489
|
+
* @description Inclusive end of the covered window (YYYY-MM-DD, UTC).
|
|
3490
|
+
* @example 2026-01-31
|
|
3491
|
+
*/
|
|
3148
3492
|
end: string;
|
|
3149
|
-
/**
|
|
3493
|
+
/**
|
|
3494
|
+
* @description Grouping dimension the rows use; group_by queries only.
|
|
3495
|
+
* @example member
|
|
3496
|
+
*/
|
|
3150
3497
|
group_by?: string;
|
|
3151
3498
|
/** @description Bucket size the rows use; interval queries only. */
|
|
3152
3499
|
interval?: string;
|
|
3153
|
-
/**
|
|
3500
|
+
/**
|
|
3501
|
+
* @description Inclusive start of the covered window (YYYY-MM-DD, UTC).
|
|
3502
|
+
* @example 2026-01-01
|
|
3503
|
+
*/
|
|
3154
3504
|
start: string;
|
|
3155
3505
|
};
|
|
3156
3506
|
V1BillingUsageRow: {
|
|
3157
3507
|
/**
|
|
3158
3508
|
* Format: double
|
|
3159
3509
|
* @description Build-time credits.
|
|
3510
|
+
* @example 120
|
|
3160
3511
|
*/
|
|
3161
3512
|
build: number;
|
|
3162
3513
|
/**
|
|
3163
3514
|
* Format: double
|
|
3164
3515
|
* @description Connector credits, e.g. Google Maps requests.
|
|
3516
|
+
* @example 10
|
|
3165
3517
|
*/
|
|
3166
3518
|
connectors: number;
|
|
3167
3519
|
/** @description Per-connector breakdown. Interval buckets only. */
|
|
@@ -3169,22 +3521,31 @@ export interface components {
|
|
|
3169
3521
|
/**
|
|
3170
3522
|
* Format: double
|
|
3171
3523
|
* @description Database credits.
|
|
3524
|
+
* @example 30
|
|
3172
3525
|
*/
|
|
3173
3526
|
database: number;
|
|
3174
3527
|
/** @description Database server/storage breakdown. Interval buckets only. */
|
|
3175
3528
|
database_breakdown?: components["schemas"]["V1WorkspaceUsageDatabaseBreakdown"][] | null;
|
|
3176
|
-
/**
|
|
3529
|
+
/**
|
|
3530
|
+
* @description Member display name. Present on member-attributed rows (group_by=member, or a query filtered to one user_id).
|
|
3531
|
+
* @example Jane Cooper
|
|
3532
|
+
*/
|
|
3177
3533
|
display_name?: string;
|
|
3178
|
-
/**
|
|
3534
|
+
/**
|
|
3535
|
+
* @description Member email as stored on the workspace membership (not the user's primary/personal email). Present on member-attributed rows.
|
|
3536
|
+
* @example jane.cooper@acme.com
|
|
3537
|
+
*/
|
|
3179
3538
|
email?: string;
|
|
3180
3539
|
/**
|
|
3181
3540
|
* Format: double
|
|
3182
3541
|
* @description Compute credits from functions and workers.
|
|
3542
|
+
* @example 60
|
|
3183
3543
|
*/
|
|
3184
3544
|
functions: number;
|
|
3185
3545
|
/**
|
|
3186
3546
|
* Format: double
|
|
3187
3547
|
* @description AI Gateway credits.
|
|
3548
|
+
* @example 200
|
|
3188
3549
|
*/
|
|
3189
3550
|
gateway: number;
|
|
3190
3551
|
/** @description Per-model AI Gateway breakdown. Interval buckets only. */
|
|
@@ -3192,6 +3553,7 @@ export interface components {
|
|
|
3192
3553
|
/**
|
|
3193
3554
|
* Format: double
|
|
3194
3555
|
* @description Network data-transfer credits.
|
|
3556
|
+
* @example 10
|
|
3195
3557
|
*/
|
|
3196
3558
|
network: number;
|
|
3197
3559
|
/** @description Inclusive row end (YYYY-MM-DD, UTC), clamped to the requested window at the edges. */
|
|
@@ -3203,24 +3565,31 @@ export interface components {
|
|
|
3203
3565
|
/**
|
|
3204
3566
|
* Format: double
|
|
3205
3567
|
* @description Realtime credits.
|
|
3568
|
+
* @example 40
|
|
3206
3569
|
*/
|
|
3207
3570
|
realtime: number;
|
|
3208
3571
|
/**
|
|
3209
3572
|
* Format: double
|
|
3210
3573
|
* @description Run-time credits (sum of the per-category fields below).
|
|
3574
|
+
* @example 380
|
|
3211
3575
|
*/
|
|
3212
3576
|
run: number;
|
|
3213
3577
|
/**
|
|
3214
3578
|
* Format: double
|
|
3215
3579
|
* @description Storage credits.
|
|
3580
|
+
* @example 30
|
|
3216
3581
|
*/
|
|
3217
3582
|
storage: number;
|
|
3218
3583
|
/**
|
|
3219
3584
|
* Format: double
|
|
3220
3585
|
* @description Total credits in this row.
|
|
3586
|
+
* @example 500
|
|
3221
3587
|
*/
|
|
3222
3588
|
total: number;
|
|
3223
|
-
/**
|
|
3589
|
+
/**
|
|
3590
|
+
* @description Member this row aggregates (group_by=member) or is filtered to (user_id).
|
|
3591
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
3592
|
+
*/
|
|
3224
3593
|
user_id?: string;
|
|
3225
3594
|
};
|
|
3226
3595
|
V1BulkMemberCreditLimitItem: {
|
|
@@ -3229,19 +3598,32 @@ export interface components {
|
|
|
3229
3598
|
/**
|
|
3230
3599
|
* Format: double
|
|
3231
3600
|
* @description A number (0 blocks all spend) to set the cap, or null to clear it (the member inherits the workspace default).
|
|
3601
|
+
* @example 500
|
|
3232
3602
|
*/
|
|
3233
3603
|
monthly_credit_limit: number | null;
|
|
3234
|
-
/**
|
|
3604
|
+
/**
|
|
3605
|
+
* @description Member user_id (from GET /v1/workspaces/{workspace_id}/members; active members only). Provide exactly one of user_id or email.
|
|
3606
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
3607
|
+
*/
|
|
3235
3608
|
user_id?: string;
|
|
3236
3609
|
};
|
|
3237
3610
|
V1BulkMemberCreditLimitResult: {
|
|
3238
3611
|
/** @description Echoed when the item was addressed by email, so email-addressed results stay correlatable. */
|
|
3239
3612
|
email?: string;
|
|
3240
|
-
/**
|
|
3613
|
+
/**
|
|
3614
|
+
* @description Failure reason when status is error.
|
|
3615
|
+
* @example member not found
|
|
3616
|
+
*/
|
|
3241
3617
|
error?: string;
|
|
3242
|
-
/**
|
|
3618
|
+
/**
|
|
3619
|
+
* @description success or error.
|
|
3620
|
+
* @example error
|
|
3621
|
+
*/
|
|
3243
3622
|
status: string;
|
|
3244
|
-
/**
|
|
3623
|
+
/**
|
|
3624
|
+
* @description The member this result is for (resolved from email when the item was addressed by email).
|
|
3625
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
3626
|
+
*/
|
|
3245
3627
|
user_id?: string;
|
|
3246
3628
|
};
|
|
3247
3629
|
V1BulkSetMemberCreditLimitInputBody: {
|
|
@@ -3254,6 +3636,7 @@ export interface components {
|
|
|
3254
3636
|
/**
|
|
3255
3637
|
* Format: int64
|
|
3256
3638
|
* @description Number that failed (see per-item error).
|
|
3639
|
+
* @example 1
|
|
3257
3640
|
*/
|
|
3258
3641
|
failed: number;
|
|
3259
3642
|
/** @description Per-member outcome, in request order. */
|
|
@@ -3261,11 +3644,13 @@ export interface components {
|
|
|
3261
3644
|
/**
|
|
3262
3645
|
* Format: int64
|
|
3263
3646
|
* @description Number applied successfully.
|
|
3647
|
+
* @example 2
|
|
3264
3648
|
*/
|
|
3265
3649
|
successful: number;
|
|
3266
3650
|
/**
|
|
3267
3651
|
* Format: int64
|
|
3268
3652
|
* @description Number of members in the request.
|
|
3653
|
+
* @example 3
|
|
3269
3654
|
*/
|
|
3270
3655
|
total: number;
|
|
3271
3656
|
};
|
|
@@ -3300,15 +3685,22 @@ export interface components {
|
|
|
3300
3685
|
url?: string;
|
|
3301
3686
|
};
|
|
3302
3687
|
V1CreateEmbedURLInputBody: {
|
|
3303
|
-
/**
|
|
3688
|
+
/**
|
|
3689
|
+
* @description Exact HTTPS origin (scheme + host, no path) allowed to frame the static preview. The minted token only loads inside a frame served from this origin.
|
|
3690
|
+
* @example https://acme.com
|
|
3691
|
+
*/
|
|
3304
3692
|
parent_origin: string;
|
|
3305
3693
|
};
|
|
3306
3694
|
V1CreateEmbedURLOutputBody: {
|
|
3307
|
-
/**
|
|
3695
|
+
/**
|
|
3696
|
+
* @description Origin-bound static-preview URL carrying a short-lived signed token (?__lovable_token=…). Load it in an iframe on the requested parent_origin.
|
|
3697
|
+
* @example https://acme-landing-page.lovable.app/?__lovable_token=eyJhbGciOiJIUzI1NiJ9
|
|
3698
|
+
*/
|
|
3308
3699
|
embed_url: string;
|
|
3309
3700
|
/**
|
|
3310
3701
|
* Format: date-time
|
|
3311
|
-
* @description
|
|
3702
|
+
* @description When the embed URL token expires and stops loading the preview.
|
|
3703
|
+
* @example 2026-01-15T09:30:00Z
|
|
3312
3704
|
*/
|
|
3313
3705
|
expires_at: string;
|
|
3314
3706
|
};
|
|
@@ -3349,57 +3741,117 @@ export interface components {
|
|
|
3349
3741
|
/**
|
|
3350
3742
|
* Format: date-time
|
|
3351
3743
|
* @description When the project was created.
|
|
3744
|
+
* @example 2026-01-15T09:30:00Z
|
|
3352
3745
|
*/
|
|
3353
3746
|
created_at?: string;
|
|
3354
|
-
/**
|
|
3747
|
+
/**
|
|
3748
|
+
* @description Description supplied by the caller on create or update.
|
|
3749
|
+
* @example Marketing landing page for Acme's product launch.
|
|
3750
|
+
*/
|
|
3355
3751
|
description?: string;
|
|
3356
|
-
/**
|
|
3752
|
+
/**
|
|
3753
|
+
* @description Human-readable project name.
|
|
3754
|
+
* @example Acme Landing Page
|
|
3755
|
+
*/
|
|
3357
3756
|
display_name?: string;
|
|
3358
|
-
/**
|
|
3757
|
+
/**
|
|
3758
|
+
* @description Folder the project belongs to, if any.
|
|
3759
|
+
* @example fold_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
3760
|
+
*/
|
|
3359
3761
|
folder_id?: string;
|
|
3360
|
-
/**
|
|
3762
|
+
/**
|
|
3763
|
+
* @description AI-written summary of what the project does. Absent until the agent has completed a response for the project.
|
|
3764
|
+
* @example A landing page for Acme with a hero, features, and pricing.
|
|
3765
|
+
*/
|
|
3361
3766
|
generated_description?: string;
|
|
3362
|
-
/**
|
|
3767
|
+
/**
|
|
3768
|
+
* @description Project ID.
|
|
3769
|
+
* @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
3770
|
+
*/
|
|
3363
3771
|
id: string;
|
|
3364
|
-
/**
|
|
3772
|
+
/**
|
|
3773
|
+
* @description Whether the project is published.
|
|
3774
|
+
* @example true
|
|
3775
|
+
*/
|
|
3365
3776
|
is_published?: boolean;
|
|
3366
3777
|
/**
|
|
3367
3778
|
* Format: date-time
|
|
3368
3779
|
* @description When the project was last edited.
|
|
3780
|
+
* @example 2026-01-15T09:30:00Z
|
|
3369
3781
|
*/
|
|
3370
3782
|
last_edited_at?: string;
|
|
3371
|
-
/**
|
|
3783
|
+
/**
|
|
3784
|
+
* @description SHA of the latest commit
|
|
3785
|
+
* @example a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0
|
|
3786
|
+
*/
|
|
3372
3787
|
latest_commit_sha?: string;
|
|
3373
|
-
/**
|
|
3788
|
+
/**
|
|
3789
|
+
* @description URL of the latest screenshot.
|
|
3790
|
+
* @example https://screenshot2.lovable.dev/acme-landing-page.png
|
|
3791
|
+
*/
|
|
3374
3792
|
latest_screenshot_url?: string;
|
|
3375
3793
|
/** @description User message ID, present when initial_message was provided */
|
|
3376
3794
|
message_id?: string;
|
|
3377
|
-
/**
|
|
3795
|
+
/**
|
|
3796
|
+
* @description Project slug.
|
|
3797
|
+
* @example acme-landing-page
|
|
3798
|
+
*/
|
|
3378
3799
|
name?: string;
|
|
3379
|
-
/**
|
|
3800
|
+
/**
|
|
3801
|
+
* @description Open Graph image URL.
|
|
3802
|
+
* @example https://lovable.dev/cdn/projects/acme-landing-page/og.png
|
|
3803
|
+
*/
|
|
3380
3804
|
og_image_url?: string;
|
|
3381
|
-
/**
|
|
3805
|
+
/**
|
|
3806
|
+
* @description Static-preview URL for the project, on the workspace's branded host when it has one. Resolves once the first build completes. Opening it requires a Lovable login unless the project is publicly remixable; to frame it from a third-party origin without one, mint an origin-bound token via POST /v1/projects/{project_id}/embed-url.
|
|
3807
|
+
* @example https://acme-landing-page.lovable.app/
|
|
3808
|
+
*/
|
|
3382
3809
|
preview_url?: string;
|
|
3383
|
-
/**
|
|
3810
|
+
/**
|
|
3811
|
+
* @description Project type. One of: project, library. Absent on older projects. More values may be added; clients must tolerate unknown values.
|
|
3812
|
+
* @example project
|
|
3813
|
+
*/
|
|
3384
3814
|
project_type?: string;
|
|
3385
|
-
/**
|
|
3815
|
+
/**
|
|
3816
|
+
* @description Published visibility. One of: public, private. More values may be added; clients must tolerate unknown values.
|
|
3817
|
+
* @example public
|
|
3818
|
+
*/
|
|
3386
3819
|
publish_visibility?: string;
|
|
3387
|
-
/**
|
|
3820
|
+
/**
|
|
3821
|
+
* @description Provisioning status of the project, not agent build progress. 'completed' means the project scaffold was created, and is set before the agent has finished the initial message, so the code at that point is often an empty starter page. To check whether the agent finished building, poll GET /v1/messages/{message_id}. One of: in_progress, completed, failed. More values may be added; clients must tolerate unknown values.
|
|
3822
|
+
* @example completed
|
|
3823
|
+
*/
|
|
3388
3824
|
status?: string;
|
|
3389
|
-
/**
|
|
3825
|
+
/**
|
|
3826
|
+
* @description Project tech stack.
|
|
3827
|
+
* @example vite_react_shadcn_ts
|
|
3828
|
+
*/
|
|
3390
3829
|
tech_stack?: string;
|
|
3391
3830
|
/**
|
|
3392
3831
|
* Format: date-time
|
|
3393
3832
|
* @description When the project was last updated.
|
|
3833
|
+
* @example 2026-01-15T09:30:00Z
|
|
3394
3834
|
*/
|
|
3395
3835
|
updated_at?: string;
|
|
3396
|
-
/**
|
|
3836
|
+
/**
|
|
3837
|
+
* @description Published project URL.
|
|
3838
|
+
* @example https://acme-landing-page.lovable.app
|
|
3839
|
+
*/
|
|
3397
3840
|
url?: string;
|
|
3398
|
-
/**
|
|
3841
|
+
/**
|
|
3842
|
+
* @description Project owner user ID.
|
|
3843
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
3844
|
+
*/
|
|
3399
3845
|
user_id?: string;
|
|
3400
|
-
/**
|
|
3846
|
+
/**
|
|
3847
|
+
* @description Project visibility: draft, private, workspace_view, or public.
|
|
3848
|
+
* @example public
|
|
3849
|
+
*/
|
|
3401
3850
|
visibility?: string;
|
|
3402
|
-
/**
|
|
3851
|
+
/**
|
|
3852
|
+
* @description Workspace the project belongs to.
|
|
3853
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
3854
|
+
*/
|
|
3403
3855
|
workspace_id: string;
|
|
3404
3856
|
};
|
|
3405
3857
|
V1CreateVariantInputBody: {
|
|
@@ -3422,25 +3874,35 @@ export interface components {
|
|
|
3422
3874
|
/**
|
|
3423
3875
|
* Format: double
|
|
3424
3876
|
* @description Signed change in Lovable credits: positive for grants, negative for expiries and debits.
|
|
3877
|
+
* @example 1500
|
|
3425
3878
|
*/
|
|
3426
3879
|
credits_change: number;
|
|
3427
3880
|
/**
|
|
3428
3881
|
* @description What happened to the credits.
|
|
3882
|
+
* @example granted
|
|
3429
3883
|
* @enum {string}
|
|
3430
3884
|
*/
|
|
3431
3885
|
event_type: "granted" | "expired" | "adjustment" | "converted";
|
|
3432
3886
|
/**
|
|
3433
3887
|
* @description Credit bucket this entry affected.
|
|
3888
|
+
* @example billing
|
|
3434
3889
|
* @enum {string}
|
|
3435
3890
|
*/
|
|
3436
3891
|
grant_type: "billing" | "rollover" | "granted" | "topup" | "commitment" | "cashback" | "daily";
|
|
3437
|
-
/**
|
|
3892
|
+
/**
|
|
3893
|
+
* @description Stable ledger entry ID.
|
|
3894
|
+
* @example 01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
3895
|
+
*/
|
|
3438
3896
|
id: string;
|
|
3439
|
-
/**
|
|
3897
|
+
/**
|
|
3898
|
+
* @description Human-readable summary of the entry.
|
|
3899
|
+
* @example Monthly plan credit grant
|
|
3900
|
+
*/
|
|
3440
3901
|
label: string;
|
|
3441
3902
|
/**
|
|
3442
3903
|
* Format: date-time
|
|
3443
3904
|
* @description When the entry occurred (RFC3339, UTC).
|
|
3905
|
+
* @example 2026-01-15T09:30:00Z
|
|
3444
3906
|
*/
|
|
3445
3907
|
occurred_at: string;
|
|
3446
3908
|
};
|
|
@@ -3521,8 +3983,11 @@ export interface components {
|
|
|
3521
3983
|
has_more: boolean;
|
|
3522
3984
|
};
|
|
3523
3985
|
V1GetSecurityScanOutputBody: {
|
|
3986
|
+
/** @description Security findings captured in this scan. */
|
|
3524
3987
|
findings: components["schemas"]["V1SecurityFinding"][] | null;
|
|
3988
|
+
/** @description Scan invocation summary. */
|
|
3525
3989
|
scan: components["schemas"]["V1SecurityScanSummary"];
|
|
3990
|
+
/** @description Per-scanner execution records for this scan. */
|
|
3526
3991
|
scanner_runs: components["schemas"]["V1SecurityScannerRun"][] | null;
|
|
3527
3992
|
};
|
|
3528
3993
|
V1GetWorkspaceSkillOutputBody: {
|
|
@@ -3648,46 +4113,11 @@ export interface components {
|
|
|
3648
4113
|
/** @description Pagination metadata */
|
|
3649
4114
|
pagination: components["schemas"]["Pagination"];
|
|
3650
4115
|
};
|
|
3651
|
-
|
|
3652
|
-
/**
|
|
3653
|
-
|
|
3654
|
-
|
|
3655
|
-
|
|
3656
|
-
archive_size_bytes?: number;
|
|
3657
|
-
/**
|
|
3658
|
-
* Format: date-time
|
|
3659
|
-
* @description When the export reached a terminal state.
|
|
3660
|
-
*/
|
|
3661
|
-
completed_at?: string;
|
|
3662
|
-
/**
|
|
3663
|
-
* Format: date-time
|
|
3664
|
-
* @description When the export was requested.
|
|
3665
|
-
*/
|
|
3666
|
-
created_at: string;
|
|
3667
|
-
/** @description One-hour signed URL, present while a completed export has not expired. */
|
|
3668
|
-
download_url?: string;
|
|
3669
|
-
/**
|
|
3670
|
-
* Format: date-time
|
|
3671
|
-
* @description When the completed file is deleted.
|
|
3672
|
-
*/
|
|
3673
|
-
expires_at?: string;
|
|
3674
|
-
/** @description Export ID. */
|
|
3675
|
-
export_id: string;
|
|
3676
|
-
/**
|
|
3677
|
-
* Format: int64
|
|
3678
|
-
* @description Number of messages in a completed export.
|
|
3679
|
-
*/
|
|
3680
|
-
message_count?: number;
|
|
3681
|
-
/**
|
|
3682
|
-
* Format: int64
|
|
3683
|
-
* @description Number of projects represented in a completed export.
|
|
3684
|
-
*/
|
|
3685
|
-
project_count?: number;
|
|
3686
|
-
/**
|
|
3687
|
-
* @description Current export status.
|
|
3688
|
-
* @enum {string}
|
|
3689
|
-
*/
|
|
3690
|
-
status: "running" | "completed" | "failed" | "expired";
|
|
4116
|
+
V1MessageError: {
|
|
4117
|
+
/** @description Stable error code identifying the failure (e.g. PRIMARY_LLM_REQUEST_REJECTED) */
|
|
4118
|
+
code: string;
|
|
4119
|
+
/** @description Sanitized human-readable explanation of the failure */
|
|
4120
|
+
message: string;
|
|
3691
4121
|
};
|
|
3692
4122
|
V1MessageListItem: {
|
|
3693
4123
|
/** @description Message text content */
|
|
@@ -3719,6 +4149,8 @@ export interface components {
|
|
|
3719
4149
|
created_at: string;
|
|
3720
4150
|
/** @description Associated edit ID, if any */
|
|
3721
4151
|
edit_id?: string;
|
|
4152
|
+
/** @description Why the turn failed, only present for assistant messages when status is error */
|
|
4153
|
+
error?: components["schemas"]["V1MessageError"];
|
|
3722
4154
|
/** @description Message ID */
|
|
3723
4155
|
message_id: string;
|
|
3724
4156
|
/** @description Why the queue is paused (user, hitl_tool, out_of_credits, server_error) */
|
|
@@ -3743,108 +4175,54 @@ export interface components {
|
|
|
3743
4175
|
/** @description Project IDs to move into the folder */
|
|
3744
4176
|
project_ids: string[] | null;
|
|
3745
4177
|
};
|
|
3746
|
-
V1ProjectCloudBody: {
|
|
3747
|
-
/** @description Disk-space telemetry. Omitted while the measurement is temporarily unavailable; retry later. */
|
|
3748
|
-
disk?: components["schemas"]["V1ProjectCloudDisk"];
|
|
3749
|
-
/** @description Cloud environment these values describe. */
|
|
3750
|
-
environment: string;
|
|
3751
|
-
/**
|
|
3752
|
-
* @description Current compute instance tier code.
|
|
3753
|
-
* @enum {string}
|
|
3754
|
-
*/
|
|
3755
|
-
instance_tier: "xs" | "s" | "m" | "ml" | "l" | "xl" | "xxl";
|
|
3756
|
-
/** @description Human-readable tier name as shown in the editor (Tiny, Mini, Small, Medium, Large, X-Large, 2X-Large). */
|
|
3757
|
-
instance_tier_label: string;
|
|
3758
|
-
/** @description Why the instance was paused (e.g. credit_limit), when recorded. */
|
|
3759
|
-
pause_reason?: string;
|
|
3760
|
-
/** @description Postgres major/minor version. Omitted while the lookup is temporarily unavailable. */
|
|
3761
|
-
postgres_version?: string;
|
|
3762
|
-
/** @description Region the database runs in. Omitted while the lookup is temporarily unavailable. */
|
|
3763
|
-
region?: string;
|
|
3764
|
-
/** @description CPU/memory/disk-IO pressure alerts over the trailing window. Omitted while the lookup is temporarily unavailable. */
|
|
3765
|
-
resource_pressure?: components["schemas"]["V1ProjectCloudResourcePressure"];
|
|
3766
|
-
/**
|
|
3767
|
-
* @description Database instance lifecycle status. INACTIVE means paused. Cached for up to a minute; omitted while the lookup is temporarily unavailable.
|
|
3768
|
-
* @enum {string}
|
|
3769
|
-
*/
|
|
3770
|
-
status?: "OK" | "RESIZING" | "UPGRADING" | "RESTARTING" | "COMING_UP" | "RESTORING" | "UNHEALTHY" | "INACTIVE" | "PAUSING" | "UNKNOWN" | "";
|
|
3771
|
-
/** @description True when a user (or the platform) explicitly paused this cloud instance. */
|
|
3772
|
-
user_paused: boolean;
|
|
3773
|
-
};
|
|
3774
|
-
V1ProjectCloudDisk: {
|
|
3775
|
-
/**
|
|
3776
|
-
* Format: int64
|
|
3777
|
-
* @description Provisioned size of the database volume in bytes.
|
|
3778
|
-
*/
|
|
3779
|
-
size_bytes: number;
|
|
3780
|
-
/**
|
|
3781
|
-
* Format: date-time
|
|
3782
|
-
* @description When the platform measured these values. Measurements refresh periodically; use this to judge data age.
|
|
3783
|
-
*/
|
|
3784
|
-
timestamp: string;
|
|
3785
|
-
/**
|
|
3786
|
-
* Format: int64
|
|
3787
|
-
* @description Bytes used on the database volume, as last measured by the platform. Measures the whole managed volume, so it exceeds what SQL-level views (e.g. pg_database_size) can see.
|
|
3788
|
-
*/
|
|
3789
|
-
used_bytes: number;
|
|
3790
|
-
};
|
|
3791
|
-
V1ProjectCloudResourcePressure: {
|
|
3792
|
-
/** @description Per-resource pressure signals. Alerts reset when the instance is resized. */
|
|
3793
|
-
resources: components["schemas"]["V1ProjectCloudResourceSignal"][] | null;
|
|
3794
|
-
/**
|
|
3795
|
-
* Format: int64
|
|
3796
|
-
* @description Size of the trailing window these signals cover.
|
|
3797
|
-
*/
|
|
3798
|
-
window_hours: number;
|
|
3799
|
-
};
|
|
3800
|
-
V1ProjectCloudResourceSignal: {
|
|
3801
|
-
/**
|
|
3802
|
-
* Format: int64
|
|
3803
|
-
* @description Hours within the window that raised a pressure alert.
|
|
3804
|
-
*/
|
|
3805
|
-
alert_hours: number;
|
|
3806
|
-
/** @description Human-readable resource name. */
|
|
3807
|
-
label: string;
|
|
3808
|
-
/**
|
|
3809
|
-
* Format: date-time
|
|
3810
|
-
* @description Most recent pressure alert in the window, if any.
|
|
3811
|
-
*/
|
|
3812
|
-
latest_alert_at?: string;
|
|
3813
|
-
/**
|
|
3814
|
-
* Format: double
|
|
3815
|
-
* @description Reported value of the most recent alert, if any.
|
|
3816
|
-
*/
|
|
3817
|
-
latest_value?: number;
|
|
3818
|
-
/** @description Resource under pressure: cpu, memory, or disk_io. */
|
|
3819
|
-
resource_type: string;
|
|
3820
|
-
};
|
|
3821
4178
|
V1ProjectCollaborator: {
|
|
3822
4179
|
/**
|
|
3823
4180
|
* Format: date-time
|
|
3824
4181
|
* @description When the user accepted the project invitation. Null if the invite is still pending.
|
|
4182
|
+
* @example 2026-01-15T09:30:00Z
|
|
3825
4183
|
*/
|
|
3826
4184
|
accepted_at?: string;
|
|
3827
4185
|
/**
|
|
3828
4186
|
* @description Access level: owner, admin, write, or read
|
|
4187
|
+
* @example admin
|
|
3829
4188
|
* @enum {string}
|
|
3830
4189
|
*/
|
|
3831
4190
|
access_level: "owner" | "admin" | "write" | "read" | "none";
|
|
3832
|
-
/**
|
|
4191
|
+
/**
|
|
4192
|
+
* @description Human-readable display name. Falls back to the email when the user has not set a display name.
|
|
4193
|
+
* @example Jane Cooper
|
|
4194
|
+
*/
|
|
3833
4195
|
display_name?: string;
|
|
3834
|
-
/**
|
|
4196
|
+
/**
|
|
4197
|
+
* @description Email address of the collaborator. Empty if the user has no resolvable email (e.g. deleted user records that were not filtered out, or service-account-like users without an email on file).
|
|
4198
|
+
* @example jane.cooper@acme.com
|
|
4199
|
+
*/
|
|
3835
4200
|
email?: string;
|
|
3836
4201
|
/**
|
|
3837
4202
|
* Format: date-time
|
|
3838
4203
|
* @description When the user was invited to the project. Null for the project owner.
|
|
4204
|
+
* @example 2026-01-15T09:30:00Z
|
|
3839
4205
|
*/
|
|
3840
4206
|
invited_at?: string;
|
|
3841
|
-
/**
|
|
4207
|
+
/**
|
|
4208
|
+
* @description User ID of the inviter. Empty for the project owner.
|
|
4209
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
4210
|
+
*/
|
|
3842
4211
|
invited_by?: string;
|
|
3843
|
-
/**
|
|
4212
|
+
/**
|
|
4213
|
+
* @description True when the user is internal to the workspace: either a workspace member, or their email belongs to a domain the workspace has verified (typical SSO / JIT provisioning case). Useful for distinguishing internal vs. external collaborators in security reviews.
|
|
4214
|
+
* @example true
|
|
4215
|
+
*/
|
|
3844
4216
|
is_internal: boolean;
|
|
3845
|
-
/**
|
|
4217
|
+
/**
|
|
4218
|
+
* @description True when the user is a member of the project's workspace. False indicates an ad-hoc project collaborator who has no broader workspace access.
|
|
4219
|
+
* @example true
|
|
4220
|
+
*/
|
|
3846
4221
|
is_workspace_member: boolean;
|
|
3847
|
-
/**
|
|
4222
|
+
/**
|
|
4223
|
+
* @description User ID of the collaborator
|
|
4224
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
4225
|
+
*/
|
|
3848
4226
|
user_id: string;
|
|
3849
4227
|
};
|
|
3850
4228
|
V1ProjectFileUploadURLInputBody: {
|
|
@@ -3868,55 +4246,115 @@ export interface components {
|
|
|
3868
4246
|
/**
|
|
3869
4247
|
* Format: date-time
|
|
3870
4248
|
* @description When the project was created.
|
|
4249
|
+
* @example 2026-01-15T09:30:00Z
|
|
3871
4250
|
*/
|
|
3872
4251
|
created_at?: string;
|
|
3873
|
-
/**
|
|
4252
|
+
/**
|
|
4253
|
+
* @description Description supplied by the caller on create or update.
|
|
4254
|
+
* @example Marketing landing page for Acme's product launch.
|
|
4255
|
+
*/
|
|
3874
4256
|
description?: string;
|
|
3875
|
-
/**
|
|
4257
|
+
/**
|
|
4258
|
+
* @description Human-readable project name.
|
|
4259
|
+
* @example Acme Landing Page
|
|
4260
|
+
*/
|
|
3876
4261
|
display_name?: string;
|
|
3877
|
-
/**
|
|
4262
|
+
/**
|
|
4263
|
+
* @description Folder the project belongs to, if any.
|
|
4264
|
+
* @example fold_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
4265
|
+
*/
|
|
3878
4266
|
folder_id?: string;
|
|
3879
|
-
/**
|
|
4267
|
+
/**
|
|
4268
|
+
* @description AI-written summary of what the project does. Absent until the agent has completed a response for the project.
|
|
4269
|
+
* @example A landing page for Acme with a hero, features, and pricing.
|
|
4270
|
+
*/
|
|
3880
4271
|
generated_description?: string;
|
|
3881
|
-
/**
|
|
4272
|
+
/**
|
|
4273
|
+
* @description Project ID.
|
|
4274
|
+
* @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
4275
|
+
*/
|
|
3882
4276
|
id: string;
|
|
3883
|
-
/**
|
|
4277
|
+
/**
|
|
4278
|
+
* @description Whether the project is published.
|
|
4279
|
+
* @example true
|
|
4280
|
+
*/
|
|
3884
4281
|
is_published?: boolean;
|
|
3885
4282
|
/**
|
|
3886
4283
|
* Format: date-time
|
|
3887
4284
|
* @description When the project was last edited.
|
|
4285
|
+
* @example 2026-01-15T09:30:00Z
|
|
3888
4286
|
*/
|
|
3889
4287
|
last_edited_at?: string;
|
|
3890
|
-
/**
|
|
4288
|
+
/**
|
|
4289
|
+
* @description SHA of the latest commit
|
|
4290
|
+
* @example a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0
|
|
4291
|
+
*/
|
|
3891
4292
|
latest_commit_sha?: string;
|
|
3892
|
-
/**
|
|
4293
|
+
/**
|
|
4294
|
+
* @description URL of the latest screenshot.
|
|
4295
|
+
* @example https://screenshot2.lovable.dev/acme-landing-page.png
|
|
4296
|
+
*/
|
|
3893
4297
|
latest_screenshot_url?: string;
|
|
3894
|
-
/**
|
|
4298
|
+
/**
|
|
4299
|
+
* @description Project slug.
|
|
4300
|
+
* @example acme-landing-page
|
|
4301
|
+
*/
|
|
3895
4302
|
name?: string;
|
|
3896
|
-
/**
|
|
4303
|
+
/**
|
|
4304
|
+
* @description Open Graph image URL.
|
|
4305
|
+
* @example https://lovable.dev/cdn/projects/acme-landing-page/og.png
|
|
4306
|
+
*/
|
|
3897
4307
|
og_image_url?: string;
|
|
3898
|
-
/**
|
|
4308
|
+
/**
|
|
4309
|
+
* @description Static-preview URL for the project, on the workspace's branded host when it has one. Resolves once the first build completes. Opening it requires a Lovable login unless the project is publicly remixable; to frame it from a third-party origin without one, mint an origin-bound token via POST /v1/projects/{project_id}/embed-url.
|
|
4310
|
+
* @example https://acme-landing-page.lovable.app/
|
|
4311
|
+
*/
|
|
3899
4312
|
preview_url?: string;
|
|
3900
|
-
/**
|
|
4313
|
+
/**
|
|
4314
|
+
* @description Project type. One of: project, library. Absent on older projects. More values may be added; clients must tolerate unknown values.
|
|
4315
|
+
* @example project
|
|
4316
|
+
*/
|
|
3901
4317
|
project_type?: string;
|
|
3902
|
-
/**
|
|
4318
|
+
/**
|
|
4319
|
+
* @description Published visibility. One of: public, private. More values may be added; clients must tolerate unknown values.
|
|
4320
|
+
* @example public
|
|
4321
|
+
*/
|
|
3903
4322
|
publish_visibility?: string;
|
|
3904
|
-
/**
|
|
4323
|
+
/**
|
|
4324
|
+
* @description Provisioning status of the project, not agent build progress. 'completed' means the project scaffold was created, and is set before the agent has finished the initial message, so the code at that point is often an empty starter page. To check whether the agent finished building, poll GET /v1/messages/{message_id}. One of: in_progress, completed, failed. More values may be added; clients must tolerate unknown values.
|
|
4325
|
+
* @example completed
|
|
4326
|
+
*/
|
|
3905
4327
|
status?: string;
|
|
3906
|
-
/**
|
|
4328
|
+
/**
|
|
4329
|
+
* @description Project tech stack.
|
|
4330
|
+
* @example vite_react_shadcn_ts
|
|
4331
|
+
*/
|
|
3907
4332
|
tech_stack?: string;
|
|
3908
4333
|
/**
|
|
3909
4334
|
* Format: date-time
|
|
3910
4335
|
* @description When the project was last updated.
|
|
4336
|
+
* @example 2026-01-15T09:30:00Z
|
|
3911
4337
|
*/
|
|
3912
4338
|
updated_at?: string;
|
|
3913
|
-
/**
|
|
4339
|
+
/**
|
|
4340
|
+
* @description Published project URL.
|
|
4341
|
+
* @example https://acme-landing-page.lovable.app
|
|
4342
|
+
*/
|
|
3914
4343
|
url?: string;
|
|
3915
|
-
/**
|
|
4344
|
+
/**
|
|
4345
|
+
* @description Project owner user ID.
|
|
4346
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
4347
|
+
*/
|
|
3916
4348
|
user_id?: string;
|
|
3917
|
-
/**
|
|
4349
|
+
/**
|
|
4350
|
+
* @description Project visibility: draft, private, workspace_view, or public.
|
|
4351
|
+
* @example public
|
|
4352
|
+
*/
|
|
3918
4353
|
visibility?: string;
|
|
3919
|
-
/**
|
|
4354
|
+
/**
|
|
4355
|
+
* @description Workspace the project belongs to.
|
|
4356
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
4357
|
+
*/
|
|
3920
4358
|
workspace_id: string;
|
|
3921
4359
|
};
|
|
3922
4360
|
V1ProjectSkillDTO: {
|
|
@@ -3936,7 +4374,9 @@ export interface components {
|
|
|
3936
4374
|
description?: string;
|
|
3937
4375
|
/** @description Copy custom knowledge (instructions) to the new project */
|
|
3938
4376
|
include_custom_knowledge?: boolean;
|
|
3939
|
-
/** @description Copy
|
|
4377
|
+
/** @description Copy project Files. Defaults to false. Requires edit access to the original project; view-only access or a public remix link is not enough. Omitted or false skips Files; true returns 403 without edit access. */
|
|
4378
|
+
include_files?: boolean;
|
|
4379
|
+
/** @description Copy chat history. Defaults to false. Requires edit access to the original project; view-only access or a public remix link is not enough. */
|
|
3940
4380
|
include_history?: boolean;
|
|
3941
4381
|
/** @description Initial headless chat message to send after remix */
|
|
3942
4382
|
initial_message?: string;
|
|
@@ -3983,33 +4423,82 @@ export interface components {
|
|
|
3983
4423
|
success: boolean;
|
|
3984
4424
|
};
|
|
3985
4425
|
V1SecurityFinding: {
|
|
4426
|
+
/**
|
|
4427
|
+
* @description Finding category.
|
|
4428
|
+
* @example data_exposure
|
|
4429
|
+
*/
|
|
3986
4430
|
category?: string;
|
|
3987
|
-
|
|
3988
|
-
|
|
4431
|
+
/**
|
|
4432
|
+
* Format: date-time
|
|
4433
|
+
* @description When this finding was first recorded, UTC.
|
|
4434
|
+
* @example 2026-01-15T09:30:00Z
|
|
4435
|
+
*/
|
|
3989
4436
|
created_at: string;
|
|
4437
|
+
/**
|
|
4438
|
+
* @description Human-readable summary of the finding.
|
|
4439
|
+
* @example A public table has row-level security disabled, exposing all rows to anonymous clients.
|
|
4440
|
+
*/
|
|
3990
4441
|
description?: string;
|
|
3991
|
-
/**
|
|
4442
|
+
/**
|
|
4443
|
+
* @description Raw scanner output (e.g. matched pattern fragments). May be empty due to access restrictions; use 'description' and 'metadata' for the user-facing summary.
|
|
4444
|
+
* @example table: public.profiles; rls_enabled: false
|
|
4445
|
+
*/
|
|
3992
4446
|
details?: string;
|
|
4447
|
+
/**
|
|
4448
|
+
* @description Stable identifier for this finding.
|
|
4449
|
+
* @example b2c3d4e5-f6a7-8901-bcde-f23456789012
|
|
4450
|
+
*/
|
|
3993
4451
|
finding_id: string;
|
|
4452
|
+
/**
|
|
4453
|
+
* @description Scan invocation ID where this finding was first seen.
|
|
4454
|
+
* @example a1b2c3d4-e5f6-7890-abcd-ef1234567890
|
|
4455
|
+
*/
|
|
3994
4456
|
first_seen_scan_id?: string;
|
|
3995
|
-
/**
|
|
4457
|
+
/**
|
|
4458
|
+
* @description error | warn | info
|
|
4459
|
+
* @example error
|
|
4460
|
+
*/
|
|
3996
4461
|
level: string;
|
|
4462
|
+
/**
|
|
4463
|
+
* @description Link to remediation guidance for this finding.
|
|
4464
|
+
* @example https://docs.lovable.dev/security/rls
|
|
4465
|
+
*/
|
|
3997
4466
|
link?: string;
|
|
3998
4467
|
/** @description Scanner-specific metadata (file_path, line_number, package, cve, ...) */
|
|
3999
4468
|
metadata?: {
|
|
4000
4469
|
[key: string]: unknown;
|
|
4001
4470
|
};
|
|
4471
|
+
/**
|
|
4472
|
+
* @description Short finding title.
|
|
4473
|
+
* @example Row-level security disabled on a public table
|
|
4474
|
+
*/
|
|
4002
4475
|
name: string;
|
|
4003
4476
|
/**
|
|
4004
4477
|
* Format: int64
|
|
4005
4478
|
* @description Number of consecutive scans this finding has appeared in
|
|
4479
|
+
* @example 3
|
|
4006
4480
|
*/
|
|
4007
4481
|
recurrence: number;
|
|
4482
|
+
/**
|
|
4483
|
+
* @description Estimated remediation effort (easy, medium, or hard).
|
|
4484
|
+
* @example medium
|
|
4485
|
+
*/
|
|
4008
4486
|
remediation_difficulty?: string;
|
|
4487
|
+
/**
|
|
4488
|
+
* @description Name of the scanner that produced this finding.
|
|
4489
|
+
* @example agent_security
|
|
4490
|
+
*/
|
|
4009
4491
|
scanner_name: string;
|
|
4010
|
-
/**
|
|
4492
|
+
/**
|
|
4493
|
+
* @description Finding status. One of: open, fixed, ignored. More values may be added; clients must tolerate unknown values.
|
|
4494
|
+
* @example open
|
|
4495
|
+
*/
|
|
4011
4496
|
status: string;
|
|
4012
|
-
/**
|
|
4497
|
+
/**
|
|
4498
|
+
* Format: date-time
|
|
4499
|
+
* @description When this finding was last updated, UTC.
|
|
4500
|
+
* @example 2026-01-15T09:30:00Z
|
|
4501
|
+
*/
|
|
4013
4502
|
updated_at: string;
|
|
4014
4503
|
};
|
|
4015
4504
|
V1SecurityScanActor: {
|
|
@@ -4023,38 +4512,87 @@ export interface components {
|
|
|
4023
4512
|
type: string;
|
|
4024
4513
|
};
|
|
4025
4514
|
V1SecurityScanSummary: {
|
|
4026
|
-
/**
|
|
4515
|
+
/**
|
|
4516
|
+
* @description Project commit at scan start
|
|
4517
|
+
* @example 9fceb02d0ae598e95dc970b74767f19372d61af8
|
|
4518
|
+
*/
|
|
4027
4519
|
commit_sha?: string;
|
|
4028
|
-
/**
|
|
4520
|
+
/**
|
|
4521
|
+
* Format: date-time
|
|
4522
|
+
* @description When the scan finished, UTC; absent while still running.
|
|
4523
|
+
* @example 2026-01-15T09:30:00Z
|
|
4524
|
+
*/
|
|
4029
4525
|
finished_at?: string;
|
|
4030
4526
|
/** @description Scanners requested for this invocation */
|
|
4031
4527
|
requested_scanners: string[] | null;
|
|
4032
|
-
/**
|
|
4528
|
+
/**
|
|
4529
|
+
* @description Unique scan invocation ID
|
|
4530
|
+
* @example a1b2c3d4-e5f6-7890-abcd-ef1234567890
|
|
4531
|
+
*/
|
|
4033
4532
|
scan_id: string;
|
|
4034
|
-
/**
|
|
4533
|
+
/**
|
|
4534
|
+
* Format: date-time
|
|
4535
|
+
* @description When the scan started, UTC.
|
|
4536
|
+
* @example 2026-01-15T09:30:00Z
|
|
4537
|
+
*/
|
|
4035
4538
|
started_at: string;
|
|
4036
|
-
/**
|
|
4539
|
+
/**
|
|
4540
|
+
* @description Scan status. One of: running, completed, failed. More values may be added; clients must tolerate unknown values.
|
|
4541
|
+
* @example completed
|
|
4542
|
+
*/
|
|
4037
4543
|
status: string;
|
|
4038
|
-
/**
|
|
4544
|
+
/**
|
|
4545
|
+
* @description What triggered the scan. Known values include: workflow, user, ui_auto, aikido_import, app_mcp_deep_auto, hvt_scheduled, workspace_scheduled, enterprise_batch, gitsync_pull. More values may be added; clients must tolerate unknown values.
|
|
4546
|
+
* @example workflow
|
|
4547
|
+
*/
|
|
4039
4548
|
trigger_source: string;
|
|
4040
4549
|
/** @description Actor that triggered the scan. */
|
|
4041
4550
|
triggered_by: components["schemas"]["V1SecurityScanActor"];
|
|
4042
4551
|
};
|
|
4043
4552
|
V1SecurityScannerRun: {
|
|
4044
|
-
/**
|
|
4553
|
+
/**
|
|
4554
|
+
* @description Commit at which this scanner actually ran (may differ from invocation commit on carry-forward)
|
|
4555
|
+
* @example 9fceb02d0ae598e95dc970b74767f19372d61af8
|
|
4556
|
+
*/
|
|
4045
4557
|
commit_sha?: string;
|
|
4558
|
+
/**
|
|
4559
|
+
* @description Error message when the scanner failed.
|
|
4560
|
+
* @example Scanner timed out after 300s
|
|
4561
|
+
*/
|
|
4046
4562
|
error_message?: string;
|
|
4047
|
-
/**
|
|
4563
|
+
/**
|
|
4564
|
+
* Format: date-time
|
|
4565
|
+
* @description When this scanner finished, UTC; absent while still running.
|
|
4566
|
+
* @example 2026-01-15T09:30:00Z
|
|
4567
|
+
*/
|
|
4048
4568
|
finished_at?: string;
|
|
4569
|
+
/**
|
|
4570
|
+
* @description Name of the scanner that ran.
|
|
4571
|
+
* @example agent_security
|
|
4572
|
+
*/
|
|
4049
4573
|
scanner_name: string;
|
|
4574
|
+
/**
|
|
4575
|
+
* @description Version of the scanner that ran.
|
|
4576
|
+
* @example 1.4.2
|
|
4577
|
+
*/
|
|
4050
4578
|
scanner_version?: string;
|
|
4051
|
-
/**
|
|
4579
|
+
/**
|
|
4580
|
+
* Format: date-time
|
|
4581
|
+
* @description When this scanner started, UTC.
|
|
4582
|
+
* @example 2026-01-15T09:30:00Z
|
|
4583
|
+
*/
|
|
4052
4584
|
started_at: string;
|
|
4053
|
-
/**
|
|
4585
|
+
/**
|
|
4586
|
+
* @description Scanner run status. One of: succeeded, failed, skipped. More values may be added; clients must tolerate unknown values.
|
|
4587
|
+
* @example failed
|
|
4588
|
+
*/
|
|
4054
4589
|
status: string;
|
|
4055
4590
|
};
|
|
4056
4591
|
V1SelectedLibrary: {
|
|
4057
|
-
/**
|
|
4592
|
+
/**
|
|
4593
|
+
* @description Library project ID
|
|
4594
|
+
* @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
4595
|
+
*/
|
|
4058
4596
|
project_id: string;
|
|
4059
4597
|
};
|
|
4060
4598
|
V1SendMessageInputBody: {
|
|
@@ -4124,51 +4662,54 @@ export interface components {
|
|
|
4124
4662
|
/** @description Knowledge content (markdown). Max 10,000 characters. */
|
|
4125
4663
|
content: string;
|
|
4126
4664
|
};
|
|
4127
|
-
V1StartMessageExportInputBody: {
|
|
4128
|
-
/** @description Exclusive RFC3339 end time. Defaults to the request time. */
|
|
4129
|
-
end_date?: string;
|
|
4130
|
-
/** @description Export only messages from this project. The project must be visible to the caller. May be combined with user_id; both filters must match. */
|
|
4131
|
-
project_id?: string;
|
|
4132
|
-
/** @description Inclusive RFC3339 start time. Defaults to 90 days before end_date. */
|
|
4133
|
-
start_date?: string;
|
|
4134
|
-
/** @description Export only messages sent by this user. May be combined with project_id; both filters must match. */
|
|
4135
|
-
user_id?: string;
|
|
4136
|
-
};
|
|
4137
|
-
V1StartMessageExportOutputBody: {
|
|
4138
|
-
/** @description Export ID used to poll status. */
|
|
4139
|
-
export_id: string;
|
|
4140
|
-
/**
|
|
4141
|
-
* @description Initial export status (running).
|
|
4142
|
-
* @enum {string}
|
|
4143
|
-
*/
|
|
4144
|
-
status: "running";
|
|
4145
|
-
};
|
|
4146
4665
|
V1TriggerSecurityScanInputBody: {
|
|
4147
4666
|
/** @description Project ID */
|
|
4148
4667
|
project_id: string;
|
|
4149
4668
|
};
|
|
4150
4669
|
V1TriggerSecurityScanResponseBody: {
|
|
4151
|
-
/**
|
|
4670
|
+
/**
|
|
4671
|
+
* @description Human-readable status message
|
|
4672
|
+
* @example Security scan started.
|
|
4673
|
+
*/
|
|
4152
4674
|
message?: string;
|
|
4153
|
-
/**
|
|
4675
|
+
/**
|
|
4676
|
+
* @description Scan invocation ID. Poll GET /v1/projects/{project_id}/security-scans/{scan_id} for status (running | completed | failed) and findings.
|
|
4677
|
+
* @example a1b2c3d4-e5f6-7890-abcd-ef1234567890
|
|
4678
|
+
*/
|
|
4154
4679
|
scan_id: string;
|
|
4155
|
-
/**
|
|
4680
|
+
/**
|
|
4681
|
+
* @description One of: started, running, completed. More values may be added; clients must tolerate unknown values.
|
|
4682
|
+
* @example started
|
|
4683
|
+
*/
|
|
4156
4684
|
status: string;
|
|
4157
4685
|
};
|
|
4158
4686
|
V1UnscopedFile: {
|
|
4159
|
-
/**
|
|
4687
|
+
/**
|
|
4688
|
+
* @description Uploaded file ID
|
|
4689
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5/logo.png
|
|
4690
|
+
*/
|
|
4160
4691
|
file_id: string;
|
|
4161
|
-
/**
|
|
4692
|
+
/**
|
|
4693
|
+
* @description Original file name
|
|
4694
|
+
* @example logo.png
|
|
4695
|
+
*/
|
|
4162
4696
|
file_name?: string;
|
|
4163
|
-
/**
|
|
4697
|
+
/**
|
|
4698
|
+
* @description MIME type
|
|
4699
|
+
* @example image/png
|
|
4700
|
+
*/
|
|
4164
4701
|
mime_type?: string;
|
|
4165
|
-
/**
|
|
4702
|
+
/**
|
|
4703
|
+
* @description File type (e.g. user_upload)
|
|
4704
|
+
* @example user_upload
|
|
4705
|
+
*/
|
|
4166
4706
|
type?: string;
|
|
4167
4707
|
};
|
|
4168
4708
|
V1UpdateMemberCreditLimitInputBody: {
|
|
4169
4709
|
/**
|
|
4170
4710
|
* Format: double
|
|
4171
4711
|
* @description The member's monthly credit cap. Send a number >= 0 (0 blocks all spend) to set it, or null to clear it (the member then inherits the workspace default).
|
|
4712
|
+
* @example 500
|
|
4172
4713
|
*/
|
|
4173
4714
|
monthly_credit_limit?: number | null;
|
|
4174
4715
|
/** @description Workspace ID. */
|
|
@@ -4178,6 +4719,7 @@ export interface components {
|
|
|
4178
4719
|
/**
|
|
4179
4720
|
* Format: double
|
|
4180
4721
|
* @description Default monthly credit cap applied to each member without an explicit per-member limit. Send a number >= 0 (0 blocks all member spend) to set it, or null to clear it (members are then bounded only by the workspace balance).
|
|
4722
|
+
* @example 500
|
|
4181
4723
|
*/
|
|
4182
4724
|
default_monthly_member_credit_limit?: number | null;
|
|
4183
4725
|
/** @description Workspace ID. */
|
|
@@ -4187,6 +4729,7 @@ export interface components {
|
|
|
4187
4729
|
/**
|
|
4188
4730
|
* Format: double
|
|
4189
4731
|
* @description Default monthly credit cap applied to each member without an explicit per-member limit. Send a number >= 0 (0 blocks all member spend) to set it, or null to clear it (members are then bounded only by the workspace balance).
|
|
4732
|
+
* @example 500
|
|
4190
4733
|
*/
|
|
4191
4734
|
default_monthly_member_credit_limit?: number | null;
|
|
4192
4735
|
};
|
|
@@ -4199,59 +4742,113 @@ export interface components {
|
|
|
4199
4742
|
start: string;
|
|
4200
4743
|
};
|
|
4201
4744
|
V1WorkspaceAuditLogEntry: {
|
|
4202
|
-
/**
|
|
4745
|
+
/**
|
|
4746
|
+
* @description Action name (e.g. workspace.member.added).
|
|
4747
|
+
* @example workspace.member.role_changed
|
|
4748
|
+
*/
|
|
4203
4749
|
action: string;
|
|
4204
|
-
/**
|
|
4750
|
+
/**
|
|
4751
|
+
* @description Human-readable description of the action, derived from the action name (e.g. Workspace member added).
|
|
4752
|
+
* @example Workspace member role changed
|
|
4753
|
+
*/
|
|
4205
4754
|
action_description: string;
|
|
4206
|
-
/**
|
|
4755
|
+
/**
|
|
4756
|
+
* @description Display name of the actor at the time of the event.
|
|
4757
|
+
* @example Jane Cooper
|
|
4758
|
+
*/
|
|
4207
4759
|
actor_display_name?: string;
|
|
4208
|
-
/**
|
|
4760
|
+
/**
|
|
4761
|
+
* @description User ID of the actor (or system actor ID for non-user actions).
|
|
4762
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
4763
|
+
*/
|
|
4209
4764
|
actor_id: string;
|
|
4210
|
-
/**
|
|
4765
|
+
/**
|
|
4766
|
+
* @description Actor classification (user, scim, system).
|
|
4767
|
+
* @example user
|
|
4768
|
+
*/
|
|
4211
4769
|
actor_type?: string;
|
|
4212
|
-
/**
|
|
4770
|
+
/**
|
|
4771
|
+
* @description First-party client the action came from (web, ios, android, desktop-app); absent when the caller sent no platform header.
|
|
4772
|
+
* @example web
|
|
4773
|
+
*/
|
|
4213
4774
|
client_platform?: string;
|
|
4214
4775
|
/** @description Action-specific structured detail payload. */
|
|
4215
4776
|
details?: {
|
|
4216
4777
|
[key: string]: unknown;
|
|
4217
4778
|
};
|
|
4218
|
-
/**
|
|
4779
|
+
/**
|
|
4780
|
+
* @description Event ID.
|
|
4781
|
+
* @example 01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
4782
|
+
*/
|
|
4219
4783
|
id: string;
|
|
4220
|
-
/**
|
|
4784
|
+
/**
|
|
4785
|
+
* @description IP address that initiated the action.
|
|
4786
|
+
* @example 203.0.113.42
|
|
4787
|
+
*/
|
|
4221
4788
|
ip_address?: string;
|
|
4222
|
-
/**
|
|
4789
|
+
/**
|
|
4790
|
+
* @description success or failed.
|
|
4791
|
+
* @example failed
|
|
4792
|
+
*/
|
|
4223
4793
|
status: string;
|
|
4224
|
-
/**
|
|
4794
|
+
/**
|
|
4795
|
+
* @description Optional message describing the failure cause when status is failed.
|
|
4796
|
+
* @example Insufficient permissions
|
|
4797
|
+
*/
|
|
4225
4798
|
status_message?: string;
|
|
4226
|
-
/**
|
|
4799
|
+
/**
|
|
4800
|
+
* @description Display name of the target at the time of the event.
|
|
4801
|
+
* @example Jane Cooper
|
|
4802
|
+
*/
|
|
4227
4803
|
target_display_name?: string;
|
|
4228
|
-
/**
|
|
4804
|
+
/**
|
|
4805
|
+
* @description ID of the target resource.
|
|
4806
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
4807
|
+
*/
|
|
4229
4808
|
target_id?: string;
|
|
4230
|
-
/**
|
|
4809
|
+
/**
|
|
4810
|
+
* @description Type of the target resource (project, workspace, membership, etc.).
|
|
4811
|
+
* @example membership
|
|
4812
|
+
*/
|
|
4231
4813
|
target_type?: string;
|
|
4232
4814
|
/**
|
|
4233
4815
|
* Format: date-time
|
|
4234
4816
|
* @description When the action occurred.
|
|
4817
|
+
* @example 2026-01-15T09:30:00Z
|
|
4235
4818
|
*/
|
|
4236
4819
|
timestamp: string;
|
|
4237
|
-
/**
|
|
4820
|
+
/**
|
|
4821
|
+
* @description Group ID linking multi-event flows together.
|
|
4822
|
+
* @example 4bf92f3577b34da6a3ce929d0e0e4736
|
|
4823
|
+
*/
|
|
4238
4824
|
trace_group_id?: string;
|
|
4239
|
-
/**
|
|
4825
|
+
/**
|
|
4826
|
+
* @description User agent string for the request.
|
|
4827
|
+
* @example Mozilla/5.0
|
|
4828
|
+
*/
|
|
4240
4829
|
user_agent?: string;
|
|
4241
4830
|
};
|
|
4242
4831
|
V1WorkspaceAuditLogsBody: {
|
|
4832
|
+
/** @description Items in this page. */
|
|
4243
4833
|
data: components["schemas"]["V1WorkspaceAuditLogEntry"][] | null;
|
|
4834
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
4244
4835
|
pagination: components["schemas"]["Pagination"];
|
|
4245
4836
|
};
|
|
4246
4837
|
V1WorkspaceCreditHistoryBody: {
|
|
4838
|
+
/** @description Items in this page. */
|
|
4247
4839
|
data: components["schemas"]["V1CreditHistoryEntry"][] | null;
|
|
4840
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
4248
4841
|
pagination: components["schemas"]["Pagination"];
|
|
4249
4842
|
/**
|
|
4250
4843
|
* Format: int64
|
|
4251
4844
|
* @description Total entry count, present only on the first page. Capped — see total_is_capped.
|
|
4845
|
+
* @example 42
|
|
4252
4846
|
*/
|
|
4253
4847
|
total?: number;
|
|
4254
|
-
/**
|
|
4848
|
+
/**
|
|
4849
|
+
* @description True when total reached the count cap and the real total is higher.
|
|
4850
|
+
* @example false
|
|
4851
|
+
*/
|
|
4255
4852
|
total_is_capped?: boolean;
|
|
4256
4853
|
};
|
|
4257
4854
|
V1WorkspaceCreditsBody: {
|
|
@@ -4260,11 +4857,13 @@ export interface components {
|
|
|
4260
4857
|
/**
|
|
4261
4858
|
* Format: double
|
|
4262
4859
|
* @description Daily credit limit for this workspace.
|
|
4860
|
+
* @example 500
|
|
4263
4861
|
*/
|
|
4264
4862
|
daily_limit: number;
|
|
4265
4863
|
/**
|
|
4266
4864
|
* Format: double
|
|
4267
4865
|
* @description Remaining credits from today's daily grants.
|
|
4866
|
+
* @example 300
|
|
4268
4867
|
*/
|
|
4269
4868
|
daily_remaining: number;
|
|
4270
4869
|
/** @description All future grant expiry groups sorted by date (excluding daily/overage). */
|
|
@@ -4274,58 +4873,121 @@ export interface components {
|
|
|
4274
4873
|
/**
|
|
4275
4874
|
* Format: double
|
|
4276
4875
|
* @description Credits used in the current billing period (see billing_period for the exact window).
|
|
4876
|
+
* @example 500
|
|
4277
4877
|
*/
|
|
4278
4878
|
total_billing_period_used: number;
|
|
4279
4879
|
/**
|
|
4280
4880
|
* Format: double
|
|
4281
4881
|
* @description Total credits granted across all active grants.
|
|
4882
|
+
* @example 2000
|
|
4282
4883
|
*/
|
|
4283
4884
|
total_granted: number;
|
|
4284
4885
|
/**
|
|
4285
4886
|
* Format: double
|
|
4286
4887
|
* @description Total remaining credits across all active grants.
|
|
4888
|
+
* @example 1500
|
|
4287
4889
|
*/
|
|
4288
4890
|
total_remaining: number;
|
|
4289
4891
|
};
|
|
4290
4892
|
V1WorkspaceCreditsExpiringGrant: {
|
|
4291
|
-
/**
|
|
4893
|
+
/**
|
|
4894
|
+
* @description What the expiring credits apply to (e.g. build_time, cloud, ai_gateway).
|
|
4895
|
+
* @example build_time
|
|
4896
|
+
*/
|
|
4292
4897
|
applicability?: string;
|
|
4293
4898
|
/**
|
|
4294
4899
|
* Format: double
|
|
4295
4900
|
* @description Total credits expiring at this date.
|
|
4901
|
+
* @example 1500
|
|
4296
4902
|
*/
|
|
4297
4903
|
credits: number;
|
|
4298
4904
|
/**
|
|
4299
4905
|
* Format: date-time
|
|
4300
4906
|
* @description When these credits expire.
|
|
4907
|
+
* @example 2026-01-15T09:30:00Z
|
|
4301
4908
|
*/
|
|
4302
4909
|
expires_at: string;
|
|
4303
|
-
/**
|
|
4910
|
+
/**
|
|
4911
|
+
* @description Display bucket: billing, rollover, topup, commitment, cashback, or granted.
|
|
4912
|
+
* @example billing
|
|
4913
|
+
*/
|
|
4304
4914
|
grant_type: string;
|
|
4305
4915
|
};
|
|
4306
4916
|
V1WorkspaceCreditsGrantTypeBalance: {
|
|
4307
|
-
/**
|
|
4917
|
+
/**
|
|
4918
|
+
* @description Display bucket: billing, daily, rollover, topup, commitment, cashback, or granted.
|
|
4919
|
+
* @example billing
|
|
4920
|
+
*/
|
|
4308
4921
|
grant_type: string;
|
|
4309
4922
|
/**
|
|
4310
4923
|
* Format: double
|
|
4311
4924
|
* @description Total credits granted for this type.
|
|
4925
|
+
* @example 1500
|
|
4312
4926
|
*/
|
|
4313
4927
|
granted: number;
|
|
4314
4928
|
/**
|
|
4315
4929
|
* Format: double
|
|
4316
4930
|
* @description Remaining credits for this type.
|
|
4931
|
+
* @example 1200
|
|
4317
4932
|
*/
|
|
4318
4933
|
remaining: number;
|
|
4319
4934
|
};
|
|
4935
|
+
V1WorkspaceGroup: {
|
|
4936
|
+
/**
|
|
4937
|
+
* Format: date-time
|
|
4938
|
+
* @description When the group was created.
|
|
4939
|
+
* @example 2026-01-15T09:30:00Z
|
|
4940
|
+
*/
|
|
4941
|
+
created_at: string;
|
|
4942
|
+
/**
|
|
4943
|
+
* @description Group description. Absent when not set.
|
|
4944
|
+
* @example Platform and infrastructure engineers
|
|
4945
|
+
*/
|
|
4946
|
+
description?: string;
|
|
4947
|
+
/**
|
|
4948
|
+
* @description Group ID. Use as the target id of a type "group" audience entry when publishing with visibility "custom" via POST or PATCH /v1/projects/{project_id}/publish.
|
|
4949
|
+
* @example engineering_workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
4950
|
+
*/
|
|
4951
|
+
id: string;
|
|
4952
|
+
/**
|
|
4953
|
+
* Format: int64
|
|
4954
|
+
* @description Number of members in the group: active members, pending members, and invited users who have not signed up yet.
|
|
4955
|
+
* @example 12
|
|
4956
|
+
*/
|
|
4957
|
+
member_count: number;
|
|
4958
|
+
/**
|
|
4959
|
+
* @description Group display name, unique within the workspace.
|
|
4960
|
+
* @example Engineering
|
|
4961
|
+
*/
|
|
4962
|
+
name: string;
|
|
4963
|
+
/**
|
|
4964
|
+
* @description External ID assigned by the SCIM identity provider. Present only on SCIM-provisioned groups.
|
|
4965
|
+
* @example 00g1a2b3c4D5E6F7g8h9
|
|
4966
|
+
*/
|
|
4967
|
+
scim_external_id?: string;
|
|
4968
|
+
/**
|
|
4969
|
+
* Format: date-time
|
|
4970
|
+
* @description When the group was last updated.
|
|
4971
|
+
* @example 2026-01-15T09:30:00Z
|
|
4972
|
+
*/
|
|
4973
|
+
updated_at: string;
|
|
4974
|
+
/**
|
|
4975
|
+
* @description Workspace the group belongs to.
|
|
4976
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
4977
|
+
*/
|
|
4978
|
+
workspace_id: string;
|
|
4979
|
+
};
|
|
4320
4980
|
V1WorkspaceInsightsActivityFreshness: {
|
|
4321
4981
|
/**
|
|
4322
4982
|
* Format: date-time
|
|
4323
4983
|
* @description Data horizon for the edit counts.
|
|
4984
|
+
* @example 2026-01-15T09:30:00Z
|
|
4324
4985
|
*/
|
|
4325
4986
|
edits_as_of?: string;
|
|
4326
4987
|
/**
|
|
4327
4988
|
* Format: date-time
|
|
4328
4989
|
* @description Data horizon for the visitor counts.
|
|
4990
|
+
* @example 2026-01-15T09:30:00Z
|
|
4329
4991
|
*/
|
|
4330
4992
|
visitors_as_of?: string;
|
|
4331
4993
|
};
|
|
@@ -4333,6 +4995,7 @@ export interface components {
|
|
|
4333
4995
|
/**
|
|
4334
4996
|
* Format: date-time
|
|
4335
4997
|
* @description Conservative workspace-wide freshness horizon for the risk rollups; individual project rollups may be newer.
|
|
4998
|
+
* @example 2026-01-15T09:30:00Z
|
|
4336
4999
|
*/
|
|
4337
5000
|
as_of?: string;
|
|
4338
5001
|
/** @description Finding-catalog counts, dominance-suppressed and severity-ordered. */
|
|
@@ -4341,70 +5004,184 @@ export interface components {
|
|
|
4341
5004
|
summary: components["schemas"]["V1WorkspaceInsightsSummary"];
|
|
4342
5005
|
};
|
|
4343
5006
|
V1WorkspaceInsightsEdgeFunction: {
|
|
4344
|
-
/**
|
|
5007
|
+
/**
|
|
5008
|
+
* @description Edge function name.
|
|
5009
|
+
* @example send-welcome-email
|
|
5010
|
+
*/
|
|
4345
5011
|
name: string;
|
|
4346
5012
|
};
|
|
4347
5013
|
V1WorkspaceInsightsFinding: {
|
|
4348
|
-
/**
|
|
5014
|
+
/**
|
|
5015
|
+
* @description Finding category (e.g. data, access, exposure).
|
|
5016
|
+
* @example data
|
|
5017
|
+
*/
|
|
4349
5018
|
category: string;
|
|
4350
|
-
/**
|
|
5019
|
+
/**
|
|
5020
|
+
* @description Human-readable finding description.
|
|
5021
|
+
* @example A public table has row-level security disabled, exposing all rows to anonymous callers.
|
|
5022
|
+
*/
|
|
4351
5023
|
description: string;
|
|
4352
|
-
/**
|
|
5024
|
+
/**
|
|
5025
|
+
* @description Stable finding-catalog slug (e.g. public_pii_exposure, orphaned_owner).
|
|
5026
|
+
* @example public_pii_exposure
|
|
5027
|
+
*/
|
|
4353
5028
|
id: string;
|
|
4354
5029
|
/**
|
|
4355
5030
|
* Format: int64
|
|
4356
5031
|
* @description Projects matching this finding.
|
|
5032
|
+
* @example 12
|
|
4357
5033
|
*/
|
|
4358
5034
|
project_count: number;
|
|
4359
|
-
/**
|
|
5035
|
+
/**
|
|
5036
|
+
* @description Review priority: needs_review | review_recommended | no_review_needed.
|
|
5037
|
+
* @example needs_review
|
|
5038
|
+
*/
|
|
4360
5039
|
severity: string;
|
|
4361
|
-
/**
|
|
5040
|
+
/**
|
|
5041
|
+
* @description Human-readable finding title.
|
|
5042
|
+
* @example Row-level security disabled on a public table
|
|
5043
|
+
*/
|
|
4362
5044
|
title: string;
|
|
4363
5045
|
};
|
|
4364
5046
|
V1WorkspaceInsightsOwner: {
|
|
4365
|
-
/**
|
|
5047
|
+
/**
|
|
5048
|
+
* @description Project owner's display name.
|
|
5049
|
+
* @example Jane Cooper
|
|
5050
|
+
*/
|
|
4366
5051
|
display_name?: string;
|
|
4367
5052
|
};
|
|
4368
5053
|
V1WorkspaceInsightsProject: {
|
|
5054
|
+
/**
|
|
5055
|
+
* @description Activity bucket: active, inactive, or dead.
|
|
5056
|
+
* @example active
|
|
5057
|
+
*/
|
|
4369
5058
|
activity_group?: string;
|
|
5059
|
+
/** @description Configured connector names. */
|
|
4370
5060
|
connectors?: string[] | null;
|
|
5061
|
+
/**
|
|
5062
|
+
* @description User-provided project description.
|
|
5063
|
+
* @example Marketing landing page for the Q1 product launch.
|
|
5064
|
+
*/
|
|
4371
5065
|
description?: string;
|
|
5066
|
+
/**
|
|
5067
|
+
* @description Project display name.
|
|
5068
|
+
* @example Acme Landing Page
|
|
5069
|
+
*/
|
|
4372
5070
|
display_name?: string;
|
|
5071
|
+
/** @description Deployed edge functions. */
|
|
4373
5072
|
edge_functions?: components["schemas"]["V1WorkspaceInsightsEdgeFunction"][] | null;
|
|
4374
|
-
/**
|
|
5073
|
+
/**
|
|
5074
|
+
* Format: int64
|
|
5075
|
+
* @description Total edits over the project's lifetime.
|
|
5076
|
+
* @example 128
|
|
5077
|
+
*/
|
|
4375
5078
|
edit_count: number;
|
|
4376
|
-
/**
|
|
5079
|
+
/**
|
|
5080
|
+
* Format: int64
|
|
5081
|
+
* @description Edits in the last 24 hours.
|
|
5082
|
+
* @example 4
|
|
5083
|
+
*/
|
|
4377
5084
|
edits_24h: number;
|
|
4378
|
-
/**
|
|
5085
|
+
/**
|
|
5086
|
+
* Format: int64
|
|
5087
|
+
* @description Edits in the last 30 days.
|
|
5088
|
+
* @example 67
|
|
5089
|
+
*/
|
|
4379
5090
|
edits_30d: number;
|
|
4380
|
-
/**
|
|
5091
|
+
/**
|
|
5092
|
+
* Format: int64
|
|
5093
|
+
* @description Edits in the last 7 days.
|
|
5094
|
+
* @example 21
|
|
5095
|
+
*/
|
|
4381
5096
|
edits_7d: number;
|
|
5097
|
+
/**
|
|
5098
|
+
* @description AI-generated project description.
|
|
5099
|
+
* @example A single-page marketing site with a hero, feature grid, and signup form.
|
|
5100
|
+
*/
|
|
4382
5101
|
generated_description?: string;
|
|
5102
|
+
/**
|
|
5103
|
+
* @description Project ID.
|
|
5104
|
+
* @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
5105
|
+
*/
|
|
4383
5106
|
id: string;
|
|
5107
|
+
/**
|
|
5108
|
+
* @description Whether the project is published.
|
|
5109
|
+
* @example true
|
|
5110
|
+
*/
|
|
4384
5111
|
is_published?: boolean;
|
|
4385
|
-
/**
|
|
5112
|
+
/**
|
|
5113
|
+
* Format: date-time
|
|
5114
|
+
* @description When the project was last edited.
|
|
5115
|
+
* @example 2026-01-15T09:30:00Z
|
|
5116
|
+
*/
|
|
4386
5117
|
last_edited_at?: string;
|
|
4387
|
-
/**
|
|
5118
|
+
/**
|
|
5119
|
+
* Format: date-time
|
|
5120
|
+
* @description When the project was last security-scanned.
|
|
5121
|
+
* @example 2026-01-15T09:30:00Z
|
|
5122
|
+
*/
|
|
4388
5123
|
last_security_scan_at?: string;
|
|
4389
5124
|
/** @description The reason matching the single applied finding_id, when set. */
|
|
4390
5125
|
matched_reason?: components["schemas"]["V1WorkspaceInsightsReason"];
|
|
4391
|
-
/**
|
|
5126
|
+
/**
|
|
5127
|
+
* Format: int64
|
|
5128
|
+
* @description Total chat messages in the project.
|
|
5129
|
+
* @example 56
|
|
5130
|
+
*/
|
|
4392
5131
|
message_count: number;
|
|
5132
|
+
/**
|
|
5133
|
+
* @description Project name.
|
|
5134
|
+
* @example Acme Landing Page
|
|
5135
|
+
*/
|
|
4393
5136
|
name?: string;
|
|
5137
|
+
/**
|
|
5138
|
+
* @description Open Graph preview image URL.
|
|
5139
|
+
* @example https://lovable.dev/cdn/projects/acme-landing-page/og.png
|
|
5140
|
+
*/
|
|
4394
5141
|
og_image_url?: string;
|
|
5142
|
+
/** @description Project owner identity. */
|
|
4395
5143
|
owner?: components["schemas"]["V1WorkspaceInsightsOwner"];
|
|
5144
|
+
/**
|
|
5145
|
+
* @description Publishing status: external, workspace, or not_published.
|
|
5146
|
+
* @example external
|
|
5147
|
+
*/
|
|
4396
5148
|
publish_visibility?: string;
|
|
4397
|
-
/**
|
|
5149
|
+
/**
|
|
5150
|
+
* @description Review priority: needs_review, review_recommended, no_review_needed, or unscored.
|
|
5151
|
+
* @example needs_review
|
|
5152
|
+
*/
|
|
4398
5153
|
review_priority?: string;
|
|
5154
|
+
/** @description Risk reasons explaining the review priority. */
|
|
4399
5155
|
review_priority_explanation: components["schemas"]["V1WorkspaceInsightsReason"][] | null;
|
|
5156
|
+
/** @description Per-project security and activity signals. */
|
|
4400
5157
|
signals: components["schemas"]["V1WorkspaceInsightsSignals"];
|
|
5158
|
+
/**
|
|
5159
|
+
* @description Live project preview URL.
|
|
5160
|
+
* @example https://acme-landing-page.lovable.app
|
|
5161
|
+
*/
|
|
4401
5162
|
url?: string;
|
|
5163
|
+
/**
|
|
5164
|
+
* @description Project visibility: public, private, or draft.
|
|
5165
|
+
* @example public
|
|
5166
|
+
*/
|
|
4402
5167
|
visibility?: string;
|
|
4403
|
-
/**
|
|
5168
|
+
/**
|
|
5169
|
+
* Format: int64
|
|
5170
|
+
* @description Unique visitors in the last 24 hours.
|
|
5171
|
+
* @example 35
|
|
5172
|
+
*/
|
|
4404
5173
|
visitors_24h: number;
|
|
4405
|
-
/**
|
|
5174
|
+
/**
|
|
5175
|
+
* Format: int64
|
|
5176
|
+
* @description Unique visitors in the last 30 days.
|
|
5177
|
+
* @example 840
|
|
5178
|
+
*/
|
|
4406
5179
|
visitors_30d: number;
|
|
4407
|
-
/**
|
|
5180
|
+
/**
|
|
5181
|
+
* Format: int64
|
|
5182
|
+
* @description Unique visitors in the last 7 days.
|
|
5183
|
+
* @example 210
|
|
5184
|
+
*/
|
|
4408
5185
|
visitors_7d: number;
|
|
4409
5186
|
};
|
|
4410
5187
|
V1WorkspaceInsightsProjectsBody: {
|
|
@@ -4415,121 +5192,296 @@ export interface components {
|
|
|
4415
5192
|
/**
|
|
4416
5193
|
* Format: date-time
|
|
4417
5194
|
* @description Conservative workspace-wide freshness horizon for the risk rollups; individual project rollups may be newer.
|
|
5195
|
+
* @example 2026-01-15T09:30:00Z
|
|
4418
5196
|
*/
|
|
4419
5197
|
as_of?: string;
|
|
5198
|
+
/** @description Items in this page. */
|
|
4420
5199
|
data: components["schemas"]["V1WorkspaceInsightsProject"][] | null;
|
|
5200
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
4421
5201
|
pagination: components["schemas"]["Pagination"];
|
|
4422
5202
|
/**
|
|
4423
5203
|
* Format: int64
|
|
4424
5204
|
* @description Total matching projects across all pages.
|
|
5205
|
+
* @example 42
|
|
4425
5206
|
*/
|
|
4426
5207
|
total: number;
|
|
4427
5208
|
};
|
|
4428
5209
|
V1WorkspaceInsightsReason: {
|
|
5210
|
+
/**
|
|
5211
|
+
* @description Risk-reason category (e.g. data, access, exposure).
|
|
5212
|
+
* @example data
|
|
5213
|
+
*/
|
|
4429
5214
|
category: string;
|
|
5215
|
+
/**
|
|
5216
|
+
* @description Human-readable explanation of the risk reason.
|
|
5217
|
+
* @example A public table exposes personal data to anonymous callers.
|
|
5218
|
+
*/
|
|
4430
5219
|
detail: string;
|
|
4431
|
-
/**
|
|
5220
|
+
/**
|
|
5221
|
+
* @description Stable risk-reason slug.
|
|
5222
|
+
* @example public_pii_exposure
|
|
5223
|
+
*/
|
|
4432
5224
|
id: string;
|
|
5225
|
+
/**
|
|
5226
|
+
* @description Human-readable risk-reason label.
|
|
5227
|
+
* @example Public PII exposure
|
|
5228
|
+
*/
|
|
4433
5229
|
label: string;
|
|
4434
|
-
/**
|
|
5230
|
+
/**
|
|
5231
|
+
* @description Review priority: needs_review | review_recommended | no_review_needed.
|
|
5232
|
+
* @example needs_review
|
|
5233
|
+
*/
|
|
4435
5234
|
severity: string;
|
|
4436
5235
|
/** @description Typed per-reason counts. */
|
|
4437
5236
|
values?: components["schemas"]["V1WorkspaceInsightsReasonValues"];
|
|
4438
5237
|
};
|
|
4439
5238
|
V1WorkspaceInsightsReasonValues: {
|
|
4440
|
-
/**
|
|
5239
|
+
/**
|
|
5240
|
+
* Format: int64
|
|
5241
|
+
* @description Number of configured connectors.
|
|
5242
|
+
* @example 2
|
|
5243
|
+
*/
|
|
4441
5244
|
connector_count?: number;
|
|
4442
|
-
/**
|
|
5245
|
+
/**
|
|
5246
|
+
* Format: int64
|
|
5247
|
+
* @description Number of deployed edge functions.
|
|
5248
|
+
* @example 3
|
|
5249
|
+
*/
|
|
4443
5250
|
edge_function_count?: number;
|
|
4444
|
-
/**
|
|
5251
|
+
/**
|
|
5252
|
+
* Format: int64
|
|
5253
|
+
* @description Number of error-level security findings.
|
|
5254
|
+
* @example 2
|
|
5255
|
+
*/
|
|
4445
5256
|
error_count?: number;
|
|
4446
|
-
/**
|
|
5257
|
+
/**
|
|
5258
|
+
* Format: int64
|
|
5259
|
+
* @description Number of info-level security findings.
|
|
5260
|
+
* @example 8
|
|
5261
|
+
*/
|
|
4447
5262
|
info_count?: number;
|
|
4448
|
-
/**
|
|
5263
|
+
/**
|
|
5264
|
+
* Format: int64
|
|
5265
|
+
* @description Number of open PII findings.
|
|
5266
|
+
* @example 3
|
|
5267
|
+
*/
|
|
4449
5268
|
open_pii_finding_count?: number;
|
|
4450
|
-
/**
|
|
5269
|
+
/**
|
|
5270
|
+
* Format: int64
|
|
5271
|
+
* @description Number of stored project secrets.
|
|
5272
|
+
* @example 4
|
|
5273
|
+
*/
|
|
4451
5274
|
secret_count?: number;
|
|
4452
|
-
/**
|
|
5275
|
+
/**
|
|
5276
|
+
* Format: int64
|
|
5277
|
+
* @description Number of users the project is shared with.
|
|
5278
|
+
* @example 6
|
|
5279
|
+
*/
|
|
4453
5280
|
shared_user_count?: number;
|
|
4454
|
-
/**
|
|
5281
|
+
/**
|
|
5282
|
+
* Format: int64
|
|
5283
|
+
* @description Number of warning-level security findings.
|
|
5284
|
+
* @example 5
|
|
5285
|
+
*/
|
|
4455
5286
|
warning_count?: number;
|
|
4456
5287
|
};
|
|
4457
5288
|
V1WorkspaceInsightsReviewPriority: {
|
|
4458
5289
|
/**
|
|
4459
5290
|
* Format: int64
|
|
4460
5291
|
* @description Projects that need review (critical risk).
|
|
5292
|
+
* @example 3
|
|
4461
5293
|
*/
|
|
4462
5294
|
needs_review: number;
|
|
4463
5295
|
/**
|
|
4464
5296
|
* Format: int64
|
|
4465
5297
|
* @description Projects that don't need review (low or minimal risk).
|
|
5298
|
+
* @example 12
|
|
4466
5299
|
*/
|
|
4467
5300
|
no_review_needed: number;
|
|
4468
5301
|
/**
|
|
4469
5302
|
* Format: int64
|
|
4470
5303
|
* @description Projects where review is recommended (high or medium risk).
|
|
5304
|
+
* @example 5
|
|
4471
5305
|
*/
|
|
4472
5306
|
review_recommended: number;
|
|
4473
5307
|
};
|
|
4474
5308
|
V1WorkspaceInsightsSignals: {
|
|
4475
|
-
/**
|
|
5309
|
+
/**
|
|
5310
|
+
* Format: int64
|
|
5311
|
+
* @description Number of chat attachments.
|
|
5312
|
+
* @example 7
|
|
5313
|
+
*/
|
|
4476
5314
|
chat_attachment_count: number;
|
|
4477
|
-
/**
|
|
5315
|
+
/**
|
|
5316
|
+
* Format: int64
|
|
5317
|
+
* @description Number of configured connectors.
|
|
5318
|
+
* @example 2
|
|
5319
|
+
*/
|
|
4478
5320
|
connector_count: number;
|
|
4479
|
-
/**
|
|
5321
|
+
/**
|
|
5322
|
+
* Format: int64
|
|
5323
|
+
* @description Number of deployed edge functions.
|
|
5324
|
+
* @example 3
|
|
5325
|
+
*/
|
|
4480
5326
|
edge_function_count: number;
|
|
4481
|
-
/**
|
|
5327
|
+
/**
|
|
5328
|
+
* Format: int64
|
|
5329
|
+
* @description Number of error-level security findings.
|
|
5330
|
+
* @example 2
|
|
5331
|
+
*/
|
|
4482
5332
|
error_count: number;
|
|
5333
|
+
/**
|
|
5334
|
+
* @description Whether external-collaborator status could be determined.
|
|
5335
|
+
* @example true
|
|
5336
|
+
*/
|
|
4483
5337
|
external_collaborators_known: boolean;
|
|
5338
|
+
/**
|
|
5339
|
+
* @description Whether the project has any chat attachments.
|
|
5340
|
+
* @example true
|
|
5341
|
+
*/
|
|
4484
5342
|
has_chat_attachment: boolean;
|
|
5343
|
+
/**
|
|
5344
|
+
* @description Whether the project has collaborators outside the workspace.
|
|
5345
|
+
* @example true
|
|
5346
|
+
*/
|
|
4485
5347
|
has_external_collaborators: boolean;
|
|
5348
|
+
/**
|
|
5349
|
+
* @description Whether the project has any detected PII.
|
|
5350
|
+
* @example true
|
|
5351
|
+
*/
|
|
4486
5352
|
has_pii: boolean;
|
|
5353
|
+
/**
|
|
5354
|
+
* @description Whether the project has any uploaded assets.
|
|
5355
|
+
* @example true
|
|
5356
|
+
*/
|
|
4487
5357
|
has_project_asset: boolean;
|
|
5358
|
+
/**
|
|
5359
|
+
* @description Whether the project stores any secrets.
|
|
5360
|
+
* @example true
|
|
5361
|
+
*/
|
|
4488
5362
|
has_project_secret: boolean;
|
|
4489
|
-
/**
|
|
5363
|
+
/**
|
|
5364
|
+
* Format: int64
|
|
5365
|
+
* @description Number of info-level security findings.
|
|
5366
|
+
* @example 8
|
|
5367
|
+
*/
|
|
4490
5368
|
info_count: number;
|
|
5369
|
+
/**
|
|
5370
|
+
* @description Whether the project has no active owner.
|
|
5371
|
+
* @example false
|
|
5372
|
+
*/
|
|
4491
5373
|
is_orphaned: boolean;
|
|
5374
|
+
/**
|
|
5375
|
+
* @description Whether the project is published to a public (external) audience.
|
|
5376
|
+
* @example true
|
|
5377
|
+
*/
|
|
4492
5378
|
is_public_published: boolean;
|
|
5379
|
+
/**
|
|
5380
|
+
* @description Whether the project is published.
|
|
5381
|
+
* @example true
|
|
5382
|
+
*/
|
|
4493
5383
|
is_published: boolean;
|
|
5384
|
+
/**
|
|
5385
|
+
* @description Whether Lovable Cloud (Supabase) is enabled for the project.
|
|
5386
|
+
* @example true
|
|
5387
|
+
*/
|
|
4494
5388
|
lovable_cloud_enabled: boolean;
|
|
4495
|
-
/**
|
|
5389
|
+
/**
|
|
5390
|
+
* Format: int64
|
|
5391
|
+
* @description Number of open PII findings.
|
|
5392
|
+
* @example 3
|
|
5393
|
+
*/
|
|
4496
5394
|
open_pii_finding_count: number;
|
|
5395
|
+
/**
|
|
5396
|
+
* @description Whether the project is shared more broadly than recommended.
|
|
5397
|
+
* @example false
|
|
5398
|
+
*/
|
|
4497
5399
|
overshared: boolean;
|
|
4498
|
-
/**
|
|
5400
|
+
/**
|
|
5401
|
+
* Format: int64
|
|
5402
|
+
* @description Number of uploaded project assets.
|
|
5403
|
+
* @example 10
|
|
5404
|
+
*/
|
|
4499
5405
|
project_asset_count: number;
|
|
4500
|
-
/**
|
|
5406
|
+
/**
|
|
5407
|
+
* Format: int64
|
|
5408
|
+
* @description Number of stored project secrets.
|
|
5409
|
+
* @example 4
|
|
5410
|
+
*/
|
|
4501
5411
|
project_secret_count: number;
|
|
4502
|
-
/**
|
|
5412
|
+
/**
|
|
5413
|
+
* Format: int64
|
|
5414
|
+
* @description Number of users the project is shared with.
|
|
5415
|
+
* @example 6
|
|
5416
|
+
*/
|
|
4503
5417
|
shared_user_count: number;
|
|
5418
|
+
/** @description Enabled Supabase auth providers. */
|
|
4504
5419
|
supabase_auth_providers?: string[] | null;
|
|
4505
|
-
/**
|
|
5420
|
+
/**
|
|
5421
|
+
* Format: int64
|
|
5422
|
+
* @description Number of Supabase tables with row-level security enabled.
|
|
5423
|
+
* @example 10
|
|
5424
|
+
*/
|
|
4506
5425
|
supabase_rls_enabled_table_count?: number;
|
|
4507
|
-
/**
|
|
5426
|
+
/**
|
|
5427
|
+
* Format: date-time
|
|
5428
|
+
* @description When the Supabase signals were last fetched.
|
|
5429
|
+
* @example 2026-01-15T09:30:00Z
|
|
5430
|
+
*/
|
|
4508
5431
|
supabase_signals_fetched_at?: string;
|
|
4509
|
-
/**
|
|
5432
|
+
/**
|
|
5433
|
+
* Format: int64
|
|
5434
|
+
* @description Number of Supabase storage buckets.
|
|
5435
|
+
* @example 2
|
|
5436
|
+
*/
|
|
4510
5437
|
supabase_storage_bucket_count?: number;
|
|
4511
|
-
/**
|
|
5438
|
+
/**
|
|
5439
|
+
* Format: int64
|
|
5440
|
+
* @description Number of Supabase database tables.
|
|
5441
|
+
* @example 12
|
|
5442
|
+
*/
|
|
4512
5443
|
supabase_table_count?: number;
|
|
4513
|
-
/**
|
|
5444
|
+
/**
|
|
5445
|
+
* Format: int64
|
|
5446
|
+
* @description Number of error-level supply-chain findings.
|
|
5447
|
+
* @example 1
|
|
5448
|
+
*/
|
|
4514
5449
|
supply_chain_error_count: number;
|
|
4515
|
-
/**
|
|
5450
|
+
/**
|
|
5451
|
+
* Format: int64
|
|
5452
|
+
* @description Number of info-level supply-chain findings.
|
|
5453
|
+
* @example 4
|
|
5454
|
+
*/
|
|
4516
5455
|
supply_chain_info_count: number;
|
|
4517
|
-
/**
|
|
5456
|
+
/**
|
|
5457
|
+
* Format: int64
|
|
5458
|
+
* @description Number of warning-level supply-chain findings.
|
|
5459
|
+
* @example 3
|
|
5460
|
+
*/
|
|
4518
5461
|
supply_chain_warning_count: number;
|
|
4519
|
-
/**
|
|
5462
|
+
/**
|
|
5463
|
+
* Format: int64
|
|
5464
|
+
* @description Number of warning-level security findings.
|
|
5465
|
+
* @example 5
|
|
5466
|
+
*/
|
|
4520
5467
|
warning_count: number;
|
|
4521
5468
|
};
|
|
4522
5469
|
V1WorkspaceInsightsStat: {
|
|
4523
5470
|
/**
|
|
4524
5471
|
* Format: int64
|
|
4525
5472
|
* @description Signed change over the delta window.
|
|
5473
|
+
* @example 3
|
|
4526
5474
|
*/
|
|
4527
5475
|
delta_30d: number;
|
|
4528
|
-
/**
|
|
5476
|
+
/**
|
|
5477
|
+
* @description Human-readable window for delta_30d (e.g. "30 days").
|
|
5478
|
+
* @example 30 days
|
|
5479
|
+
*/
|
|
4529
5480
|
delta_window: string;
|
|
4530
5481
|
/**
|
|
4531
5482
|
* Format: int64
|
|
4532
5483
|
* @description Current count.
|
|
5484
|
+
* @example 42
|
|
4533
5485
|
*/
|
|
4534
5486
|
value: number;
|
|
4535
5487
|
};
|
|
@@ -4544,66 +5496,123 @@ export interface components {
|
|
|
4544
5496
|
workspace_members: components["schemas"]["V1WorkspaceInsightsStat"];
|
|
4545
5497
|
};
|
|
4546
5498
|
V1WorkspaceMember: {
|
|
4547
|
-
/**
|
|
5499
|
+
/**
|
|
5500
|
+
* @description User display name as stored on the membership.
|
|
5501
|
+
* @example Jane Cooper
|
|
5502
|
+
*/
|
|
4548
5503
|
display_name?: string;
|
|
4549
|
-
/**
|
|
5504
|
+
/**
|
|
5505
|
+
* @description Member email as stored on the membership. For pending invites this is the invited email. May be absent on legacy membership rows.
|
|
5506
|
+
* @example jane.cooper@acme.com
|
|
5507
|
+
*/
|
|
4550
5508
|
email?: string;
|
|
5509
|
+
/** @description Groups the member belongs to, sorted by group name. Never truncated: a member in many groups returns all of them, so response size scales with group membership. Present whenever the request asks for include=groups, empty for a member in no groups; absent otherwise. */
|
|
5510
|
+
groups?: components["schemas"]["V1WorkspaceMemberGroup"][];
|
|
4551
5511
|
/**
|
|
4552
5512
|
* Format: date-time
|
|
4553
5513
|
* @description When the user was invited.
|
|
5514
|
+
* @example 2026-01-15T09:30:00Z
|
|
4554
5515
|
*/
|
|
4555
5516
|
invited_at?: string;
|
|
4556
5517
|
/**
|
|
4557
5518
|
* Format: date-time
|
|
4558
5519
|
* @description When the user accepted the invitation. Absent on pending invites.
|
|
5520
|
+
* @example 2026-01-15T09:30:00Z
|
|
4559
5521
|
*/
|
|
4560
5522
|
joined_at?: string;
|
|
4561
5523
|
/**
|
|
4562
5524
|
* Format: double
|
|
4563
5525
|
* @description Explicit monthly credit cap for this member. Absent means no per-member cap is set and the workspace default applies. Visible for yourself; visible for other members only with permission to view member usage.
|
|
5526
|
+
* @example 500
|
|
4564
5527
|
*/
|
|
4565
5528
|
monthly_credit_limit?: number;
|
|
4566
|
-
/**
|
|
5529
|
+
/**
|
|
5530
|
+
* @description Workspace role. One of: owner, admin, member, viewer, collaborator.
|
|
5531
|
+
* @example admin
|
|
5532
|
+
*/
|
|
4567
5533
|
role: string;
|
|
4568
|
-
/**
|
|
5534
|
+
/**
|
|
5535
|
+
* @description Stable opaque identifier for the entry. For active members this is the user ID; for pending invites this is the Spanner-generated membership row id (never an email-derived value).
|
|
5536
|
+
* @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
|
|
5537
|
+
*/
|
|
4569
5538
|
user_id: string;
|
|
4570
|
-
/**
|
|
5539
|
+
/**
|
|
5540
|
+
* @description Workspace the membership belongs to.
|
|
5541
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
5542
|
+
*/
|
|
4571
5543
|
workspace_id: string;
|
|
4572
5544
|
};
|
|
5545
|
+
V1WorkspaceMemberGroup: {
|
|
5546
|
+
/**
|
|
5547
|
+
* @description Group ID, as returned by GET /v1/workspaces/{workspace_id}/groups.
|
|
5548
|
+
* @example engineering_workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
5549
|
+
*/
|
|
5550
|
+
id: string;
|
|
5551
|
+
/**
|
|
5552
|
+
* @description Group display name.
|
|
5553
|
+
* @example Engineering
|
|
5554
|
+
*/
|
|
5555
|
+
name: string;
|
|
5556
|
+
};
|
|
4573
5557
|
V1WorkspaceSettingsBody: {
|
|
4574
5558
|
/**
|
|
4575
5559
|
* Format: date-time
|
|
4576
5560
|
* @description End of the current billing period.
|
|
5561
|
+
* @example 2026-02-01T00:00:00Z
|
|
4577
5562
|
*/
|
|
4578
5563
|
billing_period_end_date?: string;
|
|
4579
5564
|
/**
|
|
4580
5565
|
* Format: date-time
|
|
4581
5566
|
* @description Start of the current billing period.
|
|
5567
|
+
* @example 2026-01-01T00:00:00Z
|
|
4582
5568
|
*/
|
|
4583
5569
|
billing_period_start_date?: string;
|
|
4584
5570
|
/**
|
|
4585
5571
|
* Format: double
|
|
4586
5572
|
* @description Default monthly credit cap applied to each member who has no explicit per-member limit. Absent when unset (members are bounded only by the workspace balance) or when the caller lacks permission to view workspace usage.
|
|
5573
|
+
* @example 500
|
|
4587
5574
|
*/
|
|
4588
5575
|
default_monthly_member_credit_limit?: number;
|
|
4589
|
-
/**
|
|
5576
|
+
/**
|
|
5577
|
+
* @description Default visibility applied to new projects. One of: public, private, draft. Absent means the workspace effective default of private.
|
|
5578
|
+
* @example private
|
|
5579
|
+
*/
|
|
4590
5580
|
default_project_visibility?: string;
|
|
4591
|
-
/**
|
|
5581
|
+
/**
|
|
5582
|
+
* @description Whether PII scanning is enabled across project resources.
|
|
5583
|
+
* @example true
|
|
5584
|
+
*/
|
|
4592
5585
|
enable_pii: boolean;
|
|
4593
|
-
/**
|
|
5586
|
+
/**
|
|
5587
|
+
* @description Whether SSO is enforced for all members.
|
|
5588
|
+
* @example true
|
|
5589
|
+
*/
|
|
4594
5590
|
enforce_sso: boolean;
|
|
4595
|
-
/**
|
|
5591
|
+
/**
|
|
5592
|
+
* @description Workspace ID.
|
|
5593
|
+
* @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
|
|
5594
|
+
*/
|
|
4596
5595
|
id: string;
|
|
4597
|
-
/**
|
|
5596
|
+
/**
|
|
5597
|
+
* @description Workspace display name.
|
|
5598
|
+
* @example Acme Inc
|
|
5599
|
+
*/
|
|
4598
5600
|
name: string;
|
|
4599
5601
|
/**
|
|
4600
5602
|
* Format: int64
|
|
4601
5603
|
* @description Workspace-specific seat limit when one has been explicitly configured. Absent when the workspace runs on its plan's default (Enterprise workspaces are typically unlimited unless a per-tenant cap is set).
|
|
5604
|
+
* @example 25
|
|
4602
5605
|
*/
|
|
4603
5606
|
num_seats?: number;
|
|
4604
|
-
/**
|
|
5607
|
+
/**
|
|
5608
|
+
* @description Plan tier. One of: free, pro, business, enterprise. More values may be added; clients must tolerate unknown values.
|
|
5609
|
+
* @example enterprise
|
|
5610
|
+
*/
|
|
4605
5611
|
plan: string;
|
|
4606
|
-
/**
|
|
5612
|
+
/**
|
|
5613
|
+
* @description Restriction on what publish audiences are allowed: org_only, workspace_only, or disabled. Absent means no restriction.
|
|
5614
|
+
* @example workspace_only
|
|
5615
|
+
*/
|
|
4607
5616
|
publishing_policy?: string;
|
|
4608
5617
|
};
|
|
4609
5618
|
V1WorkspaceSkillDTO: {
|
|
@@ -4623,12 +5632,14 @@ export interface components {
|
|
|
4623
5632
|
V1WorkspaceUsageBreakdownBody: {
|
|
4624
5633
|
/** @description The calendar month that each row's total_credits_used_in_billing_period covers. */
|
|
4625
5634
|
billing_period: components["schemas"]["V1BillingPeriod"];
|
|
5635
|
+
/** @description Items in this page. */
|
|
4626
5636
|
data: components["schemas"]["V1WorkspaceUsageBreakdownEntry"][] | null;
|
|
4627
5637
|
/**
|
|
4628
5638
|
* Format: int64
|
|
4629
5639
|
* @description Total matching members across all pages.
|
|
4630
5640
|
*/
|
|
4631
5641
|
member_count: number;
|
|
5642
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
4632
5643
|
pagination: components["schemas"]["Pagination"];
|
|
4633
5644
|
};
|
|
4634
5645
|
V1WorkspaceUsageBreakdownEntry: {
|
|
@@ -4671,25 +5682,37 @@ export interface components {
|
|
|
4671
5682
|
/**
|
|
4672
5683
|
* Format: double
|
|
4673
5684
|
* @description Credits attributed to this database subcategory in the bucket.
|
|
5685
|
+
* @example 30
|
|
4674
5686
|
*/
|
|
4675
5687
|
credits: number;
|
|
4676
5688
|
/**
|
|
4677
5689
|
* @description Stable database subcategory key.
|
|
5690
|
+
* @example database_server
|
|
4678
5691
|
* @enum {string}
|
|
4679
5692
|
*/
|
|
4680
5693
|
key: "database_server" | "database_storage";
|
|
4681
|
-
/**
|
|
5694
|
+
/**
|
|
5695
|
+
* @description Display label for the database subcategory.
|
|
5696
|
+
* @example Database server
|
|
5697
|
+
*/
|
|
4682
5698
|
label: string;
|
|
4683
5699
|
};
|
|
4684
5700
|
V1WorkspaceUsageGatewayModel: {
|
|
4685
5701
|
/**
|
|
4686
5702
|
* Format: double
|
|
4687
5703
|
* @description Credits attributed to this model in the bucket.
|
|
5704
|
+
* @example 200
|
|
4688
5705
|
*/
|
|
4689
5706
|
credits: number;
|
|
4690
|
-
/**
|
|
5707
|
+
/**
|
|
5708
|
+
* @description Model name.
|
|
5709
|
+
* @example claude-sonnet-4-5
|
|
5710
|
+
*/
|
|
4691
5711
|
name: string;
|
|
4692
|
-
/**
|
|
5712
|
+
/**
|
|
5713
|
+
* @description Model provider, e.g. anthropic, openai.
|
|
5714
|
+
* @example anthropic
|
|
5715
|
+
*/
|
|
4693
5716
|
provider: string;
|
|
4694
5717
|
};
|
|
4695
5718
|
V1WorkspaceUsageMeBody: {
|
|
@@ -4759,12 +5782,14 @@ export interface components {
|
|
|
4759
5782
|
total: number;
|
|
4760
5783
|
};
|
|
4761
5784
|
V1WorkspaceUsageProjectsBody: {
|
|
5785
|
+
/** @description Items in this page. */
|
|
4762
5786
|
data: components["schemas"]["V1WorkspaceUsageProjectRow"][] | null;
|
|
4763
5787
|
/**
|
|
4764
5788
|
* Format: int64
|
|
4765
5789
|
* @description Number of projects with usage in the window.
|
|
4766
5790
|
*/
|
|
4767
5791
|
entity_count: number;
|
|
5792
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
4768
5793
|
pagination: components["schemas"]["Pagination"];
|
|
4769
5794
|
/** @description The resolved window these rows cover, echoed so callers can see the dates the server applied. */
|
|
4770
5795
|
period: components["schemas"]["V1UsagePeriod"];
|
|
@@ -4775,7 +5800,9 @@ export interface components {
|
|
|
4775
5800
|
workspace_total: number;
|
|
4776
5801
|
};
|
|
4777
5802
|
V1WorkspaceUsageTimeseriesBody: {
|
|
5803
|
+
/** @description Items in this page. */
|
|
4778
5804
|
data: components["schemas"]["V1WorkspaceUsageTimeseriesBucket"][] | null;
|
|
5805
|
+
/** @description Pagination cursors for fetching adjacent pages. */
|
|
4779
5806
|
pagination: components["schemas"]["Pagination"];
|
|
4780
5807
|
/** @description The resolved window these buckets cover, echoed so callers can see the dates and granularity the server applied. */
|
|
4781
5808
|
period: components["schemas"]["V1UsagePeriod"];
|
|
@@ -4857,6 +5884,11 @@ export interface components {
|
|
|
4857
5884
|
skill: components["schemas"]["V1WorkspaceSkillDTO"];
|
|
4858
5885
|
};
|
|
4859
5886
|
VisibilityChangeInfo: {
|
|
5887
|
+
/**
|
|
5888
|
+
* Format: date-time
|
|
5889
|
+
* @description Firestore commit time of the visibility write; the project's revision token for client caches
|
|
5890
|
+
*/
|
|
5891
|
+
commit_time?: string;
|
|
4860
5892
|
/** @enum {string} */
|
|
4861
5893
|
new_visibility: "public" | "private" | "draft" | "workspace_view";
|
|
4862
5894
|
/** @enum {string} */
|
|
@@ -4864,6 +5896,7 @@ export interface components {
|
|
|
4864
5896
|
project_id: string;
|
|
4865
5897
|
};
|
|
4866
5898
|
WorkspaceAnalyticsResponse: {
|
|
5899
|
+
/** @description Workspace-wide time-series metrics aggregated across all projects. */
|
|
4867
5900
|
timeSeries: components["schemas"]["TimeSeriesGroup"];
|
|
4868
5901
|
};
|
|
4869
5902
|
};
|
|
@@ -5535,6 +6568,8 @@ export interface operations {
|
|
|
5535
6568
|
sort_order?: "asc" | "desc";
|
|
5536
6569
|
/** @description Filter by SCIM provisioning status. Empty = all members, 'managed' = only SCIM-provisioned members, 'unmanaged' = only members not managed by SCIM. */
|
|
5537
6570
|
scim_managed?: "managed" | "unmanaged";
|
|
6571
|
+
/** @description Comma-separated optional expansions. Valid values: groups. Unknown values return 400, but a misspelled parameter *name* is ignored rather than rejected (the response carries X-Lovable-Unknown-Query-Params), so check the header if an expansion you asked for is missing. Expansions cost extra reads, so each response field is absent unless asked for. */
|
|
6572
|
+
include?: string;
|
|
5538
6573
|
};
|
|
5539
6574
|
header?: never;
|
|
5540
6575
|
path?: never;
|
|
@@ -5879,7 +6914,7 @@ export interface operations {
|
|
|
5879
6914
|
/** @description Filter by project type. library returns design-system libraries; template returns non-library templates. */
|
|
5880
6915
|
type?: "" | "project" | "library" | "template" | "all";
|
|
5881
6916
|
/** @description Search query */
|
|
5882
|
-
|
|
6917
|
+
query?: string;
|
|
5883
6918
|
/** @description Maximum number of projects to return */
|
|
5884
6919
|
limit?: number;
|
|
5885
6920
|
/** @description Opaque pagination cursor returned by the previous page */
|
|
@@ -5950,6 +6985,7 @@ export interface operations {
|
|
|
5950
6985
|
/** @description Accepted */
|
|
5951
6986
|
202: {
|
|
5952
6987
|
headers: {
|
|
6988
|
+
Location?: string;
|
|
5953
6989
|
[name: string]: unknown;
|
|
5954
6990
|
};
|
|
5955
6991
|
content: {
|
|
@@ -6074,10 +7110,6 @@ export interface operations {
|
|
|
6074
7110
|
start_date?: string;
|
|
6075
7111
|
/** @description End date in RFC 3339 format (e.g. 2026-04-08T00:00:00Z). Required when series=historical. */
|
|
6076
7112
|
end_date?: string;
|
|
6077
|
-
/** @description Deprecated alias for start_date. */
|
|
6078
|
-
startDate?: string;
|
|
6079
|
-
/** @description Deprecated alias for end_date. */
|
|
6080
|
-
endDate?: string;
|
|
6081
7113
|
/** @description Time bucket size for series=historical: hourly or daily (default: daily). */
|
|
6082
7114
|
granularity?: string;
|
|
6083
7115
|
};
|
|
@@ -7157,6 +8189,38 @@ export interface operations {
|
|
|
7157
8189
|
};
|
|
7158
8190
|
};
|
|
7159
8191
|
};
|
|
8192
|
+
"get-v1-remix-jobs-job_id": {
|
|
8193
|
+
parameters: {
|
|
8194
|
+
query?: never;
|
|
8195
|
+
header?: never;
|
|
8196
|
+
path: {
|
|
8197
|
+
/** @description Remix job ID returned by POST /v1/projects */
|
|
8198
|
+
job_id: string;
|
|
8199
|
+
};
|
|
8200
|
+
cookie?: never;
|
|
8201
|
+
};
|
|
8202
|
+
requestBody?: never;
|
|
8203
|
+
responses: {
|
|
8204
|
+
/** @description OK */
|
|
8205
|
+
200: {
|
|
8206
|
+
headers: {
|
|
8207
|
+
[name: string]: unknown;
|
|
8208
|
+
};
|
|
8209
|
+
content: {
|
|
8210
|
+
"application/json": components["schemas"]["PublicV1RemixJobOutputBody"];
|
|
8211
|
+
};
|
|
8212
|
+
};
|
|
8213
|
+
/** @description Error */
|
|
8214
|
+
default: {
|
|
8215
|
+
headers: {
|
|
8216
|
+
[name: string]: unknown;
|
|
8217
|
+
};
|
|
8218
|
+
content: {
|
|
8219
|
+
"application/problem+json": components["schemas"]["ErrorModel"];
|
|
8220
|
+
};
|
|
8221
|
+
};
|
|
8222
|
+
};
|
|
8223
|
+
};
|
|
7160
8224
|
"get-v1-security-scans": {
|
|
7161
8225
|
parameters: {
|
|
7162
8226
|
query: {
|
|
@@ -7635,10 +8699,6 @@ export interface operations {
|
|
|
7635
8699
|
start_date?: string;
|
|
7636
8700
|
/** @description End date in RFC 3339 format (e.g. 2026-07-08T00:00:00Z). Required. */
|
|
7637
8701
|
end_date?: string;
|
|
7638
|
-
/** @description Deprecated alias for start_date. */
|
|
7639
|
-
startDate?: string;
|
|
7640
|
-
/** @description Deprecated alias for end_date. */
|
|
7641
|
-
endDate?: string;
|
|
7642
8702
|
/** @description Time bucket size: hourly or daily (default: daily) */
|
|
7643
8703
|
granularity?: "hourly" | "daily";
|
|
7644
8704
|
};
|
|
@@ -8439,6 +9499,43 @@ export interface operations {
|
|
|
8439
9499
|
};
|
|
8440
9500
|
};
|
|
8441
9501
|
};
|
|
9502
|
+
"get-v1-workspaces-workspace_id-groups": {
|
|
9503
|
+
parameters: {
|
|
9504
|
+
query?: {
|
|
9505
|
+
/** @description Maximum number of items to return */
|
|
9506
|
+
limit?: number;
|
|
9507
|
+
/** @description Opaque pagination cursor returned by the previous page */
|
|
9508
|
+
cursor?: string;
|
|
9509
|
+
};
|
|
9510
|
+
header?: never;
|
|
9511
|
+
path: {
|
|
9512
|
+
/** @description Workspace ID */
|
|
9513
|
+
workspace_id: string;
|
|
9514
|
+
};
|
|
9515
|
+
cookie?: never;
|
|
9516
|
+
};
|
|
9517
|
+
requestBody?: never;
|
|
9518
|
+
responses: {
|
|
9519
|
+
/** @description OK */
|
|
9520
|
+
200: {
|
|
9521
|
+
headers: {
|
|
9522
|
+
[name: string]: unknown;
|
|
9523
|
+
};
|
|
9524
|
+
content: {
|
|
9525
|
+
"application/json": components["schemas"]["CursorListResponseV1WorkspaceGroup"];
|
|
9526
|
+
};
|
|
9527
|
+
};
|
|
9528
|
+
/** @description Error */
|
|
9529
|
+
default: {
|
|
9530
|
+
headers: {
|
|
9531
|
+
[name: string]: unknown;
|
|
9532
|
+
};
|
|
9533
|
+
content: {
|
|
9534
|
+
"application/problem+json": components["schemas"]["ErrorModel"];
|
|
9535
|
+
};
|
|
9536
|
+
};
|
|
9537
|
+
};
|
|
9538
|
+
};
|
|
8442
9539
|
"get-v1-workspaces-workspace_id-knowledge": {
|
|
8443
9540
|
parameters: {
|
|
8444
9541
|
query?: never;
|
|
@@ -8526,6 +9623,8 @@ export interface operations {
|
|
|
8526
9623
|
sort_order?: "asc" | "desc";
|
|
8527
9624
|
/** @description Filter by SCIM provisioning status. Empty = all members, 'managed' = only SCIM-provisioned members, 'unmanaged' = only members not managed by SCIM. */
|
|
8528
9625
|
scim_managed?: "managed" | "unmanaged";
|
|
9626
|
+
/** @description Comma-separated optional expansions. Valid values: groups. Unknown values return 400, but a misspelled parameter *name* is ignored rather than rejected (the response carries X-Lovable-Unknown-Query-Params), so check the header if an expansion you asked for is missing. Expansions cost extra reads, so each response field is absent unless asked for. */
|
|
9627
|
+
include?: string;
|
|
8529
9628
|
};
|
|
8530
9629
|
header?: never;
|
|
8531
9630
|
path: {
|
|
@@ -8561,6 +9660,8 @@ export interface operations {
|
|
|
8561
9660
|
query?: {
|
|
8562
9661
|
/** @description Include per-project risk rollup fields (risk_score, risk_level, signals, reasons). Honored only for workspaces with the risk read surface enabled; ignored otherwise. Off by default so the default project list avoids the risk-table joins. */
|
|
8563
9662
|
include_risk?: boolean;
|
|
9663
|
+
/** @description Skip computing the total: total is returned as -1; has_more still reports whether more results exist. Use for list UIs that paginate on has_more. */
|
|
9664
|
+
skip_count?: boolean;
|
|
8564
9665
|
/** @description Filter by project creator user ID */
|
|
8565
9666
|
user_id?: string;
|
|
8566
9667
|
/** @description Filter by visibility */
|
|
@@ -8579,16 +9680,16 @@ export interface operations {
|
|
|
8579
9680
|
sort_by?: "name" | "created_at" | "last_edited_at" | "last_viewed_at" | "relevance" | "most_visitors_24h" | "most_visitors_7d" | "most_visitors_30d" | "most_edited_24h" | "most_edited_7d" | "most_edited_30d" | "trending" | "risk" | "design_system_published";
|
|
8580
9681
|
/** @description Sort order */
|
|
8581
9682
|
sort_order?: "asc" | "desc";
|
|
8582
|
-
/** @description Maximum number of projects to return */
|
|
8583
|
-
limit?: number;
|
|
8584
|
-
/** @description Offset for pagination */
|
|
8585
|
-
offset?: number;
|
|
8586
9683
|
/** @description Only return projects viewed by the current user */
|
|
8587
9684
|
viewed_by_me?: boolean;
|
|
8588
9685
|
/** @description Group results by activity tier: active (14d), inactive (60d), dead */
|
|
8589
9686
|
group_by_activity?: boolean;
|
|
8590
9687
|
/** @description Which fields to search: empty for all (default), 'name' for project name only */
|
|
8591
9688
|
search_fields?: "" | "name";
|
|
9689
|
+
/** @description Maximum number of projects to return */
|
|
9690
|
+
limit?: number;
|
|
9691
|
+
/** @description Offset for pagination */
|
|
9692
|
+
offset?: number;
|
|
8592
9693
|
};
|
|
8593
9694
|
header?: never;
|
|
8594
9695
|
path: {
|
|
@@ -9000,158 +10101,4 @@ export interface operations {
|
|
|
9000
10101
|
};
|
|
9001
10102
|
};
|
|
9002
10103
|
};
|
|
9003
|
-
"get-v1beta-projects-project_id-cloud": {
|
|
9004
|
-
parameters: {
|
|
9005
|
-
query?: {
|
|
9006
|
-
/** @description Cloud environment to read. Defaults to production. */
|
|
9007
|
-
environment?: "production" | "development";
|
|
9008
|
-
};
|
|
9009
|
-
header?: never;
|
|
9010
|
-
path: {
|
|
9011
|
-
/** @description Project ID */
|
|
9012
|
-
project_id: string;
|
|
9013
|
-
};
|
|
9014
|
-
cookie?: never;
|
|
9015
|
-
};
|
|
9016
|
-
requestBody?: never;
|
|
9017
|
-
responses: {
|
|
9018
|
-
/** @description OK */
|
|
9019
|
-
200: {
|
|
9020
|
-
headers: {
|
|
9021
|
-
[name: string]: unknown;
|
|
9022
|
-
};
|
|
9023
|
-
content: {
|
|
9024
|
-
"application/json": components["schemas"]["V1ProjectCloudBody"];
|
|
9025
|
-
};
|
|
9026
|
-
};
|
|
9027
|
-
/** @description Error */
|
|
9028
|
-
default: {
|
|
9029
|
-
headers: {
|
|
9030
|
-
[name: string]: unknown;
|
|
9031
|
-
};
|
|
9032
|
-
content: {
|
|
9033
|
-
"application/problem+json": components["schemas"]["ErrorModel"];
|
|
9034
|
-
};
|
|
9035
|
-
};
|
|
9036
|
-
};
|
|
9037
|
-
};
|
|
9038
|
-
"get-v1beta-workspaces-workspace_id-audit-logs": {
|
|
9039
|
-
parameters: {
|
|
9040
|
-
query?: {
|
|
9041
|
-
/** @description Maximum results per page. */
|
|
9042
|
-
limit?: number;
|
|
9043
|
-
/** @description Opaque cursor returned by a previous page; omit for the first page. */
|
|
9044
|
-
cursor?: string;
|
|
9045
|
-
/** @description Comma-separated audit-log action filter (exact match, e.g. workspace.member.added). */
|
|
9046
|
-
actions?: string;
|
|
9047
|
-
/** @description Comma-separated list of actor user IDs to filter by. */
|
|
9048
|
-
actor_ids?: string;
|
|
9049
|
-
/** @description Comma-separated list of target resource IDs to filter by. */
|
|
9050
|
-
target_ids?: string;
|
|
9051
|
-
/** @description Token-based search on target_id and target_display_name. Minimum 3 characters. */
|
|
9052
|
-
search?: string;
|
|
9053
|
-
/** @description RFC3339 inclusive start of the time range. Defaults to 30 days ago. When paginating with cursor, pass an explicit start_date so the default lower bound does not drift between pages. */
|
|
9054
|
-
start_date?: string;
|
|
9055
|
-
/** @description RFC3339 inclusive end of the time range. Defaults to now. */
|
|
9056
|
-
end_date?: string;
|
|
9057
|
-
};
|
|
9058
|
-
header?: never;
|
|
9059
|
-
path: {
|
|
9060
|
-
/** @description Workspace ID */
|
|
9061
|
-
workspace_id: string;
|
|
9062
|
-
};
|
|
9063
|
-
cookie?: never;
|
|
9064
|
-
};
|
|
9065
|
-
requestBody?: never;
|
|
9066
|
-
responses: {
|
|
9067
|
-
/** @description OK */
|
|
9068
|
-
200: {
|
|
9069
|
-
headers: {
|
|
9070
|
-
[name: string]: unknown;
|
|
9071
|
-
};
|
|
9072
|
-
content: {
|
|
9073
|
-
"application/json": components["schemas"]["V1WorkspaceAuditLogsBody"];
|
|
9074
|
-
};
|
|
9075
|
-
};
|
|
9076
|
-
/** @description Error */
|
|
9077
|
-
default: {
|
|
9078
|
-
headers: {
|
|
9079
|
-
[name: string]: unknown;
|
|
9080
|
-
};
|
|
9081
|
-
content: {
|
|
9082
|
-
"application/problem+json": components["schemas"]["ErrorModel"];
|
|
9083
|
-
};
|
|
9084
|
-
};
|
|
9085
|
-
};
|
|
9086
|
-
};
|
|
9087
|
-
"post-v1beta-workspaces-workspace_id-message-exports": {
|
|
9088
|
-
parameters: {
|
|
9089
|
-
query?: never;
|
|
9090
|
-
header?: never;
|
|
9091
|
-
path: {
|
|
9092
|
-
/** @description Workspace ID */
|
|
9093
|
-
workspace_id: string;
|
|
9094
|
-
};
|
|
9095
|
-
cookie?: never;
|
|
9096
|
-
};
|
|
9097
|
-
requestBody: {
|
|
9098
|
-
content: {
|
|
9099
|
-
"application/json": components["schemas"]["V1StartMessageExportInputBody"];
|
|
9100
|
-
};
|
|
9101
|
-
};
|
|
9102
|
-
responses: {
|
|
9103
|
-
/** @description Accepted */
|
|
9104
|
-
202: {
|
|
9105
|
-
headers: {
|
|
9106
|
-
[name: string]: unknown;
|
|
9107
|
-
};
|
|
9108
|
-
content: {
|
|
9109
|
-
"application/json": components["schemas"]["V1StartMessageExportOutputBody"];
|
|
9110
|
-
};
|
|
9111
|
-
};
|
|
9112
|
-
/** @description Error */
|
|
9113
|
-
default: {
|
|
9114
|
-
headers: {
|
|
9115
|
-
[name: string]: unknown;
|
|
9116
|
-
};
|
|
9117
|
-
content: {
|
|
9118
|
-
"application/problem+json": components["schemas"]["ErrorModel"];
|
|
9119
|
-
};
|
|
9120
|
-
};
|
|
9121
|
-
};
|
|
9122
|
-
};
|
|
9123
|
-
"get-v1beta-workspaces-workspace_id-message-exports-export_id": {
|
|
9124
|
-
parameters: {
|
|
9125
|
-
query?: never;
|
|
9126
|
-
header?: never;
|
|
9127
|
-
path: {
|
|
9128
|
-
/** @description Workspace ID */
|
|
9129
|
-
workspace_id: string;
|
|
9130
|
-
/** @description Export ID returned when the export was started. */
|
|
9131
|
-
export_id: string;
|
|
9132
|
-
};
|
|
9133
|
-
cookie?: never;
|
|
9134
|
-
};
|
|
9135
|
-
requestBody?: never;
|
|
9136
|
-
responses: {
|
|
9137
|
-
/** @description OK */
|
|
9138
|
-
200: {
|
|
9139
|
-
headers: {
|
|
9140
|
-
[name: string]: unknown;
|
|
9141
|
-
};
|
|
9142
|
-
content: {
|
|
9143
|
-
"application/json": components["schemas"]["V1MessageExportStatus"];
|
|
9144
|
-
};
|
|
9145
|
-
};
|
|
9146
|
-
/** @description Error */
|
|
9147
|
-
default: {
|
|
9148
|
-
headers: {
|
|
9149
|
-
[name: string]: unknown;
|
|
9150
|
-
};
|
|
9151
|
-
content: {
|
|
9152
|
-
"application/problem+json": components["schemas"]["ErrorModel"];
|
|
9153
|
-
};
|
|
9154
|
-
};
|
|
9155
|
-
};
|
|
9156
|
-
};
|
|
9157
10104
|
}
|