openapi: 3.0.3 info: title: Infisical Admin SSH Certificate Authorities API description: List of all available APIs that can be consumed version: 0.0.1 servers: - url: https://us.infisical.com description: Production server (US) - url: https://eu.infisical.com description: Production server (EU) - url: http://localhost:8080 description: Local server tags: - name: SSH Certificate Authorities paths: /api/v1/ssh/ca: post: tags: - SSH Certificate Authorities description: Create SSH CA requestBody: required: true content: application/json: schema: type: object properties: projectId: type: string description: The ID of the project to create the SSH CA in. friendlyName: type: string description: A friendly name for the SSH CA. keyAlgorithm: type: string enum: - RSA_2048 - RSA_4096 - EC_prime256v1 - EC_secp384r1 - ED25519 default: ED25519 description: The type of public key algorithm and size, in bits, of the key pair for the SSH CA; required if keySource is internal. publicKey: type: string description: The public key for the SSH CA key pair; required if keySource is external. privateKey: type: string description: The private key for the SSH CA key pair; required if keySource is external. keySource: type: string enum: - internal - external default: internal description: The source of the SSH CA key pair. This can be one of internal or external. required: - projectId - friendlyName additionalProperties: false responses: '200': description: Default Response content: application/json: schema: type: object properties: ca: type: object properties: id: type: string format: uuid projectId: type: string friendlyName: type: string status: type: string keyAlgorithm: type: string keySource: type: string publicKey: type: string required: - id - projectId - friendlyName - status - keyAlgorithm - keySource - publicKey additionalProperties: false required: - ca additionalProperties: false '400': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 400 message: type: string error: type: string details: {} required: - reqId - statusCode - message - error additionalProperties: false '401': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 401 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '403': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 403 message: type: string details: {} error: type: string required: - reqId - statusCode - message - error additionalProperties: false '404': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 404 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '422': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 422 message: {} error: type: string required: - reqId - statusCode - error additionalProperties: false '500': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 500 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false /api/v1/ssh/ca/{sshCaId}: get: tags: - SSH Certificate Authorities description: Get SSH CA parameters: - schema: type: string in: path name: sshCaId required: true description: The ID of the SSH CA to get. responses: '200': description: Default Response content: application/json: schema: type: object properties: ca: type: object properties: id: type: string format: uuid projectId: type: string friendlyName: type: string status: type: string keyAlgorithm: type: string keySource: type: string publicKey: type: string required: - id - projectId - friendlyName - status - keyAlgorithm - keySource - publicKey additionalProperties: false required: - ca additionalProperties: false '400': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 400 message: type: string error: type: string details: {} required: - reqId - statusCode - message - error additionalProperties: false '401': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 401 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '403': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 403 message: type: string details: {} error: type: string required: - reqId - statusCode - message - error additionalProperties: false '404': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 404 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '422': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 422 message: {} error: type: string required: - reqId - statusCode - error additionalProperties: false '500': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 500 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false patch: tags: - SSH Certificate Authorities description: Update SSH CA requestBody: required: true content: application/json: schema: type: object properties: friendlyName: type: string description: A friendly name for the SSH CA to update to. status: type: string enum: - active - disabled description: The status of the SSH CA to update to. This can be one of active or disabled. additionalProperties: false parameters: - schema: type: string in: path name: sshCaId required: true description: The ID of the SSH CA to update. responses: '200': description: Default Response content: application/json: schema: type: object properties: ca: type: object properties: id: type: string format: uuid projectId: type: string friendlyName: type: string status: type: string keyAlgorithm: type: string keySource: type: string publicKey: type: string required: - id - projectId - friendlyName - status - keyAlgorithm - keySource - publicKey additionalProperties: false required: - ca additionalProperties: false '400': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 400 message: type: string error: type: string details: {} required: - reqId - statusCode - message - error additionalProperties: false '401': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 401 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '403': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 403 message: type: string details: {} error: type: string required: - reqId - statusCode - message - error additionalProperties: false '404': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 404 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '422': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 422 message: {} error: type: string required: - reqId - statusCode - error additionalProperties: false '500': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 500 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false delete: tags: - SSH Certificate Authorities description: Delete SSH CA parameters: - schema: type: string in: path name: sshCaId required: true description: The ID of the SSH CA to delete. responses: '200': description: Default Response content: application/json: schema: type: object properties: ca: type: object properties: id: type: string format: uuid projectId: type: string friendlyName: type: string status: type: string keyAlgorithm: type: string keySource: type: string required: - id - projectId - friendlyName - status - keyAlgorithm - keySource additionalProperties: false required: - ca additionalProperties: false '400': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 400 message: type: string error: type: string details: {} required: - reqId - statusCode - message - error additionalProperties: false '401': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 401 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '403': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 403 message: type: string details: {} error: type: string required: - reqId - statusCode - message - error additionalProperties: false '404': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 404 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '422': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 422 message: {} error: type: string required: - reqId - statusCode - error additionalProperties: false '500': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 500 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false /api/v1/ssh/ca/{sshCaId}/public-key: get: tags: - SSH Certificate Authorities description: Get public key of SSH CA parameters: - schema: type: string in: path name: sshCaId required: true description: The ID of the SSH CA to get the public key for. responses: '200': description: Default Response content: application/json: schema: type: string '400': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 400 message: type: string error: type: string details: {} required: - reqId - statusCode - message - error additionalProperties: false '401': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 401 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '403': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 403 message: type: string details: {} error: type: string required: - reqId - statusCode - message - error additionalProperties: false '404': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 404 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '422': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 422 message: {} error: type: string required: - reqId - statusCode - error additionalProperties: false '500': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 500 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false /api/v1/ssh/ca/{sshCaId}/certificate-templates: get: tags: - SSH Certificate Authorities description: Get list of certificate templates for the SSH CA parameters: - schema: type: string in: path name: sshCaId required: true description: The ID of the SSH CA to get the certificate templates for. responses: '200': description: Default Response content: application/json: schema: type: object properties: certificateTemplates: type: array items: type: object properties: id: type: string format: uuid sshCaId: type: string format: uuid status: type: string name: type: string ttl: type: string maxTTL: type: string allowedUsers: type: array items: type: string allowedHosts: type: array items: type: string allowCustomKeyIds: type: boolean allowUserCertificates: type: boolean allowHostCertificates: type: boolean required: - id - sshCaId - status - name - ttl - maxTTL - allowedUsers - allowedHosts - allowCustomKeyIds - allowUserCertificates - allowHostCertificates additionalProperties: false required: - certificateTemplates additionalProperties: false '400': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 400 message: type: string error: type: string details: {} required: - reqId - statusCode - message - error additionalProperties: false '401': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 401 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '403': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 403 message: type: string details: {} error: type: string required: - reqId - statusCode - message - error additionalProperties: false '404': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 404 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '422': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 422 message: {} error: type: string required: - reqId - statusCode - error additionalProperties: false '500': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 500 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false /api/v1/projects/{projectId}/ssh-cas: get: operationId: listProjectSshCertificateAuthorities tags: - SSH Certificate Authorities parameters: - schema: type: string in: path name: projectId required: true description: The ID of the project to list SSH CAs for. responses: '200': description: Default Response content: application/json: schema: type: object properties: cas: type: array items: type: object properties: id: type: string format: uuid projectId: type: string friendlyName: type: string status: type: string keyAlgorithm: type: string keySource: type: string required: - id - projectId - friendlyName - status - keyAlgorithm - keySource additionalProperties: false required: - cas additionalProperties: false '400': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 400 message: type: string error: type: string details: {} required: - reqId - statusCode - message - error additionalProperties: false '401': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 401 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '403': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 403 message: type: string details: {} error: type: string required: - reqId - statusCode - message - error additionalProperties: false '404': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 404 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '422': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 422 message: {} error: type: string required: - reqId - statusCode - error additionalProperties: false '500': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 500 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false /api/v2/workspace/{projectId}/ssh-cas: get: tags: - SSH Certificate Authorities parameters: - schema: type: string in: path name: projectId required: true description: The ID of the project to list SSH CAs for. responses: '200': description: Default Response content: application/json: schema: type: object properties: cas: type: array items: type: object properties: id: type: string format: uuid projectId: type: string friendlyName: type: string status: type: string keyAlgorithm: type: string keySource: type: string required: - id - projectId - friendlyName - status - keyAlgorithm - keySource additionalProperties: false required: - cas additionalProperties: false '400': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 400 message: type: string error: type: string details: {} required: - reqId - statusCode - message - error additionalProperties: false '401': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 401 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '403': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 403 message: type: string details: {} error: type: string required: - reqId - statusCode - message - error additionalProperties: false '404': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 404 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false '422': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 422 message: {} error: type: string required: - reqId - statusCode - error additionalProperties: false '500': description: Default Response content: application/json: schema: type: object properties: reqId: type: string statusCode: type: number enum: - 500 message: type: string error: type: string required: - reqId - statusCode - message - error additionalProperties: false components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: An access token in Infisical