edge-impulse-api 1.93.20 → 1.93.22

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.
Files changed (68) hide show
  1. package/build/browser/edge-impulse-api.d.ts +471 -3
  2. package/build/browser/edge-impulse-api.js +1449 -497
  3. package/build/browser/edge-impulse-api.js.map +1 -1
  4. package/build/library/sdk/api/organizationBlocksApi.d.ts +114 -0
  5. package/build/library/sdk/api/organizationBlocksApi.js +514 -0
  6. package/build/library/sdk/api/organizationBlocksApi.js.map +1 -1
  7. package/build/library/sdk/api/projectsApi.d.ts +56 -0
  8. package/build/library/sdk/api/projectsApi.js +316 -0
  9. package/build/library/sdk/api/projectsApi.js.map +1 -1
  10. package/build/library/sdk/model/actorProjectApiKey.d.ts +2 -0
  11. package/build/library/sdk/model/actorProjectApiKey.js.map +1 -1
  12. package/build/library/sdk/model/addOrganizationExtensionBlockRequest.d.ts +59 -0
  13. package/build/library/sdk/model/addOrganizationExtensionBlockRequest.js +6 -0
  14. package/build/library/sdk/model/addOrganizationExtensionBlockRequest.js.map +1 -0
  15. package/build/library/sdk/model/addProjectActiveExtensionRequest.d.ts +3 -0
  16. package/build/library/sdk/model/addProjectActiveExtensionRequest.js +4 -0
  17. package/build/library/sdk/model/addProjectActiveExtensionRequest.js.map +1 -0
  18. package/build/library/sdk/model/addProjectApiKeyRequest.d.ts +6 -3
  19. package/build/library/sdk/model/addProjectApiKeyRequest.js +0 -2
  20. package/build/library/sdk/model/addProjectApiKeyRequest.js.map +1 -1
  21. package/build/library/sdk/model/apiKeyExtension.d.ts +4 -0
  22. package/build/library/sdk/model/apiKeyExtension.js +4 -0
  23. package/build/library/sdk/model/apiKeyExtension.js.map +1 -0
  24. package/build/library/sdk/model/extension.d.ts +35 -0
  25. package/build/library/sdk/model/extension.js +6 -0
  26. package/build/library/sdk/model/extension.js.map +1 -0
  27. package/build/library/sdk/model/extensionVisibility.d.ts +7 -0
  28. package/build/library/sdk/model/extensionVisibility.js +6 -0
  29. package/build/library/sdk/model/extensionVisibility.js.map +1 -0
  30. package/build/library/sdk/model/getCurrentApiKeyInfoResponse.d.ts +14 -0
  31. package/build/library/sdk/model/getCurrentApiKeyInfoResponse.js +4 -0
  32. package/build/library/sdk/model/getCurrentApiKeyInfoResponse.js.map +1 -0
  33. package/build/library/sdk/model/getOrganizationExtensionBlockResponse.d.ts +12 -0
  34. package/build/library/sdk/model/getOrganizationExtensionBlockResponse.js +4 -0
  35. package/build/library/sdk/model/getOrganizationExtensionBlockResponse.js.map +1 -0
  36. package/build/library/sdk/model/getProjectActiveExtensionsResponse.d.ts +12 -0
  37. package/build/library/sdk/model/getProjectActiveExtensionsResponse.js +4 -0
  38. package/build/library/sdk/model/getProjectActiveExtensionsResponse.js.map +1 -0
  39. package/build/library/sdk/model/listOrganizationExtensionBlocksResponse.d.ts +12 -0
  40. package/build/library/sdk/model/listOrganizationExtensionBlocksResponse.js +4 -0
  41. package/build/library/sdk/model/listOrganizationExtensionBlocksResponse.js.map +1 -0
  42. package/build/library/sdk/model/listProjectAvailableExtensionsResponse.d.ts +16 -0
  43. package/build/library/sdk/model/listProjectAvailableExtensionsResponse.js +4 -0
  44. package/build/library/sdk/model/listProjectAvailableExtensionsResponse.js.map +1 -0
  45. package/build/library/sdk/model/models.d.ts +14 -0
  46. package/build/library/sdk/model/models.js +14 -0
  47. package/build/library/sdk/model/models.js.map +1 -1
  48. package/build/library/sdk/model/projectApiKey.d.ts +2 -0
  49. package/build/library/sdk/model/projectApiKey.js.map +1 -1
  50. package/build/library/sdk/model/projectApiKeyRole.d.ts +2 -0
  51. package/build/library/sdk/model/projectApiKeyRole.js +6 -0
  52. package/build/library/sdk/model/projectApiKeyRole.js.map +1 -0
  53. package/build/library/sdk/model/projectExtension.d.ts +37 -0
  54. package/build/library/sdk/model/projectExtension.js +6 -0
  55. package/build/library/sdk/model/projectExtension.js.map +1 -0
  56. package/build/library/sdk/model/projectInfoResponse.d.ts +4 -0
  57. package/build/library/sdk/model/projectInfoResponse.js.map +1 -1
  58. package/build/library/sdk/model/removeProjectActiveExtensionResponse.d.ts +14 -0
  59. package/build/library/sdk/model/removeProjectActiveExtensionResponse.js +4 -0
  60. package/build/library/sdk/model/removeProjectActiveExtensionResponse.js.map +1 -0
  61. package/build/library/sdk/model/setKerasParameterRequest.d.ts +5 -0
  62. package/build/library/sdk/model/setKerasParameterRequest.js.map +1 -1
  63. package/build/library/sdk/model/updateOrganizationExtensionBlockRequest.d.ts +59 -0
  64. package/build/library/sdk/model/updateOrganizationExtensionBlockRequest.js +6 -0
  65. package/build/library/sdk/model/updateOrganizationExtensionBlockRequest.js.map +1 -0
  66. package/build/library/sdk/model/updateProjectRequest.d.ts +4 -0
  67. package/build/library/sdk/model/updateProjectRequest.js.map +1 -1
  68. package/package.json +1 -1
@@ -5006,6 +5006,21 @@ export type addOrganizationDeployBlockFormParams = {
5006
5006
  sourceCodeDownloadStaffOnly?: boolean;
5007
5007
  parameters?: Array<object>;
5008
5008
  };
5009
+ export type addOrganizationExtensionBlockFormParams = {
5010
+ name: string;
5011
+ onlyAvailableInProjectId?: number;
5012
+ description: string;
5013
+ url: string;
5014
+ repositoryUrl?: string;
5015
+ logo?: RequestFile;
5016
+ navbarIcon?: string;
5017
+ navbarLocation: string;
5018
+ requiredApiKeyRole: ProjectApiKeyRole;
5019
+ visibility?: ExtensionVisibility;
5020
+ publicProjectTierAvailability?: PublicProjectTierAvailability;
5021
+ indBlockNoLongerAvailable?: boolean;
5022
+ blockNoLongerAvailableReason?: string;
5023
+ };
5009
5024
  export type updateOrganizationDeployBlockFormParams = {
5010
5025
  name?: string;
5011
5026
  dockerContainer?: string;
@@ -5025,6 +5040,21 @@ export type updateOrganizationDeployBlockFormParams = {
5025
5040
  sourceCodeDownloadStaffOnly?: boolean;
5026
5041
  parameters?: Array<object>;
5027
5042
  };
5043
+ export type updateOrganizationExtensionBlockFormParams = {
5044
+ name?: string;
5045
+ onlyAvailableInProjectId?: number;
5046
+ description?: string;
5047
+ url?: string;
5048
+ repositoryUrl?: string;
5049
+ logo?: RequestFile;
5050
+ navbarIcon?: string;
5051
+ navbarLocation?: string;
5052
+ requiredApiKeyRole?: ProjectApiKeyRole;
5053
+ visibility?: ExtensionVisibility;
5054
+ publicProjectTierAvailability?: PublicProjectTierAvailability;
5055
+ indBlockNoLongerAvailable?: boolean;
5056
+ blockNoLongerAvailableReason?: string;
5057
+ };
5028
5058
  export type OrganizationBlocksApiOpts = {
5029
5059
  extraHeaders?: Record<string, string>;
5030
5060
  };
@@ -5086,6 +5116,29 @@ export class OrganizationBlocksApi {
5086
5116
  [name: string]: string;
5087
5117
  };
5088
5118
  }): Promise<EntityCreatedResponse>;
5119
+ /**
5120
+ * Adds an extension block.
5121
+ * @summary Add extension block
5122
+ * @param organizationId Organization ID
5123
+ * @param name Extension block name.
5124
+ * @param description Extension block description.
5125
+ * @param url URL loaded by the extension.
5126
+ * @param navbarLocation Studio navigation location for the extension.
5127
+ * @param requiredApiKeyRole
5128
+ * @param onlyAvailableInProjectId Required if \\\&quot;visibility\\\&quot; is \\\&quot;project\\\&quot;. If set, this extension is scoped to this specific project.
5129
+ * @param repositoryUrl Optional source repository URL for the extension.
5130
+ * @param logo Optional logo image for the extension.
5131
+ * @param navbarIcon Optional Font Awesome icon class for the navigation item.
5132
+ * @param visibility
5133
+ * @param publicProjectTierAvailability
5134
+ * @param indBlockNoLongerAvailable Whether this extension is no longer available.
5135
+ * @param blockNoLongerAvailableReason Reason this extension is no longer available.
5136
+ */
5137
+ addOrganizationExtensionBlock(organizationId: number, params: addOrganizationExtensionBlockFormParams, options?: {
5138
+ headers: {
5139
+ [name: string]: string;
5140
+ };
5141
+ }): Promise<EntityCreatedResponse>;
5089
5142
  /**
5090
5143
  * Adds a secret.
5091
5144
  * @summary Add secret
@@ -5141,6 +5194,17 @@ export class OrganizationBlocksApi {
5141
5194
  [name: string]: string;
5142
5195
  };
5143
5196
  }): Promise<GenericApiResponse>;
5197
+ /**
5198
+ * Deletes an extension block.
5199
+ * @summary Delete extension block
5200
+ * @param organizationId Organization ID
5201
+ * @param extensionId Extension ID
5202
+ */
5203
+ deleteOrganizationExtensionBlock(organizationId: number, extensionId: number, options?: {
5204
+ headers: {
5205
+ [name: string]: string;
5206
+ };
5207
+ }): Promise<GenericApiResponse>;
5144
5208
  /**
5145
5209
  * Deletes a secret
5146
5210
  * @summary Delete secret
@@ -5240,6 +5304,17 @@ export class OrganizationBlocksApi {
5240
5304
  [name: string]: string;
5241
5305
  };
5242
5306
  }): Promise<GetOrganizationDspBlockResponse>;
5307
+ /**
5308
+ * Gets an extension block.
5309
+ * @summary Get extension block
5310
+ * @param organizationId Organization ID
5311
+ * @param extensionId Extension ID
5312
+ */
5313
+ getOrganizationExtensionBlock(organizationId: number, extensionId: number, options?: {
5314
+ headers: {
5315
+ [name: string]: string;
5316
+ };
5317
+ }): Promise<GetOrganizationExtensionBlockResponse>;
5243
5318
  /**
5244
5319
  * Gets a transfer learning block.
5245
5320
  * @summary Get transfer learning block
@@ -5293,6 +5368,16 @@ export class OrganizationBlocksApi {
5293
5368
  [name: string]: string;
5294
5369
  };
5295
5370
  }): Promise<ListOrganizationDspBlocksResponse>;
5371
+ /**
5372
+ * Retrieve all extension blocks for this organization.
5373
+ * @summary Get extension blocks
5374
+ * @param organizationId Organization ID
5375
+ */
5376
+ listOrganizationExtensionBlocks(organizationId: number, options?: {
5377
+ headers: {
5378
+ [name: string]: string;
5379
+ };
5380
+ }): Promise<ListOrganizationExtensionBlocksResponse>;
5296
5381
  /**
5297
5382
  * Retrieve all secrets.
5298
5383
  * @summary Get secrets
@@ -5384,6 +5469,30 @@ export class OrganizationBlocksApi {
5384
5469
  [name: string]: string;
5385
5470
  };
5386
5471
  }): Promise<GenericApiResponse>;
5472
+ /**
5473
+ * Updates an extension block. Only values in the body will be updated.
5474
+ * @summary Update extension block
5475
+ * @param organizationId Organization ID
5476
+ * @param extensionId Extension ID
5477
+ * @param name Extension block name.
5478
+ * @param onlyAvailableInProjectId Required if \\\&quot;visibility\\\&quot; is \\\&quot;project\\\&quot;. If set, this extension is scoped to this specific project.
5479
+ * @param description Extension block description.
5480
+ * @param url URL loaded by the extension.
5481
+ * @param repositoryUrl Optional source repository URL for the extension.
5482
+ * @param logo Optional logo image for the extension.
5483
+ * @param navbarIcon Optional Font Awesome icon class for the navigation item.
5484
+ * @param navbarLocation Studio navigation location for the extension.
5485
+ * @param requiredApiKeyRole
5486
+ * @param visibility
5487
+ * @param publicProjectTierAvailability
5488
+ * @param indBlockNoLongerAvailable Whether this extension is no longer available.
5489
+ * @param blockNoLongerAvailableReason Reason this extension is no longer available.
5490
+ */
5491
+ updateOrganizationExtensionBlock(organizationId: number, extensionId: number, params: updateOrganizationExtensionBlockFormParams, options?: {
5492
+ headers: {
5493
+ [name: string]: string;
5494
+ };
5495
+ }): Promise<GenericApiResponse>;
5387
5496
  /**
5388
5497
  * Updates a transfer learning block. Only values in the body will be updated.
5389
5498
  * @summary Update transfer learning block
@@ -8313,6 +8422,17 @@ export class ProjectsApi {
8313
8422
  [name: string]: string;
8314
8423
  };
8315
8424
  }): Promise<EntityCreatedResponse>;
8425
+ /**
8426
+ * Adds an extension to a project. This API is only available through JWT token authentication.
8427
+ * @summary Add extension to project
8428
+ * @param projectId Project ID
8429
+ * @param addProjectActiveExtensionRequest
8430
+ */
8431
+ addProjectActiveExtension(projectId: number, addProjectActiveExtensionRequest: AddProjectActiveExtensionRequest, options?: {
8432
+ headers: {
8433
+ [name: string]: string;
8434
+ };
8435
+ }): Promise<GenericApiResponse>;
8316
8436
  /**
8317
8437
  * Add an API key. If you set `developmentKey` to `true` this flag will be removed from the current development API key. For OAuth-based third-party integrations, prefer `/api/{projectId}/apikeys/ingestiononly`.
8318
8438
  * @summary Add API key
@@ -8471,6 +8591,15 @@ export class ProjectsApi {
8471
8591
  [name: string]: string;
8472
8592
  };
8473
8593
  }): Promise<GetCsvWizardUploadedFileInfo>;
8594
+ /**
8595
+ * Only available when authenticating with a project API key. Returns the current role and project ID that you\'re authenticated with.
8596
+ * @summary Get info about current API key
8597
+ */
8598
+ getCurrentApiKeyInfo(options?: {
8599
+ headers: {
8600
+ [name: string]: string;
8601
+ };
8602
+ }): Promise<GetCurrentApiKeyInfoResponse>;
8474
8603
  /**
8475
8604
  * Retrieve the HMAC development key for a project. This key are specifically marked to be used during development. This key can be `undefined` if no development keys are set.
8476
8605
  * @summary Get HMAC development key
@@ -8502,6 +8631,16 @@ export class ProjectsApi {
8502
8631
  [name: string]: string;
8503
8632
  };
8504
8633
  }): Promise<GetAIActionResponse>;
8634
+ /**
8635
+ * Lists all extensions that are active for this project.
8636
+ * @summary List active extensions
8637
+ * @param projectId Project ID
8638
+ */
8639
+ getProjectActiveExtensions(projectId: number, options?: {
8640
+ headers: {
8641
+ [name: string]: string;
8642
+ };
8643
+ }): Promise<GetProjectActiveExtensionsResponse>;
8505
8644
  /**
8506
8645
  * Get a list of axes that are present in the training data.
8507
8646
  * @summary Get data axes summary
@@ -8668,6 +8807,16 @@ export class ProjectsApi {
8668
8807
  [name: string]: string;
8669
8808
  };
8670
8809
  }): Promise<ListApiKeysResponse>;
8810
+ /**
8811
+ * Lists all available extensions that can be added to this project.
8812
+ * @summary List available extensions
8813
+ * @param projectId Project ID
8814
+ */
8815
+ listProjectAvailableExtensions(projectId: number, options?: {
8816
+ headers: {
8817
+ [name: string]: string;
8818
+ };
8819
+ }): Promise<ListProjectAvailableExtensionsResponse>;
8671
8820
  /**
8672
8821
  * Retrieve all HMAC keys.
8673
8822
  * @summary Get HMAC keys
@@ -8775,6 +8924,17 @@ export class ProjectsApi {
8775
8924
  [name: string]: string;
8776
8925
  };
8777
8926
  }): Promise<GenericApiResponse>;
8927
+ /**
8928
+ * Removes an existing extension from a project.
8929
+ * @summary Remove extension from project
8930
+ * @param projectId Project ID
8931
+ * @param extensionId Extension ID
8932
+ */
8933
+ removeProjectActiveExtension(projectId: number, extensionId: number, options?: {
8934
+ headers: {
8935
+ [name: string]: string;
8936
+ };
8937
+ }): Promise<RemoveProjectActiveExtensionResponse>;
8778
8938
  /**
8779
8939
  * Revoke an API key. Note that if you revoke the development API key some services (such as automatic provisioning of devices through the serial daemon) will no longer work.
8780
8940
  * @summary Revoke API key
@@ -11725,6 +11885,7 @@ export type ActorProjectApiKey = {
11725
11885
  * OAuth client_id that created this API key through an OAuth-scoped key endpoint.
11726
11886
  */
11727
11887
  createdViaOAuthClientId?: string;
11888
+ createdForExtension?: ApiKeyExtension;
11728
11889
  type: ActorProjectApiKeyTypeEnum;
11729
11890
  };
11730
11891
  export type ActorProjectApiKeyRoleEnum = 'admin' | 'readonly' | 'ingestiononly' | 'ingestion_deployment' | 'wladmin';
@@ -11994,6 +12155,62 @@ export type AddOrganizationDspBlockRequest = {
11994
12155
  };
11995
12156
 
11996
12157
 
12158
+ export type AddOrganizationExtensionBlockRequest = {
12159
+ /**
12160
+ * Extension block name.
12161
+ */
12162
+ name: string;
12163
+ /**
12164
+ * Required if "visibility" is "project". If set, this extension is scoped to this specific project.
12165
+ */
12166
+ onlyAvailableInProjectId?: number | null;
12167
+ /**
12168
+ * Extension block description.
12169
+ */
12170
+ description: string;
12171
+ /**
12172
+ * URL loaded by the extension.
12173
+ */
12174
+ url: string;
12175
+ /**
12176
+ * Optional source repository URL for the extension.
12177
+ */
12178
+ repositoryUrl?: string;
12179
+ /**
12180
+ * Optional logo image for the extension.
12181
+ */
12182
+ logo?: {
12183
+ fieldname: string;
12184
+ originalname: string;
12185
+ encoding: string;
12186
+ mimetype: string;
12187
+ buffer: ArrayBuffer;
12188
+ size: number;
12189
+ }[];
12190
+ /**
12191
+ * Optional Font Awesome icon class for the navigation item.
12192
+ */
12193
+ navbarIcon?: string;
12194
+ /**
12195
+ * Studio navigation location for the extension.
12196
+ */
12197
+ navbarLocation: AddOrganizationExtensionBlockRequestNavbarLocationEnum;
12198
+ requiredApiKeyRole: ProjectApiKeyRole;
12199
+ visibility?: ExtensionVisibility;
12200
+ publicProjectTierAvailability?: PublicProjectTierAvailability;
12201
+ /**
12202
+ * Whether this extension is no longer available.
12203
+ */
12204
+ indBlockNoLongerAvailable?: boolean;
12205
+ /**
12206
+ * Reason this extension is no longer available.
12207
+ */
12208
+ blockNoLongerAvailableReason?: string;
12209
+ };
12210
+ export type AddOrganizationExtensionBlockRequestNavbarLocationEnum = 'project' | 'devices' | 'data_acquisition' | 'experiments' | 'create_impulse' | 'dsp_block' | 'learn_block' | 'live_classification' | 'model_testing' | 'deployment' | 'impulse' | 'versioning';
12211
+ export const AddOrganizationExtensionBlockRequestNavbarLocationEnumValues: string[];
12212
+
12213
+
11997
12214
  export type AddOrganizationSecretRequest = {
11998
12215
  name: string;
11999
12216
  description: string;
@@ -12117,6 +12334,11 @@ export type AddOrganizationTransformationBlockRequestOperatesOnEnum = 'file' | '
12117
12334
  export const AddOrganizationTransformationBlockRequestOperatesOnEnumValues: string[];
12118
12335
 
12119
12336
 
12337
+ export type AddProjectActiveExtensionRequest = {
12338
+ extensionId: number;
12339
+ };
12340
+
12341
+
12120
12342
  export type AddProjectApiKeyRequest = {
12121
12343
  /**
12122
12344
  * Description of the key
@@ -12131,14 +12353,16 @@ export type AddProjectApiKeyRequest = {
12131
12353
  * Whether this key should be used as a development key.
12132
12354
  */
12133
12355
  isDevelopmentKey: boolean;
12134
- role: AddProjectApiKeyRequestRoleEnum;
12356
+ role: ProjectApiKeyRole;
12135
12357
  /**
12136
12358
  * Optional: time to live in seconds.
12137
12359
  */
12138
12360
  ttl?: number;
12361
+ /**
12362
+ * Optional: extension ID when this API key is created for a project extension.
12363
+ */
12364
+ extensionId?: number;
12139
12365
  };
12140
- export type AddProjectApiKeyRequestRoleEnum = 'admin' | 'readonly' | 'ingestiononly' | 'ingestion_deployment';
12141
- export const AddProjectApiKeyRequestRoleEnumValues: string[];
12142
12366
 
12143
12367
 
12144
12368
  export type AdditionalMetric = {
@@ -13409,6 +13633,12 @@ export type AnomalyTrainedFeaturesResponse = {
13409
13633
  };
13410
13634
 
13411
13635
 
13636
+ export type ApiKeyExtension = {
13637
+ id: number;
13638
+ name: string;
13639
+ };
13640
+
13641
+
13412
13642
  /**
13413
13643
  * Specifies limits for your specific application, as available RAM and ROM for the model's operation and the maximum
13414
13644
  * allowed latency.
@@ -17206,6 +17436,48 @@ export type ExportWavDataRequest = {
17206
17436
  };
17207
17437
 
17208
17438
 
17439
+ export type Extension = {
17440
+ id: number;
17441
+ ownerOrganizationId: number;
17442
+ ownerOrganizationName: string;
17443
+ onlyAvailableInProjectId?: number;
17444
+ name: string;
17445
+ created: Date;
17446
+ createdByUser?: CreatedUpdatedByUser;
17447
+ description: string;
17448
+ visibility: ExtensionVisibility;
17449
+ publicProjectTierAvailability: PublicProjectTierAvailability;
17450
+ url: string;
17451
+ repositoryUrl?: string;
17452
+ navbarLocation: ExtensionNavbarLocationEnum;
17453
+ lastUpdated: Date;
17454
+ lastUpdatedByUser?: CreatedUpdatedByUser;
17455
+ /**
17456
+ * If set, then this block is no longer available; and blockNoLongerAvailableReason will be set.
17457
+ */
17458
+ indBlockNoLongerAvailable: boolean;
17459
+ /**
17460
+ * In Markdown format. Set if `indBlockNoLongerAvailable` is true, contains migration information for existing users
17461
+ * of this block.
17462
+ */
17463
+ blockNoLongerAvailableReason?: string;
17464
+ logo?: string;
17465
+ navbarIcon?: string;
17466
+ requiredApiKeyRole: ProjectApiKeyRole;
17467
+ };
17468
+ export type ExtensionNavbarLocationEnum = 'project' | 'devices' | 'data_acquisition' | 'experiments' | 'create_impulse' | 'dsp_block' | 'learn_block' | 'live_classification' | 'model_testing' | 'deployment' | 'impulse' | 'versioning';
17469
+ export const ExtensionNavbarLocationEnumValues: string[];
17470
+
17471
+
17472
+ /**
17473
+ * Whether this block is available for a single project (onlyAvailableInProjectId will be set), for your whole
17474
+ * organization, or for everyone in Edge Impulse (if so, publicProjectTierAvailability can be used to limit availability
17475
+ * scope). If not specified, this will default to 'organization'.
17476
+ */
17477
+ export type ExtensionVisibility = 'project' | 'organization' | 'everyone';
17478
+ export const ExtensionVisibilityValues: string[];
17479
+
17480
+
17209
17481
  /**
17210
17482
  * Known feature identifiers.
17211
17483
  */
@@ -17498,6 +17770,21 @@ export type GetCsvWizardUploadedFileInfo = {
17498
17770
  };
17499
17771
 
17500
17772
 
17773
+ export type GetCurrentApiKeyInfoResponse = {
17774
+ /**
17775
+ * Whether the operation succeeded
17776
+ */
17777
+ success: boolean;
17778
+ /**
17779
+ * Optional error description (set if 'success' was false)
17780
+ */
17781
+ error?: string;
17782
+ apiKeyId: number;
17783
+ projectId: number;
17784
+ role: ProjectApiKeyRole;
17785
+ };
17786
+
17787
+
17501
17788
  export type GetDataExplorerFeaturesResponse = {
17502
17789
  /**
17503
17790
  * Whether the operation succeeded
@@ -18279,6 +18566,19 @@ export type GetOrganizationDspBlockResponse = {
18279
18566
  };
18280
18567
 
18281
18568
 
18569
+ export type GetOrganizationExtensionBlockResponse = {
18570
+ /**
18571
+ * Whether the operation succeeded
18572
+ */
18573
+ success: boolean;
18574
+ /**
18575
+ * Optional error description (set if 'success' was false)
18576
+ */
18577
+ error?: string;
18578
+ extensionBlock: Extension;
18579
+ };
18580
+
18581
+
18282
18582
  export type GetOrganizationPipelinesResponse = {
18283
18583
  /**
18284
18584
  * Whether the operation succeeded
@@ -18563,6 +18863,19 @@ export type GetPretrainedModelResponse = {
18563
18863
  };
18564
18864
 
18565
18865
 
18866
+ export type GetProjectActiveExtensionsResponse = {
18867
+ /**
18868
+ * Whether the operation succeeded
18869
+ */
18870
+ success: boolean;
18871
+ /**
18872
+ * Optional error description (set if 'success' was false)
18873
+ */
18874
+ error?: string;
18875
+ extensions: ProjectExtension[];
18876
+ };
18877
+
18878
+
18566
18879
  export type GetPublicDeploymentStatusResponse = {
18567
18880
  /**
18568
18881
  * Whether the operation succeeded
@@ -20729,6 +21042,19 @@ export type ListOrganizationDspBlocksResponse = {
20729
21042
  };
20730
21043
 
20731
21044
 
21045
+ export type ListOrganizationExtensionBlocksResponse = {
21046
+ /**
21047
+ * Whether the operation succeeded
21048
+ */
21049
+ success: boolean;
21050
+ /**
21051
+ * Optional error description (set if 'success' was false)
21052
+ */
21053
+ error?: string;
21054
+ extensionBlocks: Extension[];
21055
+ };
21056
+
21057
+
20732
21058
  export type ListOrganizationFilesResponse = {
20733
21059
  /**
20734
21060
  * Whether the operation succeeded
@@ -20892,6 +21218,23 @@ export type ListPortalFilesInFolderResponse = {
20892
21218
  };
20893
21219
 
20894
21220
 
21221
+ export type ListProjectAvailableExtensionsResponse = {
21222
+ /**
21223
+ * Whether the operation succeeded
21224
+ */
21225
+ success: boolean;
21226
+ /**
21227
+ * Optional error description (set if 'success' was false)
21228
+ */
21229
+ error?: string;
21230
+ /**
21231
+ * This field will be removed once extensions are publicly available
21232
+ */
21233
+ projectHasAccessToExtensions: boolean;
21234
+ extensions: Extension[];
21235
+ };
21236
+
21237
+
20895
21238
  export type ListProjects = {
20896
21239
  /**
20897
21240
  * Array with projects
@@ -23969,6 +24312,7 @@ export type ProjectApiKey = {
23969
24312
  * OAuth client_id that created this API key through an OAuth-scoped key endpoint.
23970
24313
  */
23971
24314
  createdViaOAuthClientId?: string;
24315
+ createdForExtension?: ApiKeyExtension;
23972
24316
  };
23973
24317
  export type ProjectApiKeyRoleEnum = 'admin' | 'readonly' | 'ingestiononly' | 'ingestion_deployment' | 'wladmin';
23974
24318
  export const ProjectApiKeyRoleEnumValues: string[];
@@ -23990,6 +24334,10 @@ export type ProjectApiKeyLastUsed = {
23990
24334
  };
23991
24335
 
23992
24336
 
24337
+ export type ProjectApiKeyRole = 'admin' | 'readonly' | 'ingestiononly' | 'ingestion_deployment';
24338
+ export const ProjectApiKeyRoleValues: string[];
24339
+
24340
+
23993
24341
  export type ProjectCollaborator = {
23994
24342
  id: number;
23995
24343
  username: string;
@@ -24484,6 +24832,41 @@ export type ProjectDownloadsResponse = {
24484
24832
  };
24485
24833
 
24486
24834
 
24835
+ export type ProjectExtension = {
24836
+ id: number;
24837
+ ownerOrganizationId: number;
24838
+ ownerOrganizationName: string;
24839
+ onlyAvailableInProjectId?: number;
24840
+ name: string;
24841
+ created: Date;
24842
+ createdByUser?: CreatedUpdatedByUser;
24843
+ description: string;
24844
+ visibility: ExtensionVisibility;
24845
+ publicProjectTierAvailability: PublicProjectTierAvailability;
24846
+ url: string;
24847
+ repositoryUrl?: string;
24848
+ navbarLocation: ProjectExtensionNavbarLocationEnum;
24849
+ lastUpdated: Date;
24850
+ lastUpdatedByUser?: CreatedUpdatedByUser;
24851
+ /**
24852
+ * If set, then this block is no longer available; and blockNoLongerAvailableReason will be set.
24853
+ */
24854
+ indBlockNoLongerAvailable: boolean;
24855
+ /**
24856
+ * In Markdown format. Set if `indBlockNoLongerAvailable` is true, contains migration information for existing users
24857
+ * of this block.
24858
+ */
24859
+ blockNoLongerAvailableReason?: string;
24860
+ logo?: string;
24861
+ navbarIcon?: string;
24862
+ requiredApiKeyRole: ProjectApiKeyRole;
24863
+ addedToProject: Date;
24864
+ addedToProjectByUser?: CreatedUpdatedByUser;
24865
+ };
24866
+ export type ProjectExtensionNavbarLocationEnum = 'project' | 'devices' | 'data_acquisition' | 'experiments' | 'create_impulse' | 'dsp_block' | 'learn_block' | 'live_classification' | 'model_testing' | 'deployment' | 'impulse' | 'versioning';
24867
+ export const ProjectExtensionNavbarLocationEnumValues: string[];
24868
+
24869
+
24487
24870
  export type ProjectHmacKey = {
24488
24871
  id: number;
24489
24872
  hmacKey: string;
@@ -24705,6 +25088,10 @@ export type ProjectInfoResponse = {
24705
25088
  versioningStorageSizeMib?: number;
24706
25089
  anomalyLabelsConfig?: AnomalyLabelsConfig;
24707
25090
  datasetSplitOptions?: DatasetSplitOptions;
25091
+ /**
25092
+ * Whether this project has a first-class validation dataset alongside training and testing.
25093
+ */
25094
+ explicitValidationEnabled?: boolean;
24708
25095
  };
24709
25096
  export type ProjectInfoResponseAllOfAcquisitionSettingsViewTypeEnum = 'list' | 'grid';
24710
25097
  export const ProjectInfoResponseAllOfAcquisitionSettingsViewTypeEnumValues: string[];
@@ -25148,6 +25535,22 @@ export type RemoveMemberRequest = {
25148
25535
  };
25149
25536
 
25150
25537
 
25538
+ export type RemoveProjectActiveExtensionResponse = {
25539
+ /**
25540
+ * Whether the operation succeeded
25541
+ */
25542
+ success: boolean;
25543
+ /**
25544
+ * Optional error description (set if 'success' was false)
25545
+ */
25546
+ error?: string;
25547
+ /**
25548
+ * Number of project API keys revoked while removing the extension.
25549
+ */
25550
+ revokedProjectApiKeyCount: number;
25551
+ };
25552
+
25553
+
25151
25554
  export type RenameDeviceRequest = {
25152
25555
  /**
25153
25556
  * New name for this device
@@ -25767,6 +26170,11 @@ export type SetKerasParameterRequest = {
25767
26170
  lastShownModelVariant?: KerasModelVariantEnum;
25768
26171
  blockParameters?: BlockParameters;
25769
26172
  trainingProcessor?: ExperimentalImpulseSpecificGpuTrainingProcessor;
26173
+ /**
26174
+ * EXPERIMENTAL. When set, max GPU utilization will be checked against this threshold after training. Used for
26175
+ * testing purposes.
26176
+ */
26177
+ assertGpuUsagePercentage?: number | null;
25770
26178
  };
25771
26179
  export type SetKerasParameterRequestModeEnum = 'expert' | 'visual';
25772
26180
  export const SetKerasParameterRequestModeEnumValues: string[];
@@ -27103,6 +27511,62 @@ export type UpdateOrganizationDspBlockRequest = {
27103
27511
  };
27104
27512
 
27105
27513
 
27514
+ export type UpdateOrganizationExtensionBlockRequest = {
27515
+ /**
27516
+ * Extension block name.
27517
+ */
27518
+ name?: string;
27519
+ /**
27520
+ * Required if "visibility" is "project". If set, this extension is scoped to this specific project.
27521
+ */
27522
+ onlyAvailableInProjectId?: number | null;
27523
+ /**
27524
+ * Extension block description.
27525
+ */
27526
+ description?: string;
27527
+ /**
27528
+ * URL loaded by the extension.
27529
+ */
27530
+ url?: string;
27531
+ /**
27532
+ * Optional source repository URL for the extension.
27533
+ */
27534
+ repositoryUrl?: string;
27535
+ /**
27536
+ * Optional logo image for the extension.
27537
+ */
27538
+ logo?: {
27539
+ fieldname: string;
27540
+ originalname: string;
27541
+ encoding: string;
27542
+ mimetype: string;
27543
+ buffer: ArrayBuffer;
27544
+ size: number;
27545
+ }[];
27546
+ /**
27547
+ * Optional Font Awesome icon class for the navigation item.
27548
+ */
27549
+ navbarIcon?: string;
27550
+ /**
27551
+ * Studio navigation location for the extension.
27552
+ */
27553
+ navbarLocation?: UpdateOrganizationExtensionBlockRequestNavbarLocationEnum;
27554
+ requiredApiKeyRole?: ProjectApiKeyRole;
27555
+ visibility?: ExtensionVisibility;
27556
+ publicProjectTierAvailability?: PublicProjectTierAvailability;
27557
+ /**
27558
+ * Whether this extension is no longer available.
27559
+ */
27560
+ indBlockNoLongerAvailable?: boolean;
27561
+ /**
27562
+ * Reason this extension is no longer available.
27563
+ */
27564
+ blockNoLongerAvailableReason?: string;
27565
+ };
27566
+ export type UpdateOrganizationExtensionBlockRequestNavbarLocationEnum = 'project' | 'devices' | 'data_acquisition' | 'experiments' | 'create_impulse' | 'dsp_block' | 'learn_block' | 'live_classification' | 'model_testing' | 'deployment' | 'impulse' | 'versioning';
27567
+ export const UpdateOrganizationExtensionBlockRequestNavbarLocationEnumValues: string[];
27568
+
27569
+
27106
27570
  export type UpdateOrganizationPortalResponse = {
27107
27571
  /**
27108
27572
  * Whether the operation succeeded
@@ -27441,6 +27905,10 @@ export type UpdateProjectRequest = {
27441
27905
  lastShownModelEngine?: ModelEngineShortEnum;
27442
27906
  versioningStorageSizeMib?: number;
27443
27907
  anomalyLabelsConfig?: AnomalyLabelsConfig;
27908
+ /**
27909
+ * Enables a first-class validation dataset alongside training and testing.
27910
+ */
27911
+ explicitValidationEnabled?: boolean;
27444
27912
  };
27445
27913
  export type UpdateProjectRequestSelectedProjectTypeInWizardEnum = 'accelerometer' | 'audio' | 'image_classification' | 'object_detection' | 'something_else';
27446
27914
  export const UpdateProjectRequestSelectedProjectTypeInWizardEnumValues: string[];