Infisical PKI Certificate Templates API

The PKI Certificate Templates API from Infisical — 9 operation(s) for pki certificate templates.

OpenAPI Specification

infisical-pki-certificate-templates-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Infisical Admin PKI Certificate Templates 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: PKI Certificate Templates
paths:
  /api/v1/projects/{projectId}/certificate-templates:
    get:
      operationId: listProjectCertificateTemplates
      tags:
      - PKI Certificate Templates
      parameters:
      - schema:
          type: string
        in: path
        name: projectId
        required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  certificateTemplates:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          format: uuid
                        caId:
                          type: string
                          format: uuid
                        name:
                          type: string
                        commonName:
                          type: string
                        subjectAlternativeName:
                          type: string
                        pkiCollectionId:
                          type: string
                          format: uuid
                          nullable: true
                        ttl:
                          type: string
                        keyUsages:
                          type: array
                          items:
                            type: string
                          nullable: true
                        extendedKeyUsages:
                          type: array
                          items:
                            type: string
                          nullable: true
                        projectId:
                          type: string
                        caName:
                          type: string
                      required:
                      - id
                      - caId
                      - name
                      - commonName
                      - subjectAlternativeName
                      - ttl
                      - projectId
                      - caName
                      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/pki/certificate-templates/{certificateTemplateId}:
    get:
      tags:
      - PKI Certificate Templates
      parameters:
      - schema:
          type: string
        in: path
        name: certificateTemplateId
        required: true
        description: The ID of the certificate template to get.
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                  caId:
                    type: string
                    format: uuid
                  name:
                    type: string
                  commonName:
                    type: string
                  subjectAlternativeName:
                    type: string
                  pkiCollectionId:
                    type: string
                    format: uuid
                    nullable: true
                  ttl:
                    type: string
                  keyUsages:
                    type: array
                    items:
                      type: string
                    nullable: true
                  extendedKeyUsages:
                    type: array
                    items:
                      type: string
                    nullable: true
                  projectId:
                    type: string
                  caName:
                    type: string
                required:
                - id
                - caId
                - name
                - commonName
                - subjectAlternativeName
                - ttl
                - projectId
                - caName
                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:
      - PKI Certificate Templates
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                caId:
                  type: string
                  description: The ID of the certificate authority to update the association with the template.
                pkiCollectionId:
                  type: string
                  description: The ID of the PKI collection to update the binding to the template.
                name:
                  type: string
                  minLength: 1
                  maxLength: 64
                  description: The updated name of the template.
                commonName:
                  type: string
                  minLength: 1
                  maxLength: 100
                  description: The updated regular expression string for validating common names.
                subjectAlternativeName:
                  type: string
                  minLength: 1
                  maxLength: 100
                  description: The updated regular expression string for validating subject alternative names.
                ttl:
                  type: string
                  description: The updated max TTL for the template.
                keyUsages:
                  type: array
                  items:
                    type: string
                    enum:
                    - digitalSignature
                    - keyEncipherment
                    - nonRepudiation
                    - dataEncipherment
                    - keyAgreement
                    - keyCertSign
                    - cRLSign
                    - encipherOnly
                    - decipherOnly
                  description: The updated key usage constraint or default value for when template is used during certificate issuance.
                extendedKeyUsages:
                  type: array
                  items:
                    type: string
                    enum:
                    - clientAuth
                    - serverAuth
                    - codeSigning
                    - emailProtection
                    - timeStamping
                    - ocspSigning
                  description: The updated extended key usage constraint or default value for when template is used during certificate issuance.
              additionalProperties: false
      parameters:
      - schema:
          type: string
        in: path
        name: certificateTemplateId
        required: true
        description: The ID of the certificate template to update.
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                  caId:
                    type: string
                    format: uuid
                  name:
                    type: string
                  commonName:
                    type: string
                  subjectAlternativeName:
                    type: string
                  pkiCollectionId:
                    type: string
                    format: uuid
                    nullable: true
                  ttl:
                    type: string
                  keyUsages:
                    type: array
                    items:
                      type: string
                    nullable: true
                  extendedKeyUsages:
                    type: array
                    items:
                      type: string
                    nullable: true
                  projectId:
                    type: string
                  caName:
                    type: string
                required:
                - id
                - caId
                - name
                - commonName
                - subjectAlternativeName
                - ttl
                - projectId
                - caName
                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:
      - PKI Certificate Templates
      parameters:
      - schema:
          type: string
        in: path
        name: certificateTemplateId
        required: true
        description: The ID of the certificate template to delete.
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                  caId:
                    type: string
                    format: uuid
                  name:
                    type: string
                  commonName:
                    type: string
                  subjectAlternativeName:
                    type: string
                  pkiCollectionId:
                    type: string
                    format: uuid
                    nullable: true
                  ttl:
                    type: string
                  keyUsages:
                    type: array
                    items:
                      type: string
                    nullable: true
                  extendedKeyUsages:
                    type: array
                    items:
                      type: string
                    nullable: true
                  projectId:
                    type: string
                  caName:
                    type: string
                required:
                - id
                - caId
                - name
                - commonName
                - subjectAlternativeName
                - ttl
                - projectId
                - caName
                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/pki/certificate-templates:
    post:
      tags:
      - PKI Certificate Templates
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                caId:
                  type: string
                  description: The ID of the certificate authority to associate the template with.
                pkiCollectionId:
                  type: string
                  description: The ID of the PKI collection to bind to the template.
                name:
                  type: string
                  minLength: 1
                  maxLength: 64
                  description: The name of the template.
                commonName:
                  type: string
                  minLength: 1
                  maxLength: 100
                  description: The regular expression string to use for validating common names.
                subjectAlternativeName:
                  type: string
                  minLength: 1
                  maxLength: 100
                  description: The regular expression string to use for validating subject alternative names.
                ttl:
                  type: string
                  description: The max TTL for the template.
                keyUsages:
                  type: array
                  items:
                    type: string
                    enum:
                    - digitalSignature
                    - keyEncipherment
                    - nonRepudiation
                    - dataEncipherment
                    - keyAgreement
                    - keyCertSign
                    - cRLSign
                    - encipherOnly
                    - decipherOnly
                  default:
                  - digitalSignature
                  - keyEncipherment
                  description: The key usage constraint or default value for when template is used during certificate issuance.
                extendedKeyUsages:
                  type: array
                  items:
                    type: string
                    enum:
                    - clientAuth
                    - serverAuth
                    - codeSigning
                    - emailProtection
                    - timeStamping
                    - ocspSigning
                  default: []
                  description: The extended key usage constraint or default value for when template is used during certificate issuance.
              required:
              - caId
              - name
              - commonName
              - subjectAlternativeName
              - ttl
              additionalProperties: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                  caId:
                    type: string
                    format: uuid
                  name:
                    type: string
                  commonName:
                    type: string
                  subjectAlternativeName:
                    type: string
                  pkiCollectionId:
                    type: string
                    format: uuid
                    nullable: true
                  ttl:
                    type: string
                  keyUsages:
                    type: array
                    items:
                      type: string
                    nullable: true
                  extendedKeyUsages:
                    type: array
                    items:
                      type: string
                    nullable: true
                  projectId:
                    type: string
                  caName:
                    type: string
                required:
                - id
                - caId
                - name
                - commonName
                - subjectAlternativeName
                - ttl
                - projectId
                - caName
                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
 

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