API7 Docs
API7 GatewayAPI7 Enterprise Admin APIsCreate a CA certificate

Create a CA certificate

POST /apisix/admin/ca_certificates

POST /apisix/admin/ca_certificates

Interactive request editor loads with JavaScript.

Authorization

X-API-KEY<token>

In: header

Query Parameters

gateway_group_id*string

Gateway group ID. Optional when using the gateway group admin key to authenticate.

Length1 <= length

Request Body

application/json

The certificate description.

Response Body

application/json

curl -X POST "$API_BASE_URL/apisix/admin/ca_certificates?gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335" \  -H "Content-Type: application/json" \  -d '{}'

CA certificate created successfully.

{
  "value": {
    "name": "us-west-rsc",
    "desc": "Object description.",
    "cert": "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----",
    "labels": {
      "version": "v2",
      "env": "prod"
    },
    "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
    "created_at": 1742288232,
    "updated_at": 1742288235,
    "associated_snis": [
      "string"
    ],
    "exptime": 1735680000,
    "validity_start": 1714540800,
    "validity_end": 1730419200
  }
}
Complete operation details and schema variants

POST /apisix/admin/ca_certificates

Create a CA certificate

Create a CA certificate used to verify client certificates during mTLS handshakes in the gateway group. Required IAM Permission: Action gateway:CreateCertificate, Resource arn:api7:gateway:gatewaygroup/%s

Parameters

  • gateway_group_id (query, string, required): Gateway group ID. Optional when using the gateway group admin key to authenticate.

Request body

Content type: application/json

  • allOf variant 1
  • name (string, optional): The object name.
  • desc (string, optional): The object description.
  • cert (string, optional): The certificate in PEM format.
  • labels (object, optional): Key-value pairs of labels.

Responses

  • 200: CA certificate created successfully.
  • allOf variant 1
  • value (object, optional): The specific resource.
  • allOf variant 2
  • value (object, optional): The Certificate response format, with filtering the sensitive fields and some other fields.
  • allOf variant 1
  • value.name (string, optional): The object name.
  • value.desc (string, optional): The object description.
  • value.cert (string, optional): The certificate in PEM format.
  • value.labels (object, optional): Key-value pairs of labels.
  • allOf variant 2
  • value.id (string, optional): The object ID.
  • value.created_at (integer, optional): The object created timestamp.
  • value.updated_at (integer, optional): The object updated timestamp.
  • value.associated_snis (array, optional): The SNI IDs associated with the certificate.
  • value.exptime (integer, optional): The SSL certificate expire time.
  • value.validity_start (integer, optional): The earliest time when the SSL certificate is used.
  • value.validity_end (integer, optional): The latest time when the SSL certificate is used.

cURL

curl -X POST '$API_BASE_URL/apisix/admin/ca_certificates'