@ibm-cloud/secrets-manager 1.0.32 → 1.0.35

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.
@@ -153,12 +153,12 @@ declare class SecretsManagerV1 extends BaseService {
153
153
  * resources.
154
154
  *
155
155
  * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 secrets, use
156
- * `../secrets/{secret-type}?limit=5`.
156
+ * `../secrets/{secret_type}?limit=5`.
157
157
  * @param {number} [params.offset] - The number of secrets to skip. By specifying `offset`, you retrieve a subset of
158
158
  * items that starts with the `offset` value. Use `offset` with `limit` to page through your available resources.
159
159
  *
160
160
  * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
161
- * `../secrets/{secret-type}?offset=25&limit=25`.
161
+ * `..?offset=25&limit=25`.
162
162
  * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
163
163
  * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.ListSecrets>>}
164
164
  */
@@ -174,28 +174,28 @@ declare class SecretsManagerV1 extends BaseService {
174
174
  * resources.
175
175
  *
176
176
  * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 secrets, use
177
- * `../secrets/{secret-type}?limit=5`.
177
+ * `../secrets/{secret_type}?limit=5`.
178
178
  * @param {number} [params.offset] - The number of secrets to skip. By specifying `offset`, you retrieve a subset of
179
179
  * items that starts with the `offset` value. Use `offset` with `limit` to page through your available resources.
180
180
  *
181
181
  * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
182
- * `../secrets/{secret-type}?offset=25&limit=25`.
182
+ * `..?offset=25&limit=25`.
183
183
  * @param {string} [params.search] - Filter secrets that contain the specified string. The fields that are searched
184
184
  * include: id, name, description, labels, secret_type.
185
185
  *
186
186
  * **Usage:** If you want to list only the secrets that contain the string "text", use
187
- * `../secrets/{secret-type}?search=text`.
187
+ * `../secrets/{secret_type}?search=text`.
188
188
  * @param {string} [params.sortBy] - Sort a list of secrets by the specified field.
189
189
  *
190
190
  * **Usage:** To sort a list of secrets by their creation date, use
191
- * `../secrets/{secret-type}?sort_by=creation_date`.
191
+ * `../secrets/{secret_type}?sort_by=creation_date`.
192
192
  * @param {string[]} [params.groups] - Filter secrets by groups.
193
193
  *
194
194
  * You can apply multiple filters by using a comma-separated list of secret group IDs. If you need to filter secrets
195
195
  * that are in the default secret group, use the `default` keyword.
196
196
  *
197
197
  * **Usage:** To retrieve a list of secrets that are associated with an existing secret group or the default group,
198
- * use `../secrets?groups={secret_group_ID},default`.
198
+ * use `..?groups={secret_group_ID},default`.
199
199
  * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
200
200
  * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.ListSecrets>>}
201
201
  */
@@ -352,6 +352,214 @@ declare class SecretsManagerV1 extends BaseService {
352
352
  * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.SecretMetadataRequest>>}
353
353
  */
354
354
  updateSecretMetadata(params: SecretsManagerV1.UpdateSecretMetadataParams): Promise<SecretsManagerV1.Response<SecretsManagerV1.SecretMetadataRequest>>;
355
+ /*************************
356
+ * locks
357
+ ************************/
358
+ /**
359
+ * List secret locks.
360
+ *
361
+ * List the locks that are associated with a specified secret.
362
+ *
363
+ * @param {Object} params - The parameters to send to the service.
364
+ * @param {string} params.secretType - The secret type.
365
+ * @param {string} params.id - The v4 UUID that uniquely identifies the secret.
366
+ * @param {number} [params.limit] - The number of secrets with locks to retrieve. By default, list operations return
367
+ * the first 25 items. To retrieve a different set of items, use `limit` with `offset` to page through your available
368
+ * resources.
369
+ *
370
+ * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 with locks, use
371
+ * `..?limit=5`.
372
+ * @param {number} [params.offset] - The number of secrets to skip. By specifying `offset`, you retrieve a subset of
373
+ * items that starts with the `offset` value. Use `offset` with `limit` to page through your available resources.
374
+ *
375
+ * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
376
+ * `..?offset=25&limit=25`.
377
+ * @param {string} [params.search] - Filter locks that contain the specified string in the field "name".
378
+ *
379
+ * **Usage:** If you want to list only the locks that contain the string "text" in the field "name", use
380
+ * `..?search=text`.
381
+ * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
382
+ * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.ListSecretLocks>>}
383
+ */
384
+ getLocks(params: SecretsManagerV1.GetLocksParams): Promise<SecretsManagerV1.Response<SecretsManagerV1.ListSecretLocks>>;
385
+ /**
386
+ * Lock a secret.
387
+ *
388
+ * Create a lock on the current version of a secret.
389
+ *
390
+ * A lock can be used to prevent a secret from being deleted or modified while it's in use by your applications. A
391
+ * successful request attaches a new lock to your secret, or replaces a lock of the same name if it already exists.
392
+ * Additionally, you can use this method to clear any matching locks on a secret by using one of the following
393
+ * optional lock modes:
394
+ *
395
+ * - `exclusive`: Removes any other locks with matching names if they are found in the previous version of the secret.
396
+ * - `exclusive_delete`: Same as `exclusive`, but also permanently deletes the data of the previous secret version if
397
+ * it doesn't have any locks.
398
+ *
399
+ * For more information about locking secrets, check out the
400
+ * [docs](https://cloud.ibm.com/docs/secrets-manager?topic=secrets-manager-secret-locks).
401
+ *
402
+ * @param {Object} params - The parameters to send to the service.
403
+ * @param {string} params.secretType - The secret type.
404
+ * @param {string} params.id - The v4 UUID that uniquely identifies the secret.
405
+ * @param {LockSecretBodyLocksItem[]} [params.locks] - The lock data to be attached to a secret version.
406
+ * @param {string} [params.mode] - An optional lock mode. At lock creation, you can set one of the following modes to
407
+ * clear any matching locks on a secret version.
408
+ *
409
+ * - `exclusive`: Removes any other locks with matching names if they are found in the previous version of the secret.
410
+ * - `exclusive_delete`: Same as `exclusive`, but also permanently deletes the data of the previous secret version if
411
+ * it doesn't have any locks.
412
+ * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
413
+ * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.GetSecretLocks>>}
414
+ */
415
+ lockSecret(params: SecretsManagerV1.LockSecretParams): Promise<SecretsManagerV1.Response<SecretsManagerV1.GetSecretLocks>>;
416
+ /**
417
+ * Unlock a secret.
418
+ *
419
+ * Delete one or more locks that are associated with the current version of a secret.
420
+ *
421
+ * A successful request deletes the locks that you specify. To remove all locks, you can pass `{"locks": ["*"]}` in in
422
+ * the request body. Otherwise, specify the names of the locks that you want to delete. For example, `{"locks":
423
+ * ["lock1", "lock2"]}`.
424
+ *
425
+ * **Note:** A secret is considered unlocked and able to be revoked or deleted only after all of its locks are
426
+ * removed. To understand whether a secret contains locks, check the `locks_total` field that is returned as part of
427
+ * the metadata of your secret.
428
+ *
429
+ * @param {Object} params - The parameters to send to the service.
430
+ * @param {string} params.secretType - The secret type.
431
+ * @param {string} params.id - The v4 UUID that uniquely identifies the secret.
432
+ * @param {string[]} [params.locks] - A comma-separated list of locks to delete.
433
+ * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
434
+ * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.GetSecretLocks>>}
435
+ */
436
+ unlockSecret(params: SecretsManagerV1.UnlockSecretParams): Promise<SecretsManagerV1.Response<SecretsManagerV1.GetSecretLocks>>;
437
+ /**
438
+ * List secret version locks.
439
+ *
440
+ * List the locks that are associated with a specified secret version.
441
+ *
442
+ * @param {Object} params - The parameters to send to the service.
443
+ * @param {string} params.secretType - The secret type.
444
+ * @param {string} params.id - The v4 UUID that uniquely identifies the secret.
445
+ * @param {string} params.versionId - The v4 UUID that uniquely identifies the secret version. You can also use
446
+ * `previous` to retrieve the previous version.
447
+ *
448
+ * **Note:** To find the version ID of a secret, use the [Get secret metadata](#get-secret-metadata) method and check
449
+ * the response details.
450
+ * @param {number} [params.limit] - The number of secrets with locks to retrieve. By default, list operations return
451
+ * the first 25 items. To retrieve a different set of items, use `limit` with `offset` to page through your available
452
+ * resources.
453
+ *
454
+ * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 with locks, use
455
+ * `..?limit=5`.
456
+ * @param {number} [params.offset] - The number of secrets to skip. By specifying `offset`, you retrieve a subset of
457
+ * items that starts with the `offset` value. Use `offset` with `limit` to page through your available resources.
458
+ *
459
+ * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
460
+ * `..?offset=25&limit=25`.
461
+ * @param {string} [params.search] - Filter locks that contain the specified string in the field "name".
462
+ *
463
+ * **Usage:** If you want to list only the locks that contain the string "text" in the field "name", use
464
+ * `..?search=text`.
465
+ * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
466
+ * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.ListSecretLocks>>}
467
+ */
468
+ getSecretVersionLocks(params: SecretsManagerV1.GetSecretVersionLocksParams): Promise<SecretsManagerV1.Response<SecretsManagerV1.ListSecretLocks>>;
469
+ /**
470
+ * Lock a secret version.
471
+ *
472
+ * Create a lock on the specified version of a secret.
473
+ *
474
+ * A lock can be used to prevent a secret from being deleted or modified while it's in use by your applications. A
475
+ * successful request attaches a new lock to the specified version, or replaces a lock of the same name if it already
476
+ * exists. Additionally, you can use this method to clear any matching locks on a secret version by using one of the
477
+ * following optional lock modes:
478
+ *
479
+ * - `exclusive`: Removes any other locks with matching names if they are found in the previous version of the secret.
480
+ * - `exclusive_delete`: Same as `exclusive`, but also permanently deletes the data of the previous secret version if
481
+ * it doesn't have any locks.
482
+ *
483
+ * For more information about locking secrets, check out the
484
+ * [docs](https://cloud.ibm.com/docs/secrets-manager?topic=secrets-manager-secret-locks).
485
+ *
486
+ * @param {Object} params - The parameters to send to the service.
487
+ * @param {string} params.secretType - The secret type.
488
+ * @param {string} params.id - The v4 UUID that uniquely identifies the secret.
489
+ * @param {string} params.versionId - The v4 UUID that uniquely identifies the secret version. You can also use
490
+ * `previous` to retrieve the previous version.
491
+ *
492
+ * **Note:** To find the version ID of a secret, use the [Get secret metadata](#get-secret-metadata) method and check
493
+ * the response details.
494
+ * @param {LockSecretBodyLocksItem[]} [params.locks] - The lock data to be attached to a secret version.
495
+ * @param {string} [params.mode] - An optional lock mode. At lock creation, you can set one of the following modes to
496
+ * clear any matching locks on a secret version.
497
+ *
498
+ * - `exclusive`: Removes any other locks with matching names if they are found in the previous version of the secret.
499
+ * - `exclusive_delete`: Same as `exclusive`, but also permanently deletes the data of the previous secret version if
500
+ * it doesn't have any locks.
501
+ * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
502
+ * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.GetSecretLocks>>}
503
+ */
504
+ lockSecretVersion(params: SecretsManagerV1.LockSecretVersionParams): Promise<SecretsManagerV1.Response<SecretsManagerV1.GetSecretLocks>>;
505
+ /**
506
+ * Unlock a secret version.
507
+ *
508
+ * Delete one or more locks that are associated with the specified secret version.
509
+ *
510
+ * A successful request deletes the locks that you specify. To remove all locks, you can pass `{"locks": ["*"]}` in in
511
+ * the request body. Otherwise, specify the names of the locks that you want to delete. For example, `{"locks":
512
+ * ["lock-1", "lock-2"]}`.
513
+ *
514
+ * **Note:** A secret is considered unlocked and able to be revoked or deleted only after all of its locks are
515
+ * removed. To understand whether a secret contains locks, check the `locks_total` field that is returned as part of
516
+ * the metadata of your secret.
517
+ *
518
+ * @param {Object} params - The parameters to send to the service.
519
+ * @param {string} params.secretType - The secret type.
520
+ * @param {string} params.id - The v4 UUID that uniquely identifies the secret.
521
+ * @param {string} params.versionId - The v4 UUID that uniquely identifies the secret version. You can also use
522
+ * `previous` to retrieve the previous version.
523
+ *
524
+ * **Note:** To find the version ID of a secret, use the [Get secret metadata](#get-secret-metadata) method and check
525
+ * the response details.
526
+ * @param {string[]} [params.locks] - A comma-separated list of locks to delete.
527
+ * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
528
+ * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.GetSecretLocks>>}
529
+ */
530
+ unlockSecretVersion(params: SecretsManagerV1.UnlockSecretVersionParams): Promise<SecretsManagerV1.Response<SecretsManagerV1.GetSecretLocks>>;
531
+ /**
532
+ * List all secrets and locks.
533
+ *
534
+ * List the lock details that are associated with all secrets in your Secrets Manager instance.
535
+ *
536
+ * @param {Object} [params] - The parameters to send to the service.
537
+ * @param {number} [params.limit] - The number of secrets with locks to retrieve. By default, list operations return
538
+ * the first 25 items. To retrieve a different set of items, use `limit` with `offset` to page through your available
539
+ * resources.
540
+ *
541
+ * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 with locks, use
542
+ * `..?limit=5`.
543
+ * @param {number} [params.offset] - The number of secrets to skip. By specifying `offset`, you retrieve a subset of
544
+ * items that starts with the `offset` value. Use `offset` with `limit` to page through your available resources.
545
+ *
546
+ * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
547
+ * `..?offset=25&limit=25`.
548
+ * @param {string} [params.search] - Filter locks that contain the specified string in the field "name".
549
+ *
550
+ * **Usage:** If you want to list only the locks that contain the string "text" in the field "name", use
551
+ * `..?search=text`.
552
+ * @param {string[]} [params.groups] - Filter secrets by groups.
553
+ *
554
+ * You can apply multiple filters by using a comma-separated list of secret group IDs. If you need to filter secrets
555
+ * that are in the default secret group, use the `default` keyword.
556
+ *
557
+ * **Usage:** To retrieve a list of secrets that are associated with an existing secret group or the default group,
558
+ * use `..?groups={secret_group_ID},default`.
559
+ * @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
560
+ * @returns {Promise<SecretsManagerV1.Response<SecretsManagerV1.GetInstanceLocks>>}
561
+ */
562
+ listInstanceSecretsLocks(params?: SecretsManagerV1.ListInstanceSecretsLocksParams): Promise<SecretsManagerV1.Response<SecretsManagerV1.GetInstanceLocks>>;
355
563
  /*************************
356
564
  * policies
357
565
  ************************/
@@ -667,14 +875,14 @@ declare namespace SecretsManagerV1 {
667
875
  * different set of items, use `limit` with `offset` to page through your available resources.
668
876
  *
669
877
  * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 secrets, use
670
- * `../secrets/{secret-type}?limit=5`.
878
+ * `../secrets/{secret_type}?limit=5`.
671
879
  */
672
880
  limit?: number;
673
881
  /** The number of secrets to skip. By specifying `offset`, you retrieve a subset of items that starts with the
674
882
  * `offset` value. Use `offset` with `limit` to page through your available resources.
675
883
  *
676
884
  * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
677
- * `../secrets/{secret-type}?offset=25&limit=25`.
885
+ * `..?offset=25&limit=25`.
678
886
  */
679
887
  offset?: number;
680
888
  headers?: OutgoingHttpHeaders;
@@ -698,27 +906,27 @@ declare namespace SecretsManagerV1 {
698
906
  * different set of items, use `limit` with `offset` to page through your available resources.
699
907
  *
700
908
  * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 secrets, use
701
- * `../secrets/{secret-type}?limit=5`.
909
+ * `../secrets/{secret_type}?limit=5`.
702
910
  */
703
911
  limit?: number;
704
912
  /** The number of secrets to skip. By specifying `offset`, you retrieve a subset of items that starts with the
705
913
  * `offset` value. Use `offset` with `limit` to page through your available resources.
706
914
  *
707
915
  * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
708
- * `../secrets/{secret-type}?offset=25&limit=25`.
916
+ * `..?offset=25&limit=25`.
709
917
  */
710
918
  offset?: number;
711
919
  /** Filter secrets that contain the specified string. The fields that are searched include: id, name,
712
920
  * description, labels, secret_type.
713
921
  *
714
922
  * **Usage:** If you want to list only the secrets that contain the string "text", use
715
- * `../secrets/{secret-type}?search=text`.
923
+ * `../secrets/{secret_type}?search=text`.
716
924
  */
717
925
  search?: string;
718
926
  /** Sort a list of secrets by the specified field.
719
927
  *
720
928
  * **Usage:** To sort a list of secrets by their creation date, use
721
- * `../secrets/{secret-type}?sort_by=creation_date`.
929
+ * `../secrets/{secret_type}?sort_by=creation_date`.
722
930
  */
723
931
  sortBy?: ListAllSecretsConstants.SortBy | string;
724
932
  /** Filter secrets by groups.
@@ -727,14 +935,14 @@ declare namespace SecretsManagerV1 {
727
935
  * secrets that are in the default secret group, use the `default` keyword.
728
936
  *
729
937
  * **Usage:** To retrieve a list of secrets that are associated with an existing secret group or the default group,
730
- * use `../secrets?groups={secret_group_ID},default`.
938
+ * use `..?groups={secret_group_ID},default`.
731
939
  */
732
940
  groups?: string[];
733
941
  headers?: OutgoingHttpHeaders;
734
942
  }
735
943
  /** Constants for the `listAllSecrets` operation. */
736
944
  namespace ListAllSecretsConstants {
737
- /** Sort a list of secrets by the specified field. **Usage:** To sort a list of secrets by their creation date, use `../secrets/{secret-type}?sort_by=creation_date`. */
945
+ /** Sort a list of secrets by the specified field. **Usage:** To sort a list of secrets by their creation date, use `../secrets/{secret_type}?sort_by=creation_date`. */
738
946
  enum SortBy {
739
947
  ID = "id",
740
948
  CREATION_DATE = "creation_date",
@@ -968,6 +1176,262 @@ declare namespace SecretsManagerV1 {
968
1176
  KV = "kv"
969
1177
  }
970
1178
  }
1179
+ /** Parameters for the `getLocks` operation. */
1180
+ interface GetLocksParams {
1181
+ /** The secret type. */
1182
+ secretType: GetLocksConstants.SecretType | string;
1183
+ /** The v4 UUID that uniquely identifies the secret. */
1184
+ id: string;
1185
+ /** The number of secrets with locks to retrieve. By default, list operations return the first 25 items. To
1186
+ * retrieve a different set of items, use `limit` with `offset` to page through your available resources.
1187
+ *
1188
+ * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 with locks, use
1189
+ * `..?limit=5`.
1190
+ */
1191
+ limit?: number;
1192
+ /** The number of secrets to skip. By specifying `offset`, you retrieve a subset of items that starts with the
1193
+ * `offset` value. Use `offset` with `limit` to page through your available resources.
1194
+ *
1195
+ * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
1196
+ * `..?offset=25&limit=25`.
1197
+ */
1198
+ offset?: number;
1199
+ /** Filter locks that contain the specified string in the field "name".
1200
+ *
1201
+ * **Usage:** If you want to list only the locks that contain the string "text" in the field "name", use
1202
+ * `..?search=text`.
1203
+ */
1204
+ search?: string;
1205
+ headers?: OutgoingHttpHeaders;
1206
+ }
1207
+ /** Constants for the `getLocks` operation. */
1208
+ namespace GetLocksConstants {
1209
+ /** The secret type. */
1210
+ enum SecretType {
1211
+ ARBITRARY = "arbitrary",
1212
+ IAM_CREDENTIALS = "iam_credentials",
1213
+ IMPORTED_CERT = "imported_cert",
1214
+ PUBLIC_CERT = "public_cert",
1215
+ PRIVATE_CERT = "private_cert",
1216
+ USERNAME_PASSWORD = "username_password",
1217
+ KV = "kv"
1218
+ }
1219
+ }
1220
+ /** Parameters for the `lockSecret` operation. */
1221
+ interface LockSecretParams {
1222
+ /** The secret type. */
1223
+ secretType: LockSecretConstants.SecretType | string;
1224
+ /** The v4 UUID that uniquely identifies the secret. */
1225
+ id: string;
1226
+ /** The lock data to be attached to a secret version. */
1227
+ locks?: LockSecretBodyLocksItem[];
1228
+ /** An optional lock mode. At lock creation, you can set one of the following modes to clear any matching locks
1229
+ * on a secret version.
1230
+ *
1231
+ * - `exclusive`: Removes any other locks with matching names if they are found in the previous version of the
1232
+ * secret.
1233
+ * - `exclusive_delete`: Same as `exclusive`, but also permanently deletes the data of the previous secret version
1234
+ * if it doesn't have any locks.
1235
+ */
1236
+ mode?: LockSecretConstants.Mode | string;
1237
+ headers?: OutgoingHttpHeaders;
1238
+ }
1239
+ /** Constants for the `lockSecret` operation. */
1240
+ namespace LockSecretConstants {
1241
+ /** The secret type. */
1242
+ enum SecretType {
1243
+ ARBITRARY = "arbitrary",
1244
+ IAM_CREDENTIALS = "iam_credentials",
1245
+ IMPORTED_CERT = "imported_cert",
1246
+ PUBLIC_CERT = "public_cert",
1247
+ PRIVATE_CERT = "private_cert",
1248
+ USERNAME_PASSWORD = "username_password",
1249
+ KV = "kv"
1250
+ }
1251
+ /** An optional lock mode. At lock creation, you can set one of the following modes to clear any matching locks on a secret version. - `exclusive`: Removes any other locks with matching names if they are found in the previous version of the secret. - `exclusive_delete`: Same as `exclusive`, but also permanently deletes the data of the previous secret version if it doesn't have any locks. */
1252
+ enum Mode {
1253
+ EXCLUSIVE = "exclusive",
1254
+ EXCLUSIVE_DELETE = "exclusive_delete"
1255
+ }
1256
+ }
1257
+ /** Parameters for the `unlockSecret` operation. */
1258
+ interface UnlockSecretParams {
1259
+ /** The secret type. */
1260
+ secretType: UnlockSecretConstants.SecretType | string;
1261
+ /** The v4 UUID that uniquely identifies the secret. */
1262
+ id: string;
1263
+ /** A comma-separated list of locks to delete. */
1264
+ locks?: string[];
1265
+ headers?: OutgoingHttpHeaders;
1266
+ }
1267
+ /** Constants for the `unlockSecret` operation. */
1268
+ namespace UnlockSecretConstants {
1269
+ /** The secret type. */
1270
+ enum SecretType {
1271
+ ARBITRARY = "arbitrary",
1272
+ IAM_CREDENTIALS = "iam_credentials",
1273
+ IMPORTED_CERT = "imported_cert",
1274
+ PUBLIC_CERT = "public_cert",
1275
+ PRIVATE_CERT = "private_cert",
1276
+ USERNAME_PASSWORD = "username_password",
1277
+ KV = "kv"
1278
+ }
1279
+ }
1280
+ /** Parameters for the `getSecretVersionLocks` operation. */
1281
+ interface GetSecretVersionLocksParams {
1282
+ /** The secret type. */
1283
+ secretType: GetSecretVersionLocksConstants.SecretType | string;
1284
+ /** The v4 UUID that uniquely identifies the secret. */
1285
+ id: string;
1286
+ /** The v4 UUID that uniquely identifies the secret version. You can also use `previous` to retrieve the
1287
+ * previous version.
1288
+ *
1289
+ * **Note:** To find the version ID of a secret, use the [Get secret metadata](#get-secret-metadata) method and
1290
+ * check the response details.
1291
+ */
1292
+ versionId: string;
1293
+ /** The number of secrets with locks to retrieve. By default, list operations return the first 25 items. To
1294
+ * retrieve a different set of items, use `limit` with `offset` to page through your available resources.
1295
+ *
1296
+ * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 with locks, use
1297
+ * `..?limit=5`.
1298
+ */
1299
+ limit?: number;
1300
+ /** The number of secrets to skip. By specifying `offset`, you retrieve a subset of items that starts with the
1301
+ * `offset` value. Use `offset` with `limit` to page through your available resources.
1302
+ *
1303
+ * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
1304
+ * `..?offset=25&limit=25`.
1305
+ */
1306
+ offset?: number;
1307
+ /** Filter locks that contain the specified string in the field "name".
1308
+ *
1309
+ * **Usage:** If you want to list only the locks that contain the string "text" in the field "name", use
1310
+ * `..?search=text`.
1311
+ */
1312
+ search?: string;
1313
+ headers?: OutgoingHttpHeaders;
1314
+ }
1315
+ /** Constants for the `getSecretVersionLocks` operation. */
1316
+ namespace GetSecretVersionLocksConstants {
1317
+ /** The secret type. */
1318
+ enum SecretType {
1319
+ ARBITRARY = "arbitrary",
1320
+ IAM_CREDENTIALS = "iam_credentials",
1321
+ IMPORTED_CERT = "imported_cert",
1322
+ PUBLIC_CERT = "public_cert",
1323
+ PRIVATE_CERT = "private_cert",
1324
+ USERNAME_PASSWORD = "username_password",
1325
+ KV = "kv"
1326
+ }
1327
+ }
1328
+ /** Parameters for the `lockSecretVersion` operation. */
1329
+ interface LockSecretVersionParams {
1330
+ /** The secret type. */
1331
+ secretType: LockSecretVersionConstants.SecretType | string;
1332
+ /** The v4 UUID that uniquely identifies the secret. */
1333
+ id: string;
1334
+ /** The v4 UUID that uniquely identifies the secret version. You can also use `previous` to retrieve the
1335
+ * previous version.
1336
+ *
1337
+ * **Note:** To find the version ID of a secret, use the [Get secret metadata](#get-secret-metadata) method and
1338
+ * check the response details.
1339
+ */
1340
+ versionId: string;
1341
+ /** The lock data to be attached to a secret version. */
1342
+ locks?: LockSecretBodyLocksItem[];
1343
+ /** An optional lock mode. At lock creation, you can set one of the following modes to clear any matching locks
1344
+ * on a secret version.
1345
+ *
1346
+ * - `exclusive`: Removes any other locks with matching names if they are found in the previous version of the
1347
+ * secret.
1348
+ * - `exclusive_delete`: Same as `exclusive`, but also permanently deletes the data of the previous secret version
1349
+ * if it doesn't have any locks.
1350
+ */
1351
+ mode?: LockSecretVersionConstants.Mode | string;
1352
+ headers?: OutgoingHttpHeaders;
1353
+ }
1354
+ /** Constants for the `lockSecretVersion` operation. */
1355
+ namespace LockSecretVersionConstants {
1356
+ /** The secret type. */
1357
+ enum SecretType {
1358
+ ARBITRARY = "arbitrary",
1359
+ IAM_CREDENTIALS = "iam_credentials",
1360
+ IMPORTED_CERT = "imported_cert",
1361
+ PUBLIC_CERT = "public_cert",
1362
+ PRIVATE_CERT = "private_cert",
1363
+ USERNAME_PASSWORD = "username_password",
1364
+ KV = "kv"
1365
+ }
1366
+ /** An optional lock mode. At lock creation, you can set one of the following modes to clear any matching locks on a secret version. - `exclusive`: Removes any other locks with matching names if they are found in the previous version of the secret. - `exclusive_delete`: Same as `exclusive`, but also permanently deletes the data of the previous secret version if it doesn't have any locks. */
1367
+ enum Mode {
1368
+ EXCLUSIVE = "exclusive",
1369
+ EXCLUSIVE_DELETE = "exclusive_delete"
1370
+ }
1371
+ }
1372
+ /** Parameters for the `unlockSecretVersion` operation. */
1373
+ interface UnlockSecretVersionParams {
1374
+ /** The secret type. */
1375
+ secretType: UnlockSecretVersionConstants.SecretType | string;
1376
+ /** The v4 UUID that uniquely identifies the secret. */
1377
+ id: string;
1378
+ /** The v4 UUID that uniquely identifies the secret version. You can also use `previous` to retrieve the
1379
+ * previous version.
1380
+ *
1381
+ * **Note:** To find the version ID of a secret, use the [Get secret metadata](#get-secret-metadata) method and
1382
+ * check the response details.
1383
+ */
1384
+ versionId: string;
1385
+ /** A comma-separated list of locks to delete. */
1386
+ locks?: string[];
1387
+ headers?: OutgoingHttpHeaders;
1388
+ }
1389
+ /** Constants for the `unlockSecretVersion` operation. */
1390
+ namespace UnlockSecretVersionConstants {
1391
+ /** The secret type. */
1392
+ enum SecretType {
1393
+ ARBITRARY = "arbitrary",
1394
+ IAM_CREDENTIALS = "iam_credentials",
1395
+ IMPORTED_CERT = "imported_cert",
1396
+ PUBLIC_CERT = "public_cert",
1397
+ PRIVATE_CERT = "private_cert",
1398
+ USERNAME_PASSWORD = "username_password",
1399
+ KV = "kv"
1400
+ }
1401
+ }
1402
+ /** Parameters for the `listInstanceSecretsLocks` operation. */
1403
+ interface ListInstanceSecretsLocksParams {
1404
+ /** The number of secrets with locks to retrieve. By default, list operations return the first 25 items. To
1405
+ * retrieve a different set of items, use `limit` with `offset` to page through your available resources.
1406
+ *
1407
+ * **Usage:** If you have 20 secrets in your instance, and you want to retrieve only the first 5 with locks, use
1408
+ * `..?limit=5`.
1409
+ */
1410
+ limit?: number;
1411
+ /** The number of secrets to skip. By specifying `offset`, you retrieve a subset of items that starts with the
1412
+ * `offset` value. Use `offset` with `limit` to page through your available resources.
1413
+ *
1414
+ * **Usage:** If you have 100 secrets in your instance, and you want to retrieve secrets 26 through 50, use
1415
+ * `..?offset=25&limit=25`.
1416
+ */
1417
+ offset?: number;
1418
+ /** Filter locks that contain the specified string in the field "name".
1419
+ *
1420
+ * **Usage:** If you want to list only the locks that contain the string "text" in the field "name", use
1421
+ * `..?search=text`.
1422
+ */
1423
+ search?: string;
1424
+ /** Filter secrets by groups.
1425
+ *
1426
+ * You can apply multiple filters by using a comma-separated list of secret group IDs. If you need to filter
1427
+ * secrets that are in the default secret group, use the `default` keyword.
1428
+ *
1429
+ * **Usage:** To retrieve a list of secrets that are associated with an existing secret group or the default group,
1430
+ * use `..?groups={secret_group_ID},default`.
1431
+ */
1432
+ groups?: string[];
1433
+ headers?: OutgoingHttpHeaders;
1434
+ }
971
1435
  /** Parameters for the `putPolicy` operation. */
972
1436
  interface PutPolicyParams {
973
1437
  /** The secret type. */
@@ -1270,6 +1734,21 @@ declare namespace SecretsManagerV1 {
1270
1734
  /** The data that is associated with the secret version. The data object contains the following fields: - `certificate`: The contents of the certificate. - `private_key`: The private key that is associated with the certificate. - `intermediate`: The intermediate certificate that is associated with the certificate. */
1271
1735
  interface CertificateSecretData {
1272
1736
  }
1737
+ /** Certificate templates configuration. */
1738
+ interface CertificateTemplatesConfigItem {
1739
+ /** The human-readable name to assign to your configuration. */
1740
+ name: string;
1741
+ /** The type of configuration. Value options differ depending on the `config_element` property that you want to
1742
+ * define.
1743
+ */
1744
+ type: string;
1745
+ /** Properties that describe a certificate template. You can use a certificate template to control the
1746
+ * parameters that
1747
+ * are applied to your issued private certificates. For more information, see the
1748
+ * [docs](https://cloud.ibm.com/docs/secrets-manager?topic=secrets-manager-certificate-templates).
1749
+ */
1750
+ config?: CertificateTemplateConfig;
1751
+ }
1273
1752
  /** The metadata that describes the resource array. */
1274
1753
  interface CollectionMetadata {
1275
1754
  /** The type of resources in the resource array. */
@@ -1353,6 +1832,13 @@ declare namespace SecretsManagerV1 {
1353
1832
  /** GetConfigResourcesItem. */
1354
1833
  interface GetConfigResourcesItem {
1355
1834
  }
1835
+ /** Properties that describe the locks that are associated with an instance. */
1836
+ interface GetInstanceLocks {
1837
+ /** The metadata that describes the resource array. */
1838
+ metadata: CollectionMetadata;
1839
+ /** A collection of resources. */
1840
+ resources: InstanceSecretsLocks[];
1841
+ }
1356
1842
  /** Properties that describe an existing registration with Event Notifications. */
1357
1843
  interface GetNotificationsSettings {
1358
1844
  /** The metadata that describes the resource array. */
@@ -1367,6 +1853,13 @@ declare namespace SecretsManagerV1 {
1367
1853
  /** A collection of resources. */
1368
1854
  resources: SecretResource[];
1369
1855
  }
1856
+ /** Properties that describe the lock of a secret or a secret version. */
1857
+ interface GetSecretLocks {
1858
+ /** The metadata that describes the resource array. */
1859
+ metadata: CollectionMetadata;
1860
+ /** A collection of resources. */
1861
+ resources: SecretsLocks[];
1862
+ }
1370
1863
  /** GetSecretPolicies. */
1371
1864
  interface GetSecretPolicies {
1372
1865
  }
@@ -1391,6 +1884,22 @@ declare namespace SecretsManagerV1 {
1391
1884
  /** A collection of resources. */
1392
1885
  resources: ConfigElementDef[];
1393
1886
  }
1887
+ /** Properties that describe the locks that are associated with an instance. */
1888
+ interface InstanceSecretsLocks {
1889
+ /** The unique ID of the secret. */
1890
+ secret_id?: string;
1891
+ /** The v4 UUID that uniquely identifies the secret group to assign to this secret.
1892
+ *
1893
+ * If you omit this parameter, your secret is assigned to the `default` secret group.
1894
+ */
1895
+ secret_group_id?: string;
1896
+ /** The secret type. */
1897
+ secret_type?: string;
1898
+ /** A collection of locks that are attached to a secret version. */
1899
+ versions?: SecretLockVersion[];
1900
+ /** InstanceSecretsLocks accepts additional properties. */
1901
+ [propName: string]: any;
1902
+ }
1394
1903
  /** Intermediate certificate authorities configuration. */
1395
1904
  interface IntermediateCertificateAuthoritiesConfigItem {
1396
1905
  /** The human-readable name to assign to your configuration. */
@@ -1429,6 +1938,13 @@ declare namespace SecretsManagerV1 {
1429
1938
  /** The name that was assigned to the DNS provider configuration. */
1430
1939
  dns?: string;
1431
1940
  }
1941
+ /** Properties that describe the locks of a secret or a secret version. */
1942
+ interface ListSecretLocks {
1943
+ /** The metadata that describes the resource array. */
1944
+ metadata: CollectionMetadata;
1945
+ /** A collection of resources. */
1946
+ resources: SecretLockData[];
1947
+ }
1432
1948
  /** Properties that describe a list of versions of a secret. */
1433
1949
  interface ListSecretVersions {
1434
1950
  /** The metadata that describes the resource array. */
@@ -1443,6 +1959,23 @@ declare namespace SecretsManagerV1 {
1443
1959
  /** A collection of resources. */
1444
1960
  resources?: SecretResource[];
1445
1961
  }
1962
+ /** LockSecretBodyLocksItem. */
1963
+ interface LockSecretBodyLocksItem {
1964
+ /** A human-readable name to assign to the lock. The lock name must be unique per secret version.
1965
+ *
1966
+ * To protect your privacy, do not use personal data, such as your name or location, as a name for your secret
1967
+ * lock.
1968
+ */
1969
+ name: string;
1970
+ /** An extended description of the lock.
1971
+ *
1972
+ * To protect your privacy, do not use personal data, such as your name or location, as a description for your
1973
+ * secret lock.
1974
+ */
1975
+ description: string;
1976
+ /** Optional information to associate with a lock, such as resources CRNs to be used by automation. */
1977
+ attributes: JsonObject;
1978
+ }
1446
1979
  /** The Event Notifications details. */
1447
1980
  interface NotificationsSettings {
1448
1981
  /** The Cloud Resource Name (CRN) of the connected Event Notifications instance. */
@@ -1540,6 +2073,56 @@ declare namespace SecretsManagerV1 {
1540
2073
  /** SecretGroupResource accepts additional properties. */
1541
2074
  [propName: string]: any;
1542
2075
  }
2076
+ /** Properties that describe a lock. */
2077
+ interface SecretLockData {
2078
+ /** A human-readable name to assign to the secret lock.
2079
+ *
2080
+ * To protect your privacy, do not use personal data, such as your name or location, as a name for the secret lock.
2081
+ */
2082
+ name?: string;
2083
+ /** An extended description of the secret lock.
2084
+ *
2085
+ * To protect your privacy, do not use personal data, such as your name or location, as a description for the
2086
+ * secret lock.
2087
+ */
2088
+ description?: string;
2089
+ /** The date the secret lock was created. The date format follows RFC 3339. */
2090
+ creation_date?: string;
2091
+ /** The unique identifier for the entity that created the secret lock. */
2092
+ created_by?: string;
2093
+ /** The information that is associated with a lock, such as resources CRNs to be used by automation. */
2094
+ attributes?: JsonObject;
2095
+ /** The v4 UUID that uniquely identifies the secret version. */
2096
+ secret_version_id?: string;
2097
+ /** The v4 UUID that uniquely identifies the secret. */
2098
+ secret_id?: string;
2099
+ /** The v4 UUID that uniquely identifies the secret group to assign to this secret.
2100
+ *
2101
+ * If you omit this parameter, your secret is assigned to the `default` secret group.
2102
+ */
2103
+ secret_group_id?: string;
2104
+ /** Updates when the actual secret is modified. The date format follows RFC 3339. */
2105
+ last_update_date?: string;
2106
+ /** A representation for the 2 last secret versions. Could be "current" for version (n) or "previous" for
2107
+ * version (n-1).
2108
+ */
2109
+ secret_version_alias?: string;
2110
+ }
2111
+ /** Properties that describe the secret locks. */
2112
+ interface SecretLockVersion {
2113
+ /** The v4 UUID that uniquely identifies the lock. */
2114
+ id?: string;
2115
+ /** A human-readable alias that describes the secret version. 'Current' is used for version `n` and 'previous'
2116
+ * is used for version `n-1`.
2117
+ */
2118
+ alias?: string;
2119
+ /** The names of all locks that are associated with this secret. */
2120
+ locks?: string[];
2121
+ /** Indicates whether the payload for the secret version is stored and available. */
2122
+ payload_available?: boolean;
2123
+ /** SecretLockVersion accepts additional properties. */
2124
+ [propName: string]: any;
2125
+ }
1543
2126
  /** SecretMetadata. */
1544
2127
  interface SecretMetadata {
1545
2128
  }
@@ -1571,6 +2154,20 @@ declare namespace SecretsManagerV1 {
1571
2154
  /** SecretVersionMetadata. */
1572
2155
  interface SecretVersionMetadata {
1573
2156
  }
2157
+ /** Properties that describe the secret locks. */
2158
+ interface SecretsLocks {
2159
+ /** The unique ID of the secret. */
2160
+ secret_id?: string;
2161
+ /** The v4 UUID that uniquely identifies the secret group to assign to this secret.
2162
+ *
2163
+ * If you omit this parameter, your secret is assigned to the `default` secret group.
2164
+ */
2165
+ secret_group_id?: string;
2166
+ /** A collection of locks that are attached to a secret version. */
2167
+ versions?: SecretLockVersion[];
2168
+ /** SecretsLocks accepts additional properties. */
2169
+ [propName: string]: any;
2170
+ }
1574
2171
  /** Properties that are returned with a successful `sign` action. */
1575
2172
  interface SignActionResultData {
1576
2173
  /** The PEM-encoded certificate. */
@@ -1649,8 +2246,10 @@ declare namespace SecretsManagerV1 {
1649
2246
  created_by?: string;
1650
2247
  /** Updates when any part of the secret metadata is modified. The date format follows RFC 3339. */
1651
2248
  last_update_date?: string;
1652
- /** The number of versions the secret has. */
2249
+ /** The number of versions that are associated with a secret. */
1653
2250
  versions_total?: number;
2251
+ /** The number of locks that are associated with a secret. */
2252
+ locks_total?: number;
1654
2253
  /** The date the secret material expires. The date format follows RFC 3339.
1655
2254
  *
1656
2255
  * You can set an expiration date on supported secret types at their creation. If you create a secret without
@@ -1712,6 +2311,8 @@ declare namespace SecretsManagerV1 {
1712
2311
  * see [Get secret version metadata](#get-secret-version-metadata).
1713
2312
  */
1714
2313
  versions?: JsonObject[];
2314
+ /** The number of locks that are associated with a secret. */
2315
+ locks_total?: number;
1715
2316
  /** The date the secret material expires. The date format follows RFC 3339.
1716
2317
  *
1717
2318
  * You can set an expiration date on supported secret types at their creation. If you create a secret without
@@ -1740,6 +2341,8 @@ declare namespace SecretsManagerV1 {
1740
2341
  creation_date?: string;
1741
2342
  /** The unique identifier for the entity that created the secret version. */
1742
2343
  created_by?: string;
2344
+ /** The number of locks that are associated with a secret version. */
2345
+ locks_total?: number;
1743
2346
  /** The data that is associated with the secret version.
1744
2347
  *
1745
2348
  * The data object contains the field `payload`.
@@ -1777,6 +2380,8 @@ declare namespace SecretsManagerV1 {
1777
2380
  * service API.
1778
2381
  */
1779
2382
  downloaded?: boolean;
2383
+ /** The number of locks that are associated with a secret version. */
2384
+ locks_total?: number;
1780
2385
  }
1781
2386
  /** Metadata properties that describe a certificate secret. */
1782
2387
  interface CertificateSecretMetadata extends SecretMetadata {
@@ -1823,8 +2428,10 @@ declare namespace SecretsManagerV1 {
1823
2428
  created_by?: string;
1824
2429
  /** Updates when any part of the secret metadata is modified. The date format follows RFC 3339. */
1825
2430
  last_update_date?: string;
1826
- /** The number of versions the secret has. */
2431
+ /** The number of versions that are associated with a secret. */
1827
2432
  versions_total?: number;
2433
+ /** The number of locks that are associated with a secret. */
2434
+ locks_total?: number;
1828
2435
  /** The unique serial number that was assigned to the certificate by the issuing certificate authority. */
1829
2436
  serial_number?: string;
1830
2437
  /** The identifier for the cryptographic algorithm that was used by the issuing certificate authority to sign
@@ -1899,6 +2506,8 @@ declare namespace SecretsManagerV1 {
1899
2506
  * see [Get secret version metadata](#get-secret-version-metadata).
1900
2507
  */
1901
2508
  versions?: JsonObject[];
2509
+ /** The number of locks that are associated with a secret. */
2510
+ locks_total?: number;
1902
2511
  /** The contents of your certificate. The data must be formatted on a single line with embedded newline
1903
2512
  * characters.
1904
2513
  */
@@ -1937,8 +2546,13 @@ declare namespace SecretsManagerV1 {
1937
2546
  intermediate_included?: boolean;
1938
2547
  /** Indicates whether the certificate was imported with an associated private key. */
1939
2548
  private_key_included?: boolean;
1940
- /** The alternative names that are defined for the certificate. */
1941
- alt_names?: string[];
2549
+ /** The alternative names that are defined for the certificate.
2550
+ *
2551
+ * For public certificates, this value is provided as an array of strings. For private certificates, this value is
2552
+ * provided as a comma-delimited list (string). In the API response, this value is returned as an array of strings
2553
+ * for all the types of certificate secrets.
2554
+ */
2555
+ alt_names?: any;
1942
2556
  /** The date that the certificate expires. The date format follows RFC 3339. */
1943
2557
  expiration_date?: string;
1944
2558
  }
@@ -1952,6 +2566,8 @@ declare namespace SecretsManagerV1 {
1952
2566
  creation_date?: string;
1953
2567
  /** The unique identifier for the entity that created the secret version. */
1954
2568
  created_by?: string;
2569
+ /** The number of locks that are associated with a secret version. */
2570
+ locks_total?: number;
1955
2571
  validity?: CertificateValidity;
1956
2572
  /** The unique serial number that was assigned to the certificate by the issuing certificate authority. */
1957
2573
  serial_number?: string;
@@ -2001,6 +2617,8 @@ declare namespace SecretsManagerV1 {
2001
2617
  * service API.
2002
2618
  */
2003
2619
  downloaded?: boolean;
2620
+ /** The number of locks that are associated with a secret version. */
2621
+ locks_total?: number;
2004
2622
  /** The unique serial number that was assigned to the certificate by the issuing certificate authority. */
2005
2623
  serial_number?: string;
2006
2624
  /** The date that the certificate expires. The date format follows RFC 3339. */
@@ -2016,20 +2634,21 @@ declare namespace SecretsManagerV1 {
2016
2634
  * This field can be supplied as a comma-delimited list of secret group IDs.
2017
2635
  */
2018
2636
  allowed_secret_groups?: string;
2019
- /** The maximum time-to-live (TTL) for certificates that are created by this CA. The value can be supplied as a
2020
- * string representation of a duration in hours, for example '8760h'. Note that in the API response the value is
2021
- * returned in seconds (integer).
2637
+ /** The maximum time-to-live (TTL) for certificates that are created by this CA.
2638
+ *
2639
+ * The value can be supplied as a string representation of a duration in hours, for example '8760h'. In the API
2640
+ * response, this value is returned in seconds (integer).
2022
2641
  *
2023
2642
  * Minimum value is one hour (`1h`). Maximum value is 100 years (`876000h`).
2024
2643
  */
2025
2644
  max_ttl?: any;
2026
- /** The time-to-live (TTL) or lease duration to assign to a private certificate.
2645
+ /** The time-to-live (TTL) to assign to a private certificate.
2027
2646
  *
2028
2647
  * The value can be supplied as a string representation of a duration, such as `12h`. Hour (`h`) is the largest
2029
- * time suffix. The value can't exceed the `max_ttl` that is defined in the associated certificate template. Note
2030
- * that in the API response the value is returned in seconds (integer).
2648
+ * time suffix. The value can't exceed the `max_ttl` that is defined in the associated certificate template. In the
2649
+ * API response, this value is returned in seconds (integer).
2031
2650
  */
2032
- ttl?: string;
2651
+ ttl?: any;
2033
2652
  /** Determines whether to allow `localhost` to be included as one of the requested common names. */
2034
2653
  allow_localhost?: boolean;
2035
2654
  /** The domains to define for the certificate template. This property is used along with the
@@ -2102,8 +2721,8 @@ declare namespace SecretsManagerV1 {
2102
2721
  key_type?: string;
2103
2722
  /** The number of bits to use when generating the private key.
2104
2723
  *
2105
- * Allowable values for RSA keys are: 2048 and 4096. Allowable values for EC keys are: 224, 256, 384 And 521. The
2106
- * default for RSA keys is 2048, and the default for EC keys is 256.
2724
+ * Allowable values for RSA keys are: `2048` and `4096`. Allowable values for EC keys are: `224`, `256`, `384`, and
2725
+ * `521`. The default for RSA keys is `2048`. The default for EC keys is `256`.
2107
2726
  */
2108
2727
  key_bits?: number;
2109
2728
  /** The allowed key usage constraint to define for private certificates.
@@ -2136,22 +2755,22 @@ declare namespace SecretsManagerV1 {
2136
2755
  * Does not include the common name in the CSR. To use the common name, include the `use_csr_common_name` property.
2137
2756
  */
2138
2757
  use_csr_sans?: boolean;
2139
- /** The Organizational Unit (OU) values to define in the subject field of the resulting CA certificate. */
2758
+ /** The Organizational Unit (OU) values to define in the subject field of the resulting certificate. */
2140
2759
  ou?: string[];
2141
- /** The Organization (O) values to define in the subject field of the resulting CA certificate. */
2760
+ /** The Organization (O) values to define in the subject field of the resulting certificate. */
2142
2761
  organization?: string[];
2143
- /** The Country (C) values to define in the subject field of the resulting CA certificate. */
2762
+ /** The Country (C) values to define in the subject field of the resulting certificate. */
2144
2763
  country?: string[];
2145
- /** The Locality (L) values to define in the subject field of the resulting CA certificate. */
2764
+ /** The Locality (L) values to define in the subject field of the resulting certificate. */
2146
2765
  locality?: string[];
2147
- /** The Province (ST) values to define in the subject field of the resulting CA certificate. */
2766
+ /** The Province (ST) values to define in the subject field of the resulting certificate. */
2148
2767
  province?: string[];
2149
- /** The Street Address values in the subject field of the resulting CA certificate. */
2768
+ /** The Street Address values in the subject field of the resulting certificate. */
2150
2769
  street_address?: string[];
2151
- /** The Postal Code values in the subject field of the resulting CA certificate. */
2770
+ /** The Postal Code values in the subject field of the resulting certificate. */
2152
2771
  postal_code?: string[];
2153
- /** The serial number to assign to the generated private certificate. To assign a random serial number, you can
2154
- * omit this field.
2772
+ /** The serial number to assign to the generated certificate. To assign a random serial number, you can omit
2773
+ * this field.
2155
2774
  */
2156
2775
  serial_number?: string;
2157
2776
  /** Determines whether to require a common name to create a private certificate.
@@ -2166,12 +2785,17 @@ declare namespace SecretsManagerV1 {
2166
2785
  * non-CA certificates.
2167
2786
  */
2168
2787
  basic_constraints_valid_for_non_ca?: boolean;
2169
- /** The duration in seconds by which to backdate the `not_before` property of an issued private certificate. The
2170
- * value can be supplied as a string representation of a duration, such as `30s`. Note that in the API response the
2788
+ /** The duration in seconds by which to backdate the `not_before` property of an issued private certificate.
2789
+ *
2790
+ * The value can be supplied as a string representation of a duration, such as `30s`. In the API response, this
2171
2791
  * value is returned in seconds (integer).
2172
2792
  */
2173
2793
  not_before_duration?: any;
2174
2794
  }
2795
+ /** Certificate templates configuration. */
2796
+ interface CertificateTemplatesConfig extends GetConfigElementsResourcesItem {
2797
+ certificate_templates: CertificateTemplatesConfigItem[];
2798
+ }
2175
2799
  /** Properties that describe an IBM Cloud classic infrastructure (SoftLayer) configuration. */
2176
2800
  interface ConfigElementDefConfigClassicInfrastructureConfig extends ConfigElementDefConfig {
2177
2801
  /** The username that is associated with your classic infrastructure account.
@@ -2312,8 +2936,10 @@ declare namespace SecretsManagerV1 {
2312
2936
  created_by?: string;
2313
2937
  /** Updates when any part of the secret metadata is modified. The date format follows RFC 3339. */
2314
2938
  last_update_date?: string;
2315
- /** The number of versions the secret has. */
2939
+ /** The number of versions that are associated with a secret. */
2316
2940
  versions_total?: number;
2941
+ /** The number of locks that are associated with a secret. */
2942
+ locks_total?: number;
2317
2943
  /** The time-to-live (TTL) or lease duration that is assigned to the secret. For `iam_credentials` secrets, the
2318
2944
  * TTL defines for how long each generated API key remains valid.
2319
2945
  */
@@ -2391,6 +3017,8 @@ declare namespace SecretsManagerV1 {
2391
3017
  * see [Get secret version metadata](#get-secret-version-metadata).
2392
3018
  */
2393
3019
  versions?: JsonObject[];
3020
+ /** The number of locks that are associated with a secret. */
3021
+ locks_total?: number;
2394
3022
  /** The time-to-live (TTL) or lease duration to assign to generated credentials.
2395
3023
  *
2396
3024
  * For `iam_credentials` secrets, the TTL defines for how long each generated API key remains valid. The value can
@@ -2399,7 +3027,7 @@ declare namespace SecretsManagerV1 {
2399
3027
  *
2400
3028
  * Minimum duration is 1 minute. Maximum is 90 days.
2401
3029
  */
2402
- ttl?: string;
3030
+ ttl?: any;
2403
3031
  /** The access groups that define the capabilities of the service ID and API key that are generated for an
2404
3032
  * `iam_credentials` secret. If you prefer to use an existing service ID that is already assigned the access
2405
3033
  * policies that you require, you can omit this parameter and use the `service_id` field instead.
@@ -2452,6 +3080,8 @@ declare namespace SecretsManagerV1 {
2452
3080
  creation_date?: string;
2453
3081
  /** The unique identifier for the entity that created the secret version. */
2454
3082
  created_by?: string;
3083
+ /** The number of locks that are associated with a secret version. */
3084
+ locks_total?: number;
2455
3085
  /** The data that is associated with the secret version. The data object contains the following fields:
2456
3086
  *
2457
3087
  * - `api_key`: The API key that is generated for this secret.
@@ -2491,6 +3121,8 @@ declare namespace SecretsManagerV1 {
2491
3121
  * service API.
2492
3122
  */
2493
3123
  downloaded?: boolean;
3124
+ /** The number of locks that are associated with a secret version. */
3125
+ locks_total?: number;
2494
3126
  }
2495
3127
  /** Intermediate certificate authorities configuration. */
2496
3128
  interface IntermediateCertificateAuthoritiesConfig extends GetConfigElementsResourcesItem {
@@ -2498,9 +3130,10 @@ declare namespace SecretsManagerV1 {
2498
3130
  }
2499
3131
  /** Intermediate certificate authority configuration. */
2500
3132
  interface IntermediateCertificateAuthorityConfig extends ConfigElementDefConfig {
2501
- /** The maximum time-to-live (TTL) for certificates that are created by this CA. The value can be supplied as a
2502
- * string representation of a duration in hours, for example '8760h'. Note that in the API response the value is
2503
- * returned in seconds (integer).
3133
+ /** The maximum time-to-live (TTL) for certificates that are created by this CA.
3134
+ *
3135
+ * The value can be supplied as a string representation of a duration in hours, for example '8760h'. In the API
3136
+ * response, this value is returned in seconds (integer).
2504
3137
  *
2505
3138
  * Minimum value is one hour (`1h`). Maximum value is 100 years (`876000h`).
2506
3139
  */
@@ -2517,22 +3150,26 @@ declare namespace SecretsManagerV1 {
2517
3150
  * authority that is configured in the Secrets Manager service instance.
2518
3151
  */
2519
3152
  issuer?: string;
2520
- /** The time until the certificate revocation list (CRL) expires. The value can be supplied as a string
2521
- * representation of a duration in hours, such as `48h`. The default is 72 hours. Note that in the API response the
2522
- * value is returned in seconds (integer).
3153
+ /** The time until the certificate revocation list (CRL) expires.
3154
+ *
3155
+ * The value can be supplied as a string representation of a duration in hours, such as `48h`. The default is 72
3156
+ * hours. In the API response, this value is returned in seconds (integer).
3157
+ *
3158
+ * **Note:** The CRL is rotated automatically before it expires.
2523
3159
  */
2524
3160
  crl_expiry?: any;
2525
- /** Determines whether to disable certificate revocation list (CRL) building.
3161
+ /** Disables or enables certificate revocation list (CRL) building.
2526
3162
  *
2527
- * By default, each request rebuilds a CRL. To disable CRL building, set this field to `true`.
3163
+ * If CRL building is disabled, a signed but zero-length CRL is returned when downloading the CRL. If CRL building
3164
+ * is enabled, it will rebuild the CRL.
2528
3165
  */
2529
3166
  crl_disable?: boolean;
2530
- /** Determines whether to encode the certificate revocation list (CRL) distribution points in the private
2531
- * certificates that are issued by a certificate authority.
3167
+ /** Determines whether to encode the certificate revocation list (CRL) distribution points in the certificates
3168
+ * that are issued by this certificate authority.
2532
3169
  */
2533
3170
  crl_distribution_points_encoded?: boolean;
2534
- /** Determines whether to encode the URL of the issuing certificate in the private certificates that are issued
2535
- * by a certificate authority.
3171
+ /** Determines whether to encode the URL of the issuing certificate in the certificates that are issued by this
3172
+ * certificate authority.
2536
3173
  */
2537
3174
  issuing_certificates_urls_encoded?: boolean;
2538
3175
  /** The fully qualified domain name or host domain name for the certificate. */
@@ -2548,7 +3185,7 @@ declare namespace SecretsManagerV1 {
2548
3185
  *
2549
3186
  * The alternative names can be host names or email addresses.
2550
3187
  */
2551
- alt_names?: string[];
3188
+ alt_names?: string;
2552
3189
  /** The IP Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
2553
3190
  ip_sans?: string;
2554
3191
  /** The URI Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
@@ -2569,8 +3206,8 @@ declare namespace SecretsManagerV1 {
2569
3206
  key_type?: string;
2570
3207
  /** The number of bits to use when generating the private key.
2571
3208
  *
2572
- * Allowable values for RSA keys are: 2048 and 4096. Allowable values for EC keys are: 224, 256, 384 And 521. The
2573
- * default for RSA keys is 2048, and the default for EC keys is 256.
3209
+ * Allowable values for RSA keys are: `2048` and `4096`. Allowable values for EC keys are: `224`, `256`, `384`, and
3210
+ * `521`. The default for RSA keys is `2048`. The default for EC keys is `256`.
2574
3211
  */
2575
3212
  key_bits?: number;
2576
3213
  /** Controls whether the common name is excluded from Subject Alternative Names (SANs).
@@ -2579,22 +3216,22 @@ declare namespace SecretsManagerV1 {
2579
3216
  * useful if the common name is not a hostname or an email address, but is instead a human-readable identifier.
2580
3217
  */
2581
3218
  exclude_cn_from_sans?: boolean;
2582
- /** The Organizational Unit (OU) values to define in the subject field of the resulting CA certificate. */
3219
+ /** The Organizational Unit (OU) values to define in the subject field of the resulting certificate. */
2583
3220
  ou?: string[];
2584
- /** The Organization (O) values to define in the subject field of the resulting CA certificate. */
3221
+ /** The Organization (O) values to define in the subject field of the resulting certificate. */
2585
3222
  organization?: string[];
2586
- /** The Country (C) values to define in the subject field of the resulting CA certificate. */
3223
+ /** The Country (C) values to define in the subject field of the resulting certificate. */
2587
3224
  country?: string[];
2588
- /** The Locality (L) values to define in the subject field of the resulting CA certificate. */
3225
+ /** The Locality (L) values to define in the subject field of the resulting certificate. */
2589
3226
  locality?: string[];
2590
- /** The Province (ST) values to define in the subject field of the resulting CA certificate. */
3227
+ /** The Province (ST) values to define in the subject field of the resulting certificate. */
2591
3228
  province?: string[];
2592
- /** The Street Address values in the subject field of the resulting CA certificate. */
3229
+ /** The Street Address values in the subject field of the resulting certificate. */
2593
3230
  street_address?: string[];
2594
- /** The Postal Code values in the subject field of the resulting CA certificate. */
3231
+ /** The Postal Code values in the subject field of the resulting certificate. */
2595
3232
  postal_code?: string[];
2596
- /** The serial number to assign to the generated private certificate. To assign a random serial number, you can
2597
- * omit this field.
3233
+ /** The serial number to assign to the generated certificate. To assign a random serial number, you can omit
3234
+ * this field.
2598
3235
  */
2599
3236
  serial_number?: string;
2600
3237
  /** The data that is associated with the intermediate certificate authority. The data object contains the
@@ -2651,8 +3288,10 @@ declare namespace SecretsManagerV1 {
2651
3288
  created_by?: string;
2652
3289
  /** Updates when any part of the secret metadata is modified. The date format follows RFC 3339. */
2653
3290
  last_update_date?: string;
2654
- /** The number of versions the secret has. */
3291
+ /** The number of versions that are associated with a secret. */
2655
3292
  versions_total?: number;
3293
+ /** The number of locks that are associated with a secret. */
3294
+ locks_total?: number;
2656
3295
  }
2657
3296
  /** Properties that describe a secret. */
2658
3297
  interface KvSecretResource extends SecretResource {
@@ -2704,6 +3343,8 @@ declare namespace SecretsManagerV1 {
2704
3343
  * see [Get secret version metadata](#get-secret-version-metadata).
2705
3344
  */
2706
3345
  versions?: JsonObject[];
3346
+ /** The number of locks that are associated with a secret. */
3347
+ locks_total?: number;
2707
3348
  /** The date the secret material expires. The date format follows RFC 3339.
2708
3349
  *
2709
3350
  * You can set an expiration date on supported secret types at their creation. If you create a secret without
@@ -2733,11 +3374,11 @@ declare namespace SecretsManagerV1 {
2733
3374
  /** Configuration for the private certificates engine. */
2734
3375
  interface PrivateCertSecretEngineRootConfig extends GetConfigResourcesItem {
2735
3376
  /** The root certificate authority configurations that are associated with your instance. */
2736
- root_certificate_authorities?: RootCertificateAuthorityConfig[];
3377
+ root_certificate_authorities?: RootCertificateAuthoritiesConfigItem[];
2737
3378
  /** The intermediate certificate authority configurations that are associated with your instance. */
2738
- intermdiate_certificate_authorities?: IntermediateCertificateAuthorityConfig[];
3379
+ intermediate_certificate_authorities?: IntermediateCertificateAuthoritiesConfigItem[];
2739
3380
  /** The certificate templates that are associated with your instance. */
2740
- certificate_templates?: CertificateTemplateConfig[];
3381
+ certificate_templates?: CertificateTemplatesConfigItem[];
2741
3382
  }
2742
3383
  /** Metadata properties that describe a private certificate secret. */
2743
3384
  interface PrivateCertificateSecretMetadata extends SecretMetadata {
@@ -2784,46 +3425,18 @@ declare namespace SecretsManagerV1 {
2784
3425
  created_by?: string;
2785
3426
  /** Updates when any part of the secret metadata is modified. The date format follows RFC 3339. */
2786
3427
  last_update_date?: string;
2787
- /** The number of versions the secret has. */
3428
+ /** The number of versions that are associated with a secret. */
2788
3429
  versions_total?: number;
3430
+ /** The number of locks that are associated with a secret. */
3431
+ locks_total?: number;
2789
3432
  /** The name of the certificate template. */
2790
- certificate_template: string;
3433
+ certificate_template?: string;
2791
3434
  /** The intermediate certificate authority that signed this certificate. */
2792
3435
  certificate_authority?: string;
2793
3436
  /** The fully qualified domain name or host domain name for the certificate. */
2794
- common_name: string;
2795
- /** The Subject Alternative Names to define for the CA certificate, in a comma-delimited list.
2796
- *
2797
- * The alternative names can be host names or email addresses.
2798
- */
3437
+ common_name?: string;
3438
+ /** The alternative names that are defined for the certificate. */
2799
3439
  alt_names?: string[];
2800
- /** The IP Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
2801
- ip_sans?: string;
2802
- /** The URI Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
2803
- uri_sans?: string;
2804
- /** The custom Object Identifier (OID) or UTF8-string Subject Alternative Names to define for the CA
2805
- * certificate.
2806
- *
2807
- * The alternative names must match the values that are specified in the `allowed_other_sans` field in the
2808
- * associated certificate template. The format is the same as OpenSSL: `<oid>:<type>:<value>` where the current
2809
- * valid type is `UTF8`.
2810
- */
2811
- other_sans?: string[];
2812
- /** The time-to-live (TTL) or lease duration to assign to a private certificate. The value can be supplied as a
2813
- * string representation of a duration in hours, for example '12h'. The value can't exceed the `max_ttl` that is
2814
- * defined in the associated certificate template.
2815
- */
2816
- ttl?: string;
2817
- /** The format of the returned data. */
2818
- format?: string;
2819
- /** The format of the generated private key. */
2820
- private_key_format?: string;
2821
- /** Controls whether the common name is excluded from Subject Alternative Names (SANs).
2822
- *
2823
- * If set to `true`, the common name is is not included in DNS or Email SANs if they apply. This field can be
2824
- * useful if the common name is not a hostname or an email address, but is instead a human-readable identifier.
2825
- */
2826
- exclude_cn_from_sans?: boolean;
2827
3440
  rotation?: Rotation;
2828
3441
  /** The identifier for the cryptographic algorithm that was used by the issuing certificate authority to sign
2829
3442
  * the certificate.
@@ -2893,17 +3506,21 @@ declare namespace SecretsManagerV1 {
2893
3506
  * see [Get secret version metadata](#get-secret-version-metadata).
2894
3507
  */
2895
3508
  versions?: JsonObject[];
3509
+ /** The number of locks that are associated with a secret. */
3510
+ locks_total?: number;
2896
3511
  /** The name of the certificate template. */
2897
3512
  certificate_template: string;
2898
3513
  /** The intermediate certificate authority that signed this certificate. */
2899
3514
  certificate_authority?: string;
2900
3515
  /** The fully qualified domain name or host domain name for the certificate. */
2901
3516
  common_name: string;
2902
- /** The Subject Alternative Names to define for the CA certificate, in a comma-delimited list.
3517
+ /** The alternative names that are defined for the certificate.
2903
3518
  *
2904
- * The alternative names can be host names or email addresses.
3519
+ * For public certificates, this value is provided as an array of strings. For private certificates, this value is
3520
+ * provided as a comma-delimited list (string). In the API response, this value is returned as an array of strings
3521
+ * for all the types of certificate secrets.
2905
3522
  */
2906
- alt_names?: string[];
3523
+ alt_names?: any;
2907
3524
  /** The IP Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
2908
3525
  ip_sans?: string;
2909
3526
  /** The URI Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
@@ -2916,11 +3533,12 @@ declare namespace SecretsManagerV1 {
2916
3533
  * valid type is `UTF8`.
2917
3534
  */
2918
3535
  other_sans?: string[];
2919
- /** The time-to-live (TTL) or lease duration to assign to a private certificate. The value can be supplied as a
2920
- * string representation of a duration in hours, for example '12h'. The value can't exceed the `max_ttl` that is
2921
- * defined in the associated certificate template.
3536
+ /** The time-to-live (TTL) to assign to a private certificate.
3537
+ *
3538
+ * The value can be supplied as a string representation of a duration in hours, for example '12h'. The value can't
3539
+ * exceed the `max_ttl` that is defined in the associated certificate template.
2922
3540
  */
2923
- ttl?: string;
3541
+ ttl?: any;
2924
3542
  /** The format of the returned data. */
2925
3543
  format?: string;
2926
3544
  /** The format of the generated private key. */
@@ -2968,6 +3586,8 @@ declare namespace SecretsManagerV1 {
2968
3586
  creation_date?: string;
2969
3587
  /** The unique identifier for the entity that created the secret version. */
2970
3588
  created_by?: string;
3589
+ /** The number of locks that are associated with a secret version. */
3590
+ locks_total?: number;
2971
3591
  validity?: CertificateValidity;
2972
3592
  /** The unique serial number that was assigned to the certificate by the issuing certificate authority. */
2973
3593
  serial_number?: string;
@@ -3041,6 +3661,8 @@ declare namespace SecretsManagerV1 {
3041
3661
  * service API.
3042
3662
  */
3043
3663
  downloaded?: boolean;
3664
+ /** The number of locks that are associated with a secret version. */
3665
+ locks_total?: number;
3044
3666
  /** The unique serial number that was assigned to the certificate by the issuing certificate authority. */
3045
3667
  serial_number?: string;
3046
3668
  /** The date that the certificate expires. The date format follows RFC 3339. */
@@ -3111,8 +3733,10 @@ declare namespace SecretsManagerV1 {
3111
3733
  created_by?: string;
3112
3734
  /** Updates when any part of the secret metadata is modified. The date format follows RFC 3339. */
3113
3735
  last_update_date?: string;
3114
- /** The number of versions the secret has. */
3736
+ /** The number of versions that are associated with a secret. */
3115
3737
  versions_total?: number;
3738
+ /** The number of locks that are associated with a secret. */
3739
+ locks_total?: number;
3116
3740
  /** The distinguished name that identifies the entity that signed and issued the certificate. */
3117
3741
  issuer?: string;
3118
3742
  /** Determines whether your issued certificate is bundled with intermediate certificates.
@@ -3193,6 +3817,8 @@ declare namespace SecretsManagerV1 {
3193
3817
  * see [Get secret version metadata](#get-secret-version-metadata).
3194
3818
  */
3195
3819
  versions?: JsonObject[];
3820
+ /** The number of locks that are associated with a secret. */
3821
+ locks_total?: number;
3196
3822
  /** The distinguished name that identifies the entity that signed and issued the certificate. */
3197
3823
  issuer?: string;
3198
3824
  /** Determines whether your issued certificate is bundled with intermediate certificates.
@@ -3222,8 +3848,13 @@ declare namespace SecretsManagerV1 {
3222
3848
  * provide more encryption protection.
3223
3849
  */
3224
3850
  key_algorithm?: string;
3225
- /** The alternative names that are defined for the certificate. */
3226
- alt_names?: string[];
3851
+ /** The alternative names that are defined for the certificate.
3852
+ *
3853
+ * For public certificates, this value is provided as an array of strings. For private certificates, this value is
3854
+ * provided as a comma-delimited list (string). In the API response, this value is returned as an array of strings
3855
+ * for all the types of certificate secrets.
3856
+ */
3857
+ alt_names?: any;
3227
3858
  /** The fully qualified domain name or host domain name for the certificate. */
3228
3859
  common_name?: string;
3229
3860
  /** Indicates whether the issued certificate includes a private key. */
@@ -3265,29 +3896,34 @@ declare namespace SecretsManagerV1 {
3265
3896
  }
3266
3897
  /** Root certificate authority configuration. */
3267
3898
  interface RootCertificateAuthorityConfig extends ConfigElementDefConfig {
3268
- /** The maximum time-to-live (TTL) for certificates that are created by this CA. The value can be supplied as a
3269
- * string representation of a duration in hours, for example '8760h'. Note that in the API response the value is
3270
- * returned in seconds (integer).
3899
+ /** The maximum time-to-live (TTL) for certificates that are created by this CA.
3900
+ *
3901
+ * The value can be supplied as a string representation of a duration in hours, for example '8760h'. In the API
3902
+ * response, this value is returned in seconds (integer).
3271
3903
  *
3272
3904
  * Minimum value is one hour (`1h`). Maximum value is 100 years (`876000h`).
3273
3905
  */
3274
3906
  max_ttl: any;
3275
- /** The time until the certificate revocation list (CRL) expires. The value can be supplied as a string
3276
- * representation of a duration in hours, such as `48h`. The default is 72 hours. Note that in the API response the
3277
- * value is returned in seconds (integer).
3907
+ /** The time until the certificate revocation list (CRL) expires.
3908
+ *
3909
+ * The value can be supplied as a string representation of a duration in hours, such as `48h`. The default is 72
3910
+ * hours. In the API response, this value is returned in seconds (integer).
3911
+ *
3912
+ * **Note:** The CRL is rotated automatically before it expires.
3278
3913
  */
3279
3914
  crl_expiry?: any;
3280
- /** Determines whether to disable certificate revocation list (CRL) building.
3915
+ /** Disables or enables certificate revocation list (CRL) building.
3281
3916
  *
3282
- * By default, each request rebuilds a CRL. To disable CRL building, set this field to `true`.
3917
+ * If CRL building is disabled, a signed but zero-length CRL is returned when downloading the CRL. If CRL building
3918
+ * is enabled, it will rebuild the CRL.
3283
3919
  */
3284
3920
  crl_disable?: boolean;
3285
- /** Determines whether to encode the certificate revocation list (CRL) distribution points in the private
3286
- * certificates that are issued by a certificate authority.
3921
+ /** Determines whether to encode the certificate revocation list (CRL) distribution points in the certificates
3922
+ * that are issued by this certificate authority.
3287
3923
  */
3288
3924
  crl_distribution_points_encoded?: boolean;
3289
- /** Determines whether to encode the URL of the issuing certificate in the private certificates that are issued
3290
- * by a certificate authority.
3925
+ /** Determines whether to encode the URL of the issuing certificate in the certificates that are issued by this
3926
+ * certificate authority.
3291
3927
  */
3292
3928
  issuing_certificates_urls_encoded?: boolean;
3293
3929
  /** The fully qualified domain name or host domain name for the certificate. */
@@ -3303,7 +3939,7 @@ declare namespace SecretsManagerV1 {
3303
3939
  *
3304
3940
  * The alternative names can be host names or email addresses.
3305
3941
  */
3306
- alt_names?: string[];
3942
+ alt_names?: string;
3307
3943
  /** The IP Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
3308
3944
  ip_sans?: string;
3309
3945
  /** The URI Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
@@ -3316,13 +3952,13 @@ declare namespace SecretsManagerV1 {
3316
3952
  * valid type is `UTF8`.
3317
3953
  */
3318
3954
  other_sans?: string[];
3319
- /** The time-to-live (TTL) or lease duration to assign to a private certificate.
3955
+ /** The time-to-live (TTL) to assign to this CA certificate.
3320
3956
  *
3321
3957
  * The value can be supplied as a string representation of a duration, such as `12h`. The value can't exceed the
3322
- * `max_ttl` that is defined in the associated certificate template. Note that in the API response the value is
3323
- * returned in seconds (integer).
3958
+ * `max_ttl` that is defined in the associated certificate template. In the API response, this value is returned in
3959
+ * seconds (integer).
3324
3960
  */
3325
- ttl?: string;
3961
+ ttl?: any;
3326
3962
  /** The format of the returned data. */
3327
3963
  format?: string;
3328
3964
  /** The format of the generated private key. */
@@ -3331,8 +3967,8 @@ declare namespace SecretsManagerV1 {
3331
3967
  key_type?: string;
3332
3968
  /** The number of bits to use when generating the private key.
3333
3969
  *
3334
- * Allowable values for RSA keys are: 2048 and 4096. Allowable values for EC keys are: 224, 256, 384 And 521. The
3335
- * default for RSA keys is 2048, and the default for EC keys is 256.
3970
+ * Allowable values for RSA keys are: `2048` and `4096`. Allowable values for EC keys are: `224`, `256`, `384`, and
3971
+ * `521`. The default for RSA keys is `2048`. The default for EC keys is `256`.
3336
3972
  */
3337
3973
  key_bits?: number;
3338
3974
  /** The maximum path length to encode in the generated certificate. `-1` means no limit.
@@ -3349,22 +3985,22 @@ declare namespace SecretsManagerV1 {
3349
3985
  exclude_cn_from_sans?: boolean;
3350
3986
  /** The allowed DNS domains or subdomains for the certificates to be signed and issued by this CA certificate. */
3351
3987
  permitted_dns_domains?: string[];
3352
- /** The Organizational Unit (OU) values to define in the subject field of the resulting CA certificate. */
3988
+ /** The Organizational Unit (OU) values to define in the subject field of the resulting certificate. */
3353
3989
  ou?: string[];
3354
- /** The Organization (O) values to define in the subject field of the resulting CA certificate. */
3990
+ /** The Organization (O) values to define in the subject field of the resulting certificate. */
3355
3991
  organization?: string[];
3356
- /** The Country (C) values to define in the subject field of the resulting CA certificate. */
3992
+ /** The Country (C) values to define in the subject field of the resulting certificate. */
3357
3993
  country?: string[];
3358
- /** The Locality (L) values to define in the subject field of the resulting CA certificate. */
3994
+ /** The Locality (L) values to define in the subject field of the resulting certificate. */
3359
3995
  locality?: string[];
3360
- /** The Province (ST) values to define in the subject field of the resulting CA certificate. */
3996
+ /** The Province (ST) values to define in the subject field of the resulting certificate. */
3361
3997
  province?: string[];
3362
- /** The Street Address values in the subject field of the resulting CA certificate. */
3998
+ /** The Street Address values in the subject field of the resulting certificate. */
3363
3999
  street_address?: string[];
3364
- /** The Postal Code values in the subject field of the resulting CA certificate. */
4000
+ /** The Postal Code values in the subject field of the resulting certificate. */
3365
4001
  postal_code?: string[];
3366
- /** The serial number to assign to the generated private certificate. To assign a random serial number, you can
3367
- * omit this field.
4002
+ /** The serial number to assign to the generated certificate. To assign a random serial number, you can omit
4003
+ * this field.
3368
4004
  */
3369
4005
  serial_number?: string;
3370
4006
  /** The data that is associated with the root certificate authority. The data object contains the following
@@ -3436,7 +4072,7 @@ declare namespace SecretsManagerV1 {
3436
4072
  *
3437
4073
  * The alternative names can be host names or email addresses.
3438
4074
  */
3439
- alt_names?: string[];
4075
+ alt_names?: string;
3440
4076
  /** The IP Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
3441
4077
  ip_sans?: string;
3442
4078
  /** The URI Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
@@ -3449,12 +4085,12 @@ declare namespace SecretsManagerV1 {
3449
4085
  * valid type is `UTF8`.
3450
4086
  */
3451
4087
  other_sans?: string[];
3452
- /** The time-to-live (TTL) or lease duration to assign to a private certificate.
4088
+ /** The time-to-live (TTL) to assign to a private certificate.
3453
4089
  *
3454
4090
  * The value can be supplied as a string representation of a duration in hours, such as `12h`. The value can't
3455
4091
  * exceed the `max_ttl` that is defined in the associated certificate template.
3456
4092
  */
3457
- ttl?: string;
4093
+ ttl?: any;
3458
4094
  /** The format of the returned data. */
3459
4095
  format?: string;
3460
4096
  /** The maximum path length to encode in the generated certificate. `-1` means no limit.
@@ -3483,22 +4119,22 @@ declare namespace SecretsManagerV1 {
3483
4119
  * 3) Extensions that are requested in the CSR are copied into the issued private certificate.
3484
4120
  */
3485
4121
  use_csr_values?: boolean;
3486
- /** The Organizational Unit (OU) values to define in the subject field of the resulting CA certificate. */
4122
+ /** The Organizational Unit (OU) values to define in the subject field of the resulting certificate. */
3487
4123
  ou?: string[];
3488
- /** The Organization (O) values to define in the subject field of the resulting CA certificate. */
4124
+ /** The Organization (O) values to define in the subject field of the resulting certificate. */
3489
4125
  organization?: string[];
3490
- /** The Country (C) values to define in the subject field of the resulting CA certificate. */
4126
+ /** The Country (C) values to define in the subject field of the resulting certificate. */
3491
4127
  country?: string[];
3492
- /** The Locality (L) values to define in the subject field of the resulting CA certificate. */
4128
+ /** The Locality (L) values to define in the subject field of the resulting certificate. */
3493
4129
  locality?: string[];
3494
- /** The Province (ST) values to define in the subject field of the resulting CA certificate. */
4130
+ /** The Province (ST) values to define in the subject field of the resulting certificate. */
3495
4131
  province?: string[];
3496
- /** The Street Address values in the subject field of the resulting CA certificate. */
4132
+ /** The Street Address values in the subject field of the resulting certificate. */
3497
4133
  street_address?: string[];
3498
- /** The Postal Code values in the subject field of the resulting CA certificate. */
4134
+ /** The Postal Code values in the subject field of the resulting certificate. */
3499
4135
  postal_code?: string[];
3500
- /** The serial number to assign to the generated private certificate. To assign a random serial number, you can
3501
- * omit this field.
4136
+ /** The serial number to assign to the generated certificate. To assign a random serial number, you can omit
4137
+ * this field.
3502
4138
  */
3503
4139
  serial_number?: string;
3504
4140
  /** The PEM-encoded certificate signing request (CSR). This field is required for the `sign_csr` action. */
@@ -3512,7 +4148,7 @@ declare namespace SecretsManagerV1 {
3512
4148
  *
3513
4149
  * The alternative names can be host names or email addresses.
3514
4150
  */
3515
- alt_names?: string[];
4151
+ alt_names?: string;
3516
4152
  /** The IP Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
3517
4153
  ip_sans?: string;
3518
4154
  /** The URI Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
@@ -3525,12 +4161,12 @@ declare namespace SecretsManagerV1 {
3525
4161
  * valid type is `UTF8`.
3526
4162
  */
3527
4163
  other_sans?: string[];
3528
- /** The time-to-live (TTL) or lease duration to assign to a private certificate.
4164
+ /** The time-to-live (TTL) to assign to a private certificate.
3529
4165
  *
3530
4166
  * The value can be supplied as a string representation of a duration in hours, such as `12h`. The value can't
3531
4167
  * exceed the `max_ttl` that is defined in the associated certificate template.
3532
4168
  */
3533
- ttl?: string;
4169
+ ttl?: any;
3534
4170
  /** The format of the returned data. */
3535
4171
  format?: string;
3536
4172
  /** The maximum path length to encode in the generated certificate. `-1` means no limit.
@@ -3559,22 +4195,22 @@ declare namespace SecretsManagerV1 {
3559
4195
  * 3) Extensions that are requested in the CSR are copied into the issued private certificate.
3560
4196
  */
3561
4197
  use_csr_values?: boolean;
3562
- /** The Organizational Unit (OU) values to define in the subject field of the resulting CA certificate. */
4198
+ /** The Organizational Unit (OU) values to define in the subject field of the resulting certificate. */
3563
4199
  ou?: string[];
3564
- /** The Organization (O) values to define in the subject field of the resulting CA certificate. */
4200
+ /** The Organization (O) values to define in the subject field of the resulting certificate. */
3565
4201
  organization?: string[];
3566
- /** The Country (C) values to define in the subject field of the resulting CA certificate. */
4202
+ /** The Country (C) values to define in the subject field of the resulting certificate. */
3567
4203
  country?: string[];
3568
- /** The Locality (L) values to define in the subject field of the resulting CA certificate. */
4204
+ /** The Locality (L) values to define in the subject field of the resulting certificate. */
3569
4205
  locality?: string[];
3570
- /** The Province (ST) values to define in the subject field of the resulting CA certificate. */
4206
+ /** The Province (ST) values to define in the subject field of the resulting certificate. */
3571
4207
  province?: string[];
3572
- /** The Street Address values in the subject field of the resulting CA certificate. */
4208
+ /** The Street Address values in the subject field of the resulting certificate. */
3573
4209
  street_address?: string[];
3574
- /** The Postal Code values in the subject field of the resulting CA certificate. */
4210
+ /** The Postal Code values in the subject field of the resulting certificate. */
3575
4211
  postal_code?: string[];
3576
- /** The serial number to assign to the generated private certificate. To assign a random serial number, you can
3577
- * omit this field.
4212
+ /** The serial number to assign to the generated certificate. To assign a random serial number, you can omit
4213
+ * this field.
3578
4214
  */
3579
4215
  serial_number?: string;
3580
4216
  /** Properties that are returned with a successful `sign` action. */
@@ -3590,7 +4226,7 @@ declare namespace SecretsManagerV1 {
3590
4226
  *
3591
4227
  * The alternative names can be host names or email addresses.
3592
4228
  */
3593
- alt_names?: string[];
4229
+ alt_names?: string;
3594
4230
  /** The IP Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
3595
4231
  ip_sans?: string;
3596
4232
  /** The URI Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
@@ -3603,12 +4239,12 @@ declare namespace SecretsManagerV1 {
3603
4239
  * valid type is `UTF8`.
3604
4240
  */
3605
4241
  other_sans?: string[];
3606
- /** The time-to-live (TTL) or lease duration to assign to a private certificate.
4242
+ /** The time-to-live (TTL) to assign to a private certificate.
3607
4243
  *
3608
4244
  * The value can be supplied as a string representation of a duration in hours, such as `12h`. The value can't
3609
4245
  * exceed the `max_ttl` that is defined in the associated certificate template.
3610
4246
  */
3611
- ttl?: string;
4247
+ ttl?: any;
3612
4248
  /** The format of the returned data. */
3613
4249
  format?: string;
3614
4250
  /** The maximum path length to encode in the generated certificate. `-1` means no limit.
@@ -3637,22 +4273,22 @@ declare namespace SecretsManagerV1 {
3637
4273
  * 3) Extensions that are requested in the CSR are copied into the issued private certificate.
3638
4274
  */
3639
4275
  use_csr_values?: boolean;
3640
- /** The Organizational Unit (OU) values to define in the subject field of the resulting CA certificate. */
4276
+ /** The Organizational Unit (OU) values to define in the subject field of the resulting certificate. */
3641
4277
  ou?: string[];
3642
- /** The Organization (O) values to define in the subject field of the resulting CA certificate. */
4278
+ /** The Organization (O) values to define in the subject field of the resulting certificate. */
3643
4279
  organization?: string[];
3644
- /** The Country (C) values to define in the subject field of the resulting CA certificate. */
4280
+ /** The Country (C) values to define in the subject field of the resulting certificate. */
3645
4281
  country?: string[];
3646
- /** The Locality (L) values to define in the subject field of the resulting CA certificate. */
4282
+ /** The Locality (L) values to define in the subject field of the resulting certificate. */
3647
4283
  locality?: string[];
3648
- /** The Province (ST) values to define in the subject field of the resulting CA certificate. */
4284
+ /** The Province (ST) values to define in the subject field of the resulting certificate. */
3649
4285
  province?: string[];
3650
- /** The Street Address values in the subject field of the resulting CA certificate. */
4286
+ /** The Street Address values in the subject field of the resulting certificate. */
3651
4287
  street_address?: string[];
3652
- /** The Postal Code values in the subject field of the resulting CA certificate. */
4288
+ /** The Postal Code values in the subject field of the resulting certificate. */
3653
4289
  postal_code?: string[];
3654
- /** The serial number to assign to the generated private certificate. To assign a random serial number, you can
3655
- * omit this field.
4290
+ /** The serial number to assign to the generated certificate. To assign a random serial number, you can omit
4291
+ * this field.
3656
4292
  */
3657
4293
  serial_number?: string;
3658
4294
  /** The intermediate certificate authority to be signed. The name must match one of the pre-configured
@@ -3668,7 +4304,7 @@ declare namespace SecretsManagerV1 {
3668
4304
  *
3669
4305
  * The alternative names can be host names or email addresses.
3670
4306
  */
3671
- alt_names?: string[];
4307
+ alt_names?: string;
3672
4308
  /** The IP Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
3673
4309
  ip_sans?: string;
3674
4310
  /** The URI Subject Alternative Names to define for the CA certificate, in a comma-delimited list. */
@@ -3681,12 +4317,12 @@ declare namespace SecretsManagerV1 {
3681
4317
  * valid type is `UTF8`.
3682
4318
  */
3683
4319
  other_sans?: string[];
3684
- /** The time-to-live (TTL) or lease duration to assign to a private certificate.
4320
+ /** The time-to-live (TTL) to assign to a private certificate.
3685
4321
  *
3686
4322
  * The value can be supplied as a string representation of a duration in hours, such as `12h`. The value can't
3687
4323
  * exceed the `max_ttl` that is defined in the associated certificate template.
3688
4324
  */
3689
- ttl?: string;
4325
+ ttl?: any;
3690
4326
  /** The format of the returned data. */
3691
4327
  format?: string;
3692
4328
  /** The maximum path length to encode in the generated certificate. `-1` means no limit.
@@ -3715,22 +4351,22 @@ declare namespace SecretsManagerV1 {
3715
4351
  * 3) Extensions that are requested in the CSR are copied into the issued private certificate.
3716
4352
  */
3717
4353
  use_csr_values?: boolean;
3718
- /** The Organizational Unit (OU) values to define in the subject field of the resulting CA certificate. */
4354
+ /** The Organizational Unit (OU) values to define in the subject field of the resulting certificate. */
3719
4355
  ou?: string[];
3720
- /** The Organization (O) values to define in the subject field of the resulting CA certificate. */
4356
+ /** The Organization (O) values to define in the subject field of the resulting certificate. */
3721
4357
  organization?: string[];
3722
- /** The Country (C) values to define in the subject field of the resulting CA certificate. */
4358
+ /** The Country (C) values to define in the subject field of the resulting certificate. */
3723
4359
  country?: string[];
3724
- /** The Locality (L) values to define in the subject field of the resulting CA certificate. */
4360
+ /** The Locality (L) values to define in the subject field of the resulting certificate. */
3725
4361
  locality?: string[];
3726
- /** The Province (ST) values to define in the subject field of the resulting CA certificate. */
4362
+ /** The Province (ST) values to define in the subject field of the resulting certificate. */
3727
4363
  province?: string[];
3728
- /** The Street Address values in the subject field of the resulting CA certificate. */
4364
+ /** The Street Address values in the subject field of the resulting certificate. */
3729
4365
  street_address?: string[];
3730
- /** The Postal Code values in the subject field of the resulting CA certificate. */
4366
+ /** The Postal Code values in the subject field of the resulting certificate. */
3731
4367
  postal_code?: string[];
3732
- /** The serial number to assign to the generated private certificate. To assign a random serial number, you can
3733
- * omit this field.
4368
+ /** The serial number to assign to the generated certificate. To assign a random serial number, you can omit
4369
+ * this field.
3734
4370
  */
3735
4371
  serial_number?: string;
3736
4372
  /** Properties that are returned with a successful `sign` action. */
@@ -3783,8 +4419,10 @@ declare namespace SecretsManagerV1 {
3783
4419
  created_by?: string;
3784
4420
  /** Updates when any part of the secret metadata is modified. The date format follows RFC 3339. */
3785
4421
  last_update_date?: string;
3786
- /** The number of versions the secret has. */
4422
+ /** The number of versions that are associated with a secret. */
3787
4423
  versions_total?: number;
4424
+ /** The number of locks that are associated with a secret. */
4425
+ locks_total?: number;
3788
4426
  /** The date the secret material expires. The date format follows RFC 3339.
3789
4427
  *
3790
4428
  * You can set an expiration date on supported secret types at their creation. If you create a secret without
@@ -3846,6 +4484,8 @@ declare namespace SecretsManagerV1 {
3846
4484
  * see [Get secret version metadata](#get-secret-version-metadata).
3847
4485
  */
3848
4486
  versions?: JsonObject[];
4487
+ /** The number of locks that are associated with a secret. */
4488
+ locks_total?: number;
3849
4489
  /** The username to assign to this secret. */
3850
4490
  username?: string;
3851
4491
  /** The password to assign to this secret. */
@@ -3883,6 +4523,8 @@ declare namespace SecretsManagerV1 {
3883
4523
  creation_date?: string;
3884
4524
  /** The unique identifier for the entity that created the secret version. */
3885
4525
  created_by?: string;
4526
+ /** The number of locks that are associated with a secret version. */
4527
+ locks_total?: number;
3886
4528
  /** Indicates whether the version of the secret was created by automatic rotation. */
3887
4529
  auto_rotated?: boolean;
3888
4530
  /** The data that is associated with the secret version. The data object contains the following fields:
@@ -3925,6 +4567,8 @@ declare namespace SecretsManagerV1 {
3925
4567
  * service API.
3926
4568
  */
3927
4569
  downloaded?: boolean;
4570
+ /** The number of locks that are associated with a secret version. */
4571
+ locks_total?: number;
3928
4572
  /** Indicates whether the version of the secret was created by automatic rotation. */
3929
4573
  auto_rotated?: boolean;
3930
4574
  }