---
title: "POST /api/v1/checks/add-ssl-cert/"
method: POST
path: "/api/v1/checks/add-ssl-cert/"
tags: ["checks"]
---

# POST /api/v1/checks/add-ssl-cert/

`POST /api/v1/checks/add-ssl-cert/`

## Request

- Base URL: `https://uptime.com` (the document declares no server; this is the origin it was published from)
- URL: `https://uptime.com/api/v1/checks/add-ssl-cert/`
- Auth: none declared
- TypeScript: <https://skmtc.dev/uptime/apis/uptime-com-openapi-schema/docs/api/v1/checks/add-ssl-cert/post.ts> (a function with typed inputs; its response is checked against the schema)

Create a new SSL Certificate check

## Request body

- ChecksSSLCERT
  - `pk` integer
  - `url` string
  - `stats_url` string, uri
  - `alerts_url` string, uri
  - `share_url` string, uri
  - `name` string
  - `cached_response_time` number
  - `contact_groups` string[], required: Array of contact names or IDs associated with this check. Use GET /api/v1/contacts/ to list available contacts.
  - `created_at` string, date-time
  - `modified_at` string, date-time
  - `locations` string[]: Array of locations associated with this check. Locations are auto-assigned for this check type if left empty or omitted. Use GET /api/v1/checks/locations/ to list available locations.
  - `tags` string[]: Array of tag names or IDs associated with this check. Use GET /api/v1/check-tags/ to list available tags.
  - `check_type` string
  - `escalations` string
  - `monitoring_service_type` string
  - `is_paused` boolean
  - `send_resolved_notifications` boolean: Send resolve notifications when pausing the check
  - `is_under_maintenance` string
  - `state_is_up` boolean
  - `state_changed_at` string, date-time
  - `maintenance_schedules` integer[]: Array of maintenance schedule IDs associated with this check.
  - `msp_address` string, required
  - `msp_port` integer, nullable
  - `msp_threshold` integer, nullable, required
  - `msp_num_retries` integer
  - `msp_uptime_sla` string, decimal
  - `msp_notes` string
  - `sslconfig` object, nullable
    - `ssl_cert_protocol` 'https' | 'ftp' | 'ftps' | 'http' | 'h2' | 'imap' | 'imaps' | 'irc' | 'ircs' | 'ldap' | 'ldaps' | 'mysql' | 'pop3' | 'pop3s' | 'postgres' | 'sieve' | 'smtp' | 'smtps' | 'xmpp' | 'xmpp-server': Protocol to use
    - `ssl_cert_crl` boolean: CRL fallback when OSCP is not available
    - `ssl_cert_first_element_only` boolean: Check only the first certificate in the chain
    - `ssl_cert_match` string: Additional names to match in certificate
    - `ssl_cert_issuer` string: Issuer to match in certificate
    - `ssl_cert_resolve` string: Force host IP address resolution
    - `ssl_cert_minimum_ssl_tls_version` 'sslv3' | 'tlsv1' | 'tlsv11' | 'tlsv12' | 'tlsv13': Minimum SSL/TLS versions
    - `ssl_cert_fingerprint` string: Match certificate fingerprint (SHA1)
    - `ssl_cert_selfsigned` boolean: Allow self-signed certificates
    - `ssl_cert_file` string, uri, nullable: Validate certificate/CRL at URL
    - `ssl_ignore_authority_warnings` boolean: Ignore authority warnings (check expiration only)
    - `ssl_ignore_sct` boolean: Do not check for signed certificate timestamps (SCT)

## Response `200`

- ChecksSSLCERT
  - `pk` integer
  - `url` string
  - `stats_url` string, uri
  - `alerts_url` string, uri
  - `share_url` string, uri
  - `name` string
  - `cached_response_time` number
  - `contact_groups` string[], required: Array of contact names or IDs associated with this check. Use GET /api/v1/contacts/ to list available contacts.
  - `created_at` string, date-time
  - `modified_at` string, date-time
  - `locations` string[]: Array of locations associated with this check. Locations are auto-assigned for this check type if left empty or omitted. Use GET /api/v1/checks/locations/ to list available locations.
  - `tags` string[]: Array of tag names or IDs associated with this check. Use GET /api/v1/check-tags/ to list available tags.
  - `check_type` string
  - `escalations` string
  - `monitoring_service_type` string
  - `is_paused` boolean
  - `send_resolved_notifications` boolean: Send resolve notifications when pausing the check
  - `is_under_maintenance` string
  - `state_is_up` boolean
  - `state_changed_at` string, date-time
  - `maintenance_schedules` integer[]: Array of maintenance schedule IDs associated with this check.
  - `msp_address` string, required
  - `msp_port` integer, nullable
  - `msp_threshold` integer, nullable, required
  - `msp_num_retries` integer
  - `msp_uptime_sla` string, decimal
  - `msp_notes` string
  - `sslconfig` object, nullable
    - `ssl_cert_protocol` 'https' | 'ftp' | 'ftps' | 'http' | 'h2' | 'imap' | 'imaps' | 'irc' | 'ircs' | 'ldap' | 'ldaps' | 'mysql' | 'pop3' | 'pop3s' | 'postgres' | 'sieve' | 'smtp' | 'smtps' | 'xmpp' | 'xmpp-server': Protocol to use
    - `ssl_cert_crl` boolean: CRL fallback when OSCP is not available
    - `ssl_cert_first_element_only` boolean: Check only the first certificate in the chain
    - `ssl_cert_match` string: Additional names to match in certificate
    - `ssl_cert_issuer` string: Issuer to match in certificate
    - `ssl_cert_resolve` string: Force host IP address resolution
    - `ssl_cert_minimum_ssl_tls_version` 'sslv3' | 'tlsv1' | 'tlsv11' | 'tlsv12' | 'tlsv13': Minimum SSL/TLS versions
    - `ssl_cert_fingerprint` string: Match certificate fingerprint (SHA1)
    - `ssl_cert_selfsigned` boolean: Allow self-signed certificates
    - `ssl_cert_file` string, uri, nullable: Validate certificate/CRL at URL
    - `ssl_ignore_authority_warnings` boolean: Ignore authority warnings (check expiration only)
    - `ssl_ignore_sct` boolean: Do not check for signed certificate timestamps (SCT)

---

[API](https://skmtc.dev/uptime/apis/uptime-com-openapi-schema.md) - [All operations](https://skmtc.dev/uptime/apis/uptime-com-openapi-schema/llms.txt) - [OpenAPI document](https://skmtc.dev/uptime/apis/uptime-com-openapi-schema/revisions/e1e4a57a60d8?raw)
