---
title: "Record an operator-supplied (externally obtained) certificate's metadata"
method: POST
path: "/connections/{id}/ssl:import"
tags: ["Secure"]
---

# Record an operator-supplied (externally obtained) certificate's metadata

`POST /connections/{id}/ssl:import`

## Request

- Base URL: `https://api.customdomain.ai/v1`
- URL: `https://api.customdomain.ai/v1/connections/{id}/ssl:import`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Mirrors the status + validity window of an external certificate for display (`managed=false`, so the edge does not ACME-renew it). Private key material is an edge concern and is not handled here.

## Path parameters

- `id` string, required

## Request body

- object
  - `issuer` string
  - `not_before` string, date-time: RFC3339.
  - `not_after` string, date-time: RFC3339.

## Response `200`

Imported

- object
  - `certificate` Certificate
    - `id` string
    - `domain` string, required
    - `application_id` string
    - `status` 'pending' | 'issued' | 'renewing' | 'failed' | 'revoked', required
    - `issuer` string
    - `not_before` string, date-time
    - `not_after` string, date-time
    - `last_error` string: most recent issuance/renewal failure; empty when healthy.
    - `managed` boolean, required: true = edge auto-manages (ACME); false = operator-imported.
    - `renew_after` string, date-time
    - `updated_at` string, date-time

## Other responses

- `400`: Error envelope: {code, title, details}.
- `401`: Error envelope: {code, title, details}.
- `404`: Error envelope: {code, title, details}.
- `503`: Error envelope: {code, title, details}.

---

[API](https://skmtc.dev/customdomain/apis/customdomain-control-plane-api.md) · [All operations](https://skmtc.dev/customdomain/apis/customdomain-control-plane-api/llms.txt) · [OpenAPI document](https://skmtc.dev/customdomain/apis/customdomain-control-plane-api/revisions/34d89cb7a7cd?raw)
