{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://api-evangelist.github.io/infisical/json-schema/infisical-dynamic-secret-create.json", "title": "Dynamic Secret Create", "description": "JSON Schema for the Infisical dynamic secret create operation.", "type": "object", "properties": { "projectSlug": { "type": "string", "minLength": 1, "description": "The slug of the project to create dynamic secret in." }, "provider": { "anyOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "sql-database" ] }, "inputs": { "type": "object", "properties": { "client": { "type": "string", "enum": [ "postgres", "mysql2", "oracledb", "mssql", "sap-ase", "vertica" ] }, "host": { "type": "string" }, "port": { "type": "number" }, "database": { "type": "string" }, "username": { "type": "string" }, "password": { "type": "string" }, "passwordRequirements": { "type": "object", "properties": { "length": { "type": "number", "minimum": 1, "maximum": 250 }, "required": { "type": "object", "properties": { "lowercase": { "type": "number", "minimum": 0 }, "uppercase": { "type": "number", "minimum": 0 }, "digits": { "type": "number", "minimum": 0 }, "symbols": { "type": "number", "minimum": 0 } }, "required": [ "lowercase", "uppercase", "digits", "symbols" ], "additionalProperties": false }, "allowedSymbols": { "type": "string" } }, "required": [ "length", "required" ], "additionalProperties": false, "description": "Password generation requirements" }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" }, "renewStatement": { "type": "string" }, "ca": { "type": "string" }, "sslEnabled": { "type": "boolean" }, "sslRejectUnauthorized": { "type": "boolean", "default": true }, "gatewayId": { "type": "string", "nullable": true }, "gatewayPoolId": { "type": "string", "nullable": true } }, "required": [ "client", "host", "port", "database", "username", "password", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "clickhouse" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string" }, "port": { "type": "number" }, "database": { "type": "string" }, "username": { "type": "string" }, "password": { "type": "string" }, "passwordRequirements": { "type": "object", "properties": { "length": { "type": "number", "minimum": 1, "maximum": 250 }, "required": { "type": "object", "properties": { "lowercase": { "type": "number", "minimum": 0 }, "uppercase": { "type": "number", "minimum": 0 }, "digits": { "type": "number", "minimum": 0 }, "symbols": { "type": "number", "minimum": 0 } }, "required": [ "lowercase", "uppercase", "digits", "symbols" ], "additionalProperties": false }, "allowedSymbols": { "type": "string" } }, "required": [ "length", "required" ], "additionalProperties": false, "description": "Password generation requirements" }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" }, "renewStatement": { "type": "string" }, "ca": { "type": "string" }, "gatewayId": { "type": "string", "nullable": true }, "gatewayPoolId": { "type": "string", "nullable": true } }, "required": [ "host", "port", "database", "username", "password", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "cassandra" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string" }, "port": { "type": "number" }, "localDataCenter": { "type": "string", "minLength": 1 }, "keyspace": { "type": "string" }, "username": { "type": "string" }, "password": { "type": "string" }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" }, "renewStatement": { "type": "string" }, "ca": { "type": "string" }, "sslRejectUnauthorized": { "type": "boolean", "default": true } }, "required": [ "host", "port", "localDataCenter", "username", "password", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "sap-ase" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string" }, "port": { "type": "number" }, "database": { "type": "string" }, "username": { "type": "string" }, "password": { "type": "string" }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" } }, "required": [ "host", "port", "database", "username", "password", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "aws-iam" ] }, "inputs": { "anyOf": [ { "type": "object", "properties": { "method": { "type": "string", "enum": [ "access-key" ] }, "credentialType": { "type": "string", "enum": [ "iam-user", "temporary-credentials" ], "default": "iam-user" }, "accessKey": { "type": "string", "minLength": 1 }, "secretAccessKey": { "type": "string", "minLength": 1 }, "region": { "type": "string", "minLength": 1 }, "awsPath": { "type": "string" }, "permissionBoundaryPolicyArn": { "type": "string" }, "policyDocument": { "type": "string" }, "userGroups": { "type": "string" }, "policyArns": { "type": "string" }, "tags": { "type": "array", "items": { "type": "object", "properties": { "key": { "type": "string", "minLength": 1, "maxLength": 255 }, "value": { "type": "string", "maxLength": 1020, "default": "" } }, "required": [ "key" ], "additionalProperties": false } } }, "required": [ "method", "accessKey", "secretAccessKey", "region" ], "additionalProperties": false }, { "type": "object", "properties": { "method": { "type": "string", "enum": [ "assume-role" ] }, "credentialType": { "type": "string", "enum": [ "iam-user", "temporary-credentials" ], "default": "iam-user" }, "roleArn": { "type": "string", "minLength": 1 }, "region": { "type": "string", "minLength": 1 }, "awsPath": { "type": "string" }, "permissionBoundaryPolicyArn": { "type": "string" }, "policyDocument": { "type": "string" }, "userGroups": { "type": "string" }, "policyArns": { "type": "string" }, "tags": { "type": "array", "items": { "type": "object", "properties": { "key": { "type": "string", "minLength": 1, "maxLength": 255 }, "value": { "type": "string", "maxLength": 1020, "default": "" } }, "required": [ "key" ], "additionalProperties": false } } }, "required": [ "method", "roleArn", "region" ], "additionalProperties": false }, { "type": "object", "properties": { "method": { "type": "string", "enum": [ "irsa" ] }, "credentialType": { "type": "string", "enum": [ "iam-user", "temporary-credentials" ], "default": "iam-user" }, "region": { "type": "string", "minLength": 1 }, "awsPath": { "type": "string" }, "permissionBoundaryPolicyArn": { "type": "string" }, "policyDocument": { "type": "string" }, "userGroups": { "type": "string" }, "policyArns": { "type": "string" }, "tags": { "type": "array", "items": { "type": "object", "properties": { "key": { "type": "string", "minLength": 1, "maxLength": 255 }, "value": { "type": "string", "maxLength": 1020, "default": "" } }, "required": [ "key" ], "additionalProperties": false } } }, "required": [ "method", "region" ], "additionalProperties": false } ] } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "redis" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string" }, "port": { "type": "number" }, "username": { "type": "string" }, "password": { "type": "string" }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" }, "renewStatement": { "type": "string" }, "ca": { "type": "string" }, "sslRejectUnauthorized": { "type": "boolean", "default": true } }, "required": [ "host", "port", "username", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "sap-hana" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string" }, "port": { "type": "number" }, "username": { "type": "string" }, "password": { "type": "string" }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" }, "renewStatement": { "type": "string" }, "ca": { "type": "string" }, "sslRejectUnauthorized": { "type": "boolean", "default": true } }, "required": [ "host", "port", "username", "password", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "aws-elasticache" ] }, "inputs": { "type": "object", "properties": { "clusterName": { "type": "string", "minLength": 1 }, "accessKeyId": { "type": "string", "minLength": 1 }, "secretAccessKey": { "type": "string", "minLength": 1 }, "region": { "type": "string" }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" } }, "required": [ "clusterName", "accessKeyId", "secretAccessKey", "region", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "aws-memorydb" ] }, "inputs": { "type": "object", "properties": { "clusterName": { "type": "string", "minLength": 1 }, "auth": { "anyOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "iam" ] }, "accessKeyId": { "type": "string", "minLength": 1 }, "secretAccessKey": { "type": "string", "minLength": 1 } }, "required": [ "type", "accessKeyId", "secretAccessKey" ], "additionalProperties": false } ] }, "region": { "type": "string", "minLength": 1 }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" } }, "required": [ "clusterName", "auth", "region", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "mongo-db-atlas" ] }, "inputs": { "type": "object", "properties": { "adminPublicKey": { "type": "string", "minLength": 1, "description": "Admin user public api key" }, "adminPrivateKey": { "type": "string", "minLength": 1, "description": "Admin user private api key" }, "groupId": { "type": "string", "minLength": 1, "description": "Unique 24-hexadecimal digit string that identifies your project. This is same as project id" }, "roles": { "type": "array", "items": { "type": "object", "properties": { "collectionName": { "type": "string", "description": "Collection on which this role applies." }, "databaseName": { "type": "string", "minLength": 1, "description": "Database to which the user is granted access privileges." }, "roleName": { "type": "string", "minLength": 1, "description": " Enum: \"atlasAdmin\" \"backup\" \"clusterMonitor\" \"dbAdmin\" \"dbAdminAnyDatabase\" \"enableSharding\" \"read\" \"readAnyDatabase\" \"readWrite\" \"readWriteAnyDatabase\" \"\".Human-readable label that identifies a group of privileges assigned to a database user. This value can either be a built-in role or a custom role." } }, "required": [ "databaseName", "roleName" ], "additionalProperties": false }, "minItems": 1 }, "scopes": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1, "description": "Human-readable label that identifies the cluster or MongoDB Atlas Data Lake that this database user can access." }, "type": { "type": "string", "minLength": 1, "description": "Category of resource that this database user can access. Enum: CLUSTER, DATA_LAKE, STREAM" } }, "required": [ "name", "type" ], "additionalProperties": false } } }, "required": [ "adminPublicKey", "adminPrivateKey", "groupId", "roles", "scopes" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "elastic-search" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string", "minLength": 1 }, "port": { "type": "number" }, "roles": { "type": "array", "items": { "type": "string", "minLength": 1 }, "minItems": 1 }, "auth": { "anyOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "user" ] }, "username": { "type": "string" }, "password": { "type": "string" } }, "required": [ "type", "username", "password" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "api-key" ] }, "apiKey": { "type": "string" }, "apiKeyId": { "type": "string" } }, "required": [ "type", "apiKey", "apiKeyId" ], "additionalProperties": false } ] }, "ca": { "type": "string" }, "sslRejectUnauthorized": { "type": "boolean", "default": true } }, "required": [ "host", "port", "roles", "auth" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "mongo-db" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string", "minLength": 1 }, "port": { "type": "number", "nullable": true }, "username": { "type": "string", "minLength": 1 }, "password": { "type": "string", "minLength": 1 }, "database": { "type": "string", "minLength": 1 }, "ca": { "type": "string", "nullable": true }, "sslRejectUnauthorized": { "type": "boolean", "default": true }, "roles": { "type": "array", "items": { "type": "string" }, "minItems": 1, "description": "Enum: \"atlasAdmin\" \"backup\" \"clusterMonitor\" \"dbAdmin\" \"dbAdminAnyDatabase\" \"enableSharding\" \"read\" \"readAnyDatabase\" \"readWrite\" \"readWriteAnyDatabase\" \"\".Human-readable label that identifies a group of privileges assigned to a database user. This value can either be a built-in role or a custom role." } }, "required": [ "host", "username", "password", "database", "roles" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "rabbit-mq" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string", "minLength": 1 }, "port": { "type": "number" }, "tags": { "type": "array", "items": { "type": "string" }, "default": [] }, "username": { "type": "string", "minLength": 1 }, "password": { "type": "string", "minLength": 1 }, "ca": { "type": "string" }, "sslRejectUnauthorized": { "type": "boolean", "default": true }, "virtualHost": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "permissions": { "type": "object", "properties": { "read": { "type": "string", "minLength": 1 }, "write": { "type": "string", "minLength": 1 }, "configure": { "type": "string", "minLength": 1 } }, "required": [ "read", "write", "configure" ], "additionalProperties": false } }, "required": [ "name", "permissions" ], "additionalProperties": false } }, "required": [ "host", "port", "username", "password", "virtualHost" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "azure-entra-id" ] }, "inputs": { "type": "object", "properties": { "tenantId": { "type": "string", "minLength": 1 }, "userId": { "type": "string", "minLength": 1 }, "email": { "type": "string", "minLength": 1 }, "applicationId": { "type": "string", "minLength": 1 }, "clientSecret": { "type": "string", "minLength": 1 } }, "required": [ "tenantId", "userId", "email", "applicationId", "clientSecret" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "azure-sql-database" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string" }, "port": { "type": "number" }, "database": { "type": "string" }, "masterDatabase": { "type": "string", "default": "master" }, "username": { "type": "string" }, "password": { "type": "string" }, "passwordRequirements": { "type": "object", "properties": { "length": { "type": "number", "minimum": 1, "maximum": 250 }, "required": { "type": "object", "properties": { "lowercase": { "type": "number", "minimum": 0 }, "uppercase": { "type": "number", "minimum": 0 }, "digits": { "type": "number", "minimum": 0 }, "symbols": { "type": "number", "minimum": 0 } }, "required": [ "lowercase", "uppercase", "digits", "symbols" ], "additionalProperties": false }, "allowedSymbols": { "type": "string" } }, "required": [ "length", "required" ], "additionalProperties": false, "description": "Password generation requirements" }, "masterCreationStatement": { "type": "string" }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" }, "renewStatement": { "type": "string" }, "ca": { "type": "string" }, "sslEnabled": { "type": "boolean" }, "sslRejectUnauthorized": { "type": "boolean", "default": true }, "gatewayId": { "type": "string", "nullable": true }, "gatewayPoolId": { "type": "string", "nullable": true } }, "required": [ "host", "port", "database", "username", "password", "masterCreationStatement", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "ldap" ] }, "inputs": { "anyOf": [ { "type": "object", "properties": { "url": { "type": "string", "minLength": 1 }, "binddn": { "type": "string", "minLength": 1 }, "bindpass": { "type": "string", "minLength": 1 }, "ca": { "type": "string" }, "sslRejectUnauthorized": { "type": "boolean", "default": true }, "credentialType": { "type": "string", "enum": [ "dynamic" ], "default": "dynamic" }, "creationLdif": { "type": "string", "minLength": 1 }, "revocationLdif": { "type": "string", "minLength": 1 }, "rollbackLdif": { "type": "string" } }, "required": [ "url", "binddn", "bindpass", "creationLdif", "revocationLdif" ], "additionalProperties": false }, { "type": "object", "properties": { "url": { "type": "string", "minLength": 1 }, "binddn": { "type": "string", "minLength": 1 }, "bindpass": { "type": "string", "minLength": 1 }, "ca": { "type": "string" }, "sslRejectUnauthorized": { "type": "boolean", "default": true }, "credentialType": { "type": "string", "enum": [ "static" ] }, "rotationLdif": { "type": "string", "minLength": 1 } }, "required": [ "url", "binddn", "bindpass", "credentialType", "rotationLdif" ], "additionalProperties": false } ] } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "snowflake" ] }, "inputs": { "type": "object", "properties": { "accountId": { "type": "string", "minLength": 1 }, "orgId": { "type": "string", "minLength": 1 }, "username": { "type": "string", "minLength": 1 }, "password": { "type": "string", "minLength": 1 }, "creationStatement": { "type": "string", "minLength": 1 }, "revocationStatement": { "type": "string", "minLength": 1 }, "renewStatement": { "type": "string" } }, "required": [ "accountId", "orgId", "username", "password", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "totp" ] }, "inputs": { "anyOf": [ { "type": "object", "properties": { "configType": { "type": "string", "enum": [ "url" ] }, "url": { "type": "string", "format": "uri", "minLength": 1 } }, "required": [ "configType", "url" ], "additionalProperties": false }, { "type": "object", "properties": { "configType": { "type": "string", "enum": [ "manual" ] }, "secret": { "type": "string", "minLength": 1 }, "period": { "type": "number" }, "algorithm": { "type": "string", "enum": [ "sha1", "sha256", "sha512" ] }, "digits": { "type": "number" } }, "required": [ "configType", "secret" ], "additionalProperties": false } ] } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "kubernetes" ] }, "inputs": { "anyOf": [ { "type": "object", "properties": { "url": { "type": "string" }, "clusterToken": { "type": "string" }, "ca": { "type": "string" }, "sslEnabled": { "type": "boolean", "default": false }, "sslRejectUnauthorized": { "type": "boolean", "default": true }, "credentialType": { "type": "string", "enum": [ "static" ] }, "serviceAccountName": { "type": "string", "minLength": 1 }, "namespace": { "type": "string", "minLength": 1 }, "gatewayId": { "type": "string", "nullable": true }, "gatewayPoolId": { "type": "string", "nullable": true }, "audiences": { "type": "array", "items": { "type": "string", "minLength": 1 } }, "authMethod": { "type": "string", "enum": [ "gateway", "api" ], "default": "api" } }, "required": [ "credentialType", "serviceAccountName", "namespace", "audiences" ], "additionalProperties": false }, { "type": "object", "properties": { "url": { "type": "string", "format": "uri" }, "clusterToken": { "type": "string" }, "ca": { "type": "string" }, "sslEnabled": { "type": "boolean", "default": false }, "sslRejectUnauthorized": { "type": "boolean", "default": true }, "credentialType": { "type": "string", "enum": [ "dynamic" ] }, "namespace": { "type": "string", "minLength": 1 }, "gatewayId": { "type": "string", "nullable": true }, "gatewayPoolId": { "type": "string", "nullable": true }, "audiences": { "type": "array", "items": { "type": "string", "minLength": 1 } }, "roleType": { "type": "string", "enum": [ "cluster-role", "role" ] }, "role": { "type": "string", "minLength": 1 }, "authMethod": { "type": "string", "enum": [ "gateway", "api" ], "default": "api" } }, "required": [ "credentialType", "namespace", "audiences", "roleType", "role" ], "additionalProperties": false } ] } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "vertica" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string" }, "port": { "type": "number" }, "username": { "type": "string" }, "password": { "type": "string" }, "database": { "type": "string" }, "gatewayId": { "type": "string", "nullable": true }, "gatewayPoolId": { "type": "string", "nullable": true }, "creationStatement": { "type": "string" }, "revocationStatement": { "type": "string" }, "passwordRequirements": { "type": "object", "properties": { "length": { "type": "number", "minimum": 1, "maximum": 250 }, "required": { "type": "object", "properties": { "lowercase": { "type": "number", "minimum": 0 }, "uppercase": { "type": "number", "minimum": 0 }, "digits": { "type": "number", "minimum": 0 }, "symbols": { "type": "number", "minimum": 0 } }, "required": [ "lowercase", "uppercase", "digits", "symbols" ], "additionalProperties": false }, "allowedSymbols": { "type": "string" } }, "required": [ "length", "required" ], "additionalProperties": false, "description": "Password generation requirements" } }, "required": [ "host", "port", "username", "password", "database", "creationStatement", "revocationStatement" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "gcp-iam" ] }, "inputs": { "type": "object", "properties": { "serviceAccountEmail": { "type": "string", "format": "email", "minLength": 1, "maxLength": 128 } }, "required": [ "serviceAccountEmail" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "github" ] }, "inputs": { "type": "object", "properties": { "appId": { "type": "number", "minimum": 1, "description": "The ID of your GitHub App." }, "installationId": { "type": "number", "minimum": 1, "description": "The ID of the GitHub App installation." }, "privateKey": { "type": "string", "minLength": 1, "description": "The private key generated for your GitHub App." } }, "required": [ "appId", "installationId", "privateKey" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "couchbase" ] }, "inputs": { "type": "object", "properties": { "url": { "type": "string", "format": "uri", "minLength": 1, "description": "Couchbase Cloud API URL" }, "orgId": { "type": "string", "minLength": 1, "description": "Organization ID" }, "projectId": { "type": "string", "minLength": 1, "description": "Project ID" }, "clusterId": { "type": "string", "minLength": 1, "description": "Cluster ID" }, "roles": { "type": "array", "items": { "type": "string", "minLength": 1 }, "minItems": 1, "description": "Roles to assign to the user" }, "buckets": { "anyOf": [ { "type": "string", "minLength": 1, "default": "*" }, { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1, "description": "Bucket name" }, "scopes": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1, "description": "Scope name" }, "collections": { "type": "array", "items": { "type": "string", "minLength": 1 }, "description": "Collection names" } }, "required": [ "name" ], "additionalProperties": false }, "description": "Scopes within the bucket" } }, "required": [ "name" ], "additionalProperties": false } } ], "default": "*", "description": "Bucket configuration: '*' for all buckets, scopes, and collections or array of bucket objects with specific scopes and collections" }, "passwordRequirements": { "type": "object", "properties": { "length": { "type": "number", "minimum": 8, "maximum": 128 }, "required": { "type": "object", "properties": { "lowercase": { "type": "number", "minimum": 1 }, "uppercase": { "type": "number", "minimum": 1 }, "digits": { "type": "number", "minimum": 1 }, "symbols": { "type": "number", "minimum": 1 } }, "required": [ "lowercase", "uppercase", "digits", "symbols" ], "additionalProperties": false }, "allowedSymbols": { "type": "string" } }, "required": [ "length", "required" ], "additionalProperties": false, "description": "Password generation requirements for Couchbase" }, "auth": { "type": "object", "properties": { "apiKey": { "type": "string", "minLength": 1, "description": "Couchbase Cloud API Key" } }, "required": [ "apiKey" ], "additionalProperties": false } }, "required": [ "url", "orgId", "projectId", "clusterId", "roles", "auth" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "milvus" ] }, "inputs": { "type": "object", "properties": { "host": { "type": "string", "minLength": 1, "description": "Milvus endpoint host; uses https when the host includes https:// or a CA is provided, http when the host includes http://, otherwise http (e.g. localhost)." }, "port": { "type": "integer", "minimum": 1, "maximum": 65535 }, "username": { "type": "string", "minLength": 1, "description": "Admin username used to manage Milvus users and roles" }, "password": { "type": "string", "minLength": 1, "description": "Admin password used to manage Milvus users and roles" }, "database": { "type": "string", "minLength": 1, "default": "default", "description": "Default Milvus database used for privilege grants" }, "privileges": { "type": "array", "items": { "type": "object", "properties": { "objectType": { "type": "string", "minLength": 1, "description": "Milvus object type (e.g. \"Collection\", \"Database\", \"Global\", \"User\", \"Cluster\")" }, "objectName": { "type": "string", "minLength": 1, "default": "*", "description": "Name of the target object, or \"*\" to apply to all" }, "privilege": { "type": "string", "minLength": 1, "description": "Milvus privilege name or built-in privilege group (e.g. \"Search\", \"COLL_RO\", \"DB_Admin\")" }, "dbName": { "type": "string", "minLength": 1, "description": "Optional database override for this privilege" } }, "required": [ "objectType", "privilege" ], "additionalProperties": false }, "default": [], "description": "Privileges granted to an ephemeral role bound to the lease user. Leave empty to create the user with only the built-in public role." }, "ca": { "type": "string" }, "sslRejectUnauthorized": { "type": "boolean", "default": true }, "gatewayId": { "type": "string", "nullable": true }, "gatewayPoolId": { "type": "string", "nullable": true } }, "required": [ "host", "port", "username", "password" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "ssh" ] }, "inputs": { "type": "object", "properties": { "principals": { "type": "array", "items": { "type": "string", "minLength": 1 }, "minItems": 1 }, "keyAlgorithm": { "type": "string", "enum": [ "RSA_2048", "RSA_4096", "EC_prime256v1", "EC_secp384r1", "ED25519" ], "default": "ED25519" } }, "required": [ "principals" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "ibm-api-connect" ] }, "inputs": { "type": "object", "properties": { "clientId": { "type": "string", "minLength": 1 }, "clientSecret": { "type": "string", "minLength": 1 }, "instanceUrl": { "type": "string", "format": "uri", "minLength": 1 }, "apiKey": { "type": "string", "minLength": 1 }, "orgId": { "type": "string", "minLength": 1 }, "catalogId": { "type": "string", "minLength": 1 }, "consumerOrgId": { "type": "string", "minLength": 1 }, "appId": { "type": "string", "minLength": 1 }, "gatewayId": { "type": "string", "nullable": true }, "gatewayPoolId": { "type": "string", "nullable": true } }, "required": [ "clientId", "clientSecret", "instanceUrl", "apiKey", "orgId", "catalogId", "consumerOrgId", "appId" ], "additionalProperties": false } }, "required": [ "type", "inputs" ], "additionalProperties": false } ], "description": "The type of dynamic secret." }, "defaultTTL": { "type": "string", "description": "The default TTL that will be applied for all the leases." }, "maxTTL": { "type": "string", "description": "The maximum limit a TTL can be leases or renewed.", "nullable": true }, "path": { "type": "string", "description": "The path to create the dynamic secret in.", "default": "/" }, "environmentSlug": { "type": "string", "minLength": 1, "description": "The slug of the environment to create the dynamic secret in." }, "name": { "type": "string", "minLength": 1, "maxLength": 64, "description": "The name of the dynamic secret." }, "metadata": { "type": "array", "items": { "type": "object", "properties": { "key": { "type": "string", "minLength": 1, "maxLength": 255 }, "value": { "type": "string", "maxLength": 1020, "default": "" } }, "required": [ "key" ], "additionalProperties": false } }, "usernameTemplate": { "type": "string", "maxLength": 255 } }, "required": [ "projectSlug", "provider", "defaultTTL", "environmentSlug", "name" ], "additionalProperties": false }