@vibexp/api-client 0.81.0 → 0.83.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.
@@ -4677,10 +4677,11 @@ export type AdminUserListItem = {
4677
4677
  last_resource_created_at?: string | null;
4678
4678
  };
4679
4679
  /**
4680
- * How many resources of each type a user authored, counted by the author
4681
- * column of each table (feeds by creator, feed items by poster). Every row
4682
- * counts regardless of its status or archive state. `total` is the sum of the
4683
- * nine types.
4680
+ * How many resources of each type belong to the listed row. On a user row
4681
+ * these are the resources the user authored, counted by the author column of
4682
+ * each table (feeds by creator, feed items by poster); on a team row they are
4683
+ * the resources in the team, counted by team_id. Every row counts regardless
4684
+ * of its status or archive state. `total` is the sum of the nine types.
4684
4685
  *
4685
4686
  */
4686
4687
  export type AdminResourceCounts = {
@@ -4789,8 +4790,58 @@ export type AdminTeamListItem = {
4789
4790
  * Number of members in the team.
4790
4791
  */
4791
4792
  member_count: number;
4793
+ /**
4794
+ * Number of members holding the owner role. Always 1 by application invariant; any other value signals integrity drift.
4795
+ */
4796
+ owner_count: number;
4797
+ /**
4798
+ * Number of members holding the admin role.
4799
+ */
4800
+ admin_count: number;
4801
+ /**
4802
+ * Number of projects in the team.
4803
+ */
4804
+ project_count: number;
4805
+ resource_counts: AdminResourceCounts;
4806
+ configuration: AdminTeamConfiguration;
4792
4807
  created_at: string;
4793
4808
  };
4809
+ /**
4810
+ * Which settings a team has configured itself. Each flag reflects the team's
4811
+ * OWN rows only; instance-level fallback configuration (config.yaml) never
4812
+ * counts as configured.
4813
+ *
4814
+ */
4815
+ export type AdminTeamConfiguration = {
4816
+ /**
4817
+ * The team has at least one embedding provider of its own.
4818
+ */
4819
+ embedding_configured: boolean;
4820
+ /**
4821
+ * The team has at least one LLM model provider of its own.
4822
+ */
4823
+ llm_configured: boolean;
4824
+ /**
4825
+ * The team has its own AI summary settings with summaries enabled.
4826
+ */
4827
+ ai_summary_enabled: boolean;
4828
+ /**
4829
+ * The team has its own email provider, regardless of its delivery health.
4830
+ */
4831
+ email_configured: boolean;
4832
+ /**
4833
+ * The team has its own GitHub App configuration or at least one GitHub App installation (suspended installations included).
4834
+ */
4835
+ github_configured: boolean;
4836
+ /**
4837
+ * The team has its own search settings.
4838
+ */
4839
+ search_settings_customized: boolean;
4840
+ /**
4841
+ * The team has at least one enabled freshness rule.
4842
+ */
4843
+ freshness_enabled: boolean;
4844
+ };
4794
4845
  /**
4795
4846
  * A page of the instance-wide team listing, newest first.
4796
4847
  */
@@ -5310,6 +5361,91 @@ export type AdminUserNotificationPreferences = {
5310
5361
  */
5311
5362
  is_default: boolean;
5312
5363
  };
5364
+ /**
5365
+ * Resource accesses by the user per bucket and source, across every team
5366
+ * (GET /api/v1/admin/users/{id}/resource-access-metrics). Every bucket in the
5367
+ * range is present with an explicit 0 for each source that appears.
5368
+ *
5369
+ */
5370
+ export type AdminUserAccessMetrics = {
5371
+ /**
5372
+ * Inclusive start of the range actually used, snapped DOWN to the start of
5373
+ * its bucket (same rule as AdminTimeseriesResponse.from).
5374
+ *
5375
+ */
5376
+ from: string;
5377
+ /**
5378
+ * Exclusive end of the range actually used (after defaulting); not snapped.
5379
+ */
5380
+ to: string;
5381
+ /**
5382
+ * Bucket size actually used.
5383
+ */
5384
+ granularity: 'day' | 'week' | 'month';
5385
+ /**
5386
+ * One point per (bucket, source), ascending by bucket then source.
5387
+ */
5388
+ access_by_source: Array<AdminSourcePoint>;
5389
+ /**
5390
+ * Oldest access event still retained (now minus
5391
+ * `retention.access_event_days`); buckets before it read as zeros.
5392
+ *
5393
+ */
5394
+ earliest_retained_at: string;
5395
+ };
5396
+ /**
5397
+ * One opaque most-accessed resource: its type, where it lives and how often
5398
+ * the user accessed it. Deliberately carries no title, slug or content — only
5399
+ * the first 8 characters of the resource id. The identity fields share their
5400
+ * names with AdminUserTimelineEvent.
5401
+ *
5402
+ */
5403
+ export type AdminTopAccessedResource = {
5404
+ resource_type: 'prompt' | 'artifact' | 'blueprint' | 'memory' | 'project' | 'agent';
5405
+ /**
5406
+ * First 8 characters of the resource id.
5407
+ */
5408
+ resource_short_id: string;
5409
+ team_id: string;
5410
+ team_name: string;
5411
+ /**
5412
+ * The resource's project (for a `project` row, the project itself). Null
5413
+ * for agents and for deleted resources.
5414
+ *
5415
+ */
5416
+ project_id: string | null;
5417
+ project_name: string | null;
5418
+ /**
5419
+ * True when the resource no longer exists (access events outlive their resource until pruned).
5420
+ */
5421
+ resource_deleted: boolean;
5422
+ access_count: number;
5423
+ };
5424
+ /**
5425
+ * The resources a user accessed most in a range
5426
+ * (GET /api/v1/admin/users/{id}/top-accessed-resources).
5427
+ *
5428
+ */
5429
+ export type AdminTopAccessedResourcesResponse = {
5430
+ /**
5431
+ * Inclusive start of the range actually used (after defaulting); not snapped.
5432
+ */
5433
+ from: string;
5434
+ /**
5435
+ * Exclusive end of the range actually used (after defaulting).
5436
+ */
5437
+ to: string;
5438
+ /**
5439
+ * Most accessed first; ties broken by resource id.
5440
+ */
5441
+ items: Array<AdminTopAccessedResource>;
5442
+ /**
5443
+ * Oldest access event still retained (now minus
5444
+ * `retention.access_event_days`); accesses before it are not counted.
5445
+ *
5446
+ */
5447
+ earliest_retained_at: string;
5448
+ };
5313
5449
  export type ProjectResponse = Project & {
5314
5450
  /**
5315
5451
  * Whether the project's git URL matches a repository accessible via the team's GitHub App installation
@@ -12052,10 +12188,154 @@ export type ListAdminTeamsData = {
12052
12188
  * Only teams created at or before this instant (inclusive).
12053
12189
  */
12054
12190
  created_to?: string;
12191
+ /**
12192
+ * Only teams with at least this many members (inclusive).
12193
+ */
12194
+ member_count_min?: number;
12195
+ /**
12196
+ * Only teams with at most this many members (inclusive).
12197
+ */
12198
+ member_count_max?: number;
12199
+ /**
12200
+ * Only teams with at least this many members holding the owner role (always 1 by application invariant; any other value is integrity drift) (inclusive).
12201
+ */
12202
+ owner_count_min?: number;
12203
+ /**
12204
+ * Only teams with at most this many members holding the owner role (always 1 by application invariant; any other value is integrity drift) (inclusive).
12205
+ */
12206
+ owner_count_max?: number;
12207
+ /**
12208
+ * Only teams with at least this many members holding the admin role (inclusive).
12209
+ */
12210
+ admin_count_min?: number;
12211
+ /**
12212
+ * Only teams with at most this many members holding the admin role (inclusive).
12213
+ */
12214
+ admin_count_max?: number;
12215
+ /**
12216
+ * Only teams with at least this many projects in the team (inclusive).
12217
+ */
12218
+ project_count_min?: number;
12219
+ /**
12220
+ * Only teams with at most this many projects in the team (inclusive).
12221
+ */
12222
+ project_count_max?: number;
12223
+ /**
12224
+ * Only teams with at least this many prompts in the team (inclusive).
12225
+ */
12226
+ prompt_count_min?: number;
12227
+ /**
12228
+ * Only teams with at most this many prompts in the team (inclusive).
12229
+ */
12230
+ prompt_count_max?: number;
12231
+ /**
12232
+ * Only teams with at least this many memories in the team (inclusive).
12233
+ */
12234
+ memory_count_min?: number;
12235
+ /**
12236
+ * Only teams with at most this many memories in the team (inclusive).
12237
+ */
12238
+ memory_count_max?: number;
12239
+ /**
12240
+ * Only teams with at least this many artifacts in the team (inclusive).
12241
+ */
12242
+ artifact_count_min?: number;
12243
+ /**
12244
+ * Only teams with at most this many artifacts in the team (inclusive).
12245
+ */
12246
+ artifact_count_max?: number;
12247
+ /**
12248
+ * Only teams with at least this many blueprints in the team (inclusive).
12249
+ */
12250
+ blueprint_count_min?: number;
12251
+ /**
12252
+ * Only teams with at most this many blueprints in the team (inclusive).
12253
+ */
12254
+ blueprint_count_max?: number;
12255
+ /**
12256
+ * Only teams with at least this many agents in the team (inclusive).
12257
+ */
12258
+ agent_count_min?: number;
12259
+ /**
12260
+ * Only teams with at most this many agents in the team (inclusive).
12261
+ */
12262
+ agent_count_max?: number;
12263
+ /**
12264
+ * Only teams with at least this many feeds in the team (inclusive).
12265
+ */
12266
+ feed_count_min?: number;
12267
+ /**
12268
+ * Only teams with at most this many feeds in the team (inclusive).
12269
+ */
12270
+ feed_count_max?: number;
12271
+ /**
12272
+ * Only teams with at least this many feed items in the team (inclusive).
12273
+ */
12274
+ feed_item_count_min?: number;
12275
+ /**
12276
+ * Only teams with at most this many feed items in the team (inclusive).
12277
+ */
12278
+ feed_item_count_max?: number;
12279
+ /**
12280
+ * Only teams with at least this many comments in the team (inclusive).
12281
+ */
12282
+ comment_count_min?: number;
12283
+ /**
12284
+ * Only teams with at most this many comments in the team (inclusive).
12285
+ */
12286
+ comment_count_max?: number;
12287
+ /**
12288
+ * Only teams with at least this many attachments in the team (inclusive).
12289
+ */
12290
+ attachment_count_min?: number;
12291
+ /**
12292
+ * Only teams with at most this many attachments in the team (inclusive).
12293
+ */
12294
+ attachment_count_max?: number;
12295
+ /**
12296
+ * Only teams with at least this many resources in the team across all nine types (the sum of resource_counts) (inclusive).
12297
+ */
12298
+ total_resource_count_min?: number;
12299
+ /**
12300
+ * Only teams with at most this many resources in the team across all nine types (the sum of resource_counts) (inclusive).
12301
+ */
12302
+ total_resource_count_max?: number;
12303
+ /**
12304
+ * Case-insensitive exact match on the team owner's email (the user referenced by the team's owner). For substring matching use `search`.
12305
+ */
12306
+ owner_email?: string;
12307
+ /**
12308
+ * true = the team has at least one embedding provider of its own; false = it does not; omit = any. Instance-level fallback configuration never counts.
12309
+ */
12310
+ embedding_configured?: boolean;
12311
+ /**
12312
+ * true = the team has at least one LLM model provider of its own; false = it does not; omit = any. Instance-level fallback configuration never counts.
12313
+ */
12314
+ llm_configured?: boolean;
12315
+ /**
12316
+ * true = the team has its own AI summary settings with summaries enabled; false = it does not; omit = any. Instance-level fallback configuration never counts.
12317
+ */
12318
+ ai_summary_enabled?: boolean;
12319
+ /**
12320
+ * true = the team has its own email provider (regardless of its delivery health); false = it does not; omit = any. Instance-level fallback configuration never counts.
12321
+ */
12322
+ email_configured?: boolean;
12323
+ /**
12324
+ * true = the team has its own GitHub App configuration or at least one GitHub App installation (suspended installations included); false = it does not; omit = any. Instance-level fallback configuration never counts.
12325
+ */
12326
+ github_configured?: boolean;
12327
+ /**
12328
+ * true = the team has its own search settings; false = it does not; omit = any. Instance-level fallback configuration never counts.
12329
+ */
12330
+ search_settings_customized?: boolean;
12331
+ /**
12332
+ * true = the team has at least one enabled freshness rule; false = it does not; omit = any. Instance-level fallback configuration never counts.
12333
+ */
12334
+ freshness_enabled?: boolean;
12055
12335
  /**
12056
12336
  * Column to sort by. Ties are always broken by team id so paging is stable.
12057
12337
  */
12058
- sort_by?: 'created_at' | 'name' | 'member_count';
12338
+ sort_by?: 'created_at' | 'name' | 'member_count' | 'owner_count' | 'admin_count' | 'project_count' | 'prompt_count' | 'memory_count' | 'artifact_count' | 'blueprint_count' | 'agent_count' | 'feed_count' | 'feed_item_count' | 'comment_count' | 'attachment_count' | 'total_resource_count';
12059
12339
  /**
12060
12340
  * Sort direction.
12061
12341
  */
@@ -12468,6 +12748,102 @@ export type GetAdminUserTimelineResponses = {
12468
12748
  200: AdminUserTimelinePage;
12469
12749
  };
12470
12750
  export type GetAdminUserTimelineResponse = GetAdminUserTimelineResponses[keyof GetAdminUserTimelineResponses];
12751
+ export type GetAdminUserResourceAccessMetricsData = {
12752
+ body?: never;
12753
+ path: {
12754
+ /**
12755
+ * User id (UUID)
12756
+ */
12757
+ id: string;
12758
+ };
12759
+ query?: {
12760
+ /**
12761
+ * Inclusive start of the range. Defaults to 30 days before `to`.
12762
+ */
12763
+ from?: string;
12764
+ /**
12765
+ * Exclusive end of the range. Defaults to now.
12766
+ */
12767
+ to?: string;
12768
+ /**
12769
+ * Bucket size.
12770
+ */
12771
+ granularity?: 'day' | 'week' | 'month';
12772
+ };
12773
+ url: '/api/v1/admin/users/{id}/resource-access-metrics';
12774
+ };
12775
+ export type GetAdminUserResourceAccessMetricsErrors = {
12776
+ /**
12777
+ * Bad request — malformed user id, `to` is not after `from`, the range
12778
+ * exceeds the maximum span, or `granularity` is outside its enum
12779
+ *
12780
+ */
12781
+ 400: ErrorResponse;
12782
+ /**
12783
+ * Not found — unknown user id, or the caller is not an instance admin
12784
+ */
12785
+ 404: ErrorResponse;
12786
+ /**
12787
+ * Internal server error
12788
+ */
12789
+ 500: ErrorResponse;
12790
+ };
12791
+ export type GetAdminUserResourceAccessMetricsError = GetAdminUserResourceAccessMetricsErrors[keyof GetAdminUserResourceAccessMetricsErrors];
12792
+ export type GetAdminUserResourceAccessMetricsResponses = {
12793
+ /**
12794
+ * Bucketed access counts per source
12795
+ */
12796
+ 200: AdminUserAccessMetrics;
12797
+ };
12798
+ export type GetAdminUserResourceAccessMetricsResponse = GetAdminUserResourceAccessMetricsResponses[keyof GetAdminUserResourceAccessMetricsResponses];
12799
+ export type GetAdminUserTopAccessedResourcesData = {
12800
+ body?: never;
12801
+ path: {
12802
+ /**
12803
+ * User id (UUID)
12804
+ */
12805
+ id: string;
12806
+ };
12807
+ query?: {
12808
+ /**
12809
+ * Inclusive start of the range. Defaults to 30 days before `to`.
12810
+ */
12811
+ from?: string;
12812
+ /**
12813
+ * Exclusive end of the range. Defaults to now.
12814
+ */
12815
+ to?: string;
12816
+ /**
12817
+ * Maximum number of rows.
12818
+ */
12819
+ limit?: number;
12820
+ };
12821
+ url: '/api/v1/admin/users/{id}/top-accessed-resources';
12822
+ };
12823
+ export type GetAdminUserTopAccessedResourcesErrors = {
12824
+ /**
12825
+ * Bad request — malformed user id, `to` is not after `from`, the range
12826
+ * exceeds the maximum span, or `limit` is out of range
12827
+ *
12828
+ */
12829
+ 400: ErrorResponse;
12830
+ /**
12831
+ * Not found — unknown user id, or the caller is not an instance admin
12832
+ */
12833
+ 404: ErrorResponse;
12834
+ /**
12835
+ * Internal server error
12836
+ */
12837
+ 500: ErrorResponse;
12838
+ };
12839
+ export type GetAdminUserTopAccessedResourcesError = GetAdminUserTopAccessedResourcesErrors[keyof GetAdminUserTopAccessedResourcesErrors];
12840
+ export type GetAdminUserTopAccessedResourcesResponses = {
12841
+ /**
12842
+ * The most-accessed resources, most accessed first
12843
+ */
12844
+ 200: AdminTopAccessedResourcesResponse;
12845
+ };
12846
+ export type GetAdminUserTopAccessedResourcesResponse = GetAdminUserTopAccessedResourcesResponses[keyof GetAdminUserTopAccessedResourcesResponses];
12471
12847
  export type GetAdminUserNotificationPreferencesData = {
12472
12848
  body?: never;
12473
12849
  path: {