@lovable.dev/sdk 1.6.1 → 1.7.0

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/dist/index.d.ts CHANGED
@@ -2054,7 +2054,7 @@ interface paths {
2054
2054
  put?: never;
2055
2055
  /**
2056
2056
  * Export workspace messages (Preview)
2057
- * @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
+ * @description Allows workspace admins and owners to start a one-off export of user-authored messages from the current main chat history of projects visible to them. Project and user filters may be combined; when both are supplied, only messages matching both are exported. The export 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.
2058
2058
  *
2059
2059
  * 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.
2060
2060
  */
@@ -2122,9 +2122,25 @@ interface components {
2122
2122
  */
2123
2123
  who_can_create: "editors_and_admins" | "admins_only";
2124
2124
  };
2125
- CommonSeamlessConnectorCreator: {
2126
- name: string;
2127
- url: string;
2125
+ ChannelAnalytics: {
2126
+ lists: components["schemas"]["ChannelListsGroup"];
2127
+ timeSeries: components["schemas"]["ChannelTimeSeriesGroup"];
2128
+ };
2129
+ ChannelListsGroup: {
2130
+ page: components["schemas"]["ListData"];
2131
+ source: components["schemas"]["ListData"];
2132
+ };
2133
+ ChannelTimeSeriesGroup: {
2134
+ /** @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. */
2135
+ bounceRate: components["schemas"]["TimeSeriesData"];
2136
+ /** @description Page views from sessions attributed to this channel. */
2137
+ pageviews: components["schemas"]["TimeSeriesData"];
2138
+ /** @description Page views divided by bucket session counts. */
2139
+ pageviewsPerVisit: components["schemas"]["TimeSeriesData"];
2140
+ /** @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. */
2141
+ sessionDuration: components["schemas"]["TimeSeriesData"];
2142
+ /** @description Unique sessions active per bucket. The total sums bucket counts, matching the unfiltered analytics total. */
2143
+ visitors: components["schemas"]["TimeSeriesData"];
2128
2144
  };
2129
2145
  CommonSeamlessConnectorFeature: {
2130
2146
  body?: string;
@@ -2139,44 +2155,69 @@ interface components {
2139
2155
  is_primary?: boolean;
2140
2156
  name: string;
2141
2157
  };
2142
- Creator: {
2158
+ CompanyCreator: {
2159
+ logo_url?: string;
2143
2160
  name: string;
2161
+ /**
2162
+ * @description discriminator enum property added by openapi-typescript
2163
+ * @enum {string}
2164
+ */
2165
+ type: "company";
2144
2166
  url: string;
2145
2167
  };
2168
+ Creator: components["schemas"]["LovableCreator"] | components["schemas"]["UserCreator"] | components["schemas"]["CompanyCreator"];
2146
2169
  CursorListResponseProjectPIIFindingDTO: {
2170
+ /** @description Items in this page. */
2147
2171
  data: components["schemas"]["ProjectPIIFindingDTO"][] | null;
2172
+ /** @description Pagination cursors for fetching adjacent pages. */
2148
2173
  pagination: components["schemas"]["Pagination"];
2149
2174
  };
2150
2175
  CursorListResponsePublicV1ConnectorItem: {
2176
+ /** @description Items in this page. */
2151
2177
  data: components["schemas"]["PublicV1ConnectorItem"][] | null;
2178
+ /** @description Pagination cursors for fetching adjacent pages. */
2152
2179
  pagination: components["schemas"]["Pagination"];
2153
2180
  };
2154
2181
  CursorListResponsePublicV1ProjectListItem: {
2182
+ /** @description Items in this page. */
2155
2183
  data: components["schemas"]["PublicV1ProjectListItem"][] | null;
2184
+ /** @description Pagination cursors for fetching adjacent pages. */
2156
2185
  pagination: components["schemas"]["Pagination"];
2157
2186
  };
2158
2187
  CursorListResponseV1EditSummary: {
2188
+ /** @description Items in this page. */
2159
2189
  data: components["schemas"]["V1EditSummary"][] | null;
2190
+ /** @description Pagination cursors for fetching adjacent pages. */
2160
2191
  pagination: components["schemas"]["Pagination"];
2161
2192
  };
2162
2193
  CursorListResponseV1MessageListItem: {
2194
+ /** @description Items in this page. */
2163
2195
  data: components["schemas"]["V1MessageListItem"][] | null;
2196
+ /** @description Pagination cursors for fetching adjacent pages. */
2164
2197
  pagination: components["schemas"]["Pagination"];
2165
2198
  };
2166
2199
  CursorListResponseV1ProjectCollaborator: {
2200
+ /** @description Items in this page. */
2167
2201
  data: components["schemas"]["V1ProjectCollaborator"][] | null;
2202
+ /** @description Pagination cursors for fetching adjacent pages. */
2168
2203
  pagination: components["schemas"]["Pagination"];
2169
2204
  };
2170
2205
  CursorListResponseV1ProjectSkillDTO: {
2206
+ /** @description Items in this page. */
2171
2207
  data: components["schemas"]["V1ProjectSkillDTO"][] | null;
2208
+ /** @description Pagination cursors for fetching adjacent pages. */
2172
2209
  pagination: components["schemas"]["Pagination"];
2173
2210
  };
2174
2211
  CursorListResponseV1SecurityScanSummary: {
2212
+ /** @description Items in this page. */
2175
2213
  data: components["schemas"]["V1SecurityScanSummary"][] | null;
2214
+ /** @description Pagination cursors for fetching adjacent pages. */
2176
2215
  pagination: components["schemas"]["Pagination"];
2177
2216
  };
2178
2217
  CursorListResponseV1WorkspaceMember: {
2218
+ /** @description Items in this page. */
2179
2219
  data: components["schemas"]["V1WorkspaceMember"][] | null;
2220
+ /** @description Pagination cursors for fetching adjacent pages. */
2180
2221
  pagination: components["schemas"]["Pagination"];
2181
2222
  };
2182
2223
  DiffHunk: {
@@ -2252,21 +2293,39 @@ interface components {
2252
2293
  total: number;
2253
2294
  };
2254
2295
  GetMeOutputBody: {
2255
- /** @description User email address */
2296
+ /**
2297
+ * @description User email address
2298
+ * @example jane.cooper@acme.com
2299
+ */
2256
2300
  email: string;
2257
- /** @description User ID */
2301
+ /**
2302
+ * @description User ID
2303
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
2304
+ */
2258
2305
  id: string;
2259
- /** @description User display name */
2306
+ /**
2307
+ * @description User display name
2308
+ * @example Jane Cooper
2309
+ */
2260
2310
  name: string;
2261
2311
  /** @description Workspaces the user belongs to */
2262
2312
  workspaces: components["schemas"]["GetMeWorkspace"][] | null;
2263
2313
  };
2264
2314
  GetMeWorkspace: {
2265
- /** @description Workspace ID */
2315
+ /**
2316
+ * @description Workspace ID
2317
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
2318
+ */
2266
2319
  id: string;
2267
- /** @description Workspace display name */
2320
+ /**
2321
+ * @description Workspace display name
2322
+ * @example Acme Inc
2323
+ */
2268
2324
  name: string;
2269
- /** @description Caller's role in the workspace. One of: owner, admin, member, viewer, collaborator. More values may be added; clients must tolerate unknown values. */
2325
+ /**
2326
+ * @description Caller's role in the workspace. One of: owner, admin, member, viewer, collaborator. More values may be added; clients must tolerate unknown values.
2327
+ * @example admin
2328
+ */
2270
2329
  role: string;
2271
2330
  };
2272
2331
  GitFileEntry: {
@@ -2294,20 +2353,46 @@ interface components {
2294
2353
  updated_at: string;
2295
2354
  };
2296
2355
  ListData: {
2356
+ /** @description Ranked items in this breakdown. */
2297
2357
  data: components["schemas"]["ListDataPoint"][] | null;
2358
+ /**
2359
+ * @description Human-readable name of this breakdown dimension.
2360
+ * @example Top Pages
2361
+ */
2298
2362
  label: string;
2299
2363
  };
2300
2364
  ListDataPoint: {
2365
+ /**
2366
+ * @description Name of this item within the breakdown.
2367
+ * @example /pricing
2368
+ */
2301
2369
  label: string;
2302
- /** Format: int64 */
2370
+ /**
2371
+ * Format: int64
2372
+ * @description Count of visits or events attributed to this item.
2373
+ * @example 1280
2374
+ */
2303
2375
  value: number;
2304
2376
  };
2305
2377
  ListsGroup: {
2378
+ /** @description Breakdown of traffic by visitor country. */
2306
2379
  country: components["schemas"]["ListData"];
2380
+ /** @description Breakdown of traffic by device type. */
2307
2381
  device: components["schemas"]["ListData"];
2382
+ /** @description Breakdown of traffic by top page. */
2308
2383
  page: components["schemas"]["ListData"];
2384
+ /** @description Breakdown of traffic by referral source. */
2309
2385
  source: components["schemas"]["ListData"];
2310
2386
  };
2387
+ LovableCreator: {
2388
+ name: string;
2389
+ /**
2390
+ * @description discriminator enum property added by openapi-typescript
2391
+ * @enum {string}
2392
+ */
2393
+ type: "lovable";
2394
+ url: string;
2395
+ };
2311
2396
  MCPConnector: {
2312
2397
  app_mcp_auth_method?: string;
2313
2398
  app_mcp_project_id?: string;
@@ -2319,7 +2404,7 @@ interface components {
2319
2404
  connect_interaction?: "desktop_app_download";
2320
2405
  connection_id?: string;
2321
2406
  connector_id?: string;
2322
- creator: components["schemas"]["MCPConnectorCreatorStruct"];
2407
+ creator: components["schemas"]["Creator"];
2323
2408
  custom_url_hint?: string;
2324
2409
  display_name: string;
2325
2410
  documentation_url?: string;
@@ -2344,17 +2429,25 @@ interface components {
2344
2429
  url?: string;
2345
2430
  url_placeholder?: string;
2346
2431
  };
2347
- MCPConnectorCreatorStruct: {
2348
- name: string;
2349
- url: string;
2350
- };
2351
2432
  Pagination: {
2352
- /** @description Whether more results are available beyond this page */
2433
+ /**
2434
+ * @description Whether more results are available beyond this page
2435
+ * @example true
2436
+ */
2353
2437
  has_more: boolean;
2354
- /** @description Cursor for the next page; null when there are no more results */
2438
+ /**
2439
+ * @description Cursor for the next page; null when there are no more results
2440
+ * @example eyJ2IjoxLCJpZCI6InByal8wMWp3M2s5In0
2441
+ */
2355
2442
  next_cursor: string | null;
2356
2443
  };
2357
2444
  ProjectAnalyticsResponse: {
2445
+ /** @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. */
2446
+ channels?: {
2447
+ [key: string]: components["schemas"]["ChannelAnalytics"];
2448
+ };
2449
+ /** @enum {string} */
2450
+ channelsSource?: "legacy" | "user_app_events";
2358
2451
  lists: components["schemas"]["ListsGroup"];
2359
2452
  timeSeries: components["schemas"]["TimeSeriesGroup"];
2360
2453
  };
@@ -2367,7 +2460,10 @@ interface components {
2367
2460
  sizeExceeded: boolean;
2368
2461
  };
2369
2462
  ProjectPIIFindingDTO: {
2370
- /** @description Trajectory event ID for chat-source labels */
2463
+ /**
2464
+ * @description Trajectory event ID for chat-source labels
2465
+ * @example default:user#12#01jw3k9m2xq8r5v0c7d4e6f2gh
2466
+ */
2371
2467
  chat_message_id?: string;
2372
2468
  /** @description Uploaded file ID for upload-source labels */
2373
2469
  chat_upload_id?: string;
@@ -2376,32 +2472,62 @@ interface components {
2376
2472
  /**
2377
2473
  * Format: date-time
2378
2474
  * @description When the label was recorded
2475
+ * @example 2026-01-15T09:30:00Z
2379
2476
  */
2380
2477
  found_at: string;
2381
- /** @description PII label ID */
2478
+ /**
2479
+ * @description PII label ID
2480
+ * @example pii_01jw3k9m2xq8r5v0c7d4e6f2gh
2481
+ */
2382
2482
  id: string;
2383
- /** @description DLP info type, such as EMAIL_ADDRESS */
2483
+ /**
2484
+ * @description DLP info type, such as EMAIL_ADDRESS
2485
+ * @example EMAIL_ADDRESS
2486
+ */
2384
2487
  info_type?: string;
2385
- /** @description DLP likelihood: VERY_UNLIKELY, UNLIKELY, POSSIBLE, LIKELY, or VERY_LIKELY */
2488
+ /**
2489
+ * @description DLP likelihood: VERY_UNLIKELY, UNLIKELY, POSSIBLE, LIKELY, or VERY_LIKELY
2490
+ * @example LIKELY
2491
+ */
2386
2492
  likelihood?: string;
2387
- /** @description Masked sample of the detected value */
2493
+ /**
2494
+ * @description Masked sample of the detected value
2495
+ * @example j***@acme.com
2496
+ */
2388
2497
  quote?: string;
2389
- /** @description Workflow scan run ID that recorded the label */
2498
+ /**
2499
+ * @description Workflow scan run ID that recorded the label
2500
+ * @example pii-scan-prj_01jw3k9m2xq8r5v0c7d4e6f2gh
2501
+ */
2390
2502
  scan_id?: string;
2391
- /** @description Sensitivity bucket: low, mid, or high */
2503
+ /**
2504
+ * @description Sensitivity bucket: low, mid, or high
2505
+ * @example high
2506
+ */
2392
2507
  sensitivity?: string;
2393
- /** @description Where the PII was detected: chat, upload, cloud_storage, or cloud_sql */
2508
+ /**
2509
+ * @description Where the PII was detected: chat, upload, cloud_storage, or cloud_sql
2510
+ * @example chat
2511
+ */
2394
2512
  source: string;
2395
2513
  /** @description Database location for cloud_sql labels */
2396
2514
  sql_location?: string;
2397
- /** @description Label status: open, ignored, or fixed */
2515
+ /**
2516
+ * @description Label status: open, ignored, or fixed
2517
+ * @example open
2518
+ */
2398
2519
  status: string;
2399
2520
  /** @description Cloud storage object path for cloud_storage labels */
2400
2521
  storage_path?: string;
2401
2522
  };
2402
2523
  ProjectTrendResponse: {
2403
- /** Format: int64 */
2524
+ /**
2525
+ * Format: int64
2526
+ * @description Number of visitors currently active on the site.
2527
+ * @example 12
2528
+ */
2404
2529
  currentVisitors: number;
2530
+ /** @description Time-ordered visit trend buckets. */
2405
2531
  data: components["schemas"]["TrendDataPoint"][] | null;
2406
2532
  };
2407
2533
  PublicV1ConnectorItem: {
@@ -2435,33 +2561,75 @@ interface components {
2435
2561
  types?: string[];
2436
2562
  };
2437
2563
  PublicV1CreateProjectResponse: {
2438
- /** @description Description supplied by the caller on create or update */
2564
+ /**
2565
+ * @description Description supplied by the caller on create or update
2566
+ * @example A landing page for Acme with a hero, features, and pricing.
2567
+ */
2439
2568
  description?: string;
2440
- /** @description Project display name */
2569
+ /**
2570
+ * @description Project display name
2571
+ * @example Acme Landing Page
2572
+ */
2441
2573
  display_name?: string;
2442
- /** @description Project ID */
2574
+ /**
2575
+ * @description Project ID
2576
+ * @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
2577
+ */
2443
2578
  id?: string;
2444
- /** @description Whether the project is published */
2579
+ /**
2580
+ * @description Whether the project is published
2581
+ * @example true
2582
+ */
2445
2583
  is_published?: boolean;
2446
- /** @description Remix job ID for tracking progress when source_project_id is provided */
2584
+ /**
2585
+ * @description Remix job ID for tracking progress when source_project_id is provided
2586
+ * @example job_01jw3k9m2xq8r5v0c7d4e6f2gh
2587
+ */
2447
2588
  job_id?: string;
2448
- /** @description SHA of the latest commit */
2589
+ /**
2590
+ * @description SHA of the latest commit
2591
+ * @example 9f3c2a1b8d4e5f6a7b8c9d0e1f2a3b4c5d6e7f80
2592
+ */
2449
2593
  latest_commit_sha?: string;
2450
- /** @description URL of the latest screenshot */
2594
+ /**
2595
+ * @description URL of the latest screenshot
2596
+ * @example https://lovable.dev/cdn/projects/acme-landing-page/screenshot.png
2597
+ */
2451
2598
  latest_screenshot_url?: string;
2452
- /** @description User message ID, present when initial_message was provided */
2599
+ /**
2600
+ * @description User message ID, present when initial_message was provided
2601
+ * @example msg_01jw3k9m2xq8r5v0c7d4e6f2gh
2602
+ */
2453
2603
  message_id?: string;
2454
- /** @description Project slug */
2604
+ /**
2605
+ * @description Project slug
2606
+ * @example acme-landing-page
2607
+ */
2455
2608
  name?: string;
2456
- /** @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. */
2609
+ /**
2610
+ * @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.
2611
+ * @example https://acme-landing-page.lovable.app/
2612
+ */
2457
2613
  preview_url?: string;
2458
- /** @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. */
2614
+ /**
2615
+ * @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.
2616
+ * @example completed
2617
+ */
2459
2618
  status?: string;
2460
- /** @description Published project URL */
2619
+ /**
2620
+ * @description Published project URL
2621
+ * @example https://acme-landing-page.lovable.app
2622
+ */
2461
2623
  url?: string;
2462
- /** @description Project visibility: draft, private, workspace_view, public */
2624
+ /**
2625
+ * @description Project visibility: draft, private, workspace_view, public
2626
+ * @example private
2627
+ */
2463
2628
  visibility?: string;
2464
- /** @description Workspace ID */
2629
+ /**
2630
+ * @description Workspace ID
2631
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
2632
+ */
2465
2633
  workspace_id?: string;
2466
2634
  };
2467
2635
  PublicV1DeployProjectInputBody: {
@@ -2487,12 +2655,19 @@ interface components {
2487
2655
  ref: string;
2488
2656
  };
2489
2657
  PublicV1PatchProjectBody: {
2490
- /** @description Project description. Does not affect generated_description, which the agent maintains on its own. */
2658
+ /**
2659
+ * @description Project description. Does not affect generated_description, which the agent maintains on its own.
2660
+ * @example A landing page for my SaaS product with a hero, features, and pricing.
2661
+ */
2491
2662
  description?: string;
2492
- /** @description Project display name */
2663
+ /**
2664
+ * @description Project display name
2665
+ * @example Acme Landing Page
2666
+ */
2493
2667
  display_name?: string;
2494
2668
  /**
2495
2669
  * @description Project visibility
2670
+ * @example private
2496
2671
  * @enum {string}
2497
2672
  */
2498
2673
  visibility?: "draft" | "private" | "public" | "workspace_view";
@@ -2506,9 +2681,15 @@ interface components {
2506
2681
  trend?: components["schemas"]["ProjectTrendResponse"];
2507
2682
  };
2508
2683
  PublicV1ProjectCreateInputBody: {
2509
- /** @description Project description */
2684
+ /**
2685
+ * @description Project description
2686
+ * @example A landing page for my SaaS product with a hero, features, and pricing.
2687
+ */
2510
2688
  description: string;
2511
- /** @description Human-facing project name */
2689
+ /**
2690
+ * @description Human-facing project name
2691
+ * @example Acme Landing Page
2692
+ */
2512
2693
  display_name?: string;
2513
2694
  /**
2514
2695
  * @deprecated
@@ -2522,24 +2703,40 @@ interface components {
2522
2703
  * @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
2704
  */
2524
2705
  files?: components["schemas"]["V1UnscopedFile"][] | null;
2525
- /** @description Initial chat message to send after creation */
2706
+ /**
2707
+ * @description Initial chat message to send after creation
2708
+ * @example A landing page for my SaaS product with a hero, features, and pricing.
2709
+ */
2526
2710
  initial_message?: string;
2527
- /** @description Sandbox runtime template for the new project. Omit for the default stack; requires a workspace with access to the requested template. */
2711
+ /**
2712
+ * @description Sandbox runtime template for the new project. Omit for the default stack; requires a workspace with access to the requested template.
2713
+ * @example lovable-on-lovable
2714
+ */
2528
2715
  sandbox_template?: string;
2529
2716
  /** @description Design system library projects to connect to the new project */
2530
2717
  selected_libraries?: components["schemas"]["V1SelectedLibrary"][] | null;
2531
2718
  /** @description Ignored when null, empty, or whitespace. Set a non-empty value to remix from a source project. */
2532
2719
  source_project_id?: string | null;
2533
- /** @description Technology stack (default: vite) */
2720
+ /**
2721
+ * @description Technology stack (default: vite)
2722
+ * @example vite
2723
+ */
2534
2724
  tech_stack?: string;
2535
- /** @description Template project ID to clone from (from list_template_projects) */
2725
+ /**
2726
+ * @description Template project ID to clone from (from list_template_projects)
2727
+ * @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
2728
+ */
2536
2729
  template_project_id?: string;
2537
2730
  /**
2538
2731
  * @description Project visibility: draft, private, workspace_view, public
2732
+ * @example private
2539
2733
  * @enum {string}
2540
2734
  */
2541
2735
  visibility?: "draft" | "private" | "public" | "workspace_view";
2542
- /** @description Workspace ID */
2736
+ /**
2737
+ * @description Workspace ID
2738
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
2739
+ */
2543
2740
  workspace_id: string;
2544
2741
  };
2545
2742
  PublicV1ProjectFileUploadURLInputBody: {
@@ -2552,78 +2749,163 @@ interface components {
2552
2749
  /**
2553
2750
  * Format: date-time
2554
2751
  * @description When the project was created.
2752
+ * @example 2026-01-15T09:30:00Z
2555
2753
  */
2556
2754
  created_at?: string;
2557
- /** @description Description supplied by the caller on create or update. */
2755
+ /**
2756
+ * @description Description supplied by the caller on create or update.
2757
+ * @example Marketing landing page for Acme's product launch.
2758
+ */
2558
2759
  description?: string;
2559
- /** @description Human-readable project name. */
2760
+ /**
2761
+ * @description Human-readable project name.
2762
+ * @example Acme Landing Page
2763
+ */
2560
2764
  display_name?: string;
2561
- /** @description Folder the project belongs to, if any. */
2765
+ /**
2766
+ * @description Folder the project belongs to, if any.
2767
+ * @example fold_01jw3k9m2xq8r5v0c7d4e6f2gh
2768
+ */
2562
2769
  folder_id?: string;
2563
- /** @description AI-written summary of what the project does. Absent until the agent has completed a response for the project. */
2770
+ /**
2771
+ * @description AI-written summary of what the project does. Absent until the agent has completed a response for the project.
2772
+ * @example A landing page for Acme with a hero, features, and pricing.
2773
+ */
2564
2774
  generated_description?: string;
2565
- /** @description Project ID. */
2775
+ /**
2776
+ * @description Project ID.
2777
+ * @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
2778
+ */
2566
2779
  id: string;
2567
- /** @description Whether the project is published. */
2780
+ /**
2781
+ * @description Whether the project is published.
2782
+ * @example true
2783
+ */
2568
2784
  is_published?: boolean;
2569
2785
  /**
2570
2786
  * Format: date-time
2571
2787
  * @description When the project was last edited.
2788
+ * @example 2026-01-15T09:30:00Z
2572
2789
  */
2573
2790
  last_edited_at?: string;
2574
- /** @description URL of the latest screenshot. */
2791
+ /**
2792
+ * @description URL of the latest screenshot.
2793
+ * @example https://screenshot2.lovable.dev/acme-landing-page.png
2794
+ */
2575
2795
  latest_screenshot_url?: string;
2576
- /** @description Project slug. */
2796
+ /**
2797
+ * @description Project slug.
2798
+ * @example acme-landing-page
2799
+ */
2577
2800
  name?: string;
2578
- /** @description Open Graph image URL. */
2801
+ /**
2802
+ * @description Open Graph image URL.
2803
+ * @example https://lovable.dev/cdn/projects/acme-landing-page/og.png
2804
+ */
2579
2805
  og_image_url?: string;
2580
- /** @description Project type. One of: project, library. Absent on older projects. More values may be added; clients must tolerate unknown values. */
2806
+ /**
2807
+ * @description Project type. One of: project, library. Absent on older projects. More values may be added; clients must tolerate unknown values.
2808
+ * @example project
2809
+ */
2581
2810
  project_type?: string;
2582
- /** @description Published visibility. One of: public, private. More values may be added; clients must tolerate unknown values. */
2811
+ /**
2812
+ * @description Published visibility. One of: public, private. More values may be added; clients must tolerate unknown values.
2813
+ * @example public
2814
+ */
2583
2815
  publish_visibility?: string;
2584
- /** @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. */
2816
+ /**
2817
+ * @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.
2818
+ * @example completed
2819
+ */
2585
2820
  status?: string;
2586
- /** @description Project tech stack. */
2821
+ /**
2822
+ * @description Project tech stack.
2823
+ * @example vite_react_shadcn_ts
2824
+ */
2587
2825
  tech_stack?: string;
2588
2826
  /**
2589
2827
  * Format: date-time
2590
2828
  * @description When the project was last updated.
2829
+ * @example 2026-01-15T09:30:00Z
2591
2830
  */
2592
2831
  updated_at?: string;
2593
- /** @description Published project URL. */
2832
+ /**
2833
+ * @description Published project URL.
2834
+ * @example https://acme-landing-page.lovable.app
2835
+ */
2594
2836
  url?: string;
2595
- /** @description Project owner user ID. */
2837
+ /**
2838
+ * @description Project owner user ID.
2839
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
2840
+ */
2596
2841
  user_id?: string;
2597
- /** @description Project visibility: draft, private, workspace_view, or public. */
2842
+ /**
2843
+ * @description Project visibility: draft, private, workspace_view, or public.
2844
+ * @example public
2845
+ */
2598
2846
  visibility?: string;
2599
- /** @description Workspace the project belongs to. */
2847
+ /**
2848
+ * @description Workspace the project belongs to.
2849
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
2850
+ */
2600
2851
  workspace_id: string;
2601
2852
  };
2602
2853
  PublicV1ProjectRemixInputBody: {
2603
- /** @description Project description */
2854
+ /**
2855
+ * @description Project description
2856
+ * @example A landing page for my SaaS product with a hero, features, and pricing.
2857
+ */
2604
2858
  description?: string;
2605
- /** @description Human-facing project name */
2859
+ /**
2860
+ * @description Human-facing project name
2861
+ * @example Acme Landing Page
2862
+ */
2606
2863
  display_name?: string;
2607
- /** @description Whether remix-style creation should copy custom knowledge */
2864
+ /**
2865
+ * @description Whether remix-style creation should copy custom knowledge
2866
+ * @example true
2867
+ */
2608
2868
  include_custom_knowledge?: boolean;
2609
- /** @description Whether remix-style creation should include chat history */
2869
+ /**
2870
+ * @description Whether remix-style creation should include chat history
2871
+ * @example true
2872
+ */
2610
2873
  include_history?: boolean;
2611
- /** @description Initial chat message to send after remix */
2874
+ /**
2875
+ * @description Initial chat message to send after remix
2876
+ * @example A landing page for my SaaS product with a hero, features, and pricing.
2877
+ */
2612
2878
  initial_message?: string;
2613
- /** @description Message ID to remix from */
2879
+ /**
2880
+ * @description Message ID to remix from
2881
+ * @example msg_01jw3k9m2xq8r5v0c7d4e6f2gh
2882
+ */
2614
2883
  message_id?: string;
2615
2884
  /**
2616
2885
  * @description How to apply message_id: before starts before the message, including includes that message's completed turn. Defaults to including.
2886
+ * @example including
2617
2887
  * @enum {string}
2618
2888
  */
2619
2889
  remix_mode?: "before" | "including";
2620
- /** @description Suppress the default remix success message */
2890
+ /**
2891
+ * @description Suppress the default remix success message
2892
+ * @example false
2893
+ */
2621
2894
  skip_initial_remix_message?: boolean;
2622
- /** @description Skip remixing integrations */
2895
+ /**
2896
+ * @description Skip remixing integrations
2897
+ * @example false
2898
+ */
2623
2899
  skip_integrations?: boolean;
2624
- /** @description Source project ID for remix-style creation */
2900
+ /**
2901
+ * @description Source project ID for remix-style creation
2902
+ * @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
2903
+ */
2625
2904
  source_project_id: string;
2626
- /** @description Workspace ID */
2905
+ /**
2906
+ * @description Workspace ID
2907
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
2908
+ */
2627
2909
  workspace_id: string;
2628
2910
  };
2629
2911
  PublicV1PublishAudienceTarget: {
@@ -2730,26 +3012,44 @@ interface components {
2730
3012
  /**
2731
3013
  * Format: date-time
2732
3014
  * @description When the workspace was created.
3015
+ * @example 2026-01-15T09:30:00Z
2733
3016
  */
2734
3017
  created_at?: string;
2735
- /** @description Workspace description. */
3018
+ /**
3019
+ * @description Workspace description.
3020
+ * @example Marketing site and internal tools for Acme.
3021
+ */
2736
3022
  description?: string;
2737
- /** @description Workspace ID. */
3023
+ /**
3024
+ * @description Workspace ID.
3025
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
3026
+ */
2738
3027
  id: string;
2739
- /** @description Workspace image URL. */
3028
+ /**
3029
+ * @description Workspace image URL.
3030
+ * @example https://lovable.dev/cdn/workspaces/acme/avatar.png
3031
+ */
2740
3032
  image_url?: string;
2741
- /** @description Workspace display name. */
3033
+ /**
3034
+ * @description Workspace display name.
3035
+ * @example Acme Inc
3036
+ */
2742
3037
  name: string;
2743
3038
  /**
2744
3039
  * Format: int64
2745
3040
  * @description Number of projects in the workspace.
3041
+ * @example 12
2746
3042
  */
2747
3043
  num_projects: number;
2748
- /** @description Plan tier. One of: free, pro, business, enterprise. More values may be added; clients must tolerate unknown values. */
3044
+ /**
3045
+ * @description Plan tier. One of: free, pro, business, enterprise. More values may be added; clients must tolerate unknown values.
3046
+ * @example pro
3047
+ */
2749
3048
  plan: string;
2750
3049
  /**
2751
3050
  * Format: date-time
2752
3051
  * @description When the workspace was last updated.
3052
+ * @example 2026-01-15T09:30:00Z
2753
3053
  */
2754
3054
  updated_at?: string;
2755
3055
  };
@@ -2757,39 +3057,64 @@ interface components {
2757
3057
  /**
2758
3058
  * Format: date-time
2759
3059
  * @description When the caller joined the workspace.
3060
+ * @example 2026-01-15T09:30:00Z
2760
3061
  */
2761
3062
  joined_at?: string;
2762
- /** @description Caller's role in the workspace. One of: owner, admin, member, viewer, collaborator. More values may be added; clients must tolerate unknown values. */
3063
+ /**
3064
+ * @description Caller's role in the workspace. One of: owner, admin, member, viewer, collaborator. More values may be added; clients must tolerate unknown values.
3065
+ * @example admin
3066
+ */
2763
3067
  role: string;
2764
- /** @description Caller's user ID. */
3068
+ /**
3069
+ * @description Caller's user ID.
3070
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
3071
+ */
2765
3072
  user_id: string;
2766
3073
  };
2767
3074
  PublicV1WorkspaceWithMembership: {
2768
3075
  /**
2769
3076
  * Format: date-time
2770
3077
  * @description When the workspace was created.
3078
+ * @example 2026-01-15T09:30:00Z
2771
3079
  */
2772
3080
  created_at?: string;
2773
- /** @description Workspace description. */
3081
+ /**
3082
+ * @description Workspace description.
3083
+ * @example Marketing site and internal tools for Acme.
3084
+ */
2774
3085
  description?: string;
2775
- /** @description Workspace ID. */
3086
+ /**
3087
+ * @description Workspace ID.
3088
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
3089
+ */
2776
3090
  id: string;
2777
- /** @description Workspace image URL. */
3091
+ /**
3092
+ * @description Workspace image URL.
3093
+ * @example https://lovable.dev/cdn/workspaces/acme/avatar.png
3094
+ */
2778
3095
  image_url?: string;
2779
3096
  /** @description Caller's membership in this workspace. */
2780
3097
  membership?: components["schemas"]["PublicV1WorkspaceMember"];
2781
- /** @description Workspace display name. */
3098
+ /**
3099
+ * @description Workspace display name.
3100
+ * @example Acme Inc
3101
+ */
2782
3102
  name: string;
2783
3103
  /**
2784
3104
  * Format: int64
2785
3105
  * @description Number of projects in the workspace.
3106
+ * @example 12
2786
3107
  */
2787
3108
  num_projects: number;
2788
- /** @description Plan tier. One of: free, pro, business, enterprise. More values may be added; clients must tolerate unknown values. */
3109
+ /**
3110
+ * @description Plan tier. One of: free, pro, business, enterprise. More values may be added; clients must tolerate unknown values.
3111
+ * @example pro
3112
+ */
2789
3113
  plan: string;
2790
3114
  /**
2791
3115
  * Format: date-time
2792
3116
  * @description When the workspace was last updated.
3117
+ * @example 2026-01-15T09:30:00Z
2793
3118
  */
2794
3119
  updated_at?: string;
2795
3120
  };
@@ -2806,13 +3131,15 @@ interface components {
2806
3131
  };
2807
3132
  RemixWarning: {
2808
3133
  /** @enum {string} */
2809
- code: "edge_functions_not_deployed";
3134
+ code: "edge_functions_not_deployed" | "integration_skipped";
2810
3135
  failed_edge_functions?: string[] | null;
3136
+ reason?: string;
3137
+ skipped_integration?: string;
2811
3138
  };
2812
3139
  SeamlessConnectorAPI: {
2813
3140
  alias?: string;
2814
3141
  categories: string[] | null;
2815
- creator: components["schemas"]["CommonSeamlessConnectorCreator"];
3142
+ creator: components["schemas"]["Creator"];
2816
3143
  description: string;
2817
3144
  display_name: string;
2818
3145
  documentation_url: string;
@@ -2941,6 +3268,8 @@ interface components {
2941
3268
  is_enabled_for_workspace: boolean;
2942
3269
  /** @description True when the connector is gated behind a feature flag rollout */
2943
3270
  is_new?: boolean;
3271
+ /** @description Optional HTTPS logo URL */
3272
+ logo_url?: string;
2944
3273
  promotion?: components["schemas"]["StandardConnectorPromotion"];
2945
3274
  /** @description Search keywords (empty array when none) */
2946
3275
  searchTags: string[];
@@ -2983,20 +3312,28 @@ interface components {
2983
3312
  TimeSeriesData: {
2984
3313
  /** @description Per-bucket values ordered by date, one entry per bucket in the range (bucket size set by the granularity parameter). */
2985
3314
  data: components["schemas"]["TimeSeriesDataPoint"][] | null;
2986
- /** @description Metric identifier, e.g. "sessionDuration". */
3315
+ /**
3316
+ * @description Metric identifier, e.g. "sessionDuration".
3317
+ * @example visitors
3318
+ */
2987
3319
  label: string;
2988
3320
  /**
2989
3321
  * Format: double
2990
3322
  * @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.
3323
+ * @example 1280
2991
3324
  */
2992
3325
  total: number;
2993
3326
  };
2994
3327
  TimeSeriesDataPoint: {
2995
- /** @description Bucket start as "YYYY-MM-DD HH:MM:SS" in UTC. */
3328
+ /**
3329
+ * @description Bucket start as "YYYY-MM-DD HH:MM:SS" in UTC.
3330
+ * @example 2026-01-15 00:00:00
3331
+ */
2996
3332
  date: string;
2997
3333
  /**
2998
3334
  * Format: double
2999
3335
  * @description Metric value for this bucket. Unit matches the parent metric — see its description.
3336
+ * @example 1280
3000
3337
  */
3001
3338
  value: number;
3002
3339
  };
@@ -3021,10 +3358,26 @@ interface components {
3021
3358
  title?: string;
3022
3359
  };
3023
3360
  TrendDataPoint: {
3361
+ /**
3362
+ * @description Bucket start as "YYYY-MM-DD HH:MM:SS" in UTC.
3363
+ * @example 2026-01-15 09:30:00
3364
+ */
3024
3365
  time: string;
3025
- /** Format: int64 */
3366
+ /**
3367
+ * Format: int64
3368
+ * @description Number of visits recorded in this bucket.
3369
+ * @example 42
3370
+ */
3026
3371
  visits: number;
3027
3372
  };
3373
+ UserCreator: {
3374
+ /**
3375
+ * @description discriminator enum property added by openapi-typescript
3376
+ * @enum {string}
3377
+ */
3378
+ type: "user";
3379
+ user_id: string;
3380
+ };
3028
3381
  V1AIResponseSummary: {
3029
3382
  /** @description Pending human-in-the-loop tool input, only present when status is awaiting_input */
3030
3383
  awaiting_input?: components["schemas"]["V1AwaitingInputSummary"];
@@ -3107,61 +3460,80 @@ interface components {
3107
3460
  user_id: string;
3108
3461
  };
3109
3462
  V1BillingCreditLimitsBody: {
3463
+ /** @description Items in this page. */
3110
3464
  data: components["schemas"]["V1BillingCreditLimitRow"][] | null;
3111
3465
  /**
3112
3466
  * Format: double
3113
3467
  * @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
3468
  */
3115
3469
  default_monthly_credit_limit?: number;
3470
+ /** @description Pagination cursors for fetching adjacent pages. */
3116
3471
  pagination: components["schemas"]["Pagination"];
3117
3472
  };
3118
3473
  V1BillingPeriod: {
3119
3474
  /**
3120
3475
  * Format: date-time
3121
3476
  * @description Exclusive end of the period these credit figures cover (RFC3339, UTC).
3477
+ * @example 2026-02-01T00:00:00Z
3122
3478
  */
3123
3479
  end: string;
3124
3480
  /**
3125
3481
  * Format: date-time
3126
3482
  * @description Inclusive start of the period these credit figures cover (RFC3339, UTC).
3483
+ * @example 2026-01-01T00:00:00Z
3127
3484
  */
3128
3485
  start: string;
3129
3486
  };
3130
3487
  V1BillingUsageBody: {
3488
+ /** @description Items in this page. */
3131
3489
  data: components["schemas"]["V1BillingUsageRow"][] | null;
3132
3490
  /**
3133
3491
  * Format: int64
3134
3492
  * @description Number of grouped entities across all pages; group_by queries only.
3493
+ * @example 12
3135
3494
  */
3136
3495
  entity_count?: number;
3496
+ /** @description Pagination cursors for fetching adjacent pages. */
3137
3497
  pagination: components["schemas"]["Pagination"];
3138
3498
  /** @description The resolved window these rows cover, echoed so callers can see what the server applied. */
3139
3499
  period: components["schemas"]["V1BillingUsagePeriod"];
3140
3500
  /**
3141
3501
  * Format: double
3142
3502
  * @description Total matching credits across the whole window — same on every page, not just this page's rows.
3503
+ * @example 500
3143
3504
  */
3144
3505
  workspace_total: number;
3145
3506
  };
3146
3507
  V1BillingUsagePeriod: {
3147
- /** @description Inclusive end of the covered window (YYYY-MM-DD, UTC). */
3508
+ /**
3509
+ * @description Inclusive end of the covered window (YYYY-MM-DD, UTC).
3510
+ * @example 2026-01-31
3511
+ */
3148
3512
  end: string;
3149
- /** @description Grouping dimension the rows use; group_by queries only. */
3513
+ /**
3514
+ * @description Grouping dimension the rows use; group_by queries only.
3515
+ * @example member
3516
+ */
3150
3517
  group_by?: string;
3151
3518
  /** @description Bucket size the rows use; interval queries only. */
3152
3519
  interval?: string;
3153
- /** @description Inclusive start of the covered window (YYYY-MM-DD, UTC). */
3520
+ /**
3521
+ * @description Inclusive start of the covered window (YYYY-MM-DD, UTC).
3522
+ * @example 2026-01-01
3523
+ */
3154
3524
  start: string;
3155
3525
  };
3156
3526
  V1BillingUsageRow: {
3157
3527
  /**
3158
3528
  * Format: double
3159
3529
  * @description Build-time credits.
3530
+ * @example 120
3160
3531
  */
3161
3532
  build: number;
3162
3533
  /**
3163
3534
  * Format: double
3164
3535
  * @description Connector credits, e.g. Google Maps requests.
3536
+ * @example 10
3165
3537
  */
3166
3538
  connectors: number;
3167
3539
  /** @description Per-connector breakdown. Interval buckets only. */
@@ -3169,22 +3541,31 @@ interface components {
3169
3541
  /**
3170
3542
  * Format: double
3171
3543
  * @description Database credits.
3544
+ * @example 30
3172
3545
  */
3173
3546
  database: number;
3174
3547
  /** @description Database server/storage breakdown. Interval buckets only. */
3175
3548
  database_breakdown?: components["schemas"]["V1WorkspaceUsageDatabaseBreakdown"][] | null;
3176
- /** @description Member display name. Present on member-attributed rows (group_by=member, or a query filtered to one user_id) when the caller also holds the members:read scope. */
3549
+ /**
3550
+ * @description Member display name. Present on member-attributed rows (group_by=member, or a query filtered to one user_id) when the caller also holds the members:read scope.
3551
+ * @example Jane Cooper
3552
+ */
3177
3553
  display_name?: string;
3178
- /** @description Member email as stored on the workspace membership (not the user's primary/personal email). Present on member-attributed rows when the caller also holds the members:read scope. */
3554
+ /**
3555
+ * @description Member email as stored on the workspace membership (not the user's primary/personal email). Present on member-attributed rows when the caller also holds the members:read scope.
3556
+ * @example jane.cooper@acme.com
3557
+ */
3179
3558
  email?: string;
3180
3559
  /**
3181
3560
  * Format: double
3182
3561
  * @description Compute credits from functions and workers.
3562
+ * @example 60
3183
3563
  */
3184
3564
  functions: number;
3185
3565
  /**
3186
3566
  * Format: double
3187
3567
  * @description AI Gateway credits.
3568
+ * @example 200
3188
3569
  */
3189
3570
  gateway: number;
3190
3571
  /** @description Per-model AI Gateway breakdown. Interval buckets only. */
@@ -3192,6 +3573,7 @@ interface components {
3192
3573
  /**
3193
3574
  * Format: double
3194
3575
  * @description Network data-transfer credits.
3576
+ * @example 10
3195
3577
  */
3196
3578
  network: number;
3197
3579
  /** @description Inclusive row end (YYYY-MM-DD, UTC), clamped to the requested window at the edges. */
@@ -3203,24 +3585,31 @@ interface components {
3203
3585
  /**
3204
3586
  * Format: double
3205
3587
  * @description Realtime credits.
3588
+ * @example 40
3206
3589
  */
3207
3590
  realtime: number;
3208
3591
  /**
3209
3592
  * Format: double
3210
3593
  * @description Run-time credits (sum of the per-category fields below).
3594
+ * @example 380
3211
3595
  */
3212
3596
  run: number;
3213
3597
  /**
3214
3598
  * Format: double
3215
3599
  * @description Storage credits.
3600
+ * @example 30
3216
3601
  */
3217
3602
  storage: number;
3218
3603
  /**
3219
3604
  * Format: double
3220
3605
  * @description Total credits in this row.
3606
+ * @example 500
3221
3607
  */
3222
3608
  total: number;
3223
- /** @description Member this row aggregates (group_by=member) or is filtered to (user_id). */
3609
+ /**
3610
+ * @description Member this row aggregates (group_by=member) or is filtered to (user_id).
3611
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
3612
+ */
3224
3613
  user_id?: string;
3225
3614
  };
3226
3615
  V1BulkMemberCreditLimitItem: {
@@ -3229,19 +3618,32 @@ interface components {
3229
3618
  /**
3230
3619
  * Format: double
3231
3620
  * @description A number (0 blocks all spend) to set the cap, or null to clear it (the member inherits the workspace default).
3621
+ * @example 500
3232
3622
  */
3233
3623
  monthly_credit_limit: number | null;
3234
- /** @description Member user_id (from GET /v1/workspaces/{workspace_id}/members; active members only). Provide exactly one of user_id or email. */
3624
+ /**
3625
+ * @description Member user_id (from GET /v1/workspaces/{workspace_id}/members; active members only). Provide exactly one of user_id or email.
3626
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
3627
+ */
3235
3628
  user_id?: string;
3236
3629
  };
3237
3630
  V1BulkMemberCreditLimitResult: {
3238
3631
  /** @description Echoed when the item was addressed by email, so email-addressed results stay correlatable. */
3239
3632
  email?: string;
3240
- /** @description Failure reason when status is error. */
3633
+ /**
3634
+ * @description Failure reason when status is error.
3635
+ * @example member not found
3636
+ */
3241
3637
  error?: string;
3242
- /** @description success or error. */
3638
+ /**
3639
+ * @description success or error.
3640
+ * @example error
3641
+ */
3243
3642
  status: string;
3244
- /** @description The member this result is for (resolved from email when the item was addressed by email). */
3643
+ /**
3644
+ * @description The member this result is for (resolved from email when the item was addressed by email).
3645
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
3646
+ */
3245
3647
  user_id?: string;
3246
3648
  };
3247
3649
  V1BulkSetMemberCreditLimitInputBody: {
@@ -3254,6 +3656,7 @@ interface components {
3254
3656
  /**
3255
3657
  * Format: int64
3256
3658
  * @description Number that failed (see per-item error).
3659
+ * @example 1
3257
3660
  */
3258
3661
  failed: number;
3259
3662
  /** @description Per-member outcome, in request order. */
@@ -3261,11 +3664,13 @@ interface components {
3261
3664
  /**
3262
3665
  * Format: int64
3263
3666
  * @description Number applied successfully.
3667
+ * @example 2
3264
3668
  */
3265
3669
  successful: number;
3266
3670
  /**
3267
3671
  * Format: int64
3268
3672
  * @description Number of members in the request.
3673
+ * @example 3
3269
3674
  */
3270
3675
  total: number;
3271
3676
  };
@@ -3300,15 +3705,22 @@ interface components {
3300
3705
  url?: string;
3301
3706
  };
3302
3707
  V1CreateEmbedURLInputBody: {
3303
- /** @description Exact HTTPS origin allowed to frame the static preview */
3708
+ /**
3709
+ * @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.
3710
+ * @example https://acme.com
3711
+ */
3304
3712
  parent_origin: string;
3305
3713
  };
3306
3714
  V1CreateEmbedURLOutputBody: {
3307
- /** @description Origin-bound static preview URL */
3715
+ /**
3716
+ * @description Origin-bound static-preview URL carrying a short-lived signed token (?__lovable_token=…). Load it in an iframe on the requested parent_origin.
3717
+ * @example https://acme-landing-page.lovable.app/?__lovable_token=eyJhbGciOiJIUzI1NiJ9
3718
+ */
3308
3719
  embed_url: string;
3309
3720
  /**
3310
3721
  * Format: date-time
3311
- * @description Embed URL token expiration time
3722
+ * @description When the embed URL token expires and stops loading the preview.
3723
+ * @example 2026-01-15T09:30:00Z
3312
3724
  */
3313
3725
  expires_at: string;
3314
3726
  };
@@ -3349,57 +3761,117 @@ interface components {
3349
3761
  /**
3350
3762
  * Format: date-time
3351
3763
  * @description When the project was created.
3764
+ * @example 2026-01-15T09:30:00Z
3352
3765
  */
3353
3766
  created_at?: string;
3354
- /** @description Description supplied by the caller on create or update. */
3767
+ /**
3768
+ * @description Description supplied by the caller on create or update.
3769
+ * @example Marketing landing page for Acme's product launch.
3770
+ */
3355
3771
  description?: string;
3356
- /** @description Human-readable project name. */
3357
- display_name?: string;
3358
- /** @description Folder the project belongs to, if any. */
3772
+ /**
3773
+ * @description Human-readable project name.
3774
+ * @example Acme Landing Page
3775
+ */
3776
+ display_name?: string;
3777
+ /**
3778
+ * @description Folder the project belongs to, if any.
3779
+ * @example fold_01jw3k9m2xq8r5v0c7d4e6f2gh
3780
+ */
3359
3781
  folder_id?: string;
3360
- /** @description AI-written summary of what the project does. Absent until the agent has completed a response for the project. */
3782
+ /**
3783
+ * @description AI-written summary of what the project does. Absent until the agent has completed a response for the project.
3784
+ * @example A landing page for Acme with a hero, features, and pricing.
3785
+ */
3361
3786
  generated_description?: string;
3362
- /** @description Project ID. */
3787
+ /**
3788
+ * @description Project ID.
3789
+ * @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
3790
+ */
3363
3791
  id: string;
3364
- /** @description Whether the project is published. */
3792
+ /**
3793
+ * @description Whether the project is published.
3794
+ * @example true
3795
+ */
3365
3796
  is_published?: boolean;
3366
3797
  /**
3367
3798
  * Format: date-time
3368
3799
  * @description When the project was last edited.
3800
+ * @example 2026-01-15T09:30:00Z
3369
3801
  */
3370
3802
  last_edited_at?: string;
3371
- /** @description SHA of the latest commit */
3803
+ /**
3804
+ * @description SHA of the latest commit
3805
+ * @example a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0
3806
+ */
3372
3807
  latest_commit_sha?: string;
3373
- /** @description URL of the latest screenshot. */
3808
+ /**
3809
+ * @description URL of the latest screenshot.
3810
+ * @example https://screenshot2.lovable.dev/acme-landing-page.png
3811
+ */
3374
3812
  latest_screenshot_url?: string;
3375
3813
  /** @description User message ID, present when initial_message was provided */
3376
3814
  message_id?: string;
3377
- /** @description Project slug. */
3815
+ /**
3816
+ * @description Project slug.
3817
+ * @example acme-landing-page
3818
+ */
3378
3819
  name?: string;
3379
- /** @description Open Graph image URL. */
3820
+ /**
3821
+ * @description Open Graph image URL.
3822
+ * @example https://lovable.dev/cdn/projects/acme-landing-page/og.png
3823
+ */
3380
3824
  og_image_url?: string;
3381
- /** @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. */
3825
+ /**
3826
+ * @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.
3827
+ * @example https://acme-landing-page.lovable.app/
3828
+ */
3382
3829
  preview_url?: string;
3383
- /** @description Project type. One of: project, library. Absent on older projects. More values may be added; clients must tolerate unknown values. */
3830
+ /**
3831
+ * @description Project type. One of: project, library. Absent on older projects. More values may be added; clients must tolerate unknown values.
3832
+ * @example project
3833
+ */
3384
3834
  project_type?: string;
3385
- /** @description Published visibility. One of: public, private. More values may be added; clients must tolerate unknown values. */
3835
+ /**
3836
+ * @description Published visibility. One of: public, private. More values may be added; clients must tolerate unknown values.
3837
+ * @example public
3838
+ */
3386
3839
  publish_visibility?: string;
3387
- /** @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. */
3840
+ /**
3841
+ * @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.
3842
+ * @example completed
3843
+ */
3388
3844
  status?: string;
3389
- /** @description Project tech stack. */
3845
+ /**
3846
+ * @description Project tech stack.
3847
+ * @example vite_react_shadcn_ts
3848
+ */
3390
3849
  tech_stack?: string;
3391
3850
  /**
3392
3851
  * Format: date-time
3393
3852
  * @description When the project was last updated.
3853
+ * @example 2026-01-15T09:30:00Z
3394
3854
  */
3395
3855
  updated_at?: string;
3396
- /** @description Published project URL. */
3856
+ /**
3857
+ * @description Published project URL.
3858
+ * @example https://acme-landing-page.lovable.app
3859
+ */
3397
3860
  url?: string;
3398
- /** @description Project owner user ID. */
3861
+ /**
3862
+ * @description Project owner user ID.
3863
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
3864
+ */
3399
3865
  user_id?: string;
3400
- /** @description Project visibility: draft, private, workspace_view, or public. */
3866
+ /**
3867
+ * @description Project visibility: draft, private, workspace_view, or public.
3868
+ * @example public
3869
+ */
3401
3870
  visibility?: string;
3402
- /** @description Workspace the project belongs to. */
3871
+ /**
3872
+ * @description Workspace the project belongs to.
3873
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
3874
+ */
3403
3875
  workspace_id: string;
3404
3876
  };
3405
3877
  V1CreateVariantInputBody: {
@@ -3422,25 +3894,35 @@ interface components {
3422
3894
  /**
3423
3895
  * Format: double
3424
3896
  * @description Signed change in Lovable credits: positive for grants, negative for expiries and debits.
3897
+ * @example 1500
3425
3898
  */
3426
3899
  credits_change: number;
3427
3900
  /**
3428
3901
  * @description What happened to the credits.
3902
+ * @example granted
3429
3903
  * @enum {string}
3430
3904
  */
3431
3905
  event_type: "granted" | "expired" | "adjustment" | "converted";
3432
3906
  /**
3433
3907
  * @description Credit bucket this entry affected.
3908
+ * @example billing
3434
3909
  * @enum {string}
3435
3910
  */
3436
3911
  grant_type: "billing" | "rollover" | "granted" | "topup" | "commitment" | "cashback" | "daily";
3437
- /** @description Stable ledger entry ID. */
3912
+ /**
3913
+ * @description Stable ledger entry ID.
3914
+ * @example 01jw3k9m2xq8r5v0c7d4e6f2gh
3915
+ */
3438
3916
  id: string;
3439
- /** @description Human-readable summary of the entry. */
3917
+ /**
3918
+ * @description Human-readable summary of the entry.
3919
+ * @example Monthly plan credit grant
3920
+ */
3440
3921
  label: string;
3441
3922
  /**
3442
3923
  * Format: date-time
3443
3924
  * @description When the entry occurred (RFC3339, UTC).
3925
+ * @example 2026-01-15T09:30:00Z
3444
3926
  */
3445
3927
  occurred_at: string;
3446
3928
  };
@@ -3521,8 +4003,11 @@ interface components {
3521
4003
  has_more: boolean;
3522
4004
  };
3523
4005
  V1GetSecurityScanOutputBody: {
4006
+ /** @description Security findings captured in this scan. */
3524
4007
  findings: components["schemas"]["V1SecurityFinding"][] | null;
4008
+ /** @description Scan invocation summary. */
3525
4009
  scan: components["schemas"]["V1SecurityScanSummary"];
4010
+ /** @description Per-scanner execution records for this scan. */
3526
4011
  scanner_runs: components["schemas"]["V1SecurityScannerRun"][] | null;
3527
4012
  };
3528
4013
  V1GetWorkspaceSkillOutputBody: {
@@ -3652,35 +4137,47 @@ interface components {
3652
4137
  /**
3653
4138
  * Format: int64
3654
4139
  * @description Compressed archive size in bytes.
4140
+ * @example 10485760
3655
4141
  */
3656
4142
  archive_size_bytes?: number;
3657
4143
  /**
3658
4144
  * Format: date-time
3659
4145
  * @description When the export reached a terminal state.
4146
+ * @example 2026-01-15T09:32:10Z
3660
4147
  */
3661
4148
  completed_at?: string;
3662
4149
  /**
3663
4150
  * Format: date-time
3664
4151
  * @description When the export was requested.
4152
+ * @example 2026-01-15T09:30:00Z
3665
4153
  */
3666
4154
  created_at: string;
3667
- /** @description One-hour signed URL, present while a completed export has not expired. */
4155
+ /**
4156
+ * @description One-hour signed URL for the ZIP archive, present while a completed export has not expired.
4157
+ * @example https://storage.googleapis.com/lovable-message-exports/0195b2c3-6a7d-4f3e-9a1b-2c3d4e5f6a7b.zip?X-Goog-Expires=3600
4158
+ */
3668
4159
  download_url?: string;
3669
4160
  /**
3670
4161
  * Format: date-time
3671
4162
  * @description When the completed file is deleted.
4163
+ * @example 2026-01-22T09:32:10Z
3672
4164
  */
3673
4165
  expires_at?: string;
3674
- /** @description Export ID. */
4166
+ /**
4167
+ * @description Export ID.
4168
+ * @example 0195b2c3-6a7d-4f3e-9a1b-2c3d4e5f6a7b
4169
+ */
3675
4170
  export_id: string;
3676
4171
  /**
3677
4172
  * Format: int64
3678
4173
  * @description Number of messages in a completed export.
4174
+ * @example 4821
3679
4175
  */
3680
4176
  message_count?: number;
3681
4177
  /**
3682
4178
  * Format: int64
3683
4179
  * @description Number of projects represented in a completed export.
4180
+ * @example 12
3684
4181
  */
3685
4182
  project_count?: number;
3686
4183
  /**
@@ -3746,20 +4243,32 @@ interface components {
3746
4243
  V1ProjectCloudBody: {
3747
4244
  /** @description Disk-space telemetry. Omitted while the measurement is temporarily unavailable; retry later. */
3748
4245
  disk?: components["schemas"]["V1ProjectCloudDisk"];
3749
- /** @description Cloud environment these values describe. */
4246
+ /**
4247
+ * @description Cloud environment these values describe.
4248
+ * @example production
4249
+ */
3750
4250
  environment: string;
3751
4251
  /**
3752
4252
  * @description Current compute instance tier code.
3753
4253
  * @enum {string}
3754
4254
  */
3755
4255
  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). */
4256
+ /**
4257
+ * @description Human-readable tier name as shown in the editor (Tiny, Mini, Small, Medium, Large, X-Large, 2X-Large).
4258
+ * @example Small
4259
+ */
3757
4260
  instance_tier_label: string;
3758
- /** @description Why the instance was paused (e.g. credit_limit), when recorded. */
4261
+ /** @description Why the instance was paused (e.g. credit_limit), when recorded. Only present on paused instances. */
3759
4262
  pause_reason?: string;
3760
- /** @description Postgres major/minor version. Omitted while the lookup is temporarily unavailable. */
4263
+ /**
4264
+ * @description Postgres major/minor version. Omitted while the lookup is temporarily unavailable.
4265
+ * @example 17.4
4266
+ */
3761
4267
  postgres_version?: string;
3762
- /** @description Region the database runs in. Omitted while the lookup is temporarily unavailable. */
4268
+ /**
4269
+ * @description Region the database runs in. Omitted while the lookup is temporarily unavailable.
4270
+ * @example us-east-1
4271
+ */
3763
4272
  region?: string;
3764
4273
  /** @description CPU/memory/disk-IO pressure alerts over the trailing window. Omitted while the lookup is temporarily unavailable. */
3765
4274
  resource_pressure?: components["schemas"]["V1ProjectCloudResourcePressure"];
@@ -3768,23 +4277,29 @@ interface components {
3768
4277
  * @enum {string}
3769
4278
  */
3770
4279
  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. */
4280
+ /**
4281
+ * @description True when a user (or the platform) explicitly paused this cloud instance.
4282
+ * @example false
4283
+ */
3772
4284
  user_paused: boolean;
3773
4285
  };
3774
4286
  V1ProjectCloudDisk: {
3775
4287
  /**
3776
4288
  * Format: int64
3777
4289
  * @description Provisioned size of the database volume in bytes.
4290
+ * @example 8589934592
3778
4291
  */
3779
4292
  size_bytes: number;
3780
4293
  /**
3781
4294
  * Format: date-time
3782
4295
  * @description When the platform measured these values. Measurements refresh periodically; use this to judge data age.
4296
+ * @example 2026-01-15T09:30:00Z
3783
4297
  */
3784
4298
  timestamp: string;
3785
4299
  /**
3786
4300
  * Format: int64
3787
4301
  * @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.
4302
+ * @example 1073741824
3788
4303
  */
3789
4304
  used_bytes: number;
3790
4305
  };
@@ -3794,6 +4309,7 @@ interface components {
3794
4309
  /**
3795
4310
  * Format: int64
3796
4311
  * @description Size of the trailing window these signals cover.
4312
+ * @example 24
3797
4313
  */
3798
4314
  window_hours: number;
3799
4315
  };
@@ -3801,50 +4317,80 @@ interface components {
3801
4317
  /**
3802
4318
  * Format: int64
3803
4319
  * @description Hours within the window that raised a pressure alert.
4320
+ * @example 3
3804
4321
  */
3805
4322
  alert_hours: number;
3806
- /** @description Human-readable resource name. */
4323
+ /**
4324
+ * @description Human-readable resource name.
4325
+ * @example CPU
4326
+ */
3807
4327
  label: string;
3808
4328
  /**
3809
4329
  * Format: date-time
3810
4330
  * @description Most recent pressure alert in the window, if any.
4331
+ * @example 2026-01-15T09:30:00Z
3811
4332
  */
3812
4333
  latest_alert_at?: string;
3813
4334
  /**
3814
4335
  * Format: double
3815
4336
  * @description Reported value of the most recent alert, if any.
4337
+ * @example 95.5
3816
4338
  */
3817
4339
  latest_value?: number;
3818
- /** @description Resource under pressure: cpu, memory, or disk_io. */
4340
+ /**
4341
+ * @description Resource under pressure: cpu, memory, or disk_io.
4342
+ * @example cpu
4343
+ */
3819
4344
  resource_type: string;
3820
4345
  };
3821
4346
  V1ProjectCollaborator: {
3822
4347
  /**
3823
4348
  * Format: date-time
3824
4349
  * @description When the user accepted the project invitation. Null if the invite is still pending.
4350
+ * @example 2026-01-15T09:30:00Z
3825
4351
  */
3826
4352
  accepted_at?: string;
3827
4353
  /**
3828
4354
  * @description Access level: owner, admin, write, or read
4355
+ * @example admin
3829
4356
  * @enum {string}
3830
4357
  */
3831
4358
  access_level: "owner" | "admin" | "write" | "read" | "none";
3832
- /** @description Human-readable display name. Falls back to the email when the user has not set a display name. */
4359
+ /**
4360
+ * @description Human-readable display name. Falls back to the email when the user has not set a display name.
4361
+ * @example Jane Cooper
4362
+ */
3833
4363
  display_name?: string;
3834
- /** @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). */
4364
+ /**
4365
+ * @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).
4366
+ * @example jane.cooper@acme.com
4367
+ */
3835
4368
  email?: string;
3836
4369
  /**
3837
4370
  * Format: date-time
3838
4371
  * @description When the user was invited to the project. Null for the project owner.
4372
+ * @example 2026-01-15T09:30:00Z
3839
4373
  */
3840
4374
  invited_at?: string;
3841
- /** @description User ID of the inviter. Empty for the project owner. */
4375
+ /**
4376
+ * @description User ID of the inviter. Empty for the project owner.
4377
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
4378
+ */
3842
4379
  invited_by?: string;
3843
- /** @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. */
4380
+ /**
4381
+ * @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.
4382
+ * @example true
4383
+ */
3844
4384
  is_internal: boolean;
3845
- /** @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. */
4385
+ /**
4386
+ * @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.
4387
+ * @example true
4388
+ */
3846
4389
  is_workspace_member: boolean;
3847
- /** @description User ID of the collaborator */
4390
+ /**
4391
+ * @description User ID of the collaborator
4392
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
4393
+ */
3848
4394
  user_id: string;
3849
4395
  };
3850
4396
  V1ProjectFileUploadURLInputBody: {
@@ -3868,55 +4414,115 @@ interface components {
3868
4414
  /**
3869
4415
  * Format: date-time
3870
4416
  * @description When the project was created.
4417
+ * @example 2026-01-15T09:30:00Z
3871
4418
  */
3872
4419
  created_at?: string;
3873
- /** @description Description supplied by the caller on create or update. */
4420
+ /**
4421
+ * @description Description supplied by the caller on create or update.
4422
+ * @example Marketing landing page for Acme's product launch.
4423
+ */
3874
4424
  description?: string;
3875
- /** @description Human-readable project name. */
4425
+ /**
4426
+ * @description Human-readable project name.
4427
+ * @example Acme Landing Page
4428
+ */
3876
4429
  display_name?: string;
3877
- /** @description Folder the project belongs to, if any. */
4430
+ /**
4431
+ * @description Folder the project belongs to, if any.
4432
+ * @example fold_01jw3k9m2xq8r5v0c7d4e6f2gh
4433
+ */
3878
4434
  folder_id?: string;
3879
- /** @description AI-written summary of what the project does. Absent until the agent has completed a response for the project. */
4435
+ /**
4436
+ * @description AI-written summary of what the project does. Absent until the agent has completed a response for the project.
4437
+ * @example A landing page for Acme with a hero, features, and pricing.
4438
+ */
3880
4439
  generated_description?: string;
3881
- /** @description Project ID. */
4440
+ /**
4441
+ * @description Project ID.
4442
+ * @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
4443
+ */
3882
4444
  id: string;
3883
- /** @description Whether the project is published. */
4445
+ /**
4446
+ * @description Whether the project is published.
4447
+ * @example true
4448
+ */
3884
4449
  is_published?: boolean;
3885
4450
  /**
3886
4451
  * Format: date-time
3887
4452
  * @description When the project was last edited.
4453
+ * @example 2026-01-15T09:30:00Z
3888
4454
  */
3889
4455
  last_edited_at?: string;
3890
- /** @description SHA of the latest commit */
4456
+ /**
4457
+ * @description SHA of the latest commit
4458
+ * @example a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0
4459
+ */
3891
4460
  latest_commit_sha?: string;
3892
- /** @description URL of the latest screenshot. */
4461
+ /**
4462
+ * @description URL of the latest screenshot.
4463
+ * @example https://screenshot2.lovable.dev/acme-landing-page.png
4464
+ */
3893
4465
  latest_screenshot_url?: string;
3894
- /** @description Project slug. */
4466
+ /**
4467
+ * @description Project slug.
4468
+ * @example acme-landing-page
4469
+ */
3895
4470
  name?: string;
3896
- /** @description Open Graph image URL. */
4471
+ /**
4472
+ * @description Open Graph image URL.
4473
+ * @example https://lovable.dev/cdn/projects/acme-landing-page/og.png
4474
+ */
3897
4475
  og_image_url?: string;
3898
- /** @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. */
4476
+ /**
4477
+ * @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.
4478
+ * @example https://acme-landing-page.lovable.app/
4479
+ */
3899
4480
  preview_url?: string;
3900
- /** @description Project type. One of: project, library. Absent on older projects. More values may be added; clients must tolerate unknown values. */
4481
+ /**
4482
+ * @description Project type. One of: project, library. Absent on older projects. More values may be added; clients must tolerate unknown values.
4483
+ * @example project
4484
+ */
3901
4485
  project_type?: string;
3902
- /** @description Published visibility. One of: public, private. More values may be added; clients must tolerate unknown values. */
4486
+ /**
4487
+ * @description Published visibility. One of: public, private. More values may be added; clients must tolerate unknown values.
4488
+ * @example public
4489
+ */
3903
4490
  publish_visibility?: string;
3904
- /** @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. */
4491
+ /**
4492
+ * @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.
4493
+ * @example completed
4494
+ */
3905
4495
  status?: string;
3906
- /** @description Project tech stack. */
4496
+ /**
4497
+ * @description Project tech stack.
4498
+ * @example vite_react_shadcn_ts
4499
+ */
3907
4500
  tech_stack?: string;
3908
4501
  /**
3909
4502
  * Format: date-time
3910
4503
  * @description When the project was last updated.
4504
+ * @example 2026-01-15T09:30:00Z
3911
4505
  */
3912
4506
  updated_at?: string;
3913
- /** @description Published project URL. */
4507
+ /**
4508
+ * @description Published project URL.
4509
+ * @example https://acme-landing-page.lovable.app
4510
+ */
3914
4511
  url?: string;
3915
- /** @description Project owner user ID. */
4512
+ /**
4513
+ * @description Project owner user ID.
4514
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
4515
+ */
3916
4516
  user_id?: string;
3917
- /** @description Project visibility: draft, private, workspace_view, or public. */
4517
+ /**
4518
+ * @description Project visibility: draft, private, workspace_view, or public.
4519
+ * @example public
4520
+ */
3918
4521
  visibility?: string;
3919
- /** @description Workspace the project belongs to. */
4522
+ /**
4523
+ * @description Workspace the project belongs to.
4524
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
4525
+ */
3920
4526
  workspace_id: string;
3921
4527
  };
3922
4528
  V1ProjectSkillDTO: {
@@ -3983,33 +4589,82 @@ interface components {
3983
4589
  success: boolean;
3984
4590
  };
3985
4591
  V1SecurityFinding: {
4592
+ /**
4593
+ * @description Finding category.
4594
+ * @example data_exposure
4595
+ */
3986
4596
  category?: string;
3987
- connector_id?: string;
3988
- /** Format: date-time */
4597
+ /**
4598
+ * Format: date-time
4599
+ * @description When this finding was first recorded, UTC.
4600
+ * @example 2026-01-15T09:30:00Z
4601
+ */
3989
4602
  created_at: string;
4603
+ /**
4604
+ * @description Human-readable summary of the finding.
4605
+ * @example A public table has row-level security disabled, exposing all rows to anonymous clients.
4606
+ */
3990
4607
  description?: string;
3991
- /** @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. */
4608
+ /**
4609
+ * @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.
4610
+ * @example table: public.profiles; rls_enabled: false
4611
+ */
3992
4612
  details?: string;
4613
+ /**
4614
+ * @description Stable identifier for this finding.
4615
+ * @example b2c3d4e5-f6a7-8901-bcde-f23456789012
4616
+ */
3993
4617
  finding_id: string;
4618
+ /**
4619
+ * @description Scan invocation ID where this finding was first seen.
4620
+ * @example a1b2c3d4-e5f6-7890-abcd-ef1234567890
4621
+ */
3994
4622
  first_seen_scan_id?: string;
3995
- /** @description error | warn | info */
4623
+ /**
4624
+ * @description error | warn | info
4625
+ * @example error
4626
+ */
3996
4627
  level: string;
4628
+ /**
4629
+ * @description Link to remediation guidance for this finding.
4630
+ * @example https://docs.lovable.dev/security/rls
4631
+ */
3997
4632
  link?: string;
3998
4633
  /** @description Scanner-specific metadata (file_path, line_number, package, cve, ...) */
3999
4634
  metadata?: {
4000
4635
  [key: string]: unknown;
4001
4636
  };
4637
+ /**
4638
+ * @description Short finding title.
4639
+ * @example Row-level security disabled on a public table
4640
+ */
4002
4641
  name: string;
4003
4642
  /**
4004
4643
  * Format: int64
4005
4644
  * @description Number of consecutive scans this finding has appeared in
4645
+ * @example 3
4006
4646
  */
4007
4647
  recurrence: number;
4648
+ /**
4649
+ * @description Estimated remediation effort (easy, medium, or hard).
4650
+ * @example medium
4651
+ */
4008
4652
  remediation_difficulty?: string;
4653
+ /**
4654
+ * @description Name of the scanner that produced this finding.
4655
+ * @example agent_security
4656
+ */
4009
4657
  scanner_name: string;
4010
- /** @description Finding status. One of: open, fixed, ignored. More values may be added; clients must tolerate unknown values. */
4658
+ /**
4659
+ * @description Finding status. One of: open, fixed, ignored. More values may be added; clients must tolerate unknown values.
4660
+ * @example open
4661
+ */
4011
4662
  status: string;
4012
- /** Format: date-time */
4663
+ /**
4664
+ * Format: date-time
4665
+ * @description When this finding was last updated, UTC.
4666
+ * @example 2026-01-15T09:30:00Z
4667
+ */
4013
4668
  updated_at: string;
4014
4669
  };
4015
4670
  V1SecurityScanActor: {
@@ -4023,38 +4678,87 @@ interface components {
4023
4678
  type: string;
4024
4679
  };
4025
4680
  V1SecurityScanSummary: {
4026
- /** @description Project commit at scan start */
4681
+ /**
4682
+ * @description Project commit at scan start
4683
+ * @example 9fceb02d0ae598e95dc970b74767f19372d61af8
4684
+ */
4027
4685
  commit_sha?: string;
4028
- /** Format: date-time */
4686
+ /**
4687
+ * Format: date-time
4688
+ * @description When the scan finished, UTC; absent while still running.
4689
+ * @example 2026-01-15T09:30:00Z
4690
+ */
4029
4691
  finished_at?: string;
4030
4692
  /** @description Scanners requested for this invocation */
4031
4693
  requested_scanners: string[] | null;
4032
- /** @description Unique scan invocation ID */
4694
+ /**
4695
+ * @description Unique scan invocation ID
4696
+ * @example a1b2c3d4-e5f6-7890-abcd-ef1234567890
4697
+ */
4033
4698
  scan_id: string;
4034
- /** Format: date-time */
4699
+ /**
4700
+ * Format: date-time
4701
+ * @description When the scan started, UTC.
4702
+ * @example 2026-01-15T09:30:00Z
4703
+ */
4035
4704
  started_at: string;
4036
- /** @description Scan status. One of: running, completed, failed. More values may be added; clients must tolerate unknown values. */
4705
+ /**
4706
+ * @description Scan status. One of: running, completed, failed. More values may be added; clients must tolerate unknown values.
4707
+ * @example completed
4708
+ */
4037
4709
  status: string;
4038
- /** @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. */
4710
+ /**
4711
+ * @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.
4712
+ * @example workflow
4713
+ */
4039
4714
  trigger_source: string;
4040
4715
  /** @description Actor that triggered the scan. */
4041
4716
  triggered_by: components["schemas"]["V1SecurityScanActor"];
4042
4717
  };
4043
4718
  V1SecurityScannerRun: {
4044
- /** @description Commit at which this scanner actually ran (may differ from invocation commit on carry-forward) */
4719
+ /**
4720
+ * @description Commit at which this scanner actually ran (may differ from invocation commit on carry-forward)
4721
+ * @example 9fceb02d0ae598e95dc970b74767f19372d61af8
4722
+ */
4045
4723
  commit_sha?: string;
4724
+ /**
4725
+ * @description Error message when the scanner failed.
4726
+ * @example Scanner timed out after 300s
4727
+ */
4046
4728
  error_message?: string;
4047
- /** Format: date-time */
4729
+ /**
4730
+ * Format: date-time
4731
+ * @description When this scanner finished, UTC; absent while still running.
4732
+ * @example 2026-01-15T09:30:00Z
4733
+ */
4048
4734
  finished_at?: string;
4735
+ /**
4736
+ * @description Name of the scanner that ran.
4737
+ * @example agent_security
4738
+ */
4049
4739
  scanner_name: string;
4740
+ /**
4741
+ * @description Version of the scanner that ran.
4742
+ * @example 1.4.2
4743
+ */
4050
4744
  scanner_version?: string;
4051
- /** Format: date-time */
4745
+ /**
4746
+ * Format: date-time
4747
+ * @description When this scanner started, UTC.
4748
+ * @example 2026-01-15T09:30:00Z
4749
+ */
4052
4750
  started_at: string;
4053
- /** @description Scanner run status. One of: succeeded, failed, skipped. More values may be added; clients must tolerate unknown values. */
4751
+ /**
4752
+ * @description Scanner run status. One of: succeeded, failed, skipped. More values may be added; clients must tolerate unknown values.
4753
+ * @example failed
4754
+ */
4054
4755
  status: string;
4055
4756
  };
4056
4757
  V1SelectedLibrary: {
4057
- /** @description Library project ID */
4758
+ /**
4759
+ * @description Library project ID
4760
+ * @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
4761
+ */
4058
4762
  project_id: string;
4059
4763
  };
4060
4764
  V1SendMessageInputBody: {
@@ -4125,17 +4829,32 @@ interface components {
4125
4829
  content: string;
4126
4830
  };
4127
4831
  V1StartMessageExportInputBody: {
4128
- /** @description Exclusive RFC3339 end time. Defaults to the request time. */
4832
+ /**
4833
+ * @description Exclusive RFC3339 end time. Defaults to the request time.
4834
+ * @example 2026-02-01T00:00:00Z
4835
+ */
4129
4836
  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. */
4837
+ /**
4838
+ * @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.
4839
+ * @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
4840
+ */
4131
4841
  project_id?: string;
4132
- /** @description Inclusive RFC3339 start time. Defaults to 90 days before end_date. */
4842
+ /**
4843
+ * @description Inclusive RFC3339 start time. Defaults to 90 days before end_date.
4844
+ * @example 2026-01-01T00:00:00Z
4845
+ */
4133
4846
  start_date?: string;
4134
- /** @description Export only messages sent by this user. May be combined with project_id; both filters must match. */
4847
+ /**
4848
+ * @description Export only messages sent by this user. May be combined with project_id; both filters must match.
4849
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
4850
+ */
4135
4851
  user_id?: string;
4136
4852
  };
4137
4853
  V1StartMessageExportOutputBody: {
4138
- /** @description Export ID used to poll status. */
4854
+ /**
4855
+ * @description Export ID used to poll status.
4856
+ * @example 0195b2c3-6a7d-4f3e-9a1b-2c3d4e5f6a7b
4857
+ */
4139
4858
  export_id: string;
4140
4859
  /**
4141
4860
  * @description Initial export status (running).
@@ -4148,27 +4867,49 @@ interface components {
4148
4867
  project_id: string;
4149
4868
  };
4150
4869
  V1TriggerSecurityScanResponseBody: {
4151
- /** @description Human-readable status message */
4870
+ /**
4871
+ * @description Human-readable status message
4872
+ * @example Security scan started.
4873
+ */
4152
4874
  message?: string;
4153
- /** @description Scan invocation ID. Poll GET /v1/projects/{project_id}/security-scans/{scan_id} for status (running | completed | failed) and findings. */
4875
+ /**
4876
+ * @description Scan invocation ID. Poll GET /v1/projects/{project_id}/security-scans/{scan_id} for status (running | completed | failed) and findings.
4877
+ * @example a1b2c3d4-e5f6-7890-abcd-ef1234567890
4878
+ */
4154
4879
  scan_id: string;
4155
- /** @description One of: started, running, completed. More values may be added; clients must tolerate unknown values. */
4880
+ /**
4881
+ * @description One of: started, running, completed. More values may be added; clients must tolerate unknown values.
4882
+ * @example started
4883
+ */
4156
4884
  status: string;
4157
4885
  };
4158
4886
  V1UnscopedFile: {
4159
- /** @description Uploaded file ID */
4887
+ /**
4888
+ * @description Uploaded file ID
4889
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5/logo.png
4890
+ */
4160
4891
  file_id: string;
4161
- /** @description Original file name */
4892
+ /**
4893
+ * @description Original file name
4894
+ * @example logo.png
4895
+ */
4162
4896
  file_name?: string;
4163
- /** @description MIME type */
4897
+ /**
4898
+ * @description MIME type
4899
+ * @example image/png
4900
+ */
4164
4901
  mime_type?: string;
4165
- /** @description File type (e.g. user_upload) */
4902
+ /**
4903
+ * @description File type (e.g. user_upload)
4904
+ * @example user_upload
4905
+ */
4166
4906
  type?: string;
4167
4907
  };
4168
4908
  V1UpdateMemberCreditLimitInputBody: {
4169
4909
  /**
4170
4910
  * Format: double
4171
4911
  * @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).
4912
+ * @example 500
4172
4913
  */
4173
4914
  monthly_credit_limit?: number | null;
4174
4915
  /** @description Workspace ID. */
@@ -4178,6 +4919,7 @@ interface components {
4178
4919
  /**
4179
4920
  * Format: double
4180
4921
  * @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).
4922
+ * @example 500
4181
4923
  */
4182
4924
  default_monthly_member_credit_limit?: number | null;
4183
4925
  /** @description Workspace ID. */
@@ -4187,6 +4929,7 @@ interface components {
4187
4929
  /**
4188
4930
  * Format: double
4189
4931
  * @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).
4932
+ * @example 500
4190
4933
  */
4191
4934
  default_monthly_member_credit_limit?: number | null;
4192
4935
  };
@@ -4199,59 +4942,113 @@ interface components {
4199
4942
  start: string;
4200
4943
  };
4201
4944
  V1WorkspaceAuditLogEntry: {
4202
- /** @description Action name (e.g. workspace.member.added). */
4945
+ /**
4946
+ * @description Action name (e.g. workspace.member.added).
4947
+ * @example workspace.member.role_changed
4948
+ */
4203
4949
  action: string;
4204
- /** @description Human-readable description of the action, derived from the action name (e.g. Workspace member added). */
4950
+ /**
4951
+ * @description Human-readable description of the action, derived from the action name (e.g. Workspace member added).
4952
+ * @example Workspace member role changed
4953
+ */
4205
4954
  action_description: string;
4206
- /** @description Display name of the actor at the time of the event. */
4955
+ /**
4956
+ * @description Display name of the actor at the time of the event.
4957
+ * @example Jane Cooper
4958
+ */
4207
4959
  actor_display_name?: string;
4208
- /** @description User ID of the actor (or system actor ID for non-user actions). */
4960
+ /**
4961
+ * @description User ID of the actor (or system actor ID for non-user actions).
4962
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
4963
+ */
4209
4964
  actor_id: string;
4210
- /** @description Actor classification (user, scim, system). */
4965
+ /**
4966
+ * @description Actor classification (user, scim, system).
4967
+ * @example user
4968
+ */
4211
4969
  actor_type?: string;
4212
- /** @description First-party client the action came from (web, ios, android, desktop-app); absent when the caller sent no platform header. */
4970
+ /**
4971
+ * @description First-party client the action came from (web, ios, android, desktop-app); absent when the caller sent no platform header.
4972
+ * @example web
4973
+ */
4213
4974
  client_platform?: string;
4214
4975
  /** @description Action-specific structured detail payload. */
4215
4976
  details?: {
4216
4977
  [key: string]: unknown;
4217
4978
  };
4218
- /** @description Event ID. */
4979
+ /**
4980
+ * @description Event ID.
4981
+ * @example 01jw3k9m2xq8r5v0c7d4e6f2gh
4982
+ */
4219
4983
  id: string;
4220
- /** @description IP address that initiated the action. */
4984
+ /**
4985
+ * @description IP address that initiated the action.
4986
+ * @example 203.0.113.42
4987
+ */
4221
4988
  ip_address?: string;
4222
- /** @description success or failed. */
4989
+ /**
4990
+ * @description success or failed.
4991
+ * @example failed
4992
+ */
4223
4993
  status: string;
4224
- /** @description Optional message describing the failure cause when status is failed. */
4994
+ /**
4995
+ * @description Optional message describing the failure cause when status is failed.
4996
+ * @example Insufficient permissions
4997
+ */
4225
4998
  status_message?: string;
4226
- /** @description Display name of the target at the time of the event. */
4999
+ /**
5000
+ * @description Display name of the target at the time of the event.
5001
+ * @example Jane Cooper
5002
+ */
4227
5003
  target_display_name?: string;
4228
- /** @description ID of the target resource. */
5004
+ /**
5005
+ * @description ID of the target resource.
5006
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
5007
+ */
4229
5008
  target_id?: string;
4230
- /** @description Type of the target resource (project, workspace, membership, etc.). */
5009
+ /**
5010
+ * @description Type of the target resource (project, workspace, membership, etc.).
5011
+ * @example membership
5012
+ */
4231
5013
  target_type?: string;
4232
5014
  /**
4233
5015
  * Format: date-time
4234
5016
  * @description When the action occurred.
5017
+ * @example 2026-01-15T09:30:00Z
4235
5018
  */
4236
5019
  timestamp: string;
4237
- /** @description Group ID linking multi-event flows together. */
5020
+ /**
5021
+ * @description Group ID linking multi-event flows together.
5022
+ * @example 4bf92f3577b34da6a3ce929d0e0e4736
5023
+ */
4238
5024
  trace_group_id?: string;
4239
- /** @description User agent string for the request. */
5025
+ /**
5026
+ * @description User agent string for the request.
5027
+ * @example Mozilla/5.0
5028
+ */
4240
5029
  user_agent?: string;
4241
5030
  };
4242
5031
  V1WorkspaceAuditLogsBody: {
5032
+ /** @description Items in this page. */
4243
5033
  data: components["schemas"]["V1WorkspaceAuditLogEntry"][] | null;
5034
+ /** @description Pagination cursors for fetching adjacent pages. */
4244
5035
  pagination: components["schemas"]["Pagination"];
4245
5036
  };
4246
5037
  V1WorkspaceCreditHistoryBody: {
5038
+ /** @description Items in this page. */
4247
5039
  data: components["schemas"]["V1CreditHistoryEntry"][] | null;
5040
+ /** @description Pagination cursors for fetching adjacent pages. */
4248
5041
  pagination: components["schemas"]["Pagination"];
4249
5042
  /**
4250
5043
  * Format: int64
4251
5044
  * @description Total entry count, present only on the first page. Capped — see total_is_capped.
5045
+ * @example 42
4252
5046
  */
4253
5047
  total?: number;
4254
- /** @description True when total reached the count cap and the real total is higher. */
5048
+ /**
5049
+ * @description True when total reached the count cap and the real total is higher.
5050
+ * @example false
5051
+ */
4255
5052
  total_is_capped?: boolean;
4256
5053
  };
4257
5054
  V1WorkspaceCreditsBody: {
@@ -4260,11 +5057,13 @@ interface components {
4260
5057
  /**
4261
5058
  * Format: double
4262
5059
  * @description Daily credit limit for this workspace.
5060
+ * @example 500
4263
5061
  */
4264
5062
  daily_limit: number;
4265
5063
  /**
4266
5064
  * Format: double
4267
5065
  * @description Remaining credits from today's daily grants.
5066
+ * @example 300
4268
5067
  */
4269
5068
  daily_remaining: number;
4270
5069
  /** @description All future grant expiry groups sorted by date (excluding daily/overage). */
@@ -4274,46 +5073,62 @@ interface components {
4274
5073
  /**
4275
5074
  * Format: double
4276
5075
  * @description Credits used in the current billing period (see billing_period for the exact window).
5076
+ * @example 500
4277
5077
  */
4278
5078
  total_billing_period_used: number;
4279
5079
  /**
4280
5080
  * Format: double
4281
5081
  * @description Total credits granted across all active grants.
5082
+ * @example 2000
4282
5083
  */
4283
5084
  total_granted: number;
4284
5085
  /**
4285
5086
  * Format: double
4286
5087
  * @description Total remaining credits across all active grants.
5088
+ * @example 1500
4287
5089
  */
4288
5090
  total_remaining: number;
4289
5091
  };
4290
5092
  V1WorkspaceCreditsExpiringGrant: {
4291
- /** @description What the expiring credits apply to (e.g. build_time, cloud, ai_gateway). */
5093
+ /**
5094
+ * @description What the expiring credits apply to (e.g. build_time, cloud, ai_gateway).
5095
+ * @example build_time
5096
+ */
4292
5097
  applicability?: string;
4293
5098
  /**
4294
5099
  * Format: double
4295
5100
  * @description Total credits expiring at this date.
5101
+ * @example 1500
4296
5102
  */
4297
5103
  credits: number;
4298
5104
  /**
4299
5105
  * Format: date-time
4300
5106
  * @description When these credits expire.
5107
+ * @example 2026-01-15T09:30:00Z
4301
5108
  */
4302
5109
  expires_at: string;
4303
- /** @description Display bucket: billing, rollover, topup, commitment, cashback, or granted. */
5110
+ /**
5111
+ * @description Display bucket: billing, rollover, topup, commitment, cashback, or granted.
5112
+ * @example billing
5113
+ */
4304
5114
  grant_type: string;
4305
5115
  };
4306
5116
  V1WorkspaceCreditsGrantTypeBalance: {
4307
- /** @description Display bucket: billing, daily, rollover, topup, commitment, cashback, or granted. */
5117
+ /**
5118
+ * @description Display bucket: billing, daily, rollover, topup, commitment, cashback, or granted.
5119
+ * @example billing
5120
+ */
4308
5121
  grant_type: string;
4309
5122
  /**
4310
5123
  * Format: double
4311
5124
  * @description Total credits granted for this type.
5125
+ * @example 1500
4312
5126
  */
4313
5127
  granted: number;
4314
5128
  /**
4315
5129
  * Format: double
4316
5130
  * @description Remaining credits for this type.
5131
+ * @example 1200
4317
5132
  */
4318
5133
  remaining: number;
4319
5134
  };
@@ -4321,11 +5136,13 @@ interface components {
4321
5136
  /**
4322
5137
  * Format: date-time
4323
5138
  * @description Data horizon for the edit counts.
5139
+ * @example 2026-01-15T09:30:00Z
4324
5140
  */
4325
5141
  edits_as_of?: string;
4326
5142
  /**
4327
5143
  * Format: date-time
4328
5144
  * @description Data horizon for the visitor counts.
5145
+ * @example 2026-01-15T09:30:00Z
4329
5146
  */
4330
5147
  visitors_as_of?: string;
4331
5148
  };
@@ -4333,6 +5150,7 @@ interface components {
4333
5150
  /**
4334
5151
  * Format: date-time
4335
5152
  * @description Conservative workspace-wide freshness horizon for the risk rollups; individual project rollups may be newer.
5153
+ * @example 2026-01-15T09:30:00Z
4336
5154
  */
4337
5155
  as_of?: string;
4338
5156
  /** @description Finding-catalog counts, dominance-suppressed and severity-ordered. */
@@ -4341,70 +5159,184 @@ interface components {
4341
5159
  summary: components["schemas"]["V1WorkspaceInsightsSummary"];
4342
5160
  };
4343
5161
  V1WorkspaceInsightsEdgeFunction: {
4344
- /** @description Edge function name. */
5162
+ /**
5163
+ * @description Edge function name.
5164
+ * @example send-welcome-email
5165
+ */
4345
5166
  name: string;
4346
5167
  };
4347
5168
  V1WorkspaceInsightsFinding: {
4348
- /** @description Finding category (e.g. data, access, exposure). */
5169
+ /**
5170
+ * @description Finding category (e.g. data, access, exposure).
5171
+ * @example data
5172
+ */
4349
5173
  category: string;
4350
- /** @description Human-readable finding description. */
5174
+ /**
5175
+ * @description Human-readable finding description.
5176
+ * @example A public table has row-level security disabled, exposing all rows to anonymous callers.
5177
+ */
4351
5178
  description: string;
4352
- /** @description Stable finding-catalog slug (e.g. public_pii_exposure, orphaned_owner). */
5179
+ /**
5180
+ * @description Stable finding-catalog slug (e.g. public_pii_exposure, orphaned_owner).
5181
+ * @example public_pii_exposure
5182
+ */
4353
5183
  id: string;
4354
5184
  /**
4355
5185
  * Format: int64
4356
5186
  * @description Projects matching this finding.
5187
+ * @example 12
4357
5188
  */
4358
5189
  project_count: number;
4359
- /** @description Review priority: needs_review | review_recommended | no_review_needed. */
5190
+ /**
5191
+ * @description Review priority: needs_review | review_recommended | no_review_needed.
5192
+ * @example needs_review
5193
+ */
4360
5194
  severity: string;
4361
- /** @description Human-readable finding title. */
5195
+ /**
5196
+ * @description Human-readable finding title.
5197
+ * @example Row-level security disabled on a public table
5198
+ */
4362
5199
  title: string;
4363
5200
  };
4364
5201
  V1WorkspaceInsightsOwner: {
4365
- /** @description Project owner's display name. */
5202
+ /**
5203
+ * @description Project owner's display name.
5204
+ * @example Jane Cooper
5205
+ */
4366
5206
  display_name?: string;
4367
5207
  };
4368
5208
  V1WorkspaceInsightsProject: {
5209
+ /**
5210
+ * @description Activity bucket: active, inactive, or dead.
5211
+ * @example active
5212
+ */
4369
5213
  activity_group?: string;
5214
+ /** @description Configured connector names. */
4370
5215
  connectors?: string[] | null;
5216
+ /**
5217
+ * @description User-provided project description.
5218
+ * @example Marketing landing page for the Q1 product launch.
5219
+ */
4371
5220
  description?: string;
5221
+ /**
5222
+ * @description Project display name.
5223
+ * @example Acme Landing Page
5224
+ */
4372
5225
  display_name?: string;
5226
+ /** @description Deployed edge functions. */
4373
5227
  edge_functions?: components["schemas"]["V1WorkspaceInsightsEdgeFunction"][] | null;
4374
- /** Format: int64 */
5228
+ /**
5229
+ * Format: int64
5230
+ * @description Total edits over the project's lifetime.
5231
+ * @example 128
5232
+ */
4375
5233
  edit_count: number;
4376
- /** Format: int64 */
5234
+ /**
5235
+ * Format: int64
5236
+ * @description Edits in the last 24 hours.
5237
+ * @example 4
5238
+ */
4377
5239
  edits_24h: number;
4378
- /** Format: int64 */
5240
+ /**
5241
+ * Format: int64
5242
+ * @description Edits in the last 30 days.
5243
+ * @example 67
5244
+ */
4379
5245
  edits_30d: number;
4380
- /** Format: int64 */
5246
+ /**
5247
+ * Format: int64
5248
+ * @description Edits in the last 7 days.
5249
+ * @example 21
5250
+ */
4381
5251
  edits_7d: number;
5252
+ /**
5253
+ * @description AI-generated project description.
5254
+ * @example A single-page marketing site with a hero, feature grid, and signup form.
5255
+ */
4382
5256
  generated_description?: string;
5257
+ /**
5258
+ * @description Project ID.
5259
+ * @example prj_01jw3k9m2xq8r5v0c7d4e6f2gh
5260
+ */
4383
5261
  id: string;
5262
+ /**
5263
+ * @description Whether the project is published.
5264
+ * @example true
5265
+ */
4384
5266
  is_published?: boolean;
4385
- /** Format: date-time */
5267
+ /**
5268
+ * Format: date-time
5269
+ * @description When the project was last edited.
5270
+ * @example 2026-01-15T09:30:00Z
5271
+ */
4386
5272
  last_edited_at?: string;
4387
- /** Format: date-time */
5273
+ /**
5274
+ * Format: date-time
5275
+ * @description When the project was last security-scanned.
5276
+ * @example 2026-01-15T09:30:00Z
5277
+ */
4388
5278
  last_security_scan_at?: string;
4389
5279
  /** @description The reason matching the single applied finding_id, when set. */
4390
5280
  matched_reason?: components["schemas"]["V1WorkspaceInsightsReason"];
4391
- /** Format: int64 */
5281
+ /**
5282
+ * Format: int64
5283
+ * @description Total chat messages in the project.
5284
+ * @example 56
5285
+ */
4392
5286
  message_count: number;
5287
+ /**
5288
+ * @description Project name.
5289
+ * @example Acme Landing Page
5290
+ */
4393
5291
  name?: string;
5292
+ /**
5293
+ * @description Open Graph preview image URL.
5294
+ * @example https://lovable.dev/cdn/projects/acme-landing-page/og.png
5295
+ */
4394
5296
  og_image_url?: string;
5297
+ /** @description Project owner identity. */
4395
5298
  owner?: components["schemas"]["V1WorkspaceInsightsOwner"];
5299
+ /**
5300
+ * @description Publishing status: external, workspace, or not_published.
5301
+ * @example external
5302
+ */
4396
5303
  publish_visibility?: string;
4397
- /** @description Review priority: needs_review, review_recommended, no_review_needed, or unscored. */
5304
+ /**
5305
+ * @description Review priority: needs_review, review_recommended, no_review_needed, or unscored.
5306
+ * @example needs_review
5307
+ */
4398
5308
  review_priority?: string;
5309
+ /** @description Risk reasons explaining the review priority. */
4399
5310
  review_priority_explanation: components["schemas"]["V1WorkspaceInsightsReason"][] | null;
5311
+ /** @description Per-project security and activity signals. */
4400
5312
  signals: components["schemas"]["V1WorkspaceInsightsSignals"];
5313
+ /**
5314
+ * @description Live project preview URL.
5315
+ * @example https://acme-landing-page.lovable.app
5316
+ */
4401
5317
  url?: string;
5318
+ /**
5319
+ * @description Project visibility: public, private, or draft.
5320
+ * @example public
5321
+ */
4402
5322
  visibility?: string;
4403
- /** Format: int64 */
5323
+ /**
5324
+ * Format: int64
5325
+ * @description Unique visitors in the last 24 hours.
5326
+ * @example 35
5327
+ */
4404
5328
  visitors_24h: number;
4405
- /** Format: int64 */
5329
+ /**
5330
+ * Format: int64
5331
+ * @description Unique visitors in the last 30 days.
5332
+ * @example 840
5333
+ */
4406
5334
  visitors_30d: number;
4407
- /** Format: int64 */
5335
+ /**
5336
+ * Format: int64
5337
+ * @description Unique visitors in the last 7 days.
5338
+ * @example 210
5339
+ */
4408
5340
  visitors_7d: number;
4409
5341
  };
4410
5342
  V1WorkspaceInsightsProjectsBody: {
@@ -4415,121 +5347,296 @@ interface components {
4415
5347
  /**
4416
5348
  * Format: date-time
4417
5349
  * @description Conservative workspace-wide freshness horizon for the risk rollups; individual project rollups may be newer.
5350
+ * @example 2026-01-15T09:30:00Z
4418
5351
  */
4419
5352
  as_of?: string;
5353
+ /** @description Items in this page. */
4420
5354
  data: components["schemas"]["V1WorkspaceInsightsProject"][] | null;
5355
+ /** @description Pagination cursors for fetching adjacent pages. */
4421
5356
  pagination: components["schemas"]["Pagination"];
4422
5357
  /**
4423
5358
  * Format: int64
4424
5359
  * @description Total matching projects across all pages.
5360
+ * @example 42
4425
5361
  */
4426
5362
  total: number;
4427
5363
  };
4428
5364
  V1WorkspaceInsightsReason: {
5365
+ /**
5366
+ * @description Risk-reason category (e.g. data, access, exposure).
5367
+ * @example data
5368
+ */
4429
5369
  category: string;
5370
+ /**
5371
+ * @description Human-readable explanation of the risk reason.
5372
+ * @example A public table exposes personal data to anonymous callers.
5373
+ */
4430
5374
  detail: string;
4431
- /** @description Stable risk-reason slug. */
5375
+ /**
5376
+ * @description Stable risk-reason slug.
5377
+ * @example public_pii_exposure
5378
+ */
4432
5379
  id: string;
5380
+ /**
5381
+ * @description Human-readable risk-reason label.
5382
+ * @example Public PII exposure
5383
+ */
4433
5384
  label: string;
4434
- /** @description Review priority: needs_review | review_recommended | no_review_needed. */
5385
+ /**
5386
+ * @description Review priority: needs_review | review_recommended | no_review_needed.
5387
+ * @example needs_review
5388
+ */
4435
5389
  severity: string;
4436
5390
  /** @description Typed per-reason counts. */
4437
5391
  values?: components["schemas"]["V1WorkspaceInsightsReasonValues"];
4438
5392
  };
4439
5393
  V1WorkspaceInsightsReasonValues: {
4440
- /** Format: int64 */
5394
+ /**
5395
+ * Format: int64
5396
+ * @description Number of configured connectors.
5397
+ * @example 2
5398
+ */
4441
5399
  connector_count?: number;
4442
- /** Format: int64 */
5400
+ /**
5401
+ * Format: int64
5402
+ * @description Number of deployed edge functions.
5403
+ * @example 3
5404
+ */
4443
5405
  edge_function_count?: number;
4444
- /** Format: int64 */
5406
+ /**
5407
+ * Format: int64
5408
+ * @description Number of error-level security findings.
5409
+ * @example 2
5410
+ */
4445
5411
  error_count?: number;
4446
- /** Format: int64 */
5412
+ /**
5413
+ * Format: int64
5414
+ * @description Number of info-level security findings.
5415
+ * @example 8
5416
+ */
4447
5417
  info_count?: number;
4448
- /** Format: int64 */
5418
+ /**
5419
+ * Format: int64
5420
+ * @description Number of open PII findings.
5421
+ * @example 3
5422
+ */
4449
5423
  open_pii_finding_count?: number;
4450
- /** Format: int64 */
5424
+ /**
5425
+ * Format: int64
5426
+ * @description Number of stored project secrets.
5427
+ * @example 4
5428
+ */
4451
5429
  secret_count?: number;
4452
- /** Format: int64 */
5430
+ /**
5431
+ * Format: int64
5432
+ * @description Number of users the project is shared with.
5433
+ * @example 6
5434
+ */
4453
5435
  shared_user_count?: number;
4454
- /** Format: int64 */
5436
+ /**
5437
+ * Format: int64
5438
+ * @description Number of warning-level security findings.
5439
+ * @example 5
5440
+ */
4455
5441
  warning_count?: number;
4456
5442
  };
4457
5443
  V1WorkspaceInsightsReviewPriority: {
4458
5444
  /**
4459
5445
  * Format: int64
4460
5446
  * @description Projects that need review (critical risk).
5447
+ * @example 3
4461
5448
  */
4462
5449
  needs_review: number;
4463
5450
  /**
4464
5451
  * Format: int64
4465
5452
  * @description Projects that don't need review (low or minimal risk).
5453
+ * @example 12
4466
5454
  */
4467
5455
  no_review_needed: number;
4468
5456
  /**
4469
5457
  * Format: int64
4470
5458
  * @description Projects where review is recommended (high or medium risk).
5459
+ * @example 5
4471
5460
  */
4472
5461
  review_recommended: number;
4473
5462
  };
4474
5463
  V1WorkspaceInsightsSignals: {
4475
- /** Format: int64 */
5464
+ /**
5465
+ * Format: int64
5466
+ * @description Number of chat attachments.
5467
+ * @example 7
5468
+ */
4476
5469
  chat_attachment_count: number;
4477
- /** Format: int64 */
5470
+ /**
5471
+ * Format: int64
5472
+ * @description Number of configured connectors.
5473
+ * @example 2
5474
+ */
4478
5475
  connector_count: number;
4479
- /** Format: int64 */
5476
+ /**
5477
+ * Format: int64
5478
+ * @description Number of deployed edge functions.
5479
+ * @example 3
5480
+ */
4480
5481
  edge_function_count: number;
4481
- /** Format: int64 */
5482
+ /**
5483
+ * Format: int64
5484
+ * @description Number of error-level security findings.
5485
+ * @example 2
5486
+ */
4482
5487
  error_count: number;
5488
+ /**
5489
+ * @description Whether external-collaborator status could be determined.
5490
+ * @example true
5491
+ */
4483
5492
  external_collaborators_known: boolean;
5493
+ /**
5494
+ * @description Whether the project has any chat attachments.
5495
+ * @example true
5496
+ */
4484
5497
  has_chat_attachment: boolean;
5498
+ /**
5499
+ * @description Whether the project has collaborators outside the workspace.
5500
+ * @example true
5501
+ */
4485
5502
  has_external_collaborators: boolean;
5503
+ /**
5504
+ * @description Whether the project has any detected PII.
5505
+ * @example true
5506
+ */
4486
5507
  has_pii: boolean;
5508
+ /**
5509
+ * @description Whether the project has any uploaded assets.
5510
+ * @example true
5511
+ */
4487
5512
  has_project_asset: boolean;
5513
+ /**
5514
+ * @description Whether the project stores any secrets.
5515
+ * @example true
5516
+ */
4488
5517
  has_project_secret: boolean;
4489
- /** Format: int64 */
5518
+ /**
5519
+ * Format: int64
5520
+ * @description Number of info-level security findings.
5521
+ * @example 8
5522
+ */
4490
5523
  info_count: number;
5524
+ /**
5525
+ * @description Whether the project has no active owner.
5526
+ * @example false
5527
+ */
4491
5528
  is_orphaned: boolean;
5529
+ /**
5530
+ * @description Whether the project is published to a public (external) audience.
5531
+ * @example true
5532
+ */
4492
5533
  is_public_published: boolean;
5534
+ /**
5535
+ * @description Whether the project is published.
5536
+ * @example true
5537
+ */
4493
5538
  is_published: boolean;
5539
+ /**
5540
+ * @description Whether Lovable Cloud (Supabase) is enabled for the project.
5541
+ * @example true
5542
+ */
4494
5543
  lovable_cloud_enabled: boolean;
4495
- /** Format: int64 */
5544
+ /**
5545
+ * Format: int64
5546
+ * @description Number of open PII findings.
5547
+ * @example 3
5548
+ */
4496
5549
  open_pii_finding_count: number;
5550
+ /**
5551
+ * @description Whether the project is shared more broadly than recommended.
5552
+ * @example false
5553
+ */
4497
5554
  overshared: boolean;
4498
- /** Format: int64 */
5555
+ /**
5556
+ * Format: int64
5557
+ * @description Number of uploaded project assets.
5558
+ * @example 10
5559
+ */
4499
5560
  project_asset_count: number;
4500
- /** Format: int64 */
5561
+ /**
5562
+ * Format: int64
5563
+ * @description Number of stored project secrets.
5564
+ * @example 4
5565
+ */
4501
5566
  project_secret_count: number;
4502
- /** Format: int64 */
5567
+ /**
5568
+ * Format: int64
5569
+ * @description Number of users the project is shared with.
5570
+ * @example 6
5571
+ */
4503
5572
  shared_user_count: number;
5573
+ /** @description Enabled Supabase auth providers. */
4504
5574
  supabase_auth_providers?: string[] | null;
4505
- /** Format: int64 */
5575
+ /**
5576
+ * Format: int64
5577
+ * @description Number of Supabase tables with row-level security enabled.
5578
+ * @example 10
5579
+ */
4506
5580
  supabase_rls_enabled_table_count?: number;
4507
- /** Format: date-time */
5581
+ /**
5582
+ * Format: date-time
5583
+ * @description When the Supabase signals were last fetched.
5584
+ * @example 2026-01-15T09:30:00Z
5585
+ */
4508
5586
  supabase_signals_fetched_at?: string;
4509
- /** Format: int64 */
5587
+ /**
5588
+ * Format: int64
5589
+ * @description Number of Supabase storage buckets.
5590
+ * @example 2
5591
+ */
4510
5592
  supabase_storage_bucket_count?: number;
4511
- /** Format: int64 */
5593
+ /**
5594
+ * Format: int64
5595
+ * @description Number of Supabase database tables.
5596
+ * @example 12
5597
+ */
4512
5598
  supabase_table_count?: number;
4513
- /** Format: int64 */
5599
+ /**
5600
+ * Format: int64
5601
+ * @description Number of error-level supply-chain findings.
5602
+ * @example 1
5603
+ */
4514
5604
  supply_chain_error_count: number;
4515
- /** Format: int64 */
5605
+ /**
5606
+ * Format: int64
5607
+ * @description Number of info-level supply-chain findings.
5608
+ * @example 4
5609
+ */
4516
5610
  supply_chain_info_count: number;
4517
- /** Format: int64 */
5611
+ /**
5612
+ * Format: int64
5613
+ * @description Number of warning-level supply-chain findings.
5614
+ * @example 3
5615
+ */
4518
5616
  supply_chain_warning_count: number;
4519
- /** Format: int64 */
5617
+ /**
5618
+ * Format: int64
5619
+ * @description Number of warning-level security findings.
5620
+ * @example 5
5621
+ */
4520
5622
  warning_count: number;
4521
5623
  };
4522
5624
  V1WorkspaceInsightsStat: {
4523
5625
  /**
4524
5626
  * Format: int64
4525
5627
  * @description Signed change over the delta window.
5628
+ * @example 3
4526
5629
  */
4527
5630
  delta_30d: number;
4528
- /** @description Human-readable window for delta_30d (e.g. "30 days"). */
5631
+ /**
5632
+ * @description Human-readable window for delta_30d (e.g. "30 days").
5633
+ * @example 30 days
5634
+ */
4529
5635
  delta_window: string;
4530
5636
  /**
4531
5637
  * Format: int64
4532
5638
  * @description Current count.
5639
+ * @example 42
4533
5640
  */
4534
5641
  value: number;
4535
5642
  };
@@ -4544,66 +5651,109 @@ interface components {
4544
5651
  workspace_members: components["schemas"]["V1WorkspaceInsightsStat"];
4545
5652
  };
4546
5653
  V1WorkspaceMember: {
4547
- /** @description User display name as stored on the membership. */
5654
+ /**
5655
+ * @description User display name as stored on the membership.
5656
+ * @example Jane Cooper
5657
+ */
4548
5658
  display_name?: string;
4549
- /** @description Member email as stored on the membership. For pending invites this is the invited email. May be absent on legacy membership rows. */
5659
+ /**
5660
+ * @description Member email as stored on the membership. For pending invites this is the invited email. May be absent on legacy membership rows.
5661
+ * @example jane.cooper@acme.com
5662
+ */
4550
5663
  email?: string;
4551
5664
  /**
4552
5665
  * Format: date-time
4553
5666
  * @description When the user was invited.
5667
+ * @example 2026-01-15T09:30:00Z
4554
5668
  */
4555
5669
  invited_at?: string;
4556
5670
  /**
4557
5671
  * Format: date-time
4558
5672
  * @description When the user accepted the invitation. Absent on pending invites.
5673
+ * @example 2026-01-15T09:30:00Z
4559
5674
  */
4560
5675
  joined_at?: string;
4561
5676
  /**
4562
5677
  * Format: double
4563
5678
  * @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.
5679
+ * @example 500
4564
5680
  */
4565
5681
  monthly_credit_limit?: number;
4566
- /** @description Workspace role. One of: owner, admin, member, viewer, collaborator. */
5682
+ /**
5683
+ * @description Workspace role. One of: owner, admin, member, viewer, collaborator.
5684
+ * @example admin
5685
+ */
4567
5686
  role: string;
4568
- /** @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). */
5687
+ /**
5688
+ * @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).
5689
+ * @example Xy7Kd2Lm9Qp4Rt6Vw8Zc1Bn3Fh5
5690
+ */
4569
5691
  user_id: string;
4570
- /** @description Workspace the membership belongs to. */
5692
+ /**
5693
+ * @description Workspace the membership belongs to.
5694
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
5695
+ */
4571
5696
  workspace_id: string;
4572
5697
  };
4573
5698
  V1WorkspaceSettingsBody: {
4574
5699
  /**
4575
5700
  * Format: date-time
4576
5701
  * @description End of the current billing period.
5702
+ * @example 2026-02-01T00:00:00Z
4577
5703
  */
4578
5704
  billing_period_end_date?: string;
4579
5705
  /**
4580
5706
  * Format: date-time
4581
5707
  * @description Start of the current billing period.
5708
+ * @example 2026-01-01T00:00:00Z
4582
5709
  */
4583
5710
  billing_period_start_date?: string;
4584
5711
  /**
4585
5712
  * Format: double
4586
5713
  * @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.
5714
+ * @example 500
4587
5715
  */
4588
5716
  default_monthly_member_credit_limit?: number;
4589
- /** @description Default visibility applied to new projects. One of: public, private, draft. Absent means the workspace effective default of private. */
5717
+ /**
5718
+ * @description Default visibility applied to new projects. One of: public, private, draft. Absent means the workspace effective default of private.
5719
+ * @example private
5720
+ */
4590
5721
  default_project_visibility?: string;
4591
- /** @description Whether PII scanning is enabled across project resources. */
5722
+ /**
5723
+ * @description Whether PII scanning is enabled across project resources.
5724
+ * @example true
5725
+ */
4592
5726
  enable_pii: boolean;
4593
- /** @description Whether SSO is enforced for all members. */
5727
+ /**
5728
+ * @description Whether SSO is enforced for all members.
5729
+ * @example true
5730
+ */
4594
5731
  enforce_sso: boolean;
4595
- /** @description Workspace ID. */
5732
+ /**
5733
+ * @description Workspace ID.
5734
+ * @example workspace_01jw3k9m2xq8r5v0c7d4e6f2gh
5735
+ */
4596
5736
  id: string;
4597
- /** @description Workspace display name. */
5737
+ /**
5738
+ * @description Workspace display name.
5739
+ * @example Acme Inc
5740
+ */
4598
5741
  name: string;
4599
5742
  /**
4600
5743
  * Format: int64
4601
5744
  * @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).
5745
+ * @example 25
4602
5746
  */
4603
5747
  num_seats?: number;
4604
- /** @description Plan tier. One of: free, pro, business, enterprise. More values may be added; clients must tolerate unknown values. */
5748
+ /**
5749
+ * @description Plan tier. One of: free, pro, business, enterprise. More values may be added; clients must tolerate unknown values.
5750
+ * @example enterprise
5751
+ */
4605
5752
  plan: string;
4606
- /** @description Restriction on what publish visibilities are allowed: workspace_only or disabled. Absent means no restriction. */
5753
+ /**
5754
+ * @description Restriction on what publish audiences are allowed: org_only, workspace_only, or disabled. Absent means no restriction.
5755
+ * @example workspace_only
5756
+ */
4607
5757
  publishing_policy?: string;
4608
5758
  };
4609
5759
  V1WorkspaceSkillDTO: {
@@ -4623,12 +5773,14 @@ interface components {
4623
5773
  V1WorkspaceUsageBreakdownBody: {
4624
5774
  /** @description The calendar month that each row's total_credits_used_in_billing_period covers. */
4625
5775
  billing_period: components["schemas"]["V1BillingPeriod"];
5776
+ /** @description Items in this page. */
4626
5777
  data: components["schemas"]["V1WorkspaceUsageBreakdownEntry"][] | null;
4627
5778
  /**
4628
5779
  * Format: int64
4629
5780
  * @description Total matching members across all pages.
4630
5781
  */
4631
5782
  member_count: number;
5783
+ /** @description Pagination cursors for fetching adjacent pages. */
4632
5784
  pagination: components["schemas"]["Pagination"];
4633
5785
  };
4634
5786
  V1WorkspaceUsageBreakdownEntry: {
@@ -4671,25 +5823,37 @@ interface components {
4671
5823
  /**
4672
5824
  * Format: double
4673
5825
  * @description Credits attributed to this database subcategory in the bucket.
5826
+ * @example 30
4674
5827
  */
4675
5828
  credits: number;
4676
5829
  /**
4677
5830
  * @description Stable database subcategory key.
5831
+ * @example database_server
4678
5832
  * @enum {string}
4679
5833
  */
4680
5834
  key: "database_server" | "database_storage";
4681
- /** @description Display label for the database subcategory. */
5835
+ /**
5836
+ * @description Display label for the database subcategory.
5837
+ * @example Database server
5838
+ */
4682
5839
  label: string;
4683
5840
  };
4684
5841
  V1WorkspaceUsageGatewayModel: {
4685
5842
  /**
4686
5843
  * Format: double
4687
5844
  * @description Credits attributed to this model in the bucket.
5845
+ * @example 200
4688
5846
  */
4689
5847
  credits: number;
4690
- /** @description Model name. */
5848
+ /**
5849
+ * @description Model name.
5850
+ * @example claude-sonnet-4-5
5851
+ */
4691
5852
  name: string;
4692
- /** @description Model provider, e.g. anthropic, openai. */
5853
+ /**
5854
+ * @description Model provider, e.g. anthropic, openai.
5855
+ * @example anthropic
5856
+ */
4693
5857
  provider: string;
4694
5858
  };
4695
5859
  V1WorkspaceUsageMeBody: {
@@ -4759,12 +5923,14 @@ interface components {
4759
5923
  total: number;
4760
5924
  };
4761
5925
  V1WorkspaceUsageProjectsBody: {
5926
+ /** @description Items in this page. */
4762
5927
  data: components["schemas"]["V1WorkspaceUsageProjectRow"][] | null;
4763
5928
  /**
4764
5929
  * Format: int64
4765
5930
  * @description Number of projects with usage in the window.
4766
5931
  */
4767
5932
  entity_count: number;
5933
+ /** @description Pagination cursors for fetching adjacent pages. */
4768
5934
  pagination: components["schemas"]["Pagination"];
4769
5935
  /** @description The resolved window these rows cover, echoed so callers can see the dates the server applied. */
4770
5936
  period: components["schemas"]["V1UsagePeriod"];
@@ -4775,7 +5941,9 @@ interface components {
4775
5941
  workspace_total: number;
4776
5942
  };
4777
5943
  V1WorkspaceUsageTimeseriesBody: {
5944
+ /** @description Items in this page. */
4778
5945
  data: components["schemas"]["V1WorkspaceUsageTimeseriesBucket"][] | null;
5946
+ /** @description Pagination cursors for fetching adjacent pages. */
4779
5947
  pagination: components["schemas"]["Pagination"];
4780
5948
  /** @description The resolved window these buckets cover, echoed so callers can see the dates and granularity the server applied. */
4781
5949
  period: components["schemas"]["V1UsagePeriod"];
@@ -4864,6 +6032,7 @@ interface components {
4864
6032
  project_id: string;
4865
6033
  };
4866
6034
  WorkspaceAnalyticsResponse: {
6035
+ /** @description Workspace-wide time-series metrics aggregated across all projects. */
4867
6036
  timeSeries: components["schemas"]["TimeSeriesGroup"];
4868
6037
  };
4869
6038
  };
@@ -8560,6 +9729,8 @@ interface operations {
8560
9729
  query?: {
8561
9730
  /** @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. */
8562
9731
  include_risk?: boolean;
9732
+ /** @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. */
9733
+ skip_count?: boolean;
8563
9734
  /** @description Filter by project creator user ID */
8564
9735
  user_id?: string;
8565
9736
  /** @description Filter by visibility */