Infisical SSH Certificate Authorities API

The SSH Certificate Authorities API from Infisical — 6 operation(s) for ssh certificate authorities.

OpenAPI Specification

infisical-ssh-certificate-authorities-api-openapi.yml Raw ↑
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:
     

# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/infisical/refs/heads/main/openapi/infisical-ssh-certificate-authorities-api-openapi.yml